commit 1b9e77349ffbe813c7b16af67c069d967327f63b Author: Kris Katterjohn katterjohn@gmail.com Date: Fri Jan 25 15:52:40 2019 -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 --- changes/bug13221 | 5 +++++ src/or/config.c | 8 ++++---- 2 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/changes/bug13221 b/changes/bug13221 new file mode 100644 index 000000000..13935a192 --- /dev/null +++ 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 index 810f1e9a7..e0d1794bd 100644 --- 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; }
tor-commits@lists.torproject.org