summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | proto: Revise the behavior of IncomingStream::discard().Nick Mathewson2023-10-194-22/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because dropping a `StreamTarget` causes the circuit reactor to send an End, the previous do-nothing implementation of `discard()` wasn't sufficient to cause the request to be ignored without sending an End. This commit modifies our "close pending stream" behavior to only optionally send an End message. To avoid confusion, I'm using a new `CloseStreamBehavior` enum rather than an `Option<End>`, since we had previously used `None` in some cases to indicate a default (misc) end message.
| * | IncomingStream:: flatten IncomingStreamInner.Nick Mathewson2023-10-191-13/+11
| | |
| * | IncomingStream: Remove state.Nick Mathewson2023-10-192-67/+5
| | | | | | | | | | | | | | | | | | Now that every state-change function consumes the IncomingStream, there is no longer any reason to keep track of an internal state enum.
| * | Note a bug in IncomingStream::discard.Nick Mathewson2023-10-191-0/+2
| | |
| * | Remove IncomingStreamInner from its Option.Nick Mathewson2023-10-191-34/+7
| | | | | | | | | | | | | | | Now that IncomingStream doesn't implement Drop, we can just destructure it.
| * | Remove impl Drop from IncomingStreamNick Mathewson2023-10-191-11/+4
| | | | | | | | | | | | | | | Since dropping a StreamTarget will send an End, we don't need to call reject_internal in this case.
| * | proto: Remove TODOs about panics on double-close.Nick Mathewson2023-10-192-31/+2
| | | | | | | | | | | | | | | | | | | | | Now that `StreamMap::terminate` no longer panics, and now that it permits the kind of double-call that we allow, we can close #1065. Closes #1065.
| * | proto: Have EndSent remember if we have dropped the stream target.Nick Mathewson2023-10-192-14/+46
| | | | | | | | | | | | | | | The rule is that we allow up to one explicit `close_pending`, followed by exactly one final `mpsc::Sender` drop.
| * | proto: Give StreamMap::terminate a "why" argumentNick Mathewson2023-10-192-7/+45
| | | | | | | | | | | | | | | We will use this to enforce correct ordering on "close" vs "drop" APIs.
* | | tor-hsservice: Print error sources for descriptor upload errorsIan Jackson2023-10-191-1/+3
| | |
* | | tor-hsservice: Fix downcastIan Jackson2023-10-191-1/+1
| | | | | | | | | | | | | | | | | | | | | Downcasting is tricksy. We need to try the downcast on a type-erased &IptEstablisher, not &Box<dyn Any>, and if we don't dereference nothing tells us it's wrong since &Box<dyn Any> also implements and we end up with &Box<dyn Any> as &dyn Any.
* | | tor-hsservice: Add a TODO for logging HS statusIan Jackson2023-10-191-0/+6
| | |
* | | tor-hsservice: Adjust log level of IPT relay choice failureIan Jackson2023-10-191-6/+15
| | | | | | | | | | | | | | | | | | If it's due to lack of useable netdir, that's normal during startup, so don't log it. Hopefully something else somewhere will log if a consensus can't be obtained.
* | | tor-hsservice: Bump log level of main termination messageIan Jackson2023-10-191-2/+2
| | |
* | | tor-hsservice: impl HasKind for ChooseIptErrorIan Jackson2023-10-191-1/+14
| | | | | | | | | | | | We want to pass one of these to info_report!, which demands HasKind.
* | | tor-hsservice: Declare an IPT that fails during Establishing to be FaultyIan Jackson2023-10-191-1/+5
| | | | | | | | | | | | If we don't do this then the manager won't ever select a replacement.
* | | tor-hsservice: Do not claim a completely broken IPT wants to retireIan Jackson2023-10-191-1/+6
| | |
* | | HSS: Do not drop ProxySet immediately - let HS services continue to run (fmt)Ian Jackson2023-10-191-2/+4
| | |
* | | HSS: Do not drop ProxySet immediately - let HS services continue to runIan Jackson2023-10-191-4/+19
| | | | | | | | | | | | Dropping the ProxySet causes all the services to terminate.
* | | HSS: Add many must_use annotationsIan Jackson2023-10-192-0/+3
| | |
* | | Merge branch 'hs-fixes-2' into 'main'Alexander Færøy2023-10-191-21/+30
|\ \ \ | | | | | | | | | | | | | | | | tor-hsservice: ipt_mgr: Track notional estab started for faulty IPTs See merge request tpo/core/arti!1686
| * | | tor-hsservice: ipt_mgr: Track notional estab started for faulty IPTs (fmt)Ian Jackson2023-10-181-8/+10
| | | |
| * | | tor-hsservice: ipt_mgr: Track notional estab started for faulty IPTsIan Jackson2023-10-181-12/+19
| | | | | | | | | | | | | | | | An IPT can go from Faulty to Good.
| * | | tor-hsservice: ipt_mgr: Prepare for TS::Faulty to contain dataIan Jackson2023-10-181-4/+4
| | | |
* | | | ipt_establish: Try to make note_open work.Nick Mathewson2023-10-191-6/+28
| | | |
* | | | tor-hsservice: Fix cargo doc warnings.Gabriela Moldovan2023-10-191-3/+3
| | | |
* | | | tor-keymgr: Fix broken doc link.Gabriela Moldovan2023-10-191-1/+1
| | | |
* | | | tor-hsservice: Rename KeyMetadata to KeyDenotator (fmt).Gabriela Moldovan2023-10-191-1/+2
| | | |
* | | | tor-hsservice: Rename KeyMetadata to KeyDenotator.Gabriela Moldovan2023-10-195-40/+43
| | | |
* | | | tor-keymgr: Rename KeyPathError to ArtiPathUnavailableError (fmt).Gabriela Moldovan2023-10-197-14/+29
| | | |
* | | | tor-keymgr: Rename KeyPathError to ArtiPathUnavailableError.Gabriela Moldovan2023-10-196-23/+24
| | | |
* | | | tor-keymgr: Remove From<ArtiPathError> impl for KeyPathError.Gabriela Moldovan2023-10-193-12/+8
| | | |
* | | | tor-hsclient, arti-client: Make BadClientSpecifier wrap an ArtiPathError.Gabriela Moldovan2023-10-192-4/+4
| | | |
* | | | tor-keymgr: Make KeyType::Unknown a fields-variant.Gabriela Moldovan2023-10-192-10/+16
| | | | | | | | | | | | | | | | | | | | This makes it clearer than the underlying `String` represents the `arti_extension` of the key.
* | | | tor-keymgr: Expand on the KeyPathError docs.Gabriela Moldovan2023-10-191-0/+3
| | | |
* | | | tor-keymgr: Apply cargo fmt.Gabriela Moldovan2023-10-193-8/+11
| | | |
* | | | tor-hsservice: Add some TODOs about error handling.Gabriela Moldovan2023-10-192-0/+10
| | | |
* | | | tor-keymgr: Make error handling less repetitive using a closure.Gabriela Moldovan2023-10-191-9/+8
| | | |
* | | | tor-keymgr: Rework the ArtiPath error types.Gabriela Moldovan2023-10-193-22/+30
| | | |
* | | | tor-keymgr: Add TODO about removing metadata handling from keymgr.Gabriela Moldovan2023-10-191-0/+3
| | | |
* | | | tor-hsservice: Add TODO about putting keymgr in the immutable state.Gabriela Moldovan2023-10-191-0/+1
| | | |
* | | | tor-hsservice: Add TODO about ArtiPath underscore ambiguity.Gabriela Moldovan2023-10-191-0/+2
| | | |
* | | | tor-keymgr: Add TODO about using derive-adhoc.Gabriela Moldovan2023-10-191-0/+2
| | | |
* | | | tor-keymgr: Add KeyPathPattern constructor that does not match any valid paths.Gabriela Moldovan2023-10-191-0/+7
| | | |
* | | | tor-hsservice: Replace placeholder subcredentials with values from the keystore.Gabriela Moldovan2023-10-192-9/+101
| | | |
* | | | tor-hsservice: Add HsSvcKeySpecifier::arti_pattern helper.Gabriela Moldovan2023-10-191-1/+9
| | | |
* | | | tor-keymgr: Add a get_with_type keymgr function.Gabriela Moldovan2023-10-191-1/+28
| | | |
* | | | tor-hsservice: Include the TP offset in the key metadata (fmt).Gabriela Moldovan2023-10-191-1/+6
| | | |
* | | | tor-hsservice: Include the TP offset in the key metadata.Gabriela Moldovan2023-10-191-2/+2
| | | | | | | | | | | | | | | | | | | | The offset is needed because we want to be able to convert this metadata back to `TimePeriod`.
* | | | tor-hscrypto: Add a new constructor and an accessor for TimePeriod.Gabriela Moldovan2023-10-192-0/+43
| | | |