24
|
1 #include <stdio.h> |
|
2 #include <stdlib.h> |
|
3 #include <stdarg.h> |
|
4 #include <time.h> |
|
5 |
|
6 /* Variables globales a UTILS.C */ |
76
|
7 static int DebugEnabled; |
24
|
8 |
|
9 void ut_InitDebug(int level) |
|
10 { |
|
11 FILE *fp = fopen("/tmp/mcabberlog", "w"); |
|
12 |
|
13 DebugEnabled = level; |
76
|
14 |
|
15 if (!fp) return; |
24
|
16 fprintf(fp, "Debugging mode started...\n" |
|
17 "-----------------------------------\n"); |
|
18 fclose(fp); |
|
19 } |
|
20 |
|
21 void ut_WriteLog(const char *fmt, ...) |
|
22 { |
|
23 FILE *fp = NULL; |
|
24 time_t ahora; |
|
25 va_list ap; |
|
26 char *buffer = NULL; |
|
27 |
|
28 if (DebugEnabled) { |
|
29 fp = fopen("/tmp/mcabberlog", "a+"); |
76
|
30 if (!fp) return; |
24
|
31 buffer = (char *) calloc(1, 64); |
|
32 |
|
33 ahora = time(NULL); |
|
34 strftime(buffer, 64, "[%H:%M:%S] ", localtime(&ahora)); |
|
35 fprintf(fp, "%s", buffer); |
|
36 |
|
37 va_start(ap, fmt); |
|
38 vfprintf(fp, fmt, ap); |
|
39 va_end(ap); |
|
40 |
|
41 free(buffer); |
|
42 fclose(fp); |
|
43 } |
|
44 } |
|
45 |