Define different debug levels in one enum list instead of hard coding
with magic numbers.
Add two new debugging macros, one intended for warning messages and
another for pure debugging messages.
Signed-off-by: Timo Kokkonen <timo.t.kokkonen@iki.fi>
0x1b, 0x5b, 0x30, 0x3b, 0x33, 0x37, 0x3b, 0x34, 0x30, 0x6d, 0x0,
};
0x1b, 0x5b, 0x30, 0x3b, 0x33, 0x37, 0x3b, 0x34, 0x30, 0x6d, 0x0,
};
-int trace_level = 1;
-int logfile_fd = STDERR_FILENO;
+int trace_level = TRACE_INFO;
+static int logfile_fd = STDERR_FILENO;
static const char *assign_color(int color)
{
static const char *assign_color(int color)
{
case 2:
return green_color;
default:
case 2:
return green_color;
default:
extern const char green_color[];
extern const char normal_color[];
extern const char green_color[];
extern const char normal_color[];
+enum {
+ TRACE_ERR,
+ TRACE_WARN,
+ TRACE_INFO,
+ TRACE_DEBUG,
+ TRACE_MAX,
+};
+
void __attribute__ ((__format__ (__printf__, 5, 6)))
print_trace(const char *file, int line, int color, int l,
const char *fmt, ...);
void __attribute__ ((__format__ (__printf__, 5, 6)))
print_trace(const char *file, int line, int color, int l,
const char *fmt, ...);
-#define pr_err(arg...) print_trace(__FILE__, __LINE__, 1, 0, arg)
-#define pr_info(arg...) print_trace(__FILE__, __LINE__, 2, 1, arg)
+#define pr_err(arg...) print_trace(__FILE__, __LINE__, 1, TRACE_ERR, arg)
+#define pr_warn(arg...) print_trace(__FILE__, __LINE__, 2, TRACE_WARN, arg)
+#define pr_info(arg...) print_trace(__FILE__, __LINE__, 2, TRACE_INFO, arg)
+#define pr_debug(arg...) print_trace(__FILE__, __LINE__, 2, TRACE_DEBUG, arg)
int open_log_file(const char *logfile);
int open_log_file(const char *logfile);