Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
The Tor Project
Core
Tor
Commits
33b1d714
Commit
33b1d714
authored
Jun 04, 2009
by
Nick Mathewson
🎨
Browse files
Make Tor compile with Libevent 1.0 again.
parent
c0af3cdf
Changes
4
Hide whitespace changes
Inline
Side-by-side
configure.in
View file @
33b1d714
...
...
@@ -273,7 +273,7 @@ save_CPPFLAGS="$CPPFLAGS"
LIBS="-levent $TOR_LIB_WS32 $LIBS"
LDFLAGS="$TOR_LDFLAGS_libevent $LDFLAGS"
CPPFLAGS="$TOR_CPPFLAGS_libevent $CPPFLAGS"
AC_CHECK_FUNCS(event_get_version event_get_version_number event_get_method event_set_log_callback evdns_set_outgoing_bind_address)
AC_CHECK_FUNCS(event_get_version event_get_version_number event_get_method event_set_log_callback evdns_set_outgoing_bind_address
event_base_loopexit
)
AC_CHECK_MEMBERS([struct event.min_heap_idx], , ,
[#include <event.h>
])
...
...
src/common/compat_libevent.c
View file @
33b1d714
...
...
@@ -134,7 +134,6 @@ tor_event_free(struct event *ev)
/** Global event base for use by the main thread. */
struct
event_base
*
the_event_base
=
NULL
;
/* This is what passes for version detection on OSX. We set
* MACOSX_KQUEUE_IS_BROKEN to true iff we're on a version of OSX before
* 10.4.0 (aka 1040). */
...
...
@@ -188,6 +187,18 @@ tor_libevent_get_base(void)
return
the_event_base
;
}
#ifndef HAVE_EVENT_BASE_LOOPEXIT
/* Replacement for event_base_loopexit on some very old versions of Libevent
that we are not yet brave enough to deprecate. */
int
tor_event_base_loopexit
(
struct
event_base
*
base
,
struct
timeval
*
tv
)
{
tor_assert
(
base
==
the_event_base
);
return
event_loopexit
(
tv
);
}
#endif
/** Return the name of the Libevent backend we're using. */
const
char
*
tor_libevent_get_method
(
void
)
...
...
src/common/compat_libevent.h
View file @
33b1d714
...
...
@@ -33,6 +33,15 @@ struct event *tor_evsignal_new(struct event_base * base, int sig,
void
tor_event_free
(
struct
event
*
ev
);
#endif
/* XXXX022 If we can drop support for Libevent before 1.1, we can
* do without this wrapper. */
#ifdef HAVE_EVENT_BASE_LOOPEXIT
#define tor_event_base_loopexit event_base_loopexit
#else
struct
timeval
;
int
tor_event_base_loopexit
(
struct
event_base
*
base
,
struct
timeval
*
tv
);
#endif
void
tor_libevent_initialize
(
void
);
struct
event_base
*
tor_libevent_get_base
(
void
);
const
char
*
tor_libevent_get_method
(
void
);
...
...
src/or/main.c
View file @
33b1d714
...
...
@@ -395,7 +395,7 @@ connection_start_reading_from_linked_conn(connection_t *conn)
* the end of its run through the current connections and lets us
* activate read events for linked connections. */
struct
timeval
tv
=
{
0
,
0
};
event_base_loopexit
(
tor_libevent_get_base
(),
&
tv
);
tor_
event_base_loopexit
(
tor_libevent_get_base
(),
&
tv
);
}
}
else
{
tor_assert
(
smartlist_isin
(
active_linked_connection_lst
,
conn
));
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment