]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/baconfig.h
ebl update faketape driver to work with regress tests
[bacula/bacula] / bacula / src / baconfig.h
index df14b3ce978f47dcc94abf60d3d9af3ab57dc3dd..c0e6ef087da90731f45af374ab0721dadc891528 100644 (file)
@@ -1,7 +1,7 @@
 /*
    Bacula® - The Network Backup Solution
 
-   Copyright (C) 2000-2007 Free Software Foundation Europe e.V.
+   Copyright (C) 2000-2008 Free Software Foundation Europe e.V.
 
    The main author of Bacula is Kern Sibbald, with contributions from
    many others, a complete list can be found in the file AUTHORS.
@@ -38,8 +38,6 @@
 
 /* Bacula common configuration defines */
 
-#define HAVE_VA_COPY
-
 #undef  TRUE
 #undef  FALSE
 #define TRUE  1
 #define NPRT(x) (x)?(x):_("*None*")
  
 #if defined(HAVE_WIN32)
+
+#define WIN32_REPARSE_POINT 1
+#define WIN32_MOUNT_POINT   2
+
 void InitWinAPIWrapper();
 
 #define  OSDependentInit()    InitWinAPIWrapper()
@@ -102,19 +104,14 @@ void InitWinAPIWrapper();
 #  define CATS_IMP_EXP
 #endif
 
-#else
+#else  /* HAVE_WIN32 */
 
 #define DLL_IMP_EXP
 #define CATS_IMP_EXP
 
 #define  OSDependentInit()
-#define  tape_open            open
-#define  tape_ioctl           ioctl
-#define  tape_read            ::read
-#define  tape_write           ::write
-#define  tape_close           ::close
 
-#endif
+#endif /* HAVE_WIN32 */
 
 
 #ifdef ENABLE_NLS
@@ -209,27 +206,27 @@ void InitWinAPIWrapper();
  *   STREAM_SHA256_DIGEST
  *   STREAM_SHA512_DIGEST
  */
-#define STREAM_NONE               0    /* Reserved Non-Stream */
-#define STREAM_UNIX_ATTRIBUTES    1    /* Generic Unix attributes */
-#define STREAM_FILE_DATA          2    /* Standard uncompressed data */
-#define STREAM_MD5_SIGNATURE      3    /* deprecated */
-#define STREAM_MD5_DIGEST         3    /* MD5 digest for the file */
-#define STREAM_GZIP_DATA          4    /* GZip compressed file data */
+#define STREAM_NONE                        0    /* Reserved Non-Stream */
+#define STREAM_UNIX_ATTRIBUTES             1    /* Generic Unix attributes */
+#define STREAM_FILE_DATA                   2    /* Standard uncompressed data */
+#define STREAM_MD5_SIGNATURE               3    /* deprecated */
+#define STREAM_MD5_DIGEST                  3    /* MD5 digest for the file */
+#define STREAM_GZIP_DATA                   4    /* GZip compressed file data */
 /* Extended Unix attributes with Win32 Extended data.  Deprecated. */
-#define STREAM_UNIX_ATTRIBUTES_EX 5    /* Extended Unix attr for Win32 EX */
-#define STREAM_SPARSE_DATA        6    /* Sparse data stream */
-#define STREAM_SPARSE_GZIP_DATA   7
-#define STREAM_PROGRAM_NAMES      8    /* program names for program data */
-#define STREAM_PROGRAM_DATA       9    /* Data needing program */
-#define STREAM_SHA1_SIGNATURE    10    /* deprecated */
-#define STREAM_SHA1_DIGEST       10    /* SHA1 digest for the file */
-#define STREAM_WIN32_DATA        11    /* Win32 BackupRead data */
-#define STREAM_WIN32_GZIP_DATA   12    /* Gzipped Win32 BackupRead data */
-#define STREAM_MACOS_FORK_DATA   13    /* Mac resource fork */
-#define STREAM_HFSPLUS_ATTRIBUTES 14   /* Mac OS extra attributes */
+#define STREAM_UNIX_ATTRIBUTES_EX          5    /* Extended Unix attr for Win32 EX */
+#define STREAM_SPARSE_DATA                 6    /* Sparse data stream */
+#define STREAM_SPARSE_GZIP_DATA            7
+#define STREAM_PROGRAM_NAMES               8    /* program names for program data */
+#define STREAM_PROGRAM_DATA                9    /* Data needing program */
+#define STREAM_SHA1_SIGNATURE             10    /* deprecated */
+#define STREAM_SHA1_DIGEST                10    /* SHA1 digest for the file */
+#define STREAM_WIN32_DATA                 11    /* Win32 BackupRead data */
+#define STREAM_WIN32_GZIP_DATA            12    /* Gzipped Win32 BackupRead data */
+#define STREAM_MACOS_FORK_DATA            13    /* Mac resource fork */
+#define STREAM_HFSPLUS_ATTRIBUTES         14    /* Mac OS extra attributes */
 /*** FIXME ***/
