mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-30 15:43:32 +01:00
4c1c2a313d
"Tor has included a feature to fetch the initial consensus from nodes other than the authorities for a while now. We just haven't shipped a list of alternate locations for clients to go to yet. Reasons why we might want to ship tor with a list of additional places where clients can find the consensus is that it makes authority reachability and BW less important. We want them to have been around and using their current key, address, and port for a while now (120 days), and have been running, a guard, and a v2 directory mirror for most of that time." Features: * whitelist and blacklist for an opt-in/opt-out trial. * excludes BadExits, tor versions that aren't recommended, and low consensus weight directory mirrors. * reduces the weighting of Exits to avoid overloading them. * places limits on the weight of any one fallback. * includes an IPv6 address and orport for each FallbackDir, as implemented in #17327. (Tor won't bootstrap using IPv6 fallbacks until #17840 is merged.) * generated output includes timestamps & Onionoo URL for traceability. * unit test ensures that we successfully load all included default fallback directories. Closes ticket #15775. Patch by "teor". OnionOO script by "weasel", "teor", "gsathya", and "karsten". |
||
---|---|---|
.. | ||
coccinelle | ||
codegen | ||
maint | ||
test | ||
README |
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/checkLogs.pl -- Verify that Tor log statements are unique. maint/check_config_macros.pl -- Look for autoconf tests whose results are never used. maint/checkOptionDocs.pl -- Make sure that Tor options are documented in the manpage, and that the manpage only documents real Tor options. maint/checkSpaces.pl -- Style checker for the Tor source code. Mainly checks whitespace. maint/findMergedChanges.pl -- Find a set of changes/* files that have been merged into an upstream version. maint/format_changelog.py -- Flow the changelog into the proper format. maint/redox.py -- Find places that should have DOCDOC comments to indicate a need for doxygen comments, and put those comments there. maint/updateVersions.pl -- 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/scan-build.sh -- Example script for invoking clang's scan-build static analysis tools. Code generation scripts ----------------------- codegen/gen_linux_syscalls.pl -- Generate a table mapping linux syscall numbers to their names. codegen/gen_server_ciphers.py -- Generate a sorted list of TLS ciphersuites for servers to choose from. codegen/get_mozilla_ciphers.py -- 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)