diff options
-rw-r--r-- | changes/ticket40201 | 3 | ||||
-rw-r--r-- | src/app/config/resolve_addr.c | 12 |
2 files changed, 13 insertions, 2 deletions
diff --git a/changes/ticket40201 b/changes/ticket40201 new file mode 100644 index 0000000000..cdf8d99172 --- /dev/null +++ b/changes/ticket40201 @@ -0,0 +1,3 @@ + o Minor bugfixes (logging, relay): + - Logs the address discovered by the directory authorities if none were + configured or detected before. Fixes bug 40201; bugfix on 0.4.5.1-alpha. diff --git a/src/app/config/resolve_addr.c b/src/app/config/resolve_addr.c index b811a68b8c..080cb967bc 100644 --- a/src/app/config/resolve_addr.c +++ b/src/app/config/resolve_addr.c @@ -130,8 +130,16 @@ resolved_addr_set_suggested(const tor_addr_t *addr) tor_addr_family(addr) != AF_INET6)) { return; } - tor_addr_copy(&last_suggested_addrs[af_to_idx(tor_addr_family(addr))], - addr); + + /* In case we don't have a configured address, log that we will be using the + * one discovered from the dirauth. */ + const int idx = af_to_idx(tor_addr_family(addr)); + if (tor_addr_is_null(&last_resolved_addrs[idx]) && + !tor_addr_eq(&last_suggested_addrs[idx], addr)) { + log_notice(LD_CONFIG, "External address seen and suggested by a " + "directory authority: %s", fmt_addr(addr)); + } + tor_addr_copy(&last_suggested_addrs[idx], addr); } /** Copy the last resolved address of family into addr_out. |