Commit Graph

38055 Commits

Author SHA1 Message Date
David Goulet c6486da83d configure: Remove typo created by CI patch
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-16 13:03:51 -05:00
David Goulet 0fe3eae3ee Merge branch 'maint-0.4.6' 2021-12-16 13:03:43 -05:00
David Goulet 413e0c7575 configure: Remove typo created by CI patch
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-16 13:03:23 -05:00
Nick Mathewson 5591a3bcd6 Merge remote-tracking branch 'tor-gitlab/mr/504' 2021-12-16 12:36:35 -05:00
David Goulet ecffdb0b17 Merge branch 'maint-0.4.6' 2021-12-16 12:22:44 -05:00
David Goulet 51c7a08485 doc: One more poings in ReleasingTor.md
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-16 12:22:15 -05:00
David Goulet 3b10e0a393 changelog: Forward port ChangeLogs and ReleaseNotes
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-16 12:16:18 -05:00
David Goulet a81ddc83be doc: Update ReleasingTor.md with missing steps
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-16 12:14:52 -05:00
Tor CI Release 00d7337002 version: Bump version to 0.4.6.9-dev 2021-12-16 12:00:07 -05:00
Tor CI Release 475d669f62 version: Bump version to 0.4.7.3-alpha-dev 2021-12-16 11:59:20 -05:00
David Goulet 8a63deb84f changelog: Fix ReleaseNotes leftover from CI
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-16 11:59:20 -05:00
David Goulet e152a0a7cc doc: Improve a bit the ReleasingTor.md
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-16 11:59:20 -05:00
David Goulet a2971919ad Merge branch 'maint-0.4.6' tor-0.4.7.3-alpha 2021-12-16 09:53:27 -05:00
David Goulet ea2ada6d14 configure: Fix typo in version
Signed-off-by: David Goulet <dgoulet@torproject.org>
tor-0.4.6.9
2021-12-16 09:53:16 -05:00
David Goulet b5d12e32f6 configure: Fix typo in version
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-16 09:53:00 -05:00
David Goulet 8ebb735b70 changelog: Add release summary
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-16 09:34:32 -05:00
Tor CI Release adc0d49ef2 release: ChangeLog and ReleaseNotes for 0.4.7.3-alpha 2021-12-16 09:32:04 -05:00
David Goulet 7a8aa8e36d Merge branch 'maint-0.4.6' 2021-12-16 09:28:17 -05:00
Tor CI Release 9a4366b3e3 Update geoip files to match ipfire location db, 2021/12/15. 2021-12-16 09:27:46 -05:00
Tor CI Release 57e8a9b8cb fallbackdir: Update list generated on December 15, 2021 2021-12-16 09:27:39 -05:00
Tor CI Release 955aa02c0d version: Bump version to 0.4.7.3-alpha 2021-12-16 09:27:29 -05:00
David Goulet 21d189d90e Merge branch 'maint-0.4.6' 2021-12-16 09:27:03 -05:00
Tor CI Release faad5ded78 version: Bump version to 0.4.6.9 2021-12-16 09:23:30 -05:00
Hans-Christoph Steiner a86918d524 fix syntax errors listed by cppcheck 2021-12-16 10:21:18 +01:00
David Goulet 48e993be95 changes: Minor syntax editing fixes
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-15 10:53:32 -05:00
David Goulet bf10206e9e Fix compiler warnings from ubuntu/jammy
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-15 09:00:15 -05:00
Alexander Færøy 193781e6ef Merge remote-tracking branch 'tor-gitlab/mr/500' into main 2021-12-15 12:46:18 +00:00
Alexander Færøy 48d778bc32 Merge remote-tracking branch 'tor-gitlab/mr/491' into main 2021-12-15 12:41:00 +00:00
Alexander Færøy 95b82c4fee Merge remote-tracking branch 'tor-gitlab/mr/497' into main 2021-12-15 12:38:30 +00:00
skaluzka 39848ca166 Correct typo in scripts/README file
Signed-off-by: skaluzka <skaluzka@protonmail.com>
2021-12-14 23:14:02 +01:00
David Goulet eb06d52dae fixup! relay: Change DNS timeout label on MetricsPort
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-14 16:13:00 -05:00
David Goulet b37674fec7 fixup! relay: Change DNS timeout label on MetricsPort
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-14 16:12:17 -05:00
David Goulet 122c60c323 fixup! relay: Change DNS timeout label on MetricsPort 2021-12-14 12:14:39 -05:00
David Goulet bf1ed5c853 relay: Change DNS timeout label on MetricsPort
Change it from "timeout" to "tor_timeout" in order to indicate that the
DNS timeout is one from tor's DNS threshold and not the DNS server
itself.

Fixes #40527

Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-13 10:49:00 -05:00
David Goulet ad6a0ebb11 Merge branch 'ticket40527_046_01' into ticket40527_047_01 2021-12-13 10:48:54 -05:00
David Goulet cda7acb35d relay: Don't make DNS timeout trigger an overload
Tor has configure libevent to attempt up to 3 times a DNS query for a
maximum of 5 seconds each. Once that 5 seconds has elapsed, it consider
the query "Timed Out" but tor only gets a timeout if all 3 attempts have
failed.

