aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/or/router.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/or/router.c b/src/or/router.c
index 3fd8b3c070..6c05af9173 100644
--- a/src/or/router.c
+++ b/src/or/router.c
@@ -2089,6 +2089,8 @@ check_descriptor_ipaddress_changed(time_t now)
{
uint32_t prev, cur;
const or_options_t *options = get_options();
+ char *hostname = NULL;
+
(void) now;
if (!desc_routerinfo)
@@ -2096,18 +2098,26 @@ check_descriptor_ipaddress_changed(time_t now)
/* XXXX ipv6 */
prev = desc_routerinfo->addr;
- if (resolve_my_address(LOG_INFO, options, &cur, NULL) < 0) {
+ if (resolve_my_address(LOG_INFO, options, &cur, &hostname) < 0) {
log_info(LD_CONFIG,"options->Address didn't resolve into an IP.");
return;
}
if (prev != cur) {
+ char *source;
tor_addr_t tmp_prev, tmp_cur;
+
tor_addr_from_ipv4h(&tmp_prev, prev);
tor_addr_from_ipv4h(&tmp_cur, cur);
- log_addr_has_changed(LOG_NOTICE, &tmp_prev, &tmp_cur, "resolve");
+
+ tor_asprintf(&source, "resolved from %s", hostname);
+ log_addr_has_changed(LOG_NOTICE, &tmp_prev, &tmp_cur, source);
+ tor_free(source);
+
ip_address_changed(0);
}
+
+ tor_free(hostname);
}
/** The most recently guessed value of our IP address, based on directory