Bump to libevent 2.1.11
[platform/upstream/libevent.git] / log.c
diff --git a/log.c b/log.c
index 046e81f..a9debb8 100644 (file)
--- a/log.c
+++ b/log.c
@@ -38,8 +38,9 @@
  */
 
 #include "event2/event-config.h"
+#include "evconfig-private.h"
 
-#ifdef WIN32
+#ifdef _WIN32
 #include <winsock2.h>
 #define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 
 #include "log-internal.h"
 
-static void _warn_helper(int severity, const char *errstr, const char *fmt,
-    va_list ap);
 static void event_log(int severity, const char *msg);
 static void event_exit(int errcode) EV_NORETURN;
 
 static event_fatal_cb fatal_fn = NULL;
 
+#ifdef EVENT_DEBUG_LOGGING_ENABLED
+#ifdef USE_DEBUG
+#define DEFAULT_MASK EVENT_DBG_ALL
+#else
+#define DEFAULT_MASK 0
+#endif
+
+EVENT2_EXPORT_SYMBOL ev_uint32_t event_debug_logging_mask_ = DEFAULT_MASK;
+#endif /* EVENT_DEBUG_LOGGING_ENABLED */
+
+void
+event_enable_debug_logging(ev_uint32_t which)
+{
+#ifdef EVENT_DEBUG_LOGGING_ENABLED
+       event_debug_logging_mask_ = which;
+#endif
+}
+
 void
 event_set_fatal_callback(event_fatal_cb cb)
 {
@@ -75,7 +92,7 @@ event_exit(int errcode)
        if (fatal_fn) {
                fatal_fn(errcode);
                exit(errcode); /* should never be reached */
-       } else if (errcode == _EVENT_ERR_ABORT)
+       } else if (errcode == EVENT_ERR_ABORT_)
                abort();
        else
                exit(errcode);
@@ -87,7 +104,7 @@ event_err(int eval, const char *fmt, ...)
        va_list ap;
 
        va_start(ap, fmt);
-       _warn_helper(_EVENT_LOG_ERR, strerror(errno), fmt, ap);
+       event_logv_(EVENT_LOG_ERR, strerror(errno), fmt, ap);
        va_end(ap);
        event_exit(eval);
 }
@@ -98,7 +115,7 @@ event_warn(const char *fmt, ...)
        va_list ap;
 
        va_start(ap, fmt);
-       _warn_helper(_EVENT_LOG_WARN, strerror(errno), fmt, ap);
+       event_logv_(EVENT_LOG_WARN, strerror(errno), fmt, ap);
        va_end(ap);
 }
 
@@ -109,7 +126,7 @@ event_sock_err(int eval, evutil_socket_t sock, const char *fmt, ...)
        int err = evutil_socket_geterror(sock);
 
        va_start(ap, fmt);
-       _warn_helper(_EVENT_LOG_ERR, evutil_socket_error_to_string(err), fmt, ap);
+       event_logv_(EVENT_LOG_ERR, evutil_socket_error_to_string(err), fmt, ap);
        va_end(ap);
        event_exit(eval);
 }
@@ -121,7 +138,7 @@ event_sock_warn(evutil_socket_t sock, const char *fmt, ...)
        int err = evutil_socket_geterror(sock);
 
        va_start(ap, fmt);
-       _warn_helper(_EVENT_LOG_WARN, evutil_socket_error_to_string(err), fmt, ap);
+       event_logv_(EVENT_LOG_WARN, evutil_socket_error_to_string(err), fmt, ap);
        va_end(ap);
 }
 
@@ -131,7 +148,7 @@ event_errx(int eval, const char *fmt, ...)
        va_list ap;
 
        va_start(ap, fmt);
-       _warn_helper(_EVENT_LOG_ERR, NULL, fmt, ap);
+       event_logv_(EVENT_LOG_ERR, NULL, fmt, ap);
        va_end(ap);
        event_exit(eval);
 }
@@ -142,7 +159,7 @@ event_warnx(const char *fmt, ...)
        va_list ap;
 
        va_start(ap, fmt);
-       _warn_helper(_EVENT_LOG_WARN, NULL, fmt, ap);
+       event_logv_(EVENT_LOG_WARN, NULL, fmt, ap);
        va_end(ap);
 }
 
@@ -152,26 +169,29 @@ event_msgx(const char *fmt, ...)
        va_list ap;
 
        va_start(ap, fmt);
-       _warn_helper(_EVENT_LOG_MSG, NULL, fmt, ap);
+       event_logv_(EVENT_LOG_MSG, NULL, fmt, ap);
        va_end(ap);
 }
 
 void
-_event_debugx(const char *fmt, ...)
+event_debugx_(const char *fmt, ...)
 {
        va_list ap;
 
        va_start(ap, fmt);
-       _warn_helper(_EVENT_LOG_DEBUG, NULL, fmt, ap);
+       event_logv_(EVENT_LOG_DEBUG, NULL, fmt, ap);
        va_end(ap);
 }
 
-static void
-_warn_helper(int severity, const char *errstr, const char *fmt, va_list ap)
+void
+event_logv_(int severity, const char *errstr, const char *fmt, va_list ap)
 {
        char buf[1024];
        size_t len;
 
+       if (severity == EVENT_LOG_DEBUG && !event_debug_get_logging_mask_())
+               return;
+
        if (fmt != NULL)
                evutil_vsnprintf(buf, sizeof(buf), fmt, ap);
        else
@@ -203,16 +223,16 @@ event_log(int severity, const char *msg)
        else {
                const char *severity_str;
                switch (severity) {
-               case _EVENT_LOG_DEBUG:
+               case EVENT_LOG_DEBUG:
                        severity_str = "debug";
                        break;
-               case _EVENT_LOG_MSG:
+               case EVENT_LOG_MSG:
                        severity_str = "msg";
                        break;
-               case _EVENT_LOG_WARN:
+               case EVENT_LOG_WARN:
                        severity_str = "warn";
                        break;
-               case _EVENT_LOG_ERR:
+               case EVENT_LOG_ERR:
                        severity_str = "err";
                        break;
                default: