#ifndef LOGGING_H
#define LOGGING_H
+#define err(format, arg...) do { } while (0)
#define info(format, arg...) do { } while (0)
#define dbg(format, arg...) do { } while (0)
-#define dbg_parse(format, arg...) do { } while (0)
-#define init_logging(foo) do { } while (0)
+#define logging_init(foo) do { } while (0)
+#define logging_close(foo) do { } while (0)
-#ifdef LOG
+#ifdef USE_LOG
#include <stdarg.h>
#include <unistd.h>
#include <syslog.h>
+#undef err
+#define err(format, arg...) \
+ do { \
+ log_message(LOG_INFO ,"%s: " format ,__FILE__ ,## arg); \
+ } while (0)
+
#undef info
-#define info(format, arg...) \
- do { \
- log_message (LOG_INFO , format , ## arg); \
+#define info(format, arg...) \
+ do { \
+ log_message(LOG_INFO ,"%s: " format ,__FILE__ ,## arg); \
} while (0)
#ifdef DEBUG
#undef dbg
-#define dbg(format, arg...) \
- do { \
- log_message (LOG_DEBUG , "%s: " format , __FUNCTION__ , ## arg); \
+#define dbg(format, arg...) \
+ do { \
+ log_message(LOG_DEBUG ,"%s: " format ,__FUNCTION__ ,## arg); \
} while (0)
#endif
-/* Parser needs it's own debugging statement, we usually don't care about this at all */
-#ifdef DEBUG_PARSER
-#undef dbg_parse
-#define dbg_parse(format, arg...) \
- do { \
- log_message (LOG_DEBUG , "%s: " format , __FUNCTION__ , ## arg); \
- } while (0)
-#endif
-
-extern void log_message (int level, const char *format, ...)
+extern void log_message(int priority, const char *format, ...)
__attribute__ ((format (printf, 2, 3)));
-/* each program that uses syslog must declare this variable somewhere */
-extern unsigned char logname[42];
+#undef logging_init
+static inline void logging_init(const char *program_name)
+{
+ openlog(program_name, LOG_PID, LOG_DAEMON);
+}
-#undef init_logging
-static inline void init_logging(char *program_name)
+#undef logging_close
+static inline void logging_close(void)
{
- snprintf(logname, 42,"%s[%d]", program_name, getpid());
- openlog(logname, 0, LOG_DAEMON);
+ closelog();
}
-#endif /* LOG */
+#endif /* USE_LOG */
#endif