summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | dirmgr: Clarify disk IO errors.Nick Mathewson2022-07-144-33/+49
| | | |
| * | | dirmgr: style edits to error messages.Nick Mathewson2022-07-141-22/+22
| | | |
* | | | Merge branch 'unused' into 'main'Nick Mathewson2022-07-181-0/+1
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | tor-persist: Resource::Temporary: Mark with cfg See merge request tpo/core/arti!629
| * | | tor-persist: Resource::Temporary: Mark with cfgIan Jackson2022-07-181-0/+1
|/ / / | | | | | | | | | Without this, some builds get a "variant is never constructed" warning.
* | | Merge branch 'cirmgr_error_cleanup' into 'main'Ian Jackson2022-07-159-49/+179
|\ \ \ | | | | | | | | | | | | | | | | Clean-ups in circmgr errors See merge request tpo/core/arti!625
| * | | Apply 1 suggestion(s) to 1 file(s)Ian Jackson2022-07-131-1/+1
| | | |
| * | | circmgr: Refactor DirPathBuilder::pick_path.Nick Mathewson2022-07-121-9/+7
| | | | | | | | | | | | | | | | | | | | We no longer needs to have a "return" at the end of each match block.
| * | | circmgr: Use FilterCounts to explain why we couldn't build pathsNick Mathewson2022-07-124-20/+58
| | | |
| * | | circmgr: Use FilterCounts to explain why we couldn't find an exit.Nick Mathewson2022-07-122-14/+40
| | | |
| * | | netdir: Make pick() functions take FnMut closures.Nick Mathewson2022-07-122-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | There's no reason to enforce their being Fn closures, and allowing them to be FnMut allows us to count which filters make us rejected given relays.
| * | | tor-basic-utils: Add a new interface to FilterCountNick Mathewson2022-07-121-0/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This interface allows using FilterCount with functions that expect predicates rather than iterator chains. I'm about to use it to get meaningful FilterCount results in the path-selection code in circmgr.
| * | | tor-circmgr: Clarify and improve Protocol error.Nick Mathewson2022-07-123-1/+24
| | | |
| * | | tor-circmgr: minor error message edits.Nick Mathewson2022-07-121-5/+5
| | |/ | |/|
* | | 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