X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=logging.h;h=df0d7dedcea1ceb1b72ccd9a74341de84815913e;hb=d45ea2b70c0cba69b02dae81d696a8b4c05c1771;hp=e233ddc88972b59ff6906fc4eded9a069bb02f65;hpb=95a6f4c8acafe7031087667aa556a50a6a091c93;p=elogind.git diff --git a/logging.h b/logging.h index e233ddc88..df0d7dedc 100644 --- a/logging.h +++ b/logging.h @@ -27,9 +27,11 @@ #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) #ifdef LOG #include +#include #include #undef info @@ -55,20 +57,25 @@ } while (0) #endif +/* each program must declare this variable and function somewhere */ +extern unsigned char logname[42]; +extern int log_ok(void); + static void log_message (int level, const char *format, ...) __attribute__ ((format (printf, 2, 3))); static inline void log_message (int level, const char *format, ...) { va_list args; + if (!log_ok()) + return; + va_start(args, format); vsyslog(level, format, args); va_end(args); } -/* each program must declare this variable somewhere */ -extern unsigned char logname[42]; - +#undef init_logging static inline void init_logging(char *program_name) { snprintf(logname, 42,"%s[%d]", program_name, getpid());