summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | tor-guardmgr: Replace From impl with VanguardConfig::mode accessor.Gabriela Moldovan2024-06-033-11/+12
| | | |
| * | | tor-config: Add ExplicitOrAuto::{as_value, into_value}.Gabriela Moldovan2024-06-031-0/+30
| | | |
| * | | tor-config: Remove unnecessary bounds.Gabriela Moldovan2024-06-031-6/+1
| | | |
| * | | arti: Note that auto is the same as disabled if vanguards are disabled.Gabriela Moldovan2024-06-031-0/+3
| | | |
| * | | tor-guardmgr: Fix broken doc link.Gabriela Moldovan2024-06-031-1/+1
| | | |
| * | | tor-config: Expand on the ExplicitOrAuto docs.Gabriela Moldovan2024-06-031-0/+52
| | | |
| * | | arti: Add vanguards settings to example config.Gabriela Moldovan2024-06-032-1/+14
| | | |
| * | | tor-guardmgr: Use ExplicitOrAuto in the VanguardConfig (fmt).Gabriela Moldovan2024-06-031-2/+8
| | | |
| * | | tor-guardmgr: Use ExplicitOrAuto in the VanguardConfigGabriela Moldovan2024-06-033-8/+19
| | | |
| * | | tor-config: Add ExplicitOrAuto helper.Gabriela Moldovan2024-06-031-2/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will be used for the `vanguard.mode` config option. The `VanguardMode` corresponding to the `"auto"` variant will depend on whether the `vanguards` feature is enabled: if the feature is enabled, it is mapped to `VanguardMode::Lite`, and `VanguardMode::Disabled` otherwise.
| * | | tor-guardmgr: Unconditionally define VanguardConfig.Gabriela Moldovan2024-06-037-33/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We want to export the `VanguardConfig` even if the `vanguards` feature is disabled (we will need to unconditionally include it in the arti config). Note that if `vanguards` are disabled, the `VanguardMode` from the `VanguardConfig` can only be `Dsiabled`.
| * | | arti-client: Remove unnecessary VanguardConfig pub use.Gabriela Moldovan2024-06-031-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is already exported via the `pub mod vanguards` module, so there is no need to export it from the top-level too. This *is* a breaking change, but the downstream fix is trivial (and the type should never have been exported directly from `arti_client::config` in the first place).
| * | | tor-circmgr: Downgrade a HS-VANGUARDS TODO.Gabriela Moldovan2024-06-031-1/+1
|/ / /
* | | Merge branch 'keymgr-key-scripts' into 'main'gabi-2502024-06-0322-51/+485
|\ \ \ | | | | | | | | | | | | | | | | tor-keymgr: Add script for generating test key files. See merge request tpo/core/arti!2121
| * | | tor-keymgr: Regenerate the keys.Gabriela Moldovan2024-05-1612-48/+48
| | | | | | | | | | | | | | | | | | | | The keys generated in this commit are reproducible using the `maint/keygen-openssh-test/generate` script.
| * | | maint/keygen-openssh-test: Make keygen deterministic.Gabriela Moldovan2024-05-165-48/+111
| | | |
| * | | keygen-openssh-test: Update docs.Gabriela Moldovan2024-05-161-1/+1
| | | |
| * | | maint/keygen-openssh-test: Remove suffix from generate.sh script.Gabriela Moldovan2024-05-152-2/+2
| | | |
| * | | maint/keygen-openssh-test: Sort dependencies.Gabriela Moldovan2024-05-151-2/+2
| | | |
| * | | maint/keygen-openssh-test: Add crate license and description.Gabriela Moldovan2024-05-151-0/+6
| | | |
| * | | editorconfig: Exclude the test keys.Gabriela Moldovan2024-05-151-0/+8
| | | |
| * | | maint/keygen-openssh-test: Update README.Gabriela Moldovan2024-05-151-3/+16
| | | | | | | | | | | | | | | | | | | | The README now applies to the generate.sh script too, so it had to be updated.
| * | | tor-keymgr: Regenerate the test keys.Gabriela Moldovan2024-05-1512-51/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit contains a new set of `tor-keymgr/testdata` keys, generated using ./maint/keygen-openssh-test/generate.sh`. Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2121#note_3025369
| * | | tor-keymgr: Move keygen script to maint.Gabriela Moldovan2024-05-158-20/+31
| | | |
| * | | tor-keymgr: Make keygen crate part of the workspace.Gabriela Moldovan2024-05-154-2475/+19
| | | |
| * | | tor-keymgr: Add script for generating test key files.Gabriela Moldovan2024-05-158-0/+2787
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `tor-keymgr/testdata` contains a bunch of OpenSSH keys used for testing. I meant to share the script I generated them with, but somehow never got around to it. Note: the OpenSSH keys generated by this script are going to look slightly different than the ones that are checked into the repo. This is because some of those original key files were generated ad-hoc (I manually modified them a while ago, but I forgot exactly how
* | | | Merge branch 'relay-sketch-links' into 'main'Nick Mathewson2024-05-301-22/+56
|\ \ \ \ | | |/ / | |/| | | | | | | | | | Add ticket links to relay-sketch.md See merge request tpo/core/arti!2176
| * | | relay-sketch: Add a link to 1454.Nick Mathewson2024-05-301-0/+3
| | | |
| * | | Add ticket links to relay-sketch.mdNick Mathewson2024-05-301-22/+53
| | | |
* | | | Merge branch 'faravahar-new' into 'main'Alexander Færøy2024-05-301-1/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | dirauth: Add new faravahar authority See merge request tpo/core/arti!2175
| * | | | dirauth: Add new faravahar authorityDavid Goulet2024-05-301-1/+2
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | Related to C-tor MR: https://gitlab.torproject.org/tpo/core/tor/-/merge_requests/819 Signed-off-by: David Goulet <[email protected]>
* | | | Merge branch 'main' into 'main'David Goulet2024-05-301-1/+1
|\ \ \ \ | |/ / / |/| | | | | | | | | | | Update the location of the code of conduct. See merge request tpo/core/arti!2173
| * | | Update the location of the code of conduct.Gaba2024-05-291-1/+1
| | | |
* | | | Merge branch 'extend_relay_sketch' into 'main'Nick Mathewson2024-05-301-2/+33
|\ \ \ \ | |/ / / |/| | | | | | | | | | | relay-sketch: Incorporate notes from Lisbon meeting. See merge request tpo/core/arti!2174
| * | | relay-sketch: Incorporate notes from Lisbon meeting.Nick Mathewson2024-05-301-2/+33
|/ / /
* | | Merge branch 'poll-ready-unpin-bool' into 'main'Nick Mathewson2024-05-293-12/+28
|\ \ \ | | |/ | |/| | | | | | | Tidy up the ChannelSender::poll_ready inherent method See merge request tpo/core/arti!2171
| * | ChannelSender::poll_ready_unpin_bool: add otiose ext trait docIan Jackson2024-05-291-0/+1
| | |
| * | ChannelSender::poll_ready_unpin_bool: move to utilIan Jackson2024-05-293-20/+24
| | | | | | | | | | | | This is where it belongs.
| * | ChannelSender::poll_ready_unpin_bool: extension traitIan Jackson2024-05-292-1/+8
| | | | | | | | | | | | | | | | | | | | | This makes this available for any Sink + Unpin. Which we want because we're about to wrap our ChannelSender in a Sink wrapper. It's in the wrong place now; we'll move it in a moment.
| * | ChannelSender::poll_ready_unpin_bool: rename from poll_readyIan Jackson2024-05-292-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This would otherwise shadow the poll_ready method, which is confusing. Also this paves the way for making it available for any Sink + Unpin. Improve the docs somewhat to explain what this thing actually is.
| * | ChannelSender::poll_ready inherent method: Don't discard errorIan Jackson2024-05-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | I think this error was in fact always Error::CircuitClosed because it came from ChannelClosed.into(). Anyway, we shouldn't squash it. Now this function has semantics identical to Sink::poll_ready, just a slightly different signature.
| * | ChannelSender::poll_ready inherent method: Avoid apparent discardIan Jackson2024-05-291-1/+1
| | | | | | | | | | | | Make it clear we're discarding `()`, not an actual value.
| * | ChannelSender::poll_ready inherent method: Use Sink:poll_readyIan Jackson2024-05-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | We're going to change this function, but first we are going to make its behaviour identical to Sink::poll_ready. This avoids open-coding the call to poll_read on cell_tx. The error handling is still strange. We'll fix that in a moment.
* | | Merge branch 'stream_close_v2' into 'main'Nick Mathewson2024-05-294-11/+162
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | proto: Make DataWriter::close actually do something. Closes #1368 See merge request tpo/core/arti!2170
| * | | proto: Try to clarify why StreamReader has a StreamTarget.Nick Mathewson2024-05-292-3/+10
| | | |
| * | | proto: Add a test for closing streams.Nick Mathewson2024-05-291-1/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test verifies that when we invoke the code to close a stream, an END message is actually sent. The test comes in two versions: * `drop_stream` closes the stream by dropping it. It currently passes on main. * `close_stream` closes the stream by running `AsyncWriteExt::close` on the writer. It is a regression test for #1368. It currently fails on main.
| * | | proto: Improve documentation about DataStream lifetimes and closingNick Mathewson2024-05-292-1/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In particular, clarify that dropping the DataWriter on its own does nothing unless the DataReader is also dropped. Related to #1368.
| * | | proto: Make DataWriter::close actually do something.Nick Mathewson2024-05-293-9/+41
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we had a bug where `<DataWriter as AsyncWrite>::close` (or `shutdown` in tokio-land) would not actually have any effect. It _would_ drop the `StreamTarget` held by the `DataWriter`, but since the `DataReader` also held a `StreamTarget`, the MPSC channel would not get closed, and the circuit reactor would not realize that the stream wanted to shut down. Now we use `mpsc::Sender::close_channel` to make our closes effectual. Closes #1368. Additionally, we fix a bug where `poll_close()` never actually did anything if the buffer had nothing in it when it was called. Previously, `poll_flush_impl()` would exit immediately if it had no data to flush. That isn't what we want when we are closing!
* | | Merge branch 'mypy' into 'main'Ian Jackson2024-05-292-12/+19
|\ \ \ | |/ / |/| | | | | | | | mypy: Enable strict mode See merge request tpo/core/arti!2169
| * | maint/update-md-links: avoid * import from typingIan Jackson2024-05-291-1/+1
| | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2169#note_3033481