]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/baconfig.h
ebl First cup of faketape dummy tape driver for regression testing.
[bacula/bacula] / bacula / src / baconfig.h
index 49c8624028d4b7037e81391554255ddd3a4cbb5e..180f6824fa899f5207e04bdf646aca8c75394148 100644 (file)
 void InitWinAPIWrapper();
 
 #define  OSDependentInit()    InitWinAPIWrapper()
+#define  tape_open            win32_tape_open
+#define  tape_ioctl           win32_tape_ioctl
+#define  tape_read            win32_tape_read
+#define  tape_write           win32_tape_write
+#define  tape_close           win32_tape_close
+#define  IS_TAPE(x)           (0)
 
 #define sbrk(x)  0
 
@@ -100,20 +106,31 @@ 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
 
+#if defined(USE_FAKETAPE)
+#  define  tape_open            faketape_open
+#  define  tape_ioctl           faketape_ioctl
+#  define  tape_read            faketape_read
+#  define  tape_write           faketape_write
+#  define  tape_close           faketape_close
+#  define  IS_TAPE(x)           (S_ISCHR(x) || S_ISREG(x))
+#else  /* UNIX && !FAKETAPE */
+#  define  tape_open            ::open
+#  define  tape_ioctl           ::ioctl
+#  define  tape_read            ::read
+#  define  tape_write           ::write
+#  define  tape_close           ::close
+#  define  IS_TAPE(x)           S_ISCHR(x)
 #endif
 
+#endif /* HAVE_WIN32 */
+
 
 #ifdef ENABLE_NLS
    #include <libintl.h>
@@ -645,6 +662,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 */
@@ -655,6 +675,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