Loading src/or/directory.c +1 −1 Original line number Diff line number Diff line Loading @@ -1257,7 +1257,7 @@ connection_dir_client_reached_eof(dir_connection_t *conn) if (conn->dirconn_direct) { char *guess = http_get_header(headers, X_ADDRESS_HEADER); if (guess) { router_new_address_suggestion(guess); router_new_address_suggestion(guess, conn); tor_free(guess); } } Loading src/or/or.h +2 −1 Original line number Diff line number Diff line Loading @@ -3779,7 +3779,8 @@ void mark_my_descriptor_dirty_if_older_than(time_t when); void mark_my_descriptor_dirty(void); void check_descriptor_bandwidth_changed(time_t now); void check_descriptor_ipaddress_changed(time_t now); void router_new_address_suggestion(const char *suggestion); void router_new_address_suggestion(const char *suggestion, const dir_connection_t *d_conn); int router_compare_to_my_exit_policy(edge_connection_t *conn); routerinfo_t *router_get_my_routerinfo(void); extrainfo_t *router_get_my_extrainfo(void); Loading src/or/router.c +9 −1 Original line number Diff line number Diff line Loading @@ -1464,7 +1464,8 @@ static uint32_t last_guessed_ip = 0; * If this address is different from the one we think we are now, and * if our computer doesn't actually know its IP address, then switch. */ void router_new_address_suggestion(const char *suggestion) router_new_address_suggestion(const char *suggestion, const dir_connection_t *d_conn) { uint32_t addr, cur = 0; struct in_addr in; Loading Loading @@ -1494,6 +1495,13 @@ router_new_address_suggestion(const char *suggestion) /* Don't believe anybody who says our IP is, say, 127.0.0.1. */ return; } if (addr == d_conn->_base.addr) { /* Don't believe anybody who says our IP is their IP. */ log_notice(LD_DIR, "A directory server told us our IP is %s, but that " "seems to be the IP of the directory server saying these " "things. Ignoring.", suggestion); return; } /* Okay. We can't resolve our own address, and X-Your-Address-Is is giving * us an answer different from what we had the last time we managed to Loading Loading
src/or/directory.c +1 −1 Original line number Diff line number Diff line Loading @@ -1257,7 +1257,7 @@ connection_dir_client_reached_eof(dir_connection_t *conn) if (conn->dirconn_direct) { char *guess = http_get_header(headers, X_ADDRESS_HEADER); if (guess) { router_new_address_suggestion(guess); router_new_address_suggestion(guess, conn); tor_free(guess); } } Loading
src/or/or.h +2 −1 Original line number Diff line number Diff line Loading @@ -3779,7 +3779,8 @@ void mark_my_descriptor_dirty_if_older_than(time_t when); void mark_my_descriptor_dirty(void); void check_descriptor_bandwidth_changed(time_t now); void check_descriptor_ipaddress_changed(time_t now); void router_new_address_suggestion(const char *suggestion); void router_new_address_suggestion(const char *suggestion, const dir_connection_t *d_conn); int router_compare_to_my_exit_policy(edge_connection_t *conn); routerinfo_t *router_get_my_routerinfo(void); extrainfo_t *router_get_my_extrainfo(void); Loading
src/or/router.c +9 −1 Original line number Diff line number Diff line Loading @@ -1464,7 +1464,8 @@ static uint32_t last_guessed_ip = 0; * If this address is different from the one we think we are now, and * if our computer doesn't actually know its IP address, then switch. */ void router_new_address_suggestion(const char *suggestion) router_new_address_suggestion(const char *suggestion, const dir_connection_t *d_conn) { uint32_t addr, cur = 0; struct in_addr in; Loading Loading @@ -1494,6 +1495,13 @@ router_new_address_suggestion(const char *suggestion) /* Don't believe anybody who says our IP is, say, 127.0.0.1. */ return; } if (addr == d_conn->_base.addr) { /* Don't believe anybody who says our IP is their IP. */ log_notice(LD_DIR, "A directory server told us our IP is %s, but that " "seems to be the IP of the directory server saying these " "things. Ignoring.", suggestion); return; } /* Okay. We can't resolve our own address, and X-Your-Address-Is is giving * us an answer different from what we had the last time we managed to Loading