Avoid recursion when processing residual inbuf data.
[shim.git] / log.h
bloba8c8cedad9da318eb438adeb528277cd1189185a
1 #ifndef _LOG_H_
2 #define _LOG_H_
4 #include <stdarg.h>
5 #include <stdio.h>
7 enum log_level {
8 LOG_DEBUG,
9 LOG_INFO,
10 LOG_NOTICE,
11 LOG_WARN,
12 LOG_ERROR,
13 LOG_FATAL
16 #ifdef __GNUC__
17 #define CHECK_FMT(a,b) __attribute__((format(printf, a, b)))
18 #else
19 #define CHECK_FMT(a,b)
20 #endif
22 void log_debug(const char *msg, ...) CHECK_FMT(1,2);
23 void log_info(const char *msg, ...) CHECK_FMT(1,2);
24 void log_notice(const char *msg, ...) CHECK_FMT(1,2);
25 void log_warn(const char *msg, ...) CHECK_FMT(1,2);
26 void log_error(const char *msg, ...) CHECK_FMT(1,2);
27 void log_socket_error(const char *msg, ...) CHECK_FMT(1,2);
28 void log_fatal(const char *msg, ...) CHECK_FMT(1,2);
30 void log_msg_va(enum log_level lvl, int serr, const char *msg, va_list ap);
32 void log_set_min_level(enum log_level lvl);
33 enum log_level log_get_min_level(void);
34 void log_set_file(FILE *fp);
35 void log_set_scrub(int scrub);
36 int log_get_scrub(void);
37 const char *log_scrub(const char *what);
39 #endif