compat_libevent.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /* Copyright (c) 2009, The Tor Project, Inc. */
  2. /* See LICENSE for licensing information */
  3. #ifndef _TOR_COMPAT_LIBEVENT_H
  4. #define _TOR_COMPAT_LIBEVENT_H
  5. #include "orconfig.h"
  6. #ifdef HAVE_EVENT2_EVENT_H
  7. #include <event2/event.h>
  8. #else
  9. #include <event.h>
  10. #define evutil_socket_t int
  11. #endif
  12. void configure_libevent_logging(void);
  13. void suppress_libevent_log_msg(const char *msg);
  14. #ifdef HAVE_EVENT2_EVENT_H
  15. #define tor_event_new event_new
  16. #define tor_evtimer_new evtimer_new
  17. #define tor_evsignal_new evsignal_new
  18. #define tor_event_free event_free
  19. #else
  20. struct event *tor_event_new(struct event_base * base, evutil_socket_t sock,
  21. short what, void (*cb)(evutil_socket_t, short, void *), void *arg);
  22. struct event *tor_evtimer_new(struct event_base * base,
  23. void (*cb)(evutil_socket_t, short, void *), void *arg);
  24. struct event *tor_evsignal_new(struct event_base * base, int sig,
  25. void (*cb)(evutil_socket_t, short, void *), void *arg);
  26. void tor_event_free(struct event *ev);
  27. #endif
  28. void tor_libevent_initialize(void);
  29. struct event_base *tor_libevent_get_base(void);
  30. const char *tor_libevent_get_method(void);
  31. #endif