]> git.ipfire.org Git - thirdparty/tor.git/log
thirdparty/tor.git
2 years agorelay: Remove unused conn->ext_or_conn_id
David Goulet [Tue, 26 Jul 2022 15:18:15 +0000 (11:18 -0400)] 
relay: Remove unused conn->ext_or_conn_id

This also incidently removes a use of uninitialized stack data from the
connection_or_set_ext_or_identifier() function.

Fixes #40648

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agosandbox: Add my-consensus-<flavor-name> to sandbox for dirauth
David Goulet [Mon, 31 Oct 2022 15:37:43 +0000 (11:37 -0400)] 
sandbox: Add my-consensus-<flavor-name> to sandbox for dirauth

Fixese #40663

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agothread: Bump max detectable CPU from 16 to 128
David Goulet [Fri, 28 Oct 2022 15:13:46 +0000 (11:13 -0400)] 
thread: Bump max detectable CPU from 16 to 128

Lets take advantage of those beefy machines ;).

Closes #40703

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoMerge branch 'tor-gitlab/mr/645' into maint-0.4.7
David Goulet [Thu, 27 Oct 2022 15:42:07 +0000 (11:42 -0400)] 
Merge branch 'tor-gitlab/mr/645' into maint-0.4.7

3 years agoMerge branch 'tor-gitlab/mr/644' into maint-0.4.7
David Goulet [Thu, 27 Oct 2022 15:41:43 +0000 (11:41 -0400)] 
Merge branch 'tor-gitlab/mr/644' into maint-0.4.7

3 years agometrics: Treat relay connections as gauge, not counter
David Goulet [Thu, 27 Oct 2022 15:35:27 +0000 (11:35 -0400)] 
metrics: Treat relay connections as gauge, not counter

Fixes #40699

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoChanges file for 40683
Mike Perry [Thu, 27 Oct 2022 15:36:53 +0000 (15:36 +0000)] 
Changes file for 40683

3 years agoStrip "__.SYMDEF*" before re-archiving in combine_libs on macOS and iOS.
Alexander Færøy [Fri, 14 Oct 2022 10:12:46 +0000 (12:12 +0200)] 
Strip "__.SYMDEF*" before re-archiving in combine_libs on macOS and iOS.

This patch changes how combine_libs works on Darwin like platforms to
make sure we don't include any `__.SYMDEF` and `__.SYMDEF SORTED`
symbols on the archive before we repack and run ${RANLIB} on the
archive.

See: tpo/core/tor#40683.

3 years agochanges: Update changes for ticket 40194
David Goulet [Thu, 27 Oct 2022 14:35:10 +0000 (10:35 -0400)] 
changes: Update changes for ticket 40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agometrics: Add number of opened circuits to MetricsPort
David Goulet [Thu, 27 Oct 2022 14:39:55 +0000 (10:39 -0400)] 
metrics: Add number of opened circuits to MetricsPort

Related to #40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agorelay: Add our consensus relay flag to MetricsPort
David Goulet [Thu, 27 Oct 2022 14:33:25 +0000 (10:33 -0400)] 
relay: Add our consensus relay flag to MetricsPort

Related to #40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agometrics: Add traffic related stats to MetricsPort
David Goulet [Thu, 27 Oct 2022 14:00:50 +0000 (10:00 -0400)] 
metrics: Add traffic related stats to MetricsPort

At this commit, bytes read and written are exported.

Related to #40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agorelay: Add DoS subsystem stats to MetricsPort
David Goulet [Thu, 27 Oct 2022 13:54:54 +0000 (09:54 -0400)] 
relay: Add DoS subsystem stats to MetricsPort

Related to #40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agometrics: Fix naming and documentation
David Goulet [Thu, 27 Oct 2022 14:45:08 +0000 (10:45 -0400)] 
metrics: Fix naming and documentation

After nickm's review, minor changes to names and comments.

Related to #40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agorelay: Change the connection metrics name
David Goulet [Thu, 13 Oct 2022 15:09:40 +0000 (11:09 -0400)] 
relay: Change the connection metrics name

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agorelay: Add CC RTT reset stats to MetricsPort
David Goulet [Thu, 13 Oct 2022 14:50:18 +0000 (10:50 -0400)] 
relay: Add CC RTT reset stats to MetricsPort

