Nick Mathewson 8391c96091 Clean up the MVSC nmake files so they work again. 9 years ago
..
curve25519_donna 391861311c Small tweaks to make curve25519-donna32 compile with our warnings 9 years ago
Makefile.nmake 8391c96091 Clean up the MVSC nmake files so they work again. 9 years ago
OpenBSD_malloc_Linux.c 63f542a5c2 Move all externally maintained source files into src/ext 11 years ago
README a1cdc619bb Mention siphash in src/ext/README 10 years ago
csiphash.c 9ccedbece0 Make csiphash use the proper endian-converter on solaris 10 years ago
eventdns.c 595303fd1e Merge remote-tracking branch 'public/bug10363_024_squashed' 10 years ago
eventdns.h d7b79bf020 Clean up reserved identifier usage in src/ext include guards 11 years ago
ht.h 9b10d7a7dd Add ATTR_UNUSED to HT_FIND 10 years ago
include.am 9605978eb6 Get csiphash better integrated with our build system 10 years ago
siphash.h 0e97c8e23e Siphash-2-4 is now our hash in nearly all cases. 10 years ago
strlcat.c 48b3ae8fe0 Move strlcpy and strlcat into src/ext too 11 years ago
strlcpy.c 48b3ae8fe0 Move strlcpy and strlcat into src/ext too 11 years ago
tinytest.c 9c9e07963d scan-build: truncate tinytest hexified outputs to 1024 bytes. 10 years ago
tinytest.h 1365ff5b9a Upgrade to the latest version of tinytest. 10 years ago
tinytest_demo.c 102bb1c04f Update to latest tinytest 10 years ago
tinytest_macros.h 5bb6172367 Fix numerous type errors in the unit tests 10 years ago
tor_queue.h 35daf6f602 Rename all of the macros in tor_queue.h to start with TOR_ 11 years ago
tor_queue.txt 965d778b26 Add a copy of the queue(3) manpage to the git repository. 11 years ago

README


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]
tinytest_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?) We also rename
the identifiers with a TOR_ prefix to avoid conflicts with
the system headers.

curve25519_donna/*.c

A copy of Adam Langley's curve25519-donna mostly-portable
implementations of curve25519.

csiphash.c
siphash.h

Marek Majkowski's implementation of siphash 2-4, a secure keyed
hash algorithm to avoid collision-based DoS attacks against hash
tables.