diff options
author | Nick Mathewson <nickm@torproject.org> | 2021-03-15 08:52:28 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2021-03-15 08:52:28 -0400 |
commit | 4a538847a802650b1d5ced8c97372d60f5ec0906 (patch) | |
tree | 84511c22915482d7106c99408ff56d5caab90673 | |
parent | c63e09043a357c2bf39f37433baa18b365309869 (diff) | |
parent | b9f65390089817a74bf20d93e93a15b41a970f79 (diff) | |
download | tor-4a538847a802650b1d5ced8c97372d60f5ec0906.tar.gz tor-4a538847a802650b1d5ced8c97372d60f5ec0906.zip |
Merge branch 'maint-0.4.4' into release-0.4.4
-rw-r--r-- | changes/ticket40286_minimal | 5 | ||||
-rw-r--r-- | src/feature/dirparse/unparseable.c | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/changes/ticket40286_minimal b/changes/ticket40286_minimal new file mode 100644 index 0000000000..b8669debaa --- /dev/null +++ b/changes/ticket40286_minimal @@ -0,0 +1,5 @@ + o Major bugfixes (denial of service): + - Disable the dump_desc() function that we used to dump unparseable + information to disk. It was called incorrectly in several places, + in a way that could lead to excessive CPU usage. + Fixes bug 40286; bugfix on 0.2.2.1-alpha. diff --git a/src/feature/dirparse/unparseable.c b/src/feature/dirparse/unparseable.c index 98b68f90bb..da3c80e383 100644 --- a/src/feature/dirparse/unparseable.c +++ b/src/feature/dirparse/unparseable.c @@ -497,6 +497,12 @@ dump_desc,(const char *desc, const char *type)) { tor_assert(desc); tor_assert(type); +#ifndef TOR_UNIT_TESTS + /* On older versions of Tor we are disabling this function, since it + * can be called with strings that are far too long. */ + if (1) + return; +#endif size_t len; /* The SHA256 of the string */ uint8_t digest_sha256[DIGEST256_LEN]; |