mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-11 13:43:47 +01:00
b555388dac
There are as many divergent implementations of sys/queue.h as there are operating systems shipping it, it would seem. They have some code in common, but have drifted apart, and have added other stuff named differently. So I'm taking a relatively sane one, and hoping for the best. I'm taking OpenBSD's in particular because of the lack of external dependencies, the presence of a CIRCLEQ (we could use one of those in places), and the liberal licensing terms. I'm naming the file tor_queue.h, since historically we've run into trouble having headers with the same names as system headers (log.h, for example.)
40 lines
1.1 KiB
Plaintext
40 lines
1.1 KiB
Plaintext
|
|
OpenBSD_malloc_Linux.c:
|
|
|
|
The OpenBSD malloc implementation, ported to Linux. Used only when
|
|
--enable-openbsd-malloc is passed to the configure script.
|
|
|
|
strlcat.c
|
|
strlcpy.c
|
|
|
|
Implementations of strlcat and strlcpy, the more sane replacements
|
|
for strcat and strcpy. These are nonstandard, and some libc
|
|
implementations refuse to add them for religious reasons.
|
|
|
|
eventdns.[ch]
|
|
|
|
A fork of Libevent's DNS implementation, used by Tor when Libevent
|
|
2.0 or later is not available. Once Libevent 2.0 is required, we
|
|
should throw this away; it has diverged from evdns.[ch], and is
|
|
no longer easily mergeable.
|
|
|
|
ht.h
|
|
|
|
An implementation of a hash table in the style of Niels Provos's
|
|
tree.h. Shared with Libevent.
|
|
|
|
tinytest.[ch]
|
|
tinydest_demos.c
|
|
tinytest_macros.h
|
|
|
|
A unit testing framework. https://github.com/nmathewson/tinytest
|
|
|
|
tor_queue.h
|
|
|
|
A copy of sys/queue.h from OpenBSD. We keep our own copy rather
|
|
than using sys/queue.h, since some platforms don't have a
|
|
sys/queue.h, and the ones that do have diverged in incompatible
|
|
ways. (CIRCLEQ or no CIRCLEQ? SIMPLQ or STAILQ?)
|
|
|
|
|