tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit 1b9e77349ffbe813c7b16af67c069d967327f63b
parent a3f9ddcf033881ac78cda0aa7e6a9fd7195868cc
Author: Kris Katterjohn <katterjohn@gmail.com>
Date:   Fri, 25 Jan 2019 15:52:40 -0600

Fix some error-checking logic and a misleading error message

When IPv4Only (IPv6Only) was used but the address could not be
interpreted as a IPv4 (IPv6) address, the error message referred
to the wrong IP version.

This also fixes up the error-checking logic so it's more precise
about what's being checked.

Fixes bug 13221; bugfix on 0.2.3.9-alpha

Signed-off-by: Kris Katterjohn <katterjohn@gmail.com>

Diffstat:
Achanges/bug13221 | 5+++++
Msrc/or/config.c | 8++++----
2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/changes/bug13221 b/changes/bug13221 @@ -0,0 +1,5 @@ + o Minor bugfixes (logging): + - Correct a misleading error message when IPv4Only or IPv6Only + is used but the resolved address can not be interpreted as an + address of the specified IP version. Fixes bug 13221; bugfix + on 0.2.3.9-alpha. Patch from Kris Katterjohn. diff --git a/src/or/config.c b/src/or/config.c @@ -6650,13 +6650,13 @@ parse_port_config(smartlist_t *out, portname, escaped(ports->value)); goto err; } - if (bind_ipv4_only && tor_addr_family(&addr) == AF_INET6) { - log_warn(LD_CONFIG, "Could not interpret %sPort address as IPv6", + if (bind_ipv4_only && tor_addr_family(&addr) != AF_INET) { + log_warn(LD_CONFIG, "Could not interpret %sPort address as IPv4", portname); goto err; } - if (bind_ipv6_only && tor_addr_family(&addr) == AF_INET) { - log_warn(LD_CONFIG, "Could not interpret %sPort address as IPv4", + if (bind_ipv6_only && tor_addr_family(&addr) != AF_INET6) { + log_warn(LD_CONFIG, "Could not interpret %sPort address as IPv6", portname); goto err; }