X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=logging.h;h=1c27917f61e4ed89ecc6e8b6b3a28f615c51d853;hp=85016ad3284675a31232ef2768648541e8d39d5b;hb=27c3403dd810e53f6c9b8dffe34af7798a4b52d3;hpb=54988802b795328ceba29480611102902e88f572 diff --git a/logging.h b/logging.h index 85016ad32..1c27917f6 100644 --- a/logging.h +++ b/logging.h @@ -1,9 +1,9 @@ /* - * udev.h + * logging.h * - * Userspace devfs + * Simple logging functions that can be compiled away into nothing. * - * Copyright (C) 2003 Greg Kroah-Hartman + * Copyright (C) 2003,2004 Greg Kroah-Hartman * Copyright (C) 2004 Kay Sievers * * This program is free software; you can redistribute it and/or modify it @@ -24,37 +24,52 @@ #ifndef LOGGING_H #define 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) + #ifdef LOG +#include +#include #include + +#undef info #define info(format, arg...) \ do { \ - log_message (LOG_INFO , format , ## arg); \ + log_message(LOG_INFO , format , ## arg); \ } while (0) -#else - #define info(format, arg...) do { } while (0) -#endif #ifdef DEBUG +#undef dbg #define dbg(format, arg...) \ do { \ - log_message (LOG_DEBUG , "%s: " format , __FUNCTION__ , ## arg); \ + log_message(LOG_DEBUG , "%s: " format , __FUNCTION__ , ## arg); \ } while (0) -#else - #define dbg(format, arg...) do { } 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); \ + log_message(LOG_DEBUG , "%s: " format , __FUNCTION__ , ## arg); \ } while (0) -#else - #define dbg_parse(format, arg...) do { } while (0) #endif - -extern int log_message (int level, const char *format, ...) +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]; + +#undef init_logging +static inline void init_logging(char *program_name) +{ + snprintf(logname, 42,"%s[%d]", program_name, getpid()); + openlog(logname, 0, LOG_DAEMON); +} + +#endif /* LOG */ + #endif