aboutsummaryrefslogtreecommitdiff
path: root/changes
AgeCommit message (Collapse)Author
2020-09-14Resolve a compilation warning in test_connection.cNick Mathewson
Instead of casting an enum to a void and back, use a string -- that's better C anyway. Fixes bug 40113; bugfix on 0.2.9.3-alpha.
2020-09-08Merge branch 'maint-0.4.4'David Goulet
2020-09-07statistics: Properly count all rendezvous cells (avoid undercounting).George Kadianakis
tl;dr We were not counting cells flying from the client to the service, but we were counting cells flying from the service to the client. When a rendezvous cell arrives from the client to the RP, the RP forwards it to the service. For this to happen, the cell first passes through command_process_relay_cell() which normally does the statistics counting. However because the `rend_circ` circuit was not flagged with `circuit_carries_hs_traffic_stats` in rend_mid_rendezvous(), the cell is not counted there. Then the cell goes to circuit_receive_relay_cell() which has a special code block based on `rend_splice` specifically for rendezvous cells, and the cell gets directly passed to `rend_circ` via a direct call to circuit_receive_relay_cell(). The cell never passes through command_process_relay_cell() ever again and hence is never counted by our rephist module. The fix here is to flag the `rend_circ` circuit with `circuit_carries_hs_traffic_stats` so that the cell is counted as soon as it hits command_process_relay_cell(). Furthermore we avoid double-counting cells since the special code block of circuit_receive_relay_cell() makes us count rendezvous cells only as they enter the RP and not as they exit it. Fixes #40117.
2020-09-01conn: Remove assert on new listener connection when retryingDavid Goulet
Opening a new listener connection can fail in many ways like a bind() permission denied on a low port for instance. And thus, we should expect to handle an error when creating a new one instead of assert() on it. To hit the removed assert: ORPort 80 KeepBindCapabilities 0 Start tor. Then edit torrc: ORPort <some-IP>:80 HUP tor and the assert is hit. Fixes #40073 Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-08-26Merge remote-tracking branch 'tor-gitlab/mr/136'Alexander Færøy
2020-08-25Merge branch 'mr/113'George Kadianakis
2020-08-25ci: Add tracing build to Gitlab CIDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-08-25Validate address more carefully when checking self-reachabilityNick Mathewson
Previously, we would treat *any* incoming circuit on a non-local channel as meaning that our ORPort was reachable. With this patch, we make sure that the address that the peer _says_ we have is the same as the one we're trying to advertise right now. Closes 20165. Bugfix on 4f5192b2803c706 in 0.1.0.1-rc, when reachability self-tests were first introduced.
2020-08-25Merge remote-tracking branch 'tor-gitlab/mr/115'George Kadianakis
2020-08-25Merge branch 'maint-0.4.4'David Goulet
2020-08-25Avoid guard-related warning when upgrading from 043 to 044.George Kadianakis
Fixes #40105.
2020-08-25Merge remote-tracking branch 'tor-gitlab/mr/108'George Kadianakis
2020-08-25Merge branch 'maint-0.4.4'George Kadianakis
2020-08-25Merge remote-tracking branch 'tor-gitlab/mr/130' into maint-0.4.4George Kadianakis
2020-08-20Merge branch 'maint-0.4.4'George Kadianakis
2020-08-20v3 control: Persist ONION_CLIENT_AUTH_ADD client nameNeel Chauhan
2020-08-19hs: Don't overwrite DoS parameters on circuit with consensus paramsDavid Goulet
Turns out that the HS DoS defenses parameters were overwritten by the consensus parameters everytime a new consensus would arrive. This means that a service operator can still enable the defenses but as soon as the intro point relay would get a new consensus, they would be overwritten. And at this commit, the network is entirely disabling DoS defenses. Fix this by introducing an "explicit" flag that indicate if the ESTABLISH_INTRO cell DoS extension set those parameters or not. If set, avoid using the consenus at once. We are not bumping the protover HSIntro value for this because 0.4.2.x series is EOL in 1 month and thus 0.4.3.x would be the only series with this bug. We are confident that a backport and then upgrade path to the latest 0.4.4.x stable coming up soon is enough to mitigate this problem in the coming months. It avoids the upgrade path on the service side by keeping the requirement for protover HSIntro=5. Fixes #40109 Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-08-19Merge branch 'maint-0.4.4'George Kadianakis
2020-08-19Merge branch 'mr/124' into maint-0.4.4George Kadianakis
2020-08-19Parallelize src/test/test into chunks.Nick Mathewson
First, we introduce a flag to teach src/test/test to split its work into chunks. Then we replace our invocation of src/test/test in our "make check" target with a set of 8 scripts that invoke the first 8th of the tests, the second 8th, and so on. This change makes our "make -kj4 check" target in our hardened gitlab build more than twice as fast, since src/test/test was taking the longest to finish. Closes 40098.
2020-08-18Merge branch 'tor-gitlab/mr/126'David Goulet
2020-08-18Merge branch 'maint-0.4.4'David Goulet
2020-08-18Merge branch 'tor-gitlab/mr/121' into maint-0.4.4David Goulet
2020-08-14Make options_init_from_torrc smaller #40102Daniel Pinto
Split implementation of several command line options from options_init_from_torrc into smaller isolated functions.
2020-08-14Revise trac.torproject.org urls to refer to gitlab replacements.Nick Mathewson
Closes #40101.
2020-08-13Merge branch 'maint-0.4.2' into maint-0.4.3Nick Mathewson
2020-08-13Merge branch 'maint-0.4.3' into maint-0.4.4Nick Mathewson
2020-08-13Merge branch 'maint-0.4.4'Nick Mathewson
2020-08-13Merge branch 'maint-0.3.5' into maint-0.4.2maint-0.4.2Nick Mathewson
2020-08-12Merge remote-tracking branch 'tor-gitlab/mr/62'Nick Mathewson
2020-08-12Fix allocation counting in clean_v2_descs_as_dir test.Nick Mathewson
Without this fix, running this test on its own would fail. Fixes bug 40099. Bugfix on ade5005853c17b3 in 0.2.8.1-alpha.
2020-08-12Remove changes files that have also appeared in 0.4.4 releases.Nick Mathewson
2020-08-12Merge branch 'maint-0.4.4'George Kadianakis
2020-08-12Merge remote-tracking branch 'tor-gitlab/mr/107' into maint-0.4.4George Kadianakis
2020-08-12Merge branch 'maint-0.4.4'George Kadianakis
2020-08-12Merge remote-tracking branch 'tor-gitlab/mr/104' into maint-0.4.4George Kadianakis
2020-08-11Lower the minimum value for MaxMemInQueues to 64 MB for relays.Nick Mathewson
For clients, there is no minimum value; in both cases, we warn if the value seems too low. Closes ticket 24308.
2020-08-11Merge remote-tracking branch 'tor-gitlab/mr/119' into maint-0.4.4Nick Mathewson
2020-08-11Merge remote-tracking branch 'tor-gitlab/mr/119'Nick Mathewson
2020-08-11Merge branch 'maint-0.4.4'Nick Mathewson
2020-08-11Fix "run_check_subsystem_order.sh" to use $PYTHON.Nick Mathewson
Previously it just used /usr/bin/env/python, which would fail if we only had a "python3" binary. Fixes bug 40095; bugfix on 0.4.4.1-alpha.
2020-08-11Merge remote-tracking branch 'tor-gitlab/mr/111'George Kadianakis
2020-08-11Merge remote-tracking branch 'tor-gitlab/mr/109'George Kadianakis
2020-08-11Merge branch 'maint-0.4.4'George Kadianakis
2020-08-11Merge remote-tracking branch 'tor-gitlab/mr/102' into maint-0.4.4George Kadianakis
2020-08-11Remove a BUG() that could normally trigger in edge-cases.George Kadianakis
2020-08-10Merge remote-tracking branch 'tor-gitlab/mr/110'Nick Mathewson
2020-08-07Log number of inbound/outbound ipv4/6 conns as part of heartbeatNick Mathewson
Closes #29113
2020-08-05Changes file for 18106Nick Mathewson
2020-08-05Merge remote-tracking branch 'tor-gitlab/mr/88'George Kadianakis