conn: Close the read side of a closing connection when write limit is reached
[tor.git] / scripts / README
blob02faabe06b866da047f6f17000d2405560004514
1 The scripts directory holds tools for use in building, generating, testing,
2 and maintaining the Tor source code.  It is mainly for use by developers.
4 Code maintenance scripts
5 ------------------------
7 maint/checkLogs.pl -- Verify that Tor log statements are unique.
9 maint/check_config_macros.pl -- Look for autoconf tests whose results are
10 never used.
12 maint/checkOptionDocs.pl -- Make sure that Tor options are documented in the
13 manpage, and that the manpage only documents real Tor options.
15 maint/checkSpaces.pl -- Style checker for the Tor source code.  Mainly checks
16 whitespace.
18 maint/findMergedChanges.pl -- Find a set of changes/* files that have been
19 merged into an upstream version.
21 maint/format_changelog.py -- Flow the changelog into the proper format.
23 maint/redox.py -- Find places that should have DOCDOC comments to indicate a
24 need for doxygen comments, and put those comments there.
26 maint/updateVersions.pl -- Update the version number in the .nsi and windows
27 orconfig.h files.
30 Testing scripts
31 ---------------
33 test/cov-blame -- Mash up the results of gcov with git blame.  Mainly useful
34 to find out who has been writing untested code.
36 test/cov-diff -- Compare two directories of gcov files to identify changed
37 lines without coverage.
39 test/coverage -- Generates a directory full of gcov files. You need to use
40 this script instead of calling gcov directly because of our confusingly named
41 object files.
43 test/scan-build.sh -- Example script for invoking clang's scan-build
44 static analysis tools.
47 Code generation scripts
48 -----------------------
50 codegen/gen_linux_syscalls.pl -- Generate a table mapping linux syscall
51 numbers to their names.
53 codegen/gen_server_ciphers.py -- Generate a sorted list of TLS ciphersuites
54 for servers to choose from.
56 codegen/get_mozilla_ciphers.py -- Generate a list of TLS ciphersuites for
57 clients to use in order to look like Firefox.
59 Code transformation scripts
60 ---------------------------
62 coccinelle/calloc.cocci -- Transform code to replace variants of
63 malloc(a*b) with calloc(a,b)