summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | | tor-netdir: add flow control parameters to `NetParameters`Steven Engler2025-09-101-0/+33
| | | | | | | |
* | | | | | | | Merge branch 'cc-alg-default' into 'main'David Goulet2025-09-151-5/+1
|\ \ \ \ \ \ \ \ | |_|_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | tor-netdir: Change default `cc_alg` from 0 to 2 See merge request tpo/core/arti!3248
| * | | | | | | tor-netdir: change default `cc_alg` from 0 to 2Steven Engler2025-09-101-5/+1
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is fine because we still default to non-cc circuits unless the "flowctl-cc" feature is enabled. See `exit_circparams_from_netparams` and `onion_circparams_from_netparams` from `tor_circmgr::build`, where both will only call `build_cc_vegas()` if `cfg(feature = "flowctl-cc")`, and otherwise call `build_cc_fixedwindow()`.
* | | | | | | Merge branch 'padding-fix' into 'main'gabi-2502025-09-151-1/+2
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | proto: Fix a semantic merge conflict. See merge request tpo/core/arti!3260
| * | | | | | | proto: Fix a semantic merge conflict.Nick Mathewson2025-09-151-1/+2
|/ / / / / / /
* | | | | | | Merge branch 'maybenot-validate-padding' into 'main'Nick Mathewson2025-09-154-38/+188
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Validate incoming padding, and permit it when it is valid. See merge request tpo/core/arti!3241
| * | | | | | | proto: Missing import.Nick Mathewson2025-09-151-0/+1
| | | | | | | |
| * | | | | | | proto: Use a new error type for excess padding.Nick Mathewson2025-09-154-26/+35
| | | | | | | |
| * | | | | | | proto, padding: A different formula to check padding totalNick Mathewson2025-09-151-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FMUL is usually faster than FDIV, so let's give that a try, in case the compiler doesn't figure it out on its own. Also, add a comment discussing an approach that might be better, if we run into a bottleneck here.
| * | | | | | | proto: Keep stats on padding, and kill circuits when too much is sent.Nick Mathewson2025-09-091-1/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The algorithm is simplistic, but may be useful
| * | | | | | | tor-proto: Move some functions from PaddingController to PaddingSharedNick Mathewson2025-09-091-30/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will help avoid needing to acquire the lock more than once.
| * | | | | | | proto: Allow DROP command when padding is enabled.Nick Mathewson2025-09-091-0/+10
| | | | | | | |
| * | | | | | | proto: Make decrypted_padding fallible.Nick Mathewson2025-09-093-7/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will let us reject excessive padding.
* | | | | | | | Merge branch 'padding_congestion_signal' into 'main'Nick Mathewson2025-09-153-19/+36
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | proto: Base congestion signal on the channel. See merge request tpo/core/arti!3242
| * | | | | | | | proto: Move congestion_signals into CircCellSender.Nick Mathewson2025-09-093-35/+22
| | | | | | | | |
| * | | | | | | | proto: Base congestion signal on the channel.Nick Mathewson2025-09-092-5/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're doing this rather than having it look at CircuitCellSender under the theory that we want to infer our throughput independently from padding-based decisions of whether to block.
* | | | | | | | | Merge branch 'correct_replace_behavior' into 'main'Nick Mathewson2025-09-155-33/+58
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Circuit padding: fix a couple of issues with the "replace" flag. See merge request tpo/core/arti!3246
| * | | | | | | | | Apply 1 suggestion(s) to 1 file(s)Nick Mathewson2025-09-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Co-authored-by: gabi-250 <[email protected]>
| * | | | | | | | | proto: Only replace padding when the target will see it.Nick Mathewson2025-09-104-6/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we would replace padding with any cell that was already in the queue. But that doesn't make sense: If we have a cell queued for hop 1, then we shouldn't use it as padding for hop 2, since hop 2 will never see it! Instead, we look at the target hops for the already queued cells. Ref: - https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3225/diffs?commit_id=3998e0559fbcc06f8ea88968051cebca71489a52
| * | | | | | | | | proto: derive Ord for HopNum.Nick Mathewson2025-09-101-1/+1
| | | | | | | | | |
| * | | | | | | | | proto: Emit the correct events on replacing paddingNick Mathewson2025-09-102-27/+29
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we replace padding with an _already queued_ cell, we should only trigger PaddingSent on the final hop's machine. Refs: - https://github.com/maybenot-io/maybenot/commit/35ba39d629d1e64a1346586112837e5015c47242#r164166126 - https://github.com/maybenot-io/maybenot/pull/35/commits/715455b8dcd95a32eafe261ab500cfed9415b7f3 - https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3225/diffs?commit_id=79a3305dc226f9f1136cad034e1a36413d6595f5
* | | | | | | | | Merge branch 'maybenot-bypass-simplification' into 'main'gabi-2502025-09-151-15/+32
|\ \ \ \ \ \ \ \ \ | |_|_|_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | proto: Simplify/correct padding-based blocking logic. See merge request tpo/core/arti!3252
| * | | | | | | | proto: Simplify/correct padding-based blocking logic.Nick Mathewson2025-09-111-15/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The correction: We want to report a block as bypassable only if _every_ currently blocking hop has bypassable blocking. The simplification: We don't need to report the first hop that's blocking any more.
* | | | | | | | | Merge branch 'note-about-resolver' into 'main'Nick Mathewson2025-09-111-0/+4
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add comment about why we need a manual "resolver" entry. See merge request tpo/core/arti!3202
| * | | | | | | | | Add comment about why we need a manual "resolver" entry.Nick Mathewson2025-09-111-0/+4
| |/ / / / / / / /
* | | | | | | | | Merge branch 'dircommon-fallback' into 'main'Clara Engler2025-09-1120-592/+581
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move `FallbackDir` into `tor-dircommon` See merge request tpo/core/arti!3245
| * | | | | | | | | Move `FallbackDir` into `tor-dircommon`Clara Engler2025-09-1120-592/+581
| | | | | | | | | |
* | | | | | | | | | Merge branch 'assert-bounded' into 'main'opara2025-09-113-24/+33
|\ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-units: Make `LOWER <= UPPER` assertion const See merge request tpo/core/arti!3247
| * | | | | | | | | tor-units: add comment about "compile_fail" testsSteven Engler2025-09-111-0/+4
| | | | | | | | | |
| * | | | | | | | | tor-proto: fix path of `semver.md`Steven Engler2025-09-111-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `Release.md` gives a wildcard path of `crates/*/semver.md`, so it seems that these files should go in the top level of each crate.
| * | | | | | | | | tor-units: remove unused `Error::Uninhabited`Steven Engler2025-09-112-7/+1
| | | | | | | | | |
| * | | | | | | | | tor-units: move two tests to "compile_fail" testsSteven Engler2025-09-111-13/+17
| | | | | | | | | |
| * | | | | | | | | tor-units: make `LOWER <= UPPER` assertion constSteven Engler2025-09-112-4/+11
| | |_|_|/ / / / / | |/| | | | | | |
* | | | | | | | | Merge branch 'dircommon-getset' into 'main'Clara Engler2025-09-113-11/+25
|\ \ \ \ \ \ \ \ \ | |_|/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | tor-dircommon: Replace amplify via getset See merge request tpo/core/arti!3251
| * | | | | | | | tor-dircommon: Replace amplify via getsetClara Engler2025-09-113-11/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See !3200
* | | | | | | | | Merge branch 'hss-ctor-migrate-test' into 'main'gabi-2502025-09-1126-34/+643
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | arti: test: Add integration test suite for `hss ctor-migrate` See merge request tpo/core/arti!3216
| * | | | | | | | arti: test: Add integration test for `hss ctor-migrate`hjrgrn2025-09-1026-34/+643
| | |/ / / / / / | |/| | | | | |
* | | | | | | | Merge branch 'dircommon-cfg' into 'main'Clara Engler2025-09-1111-291/+311
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | Move `tor-dirmgr` configuration primitives to `tor-dircommon` See merge request tpo/core/arti!3238
| * | | | | | | arti-client: Remove wrong statement in exampleClara Engler2025-09-091-3/+0
| | | | | | | |
| * | | | | | | tor-dircommon: Use amplify and getters for configClara Engler2025-09-097-35/+38
| | | | | | | |
| * | | | | | | tor-dircommon: Make config non_exhaustiveClara Engler2025-09-092-4/+4
| | | | | | | |
| * | | | | | | arti: Update `arti-example-config.toml`Clara Engler2025-09-091-1/+7
| | | | | | | |
| * | | | | | | Move `DirTolerance` into `tor-dircommon`Clara Engler2025-09-096-71/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit moves the `DirTolerance` structure from `tor-dirmgr` into `tor-dircommon`.
| * | | | | | | Move `DownloadSchedule` into `tor-dircommon`Clara Engler2025-09-0810-131/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit moves the `DowenloadSchedule` related types from `tor-dirmgr` into `tor-dircommon`.
| * | | | | | | Move `NetworkStatus` to `tor-dircommon`Clara Engler2025-09-088-79/+101
| | |_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit moves `NetworkStatus` from `tor-dirmgr::config` to `tor-dircommon::config` in order to start the work on a common place for configuration options shared by both directory implementations.
* | | | | | | Merge branch 'send-xon-xoff-freq' into 'main'David Goulet2025-09-1019-397/+517
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | tor-proto: Refactor some flow control code See merge request tpo/core/arti!3243
| * | | | | | tor-proto: add some missing doc commentsSteven Engler2025-09-105-1/+17
| | | | | | |
| * | | | | | tor-proto: put some code behind the "flowctl-cc" featureSteven Engler2025-09-102-0/+2
| | | | | | |
| * | | | | | tor-proto: rename `StreamFlowCtrl` constructorsSteven Engler2025-09-104-8/+8
| | | | | | |
| * | | | | | tor-proto: simplify `StreamFlowCtrlEnum` with `enum_dispatch`Steven Engler2025-09-107-92/+81
| | | | | | |