For example, using Unbound, it has a much higher threshold of timeout.
It is well defined in
https://www.nlnetlabs.nl/documentation/unbound/info-timeout/ and has
some complexity to it. But the gist is that if it times out, it will be
much more than 5 seconds.

And so the Tor DNS timeouts are more of a "UX issue" rather than a
"network issue". For this reason, we are removing this metric from the
overload general signal.

See https://gitlab.torproject.org/tpo/network-health/team/-/issues/139
for more information.

Fixes #40527

Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-13 10:47:46 -05:00
Nick Mathewson b8e6eb6236 Merge remote-tracking branch 'tor-gitlab/mr/498' 2021-12-13 10:47:39 -05:00
Nick Mathewson 86819229af Limit the number of elements in a consdiff hash line.
This avoids performing and then freeing a lot of small mallocs() if
the hash line has too many elements.

Fixes one case of bug 40472; resolves OSS-Fuzz 38363.  Bugfix on
0.3.1.1-alpha when the consdiff parsing code was introduced.
2021-12-06 12:35:08 -05:00
Nick Mathewson b4c55f3a70 changes: Describe when bug 7362 began. 2021-11-23 11:28:30 -05:00
Cecylia Bocovich 0d3894dbbc Add documentation on {C,S}METHOD parsing behaviour 2021-11-23 11:18:04 -05:00
Cecylia Bocovich 809b636b6e Don't kill managed proxy on method error
Some PT applications support more than one transport. For example,
obfs4proxy supports obfs4, obfs3, and meek. If one or more transports
specified in the torrc file are supported, we shouldn't kill the managed
proxy on a {C,S}METHOD-ERROR. Instead, we should log a warning.

We were already logging warnings on method errors. This change just
makes sure that the managed proxy isn't killed, and then if no
transports are configured for the managed proxy, bumps the log level up
from a notice to a warning.

Closes #7362
2021-11-19 14:50:36 -05:00
Nick Mathewson dd085d42f9 Do not count controller-selected paths towards path bias.
As a side effect, this fixes a "Bug" warning.

Closes #40515.  Bugfix on 0.2.4.10-alpha.
2021-11-15 08:55:47 -05:00
Nick Mathewson 96f1e69f24 Implement proposal 275: don't put "published" times in md consensus
When a new consensus method is negotiated, these values will all get
replaced with "2038-01-01 00:00:00".

This change should be safe because:

  * As of 0.2.9.11 / 0.3.0.7 / 0.3.1.1-alpha, Tor takes no action
    about published_on times in the future.

  * The only remaining parties relying on published_on values are (we
    believe) relays running 0.3.5.x, which rely on the values in a NS
    consensus to see whether their descriptors are out of date.  But
    this patch only changes microdesc consensuses.

  * The latest Tor no longer looks at this field in consensuses.

Why make this change?  In experiments, replacing these values with a
fixed value made the size of compressed consensus diffs much much
smaller.  (Like, by over 50%!)

Implements proposal 275; Implements #40130.
2021-11-09 13:43:48 -05:00
Nick Mathewson 1d2c918dfd Move published_on from routerstatus_t to vote_routerstatus_t.
Nothing breaks here, since all non-voting users of
routerstatus_t.published_on have been adjusted or removed in
previous commits.

We have to expand the API of routerstatus_format_entry() a bit,
though, so that it can always get a published time as argument,
since it can't get it from the routerstatus any more.

This should have no effect on voter behavior.
2021-11-09 13:29:36 -05:00
Nick Mathewson a7fb5563bc Stop checking published_on in routerstatus_has_visibly_changed()
This function is only used for the controller; and any time that the
published_on time has changed, the digest should also change.
2021-11-09 09:08:48 -05:00
Nick Mathewson 73639fc3c1 Change a log not to use published_on.
It used to describe when the old and new routerinfos were published
when we'd decide to download a routerinfo.  Now it describes what
their descriptor digests are.
2021-11-09 09:07:04 -05:00
Nick Mathewson 08d452b38c Stop using published_on in rs to decide whether to download a routerdesc.
The consensus voters shouldn't actually include such old routers in
the consensus anyway, so this logic shouldn't come up...

but if a client _does_ download something it wouldn't use, it won't
retry infinitely: see checks for WRA_NEVER_DOWNLOADABLE.
2021-11-09 09:06:25 -05:00
Nick Mathewson db7d067ab1 Retain all routerinfos listed in the consensus.
Previously we'd look at the routerstatus published_on field when
deciding what to dump, which really has no point.  If something's in
the consensus with an ancient published date, then we do want to
keep it.
2021-11-09 08:57:03 -05:00
Nick Mathewson 8345b3bd92 Stop using published_on to decide whether to republish.
Thanks to the StaleDesc flag, this is not something we need to look
at any longer.
2021-11-09 08:57:03 -05:00
Alexander Færøy a78dafbf7c Merge branch 'maint-0.4.5' into maint-0.4.6 2021-11-08 14:16:19 +00:00