summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Replace weighted-choice code with rand::seq::SliceRandom.Nick Mathewson2021-09-083-231/+159
|/ / | | | | | | | | | | | | | | Doing this makes the code faster, lets us throw away some code, and makes it easier to add a "choose-N-disjoint relays" implementation. See large comment about plusses and minuses of new code. (Note that the old implementation wasn't constant-time either.)
* | More tests in pareto.rsNick Mathewson2021-09-081-9/+47
| |
* | Latest arti-corpora.Nick Mathewson2021-09-071-0/+0
| |
* | Use same defaults for abandon and close times in timeout code.Nick Mathewson2021-09-071-6/+4
| | | | | | | | | | | | | | | | | | | | | | On torspec!40, Mike says: I don't think there is a practical difference here. As per Section 2.4.5, if 60 seconds is not enough and causes the liveness test to fail due to too many timeouts, we will double the initial timeout. This makes our behavior the same as C tor.
* | Stop making abandoned/successful circuit counts persistentNick Mathewson2021-09-071-22/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The C Tor implementation doesn't do this, and Mike says: I think it is a reasonable enough assumption that if Tor has restarted, this kind data is no longer fresh enough to be accurate for this purpose. This is also only 20 circuits here, and typical timeouts are now around 1-2 seconds or less.. So a restarted client with a timeout that is too low for a new internet connection will figure this out pretty quickly. I think that is OK. (from torspec!40)
* | A little more test coverage in tor-circmgr::mgrNick Mathewson2021-09-072-6/+36
| |
* | tor_circmgr::mgr -- refactor some duplicate code.Nick Mathewson2021-09-071-20/+32
| |
* | Rename pick_action to clarify that it can modify selfNick Mathewson2021-09-071-5/+5
| |
* | Exclude tor-bytes fuzzing helper code from tarpaulin coverage.Nick Mathewson2021-09-071-2/+2
| |
* | Update corpus and links.Nick Mathewson2021-09-077-7/+7
| |
* | Fix bugs in last fuzzer code.Nick Mathewson2021-09-071-2/+3
| |
* | Merge remote-tracking branch 'origin/mr/72'Nick Mathewson2021-09-071-1/+1
|\ \
| * | use https submoduleTrinity Pointard2021-08-301-1/+1
| | |
* | | Improvements to array-of-u8 handling in tor-bytes.Nick Mathewson2021-09-073-50/+112
| |/ |/| | | | | | | | | | | | | | | | | | | | | Now that we have const generics, we can use them. We can also avoid an extra clone in the implementation for [u8; N]. Nothing in our codebase requires that we use Reader or Writer on a GenericArray holding anything other than u8, so I've switched back to the more efficient implementation there. I've added a fuzzer case for the new method, but apparently rustc nightly isn't working too well with fuzzers for me; I'm going to try it tomorrow.
* | Document every macro.Nick Mathewson2021-09-076-2/+12
| | | | | | | | | | (The nightly version of clippy now includes macros for its missing_docs_in_private_items lint.)
* | Merge remote-tracking branch 'origin/mr/70'Nick Mathewson2021-09-072-18/+21
|\ \
| * | use a TPA runner so shm is big enoughTrinity Pointard2021-08-311-0/+2
| | |
| * | use /dev/shm for reproducible buildsTrinity Pointard2021-08-301-11/+2
| | |
| * | build repro only on scheduleTrinity Pointard2021-08-291-0/+3
| | | | | | | | | | | | | | | build takes about 23 minutes, it's quiet long for something that is usefull mostly on releases
| * | make reproducible Windows buildTrinity Pointard2021-08-292-11/+18
| |/ | | | | | | | | Linux hash : c024778da162cda77869c46d162729d012a7758bee973bc83fa78c964d080903 Windows hash : e97e171740b889b7e3722b79c3763177174baac7fa34a5c3615c999298e1bc48
* / Fix typosJani Monoses2021-09-074-4/+4
|/
* Light refactoring and documentation improvements in proxy.rsNick Mathewson2021-08-271-40/+103
|
* Fix for CI script.Nick Mathewson2021-08-271-1/+1
| | | | | It looks like there was a directory here I didn't update when I moved all the crates into crates/
* Move all crates into a `crates` subdirectory.Nick Mathewson2021-08-27312-35/+35
| | | | | This will cause some pain for now, but now is really the best time to do this kind of thing.
* Document trace_filter a bit more.Nick Mathewson2021-08-272-2/+12
|
* Merge remote-tracking branch 'origin/mr/68'Nick Mathewson2021-08-273-13/+16
|\
| * More flexible tracing configuration.Jani Monoses2021-08-263-13/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | Replace the trace config file option with a more flexible trace_filter and expose the same via the ARTI_LOG environment variable. If ARTI_LOG is set it will override the setting in the config file. Example: ARTI_LOG="info,tor_proto::channel=trace" ./target/debug/arti The syntax is described here https://docs.rs/tracing-subscriber/0.2.20/tracing_subscriber/filter/struct.EnvFilter.html#directives
* | Simplify NetParameters::default()Nick Mathewson2021-08-271-49/+32
| | | | | | | | | | Instead of loading it with expect() calls, make a new function that returns a Result, and call expect() only once.
* | tor-persist: Panic on lock poisoning.Nick Mathewson2021-08-271-5/+11
| | | | | | | | (This is what we do for lock poisoning everywhere else.)
* | Tweaks on patch to add clippy::unwrap_used lint.Nick Mathewson2021-08-2713-49/+51
| | | | | | | | | | | | | | The most frequent changes are: - Rewording messages about poisoned locks - Correcting some error types
* | Merge remote-tracking branch 'origin/mr/67' into unwrap_usedNick Mathewson2021-08-2757-102/+312
|\ \
| * | Change `unwrap` to `expect` with messageS0AndS02021-08-251-20/+37
| | | | | | | | | | | | | | | | | | > Note, while `cargo fmt` doesn't complain I think this section could be > prettier. Also it may be a good idea to have tests double-check that future > changes don't cause a panic condition.
| * | Move "use_unwrap" lint from some to want listS0AndS02021-08-253-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | And convert some `add_or_port` calls to use `SocketAddr` instead of parse + unwrap on strings. > Note, this last change is only for IPv4 addresses, for now, and only > within tests.
| * | WIP: Add the "unwrap_used" lint.S0AndS02021-08-2455-81/+272
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | > Check `unwrap_used` section of Clippy documentation for details; > > https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_used This adds the following Clippy configuration to crates; #![deny(clippy::unwrap_used)] **Warning** while tests and compiler do not show any errors, the submitted changes are very much a Work In Progress and mistakes may have been made. Check https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/67 Merge Request thread for more details.
* | | Updates for reproducible build docsNick Mathewson2021-08-2611-2/+54
| | |
* | | address review commentsTrinity Pointard2021-08-265-21/+93
| | | | | | | | | | | | sha256: 7f190568fa05f71ad356dc56a7a9725a4be18e5e40d6880f469e22981a18edd7
* | | fix segfault on static binTrinity Pointard2021-08-256-5/+8
| | | | | | | | | | | | | | | | | | see https://github.com/rusqlite/rusqlite/issues/914 sha256: 684ebc4b8c270fc63beba185f6c54ceeb98734f13aa7aeca9b64acb33432a21c
* | | make arti availlable as build artifactTrinity Pointard2021-08-257-1/+3154
| |/ |/| | | | | | | and make builds reproducible sha256sum: f141c54929a43a31b9ed6b529f6f863aace87f7406818b2f8ffe2b7a5e2803fb
* | Upgrade to new phf version.Nick Mathewson2021-08-251-1/+1
| |
* | Move MSRV note to READMENick Mathewson2021-08-242-5/+9
| |
* | Add a quick MSRV note.Nick Mathewson2021-08-241-0/+5
| |
* | Merge remote-tracking branch 'origin/mr/66'Nick Mathewson2021-08-242-9/+5
|\ \
| * | Use trailing_ones() API.Jani Monoses2021-08-241-5/+1
| | | | | | | | | | | | Rust 1.46, where this API was introduced, is old enough.
| * | Link to the relevant spec section.Jani Monoses2021-08-242-4/+4
| |/
* / Basic implementation for prop#332 ntor v3 backend.Nick Mathewson2021-08-243-0/+675
|/ | | | | | | | This isn't tied into the protocol code yet, since we don't actually have anybody to negotiate with here. We'll need some API tweaks in order to express the sending of extended information too. For now, I'm putting it behind a feature, but if we build this into the tor network, the feature-gate should go away.
* Upgrade tracing-subscriberNick Mathewson2021-08-241-1/+1
|
* Use unwrap_or_default instead of unwrap_or_else(Default::default)rls2021-08-231-1/+1
|
* Switch all uses of the log crate to the tracing.Jani Monoses2021-08-2026-41/+42
| | | | Issue #74
* Latest arti-corporaNick Mathewson2021-08-201-0/+0
|
* Fix a few things that the "typos" tool didn't like.Nick Mathewson2021-08-208-24/+33
|