chiark / gitweb /
[PATCH] improve udevinfo sysfs info walk
[elogind.git] / logging.h
index 1c27917f61e4ed89ecc6e8b6b3a28f615c51d853..30f52c84ce6969eda5b0fb54c1a2c4151389c802 100644 (file)
--- a/logging.h
+++ b/logging.h
 #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
 #include <stdarg.h>
 #include <unistd.h>
 #include <syslog.h>
 
+#define LOGNAME_SIZE                   42
+
 #undef info
 #define info(format, arg...)                                                           \
        do {                                                                            \
@@ -61,15 +64,21 @@ extern void log_message(int level, const char *format, ...)
        __attribute__ ((format (printf, 2, 3)));
 
 /* each program that uses syslog must declare this variable somewhere */
-extern unsigned char logname[42];
+extern unsigned char logname[LOGNAME_SIZE];
 
-#undef init_logging
-static inline void init_logging(char *program_name)
+#undef logging_init
+static inline void logging_init(char *program_name)
 {
-       snprintf(logname, 42,"%s[%d]", program_name, getpid());
+       snprintf(logname, LOGNAME_SIZE,"%s[%d]", program_name, getpid());
        openlog(logname, 0, LOG_DAEMON);
 }
 
+#undef logging_close
+static inline void logging_close(void)
+{
+       closelog();
+}
+
 #endif /* LOG */
 
 #endif