diff options
author | Xavier Roche <xroche@users.noreply.github.com> | 2013-05-14 20:22:32 +0000 |
---|---|---|
committer | Xavier Roche <xroche@users.noreply.github.com> | 2013-05-14 20:22:32 +0000 |
commit | 06d7e5bb20ce41e41f1d9f1633cc67a6b30f4a2c (patch) | |
tree | 38c29d82a0ac6a2deb7854f2e179987dbe37ee4a /src | |
parent | 2bc35e7ee9c39c01cf39f78933a6e42114a3f50d (diff) |
Fixed proxytrack ugly logging.
Diffstat (limited to 'src')
-rw-r--r-- | src/proxy/proxytrack.c | 14 | ||||
-rw-r--r-- | src/proxy/proxytrack.h | 54 | ||||
-rw-r--r-- | src/proxy/store.c | 18 |
3 files changed, 35 insertions, 51 deletions
diff --git a/src/proxy/proxytrack.c b/src/proxy/proxytrack.c index 02c18d0..ded2e13 100644 --- a/src/proxy/proxytrack.c +++ b/src/proxy/proxytrack.c @@ -277,7 +277,7 @@ static String getip(SOCaddr *server, int serverLen) { char * dotted = malloc(sizeMax + 1); unsigned short port = ntohs(SOCaddr_sinport(*server)); if (dotted == NULL) { - CRITICAL("memory exhausted"); + proxytrack_print_log(CRITICAL, "memory exhausted"); return s; } SOCaddr_inetntoa(dotted, sizeMax, *server, serverLen); @@ -824,7 +824,7 @@ static void proxytrack_process_HTTP(PT_Indexes indexes, T_SOC soc_c) { #endif if (buffer == NULL || line == NULL || line1 == NULL) { - CRITICAL("proxytrack_process_HTTP:memory exhausted"); + proxytrack_print_log(CRITICAL, "proxytrack_process_HTTP:memory exhausted"); #ifdef _WIN32 closesocket(soc_c); #else @@ -1247,7 +1247,7 @@ static void proxytrack_process_HTTP(PT_Indexes indexes, T_SOC soc_c) { if (element != NULL && element->contenttype[0] != '\0') { contentType = element->contenttype; } - LOG("HTTP %s %d %d %s %s %s" _ StringBuff(ip) _ msgCode _ (int)size _ command _ StringBuff(url) _ contentType); + proxytrack_print_log(LOG, "HTTP %s %d %d %s %s %s", StringBuff(ip), msgCode, (int)size, command, StringBuff(url), contentType); StringFree(ip); } @@ -1357,7 +1357,7 @@ static int proxytrack_process_generic(void (*process)(PT_Indexes indexes, T_SOC param->process = process; return startThread(proxytrack_process_th, param); } else { - CRITICAL("proxytrack_process_generic:Memory exhausted"); + proxytrack_print_log(CRITICAL, "proxytrack_process_generic:Memory exhausted"); return 0; } return 0; @@ -1374,7 +1374,7 @@ static int proxytrack_start_HTTP(PT_Indexes indexes, T_SOC soc) { T_SOC soc_c; if ( (soc_c = (T_SOC) accept(soc, NULL, NULL)) != INVALID_SOCKET) { if (!proxytrack_process_HTTP_threaded(indexes, soc_c)) { - CRITICAL("proxytrack_start_HTTP::Can not fork a thread"); + proxytrack_print_log(CRITICAL, "proxytrack_start_HTTP::Can not fork a thread"); } } } @@ -1449,7 +1449,7 @@ static int proxytrack_start_ICP(PT_Indexes indexes, T_SOC soc) { int bufferSize = 16384; unsigned char * buffer = (unsigned char*) malloc(bufferSize + 1); if (buffer == NULL) { - CRITICAL("proxytrack_start_ICP:memory exhausted"); + proxytrack_print_log(CRITICAL, "proxytrack_start_ICP:memory exhausted"); #ifdef _WIN32 closesocket(soc); #else @@ -1561,7 +1561,7 @@ static int proxytrack_start_ICP(PT_Indexes indexes, T_SOC soc) { } else { StringCopy(ip, "unknown"); } - LOG("ICP %s %s/%s %s" _ StringBuff(ip) _ LogRequest _ LogReply _ (UrlRequest ? UrlRequest : "-") ); + proxytrack_print_log(LOG, "ICP %s %s/%s %s", StringBuff(ip), LogRequest, LogReply, (UrlRequest ? UrlRequest : "-") ); StringFree(ip); } diff --git a/src/proxy/proxytrack.h b/src/proxy/proxytrack.h index 02521f0..1825533 100644 --- a/src/proxy/proxytrack.h +++ b/src/proxy/proxytrack.h @@ -65,44 +65,28 @@ int proxytrack_main(char* proxyAddr, int proxyPort, /* Static definitions */ -#define _ , -#define CRITICAL_(msg, file, line) do { \ - fprintf(stderr, "* critical: "); \ - fprintf(stderr, msg); \ - fprintf(stderr, " at %s:%d\n", file, line); \ - fflush(stderr); \ -} while(0) -#define CRITICAL(msg) do { \ - fprintf(stderr, "* critical: "); \ - fprintf(stderr, msg); \ - fprintf(stderr, " at %s:%d\n", __FILE__, __LINE__); \ - fflush(stderr); \ -} while(0) - -#define WARNING(msg) do { \ - fprintf(stderr, "* warning: "); \ - fprintf(stderr, msg); \ - fprintf(stderr, "\n"); \ - fflush(stderr); \ -} while(0) - -#define LOG(msg) do { \ - fprintf(stderr, "* log: "); \ - fprintf(stderr, msg); \ - fprintf(stderr, "\n"); \ - fflush(stderr); \ -} while(0) +static void proxytrack_print_log(const char *severity, const char *format, ...) { + if (severity != NULL) { + const int error = errno; + FILE *const fp = stderr; + va_list args; + fprintf(fp, " * %s: ", severity); + va_start(args, format); + (void) vfprintf(fp, format, args); + va_end(args); + fputs("\n", fp); + fflush(fp); + errno = error; + } +} +#define CRITICAL "critical" +#define WARNING "warning" +#define LOG "log" #if defined(_DEBUG) || defined(DEBUG) -#define DEBUG(msg) do { \ - fprintf(stderr, "* debug: "); \ - fprintf(stderr, msg); \ - fprintf(stderr, "\n"); \ - fflush(stderr); \ -} while(0) +#define DEBUG "debug" #else -#define DEBUG_(msg, file, line) do { } while(0) -#define DEBUG(msg) do { } while(0) +#define DEBUG NULL #endif /* Header for generated pages */ diff --git a/src/proxy/store.c b/src/proxy/store.c index 810fb29..e5d0c8f 100644 --- a/src/proxy/store.c +++ b/src/proxy/store.c @@ -281,7 +281,7 @@ static int PT_Index_Check__(PT_Index index, const char* file, int line) { return 0; if (index->type >= PT_CACHE_MIN && index->type <= PT_CACHE_MAX) return 1; - CRITICAL_("index corrupted in memory", file, line); + proxytrack_print_log(CRITICAL, "index corrupted in memory at %s:%d", file, line); return 0; } #define SAFE_INDEX(index) PT_Index_Check__(index, __FILE__, __LINE__) @@ -458,7 +458,7 @@ char ** PT_Enumerate(PT_Indexes indexes, const char *url, int subtree) { } } } else { - CRITICAL("PT_Enumerate:Corrupted central index locator"); + proxytrack_print_log(CRITICAL, "PT_Enumerate:Corrupted central index locator"); } } } @@ -527,12 +527,12 @@ PT_Index PT_LoadCache(const char *filename) { index->slots.common.startUrl[0] = '\0'; index->slots.common.hash = inthash_new(8191); if (!_IndexFuncts[type].PT_LoadCache(index, filename)) { - DEBUG("reading httrack cache (format #%d) %s : error" _ type _ filename ); + proxytrack_print_log(DEBUG, "reading httrack cache (format #%d) %s : error", type, filename ); free(index); index = NULL; return NULL; } else { - DEBUG("reading httrack cache (format #%d) %s : success" _ type _ filename ); + proxytrack_print_log(DEBUG, "reading httrack cache (format #%d) %s : success", type, filename ); } /* default starting URL is the first hash entry */ if (index->slots.common.startUrl[0] == '\0') { @@ -603,7 +603,7 @@ int PT_EnumCache(PT_Indexes indexes, int (*callback)(void *, const char *url, PT return ret; } } else { - CRITICAL("PT_ReadCache:Corrupted central index locator"); + proxytrack_print_log(CRITICAL, "PT_ReadCache:Corrupted central index locator"); return -1; } } @@ -662,7 +662,7 @@ int PT_IndexMerge(PT_Indexes indexes, PT_Index *pindex) if (indexes->index[previous_index_id]->slots.common.timestamp > index->slots.common.timestamp) // existing entry is newer break; } else { - CRITICAL("PT_IndexMerge:Corrupted central index locator"); + proxytrack_print_log(CRITICAL, "PT_IndexMerge:Corrupted central index locator"); } } inthash_write(indexes->cil, chain->name, index_id); @@ -670,7 +670,7 @@ int PT_IndexMerge(PT_Indexes indexes, PT_Index *pindex) } } } else { - CRITICAL("PT_IndexMerge:Memory exhausted"); + proxytrack_print_log(CRITICAL, "PT_IndexMerge:Memory exhausted"); } return nMerged; } @@ -714,7 +714,7 @@ PT_Element PT_ReadIndex(PT_Indexes indexes, const char* url, int flags) return item; } } else { - CRITICAL("PT_ReadCache:Corrupted central index locator"); + proxytrack_print_log(CRITICAL, "PT_ReadCache:Corrupted central index locator"); } } } @@ -731,7 +731,7 @@ int PT_LookupIndex(PT_Indexes indexes, const char* url) { if (index_id >= 0 && index_id <= indexes->index_size) { return 1; } else { - CRITICAL("PT_ReadCache:Corrupted central index locator"); + proxytrack_print_log(CRITICAL, "PT_ReadCache:Corrupted central index locator"); } } } |