Nick Mathewson 6bfa87d3aa Update rust submodule. vor 6 Jahren
..
curve25519_donna 0390e1a60c Fix a set of variable-shadowing warnings in curve25519-donna.c vor 7 Jahren
ed25519 809f6fae84 refactor: Remove unnecessary `#include "crypto.h"` throughout codebase. vor 6 Jahren
keccak-tiny fe3aca1491 crypto: Refactor (P)RNG functionality into new crypto_rand module. vor 6 Jahren
mulodi 5a9696fad8 Fix a new compilation warning with broken-mulodi i386 clang builds. :( vor 7 Jahren
rust @ e92c124a41 6bfa87d3aa Update rust submodule. vor 6 Jahren
timeouts 31fbbf2377 Fixup timing wheel warnings related to recent WHEEL_BIT change. vor 6 Jahren
trunnel a007c02df0 Re-run trunnel. Cosmetic changes only. vor 6 Jahren
Makefile.nmake 8391c96091 Clean up the MVSC nmake files so they work again. vor 9 Jahren
OpenBSD_malloc_Linux.c 40b7dfaed2 Remove now-pointless SIZE_MAX stanza from OpenBSD_malloc_linux vor 9 Jahren
README 265e40b481 Raise libevent dependency to 2.0.10-stable or newer vor 7 Jahren
byteorder.h 9014dc111a Improve keccak-tiny performance by 15% on LE intel vor 7 Jahren
csiphash.c 42751e2123 On shutdown, mark openssl as uninitialized. vor 6 Jahren
ht.h 2034e0d1d4 sched: Groundwork before KIST implementation vor 6 Jahren
include.am 38fb651f0d Make our ed25519 implementations no longer use openssl directly. vor 7 Jahren
readpassphrase.c d7a0382ba3 Don't call the system toupper or tolower. vor 8 Jahren
siphash.h 42751e2123 On shutdown, mark openssl as uninitialized. vor 6 Jahren
strlcat.c 48b3ae8fe0 Move strlcpy and strlcat into src/ext too vor 11 Jahren
strlcpy.c 48b3ae8fe0 Move strlcpy and strlcat into src/ext too vor 11 Jahren
tinytest.c 53a3b39da1 Add -Wmissing-variable-declarations, with attendant fixes vor 8 Jahren
tinytest.h 1365ff5b9a Upgrade to the latest version of tinytest. vor 10 Jahren
tinytest_demo.c a3dafd3f58 Replace operators used as macro arguments with OP_XX macros vor 9 Jahren
tinytest_macros.h 5bb6172367 Fix numerous type errors in the unit tests vor 10 Jahren
tor_queue.h 13298d90a9 Silence spurious clang warnings vor 9 Jahren
tor_queue.txt 965d778b26 Add a copy of the queue(3) manpage to the git repository. vor 11 Jahren
tor_readpassphrase.h d7a0382ba3 Don't call the system toupper or tolower. vor 8 Jahren

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.