X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=src%2Flog.c;h=05bd3dcea94eeb455112fb8747dc635a6f592401;hb=8f25becb220b321f0e9bd4b766ae7085a0335466;hp=dd7c90cac69e681ac8b4cf656198766c2cc0091d;hpb=8db64b0eebeaa80e46b2df40b91af741e533e7bc;p=tlsproxy%2Ftlsproxy.git diff --git a/src/log.c b/src/log.c index dd7c90c..05bd3dc 100644 --- a/src/log.c +++ b/src/log.c @@ -1,7 +1,7 @@ /* * Log related functions/defines. * - * Copyright (C) 2011 Simon Ruderich + * Copyright (C) 2011-2013 Simon Ruderich * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -20,13 +20,11 @@ #include "tlsproxy.h" #include "log.h" -/* va_*() */ -#include -/* pthread_*() */ #include +#include -void log_message(int level, const char *format, ...) { +void log_message(int level, const char *file, int line, const char *format, ...) { va_list ap; const char *level_string; @@ -35,15 +33,29 @@ void log_message(int level, const char *format, ...) { } switch (level) { - case LOG_ERROR: level_string = "ERROR"; break; - case LOG_WARNING: level_string = "WARN "; break; - case LOG_DEBUG: level_string = "DEBUG"; break; - default: level_string = "UNKNOWN"; + case LOG_ERROR_LEVEL: level_string = "ERROR"; break; + case LOG_WARNING_LEVEL: level_string = "WARN "; break; + case LOG_DEBUG_LEVEL: level_string = "DEBUG"; break; + default: level_string = "UNKNOWN"; } +#ifndef DEBUG + /* Prevent warnings. */ + (void)file; + (void)line; +#endif + + fprintf(stdout, +#ifdef DEBUG + "%-12s:%-3d " +#endif + "[%s] [%d] ", +#ifdef DEBUG + file, line, +#endif + level_string, (int)pthread_self()); va_start(ap, format); - fprintf(stdout, "[%s] [%d] ", level_string, (int)pthread_self()); vfprintf(stdout, format, ap); - fprintf(stdout, "\n"); va_end(ap); + fprintf(stdout, "\n"); }