Nick Mathewson f55598f870 Coverity: different implementation for csiphash 4 years ago
..
curve25519_donna fa5fda5bbf Rectify include paths (automated) 5 years ago
ed25519 c13a81f7f9 Fix (and make consistent) the use of OpenBSD preprocessor macro tests 5 years ago
keccak-tiny accf239fa3 Rectify include paths (automated) 5 years ago
mulodi fa5fda5bbf Rectify include paths (automated) 5 years ago
rust @ aa37fb84fb 4a5c1584fe update tor-rust-dependencies submodule 6 years ago
timeouts c66df27c90 Fix checkIncludes warning about "unusual pattern in src/ext/timeouts/" 5 years ago
trunnel c1359b32a4 trunnel: Rename sendme.trunnel to sendme_cell.trunnel 4 years ago
.may_include d32795bb6e Make "ext" participate in may_include. 5 years ago
Makefile.nmake 8391c96091 Clean up the MVSC nmake files so they work again. 9 years ago
OpenBSD_malloc_Linux.c fa5fda5bbf Rectify include paths (automated) 5 years ago
README 265e40b481 Raise libevent dependency to 2.0.10-stable or newer 7 years ago
byteorder.h c13a81f7f9 Fix (and make consistent) the use of OpenBSD preprocessor macro tests 5 years ago
csiphash.c f55598f870 Coverity: different implementation for csiphash 4 years ago
getdelim.c 9ce0bdd226 Prevent double free on huge files with 32 bit. 5 years ago
ht.h 2f683465d4 Bump copyright date to 2019 5 years ago
include.am c393171403 Use openssl's version of sha3 when available. 5 years ago
readpassphrase.c d32795bb6e Make "ext" participate in may_include. 5 years ago
siphash.h 42751e2123 On shutdown, mark openssl as uninitialized. 6 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 e4feb4ad01 Give tinytest a function to say whether the current test has failed 5 years ago
tinytest.h e4feb4ad01 Give tinytest a function to say whether the current test has failed 5 years ago
tinytest_demo.c a3dafd3f58 Replace operators used as macro arguments with OP_XX macros 9 years ago
tinytest_macros.h 5bb6172367 Fix numerous type errors in the unit tests 10 years ago
tor_queue.h 13298d90a9 Silence spurious clang warnings 9 years ago
tor_queue.txt 965d778b26 Add a copy of the queue(3) manpage to the git repository. 11 years ago
tor_readpassphrase.h d7a0382ba3 Don't call the system toupper or tolower. 8 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.

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.

trunnel/*.[ch]

Headers and runtime code for Trunnel, a system for generating
code to encode and decode binary formats.

ed25519/ref10/*

Daniel Bernsten's portable ref10 implementation of ed25519.
Public domain.

ed25519/donna/*

Andrew Moon's semi-portable ed25519-donna implementation of
ed25519. Public domain.

keccak-tiny/

David Leon Gil's portable Keccak implementation. CC0.

readpassphrase.[ch]

Portable readpassphrase implementation from OpenSSH portable, version
6.8p1.

timeouts/

William Ahern's hierarchical timer-wheel implementation. MIT license.

mulodi/

Contains an overflow-checking 64-bit signed integer multiply
from LLVM's compiler_rt. For some reason, this is missing from
32-bit libclang in many places. Dual licensed MIT-license and
BSD-like license; see mulodi/LICENSE.TXT.