cypherpunks 99cbadf143 Warn on Tor versions with the 'tor-' prefix 2 years ago
coccinelle 3ab2c865bf Add a rule to the calloc semantic patch for argument ordering. 4 years ago
codegen bc68eedd79 Update to trunnel 1.5.1 2 years ago
maint 99cbadf143 Warn on Tor versions with the 'tor-' prefix 2 years ago
test 4043f2c95f Adopt the LCOV convention for marking lines as unreachable by tests. 2 years ago
README be231b0db1 Add scripts/coccinelle to scripts/README 4 years ago


The scripts directory holds tools for use in building, generating, testing,
and maintaining the Tor source code. It is mainly for use by developers.

Code maintenance scripts

maint/ -- Verify that Tor log statements are unique.

maint/ -- Look for autoconf tests whose results are
never used.

maint/ -- Make sure that Tor options are documented in the
manpage, and that the manpage only documents real Tor options.

maint/ -- Style checker for the Tor source code. Mainly checks

maint/ -- Find a set of changes/* files that have been
merged into an upstream version.

maint/ -- Flow the changelog into the proper format.

maint/ -- Find places that should have DOCDOC comments to indicate a
need for doxygen comments, and put those comments there.

maint/ -- Update the version number in the .nsi and windows
orconfig.h files.

Testing scripts

test/cov-blame -- Mash up the results of gcov with git blame. Mainly useful
to find out who has been writing untested code.

test/cov-diff -- Compare two directories of gcov files to identify changed
lines without coverage.

test/coverage -- Generates a directory full of gcov files. You need to use
this script instead of calling gcov directly because of our confusingly named
object files.

test/ -- Example script for invoking clang's scan-build
static analysis tools.

Code generation scripts

codegen/ -- Generate a table mapping linux syscall
numbers to their names.

codegen/ -- Generate a sorted list of TLS ciphersuites
for servers to choose from.

codegen/ -- Generate a list of TLS ciphersuites for
clients to use in order to look like Firefox.

Code transformation scripts

coccinelle/calloc.cocci -- Transform code to replace variants of
malloc(a*b) with calloc(a,b)