Commit Graph
34804 Commits
Author SHA1 Message Date
David Goulet f0964628e6 Merge branch 'ticket33029_042_01' into ticket33029_043_03
Conflicts:
	doc/tor.1.txt
	src/app/config/config.c
	src/app/config/or_options_st.h
	src/core/mainloop/connection.h

Between 042 and 043, the dirauth options were modularized so this merge commit
address this by moving the AuthDirRejectUncompressedRequests to the module
along with a series of accessors.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-11 10:30:29 -05:00
David Goulet 7b4d9fabef dirauth: Rename function for better clarity
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-11 10:15:23 -05:00
David Goulet 33414e5494 test: Add unit test for connection_dir_is_global_write_low()
Part of #33029

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-11 10:15:04 -05:00
David Goulet 6d9113d2f6 dirauth: Resume sending 503 directory error code
Authorities were never sending back 503 error code because by design they
should be able to always answer directory requests regardless of bandwidth
capacity.

However, that recently backfired because of a large number of requests from
unknown source using the DirPort that are _not_ getting their 503 code which
overloaded the DirPort leading to the authority to be unable to answer to its
fellow authorities.

This is not a complete solution to the problem but it will help ease off the
load on the authority side by sending back 503 codes *unless* the connection
is from a known relay or an authority.

Fixes #33029

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-11 09:58:28 -05:00
David Goulet 735aa208b1 dirauth: Add option AuthDirRejectRequestsUnderLoad
This controls the previous feature added that makes dirauth send back a 503
error code on non relay connections if under bandwidth pressure.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-11 09:57:05 -05:00
David Goulet bd4f4cb5f0 dirlist: Add configured trusted dir to the nodelist address set
The configured, within the torrc or hardcoded, directory authorities addresses
are now added to the nodelist address set.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-11 09:35:54 -05:00
David Goulet 4152c349b4 nodelist: Helper to add an address to the nodelist address set
We separate v4 and v6 because we often use an IPv4 address represented with
a uint32_t instead of a tor_addr_t.

This will be used to also add the trusted directory addresses taken from the
configuration.

The trusted directories from the consensus are already added to the address
set from their descriptor.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-11 09:35:50 -05:00
David Goulet 872f95ca06 mainloop: Modernize a bit connection_dir_is_global_write_low()
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-11 09:35:46 -05:00
David Goulet c1e0ac63b8 mainloop: Remove unused parameter from connection_dir_is_global_write_low()
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-11 09:35:40 -05:00
David Goulet ee55823a11 mainloop: Rename global_write_bucket_low()
That function is only used to test the global bucket write limit for a
directory connection.

It should _not_ be used for anything else since that function looks to see if
we are a directory authority.

Rename it to something more meaningful. No change in behavior at this commit,
only renaming.

