diff --git a/ChangeLog b/ChangeLog index 1020260d..095446e2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,7 @@ Changes in 1.4.2: o remove pending timeouts on event_base_free() o also check EAGAIN for Solaris' event ports; from W.C.A. Wijngaards o devpoll and evport need reinit; tested by W.C.A Wijngaards + o event_base_get_method; from Springande Ulv Changes in 1.4.1-beta: o free minheap on event_base_free(); from Christopher Layne diff --git a/event.c b/event.c index e31b6b77..259559ee 100644 --- a/event.c +++ b/event.c @@ -386,6 +386,13 @@ event_base_dispatch(struct event_base *event_base) return (event_base_loop(event_base, 0)); } +const char * +event_base_get_method(struct event_base *base) +{ + assert(base); + return (base->evsel->name); +} + static void event_loopexit_cb(int fd, short what, void *arg) { diff --git a/event.h b/event.h index 5afb40cc..4d42bebf 100644 --- a/event.h +++ b/event.h @@ -312,6 +312,15 @@ int event_dispatch(void); int event_base_dispatch(struct event_base *); +/** + Get the kernel event notification mechanism used by libevent. + + @param eb the event_base structure returned by event_base_new() + @return a string identifying the kernel event mechanism (kqueue, epoll, etc.) + */ +const char *event_base_get_method(struct event_base *); + + /** Deallocate all memory associated with an event_base, and free the base.