Nick Mathewson
e4baf164dd
Small cleanups and tweaks to same_subnet code.
2021-08-05 15:16:03 -04:00
Nick Mathewson
3bc0a03848
Merge remote-tracking branch 'origin/mr/45'
2021-08-05 14:59:34 -04:00
Nick Mathewson
ac962a7665
Remove spurious "exit 0"
2021-08-04 16:04:24 -04:00
Nick Mathewson
7c9373a32f
Add my "fuzz everything" script that I like to run overnight
2021-08-04 15:59:36 -04:00
Nick Mathewson
ec6ec3f1d8
Update arti-corpora submodule.
2021-08-04 15:57:02 -04:00
rls
c813eb1a10
Add symlinks to arti-corpora
2021-08-04 15:52:24 -04:00
Nick Mathewson
87edb38920
Small fixes on top of typo fixes
2021-08-03 09:01:46 -04:00
Nick Mathewson
6e04a3b0f7
Merge remote-tracking branch 'origin/mr/48'
2021-08-03 08:49:25 -04:00
Smitty
3100a6a6ae
Support EnforceDistinctSubnets
...
Relays on the same IPv4 /16 or IPv6 /32 are treated as being in the same
family.
2021-08-01 19:01:06 -04:00
rls
297ca28170
Revert spelling change; "recognised" is valid
2021-07-31 18:21:18 +02:00
rls
51d91508f7
Fix typos and other spelling mistakes
2021-07-31 18:02:35 +02:00
Nick Mathewson
19e0558bcd
Fix some CI warnings.
2021-07-31 18:01:25 +02:00
Nick Mathewson
4374ba4738
Fix some CI warnings.
2021-07-30 17:38:54 -04:00
Nick Mathewson
af90626ab8
Add a note about the other (current) daemon task.
2021-07-30 15:24:43 -04:00
Nick Mathewson
7fda771f45
Whenever the consensus changes, inform the circmgr about new params
...
Closes #144
2021-07-30 15:16:43 -04:00
Nick Mathewson
cc6302deda
Give DirMgr the ability to notify subscribers about events.
...
This is not 100% what we'll want long term:
- We might want more kinds of events
- We'll probably want to generate them in a more reliable way
- We might want some of this mechanism to be in a crate other than
DirMgr.
But for now, let's use this as a start and get experience with it.
2021-07-30 12:53:54 -04:00
Nick Mathewson
95e8f67a4a
Disable a warning from Rust 1.54
2021-07-29 10:49:40 -04:00
Nick Mathewson
6dbdfdcc84
Add a kludge to make resolve requests work.
...
Apparently "a circuit supporting no target ports" is not truly an
exit circuit. We should add a better fix here, however.
2021-07-27 13:53:56 -04:00
Nick Mathewson
4ccc4cecfe
Now that we support RESOLVE*, log what SOCKS command we are seeing
2021-07-27 13:49:57 -04:00
Nick Mathewson
9c8dcecf20
socksproto: Allow port 0 for RESOLVE and RESOLVE_PTR.
2021-07-27 13:48:24 -04:00
Nick Mathewson
962b01ca4e
Do not try to resolve .onion addresses.
2021-07-27 13:19:32 -04:00
Nick Mathewson
be05441cfb
tor-client: rename circ function to a more descriptive name
2021-07-27 13:18:44 -04:00
Nick Mathewson
b40b5d9412
tor_proto: Use iterators and functions to simplify resolve functions.
2021-07-27 13:13:27 -04:00
Nick Mathewson
64daf41a9b
ResolvedVal: Rename answers() to into_answers().
2021-07-27 13:00:25 -04:00
Nick Mathewson
26f00ed396
tor-proto: Tweak documentation for resolve/resolve_ptr
2021-07-27 12:58:33 -04:00
Nick Mathewson
a6a0189449
Merge remote-tracking branch 'origin/mr/39'
2021-07-27 10:38:20 -04:00
Nick Mathewson
a28e088240
Add OSX instructions to CONTRIBUTING.md
...
Closes #151 .
2021-07-23 15:00:35 -04:00
Yuan Lyu
2dfe4b69a0
Add support for RESOLVE and RESOLVE_PTR
2021-07-22 20:51:28 -04:00
dagger
d160c88cc5
[f] fix pareto test not compile issue
...
Signed-off-by: dagger <0xdagger@gmail.com>
2021-07-22 09:11:12 +07:00
Nick Mathewson
3f6b22fa14
adjust WANT_FROM_OTHER_CRATES
2021-07-21 13:11:24 -04:00
Nick Mathewson
a2ca2222b8
Merge remote-tracking branch 'origin/mr/42'
2021-07-21 09:42:16 -04:00
Nick Mathewson
9f61a392be
Use cargo audit with "-D warnings".
2021-07-21 09:33:32 -04:00
Nick Mathewson
c2a0a572b0
Merge remote-tracking branch 'origin/mr/41'
2021-07-21 09:32:26 -04:00
Nick Mathewson
c9841f5b1a
Fix a ocumentation link issue.
2021-07-21 09:19:57 -04:00
Daniel Eades
ed14a7fcf2
address some possibly slightly controversial lints
2021-07-21 07:27:26 +01:00
Daniel Eades
d23256074e
address a bunch of hopefully uncontroversial lints
2021-07-20 22:59:59 +01:00
Trinity Pointard
c6fef98a83
attempt to add cargo audit to CI
2021-07-20 23:39:23 +02:00
Trinity Pointard
594b65fff6
switch to maintained crates for memmap and tmpdir
...
They don't have actual documented security issues but it makes
`cargo audit` complain
https://rustsec.org/advisories/RUSTSEC-2018-0017
https://rustsec.org/advisories/RUSTSEC-2020-0077
2021-07-20 23:35:17 +02:00
Nick Mathewson
888296cca6
Temporarily disable build.rs tests as unreliable :/
2021-07-20 13:46:32 -04:00
Nick Mathewson
bd355d14f3
tor-circmgr: Improve coverage on build.rs.
...
The good news is that this tests the succeeding and failing cases,
and even managed to expose an off-by-one error in our hop counting.
The bad news is that these tests have shown even more ways in which
our wait_for code is unreliable, and forced me to slow it down even
harder.
2021-07-19 14:30:42 -04:00
Nick Mathewson
6bf1f9723a
Fix an actual off-by-one error!
...
This was in deciding when to report a circuit as completed.
2021-07-19 13:49:55 -04:00
Nick Mathewson
37fe255fda
Try refactoring build.rs for testability.
...
I'm adding a local "Buildable" trait here so I can swap out Circuits
for something else. This also lets me refactor Builder<> to be
parameterized on TimeoutEstimator again, and lets us get rid of the
first_hop() accessor on paths.
2021-07-19 12:25:26 -04:00
Nick Mathewson
1821532dd8
Add a test for double_timeout.
...
There is something wrong here, though. I had to rewrite wait_for() a
lot back in the main branch to get this test working right. See
arti#149 for details on that issue.
2021-07-19 12:25:26 -04:00
Nick Mathewson
61d8e5175c
tor-circbuild: use SleepProvider::now() instead of Instant::now()
...
This should make time mockable for testing purposes.
2021-07-19 12:25:26 -04:00
Nick Mathewson
94db617682
Add the ability to reconfigure a running ParetoEstimator
2021-07-19 12:25:26 -04:00
Nick Mathewson
2bc762a3ca
Monomorphize: just use the pareto timeout implementation.
2021-07-19 12:25:26 -04:00
Nick Mathewson
f341e493ea
Allow the pareto estimator to be disabled.
2021-07-19 12:25:26 -04:00
Nick Mathewson
3e894218aa
Connect the timeout estimator code to our circuit builder.
...
This currently leaves a bit to be desired, since the logic is kind
of gnarly. I'm not sure I want to be using so many Arc<>s.
2021-07-19 12:25:26 -04:00
Nick Mathewson
cd51d8bb8b
Implement a circuit timeout estimator backend.
...
This backend uses the kludged-up^W heuristic-enhanced Pareto
estimator from path-spec.txt section 2.4. See path-spec.txt for
full details on the algorithm. I've tried to note with TODO-SPEC
comments all the things that the spec currently leaves out.
Nothing actually uses this code yet. By the time it's in use, I'd
expect that many of these functions will need to have new
visibilities.
2021-07-19 12:25:26 -04:00
Nick Mathewson
379c28b2a8
Implement consensus parameters related to circuit timeout inference.
2021-07-19 12:25:26 -04:00