Part of #33029

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-11 09:34:55 -05:00
Nick Mathewson de31c4757b Merge branch 'maint-0.4.2' into maint-0.4.3 2020-02-11 08:53:41 -05:00
Nick Mathewson 00fe214729 Merge branch 'maint-0.4.1' into maint-0.4.2
"ours" merge, since the exceptions.txt file is already fixed in this branch.
2020-02-11 08:53:00 -05:00
Nick Mathewson 0ff3e8f4a0 Remove a redundant practracker exception line in maint-0.4.1
This will our "git push" hook not complain about pushing from
maint-0.4.1.
2020-02-11 08:52:26 -05:00
Nick Mathewson 409e1ca3d5 Merge remote-tracking branch 'tor-github/pr/1716/head' into maint-0.4.3 2020-02-11 08:44:18 -05:00
Christian Clauss 9f7e1ccacb Undefined name: make_key() -> make_rsa_key() 2020-02-11 08:35:11 -05:00
Nick Mathewson 5d56c1f4b2 Update to 0.4.3.2-alpha-dev 2020-02-10 19:42:31 -05:00
Taylor Yu dfa1800c7f changes file for ticket 33213 2020-02-10 14:24:44 -06:00
Nick Mathewson dcbf6611d9 Correction to changelog from dgoulet tor-0.4.3.2-alpha 2020-02-10 15:02:32 -05:00
Nick Mathewson 2571d8e7fe One more light changelog edit. 2020-02-10 15:01:02 -05:00
Nick Mathewson f275a9ada7 Light edits on the 0.4.3.2-alpha changelog 2020-02-10 14:40:19 -05:00
Nick Mathewson a0ca442b79 start on 0.4.3.2-alpha changelog 2020-02-10 14:30:36 -05:00
Nick Mathewson eb8841cd95 Merge branch 'bug33104_041' 2020-02-10 14:23:13 -05:00
Nick Mathewson 0c90fc37ec Merge branch 'maint-0.4.1' into maint-0.4.2 2020-02-10 14:17:10 -05:00
Nick Mathewson 71c49f7356 Merge branch 'maint-0.4.0' into maint-0.4.1 2020-02-10 14:17:10 -05:00
Nick Mathewson d9144700af Merge branch 'maint-0.4.2' 2020-02-10 14:17:10 -05:00
Nick Mathewson f3fa22bf1b Merge branch 'maint-0.3.5' into maint-0.4.0 2020-02-10 14:17:09 -05:00
Nick Mathewson 2b6df3da21 Merge branch 'bug33212_035' into maint-0.3.5 2020-02-10 14:17:03 -05:00
Nick Mathewson dab0b1c3a7 bump to 0.4.3.2-alpha 2020-02-10 13:37:59 -05:00
Nick Mathewson 99d044d553 Fix a Rust compilation warning; resolve bug 33212. 2020-02-10 13:32:09 -05:00
Nick Mathewson b2c3cb1b26 Add tests for control_event_signal. 2020-02-10 11:38:36 -05:00
Nick Mathewson 05a05773f2 Merge remote-tracking branch 'tor-github/pr/1711' 2020-02-10 10:23:50 -05:00
teor 5e6021bdae stats: Fix a function comment typo in rephist.c
Comment-only change.
2020-02-10 15:58:25 +10:00
Taylor Yu cb757b30a2 changes file for tickets 32928, 32929 2020-02-07 12:54:55 -06:00
swati 305934c67b Updated introductory text for CIRCUIT TIMEOUT and DORMANT MODE options 2020-02-07 16:36:09 +05:30
swati 05adecf211 Added a section for Dormant mode options 2020-02-06 21:33:58 +05:30
Nick Mathewson 21f45197a2 Merge branch 'bug33103' 2020-02-06 08:28:25 -05:00
Nick Mathewson b7bbff0c9c Merge remote-tracking branch 'public/practracker_regen_overbroad_2' 2020-02-06 08:27:12 -05:00
David Goulet a8456d2a11 test: Missing hs_init() in some hs_control tests
Without the hs_init(), the caches are not initialized and the previous commit
was causing an assert due to the missing caches.

But regardless of that, those tests were not initializing but were calling
hs_free_all().

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-06 12:54:54 +02:00
David Goulet 9278a24729 hs-v3: Remove descriptor when we remove client authorization
When the ONION_CLIENT_AUTH_REMOVE command is given to tor, now also remove the
descriptor associated with the client authorization credentials.

Fixes #33148

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-06 12:54:54 +02:00
Nick Mathewson 56c54a66bd Fix a memory leak in handling GETINFO.
Fixes bug 33103; bugfix on 0.4.3.1-alpha.
2020-02-05 19:18:32 -05:00
teor 2c4d7d8c65 Merge branch 'pr1701-fix-typo' 2020-02-06 08:39:46 +10:00
David Goulet 9c33d36113 configure: Fix and improve summary pretty printing
Fixes #32230

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-02-06 08:39:04 +10:00
swati 1b65024ae2 Added the NodeFamily option to Node Selection Options section 2020-02-05 23:13:41 +05:30
Nick Mathewson 238b1f3150 Merge remote-tracking branch 'tor-github/pr/1703' 2020-02-05 08:51:22 -05:00
swati d75d763155 Updated the introductory text and titles of Timeout and Node selection options 2020-02-05 00:28:27 +05:30
George Kadianakis 2a5e641cfe Merge branch 'tor-github/pr/1704' 2020-02-04 13:09:41 +01:00
George Kadianakis 6c749bf38c Merge branch 'tor-github/pr/1700' 2020-02-04 13:06:00 +01:00
teor ff52051754 address: Fix comments in address.h
And improve inline function spacing, and function declaration
spacing.

Comment-only change.
2020-02-04 14:36:04 +10:00
Roger Dingledine 90bb4872b8 go in to fix one typo, end up fixing more 2020-02-03 23:21:58 -05:00
Nick Mathewson 5e963f97b1 practracker: use shutil.move so --regen will work on windows
On windows you can't os.rename() a file if the target filename
already exists.
2020-02-03 13:36:56 -05:00