Browse Source

Avoid tor_fragile_assert() failure with DNSPort on RESOLVED_TYPE_ERROR

The tor_fragile_assert() bug has existed here since c8a5e2d588e0d91
in tor-0.2.1.7-alpha forever, but tor_fragile_assert() was mostly a
no-op until 0.2.9.1-alpha.

Fixes bug 19869.
Nick Mathewson 7 years ago
parent
commit
d288704023
2 changed files with 8 additions and 0 deletions
  1. 4 0
      changes/bug19869
  2. 4 0
      src/or/dnsserv.c

+ 4 - 0
changes/bug19869

@@ -0,0 +1,4 @@
+  o Minor bugfixes (DNSPort):
+    - On DNSPort, stop logging a BUG warning on a failed hostname lookup.
+      Fixes bug 19869; bugfix on 0.2.9.1-alpha.
+

+ 4 - 0
src/or/dnsserv.c

@@ -290,6 +290,10 @@ evdns_get_orig_address(const struct evdns_server_request *req,
   case RESOLVED_TYPE_IPV6:
     type = EVDNS_TYPE_AAAA;
     break;
+  case RESOLVED_TYPE_ERROR:
+  case RESOLVED_TYPE_ERROR_TRANSIENT:
+     /* Addr doesn't matter, since we're not sending it back in the reply.*/
+    return addr;
   default:
     tor_fragile_assert();
     return addr;