diff options
Diffstat (limited to 'lib/birdlib.h')
-rw-r--r-- | lib/birdlib.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/lib/birdlib.h b/lib/birdlib.h index eb95585f..5e533b66 100644 --- a/lib/birdlib.h +++ b/lib/birdlib.h @@ -13,17 +13,28 @@ #define OFFSETOF(s, i) ((unsigned int)&((s *)0)->i) #define SKIP_BACK(s, i, p) ((s *)((char *)p - OFFSETOF(s, i))) +#define ALIGN(s, a) (((s)+a-1)&~(a-1)) + +/* Functions which don't return */ + +#define NORET __attribute__((noreturn)) /* Logging and dying */ void log(char *msg, ...); -void die(char *msg, ...); +void die(char *msg, ...) NORET; #define L_DEBUG "\001" /* Debugging messages */ #define L_INFO "\002" /* Informational messages */ #define L_WARN "\003" /* Warnings */ #define L_ERR "\004" /* Errors */ #define L_AUTH "\005" /* Authorization failed etc. */ +#define L_FATAL "\006" /* Fatal errors */ + +void log_init(char *); /* Initialize logging to given file (NULL=stderr, ""=syslog) */ +void log_init_debug(char *); /* Initialize debug dump to given file (NULL=stderr, ""=off) */ + +void debug(char *msg, ...); /* Printf to debug output */ /* Debugging */ |