summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Merge remote-tracking branch 'origin/mr/191'Nick Mathewson2021-12-152-23/+43
|\ \ \ \
| * | | | In reactor, use enums on whether to destroy circuitsNeel Chauhan2021-12-141-11/+20
| | | | |
| * | | | Methodize the destroy circuit reasonNeel Chauhan2021-12-142-22/+20
| | | | |
| * | | | Handle TRUNCATED cellsNeel Chauhan2021-12-131-12/+9
| | | | |
| * | | | Log on TRUNCATED cellNeel Chauhan2021-12-132-9/+25
| | |/ / | |/| |
* | | | Merge branch 'check_put_return' into 'main'eta2021-12-153-25/+27
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Always check whether stream-level SENDMEs are expected. Closes #261 See merge request tpo/core/arti!192
| * | | | Always check whether stream-level SENDMEs are expected.Nick Mathewson2021-12-143-25/+27
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (It's a protocol violation to get a SENDME when our send window is already full.) This patch makes SendWindow::put return a Result, so that it's easier to do the right thing with it. Closes #261.
* | | | Merge branch 'mfrw/proxy-flush-conns' into 'main'eta2021-12-151-42/+42
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | proxy: introduce new functions to write_all & flush/close Closes #262 See merge request tpo/core/arti!199
| * | | | proxy: introduce new functions to write_all & flush/closeMuhammad Falak R Wani2021-12-151-42/+42
| | |/ / | |/| | | | | | | | | | Signed-off-by: Muhammad Falak R Wani <[email protected]>
* | | | Merge branch 'PendingRequest_remove_started_at' into 'main'eta2021-12-152-12/+2
|\ \ \ \ | |/ / / |/| | | | | | | | | | | Remove unused started_at in PendingRequest See merge request tpo/core/arti!196
| * | | Remove unused started_at PendingRequestNeel Chauhan2021-12-142-12/+2
| | | |
* | | | Merge branch 'happy-eyeballs-comment' into 'main'Nick Mathewson2021-12-141-3/+3
|\ \ \ \ | |/ / / |/| | | | | | | | | | | tor-chanmgr: Fix happy eyeballs comment grammar in builder.rs See merge request tpo/core/arti!197
| * | | tor-chanmgr: Fix happy eyeballs comment grammar in builder.rsNeel Chauhan2021-12-141-3/+3
|/ / /
* | | Merge branch '260' into 'main'Nick Mathewson2021-12-143-0/+35
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | Actually decrement the stream-level SENDME window Closes #260 See merge request tpo/core/arti!194
| * | Actually decrement the stream-level SENDME windoweta2021-12-143-0/+35
|/ / | | | | | | | | | | | | | | | | | | | | | | | | arti!126 overhauled the `tor-proto` circuit reactor, but left out one very important thing: actually decrementing the SENDME window for streams (not circuits) when we send cells along them. Since the circuit-level SENDME window would often prevent us from running into a problem, this wasn't caught until my benchmarking efforts noticed it (in the form of Tor nodes aborting the circuit for a protocol violation). fixes arti#260
* | Merge remote-tracking branch 'origin/mr/189'Nick Mathewson2021-12-141-1/+14
|\ \
| * | proxy: send SOCKS5 reply on failure casesMuhammad Falak R Wani2021-12-111-1/+14
| | | | | | | | | | | | Signed-off-by: Muhammad Falak R Wani <[email protected]>
* | | Merge remote-tracking branch 'origin/mr/186'Nick Mathewson2021-12-145-11/+9
|\ \ \
| * | | don't deny 'println' in examples in CIDaniel Eades2021-12-091-2/+2
| | | |
| * | | update CI to test all targetsDaniel Eades2021-12-091-2/+2
| | | |
| * | | address lint warningsDaniel Eades2021-12-093-5/+5
| | | |
| * | | address lint warningsDaniel Eades2021-12-091-4/+2
| |/ /
* | / s/hidden/onion/g in code commentsNeel Chauhan2021-12-132-2/+2
| |/ |/|
* | Merge branch 'reconfigure' into 'main'eta2021-12-1321-119/+714
|\ \ | | | | | | | | | | | | Make most arti-client fields reconfigurable. See merge request tpo/core/arti!181
| * | Fix Rustdoc errors.Nick Mathewson2021-12-082-4/+4
| | |
| * | Test FsStateMgr::path(), and fix a bug in it.Nick Mathewson2021-12-071-1/+8
| | | | | | | | | | | | | | | We join "state" to the directory name, so we must call parent() to get the original.
| * | Add a few tests to tor-config.Nick Mathewson2021-12-075-4/+95
| | |
| * | Make override_net_params take effect sooner.Nick Mathewson2021-12-073-4/+37
| | | | | | | | | | | | | | | This is still not as soon as I'd like: a real change here will require refactoring DirMgr::notify().
| * | Oops: MutCfg shouldn't implement Clone.Nick Mathewson2021-12-072-12/+7
| | | | | | | | | | | | | | | | | | | | | | | | We don't want MutCfg to be automatially coneable, or we'll wind up with surprises like the one that this patch fixes in TorClient. (The "surprise" is that reconfigure() would only apply its client-specific options to one client instance.)
| * | Sequence reconfiguration requests.Nick Mathewson2021-12-071-8/+25
| | | | | | | | | | | | | | | | | | If we allow overlapping reconfiguration requests, we introduce all kinds of "fun" bugs. For example, we could wind up with a configuration made up of parts of one reconfiguration attempt, and parts of another.
| * | Improve documentation of which config can change.Nick Mathewson2021-12-071-0/+2
| | | | | | | | | | | | | | | It no longer makes sense to say "most things can't change", now that most things can.
| * | Make much of DirMgrConfig reconfigurable.Nick Mathewson2021-12-074-38/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can't change the authorities while in-flight: that would be pretty miserable to implement. Similarly we can't change the cache while in-flight. Everything else should be fair game, though there are a couple of tricky bits. I've tried to document those.
| * | Make TorClient reconfigurable.Nick Mathewson2021-12-072-15/+29
| | | | | | | | | | | | This covers ClientAddrConfig and ClientTimeoutConfig.
| * | Minor circuit predictor tweaks and comments.Nick Mathewson2021-12-071-3/+11
| | | | | | | | | | | | | | | | | | Most notably, make min_exit_circs_for_port actually get used. Also add a couple of comments.
| * | Make preemptive circuits reconfigurable.Nick Mathewson2021-12-073-43/+79
| | | | | | | | | | | | | | | | | | This required re-centralizing the configuration object for preemptive circuits, since previously the settings from it were a bit spread out over the crate.
| * | MutCfg: Add map_and_replace.Nick Mathewson2021-12-071-0/+10
| | | | | | | | | | | | | | | This will help in the case when a configuration can only partially change.
| * | Make circuit_timing reconfigurable.Nick Mathewson2021-12-073-18/+26
| | |
| * | Add new configuration objects to reconfigure.Nick Mathewson2021-12-072-5/+13
| | | | | | | | | | | | | | | (These weren't in the codebase when I started the first version of this branch.)
| * | Allow on-the-fly changing of path_rulesNick Mathewson2021-12-077-20/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And now the complexity begins: when the user changes the path_rules, they not only want new circuits to obey those rules: they want _all new requests_ to be put onto circuits that obey those rules. That means that when the path rules become more restrictive, we need to retire all the circuits, and make sure that currently pending circuits aren't used for any requests. If it's any comfort, doing this was even more complicated in C tor. ;)
| * | MutCfg facility to help with reconfiguration.Nick Mathewson2021-12-072-0/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | It's useful to keep configuration objects inside a RwLock<Arc<>>, so we can have slightly-stale pointers to the existing configuration structure without holding locks too long. This code adds a MutCfg type with basic support for this pattern, and functions to make it a bit more ergonomic.
| * | Sketch API for reconfiguration.Nick Mathewson2021-12-0712-16/+176
| | | | | | | | | | | | | | | | | | | | | This patch doesn't actually make anything reconfigurable, but it does create an API that will tell you "you can't change the value of that!" If the API looks reasonable, I can start making it possible to change the values of individual items.
* | | Merge branch 'bug89' into 'main'eta2021-12-132-0/+11
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | Don't create circuits if the consensus is stale by over 72 hours Closes #89 See merge request tpo/core/arti!190
| * | Don't create circuits if the consensus is stale by over 72 hoursNeel Chauhan2021-12-122-0/+11
|/ /
* | address lint warningsDaniel Eades2021-12-091-8/+8
| | | | | | | | | | [Edited by nickm: This applies one of Daniel's fixes in place of one of Trinity's: Trinity says it's a bit cleaner, and I agree.]
* | drop arcs before awaitingTrinity Pointard2021-12-091-0/+1
| |
* | fix nightly clippy errorsTrinity Pointard2021-12-098-32/+19
| |
* | update rusqlite and revert minimal version changeTrinity Pointard2021-12-093-5/+4
| |
* | Beautify some Vec->array code in tor-proto.Nick Mathewson2021-12-081-6/+7
| | | | | | | | | | | | | | [T;N] supports TryFrom<Vec<T>>, and has since Rust 1.48: we can just use that. This resolves an XXXX comment.
* | proxy: report an error if all listeners fail.Nick Mathewson2021-12-081-1/+1
| |
* | Resolve XXXXs in proxy.rsNick Mathewson2021-12-081-3/+3
| | | | | | | | These issues all have tickets, so can become TODOs.