summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-07-30Merge branch 'bug40076_042' into bug40076_043Nick Mathewson
2020-07-30Merge branch 'maint-0.4.2' into bug40076_042Nick Mathewson
2020-07-30Fix a bug in buf_move_all() when the input buffer is empty.Nick Mathewson
We found this in #40076, after we started using buf_move_all() in more places. Fixes bug #40076; bugfix on 0.3.3.1-alpha. As far as I know, the crash only affects master, but I think this warrants a backport, "just in case".
2020-07-30Add unit test for buf_move_all(), including a failing caseNick Mathewson
The failing case is #if'd out for now, but will be fixed in the next commit. Testing for a fix for #40076.
2020-07-29Merge branch 'maint-0.4.2' into maint-0.4.3Nick Mathewson
2020-07-29Merge branch 'maint-0.3.5' into maint-0.4.2Nick Mathewson
2020-07-28Use _lseeki64() on windows.Nick Mathewson
Fixes bug 31036; bugfix on 0.2.1.8-alpha when we moved the logging system to use posix fds.
2020-07-27Merge branch 'maint-0.4.2' into maint-0.4.3Nick Mathewson
2020-07-27Merge branch 'maint-0.3.5' into maint-0.4.2Nick Mathewson
2020-07-24fallbackdir: Remove all three Digitalcourage3 relaysDavid Goulet
They are about to be shutdown in September. Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-07-23Merge branch 'maint-0.4.2' into maint-0.4.3Nick Mathewson
2020-07-23Merge branch 'maint-0.3.5' into maint-0.4.2Nick Mathewson
2020-07-23More info in the fallbackdir changes fileNick Mathewson
2020-07-23fallbackdir: Update list for 2020David Goulet
Closes #40061 Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-07-13Remove check-cocci from check-local target.Nick Mathewson
check-cocci is still a good idea -- perhaps as a cron job? But doing it as part of our regular tests has just been confusing, especially to volunteers who shouldn't have to become coccinelle experts in order to get their patches through our CI. Closes #40030.
2020-07-09Bump to 0.4.3.6-devNick Mathewson
2020-07-09Merge branch 'maint-0.4.2' into maint-0.4.3Nick Mathewson
`-s ours` to avoid version bump.
2020-07-09Bump to 0.4.2.8-devNick Mathewson
2020-07-09Merge branch 'maint-0.3.5' into maint-0.4.2Nick Mathewson
`-s ours` to avoid version bump.
2020-07-09Bump to 0.3.5.11-devNick Mathewson
2020-07-09Update version to 0.4.3.6.Nick Mathewson
2020-07-09Merge branch 'maint-0.4.2' into maint-0.4.3Nick Mathewson
`-s ours` to avoid version bump.
2020-07-09Update version to 0.4.2.8.Nick Mathewson
2020-07-09Merge branch 'maint-0.3.5' into maint-0.4.2Nick Mathewson
`-s ours` to avoid version bump.
2020-07-09bump to 0.3.5.11Nick Mathewson
2020-07-09Merge branch 'maint-0.4.2' into maint-0.4.3Nick Mathewson
2020-07-09Merge branch 'maint-0.3.5' into maint-0.4.2Nick Mathewson
2020-07-09Merge branch 'trove_2020_001_035' into maint-0.3.5Nick Mathewson
2020-07-08Merge branch 'maint-0.4.2' into maint-0.4.3Alexander Færøy
2020-07-08Merge branch 'maint-0.3.5' into maint-0.4.2Alexander Færøy
2020-07-07Resolve a compiler warning from a 32-bit signed/unsigned comparisonNick Mathewson
This warning only affects platforms (like win32) with 32-bit time_t. Fixes bug 40028; bugfix on 0.3.2.8-rc.
2020-07-07Merge branch 'maint-0.4.2' into maint-0.4.3Alexander Færøy
2020-07-07Merge branch 'maint-0.3.5' into maint-0.4.2Alexander Færøy
2020-07-07CI: Fix Appveyor printf format errorDavid Goulet
For some reasons, Appveyor started to use the stdio printf format for 64 bit values (PRIu64, ...). Mingw doesn't like that so force it to use the Windows specific macros by setting D__USE_MINGW_ANSI_STDIO=0. Fixes #40026
2020-07-06Use ((x + 7) >> 3) instead of (x >> 3) when converting from bits to bytes.Alexander Færøy
This patch changes our bits-to-bytes conversion logic in the NSS implementation of `tor_tls_cert_matches_key()` from using (x >> 3) to ((x + 7) >> 3) since DER bit-strings are allowed to contain a number of bits that is not a multiple of 8. Additionally, we add a comment on why we cannot use the `DER_ConvertBitString()` macro from NSS, as we would potentially apply the bits-to-bytes conversion logic twice, which would lead to an insignificant amount of bytes being compared in `SECITEM_ItemsAreEqual()` and thus turn the logic into being a prefix match instead of a full match. The `DER_ConvertBitString()` macro is defined in NSS as: /* ** Macro to convert der decoded bit string into a decoded octet ** string. All it needs to do is fiddle with the length code. */ #define DER_ConvertBitString(item) \ { \ (item)->len = ((item)->len + 7) >> 3; \ } Thanks to Taylor Yu for spotting this problem. This patch is part of the fix for TROVE-2020-001. See: https://bugs.torproject.org/33119
2020-07-06Add constness to length variables in `tor_tls_cert_matches_key`.Alexander Færøy
We add constness to `peer_info_orig_len` and `cert_info_orig_len` in `tor_tls_cert_matches_key` to ensure that we don't accidentally alter the variables. This patch is part of the fix for TROVE-2020-001. See: https://bugs.torproject.org/33119
2020-07-06Fix out-of-bound memory read in `tor_tls_cert_matches_key()` for NSS.Alexander Færøy
This patch fixes an out-of-bound memory read in `tor_tls_cert_matches_key()` when Tor is compiled to use Mozilla's NSS instead of OpenSSL. The NSS library stores some length fields in bits instead of bytes, but the comparison function found in `SECITEM_ItemsAreEqual()` needs the length to be encoded in bytes. This means that for a 140-byte, DER-encoded, SubjectPublicKeyInfo struct (with a 1024-bit RSA public key in it), we would ask `SECITEM_ItemsAreEqual()` to compare the first 1120 bytes instead of 140 (140bytes * 8bits = 1120bits). This patch fixes the issue by converting from bits to bytes before calling `SECITEM_ItemsAreEqual()` and convert the `len`-fields back to bits before we leave the function. This patch is part of the fix for TROVE-2020-001. See: https://bugs.torproject.org/33119
2020-07-06Run `tor_tls_cert_matches_key()` Test Suite with both OpenSSL and NSS.Alexander Færøy
This patch lifts the `tor_tls_cert_matches_key()` tests out of the OpenSSL specific TLS test suite and moves it into the generic TLS test suite that is executed for both OpenSSL and NSS. This patch is largely a code movement, but we had to rewrite parts of the test to avoid using OpenSSL specific data-types (such as `X509 *`) and replace it with the generic Tor abstraction type (`tor_x509_cert_impl_t *`). This patch is part of the fix for TROVE-2020-001. See: https://bugs.torproject.org/33119
2020-07-02Merge branch 'maint-0.4.2' into maint-0.4.3David Goulet
2020-07-02Merge branch 'maint-0.3.5' into maint-0.4.2David Goulet
2020-06-30Downgrade "Bug: No entry found in extrainfo map" message.Nick Mathewson
This is not actually a bug! It can happen for a bunch of reasons, which all boil down to "trying to add an extrainfo for which we no longer have the corresponding routerinfo". Fixes #16016; bugfix on 0.2.6.3-alpha.
2020-06-30Merge branch 'maint-0.4.2' into maint-0.4.3Alexander Færøy
2020-06-30Merge branch 'maint-0.3.5' into maint-0.4.2Alexander Færøy
2020-06-30Merge branch 'tor-github/pr/1909' into maint-0.3.5Alexander Færøy
2020-06-30Merge branch 'tor-github/pr/1887' into maint-0.4.3Alexander Færøy
2020-06-30Merge branch 'maint-0.4.2' into maint-0.4.3Alexander Færøy
2020-06-30Merge branch 'tor-github/pr/1806' into maint-0.4.2Alexander Færøy
2020-06-30Merge branch 'maint-0.4.2' into maint-0.4.3Alexander Færøy
2020-06-30Merge branch 'maint-0.3.5' into maint-0.4.2Alexander Færøy
2020-06-30Merge branch 'tor-github/pr/1793' into maint-0.3.5Alexander Færøy