Related to #40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agorelay: Add total number of streams seen on MetricsPort
David Goulet [Thu, 13 Oct 2022 14:41:21 +0000 (10:41 -0400)] 
relay: Add total number of streams seen on MetricsPort

Related to #40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agorephist: Track number of streams seen per type
David Goulet [Thu, 13 Oct 2022 14:32:16 +0000 (10:32 -0400)] 
rephist: Track number of streams seen per type

Related to #40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agochanges: Ticket 40694
David Goulet [Mon, 24 Oct 2022 15:14:50 +0000 (11:14 -0400)] 
changes: Ticket 40694

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agohs: Retry service rendezvous on circuit close
David Goulet [Wed, 19 Oct 2022 19:27:22 +0000 (15:27 -0400)] 
hs: Retry service rendezvous on circuit close

Move the retry from circuit_expire_building() to when the offending
circuit is being closed.

Fixes #40695

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agocirc: Get rid of hs_circ_has_timed_out
David Goulet [Wed, 19 Oct 2022 19:11:11 +0000 (15:11 -0400)] 
circ: Get rid of hs_circ_has_timed_out

Logic is too convoluted and we can't efficiently apply a specific
timeout depending on the purpose.

Remove it and instead rely on the right circuit cutoff instead of
keeping this flagged circuit open forever.

Part of #40694

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agocirc: Set proper timeout cutoff for HS circuits
David Goulet [Wed, 19 Oct 2022 18:50:00 +0000 (14:50 -0400)] 
circ: Set proper timeout cutoff for HS circuits

Explicitly set the S_CONNECT_REND purpose to a 4-hop cutoff.

As for the established rendezvous circuit waiting on the RENDEZVOUS2,
set one that is very long considering the possible waiting time for the
service to get the request and join our rendezvous.

Part of #40694

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agohs: Retry rdv circuit if repurposed
David Goulet [Mon, 24 Oct 2022 15:03:38 +0000 (11:03 -0400)] 
hs: Retry rdv circuit if repurposed

This can happen if our measurement subsystem decides to snatch it.

Fixes #40696

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoMerge branch 'tor-gitlab/mr/635' into maint-0.4.7
David Goulet [Wed, 26 Oct 2022 19:01:40 +0000 (15:01 -0400)] 
Merge branch 'tor-gitlab/mr/635' into maint-0.4.7

3 years agohs: Change the error for a collapsing client circuit
David Goulet [Wed, 19 Oct 2022 18:41:48 +0000 (14:41 -0400)] 
hs: Change the error for a collapsing client circuit

Change it to an "unreachable" error so the intro point can be retried
and not flagged as a failure and never retried again.

