summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--changes/ticket288795
-rw-r--r--src/feature/relay/dns.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/changes/ticket28879 b/changes/ticket28879
new file mode 100644
index 0000000000..126420f6ca
--- /dev/null
+++ b/changes/ticket28879
@@ -0,0 +1,5 @@
+ o Minor bugfixes (correctness):
+ - Fix an unreached code-path where we checked the value of "hostname"
+ inside send_resolved_hostnam_cell(). Previously, we used it before
+ checking it; now we check it first. Fixes bug 28879; bugfix on
+ 0.1.2.7-alpha.
diff --git a/src/feature/relay/dns.c b/src/feature/relay/dns.c
index bc507d47f6..cc213ff8d6 100644
--- a/src/feature/relay/dns.c
+++ b/src/feature/relay/dns.c
@@ -586,8 +586,11 @@ send_resolved_hostname_cell,(edge_connection_t *conn,
char buf[RELAY_PAYLOAD_SIZE];
size_t buflen;
uint32_t ttl;
+
+ if (BUG(!hostname))
+ return;
+
size_t namelen = strlen(hostname);
- tor_assert(hostname);
tor_assert(namelen < 256);
ttl = dns_clip_ttl(conn->address_ttl);