summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Bump tor-dirmgr to version 0.5.1.tor-dirmgr-v0.5.1Nick Mathewson2022-07-142-2/+2
| | | | | This does not require a change in any other crate, since the change here does not affect tor-dirmgr's APIs.
* Changelog for tor-dirmgr 0.5.1Nick Mathewson2022-07-141-0/+10
|
* Merge branch 'cache-filename-formatting-windows' into 'main'Nick Mathewson2022-07-141-1/+1
|\ | | | | | | | | | | | | Fix illegal formatting in cache filenames on Windows Closes #516 See merge request tpo/core/arti!627
| * Fix illegal formatting in cache filenamesfeelingnothing2022-07-141-1/+1
|/
* Merge branch 'docs' into 'main'Nick Mathewson2022-07-122-3/+3
|\ | | | | | | | | Fix some rustdoc links See merge request tpo/core/arti!624
| * tor-persist: StateMgr: vagueify docs about NoLock errorIan Jackson2022-07-121-1/+1
| | | | | | | | `NoLock` is now a variant of `err::ErrorSource` but that is private.
| * Fix two rustdoc linksIan Jackson2022-07-121-2/+2
|/ | | | This type must have been renamed, I guess.
* Merge branch 'ntor3-high-level' into 'main'eta2022-07-083-23/+278
|\ | | | | | | | | Implement a higher-level API for the ntor v3 handshake See merge request tpo/core/arti!618
| * Implement a higher-level API for the ntor v3 handshakeeta2022-07-083-23/+278
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This implements a higher-level API for the ntor v3 handshake, in line with that exposed by the ntor handshake. It does not, however, use the existing `ClientHandshake` trait, due to fundamental differences in the handshakes (namely, that the v3 handshake can include some additional extra extension data). Currently, the higher-level API assumes circuit extension, and copies the (undocumented!) magic verification string from c-tor that indicates this usage. A rudimentary set of functions for serializing and deserializing extensions to be sent with the handshake is also included, implementing the protocol in proposal 332 § A.2. Currently, it only implements the congestion control extensions specified in proposal 324 § 10.3. part of arti#88
* | Merge branch 'guardmgr-error-cleanup' into 'main'Nick Mathewson2022-07-087-33/+229
|\ \ | | | | | | | | | | | | GuardMgr: Improve and revamp error types and messages. See merge request tpo/core/arti!619
| * | Add a semver note to FilterCountNick Mathewson2022-07-081-1/+6
| | |
| * | Note semver break in tor-guardmgr::Error.Nick Mathewson2022-07-071-0/+1
| | |
| * | Remove now-unused NoGuardsUsable case.Nick Mathewson2022-07-071-8/+2
| | |
| * | Improve message for failure to select a guard.Nick Mathewson2022-07-072-19/+48
| | | | | | | | | | | | This uses similar techniques to the commit I just did for Fallbacks.
| * | Add more information to failed-to-select fallback errors.Nick Mathewson2022-07-073-6/+23
| | | | | | | | | | | | Also re-order the filters to be a little more logical.
| * | FilterCount: Add a simple Display helper.Nick Mathewson2022-07-061-0/+34
| | | | | | | | | | | | | | | | | | This is a helper rather than a Display implementation because it isn't the only logical way to display these values. (In fact, without context, it isn't even the _most_ logical way)
| * | New "counting filter" iterator helper in tor-basic-utils.Nick Mathewson2022-07-062-0/+116
| | | | | | | | | | | | | | | | | | | | | This is going to make it simpler to write the code in guardmgr (and later in circmgr) that keeps track of how many relays were rejected for what reason. The latter, in turn, should improve error messages when we're unable to pick a guard or a path.
| * | GuardMgr: tweak an error message.Nick Mathewson2022-07-061-1/+1
| | |
* | | Merge branch 'generate_cert' into 'main'Nick Mathewson2022-07-087-80/+250
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Implement functionality to construct signed Ed25519 certs. Closes #511 See merge request tpo/core/arti!611
| * | | Implement functionality to construct signed Ed25519 certs.Nick Mathewson2022-07-065-79/+248
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is behind a feature flag, since it isn't needed for pure clients: only onion services and relays need this. I've named the object that constructs these certs `Ed25519CertConstructor` because it doesn't follow the builder pattern exactly: mainly because you can't get an Ed25519Cert out of it. _That_ part is necessary because we require that an Ed25519Cert should only exist if the certificate was found to be well-signed with the right public key. Closes #511.
| * | | tor-llcrypto: expose the Signer API from ed25519-dalekNick Mathewson2022-07-062-1/+2
| | | |
* | | | Merge branch 'dirclient-error-cleanup' into 'main'eta2022-07-084-8/+28
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | Small cleanups to errors in tor-dirclient See merge request tpo/core/arti!620
| * | | Improve display for tor-dircache errors.Nick Mathewson2022-07-072-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These errors no longer use Debug to dump the `Option<SourceInfo>`, but instead produce reasonable text. Also, I've fixed the SourceInfo Display implementation so that it now says that it got the error "from $source via $circuit" rather than the other way around.
| * | | dirclient: Generalize MdSha256Empty to EmptyRequest.Nick Mathewson2022-07-073-6/+13
|/ / / | | | | | | | | | | | | (It makes sense to use this for things that are not in fact lists of SHA256 digests of Microdescriptors.)
* | | Merge branch 'chanmgr-error-cleanup' into 'main'Ian Jackson2022-07-066-25/+60
|\ \ \ | | | | | | | | | | | | | | | | ChanMgr: Add more contextual info to error types. See merge request tpo/core/arti!616
| * | | Add a semver note.Nick Mathewson2022-07-061-0/+1
| | | |
| * | | ChanMgr: errors: attribute errors to correct address.Nick Mathewson2022-07-062-3/+21
| | | | | | | | | | | | | | | | | | | | | | | | Even when keys are relevant, we still don't want to attribute errors to a set of addresses when we have a single address that we're connected with.
| * | | ChanMgr: Add more contextual info to error types.Nick Mathewson2022-07-064-25/+41
| | |/ | |/| | | | | | | | | | | | | Now each type has a peer. In some cases this peer is just an address, whereas in others (where key is relevant or address isn't yet narrowed down) it's a full OwnedChanTarget.
* | | Merge branch 'persist-error-cleanup' into 'main'eta2022-07-067-94/+260
|\ \ \ | |/ / |/| | | | | | | | tor-persist: Big refactoring on Error type. See merge request tpo/core/arti!614
| * | tor-persist: Big refactoring on Error type.Nick Mathewson2022-07-066-51/+212
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Every error now has an action (what we were trying to do), a resource (what we were trying to do it to), and a source (what problem we encountered). Initially I tried to add "action" and "resource" fields to error variants individually, but that led to a combinatorial explosion. Part of #323.
| * | tor-persist: Move Error to a module.Nick Mathewson2022-07-064-75/+80
| | |
* | | Merge branch 'update-rsa-v2' into 'main'Ian Jackson2022-07-066-67/+58
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Update `rsa` dependency (and use `x25519-dalek` prerelease) Closes #448 See merge request tpo/core/arti!612
| * | | Update `rsa` dependency (and use `x25519-dalek` prerelease)eta2022-07-066-67/+58
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - arti#448 and arti!607 highlight an issue with upgrading `rsa`: namely, the `x25519-dalek` version previously used has a hard dependency on `zeroize` 1.3, which creates a dependency conflict. - However, `x25519-dalek` version `2.0.0-pre.1` relaxes this dependency. Reviewing the changelogs, it doesn't look like that version is substantially different from the current one at all, so it should be safe to use despite the "prerelease" tag. - The new `x25519-dalek` version also bumps `rand_core`, which means we don't have to use the RNG compat wrapper in `tor-llcrypto` as much. closes arti#448
* | | Merge branch 'b64t' into 'main'Ian Jackson2022-07-063-0/+44
|\ \ \ | |/ / |/| | | | | | | | tor-netdoc: b64 tests: add exhaustive roundtrip test See merge request tpo/core/arti!613
| * | Fix clippy needless derefIan Jackson2022-07-061-3/+3
| | |
| * | tor-netdoc: b64 tests: add exhaustive roundtrip testIan Jackson2022-07-063-0/+44
|/ /
* | Merge branch 'add-arti-hyper-unit-tests' into 'main'Ian Jackson2022-07-061-0/+73
|\ \ | |/ |/| | | | | Add some unit tests for arti-hyper See merge request tpo/core/arti!615
| * Add unit tests for arti-hyper's uri -> host,port,tls conversionspongechameleon2022-07-051-0/+73
|/
* Merge branch 'openssl' into 'main'Nick Mathewson2022-07-051-36/+36
|\ | | | | | | | | cargo update - fix openssl See merge request tpo/core/arti!617
| * cargo updateIan Jackson2022-07-051-36/+36
|/ | | | | | This fixes a complaint from cargo audit about https://rustsec.org/advisories/RUSTSEC-2022-0032 in openssl.
* Merge branch 'bump-base64ct' into 'main'Ian Jackson2022-07-053-21/+9
|\ | | | | | | | | Bump `base64ct` crate `1.5.0` -> `1.5.1` See merge request tpo/core/arti!608
| * Bump `base64ct` crate `1.5.0` -> `1.5.1`Arturo Marquez2022-06-273-21/+9
| | | | | | | | | | | | This new release checks for invalid symbols in non-padded inputs for decoding. Therefore, we can get rid of the logic implemented in `https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/600`
* | Merge remote-tracking branch 'origin/mr/610'Nick Mathewson2022-07-051-1/+1
|\ \
| * | Fixed typo in convert_curve25519_to_ed25519_private commentsRichard Pospesel2022-06-291-1/+1
| | |
* | | Merge branch 'typos' into 'main'Nick Mathewson2022-06-281-1/+1
|\ \ \ | |_|/ |/| | | | | | | | Fix typo See merge request tpo/core/arti!609
| * | Fix typoDimitris Apostolou2022-06-281-1/+1
|/ /
* | Add links to 0.5.0 changelog.Nick Mathewson2022-06-241-3/+42
| |
* | Remove semver.md files now that 0.5.0 is outNick Mathewson2022-06-2412-21/+0
| |
* | Finish the 0.5.0 changelog.arti-v0.5.0Nick Mathewson2022-06-241-8/+8
| |
* | Bump crate and dependency versions.Nick Mathewson2022-06-2430-184/+184
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These were done with the following commands: ``` cargo set-version -p tor-basic-utils --bump patch cargo set-version -p fs-mistrust --bump minor cargo set-version -p tor-error --bump patch cargo set-version -p tor-config --bump patch cargo set-version -p tor-units --bump patch cargo set-version -p tor-rtcompat --bump minor cargo set-version -p tor-llcrypto --bump patch cargo set-version -p tor-bytes --bump minor cargo set-version -p tor-socksproto --bump minor cargo set-version -p tor-cert --bump minor cargo set-version -p tor-cell --bump minor cargo set-version -p tor-proto --bump minor cargo set-version -p tor-netdoc --bump patch cargo set-version -p tor-netdir --bump minor cargo set-version -p tor-persist --bump patch cargo set-version -p tor-chanmgr --bump minor cargo set-version -p tor-guardmgr --bump minor cargo set-version -p tor-circmgr --bump patch cargo set-version -p tor-dirclient --bump patch cargo set-version -p tor-dirmgr --bump minor cargo set-version -p arti-client --bump patch cargo set-version -p arti --bump minor cargo set-version -p arti-bench --bump minor cargo set-version -p arti-testing --bump minor ```