-#define STREAM_UNIX_ATTRIBUTES_ACCESS_ACL 15 /* Standard ACL attributes on UNIX */
-#define STREAM_UNIX_ATTRIBUTES_DEFAULT_ACL 16 /* Default ACL attributes on UNIX */
+#define STREAM_UNIX_ACCESS_ACL            15   /* Standard ACL attributes on UNIX */
+#define STREAM_UNIX_DEFAULT_ACL           16   /* Default ACL attributes on UNIX */
 /*** FIXME ***/
 #define STREAM_SHA256_DIGEST              17   /* SHA-256 digest for the file */
 #define STREAM_SHA512_DIGEST              18   /* SHA-512 digest for the file */
@@ -240,6 +237,8 @@ void InitWinAPIWrapper();
 #define STREAM_ENCRYPTED_FILE_GZIP_DATA   23   /* Encrypted, compressed data */
 #define STREAM_ENCRYPTED_WIN32_GZIP_DATA  24   /* Encrypted, compressed Win32 BackupRead data */
 #define STREAM_ENCRYPTED_MACOS_FORK_DATA  25   /* Encrypted, uncompressed Mac resource fork */
+#define STREAM_PLUGIN_NAME                26   /* Plugin "file" string */
+#define STREAM_PLUGIN_DATA                27   /* Plugin specific data */
 
 
 /*
@@ -247,7 +246,7 @@ void InitWinAPIWrapper();
  *  NOTE!!! These are saved in the Attributes record on the tape, so
  *          do not change them. If need be, add to them.
  *
- *  This is stored as 32 bits on tape, but only FT_MASK bits are
+ *  This is stored as 32 bits on the Volume, but only FT_MASK (16) bits are
  *    used for the file type. The upper bits are used to indicate
  *    additional optional fields in the attribute record.
  */
@@ -276,6 +275,8 @@ void InitWinAPIWrapper();
 #define FT_INVALIDFS 19               /* File system not allowed for */
 #define FT_INVALIDDT 20               /* Drive type not allowed for */
 #define FT_REPARSE   21               /* Win NTFS reparse point */
+#define FT_PLUGIN    22               /* Plugin generated filename */
+#define FT_DELETED   23               /* Deleted file entry */
 
 /* Definitions for upper part of type word (see above). */
 #define AR_DATA_STREAM (1<<16)        /* Data stream id present */
@@ -629,7 +630,6 @@ extern int thr_setconcurrency(int);
 #endif
 
 #if defined(HAVE_DARWIN_OS) || defined(HAVE_OSF1_OS)
-#undef HAVE_VA_COPY
 /* Apparently someone forgot to wrap getdomainname as a C function */
 extern "C" int getdomainname(char *name, int len);
 #endif
@@ -644,6 +644,9 @@ inline bool IsPathSeparator(int ch) { return ch == '/' || ch == '\\'; }
 inline char *first_path_separator(char *path) { return strpbrk(path, "/\\"); }
 inline const char *first_path_separator(const char *path) { return strpbrk(path, "/\\"); }
 
+extern void pause_msg(const char *file, const char *func, int line, const char *msg);
+#define pause(msg) if (debug_level) pause_msg(__FILE__, __func__, __LINE__, (msg))
+
 #else
 #define PathSeparator '/'
 /* Define Winsock functions if we aren't on Windows */
@@ -654,6 +657,7 @@ inline const char *first_path_separator(const char *path) { return strpbrk(path,
 inline bool IsPathSeparator(int ch) { return ch == '/'; }
 inline char *first_path_separator(char *path) { return strchr(path, '/'); }
 inline const char *first_path_separator(const char *path) { return strchr(path, '/'); }
+#define pause(msg)
 #endif
 
 
@@ -661,7 +665,6 @@ inline const char *first_path_separator(const char *path) { return strchr(path,
 
 #ifdef HAVE_HPUX_OS
 # undef h_errno
-#undef HAVE_VA_COPY
 extern int h_errno;
 /* the {get,set}domainname() functions exist in HPUX's libc.
  * the configure script detects that correctly.
@@ -674,7 +677,6 @@ extern "C" int setdomainname(char *name, int namelen);
 
 
 #ifdef HAVE_OSF1_OS
-#undef HAVE_VA_COPY
 extern "C" int fchdir(int filedes);
 extern "C" long gethostid(void);
 extern "C" int mknod ( const char *path, int mode, dev_t device );