diff options
Diffstat (limited to 'changes')
54 files changed, 257 insertions, 0 deletions
diff --git a/changes/31147 b/changes/31147 new file mode 100644 index 0000000000..d6f5cbdf43 --- /dev/null +++ b/changes/31147 @@ -0,0 +1,3 @@ + o Minor features (defense in depth): + - Add additional sanity checks around tor_vasprintf() usage in case the + function returns an error. Patch by Tobias Stoeckmann. Fixes ticket 31147. diff --git a/changes/bug25568 b/changes/bug25568 new file mode 100644 index 0000000000..eeb7235cae --- /dev/null +++ b/changes/bug25568 @@ -0,0 +1,5 @@ + o Minor bugfixes (onion service v2): + - When sending the INTRO cell for a v2 Onion Service, look at the failure + cache alongside timeout values to check if the intro point is marked + as failed. Previously, we only looked at if the relay timeout values. + Fixes bug 25568; bugfix on 0.2.7.3-rc. Patch by Neel Chauhan. diff --git a/changes/bug31335 b/changes/bug31335 new file mode 100644 index 0000000000..f633cf8b24 --- /dev/null +++ b/changes/bug31335 @@ -0,0 +1,3 @@ + o Minor bugfixes (code quality): + - Fix "make check-includes" so it runs correctly on out-of-tree builds. + Fixes bug 31335; bugfix on 0.3.5.1-alpha. diff --git a/changes/bug32106 b/changes/bug32106 new file mode 100644 index 0000000000..c6e8e95860 --- /dev/null +++ b/changes/bug32106 @@ -0,0 +1,5 @@ + o Minor features (documentation): + - Make clear in the man page, in both the bandwidth section and the + accountingmax section, that Tor counts in powers of two, not + powers of ten: 1 GByte is 1024*1024*1024 bytes, not one billion + bytes. Resolves ticket 32106. diff --git a/changes/bug32108 b/changes/bug32108 new file mode 100644 index 0000000000..2806fa3e5d --- /dev/null +++ b/changes/bug32108 @@ -0,0 +1,8 @@ + o Major bugfixes (relay): + - Relays now respect their AccountingMax bandwidth again. When relays + entered "soft" hibernation (which typically starts when we've hit + 90% of our AccountingMax), we had stopped checking whether we should + enter hard hibernation. Soft hibernation refuses new connections and + new circuits, but the existing circuits can continue, meaning that + relays could have exceeded their configured AccountingMax. Fixes + bug 32108; bugfix on 0.4.0.1-alpha. diff --git a/changes/bug32175 b/changes/bug32175 new file mode 100644 index 0000000000..ac78dcf340 --- /dev/null +++ b/changes/bug32175 @@ -0,0 +1,6 @@ + o Minor bugfixes (tests): + - Our option-validation tests no longer depend on specially configured + non-default, non-passing set of options. Previously, the tests had + been written to assume that options would _not_ be set to their + defaults, which led to needless complexity and verbosity. + Fixes bug 32175; bugfix on 0.2.8.1-alpha. diff --git a/changes/bug32213 b/changes/bug32213 new file mode 100644 index 0000000000..9083f4286c --- /dev/null +++ b/changes/bug32213 @@ -0,0 +1,20 @@ + o Minor bugfixes (dirauth module): + - When the dirauth module is disabled, reject attempts to set the + AuthoritativeDir option, rather than ignoring the value of the + option. Fixes bug 32213; bugfix on 0.3.4.1-alpha. + - Split the dirauth config code into a separate file in the dirauth + module. Disable this code when the dirauth module is disabled. + Closes ticket 32213. + o Minor features (relay module): + - When the relay module is disabled, reject attempts to set the + ORPort, DirPort, DirCache, BridgeRelay, ExtORPort, or + ServerTransport* options, rather than ignoring the values of these + options. Closes ticket 32213. + - Split the relay and server pluggable transport config code into + separate files in the relay module. Disable this code when the relay + module is disabled. Closes ticket 32213. + o Code simplification and refactoring: + - Simplify some relay and dirauth config code. Closes ticket 32213. + o Testing: + - Improve test coverage for relay and dirauth config code, focusing on + option validation and normalization. Closes ticket 32213. diff --git a/changes/bug32352 b/changes/bug32352 new file mode 100644 index 0000000000..ca93e4efdf --- /dev/null +++ b/changes/bug32352 @@ -0,0 +1,6 @@ + o Minor bugfixes (config): + - When dumping the config, stop adding a trailing space after the option + name, when there is no option value. This issue only affects options + that accept an empty value or list. (Most options reject empty values, + or delete the entire line from the dumped options.) + Fixes bug 32352; bugfix on 0.0.9pre6. diff --git a/changes/bug32368 b/changes/bug32368 new file mode 100644 index 0000000000..378f74fa54 --- /dev/null +++ b/changes/bug32368 @@ -0,0 +1,4 @@ + o Minor bugfixes (test): + - Use the same code to find the tor binary in all of our test scripts. + This change makes sure we are always using the coverage binary, when + coverage is enabled. Fixes bug 32368; bugfix on 0.2.7.3-rc. diff --git a/changes/bug32370 b/changes/bug32370 new file mode 100644 index 0000000000..9e450d9612 --- /dev/null +++ b/changes/bug32370 @@ -0,0 +1,3 @@ + o Minor bugfixes (build): + - Fix "make autostyle" for out-of-tree builds. + Fixes bug 32370; bugfix on 0.4.1.2-alpha. diff --git a/changes/bug32371 b/changes/bug32371 new file mode 100644 index 0000000000..1fed15c2d7 --- /dev/null +++ b/changes/bug32371 @@ -0,0 +1,3 @@ + o Minor bugfixes (scripts): + - Fix update_versions.py for out-of-tree builds. + Fixes bug 32371; bugfix on 0.4.0.1-alpha. diff --git a/changes/bug32402 b/changes/bug32402 new file mode 100644 index 0000000000..0654389be3 --- /dev/null +++ b/changes/bug32402 @@ -0,0 +1,3 @@ + o Minor bugfixes (shellcheck): + - Start checking most scripts for shellcheck errors again. + Fixes bug 32402; bugfix on 0.4.2.1-alpha. diff --git a/changes/bug32402_git_scripts b/changes/bug32402_git_scripts new file mode 100644 index 0000000000..2b10a8998a --- /dev/null +++ b/changes/bug32402_git_scripts @@ -0,0 +1,3 @@ + o Minor bugfixes (shellcheck): + - Fix minor shellcheck errors in the git-*.sh scripts. + Fixes bug 32402; bugfix on 0.4.2.1-alpha. diff --git a/changes/bug32449 b/changes/bug32449 new file mode 100644 index 0000000000..213d8a1014 --- /dev/null +++ b/changes/bug32449 @@ -0,0 +1,5 @@ + o Minor bugfixes (CI, appveyor): + - Install the mingw OpenSSL package in Appveyor. This makes sure that + the OpenSSL headers and libraries match in Tor's Appveyor builds. + (This bug was triggered by an Appveyor image update.) + Fixes bug 32449; bugfix on 0.3.5.6-rc. diff --git a/changes/geoip-2019-11-06 b/changes/geoip-2019-11-06 new file mode 100644 index 0000000000..a470981012 --- /dev/null +++ b/changes/geoip-2019-11-06 @@ -0,0 +1,4 @@ + o Minor features (geoip): + - Update geoip and geoip6 to the November 6 2019 Maxmind GeoLite2 + Country database. Closes ticket 32440. + diff --git a/changes/ticket28970 b/changes/ticket28970 new file mode 100644 index 0000000000..138c575fcc --- /dev/null +++ b/changes/ticket28970 @@ -0,0 +1,6 @@ + o Minor bugfixes (clietn, hidden service v3): + - Fix a BUG() assertion that occurs within a very small race window between + a client intro circuit opens and its descriptor that gets cleaned up from + the cache. The circuit is now closed which will trigger a re-fetch of the + descriptor and continue the HS connection. Fixes bug 28970; bugfix on + 0.3.2.1-alpha. diff --git a/changes/ticket29603 b/changes/ticket29603 new file mode 100644 index 0000000000..f820352cbb --- /dev/null +++ b/changes/ticket29603 @@ -0,0 +1,3 @@ + o Minor features (git scripts): + - Add git-setup-dirs.sh, which sets up an upstream git repository and + worktrees for tor maintainers. Closes ticket 29603. diff --git a/changes/ticket31241 b/changes/ticket31241 new file mode 100644 index 0000000000..64852ca4be --- /dev/null +++ b/changes/ticket31241 @@ -0,0 +1,5 @@ + o Minor features (configuration validation): + - Configuration validation can now be done by per-module callbacks, + rather than a global validation function. This will let us reduce the + size of config.c and some of its more cumbersome functions. Closes + ticket 31241. diff --git a/changes/ticket31336 b/changes/ticket31336 new file mode 100644 index 0000000000..c5a013699f --- /dev/null +++ b/changes/ticket31336 @@ -0,0 +1,3 @@ + o Minor bugfixes (developer tools): + - Allow paths starting with ./ in scripts/add_c_file.py. Fixes bug + 31336; bugfix on 0.4.1.2-alpha. diff --git a/changes/ticket31371 b/changes/ticket31371 new file mode 100644 index 0000000000..25457da81e --- /dev/null +++ b/changes/ticket31371 @@ -0,0 +1,3 @@ + o Minor feature (heartbeat, onion service): + - Add the DoS INTRODUCE2 defenses counter to the heartbeat DoS message. + Closes ticket 31371. diff --git a/changes/ticket31373 b/changes/ticket31373 new file mode 100644 index 0000000000..1f2dea3cd4 --- /dev/null +++ b/changes/ticket31373 @@ -0,0 +1,3 @@ + o Minor feature (configure, build system): + - Output enabled/disabled features at the end of the configure process in a + pleasing way. Closes ticket 31373. diff --git a/changes/ticket31684 b/changes/ticket31684 new file mode 100644 index 0000000000..6631c87940 --- /dev/null +++ b/changes/ticket31684 @@ -0,0 +1,6 @@ + o Minor features (controller): + - Implement a new GETINFO command to fetch microdescriptor consensus. + Closes ticket 31684. + o Code simplification and refactoring (controller): + - Create a helper function that can fetch network status or microdesc + consensuses. Closes ticket 31684. diff --git a/changes/ticket31705 b/changes/ticket31705 new file mode 100644 index 0000000000..5ac736d4f5 --- /dev/null +++ b/changes/ticket31705 @@ -0,0 +1,9 @@ + o Minor features (developer tools): + - Add some scripts in "scripts/coccinelle" to invoke the Coccinelle + semantic patching tool with the correct flags. These flags are fairly + easy to forget, and these scripts should help us use Coccinelle more + effectively in the future. Closes ticket 31705. + + o Code simplification and refactoring: + - Fix some parts of our code that were difficult for Coccinelle to parse. + Related to ticket 31705. diff --git a/changes/ticket31919 b/changes/ticket31919 new file mode 100644 index 0000000000..5344db956b --- /dev/null +++ b/changes/ticket31919 @@ -0,0 +1,13 @@ + o Minor features (developer tools): + - Add a check_cocci_parse.sh script that checks that new code + is parseable by Coccinelle. Add an exceptions file for unparseable + files. Closes ticket 31919. + - Call the check_cocci_parse.sh script from a 'check-cocci' Makefile + target. Closes ticket 31919. + o Minor features (git scripts): + - Call the check_cocci_parse.sh script from the git commit and push hooks. + Closes ticket 31919. + - Skip unmodified source files when doing some existing git hook checks. + Related to ticket 31919. + o Minor features (continuous integration): + - Call the check_cocci_parse.sh script from Travis CI. Closes ticket 31919. diff --git a/changes/ticket31919_bionic b/changes/ticket31919_bionic new file mode 100644 index 0000000000..eb41644555 --- /dev/null +++ b/changes/ticket31919_bionic @@ -0,0 +1,5 @@ + o Minor features (continuous integration): + - Use Ubuntu Bionic images for our Travis CI builds, so we can get + a recent version of coccinelle. But leave chutney on Ubuntu Trusty, + until we can fix some Bionic permissions issues (see ticket 32240). + Related to ticket 31919. diff --git a/changes/ticket31958 b/changes/ticket31958 new file mode 100644 index 0000000000..8206064dfe --- /dev/null +++ b/changes/ticket31958 @@ -0,0 +1,5 @@ + o Minor bugfixes (directory): + - When checking if a directory connection is anonymous, test if the circuit + was marked for close before looking at its channel. This avoids a BUG() + stacktrace in case it was previously closed. Fixes bug 31958; bugfix on + 0.4.2.1-alpha. diff --git a/changes/ticket31999 b/changes/ticket31999 new file mode 100644 index 0000000000..31f230ee20 --- /dev/null +++ b/changes/ticket31999 @@ -0,0 +1,6 @@ + o Code simplification and refactoring: + - Our default log (which ordinarily sends NOTICE-level message to + standard output) is now handled in a more logical manner. Previously, + we replaced the configured log options if they were empty. + Now, we interpret an empty set of log options as meaning "use the + default log". Closes ticket 31999. diff --git a/changes/ticket32003 b/changes/ticket32003 new file mode 100644 index 0000000000..b8809f288e --- /dev/null +++ b/changes/ticket32003 @@ -0,0 +1,4 @@ + o Code simplification and refactoring: + - When parsing the command line, handle options that determine our "quiet + level" and our mode of operation (e.g., --dump-config and so on) + all in one table. Closes ticket 32003. diff --git a/changes/ticket32094 b/changes/ticket32094 new file mode 100644 index 0000000000..f6d0aba164 --- /dev/null +++ b/changes/ticket32094 @@ -0,0 +1,4 @@ + o Minor bugfixes (hidden service v3): + - Do not rely on a "circuit established" flag for intro circuit but instead + always query the HS circuit map. This is to avoid sync issue with that + flag and the map. Fixes bug 32094; bugfix on 0.3.2.1-alpha. diff --git a/changes/ticket32099 b/changes/ticket32099 new file mode 100644 index 0000000000..7a111df6ba --- /dev/null +++ b/changes/ticket32099 @@ -0,0 +1,4 @@ + o Removed features: + - Our Doxygen configuration no longer generates LaTeX output. The + reference manual produced by doing this was over 4000 pages long, + and generally unusable. Closes ticket 32099. diff --git a/changes/ticket32110 b/changes/ticket32110 new file mode 100644 index 0000000000..75d20a74bf --- /dev/null +++ b/changes/ticket32110 @@ -0,0 +1,4 @@ + o Minor features (Doxygen): + + - Update Doxygen configuration file to a more recent template (from + 1.8.15). Closes ticket 32110. diff --git a/changes/ticket32113 b/changes/ticket32113 new file mode 100644 index 0000000000..ef7978f1b9 --- /dev/null +++ b/changes/ticket32113 @@ -0,0 +1,3 @@ + o Minor features (doxygen): + - "make doxygen" now works with out-of-tree builds. Closes ticket + 32113. diff --git a/changes/ticket32123 b/changes/ticket32123 new file mode 100644 index 0000000000..8200f5fca6 --- /dev/null +++ b/changes/ticket32123 @@ -0,0 +1,5 @@ + o Major features (build system): + - Create an optional relay module, which can be disabled using the + --disable-module-relay configure option. When it is set, also disable + the dirauth module. Add a minimal implemention, which disables the + relay and dircache modes in tor. Closes ticket 32123. diff --git a/changes/ticket32176 b/changes/ticket32176 new file mode 100644 index 0000000000..ad44d3280d --- /dev/null +++ b/changes/ticket32176 @@ -0,0 +1,4 @@ + o Documentation (manpage): + - In the tor(1) manpage, reword and improve formatting of the + FILES, SEE ALSO, and BUGS sections. Closes ticket 32176. Based + on work by Swati Thacker as part of Google Season of Docs. diff --git a/changes/ticket32185 b/changes/ticket32185 new file mode 100644 index 0000000000..86f5dc5af1 --- /dev/null +++ b/changes/ticket32185 @@ -0,0 +1,4 @@ + o Code simplification and refactoring: + - Simplify the options_validate() code so that it looks at the default + options directly, rather than taking default options as an argument. + This change lets us simplify its interface. Closes ticket 32185. diff --git a/changes/ticket32187 b/changes/ticket32187 new file mode 100644 index 0000000000..b5b4e16bfc --- /dev/null +++ b/changes/ticket32187 @@ -0,0 +1,3 @@ + o Code simplification and refactoring: + - Remove some unused arguments from the options_validate() function, + to simplify our code and tests. Closes ticket 32187. diff --git a/changes/ticket32191 b/changes/ticket32191 new file mode 100644 index 0000000000..6988328115 --- /dev/null +++ b/changes/ticket32191 @@ -0,0 +1,3 @@ + o Minor features (build system): + - Make pkg-config use --prefix when cross-compiling, if PKG_CONFIG_PATH + is not set. Closes ticket 32191. diff --git a/changes/ticket32196 b/changes/ticket32196 new file mode 100644 index 0000000000..d642478fe4 --- /dev/null +++ b/changes/ticket32196 @@ -0,0 +1,2 @@ + o Testing (circuit, EWMA): + - Add unit tests for circuitmux and EWMA subsystems. Closes ticket 32196. diff --git a/changes/ticket32213_parseconf b/changes/ticket32213_parseconf new file mode 100644 index 0000000000..a334bec5c6 --- /dev/null +++ b/changes/ticket32213_parseconf @@ -0,0 +1,3 @@ + o Testing: + - Improve the consistency of test_parseconf.sh output, and run all the + tests, even if one fails. Closes ticket 32213. diff --git a/changes/ticket32216 b/changes/ticket32216 new file mode 100644 index 0000000000..86712d700d --- /dev/null +++ b/changes/ticket32216 @@ -0,0 +1,9 @@ + o Minor features (git scripts): + - Make git-push-all.sh skip unchanged branches when pushing to upstream. + The script already skipped unchanged test branches. + Closes ticket 32216. + o Minor bugfixes (git scripts): + - Avoid sleeping before the last push in git-push-all.sh. + Closes ticket 32216. + - Forward all unrecognised arguments in git-push-all.sh to git push. + Closes ticket 32216. diff --git a/changes/ticket32237 b/changes/ticket32237 new file mode 100644 index 0000000000..dfa0b78405 --- /dev/null +++ b/changes/ticket32237 @@ -0,0 +1,5 @@ + o Minor features (developer tools): + - Add a rename_c_identifiers.py tool to rename a bunch of C + identifiers at once, and generate a well-formed commit message + describing the change. This should help with refactoring. Closes + ticket 32237. diff --git a/changes/ticket32241 b/changes/ticket32241 new file mode 100644 index 0000000000..4243cec175 --- /dev/null +++ b/changes/ticket32241 @@ -0,0 +1,2 @@ + o Testing (continuous integration): + - In Travis, use Xcode 11.2 on macOS 10.14. Closes ticket 32241. diff --git a/changes/ticket32277 b/changes/ticket32277 new file mode 100644 index 0000000000..1ef0c4ab56 --- /dev/null +++ b/changes/ticket32277 @@ -0,0 +1,5 @@ + o Documentation (manpage): + - In the tor(1) manpage, reword and improve formatting of the + COMMAND-LINE OPTIONS and DESCRIPTION sections. Closes ticket + 32277. Based on work by Swati Thacker as part of Google Season + of Docs. diff --git a/changes/ticket32304 b/changes/ticket32304 new file mode 100644 index 0000000000..5dde7b6d84 --- /dev/null +++ b/changes/ticket32304 @@ -0,0 +1,3 @@ + o Code simplification and refactoring: + - Move and rename some configuration-related code for clarity. + Closes ticket 32304. diff --git a/changes/ticket32307 b/changes/ticket32307 new file mode 100644 index 0000000000..1e68430991 --- /dev/null +++ b/changes/ticket32307 @@ -0,0 +1,4 @@ + o Minor features (documentation): + - Make sure that doxygen outputs documentation for all of our C files. + Previously, some were missing @file declarations, causing them to be + ignored. Closes ticket 32307. diff --git a/changes/ticket32339_relative b/changes/ticket32339_relative new file mode 100644 index 0000000000..83af9f031b --- /dev/null +++ b/changes/ticket32339_relative @@ -0,0 +1,4 @@ + o Code simplification and refactoring: + - Instead of keeping a list of configuration options to check for + relative paths, check all the options whose type is "FILENAME". + Solves part of ticket 32339. diff --git a/changes/ticket32344 b/changes/ticket32344 new file mode 100644 index 0000000000..9dfb326976 --- /dev/null +++ b/changes/ticket32344 @@ -0,0 +1,4 @@ + o Code simplification and refactoring: + - Immutability is now implemented as a flag on individual configuration + options rather than as part of the option-transition checking + code. Closes ticket 32344. diff --git a/changes/ticket32382 b/changes/ticket32382 new file mode 100644 index 0000000000..85cf07b2ef --- /dev/null +++ b/changes/ticket32382 @@ -0,0 +1,4 @@ + o Minor bugfixes (configuration): + - Avoid changing the user's value of HardwareAccel as stored by SAVECONF, + when AccelName is set but HardwareAccel is not. + Fixes bug 32382; bugfix on 0.2.2.1-alpha. diff --git a/changes/ticket32385 b/changes/ticket32385 new file mode 100644 index 0000000000..2ff76be267 --- /dev/null +++ b/changes/ticket32385 @@ -0,0 +1,6 @@ + o Minor features (doxygen): + - Our "make doxygen" target now respects --enable-fatal-warnings by + default, and does not warn about items that are missing documentation. + To warn about missing documentation, run configure with the + "--enable-missing-doc-warnings" flag: doing so suspends fatal warnings + for doxygen. Closes ticket 32385. diff --git a/changes/ticket32397 b/changes/ticket32397 new file mode 100644 index 0000000000..4e77ea135d --- /dev/null +++ b/changes/ticket32397 @@ -0,0 +1,4 @@ + o Minor features (testing): + - test_parseconf.sh now supports result variants for any combination + of the optional libraries lzma, nss, and zstd. + Closes ticket 32397. diff --git a/changes/ticket32404 b/changes/ticket32404 new file mode 100644 index 0000000000..1bffbc652b --- /dev/null +++ b/changes/ticket32404 @@ -0,0 +1,5 @@ + o Minor features (configuration): + - We use a flag-driven logic to warn about obsolete configuration fields, + so that we can include their names. In 0.4.2, we used + a special type, which prevented us from generating good warnings. + Implements ticket 32404. diff --git a/changes/ticket32406 b/changes/ticket32406 new file mode 100644 index 0000000000..c0c60207c0 --- /dev/null +++ b/changes/ticket32406 @@ -0,0 +1,4 @@ + o Minor features (configuration): + - If the configured hardware crypto accelerator in AccelName + is prefixed with "!", Tor now exits when it cannot be found. + Closes ticket 32406. diff --git a/changes/ticket32407 b/changes/ticket32407 new file mode 100644 index 0000000000..badb09abfe --- /dev/null +++ b/changes/ticket32407 @@ -0,0 +1,4 @@ + o Minor bugfixes (crash): + - When running Tor with an option like --verify-config or --dump-config + that does not start the event loop, avoid crashing if we try to exit + early because of an error. Fixes bug 32407; bugfix on 0.3.3.1-alpha. diff --git a/changes/ticket32410 b/changes/ticket32410 new file mode 100644 index 0000000000..56368fe558 --- /dev/null +++ b/changes/ticket32410 @@ -0,0 +1,3 @@ + o Minor features (relay): + - When the relay module is disabled, make "DirCache 0" the default. + Closes ticket 32410. |