Nick Mathewson
d04b708b4b
Merge branch 'maint-0.4.1' into maint-0.4.2
2020-05-06 16:47:03 -04:00
Nick Mathewson
28f453c476
Merge branch 'maint-0.3.5' into maint-0.4.1
2020-05-06 16:47:03 -04:00
Nick Mathewson
82effefb69
Merge branch 'maint-0.4.3'
2020-05-06 16:47:03 -04:00
Nick Mathewson
fecc5fd38d
Merge branch 'maint-0.4.2' into maint-0.4.3
2020-05-06 16:47:03 -04:00
Nick Mathewson
1041306092
Merge branch 'bug34078_prelim_041' into maint-0.4.1
2020-05-06 16:46:52 -04:00
Nick Mathewson
78a72f8196
Merge branch 'bug34078_prelim_035' into maint-0.3.5
2020-05-06 16:46:31 -04:00
Nick Mathewson
3e42464f5a
Merge branch 'bug34078_prelim_035' into bug34078_prelim_041
2020-05-06 15:18:36 -04:00
Nick Mathewson
3d3641152b
Remove an incorrect "Fall through" comment.
2020-05-06 15:08:02 -04:00
Nick Mathewson
8798c0a94a
address.c: add a single (harmless) missing break;
2020-05-06 15:08:02 -04:00
Nick Mathewson
37b8324ed3
include compat_compiler for ed25519_donna
2020-05-06 15:08:02 -04:00
Nick Mathewson
9fe23b8672
Replace some "fall through" comments not at the end of a case.
2020-05-06 15:08:02 -04:00
Nick Mathewson
75547c01a3
Replace a "fall through" comment that was outside a switch.
2020-05-06 15:08:02 -04:00
Nick Mathewson
6c3c94357c
Add a fallthrough macro.
...
This macro defers to __attribute__((fallthrough)) on GCC (and
clang). Previously we had been using GCC's magic /* fallthrough */
comments, but clang very sensibly doesn't accept those.
Since not all compiler recognize it, we only define it when our
configure script detects that it works.
Part of a fix for 34078.
2020-05-06 15:08:02 -04:00
David Goulet
c81c5a2646
relay: Rename relay_resolve_addr.{c|h} file
...
New name is more accurate semantically.
Closes #33789
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-05-05 15:34:58 -04:00
Alex Xu (Hello71)
42dfcd0ae3
core/or: Lift slow call out of loop, #33977
2020-05-05 15:07:42 -04:00
David Goulet
2e519fbfb0
changes: File for #33789
...
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-05-05 14:24:04 -04:00
David Goulet
a25f167072
config: New file resolve_addr.{c|h}
...
Move a series of function from config.c into that new file which is related to
address resolving.
Part of #33789
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-05-05 14:24:04 -04:00
David Goulet
445df9e7b5
relay: New file relay_resolve_addr.{c|h}
...
This commit moves router_pick_published_address() and the related helper
functions into the new file.
The log_addr_has_changed() function has been made public in router.h so we can
use it in relay_resolve_addr.c.
This is a refactoring as part of Sponsor 55. Only code movement at this
commit.
Part of #33789
Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-05-05 14:24:04 -04:00
Nick Mathewson
f96b6ccee1
Merge branch 'maint-0.4.3'
2020-05-04 10:25:53 -04:00
Nick Mathewson
bbfc498e21
Merge branch 'maint-0.4.1' into maint-0.4.2
2020-05-04 10:25:52 -04:00
Nick Mathewson
e61867416e
Merge branch 'maint-0.4.2' into maint-0.4.3
2020-05-04 10:25:52 -04:00
Nick Mathewson
711385c47f
Merge branch 'bug34077_043' into maint-0.4.3
2020-05-04 10:25:45 -04:00
Nick Mathewson
a02e866642
Merge branch 'bug34077_041' into maint-0.4.1
2020-05-04 10:14:38 -04:00
Nick Mathewson
b1c383e3e6
Fix a GCC 10.0.1 compilation error.
...
Do not try to stuff "HS_DESC_DECODE_GENERIC_ERROR" (-1) into a
socks5_reply_status_t (enum). It doesn't actually make sense, and
isn't one of our documented extensions.
(This can only happen on a nonfatal assertion that we haven't seen,
so it probably isn't happening in practice.)
Fixes another case of bug 34077; bugfix on 0.4.3.1-alpha.
2020-04-30 23:04:56 -04:00
Nick Mathewson
6aaee6133d
Merge branch 'bug34077_042' into bug34077_043
2020-04-30 23:01:58 -04:00
Nick Mathewson
b4b1882da0
Merge branch 'bug34077_041' into bug34077_042
2020-04-30 22:59:08 -04:00
Nick Mathewson
d7e166bd95
Fix a GCC 10.0.1 compilation warning.
...
Fixes 34077 for 0.4.1; bugfix on 0.4.0.3-alpha. (Specifically, GCC
first gives this warning for 9eeff921ae
)
2020-04-30 22:56:31 -04:00
teor
6dc9930d3a
Merge branch 'pr1870_squashed'
2020-04-30 22:22:09 +10:00
Neel Chauhan
7bf257b129
Define and use TOR_ADDRPORT_BUF_LEN
2020-04-30 22:21:48 +10:00
teor
efcae919ae
practracker: Accept the connection buf refactor
...
Accept a few extra lines from the connection_buf_read_from_socket()
refactor.
Cleanup after 33131.
2020-04-30 13:55:26 +10:00
teor
3eca667ae4
relay: Fix a comment typo in the selftest.c header
2020-04-30 13:54:40 +10:00
Nick Mathewson
49800cf539
Merge remote-tracking branch 'tor-github/pr/1864/head'
2020-04-29 19:16:40 -04:00
teor
ed4420b4b8
practracker: Allow an extra line in tor_addr_parse_mask_ports()
...
We added a cast, and wrapped a line.
2020-04-30 06:54:42 +10:00
teor
15a4180a7e
relay: Refactor can extend over IPv6 checks
...
Split "can extend over IPv6" and "has advertised IPv6 ORPort" into
separate functions. They currently have the same result, but this may
change in 33818 with ExtendAllowIPv6Addresses.
Part of 33817.
2020-04-30 06:54:42 +10:00
teor
066d2deb3d
channel: Refactor matches target address function
...
Refactor channel_matches_target_addr_for_extend() to return a boolean
result.
Part of 33817.
2020-04-30 06:54:42 +10:00
teor
496ddd2877
relay: Refactor extend address validity function
...
Rename the function, and give it a boolean return value.
No behaviour change.
Part of 33817.
2020-04-30 06:54:42 +10:00
teor
cd7e2fc210
net: Make all address bytes functions take uint8_t *
...
Part of 33817.
2020-04-30 06:54:42 +10:00
teor
f62b051e87
Rename tor_addr_get_ipv6_bytes to tor_addr_copy_ipv6_bytes
...
This is an automated commit, generated by this command:
./scripts/maint/rename_c_identifier.py \
tor_addr_get_ipv6_bytes tor_addr_copy_ipv6_bytes
2020-04-30 05:54:39 +10:00
teor
528a1fe985
changes: file for 33817
2020-04-29 22:43:09 +10:00
teor
bcec1ec071
relay: Refactor choosing extend IPs
...
Flatten the logic in circuit_choose_ip_ap_for_extend().
Part of 33817.
2020-04-29 22:43:09 +10:00
teor
df5ea29775
relay: Add tests for choosing extend IPs
...
Part of 33817.
2020-04-29 22:43:09 +10:00
teor
9a6186c267
relay: Refactor circuit_open_connection_for_extend()
...
Refactor circuit_open_connection_for_extend(), splitting out the IP
address choice code into a new function.
Adds unit tests. No behaviour changes in tor.
Part of 33817.
2020-04-29 22:43:09 +10:00
teor
cab05a84cd
relay: Add IP version tests for circuit extends
...
Add IPv4-only and IPv6-only tests for
circuit_open_connection_for_extend().
Part of 33817.
2020-04-29 22:43:09 +10:00
teor
c3e058dfac
relay: Choose between IPv4 and IPv6 extends at random
...
When an EXTEND2 cell has an IPv4 and an IPv6 address, choose one of them
uniformly at random.
Part of 33817.
2020-04-29 22:43:09 +10:00
teor
a0b12f3cd4
relay/circuitbuild: Refactor open connection for extend
...
Re-use the newly created extend_info to launch the connection in
circuit_open_connection_for_extend().
No behaviour change.
Part of 33817.
2020-04-29 22:43:09 +10:00
teor
063505446f
test/circuitbuild: Disable some tests when ALL_BUGS_ARE_FATAL
...
Some tests use IF_BUG_ONCE(), which is fatal when ALL_BUGS_ARE_FATAL,
after the fixes in 33917.
Also run "make autostyle" on these changes.
Part of 33817.
2020-04-29 22:43:09 +10:00
teor
6c458d2d6e
log/util_bug: Make IF_BUG_ONCE() support ALL_BUGS_ARE_FATAL
...
... and DISABLE_ASSERTS_IN_UNIT_TESTS.
Make all of tor's assertion macros support the ALL_BUGS_ARE_FATAL and
DISABLE_ASSERTS_IN_UNIT_TESTS debugging modes.
Implements these modes for IF_BUG_ONCE(). (It used to log a non-fatal
warning, regardless of the debugging mode.)
Fixes bug 33917; bugfix on 0.2.9.1-alpha.
2020-04-29 22:43:09 +10:00
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
ec5f4f3c5a
relay/circuitbuild: Report IPv6 addresses in a debug log
...
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