]> granicus.if.org Git - libevent/commitdiff
Note that reentrant calls to libevent from logging cbs may fail badly
authorNick Mathewson <nickm@torproject.org>
Tue, 23 Nov 2010 17:26:34 +0000 (12:26 -0500)
committerNick Mathewson <nickm@torproject.org>
Tue, 23 Nov 2010 17:26:34 +0000 (12:26 -0500)
include/event2/event.h

index 5be1168833d1b0de348cb954a186df339fcbc025..f2ee18d137f0f9fef9df29f1612eb59d7c1d662c 100644 (file)
@@ -280,6 +280,10 @@ void event_base_free(struct event_base *);
 #define _EVENT_LOG_MSG   1
 #define _EVENT_LOG_WARN  2
 #define _EVENT_LOG_ERR   3
+
+/*
+  A callback function used to intercept Libevent's log messages.
+ */
 typedef void (*event_log_cb)(int severity, const char *msg);
 /**
   Redirect Libevent's log messages.
@@ -287,6 +291,9 @@ typedef void (*event_log_cb)(int severity, const char *msg);
   @param cb a function taking two arguments: an integer severity between
      _EVENT_LOG_DEBUG and _EVENT_LOG_ERR, and a string.  If cb is NULL,
         then the default log is used.
+
+  NOTE: The function you provide *must not* call any other libevent
+  functionality.  Doing so can produce undefined behavior.
   */
 void event_set_log_callback(event_log_cb cb);