teor
16f3f6a1af
relay/circuitbuild: Re-use IPv6 connections for circuits
...
Search for existing connections using the remote IPv4 and IPv6
addresses.
Part of 33817.
2020-04-29 22:43:09 +10:00
teor
f8f688b309
channel: Make channel_matches_target_addr_for_extend() static
...
It isn't used outside channel.c.
Part of 33817.
2020-04-29 22:43:09 +10:00
teor
587a7fbcf6
core/or: Check extends for zero addresses and ports
...
Check for invalid zero IPv4 addresses and ports, when sending and
receiving extend cells.
Fixes bug 33900; bugfix on 0.2.4.8-alpha.
2020-04-29 22:43:09 +10:00
teor
bd6ab90ad4
core/or: Support IPv6 EXTEND2 cells
...
Allow clients and relays to send dual-stack and IPv6-only EXTEND2 cells.
Parse dual-stack and IPv6-only EXTEND2 cells on relays.
Relays do not make connections or extend circuits via IPv6: that's the
next step.
Closes ticket 33901.
2020-04-29 22:43:09 +10:00
teor
7517e1b5d3
channeltls: Clarify a relay impersonation defence
...
Clarify the comments in channel_tls_matches_target_method(), and make
it clear that the attack is a covert attack.
2020-04-28 21:11:10 +10:00
Nick Mathewson
7f9eaec538
Merge remote-tracking branch 'tor-github/pr/1862/head'
2020-04-24 08:14:59 -04:00
Nick Mathewson
b2849f449b
Merge branch 'maint-0.4.3'
2020-04-21 12:22:37 -04:00
teor
42507429ce
channeltls: Stop truncating IPv6 in logs
...
Stop truncating IPv6 addresses and ports in channel and connection logs.
Fixes bug 33918; bugfix on 0.2.4.4-alpha.
2020-04-21 12:22:30 -04:00
teor
a2daca594b
core/or: Update file comment in connection_or.c
...
Fix a typo, and say "v3 (and later) handshake".
Comment-only change.
2020-04-14 14:55:37 +10:00
teor
8c55d34e0a
core/or: Accurately log remote relay IPv6 addresses
...
Log IPv6 addresses on connections where this relay is the responder.
Previously, responding relays would replace the remote IPv6 address with
the IPv4 address from the consensus.
(The port is replaced with the IPv6 ORPort from the consensus, we will
resolve this issue in 33898.)
Fixes bug 33899; bugfix on 0.3.1.1-alpha.
2020-04-14 12:21:49 +10:00
teor
41fa07f751
core/or: Allow IPv6 connections to be canonical
...
Consider IPv6 addresses when checking if a connection is canonical.
In 17604, relays assumed that a remote relay could consider an IPv6
connection canonical, but did not set the canonical flag on their side
of the connection.
Fixes bug 33899; bugfix on 0.3.1.1-alpha.
2020-04-14 12:16:48 +10:00
teor
ab8ff32bec
core/or: Remove unused function prototype
...
Remove the unused function prototype for connection_or_get_for_extend().
There is no function implementation.
Part of 33817.
2020-04-14 10:37:20 +10:00
Nick Mathewson
80031db32a
Merge remote-tracking branch 'tor-github/pr/1801/head'
2020-04-09 11:50:20 -04:00
teor
2d6f00e45b
Merge branch 'maint-0.4.2' into maint-0.4.3
2020-04-09 11:03:34 +10:00
teor
2d7e08d57e
Merge branch 'maint-0.4.1' into maint-0.4.2
2020-04-09 11:03:27 +10:00
teor
987f2fa50a
Merge branch 'maint-0.3.5' into maint-0.4.1
2020-04-09 11:03:20 +10:00
teor
2b66429fcf
core/or: Make some functions mockable
...
Preparation for testing circuit_extend().
Part of 33633.
2020-04-09 11:00:04 +10:00
teor
8f3cbe755b
channel: Rewrite the channel_get_for_extend() comments
...
Explain what the function does now.
Fix some typos.
Part of 33633.
2020-04-09 11:00:04 +10:00
teor
42fdbbb50b
circuitbuild: Make some functions mockable
...
Part of 33633.
2020-04-09 11:00:04 +10:00
teor
065ccda4f6
Merge branch 'pr1838_squashed'
2020-04-07 17:36:17 +10:00
teor
00ce25a720
channel: Fix a comment typo
2020-04-06 19:10:30 +10:00
teor
6df16022a1
channel: Remove a newline at the start of the file
2020-04-06 19:08:33 +10:00
teor
1e75974362
core/or: Fix a comment typo in onion.h
...
Comment-only change.
2020-04-04 15:05:34 +10:00
teor
f863954f1e
Move LOG_PROTOCOL_WARN to app/config.h
...
LOG_PROTOCOL_WARN was in core/or.h, but the function it depends on is in
app/config.h. Put them in the same header, to reduce dependencies.
Part of 33633.
2020-04-01 09:17:18 +10:00
Roger Dingledine
3a0f200505
fix typo in struct addr_policy_t comment
2020-03-27 03:48:15 -04:00
Nick Mathewson
3f6e37b1bc
Add a SUBSYS_DECLARE_LOCATION() to every subsystem.
2020-03-26 11:20:20 -04:00
David Goulet
cf58b0b369
Merge branch 'maint-0.4.3'
2020-03-26 09:15:01 -04:00
David Goulet
e472737297
Merge branch 'tor-github/pr/1794' into maint-0.4.3
2020-03-26 09:14:25 -04:00
teor
81687f5bc9
relay: Split out relay-only circuit building
...
Move the relay-only circuit building functions into a new file.
Part of 33633.
2020-03-20 18:05:10 +10:00
teor
fdba6ff0c0
relay: Move inform_testing_rechability() to relay
...
Move inform_testing_rechability() to the relay module, and disable it
when the relay module is disabled.
Part of 33633.
2020-03-20 18:05:10 +10:00
Neel Chauhan
52b4b7e492
Fix erroneous spaces in circuitmux_ewma.c
2020-03-19 13:18:26 -07:00
teor
fe5ecaa270
Merge branch 'maint-0.4.3'
2020-03-19 17:02:02 +10:00
teor
259fad5877
Merge remote-tracking branch 'tor-github/pr/1806' into maint-0.4.3
2020-03-19 16:56:49 +10:00
Nick Mathewson
d4595b344a
Merge branch 'maint-0.4.3'
2020-03-17 13:56:10 -04:00
Nick Mathewson
6803373aab
Merge branch 'maint-0.4.2' into maint-0.4.3
2020-03-17 13:56:10 -04:00
Nick Mathewson
4ee2699416
Merge branch 'maint-0.4.1' into maint-0.4.2
2020-03-17 13:56:10 -04:00
David Goulet
ee3e987898
sendme: Emit version 1 by default
...
Closes #33623
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-03-17 10:14:57 -04:00
teor
44f92e8e42
Merge remote-tracking branch 'tor-github/pr/1784'
2020-03-17 23:11:31 +10:00
Nick Mathewson
78bcfc1280
circpad_setup_machine_on_circ(): exit early on error.
...
This function does a nonfatal assertion to make sure that a machine
is not registered twice, but Tobias Pulls found a case where it
happens. Instead, make the function exit early so that it doesn't
cause a remotely triggered memory leak.
Fixes bug 33619; bugfix on 0.4.0.1-alpha. This is also tracked as
TROVE-2020-004.
2020-03-16 17:59:57 -04:00
teor
cc2fb91ea5
connection: Stop forcing some ports to prefer IPv6
...
Stop forcing all non-SOCKSPorts to prefer IPv6 exit connections.
Instead, prefer IPv6 connections by default, but allow users to change
their configs using the "NoPreferIPv6" port flag.
Fixes bug 33608; bugfix on 0.4.3.1-alpha.
2020-03-13 12:28:19 +10:00
David Goulet
894ff2dc84
dos: Pass transport name on new client connection
...
For a bridge configured with a pluggable transport, the transport name is
used, with the IP address, for the GeoIP client cache entry.
However, the DoS subsystem was not aware of it and always passing NULL when
doing a lookup into the GeoIP cache.
This resulted in bridges with a PT are never able to apply DoS defenses for
newly created connections.
Fixes #33491
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-03-10 14:45:13 -04:00
David Goulet
6684c6e17f
Merge branch 'tor-github/pr/1751'
2020-03-09 09:33:05 -04:00
Neel Chauhan
7d673e70b0
Remove the ClientAutoIPv6ORPort option
2020-03-09 09:33:00 -04:00
Nick Mathewson
ba8d71d9c3
Merge remote-tracking branch 'tor-github/pr/1774/head'
2020-03-05 09:10:24 -05:00
Nick Mathewson
686494f0f7
Merge branch 'clang_format_prep_3'
2020-03-05 08:23:32 -05:00
Roger Dingledine
29542ccdcc
Remove surprising empty line in info-level cbt log
...
Fixes bug 33531; bugfix on 0.3.3.1-alpha.
2020-03-04 13:45:34 -05:00
Nick Mathewson
11adf0f46f
Merge remote-tracking branch 'tor-github/pr/1750/head'
2020-02-25 12:58:23 -05:00
Nick Mathewson
d4d5d9d1d1
Merge branch 'ticket33316_squashed'
2020-02-24 07:49:45 -05:00
Nick Mathewson
63b7dabdea
Merge ocirc and orconn events into or subsystem.
...
Pubsub events are not supposed to have their own subsystems; they're
supposed to be part of a parent subsystem.
2020-02-24 07:49:39 -05:00
Nick Mathewson
caa392a73a
Merge remote-tracking branch 'tor-github/pr/1685/head'
2020-02-24 07:45:20 -05:00