]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/lib/message.h
Fix header file includes.
[bacula/bacula] / bacula / src / lib / message.h
index 06b248e1c550eef565cf667a04ac11b05ca8d775..7f73169d680245f86627a0e71041711d0f443b40 100644 (file)
 #undef  M_ERROR_TERM
 #undef  M_TERM
 #undef  M_RESTORED
+#undef  M_SECURITY
+#undef  M_ALERT
 
 /*
- * Most of these message levels are more or less obvious. 
+ * Most of these message levels are more or less obvious.
  * They have evolved somewhat during the development of Bacula,
  * and here are some of the details of where I am trying to
  * head (in the process of changing the code) as of 15 June 2002.
  *  M_FATAL       Bacula detected a fatal Job error. The Job will be killed,
  *                  but Bacula continues running.
  *  M_ERROR       Bacula detected a Job error. The Job will continue running
- *                  but the termination status will be error. 
+ *                  but the termination status will be error.
  *  M_WARNING     Job warning message.
  *  M_INFO        Job information message.
  *
  *  M_RESTORED    An ls -l of each restored file.
  *
+ *  M_SECURITY    For security viloations. This is equivalent to FATAL.
+ *                (note, this is currently being implemented in 1.33).
+ *
+ *  M_ALERT       For Tape Alert messages.
+ *
  */
 
-#define M_DEBUG       1               /* debug message */
-#define M_ABORT       2               /* MUST abort immediately */
-#define M_FATAL       3               /* Fatal error, stopping job */
-#define M_ERROR       4               /* Error, but recoverable */
-#define M_WARNING     5               /* Warning message */
-#define M_INFO        6               /* Informational message */
-#define M_SAVED       7               /* Info on saved file */
-#define M_NOTSAVED    8               /* Info on notsaved file */
-#define M_SKIPPED     9               /* File skipped by option setting */
-#define M_MOUNT      10               /* Mount requests */
-#define M_ERROR_TERM 11               /* Error termination request (no dump) */
-#define M_TERM       12               /* Terminating daemon */
-#define M_RESTORED   13               /* ls -l of restored files */
-
-#define M_MAX      M_RESTORED         /* keep this updated ! */
+enum {
+   /* Keep M_ABORT=1 for dlist.h */
+   M_ABORT = 1,                       /* MUST abort immediately */
+   M_DEBUG,                           /* debug message */
+   M_FATAL,                           /* Fatal error, stopping job */
+   M_ERROR,                           /* Error, but recoverable */
+   M_WARNING,                         /* Warning message */
+   M_INFO,                            /* Informational message */
+   M_SAVED,                           /* Info on saved file */
+   M_NOTSAVED,                        /* Info on notsaved file */
+   M_SKIPPED,                         /* File skipped during backup by option setting */
+   M_MOUNT,                           /* Mount requests */
+   M_ERROR_TERM,                      /* Error termination request (no dump) */
+   M_TERM,                            /* Terminating daemon normally */
+   M_RESTORED,                        /* ls -l of restored files */
+   M_SECURITY,                        /* security violation */
+   M_ALERT                            /* tape alert messages */
+};
+
+#define M_MAX      M_ALERT            /* keep this updated ! */
 
 /* Define message destination structure */
 /* *** FIXME **** where should be extended to handle multiple values */
@@ -104,14 +116,29 @@ typedef struct s_dest {
 #define MD_CONSOLE   9                /* send msg to UserAgent or console */
 #define MD_MAIL_ON_ERROR 10           /* email messages if job errors */
 
+/* Queued message item */
+struct MQUEUE_ITEM {
+   dlink link;
+   int type;
+   time_t mtime;
+   char msg[1];
+};
+
+
+void d_msg(const char *file, int line, int level, const char *fmt,...);
+void e_msg(const char *file, int line, int type, int level, const char *fmt,...);
+void Jmsg(JCR *jcr, int type, time_t mtime, const char *fmt,...);
+void Qmsg(JCR *jcr, int type, time_t mtime, const char *fmt,...);
+bool get_trace(void);
+
 
-void d_msg(char *file, int line, int level, char *fmt,...);
-void e_msg(char *file, int line, int type, int level, char *fmt,...);
-void Jmsg(JCR *jcr, int type, int level, char *fmt,...);
+extern int           DLL_IMP_EXP debug_level;
+extern int           DLL_IMP_EXP verbose;
+extern char          DLL_IMP_EXP my_name[];
+extern const char *  DLL_IMP_EXP working_directory;
+extern time_t        DLL_IMP_EXP daemon_start_time;
+extern char                      catalog_db[];
 
-extern int debug_level;
-extern int verbose;
-extern char my_name[];
-extern char *working_directory;
-extern time_t daemon_start_time;
-extern char catalog_db[];
+extern int           DLL_IMP_EXP console_msg_pending;
+extern FILE *        DLL_IMP_EXP con_fd;                 /* Console file descriptor */
+extern brwlock_t     DLL_IMP_EXP con_lock;               /* Console lock structure */