summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Merge branch 'fix-keymgr-error-impl' into 'main'gabi-2502023-06-271-2/+40
|\ \ \ \ | |/ / / |/| | | | | | | | | | | keymgr: Fix infinite recursion in Error impl. See merge request tpo/core/arti!1319
| * | | keymgr: Add regression test for tor_keymgr::Error recursion bug.Gabriela Moldovan2023-06-271-0/+39
| | | |
| * | | keymgr: Fix infinite recursion in Error impl.Gabriela Moldovan2023-06-271-2/+1
|/ / / | | | | | | | | | | | | The `source` impl `tor_keymgr::Error` was just calling itself recursively.
* | | Merge branch 'revert_to_x25519_pre1' into 'main'Nick Mathewson2023-06-278-72/+28
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Back down x25519-dalek to 2.0.0-pre.1 from 2.0.0-rc.2 Closes #926 See merge request tpo/core/arti!1317
| * | | Back down x25519-dalek to 2.0.0-pre.1 from 2.0.0-rc.2pinkforest2023-06-278-72/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ========================= Notes from nickm: (This differs from pinkforest's original MR: It removes the Cargo.lock changes and the version bump on tor-llcrypto.) Minimal Cargo.lock changes from downgrade. (These are exactly those changes generated by running "build" and "test".) There are several reasons to do this: * It's best to bump all of our dalek dependencies at once to rc.3 or later, rather than the piecemeal approach we've been stuck with so far. * We don't want to do this bump right now, since there are some tricky questions about clamping we need to figure out (see #808), and we need to make sure we get them right, and we're in a distracted this week. * We _do_ need to move away from 2.0.0-rc.2 right now, since it was causing a failure in `cargo install arti`, and then it got yanked. Thanks to pinkforest for helping us out here and explaining all of this! Fixes #926. Commit-edited-by: Nick Mathewson <[email protected]>
* | | | Merge branch 'chanmgr-doc' into 'main'Nick Mathewson2023-06-271-0/+7
|\ \ \ \ | |/ / / |/| | | | | | | | | | | Add Channel expiry info in ChanMgr docs See merge request tpo/core/arti!1316
| * | | Add Channel expiry info in ChanMgr docsSaksham Mittal2023-06-271-0/+7
|/ / /
* | | Merge branch 'race' into 'main'gabi-2502023-06-261-6/+36
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | tor-hsclient: Fix test race Closes #923 See merge request tpo/core/arti!1308
| * | | tor-hsclient: Increase some timeoutsIan Jackson2023-06-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Fix a use of 10ms that should have been TIMEOUT_SLOP. 2. Increase BODGE_YIELD by a factor of 5. Now this test should tolerate being hung up for 125ms. I am hoping that this will fix the CI failure https://gitlab.torproject.org/Diziet/arti/-/jobs/302457 which fails at the line comparing circuit1 with circuit2a. (I can't repro that locally.)
| * | | tor-hsclient: test: Introduce some constants for timingsIan Jackson2023-06-261-5/+16
| | | |
| * | | tor-hsclient: test: Add another sleep for expiry task *start*Ian Jackson2023-06-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Without this, the expiry task can end up choosing a 600s timeout starting *after we advanced the clock*. Fixes #923
| * | | tor-hsclient: impl Debug by hand for MockCircIan Jackson2023-06-261-1/+18
|/ / / | | | | | | | | | | | | | | | | | | | | | The provided impl for Mutex is hopeless: it prints just some internal flags and doesn't acquire the mutex for printing purposes. At some point we might want to factor this out as a general function on `Arc<Mutex<...>>` but not now.
* | | Merge branch 'send_sync_torclientbuilder' into 'main'gabi-2502023-06-261-1/+15
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | arti-client: Mark DirProviderBuilder Send+Sync; Closes #924 See merge request tpo/core/arti!1307
| * | | Also require that TorClientBuilder be Sync.Nick Mathewson2023-06-261-2/+2
| | | |
| * | | arti-client: Mark DirProviderBuilder Send+Sync;Nick Mathewson2023-06-261-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Doing this causes TorClientBuilder to become Send. I also add a test to ensure that TorClientBuilder remains Send in the future. This isn't a semver break, but only because DirProviderBuilder is marked with `experimental-api`. Closes #924
* | | | Merge branch 'netdoc-todos-again' into 'main'Nick Mathewson2023-06-266-43/+100
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | netdoc: Resolve nearly all remaining TODO HS items. See merge request tpo/core/arti!1304
| * | | | netdoc: remove final TODO HSNick Mathewson2023-06-261-1/+0
| | | | | | | | | | | | | | | | | | | | Although this Errorkind is not perfect, it is good enough.
| * | | | netdoc: Downgrade TODO on EncryptedHsDesc::decryptNick Mathewson2023-06-261-2/+5
| | | | |
| * | | | netdoc: Remove "decrypted_with_id" as meaninglessNick Mathewson2023-06-261-26/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Actually, never mind about adding an accessor here: this value was set incorrectly and didn't match its documentation. As such it's basically useless, and we might as well throw it out.
| * | | | netdoc: Remove dead_code exception; add accessors.Nick Mathewson2023-06-263-6/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit removes some actual dead code and additionally adds some minimal accessors to HsDesc to expose some of its properties. (I'm trying to keep these minimal since it's not yet clear whether we want to expose more detail here.) Here we also make StoredHsDescMeta a conditional type that's only present when the new "hs-dir" feature is enabled. Neither relays nor clients need this: Only HsDirs will need it, when we finally implement relays.
| * | | | netdoc: change a TODO HS about a distinguisher to a NOTE.Nick Mathewson2023-06-261-4/+7
| | | | | | | | | | | | | | | | | | | | (We explicitly do not care if Arti can be distinguished from C tor.)
| * | | | netdoc: replace a test TODO with a reference to other testsNick Mathewson2023-06-261-1/+8
| | | | | | | | | | | | | | | | | | | | The tests called for here already existed.
| * | | | netdoc: fill in some test dataNick Mathewson2023-06-234-11/+40
| | | | | | | | | | | | | | | | | | | | | | | | | This resolves some TODO HS items now that we are confident we want to have these actual examples in our tests.
* | | | | Merge branch 'upgrade-itertools' into 'main'gabi-2502023-06-2615-19/+23
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | Upgrade to itertools 0.11.0 See merge request tpo/core/arti!1306
| * | | | netdoc: Note new feature in itertoolsNick Mathewson2023-06-261-1/+5
| | | | |
| * | | | Upgrade to itertools 0.11.0Nick Mathewson2023-06-2614-18/+18
| | |/ / | |/| | | | | | | | | | The breaking changes here do not seem to affect us.
* | | | Merge branch 'data' into 'main'Ian Jackson2023-06-264-12/+133
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | tor-hsclient: Expire old IPT and HS descriptor data eventually See merge request tpo/core/arti!1290
| * | | | tor-hsclient: Split out expire_old_data functionIan Jackson2023-06-261-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | As per discussion in https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1290#note_2915679
| * | | | tor-hsclient: Add a comment about what run_housekeeping doesIan Jackson2023-06-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1290#note_2915679
| * | | | tor-hsclient: Add a debug message about task exitIan Jackson2023-06-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1290#note_2915678
| * | | | tor-hsclient: Comment explaining why no launch_background_tasksIan Jackson2023-06-261-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1290#note_2915676
| * | | | tor-hsclient: Say we *mustn't* do housekeeping while dormantIan Jackson2023-06-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a change to the API docs, but not to the actual code, since our call site is in arti-client and tied to netdir fetch, which *doesn't* happen when dormant. As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1290#note_2915677
| * | | | tor-hsclient: Add a TODO SPEC re data lifetimeIan Jackson2023-06-231-0/+2
| | | | |
| * | | | tor-hsclient: state tests: Test housekeeping (data expiry)Ian Jackson2023-06-231-0/+5
| | | | |
| * | | | tor-hsclient: state tests: Promote mk_hsconn callIan Jackson2023-06-231-1/+3
| | | | |
| * | | | tor-hsclient: state tests: Introduce connect_calledIan Jackson2023-06-231-5/+11
| | | | | | | | | | | | | | | | | | | | This will allow us to track when `Data` is discarded.
| * | | | tor-hsclient: Expire old data eventuallyIan Jackson2023-06-234-6/+101
| | | | | | | | | | | | | | | | | | | | Otherwise we'll fill up our RAM with junk.
* | | | | Merge branch 'keymgr-error-trait' into 'main'gabi-2502023-06-269-174/+225
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | keymgr: Create a KeystoreError trait for the `KeyMgr` and `KeyStore`s See merge request tpo/core/arti!1284
| * | | | keymgr: Document why we need the StdError impl for tor_keymgr::Error.Gabriela Moldovan2023-06-261-0/+5
| | | | |
| * | | | keymgr: Remove AsRef<dyn StdError> trait bound and unneeded impls.Gabriela Moldovan2023-06-265-28/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't really need the `AsRef<dyn StdError>` impls if we make `StdError` a supertrait of `KeystoreError` (and remove the `AsRef<dyn StdError>` trait bound).
| * | | | keymgr: Add the file path to SshKeyError context.Gabriela Moldovan2023-06-262-9/+29
| | | | |
| * | | | keymgr: Add the path to ArtiNativeKeystoreError Display impl.Gabriela Moldovan2023-06-261-3/+3
| | | | |
| * | | | keymgr: Replace Error with Box<dyn KeystoreError>.Gabriela Moldovan2023-06-266-189/+74
| | | | | | | | | | | | | | | | | | | | Part of #901
| * | | | keymgr: Add helper for boxing SshKeyError.Gabriela Moldovan2023-06-261-0/+7
| | | | |
| * | | | keymgr: Implement KeystoreError for SshKeyError.Gabriela Moldovan2023-06-261-2/+18
| | | | |
| * | | | keymgr: Add some initial variants to SshKeyError.Gabriela Moldovan2023-06-261-1/+20
| | | | |
| * | | | keymgr: Define an error type for the ssh module.Gabriela Moldovan2023-06-261-0/+8
| | | | |
| * | | | keymgr: Define an error type for ArtiNativeKeyStore.Gabriela Moldovan2023-06-262-0/+75
| | | | | | | | | | | | | | | | | | | | Part of #901
| * | | | keymgr: Implement KeystoreError for Bug.Gabriela Moldovan2023-06-262-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This also implements `AsRef<StdError>` for `Bug` to satisfy the `KeystoreError: AsRef<dyn StdError>` trait bound. Part of #901
| * | | | keymgr: Create a KeyStoreError trait for keystore errors.Gabriela Moldovan2023-06-264-1/+36
|/ / / / | | | | | | | | | | | | | | | | | | | | The new `BoxedError` type will replace `tor_keymgr::Error`. Part of #901