Closes #40692

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoMerge branch 'maint-0.4.5' into maint-0.4.7
David Goulet [Wed, 26 Oct 2022 18:21:41 +0000 (14:21 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.7

3 years agoMerge branch 'tor-gitlab/mr/631' into maint-0.4.5
David Goulet [Wed, 26 Oct 2022 18:21:35 +0000 (14:21 -0400)] 
Merge branch 'tor-gitlab/mr/631' into maint-0.4.5

3 years agodirauth: Remove Faravahar
David Goulet [Tue, 18 Oct 2022 14:45:17 +0000 (10:45 -0400)] 
dirauth: Remove Faravahar

Closes #40688

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoMerge branch 'maint-0.4.5' into maint-0.4.7
David Goulet [Wed, 26 Oct 2022 18:12:51 +0000 (14:12 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.7

3 years agoMerge branch 'tor-gitlab/mr/629' into maint-0.4.7
David Goulet [Wed, 26 Oct 2022 18:06:33 +0000 (14:06 -0400)] 
Merge branch 'tor-gitlab/mr/629' into maint-0.4.7

3 years agorelay: Reduce the minimum circuit cell in queue limit
David Goulet [Tue, 18 Oct 2022 16:19:40 +0000 (12:19 -0400)] 
relay: Reduce the minimum circuit cell in queue limit

With congestion control, the flow control window is much lower than the
initial 1000.

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agodos: Apply circuit creation defenses if circ max queue cell reached
David Goulet [Mon, 17 Oct 2022 15:34:57 +0000 (11:34 -0400)] 
dos: Apply circuit creation defenses if circ max queue cell reached

This adds two consensus parameters to control the outbound max circuit
queue cell size limit and how many times it is allowed to reach that
limit for a single client IP.

Closes #40680

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agodir auths now omit Measured= if rs->is_authority
Roger Dingledine [Fri, 21 Oct 2022 00:56:33 +0000 (20:56 -0400)] 
dir auths now omit Measured= if rs->is_authority

Directory authorities stop voting a consensus "Measured" weight
for relays with the Authority flag. Now these relays will be
considered unmeasured, which should reserve their bandwidth
for their dir auth role and minimize distractions from other roles.

In place of the "Measured" weight, they now include a
"MeasuredButAuthority" weight (not used by anything) so the bandwidth
authority's opinion on this relay can be recorded for posterity.

Resolves ticket 40698.

3 years agoback out most of commit b7992d4f
Roger Dingledine [Mon, 24 Oct 2022 08:30:23 +0000 (04:30 -0400)] 
back out most of commit b7992d4f

The AuthDirDontVoteOnDirAuthBandwidth torrc option never worked, and it
was implemented in a way that could have produced consensus conflicts
if it had.

Resolves bug 40700.

3 years agofix typo in #40673's changes file
Roger Dingledine [Thu, 20 Oct 2022 23:46:27 +0000 (19:46 -0400)] 
fix typo in #40673's changes file

3 years agodirauth: Change dizum IP address
David Goulet [Tue, 18 Oct 2022 14:35:45 +0000 (10:35 -0400)] 
dirauth: Change dizum IP address

Closes #40687

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoMerge branch 'maint-0.4.5' into maint-0.4.7
David Goulet [Fri, 14 Oct 2022 13:12:23 +0000 (09:12 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.7

3 years agoFix a completely wrong calculation in mach monotime_init_internal()
Nick Mathewson [Thu, 13 Oct 2022 17:40:10 +0000 (13:40 -0400)] 
Fix a completely wrong calculation in mach monotime_init_internal()

Bug 1: We were purporting to calculate milliseconds per tick, when we
*should* have been computing ticks per millisecond.

Bug 2: Instead of computing either one of those, we were _actually_
computing femtoseconds per tick.

These two bugs covered for one another on x86 hardware, where 1 tick
== 1 nanosecond.  But on M1 OSX, 1 tick is about 41 nanoseconds,
causing surprising results.

Fixes bug 40684; bugfix on 0.3.3.1-alpha.

3 years agorelay: Add number of rejected connections to MetricsPort
David Goulet [Wed, 12 Oct 2022 13:25:01 +0000 (09:25 -0400)] 
relay: Add number of rejected connections to MetricsPort

Related to #40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agorelay: Add connection stats to MetricsPort
David Goulet [Tue, 11 Oct 2022 18:03:38 +0000 (14:03 -0400)] 
relay: Add connection stats to MetricsPort

This adds the number of created and opened connections to the
MetricsPort for a relay for each connection type and direction.

Output looks like:

  # HELP tor_relay_connections Connections metrics of this relay
  # TYPE tor_relay_connections counter
  tor_relay_connections{type="OR listener",direction="initiated",state="created"} 0
  tor_relay_connections{type="OR listener",direction="received",state="created"} 0
  tor_relay_connections{type="OR listener",direction="initiated",state="opened"} 0
  tor_relay_connections{type="OR listener",direction="received",state="opened"} 0
  tor_relay_connections{type="OR",direction="initiated",state="created"} 5
  tor_relay_connections{type="OR",direction="received",state="created"} 0
  tor_relay_connections{type="OR",direction="initiated",state="opened"} 5
  tor_relay_connections{type="OR",direction="received",state="opened"} 0
  tor_relay_connections{type="Exit",direction="initiated",state="created"} 0
  tor_relay_connections{type="Exit",direction="received",state="created"} 0
  tor_relay_connections{type="Exit",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Exit",direction="received",state="opened"} 0
  tor_relay_connections{type="Socks listener",direction="initiated",state="created"} 0
  tor_relay_connections{type="Socks listener",direction="received",state="created"} 0
  tor_relay_connections{type="Socks listener",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Socks listener",direction="received",state="opened"} 0
  tor_relay_connections{type="Socks",direction="initiated",state="created"} 0
  tor_relay_connections{type="Socks",direction="received",state="created"} 0
  tor_relay_connections{type="Socks",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Socks",direction="received",state="opened"} 0
  tor_relay_connections{type="Directory listener",direction="initiated",state="created"} 0
  tor_relay_connections{type="Directory listener",direction="received",state="created"} 0
  tor_relay_connections{type="Directory listener",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Directory listener",direction="received",state="opened"} 0
  tor_relay_connections{type="Directory",direction="initiated",state="created"} 0
  tor_relay_connections{type="Directory",direction="received",state="created"} 0
  tor_relay_connections{type="Directory",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Directory",direction="received",state="opened"} 0
  tor_relay_connections{type="Control listener",direction="initiated",state="created"} 0
  tor_relay_connections{type="Control listener",direction="received",state="created"} 0
  tor_relay_connections{type="Control listener",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Control listener",direction="received",state="opened"} 0
  tor_relay_connections{type="Control",direction="initiated",state="created"} 0
  tor_relay_connections{type="Control",direction="received",state="created"} 0
  tor_relay_connections{type="Control",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Control",direction="received",state="opened"} 0
  tor_relay_connections{type="Transparent pf/netfilter listener",direction="initiated",state="created"} 0
  tor_relay_connections{type="Transparent pf/netfilter listener",direction="received",state="created"} 0
  tor_relay_connections{type="Transparent pf/netfilter listener",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Transparent pf/netfilter listener",direction="received",state="opened"} 0
  tor_relay_connections{type="Transparent natd listener",direction="initiated",state="created"} 0
  tor_relay_connections{type="Transparent natd listener",direction="received",state="created"} 0
  tor_relay_connections{type="Transparent natd listener",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Transparent natd listener",direction="received",state="opened"} 0
  tor_relay_connections{type="DNS listener",direction="initiated",state="created"} 0
  tor_relay_connections{type="DNS listener",direction="received",state="created"} 0
  tor_relay_connections{type="DNS listener",direction="initiated",state="opened"} 0
  tor_relay_connections{type="DNS listener",direction="received",state="opened"} 0
  tor_relay_connections{type="Extended OR",direction="initiated",state="created"} 0
  tor_relay_connections{type="Extended OR",direction="received",state="created"} 0
  tor_relay_connections{type="Extended OR",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Extended OR",direction="received",state="opened"} 0
  tor_relay_connections{type="Extended OR listener",direction="initiated",state="created"} 0
  tor_relay_connections{type="Extended OR listener",direction="received",state="created"} 0
  tor_relay_connections{type="Extended OR listener",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Extended OR listener",direction="received",state="opened"} 0
  tor_relay_connections{type="HTTP tunnel listener",direction="initiated",state="created"} 0
  tor_relay_connections{type="HTTP tunnel listener",direction="received",state="created"} 0
  tor_relay_connections{type="HTTP tunnel listener",direction="initiated",state="opened"} 0
  tor_relay_connections{type="HTTP tunnel listener",direction="received",state="opened"} 0
  tor_relay_connections{type="Metrics listener",direction="initiated",state="created"} 0
  tor_relay_connections{type="Metrics listener",direction="received",state="created"} 1
  tor_relay_connections{type="Metrics listener",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Metrics listener",direction="received",state="opened"} 1
  tor_relay_connections{type="Metrics",direction="initiated",state="created"} 0
  tor_relay_connections{type="Metrics",direction="received",state="created"} 0
  tor_relay_connections{type="Metrics",direction="initiated",state="opened"} 0
  tor_relay_connections{type="Metrics",direction="received",state="opened"} 0

Related to #40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoconn: Keep stats of opened and closed connections
David Goulet [Tue, 11 Oct 2022 17:17:35 +0000 (13:17 -0400)] 
conn: Keep stats of opened and closed connections

Related to #40194

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoProperly compute cell-drop overload fraction
Andy [Thu, 6 Oct 2022 04:30:18 +0000 (04:30 +0000)] 
Properly compute cell-drop overload fraction

Patch to address #40673. An additional check has been added to
onion_pending_add() in order to ensure that we avoid counting create
cells from clients.

In the cpuworker.c assign_onionskin_to_cpuworker
method if total_pending_tasks >= max_pending_tasks
and channel_is_client(circ->p_chan) returns false then
rep_hist_note_circuit_handshake_dropped() will be called and
rep_hist_note_circuit_handshake_assigned() will not be called. This
causes relays to run into errors due to the fact that the number of
dropped packets exceeds the total number of assigned packets.

To avoid this situation a check has been added to
onion_pending_add() to ensure that these erroneous calls to
rep_hist_note_circuit_handshake_dropped() are not made.

See the #40673 ticket for the conversation with armadev about this issue.

3 years agoversion: Bump version to 0.4.7.10-dev
Tor CI Release [Fri, 12 Aug 2022 14:33:28 +0000 (14:33 +0000)] 
version: Bump version to 0.4.7.10-dev

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Fri, 12 Aug 2022 14:54:47 +0000 (10:54 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agoversion: Bump version to 0.4.6.12-dev maint-0.4.6
Tor CI Release [Fri, 12 Aug 2022 14:33:26 +0000 (14:33 +0000)] 
version: Bump version to 0.4.6.12-dev

3 years agoMerge branch 'maint-0.4.5' into maint-0.4.6
David Goulet [Fri, 12 Aug 2022 14:54:31 +0000 (10:54 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.6

3 years agoversion: Bump version to 0.4.5.14-dev
Tor CI Release [Fri, 12 Aug 2022 14:33:25 +0000 (14:33 +0000)] 
version: Bump version to 0.4.5.14-dev

3 years agoversion: Bump version to 0.4.7.10 tor-0.4.7.10
Tor CI Release [Fri, 12 Aug 2022 13:37:54 +0000 (13:37 +0000)] 
version: Bump version to 0.4.7.10

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Fri, 12 Aug 2022 14:17:36 +0000 (10:17 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agoversion: Bump version to 0.4.6.12 tor-0.4.6.12
Tor CI Release [Fri, 12 Aug 2022 13:37:52 +0000 (13:37 +0000)] 
version: Bump version to 0.4.6.12

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Fri, 12 Aug 2022 14:14:38 +0000 (10:14 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agoMerge branch 'maint-0.4.5' into maint-0.4.6
David Goulet [Fri, 12 Aug 2022 14:14:32 +0000 (10:14 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.6

3 years agoversion: Bump version to 0.4.5.14 tor-0.4.5.14
Tor CI Release [Fri, 12 Aug 2022 13:37:49 +0000 (13:37 +0000)] 
version: Bump version to 0.4.5.14

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Fri, 12 Aug 2022 13:56:54 +0000 (09:56 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agoMerge branch 'maint-0.4.5' into maint-0.4.6
David Goulet [Fri, 12 Aug 2022 13:56:54 +0000 (09:56 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.6

3 years agogeoip: Update geoip files with August 9th, 2022 database
David Goulet [Fri, 12 Aug 2022 13:55:24 +0000 (09:55 -0400)] 
geoip: Update geoip files with August 9th, 2022 database

Fixes #40658

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoversion: Bump version to 0.4.7.9-dev
Tor CI Release [Thu, 11 Aug 2022 14:37:39 +0000 (14:37 +0000)] 
version: Bump version to 0.4.7.9-dev

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Thu, 11 Aug 2022 15:14:52 +0000 (11:14 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agoversion: Bump version to 0.4.6.11-dev
Tor CI Release [Thu, 11 Aug 2022 14:37:39 +0000 (14:37 +0000)] 
version: Bump version to 0.4.6.11-dev

3 years agoMerge branch 'maint-0.4.5' into maint-0.4.6
David Goulet [Thu, 11 Aug 2022 15:14:34 +0000 (11:14 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.6

3 years agoversion: Bump version to 0.4.5.13-dev
Tor CI Release [Thu, 11 Aug 2022 14:37:39 +0000 (14:37 +0000)] 
version: Bump version to 0.4.5.13-dev

3 years agoversion: Bump version to 0.4.7.9
Tor CI Release [Thu, 11 Aug 2022 13:40:44 +0000 (13:40 +0000)] 
version: Bump version to 0.4.7.9

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Thu, 11 Aug 2022 14:23:40 +0000 (10:23 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agoversion: Bump version to 0.4.6.11
Tor CI Release [Thu, 11 Aug 2022 13:40:38 +0000 (13:40 +0000)] 
version: Bump version to 0.4.6.11

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Thu, 11 Aug 2022 14:17:35 +0000 (10:17 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agoMerge branch 'maint-0.4.5' into maint-0.4.6
David Goulet [Thu, 11 Aug 2022 14:17:30 +0000 (10:17 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.6

3 years agoversion: Bump version to 0.4.5.13
Tor CI Release [Thu, 11 Aug 2022 13:40:32 +0000 (13:40 +0000)] 
version: Bump version to 0.4.5.13

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Thu, 11 Aug 2022 13:44:47 +0000 (09:44 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agoMerge branch 'maint-0.4.5' into maint-0.4.6
David Goulet [Thu, 11 Aug 2022 13:44:47 +0000 (09:44 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.6

3 years agofallbackdir: Update list generated on August 11, 2022
Tor CI Release [Thu, 11 Aug 2022 13:39:29 +0000 (13:39 +0000)] 
fallbackdir: Update list generated on August 11, 2022

3 years agoUpdate geoip files to match ipfire location db, 2022/08/11.
Tor CI Release [Thu, 11 Aug 2022 13:38:23 +0000 (13:38 +0000)] 
Update geoip files to match ipfire location db, 2022/08/11.

3 years agoMerge branch 'tor-gitlab/mr/613' into maint-0.4.7
David Goulet [Thu, 11 Aug 2022 13:26:59 +0000 (09:26 -0400)] 
Merge branch 'tor-gitlab/mr/613' into maint-0.4.7

3 years agoTune congestion control parameters.
Mike Perry [Sat, 6 Aug 2022 00:36:24 +0000 (00:36 +0000)] 
Tune congestion control parameters.

3 years agoAdd changes file for bug40642.
Mike Perry [Thu, 4 Aug 2022 21:23:40 +0000 (21:23 +0000)] 
Add changes file for bug40642.

3 years agoReduce the number of vegas parameters.
Mike Perry [Thu, 4 Aug 2022 21:12:50 +0000 (21:12 +0000)] 
Reduce the number of vegas parameters.

We need to tune these, but we're not likely to need the subtle differences
between a few of them. Removing them will prevent our consensus parameter
string from becoming too long in the event of tuning.

3 years agoReset the min value if we hit cwnd_min.
Mike Perry [Sun, 31 Jul 2022 15:14:22 +0000 (15:14 +0000)] 
Reset the min value if we hit cwnd_min.

This can avoid circuits getting stuck due to an abnormally low min value.

3 years agoUse EWMA instead of bare rtt for min rtt.
Mike Perry [Sun, 31 Jul 2022 15:09:35 +0000 (15:09 +0000)] 
Use EWMA instead of bare rtt for min rtt.

This allows us to average out minimums due to lulls in activity a bit more.

3 years agoCreate slow-start max for n_ewma_cnt.
Mike Perry [Sun, 31 Jul 2022 16:38:34 +0000 (16:38 +0000)] 
Create slow-start max for n_ewma_cnt.

Since slow-start now checks every sendme, lower EWMA is better.

3 years agoImplement RFC3742 Limited Slow Start
Mike Perry [Fri, 22 Jul 2022 17:00:22 +0000 (17:00 +0000)] 
Implement RFC3742 Limited Slow Start

RFC3742 updates the cwnd every sendme during slow start, and backs off of the
exponential growth based on a cap parameter.

3 years agoMerge branch 'maint-0.4.5' into maint-0.4.6
David Goulet [Wed, 10 Aug 2022 17:59:20 +0000 (13:59 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.6

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Wed, 10 Aug 2022 17:59:20 +0000 (13:59 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agofallbackdirs: Update list from maint-0.4.7
David Goulet [Wed, 10 Aug 2022 17:59:14 +0000 (13:59 -0400)] 
fallbackdirs: Update list from maint-0.4.7

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoMerge branch 'maint-0.4.5' into maint-0.4.6
David Goulet [Wed, 10 Aug 2022 17:41:25 +0000 (13:41 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.6

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Wed, 10 Aug 2022 17:41:25 +0000 (13:41 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agogeoip: Update files from maint-0.4.7
David Goulet [Wed, 10 Aug 2022 17:41:22 +0000 (13:41 -0400)] 
geoip: Update files from maint-0.4.7

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoignore families for L2 guard independence
Roger Dingledine [Tue, 9 Aug 2022 20:39:26 +0000 (16:39 -0400)] 
ignore families for L2 guard independence

mike is concerned that we would get too much exposure to adversaries,
if we enforce that none of our L2 guards can be in the same family.

this change set now essentially finishes the feature that commit a77727cdc
was attempting to add, but strips the "_and_family" part of that plan.

3 years agomake L2 vanguards actually independent
Roger Dingledine [Thu, 7 Jul 2022 05:16:53 +0000 (01:16 -0400)] 
make L2 vanguards actually independent

We had omitted some checks for whether our vanguards (second layer
guards from proposal 333) overlapped or came from the same family.
Now make sure to pick each of them to be independent.

Fixes bug 40639; bugfix on 0.4.7.1-alpha.

3 years agoman: Fix typo for AuthDirMiddleOnly option
David Goulet [Mon, 8 Aug 2022 18:14:37 +0000 (14:14 -0400)] 
man: Fix typo for AuthDirMiddleOnly option

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agodirauth: Make voting flag threshold tunable via torrc
David Goulet [Thu, 4 Aug 2022 14:03:19 +0000 (10:03 -0400)] 
dirauth: Make voting flag threshold tunable via torrc

Remove UPTIME_TO_GUARANTEE_STABLE, MTBF_TO_GUARANTEE_STABLE,
TIME_KNOWN_TO_GUARANTEE_FAMILIAR WFU_TO_GUARANTEE_GUARD and replace each
of them with a tunnable torrc option.

Related to #40652

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agodirauth: Add a AuthDirVoteGuard to pin Guard flags
David Goulet [Thu, 4 Aug 2022 13:39:15 +0000 (09:39 -0400)] 
dirauth: Add a AuthDirVoteGuard to pin Guard flags

Related to #40652

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoMerge branch 'maint-0.4.5' into maint-0.4.6
David Goulet [Tue, 2 Aug 2022 20:14:02 +0000 (16:14 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.6

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Tue, 2 Aug 2022 20:14:02 +0000 (16:14 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agoMerge branch 'tor-gitlab/mr/608' into maint-0.4.5
David Goulet [Tue, 2 Aug 2022 20:13:58 +0000 (16:13 -0400)] 
Merge branch 'tor-gitlab/mr/608' into maint-0.4.5

3 years agoMerge branch 'maint-0.4.5' into maint-0.4.6
David Goulet [Tue, 2 Aug 2022 20:08:50 +0000 (16:08 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.6

3 years agoMerge branch 'maint-0.4.6' into maint-0.4.7
David Goulet [Tue, 2 Aug 2022 20:08:50 +0000 (16:08 -0400)] 
Merge branch 'maint-0.4.6' into maint-0.4.7

3 years agorelay: Don't send DESTROY remote reason backward or forward
David Goulet [Tue, 2 Aug 2022 19:49:03 +0000 (15:49 -0400)] 
relay: Don't send DESTROY remote reason backward or forward

Fixes #40649

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoChanges file for bug 40644.
Mike Perry [Tue, 2 Aug 2022 17:33:55 +0000 (17:33 +0000)] 
Changes file for bug 40644.

3 years agoAdd an underflow check to a cwnd error condition.
Mike Perry [Tue, 26 Jul 2022 22:28:02 +0000 (22:28 +0000)] 
Add an underflow check to a cwnd error condition.

3 years agoconn: Notify btrack subsys on normal OR conn close
David Goulet [Mon, 1 Aug 2022 14:58:40 +0000 (10:58 -0400)] 
conn: Notify btrack subsys on normal OR conn close

Fixes #40604

Signed-off-by: David Goulet <dgoulet@torproject.org>
3 years agoMerge branch 'maint-0.4.5' into maint-0.4.6
David Goulet [Wed, 27 Jul 2022 15:33:19 +0000 (11:33 -0400)] 
Merge branch 'maint-0.4.5' into maint-0.4.6