From d41f1cd3ed347c45c76cec891d7ff90a0cc6724c Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Wed, 6 May 2020 17:07:12 -0400 Subject: [PATCH 1/3] btrack_orconn_cevent.c: Add a missing "break;" --- src/feature/control/btrack_orconn_cevent.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/feature/control/btrack_orconn_cevent.c b/src/feature/control/btrack_orconn_cevent.c index 535aa8f614..a00eb042d5 100644 --- a/src/feature/control/btrack_orconn_cevent.c +++ b/src/feature/control/btrack_orconn_cevent.c @@ -146,6 +146,7 @@ bto_cevent_apconn(const bt_orconn_t *bto) break; case OR_CONN_STATE_OPEN: control_event_bootstrap(BOOTSTRAP_STATUS_AP_HANDSHAKE_DONE, 0); + break; default: break; } From b7fcbb28d4c3baae4099b709e8df65fc69a5697a Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Wed, 6 May 2020 17:09:27 -0400 Subject: [PATCH 2/3] connection_or_finished_flushing(): add a missing "break;" This one is harmless like the others (so far) --- src/core/or/connection_or.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/core/or/connection_or.c b/src/core/or/connection_or.c index 76bfbf0b30..5571d90f8f 100644 --- a/src/core/or/connection_or.c +++ b/src/core/or/connection_or.c @@ -731,6 +731,7 @@ connection_or_finished_flushing(or_connection_t *conn) } break; } + break; case OR_CONN_STATE_OPEN: case OR_CONN_STATE_OR_HANDSHAKING_V2: case OR_CONN_STATE_OR_HANDSHAKING_V3: From b444096be5ac509be1b2b68dc8e18ca1f558fef5 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Wed, 6 May 2020 17:15:37 -0400 Subject: [PATCH 3/3] Fix a boolean logic error when logging about invalid hostnames. Fixes bug 34131; bugfix on 0.4.3.1-alpha. --- changes/bug34131 | 4 ++++ src/core/or/connection_edge.c | 6 ++++-- 2 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 changes/bug34131 diff --git a/changes/bug34131 b/changes/bug34131 new file mode 100644 index 0000000000..eb3a3feba2 --- /dev/null +++ b/changes/bug34131 @@ -0,0 +1,4 @@ + o Minor bugfixes (logging): + - Fix a logic error in a log message about whether an address was + invalid. Previously, the code would never report that onion addresses + were onion addresses. Fixes bug 34131; bugfix on 0.4.3.1-alpha. diff --git a/src/core/or/connection_edge.c b/src/core/or/connection_edge.c index 7f707a5660..37e83ba71e 100644 --- a/src/core/or/connection_edge.c +++ b/src/core/or/connection_edge.c @@ -1643,9 +1643,11 @@ parse_extended_hostname(char *address, hostname_type_t *type_out) failed: /* otherwise, return to previous state and return 0 */ *s = '.'; + const bool is_onion = (*type_out == ONION_V2_HOSTNAME) || + (*type_out == ONION_V3_HOSTNAME); log_warn(LD_APP, "Invalid %shostname %s; rejecting", - (*type_out == (ONION_V2_HOSTNAME || ONION_V3_HOSTNAME) ? "onion " : ""), - safe_str_client(address)); + is_onion ? "onion " : "", + safe_str_client(address)); return false; }