tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

README (2405B)


      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.
      3 
      4 Code maintenance scripts
      5 ------------------------
      6 
      7 maint/checkLogs.pl -- Verify that Tor log statements are unique.
      8 
      9 maint/check_config_macros.pl -- Look for autoconf tests whose results are
     10 never used.
     11 
     12 maint/checkOptionDocs.pl -- Make sure that Tor options are documented in the
     13 manpage, and that the manpage only documents real Tor options.
     14 
     15 maint/checkSpace.pl -- Style checker for the Tor source code.  Mainly checks
     16 whitespace.
     17 
     18 maint/findMergedChanges.pl -- Find a set of changes/* files that have been
     19 merged into an upstream version.
     20 
     21 maint/format_changelog.py -- Flow the changelog into the proper format.
     22 
     23 maint/redox.py -- Find places that should have DOCDOC comments to indicate a
     24 need for doxygen comments, and put those comments there.
     25 
     26 maint/update_versions.py -- Update the version number in the .nsi and windows
     27 orconfig.h files.
     28 
     29 
     30 Testing scripts
     31 ---------------
     32 
     33 test/chutney-git-bisect.sh -- a git bisect run script that bisects using
     34 chutney. The script builds tor and tor-gencert, then runs chutney. The script
     35 takes optional arguments for out-of-tree builds, and specific chutney network
     36 flavours. You should copy this script before using it with git bisect, so that
     37 it doesn't change (or disappear) during bisection.
     38 
     39 test/cov-blame -- Mash up the results of gcov with git blame.  Mainly useful
     40 to find out who has been writing untested code.
     41 
     42 test/cov-diff -- Compare two directories of gcov files to identify changed
     43 lines without coverage.
     44 
     45 test/coverage -- Generates a directory full of gcov files. You need to use
     46 this script instead of calling gcov directly because of our confusingly named
     47 object files.
     48 
     49 test/scan-build.sh -- Example script for invoking clang's scan-build
     50 static analysis tools.
     51 
     52 
     53 Code generation scripts
     54 -----------------------
     55 
     56 codegen/gen_linux_syscalls.pl -- Generate a table mapping linux syscall
     57 numbers to their names.
     58 
     59 codegen/gen_server_ciphers.py -- Generate a sorted list of TLS ciphersuites
     60 for servers to choose from.
     61 
     62 codegen/get_mozilla_ciphers.py -- Generate a list of TLS ciphersuites for
     63 clients to use in order to look like Firefox.
     64 
     65 Code transformation scripts
     66 ---------------------------
     67 
     68 coccinelle/calloc.cocci -- Transform code to replace variants of
     69 malloc(a*b) with calloc(a,b)