Raw File
1 #ifndef DEBUG_H
2 #define DEBUG_H 1
3
4 #define LOG_TRACE 10
5 #define LOG_ALL 7
6 #define LOG_ENTER_EXIT 6
7 #define LOG_DEBUG 5
8 #define LOG_INFO 4
9 #define LOG_WARN 3
10 #define LOG_ERROR 2
11 #define LOG_FATAL 1
12 #define LOG_NONE 0
13
14 #define TRACE_MODEM_IN 1
15 #define TRACE_MODEM_OUT 2
16 #define TRACE_SERIAL_IN 4
17 #define TRACE_SERIAL_OUT 8
18 #define TRACE_IP_IN 16
19 #define TRACE_IP_OUT 32
20
21 #include <stdio.h> // needed for strerror
22 #include <string.h> // needed for strerror
23 #include <errno.h> // needed for errno
24
25 #if __STDC_VERSION__ < 199901L
26 # if __GNUC__ >= 2
27 # define __func__ __FUNCTION__
28 # else
29 # define __func__ "<unknown>"
30 # endif
31 #endif
32
33 #define LOG(a,args...) do { \
34 if(a <= log_level) { \
35 log_start(a); \
36 fprintf(log_file,args); \
37 log_end(); \
38 } \
39 } while(0)
40
41 #define ELOG(a,args...) do { \
42 if(a <= log_level) { \
43 log_start(a); \
44 fprintf(log_file,args); \
45 fprintf(log_file," (%s)\n",strerror(errno)); \
46 log_end(); \
47 } \
48 } while(0)
49
50 #define LOG_ENTER() LOG(LOG_ENTER_EXIT,"Entering %s function",__func__);
51 #define LOG_EXIT() LOG(LOG_ENTER_EXIT,"Exitting %s function",__func__);
52 int log_init(void);
53 void log_set_file(FILE *a);
54 void log_set_level(int a);
55 int log_get_trace_flags();
56 void log_set_trace_flags(int a);
57 void log_trace(int type, unsigned char *line, int len);
58 void log_start(int level);
59 void log_end();
60
61 #endif
62 #ifndef DEBUG_VARS
63 #define DEBUG_VARS 1
64
65 #include <stdio.h>
66
67 extern int log_level;
68 extern FILE *log_file;
69
70 #endif
71
Generated by GNU Enscript 1.6.6, and GophHub 1.3.