diff --git a/changes/bug26892 b/changes/bug26892 new file mode 100644 index 0000000000000000000000000000000000000000..6fc8a032042fb9ba0c30f9be8abc90ff3e73d805 --- /dev/null +++ b/changes/bug26892 @@ -0,0 +1,6 @@ + o Minor bugfixes (logging): + - As a precaution, do an early return from + log_addr_has_changed() if Tor is running as client. Also, + log a stack trace for debugging as this function should only + be called when Tor runs as server. Fixes bug 26892; + bugfix on 0.1.1.9-alpha. diff --git a/src/feature/relay/router.c b/src/feature/relay/router.c index 973d3e1100857ddf25d146e88ac69b39fcf6bfd4..0cc4887232e3de37f9539db95bc7762b76507caf 100644 --- a/src/feature/relay/router.c +++ b/src/feature/relay/router.c @@ -2686,6 +2686,9 @@ log_addr_has_changed(int severity, char addrbuf_prev[TOR_ADDR_BUF_LEN]; char addrbuf_cur[TOR_ADDR_BUF_LEN]; + if (BUG(!server_mode(get_options()))) + return; + if (tor_addr_to_str(addrbuf_prev, prev, sizeof(addrbuf_prev), 1) == NULL) strlcpy(addrbuf_prev, "???", TOR_ADDR_BUF_LEN); if (tor_addr_to_str(addrbuf_cur, cur, sizeof(addrbuf_cur), 1) == NULL)