use router->addr for log messages and controller events

(rather than router->address)
This commit is contained in:
Roger Dingledine 2013-02-09 21:10:07 -05:00
parent ccaefd65a4
commit e1ec03f819
6 changed files with 29 additions and 22 deletions

View file

@ -564,27 +564,30 @@ int
inform_testing_reachability(void) inform_testing_reachability(void)
{ {
char dirbuf[128]; char dirbuf[128];
char *address;
const routerinfo_t *me = router_get_my_routerinfo(); const routerinfo_t *me = router_get_my_routerinfo();
if (!me) if (!me)
return 0; return 0;
address = tor_dup_ip(me->addr);
control_event_server_status(LOG_NOTICE, control_event_server_status(LOG_NOTICE,
"CHECKING_REACHABILITY ORADDRESS=%s:%d", "CHECKING_REACHABILITY ORADDRESS=%s:%d",
me->address, me->or_port); address, me->or_port);
if (me->dir_port) { if (me->dir_port) {
tor_snprintf(dirbuf, sizeof(dirbuf), " and DirPort %s:%d", tor_snprintf(dirbuf, sizeof(dirbuf), " and DirPort %s:%d",
me->address, me->dir_port); address, me->dir_port);
control_event_server_status(LOG_NOTICE, control_event_server_status(LOG_NOTICE,
"CHECKING_REACHABILITY DIRADDRESS=%s:%d", "CHECKING_REACHABILITY DIRADDRESS=%s:%d",
me->address, me->dir_port); address, me->dir_port);
} }
log_notice(LD_OR, "Now checking whether ORPort %s:%d%s %s reachable... " log_notice(LD_OR, "Now checking whether ORPort %s:%d%s %s reachable... "
"(this may take up to %d minutes -- look for log " "(this may take up to %d minutes -- look for log "
"messages indicating success)", "messages indicating success)",
me->address, me->or_port, address, me->or_port,
me->dir_port ? dirbuf : "", me->dir_port ? dirbuf : "",
me->dir_port ? "are" : "is", me->dir_port ? "are" : "is",
TIMEOUT_UNTIL_UNREACHABILITY_COMPLAINT/60); TIMEOUT_UNTIL_UNREACHABILITY_COMPLAINT/60);
tor_free(address);
return 1; return 1;
} }

View file

@ -87,7 +87,6 @@ static int add_fingerprint_to_dir(const char *nickname, const char *fp,
struct authdir_config_t *list); struct authdir_config_t *list);
static uint32_t static uint32_t
dirserv_get_status_impl(const char *fp, const char *nickname, dirserv_get_status_impl(const char *fp, const char *nickname,
const char *address,
uint32_t addr, uint16_t or_port, uint32_t addr, uint16_t or_port,
const char *platform, const char *contact, const char *platform, const char *contact,
const char **msg, int should_log); const char **msg, int should_log);
@ -336,7 +335,6 @@ dirserv_router_get_status(const routerinfo_t *router, const char **msg)
} }
return dirserv_get_status_impl(d, router->nickname, return dirserv_get_status_impl(d, router->nickname,
router->address,
router->addr, router->or_port, router->addr, router->or_port,
router->platform, router->contact_info, router->platform, router->contact_info,
msg, 1); msg, 1);
@ -350,7 +348,6 @@ dirserv_would_reject_router(const routerstatus_t *rs)
uint32_t res; uint32_t res;
res = dirserv_get_status_impl(rs->identity_digest, rs->nickname, res = dirserv_get_status_impl(rs->identity_digest, rs->nickname,
"", /* address is only used in logs */
rs->addr, rs->or_port, rs->addr, rs->or_port,
NULL, NULL, NULL, NULL,
NULL, 0); NULL, 0);
@ -389,7 +386,6 @@ dirserv_get_name_status(const char *id_digest, const char *nickname)
*/ */
static uint32_t static uint32_t
dirserv_get_status_impl(const char *id_digest, const char *nickname, dirserv_get_status_impl(const char *id_digest, const char *nickname,
const char *address,
uint32_t addr, uint16_t or_port, uint32_t addr, uint16_t or_port,
const char *platform, const char *contact, const char *platform, const char *contact,
const char **msg, int should_log) const char **msg, int should_log)
@ -461,14 +457,14 @@ dirserv_get_status_impl(const char *id_digest, const char *nickname,
if (should_log) if (should_log)
log_info(LD_DIRSERV, log_info(LD_DIRSERV,
"Marking '%s' as bad directory because of address '%s'", "Marking '%s' as bad directory because of address '%s'",
nickname, address); nickname, fmt_addr32(addr));
result |= FP_BADDIR; result |= FP_BADDIR;
} }
if (authdir_policy_badexit_address(addr, or_port)) { if (authdir_policy_badexit_address(addr, or_port)) {
if (should_log) if (should_log)
log_info(LD_DIRSERV, "Marking '%s' as bad exit because of address '%s'", log_info(LD_DIRSERV, "Marking '%s' as bad exit because of address '%s'",
nickname, address); nickname, fmt_addr32(addr));
result |= FP_BADEXIT; result |= FP_BADEXIT;
} }
@ -476,7 +472,7 @@ dirserv_get_status_impl(const char *id_digest, const char *nickname,
if (!authdir_policy_permits_address(addr, or_port)) { if (!authdir_policy_permits_address(addr, or_port)) {
if (should_log) if (should_log)
log_info(LD_DIRSERV, "Rejecting '%s' because of address '%s'", log_info(LD_DIRSERV, "Rejecting '%s' because of address '%s'",
nickname, address); nickname, fmt_addr32(addr));
if (msg) if (msg)
*msg = "Authdir is rejecting routers in this range."; *msg = "Authdir is rejecting routers in this range.";
return FP_REJECT; return FP_REJECT;
@ -484,7 +480,7 @@ dirserv_get_status_impl(const char *id_digest, const char *nickname,
if (!authdir_policy_valid_address(addr, or_port)) { if (!authdir_policy_valid_address(addr, or_port)) {
if (should_log) if (should_log)
log_info(LD_DIRSERV, "Not marking '%s' valid because of address '%s'", log_info(LD_DIRSERV, "Not marking '%s' valid because of address '%s'",
nickname, address); nickname, fmt_addr32(addr));
result |= FP_INVALID; result |= FP_INVALID;
} }
if (reject_unlisted) { if (reject_unlisted) {
@ -3447,7 +3443,7 @@ dirserv_single_reachability_test(time_t now, routerinfo_t *router)
/* IPv4. */ /* IPv4. */
log_debug(LD_OR,"Testing reachability of %s at %s:%u.", log_debug(LD_OR,"Testing reachability of %s at %s:%u.",
router->nickname, router->address, router->or_port); router->nickname, fmt_addr32(router->addr), router->or_port);
tor_addr_from_ipv4h(&router_addr, router->addr); tor_addr_from_ipv4h(&router_addr, router->addr);
chan = channel_tls_connect(&router_addr, router->or_port, chan = channel_tls_connect(&router_addr, router->or_port,
router->cache_info.identity_digest); router->cache_info.identity_digest);

View file

@ -1882,7 +1882,7 @@ rewrite_node_address_for_bridge(const bridge_info_t *bridge, node_t *node)
log_info(LD_DIR, log_info(LD_DIR,
"Adjusted bridge routerinfo for '%s' to match configured " "Adjusted bridge routerinfo for '%s' to match configured "
"address %s:%d.", "address %s:%d.",
ri->nickname, ri->address, ri->or_port); ri->nickname, fmt_addr32(ri->addr), ri->or_port);
} else if (tor_addr_family(&bridge->addr) == AF_INET6) { } else if (tor_addr_family(&bridge->addr) == AF_INET6) {
tor_addr_copy(&ri->ipv6_addr, &bridge->addr); tor_addr_copy(&ri->ipv6_addr, &bridge->addr);
ri->ipv6_orport = bridge->port; ri->ipv6_orport = bridge->port;

View file

@ -1658,24 +1658,28 @@ second_elapsed_callback(periodic_timer_t *timer, void *arg)
/* every 20 minutes, check and complain if necessary */ /* every 20 minutes, check and complain if necessary */
const routerinfo_t *me = router_get_my_routerinfo(); const routerinfo_t *me = router_get_my_routerinfo();
if (me && !check_whether_orport_reachable()) { if (me && !check_whether_orport_reachable()) {
char *address = tor_dup_ip(me->addr);
log_warn(LD_CONFIG,"Your server (%s:%d) has not managed to confirm that " log_warn(LD_CONFIG,"Your server (%s:%d) has not managed to confirm that "
"its ORPort is reachable. Please check your firewalls, ports, " "its ORPort is reachable. Please check your firewalls, ports, "
"address, /etc/hosts file, etc.", "address, /etc/hosts file, etc.",
me->address, me->or_port); address, me->or_port);
control_event_server_status(LOG_WARN, control_event_server_status(LOG_WARN,
"REACHABILITY_FAILED ORADDRESS=%s:%d", "REACHABILITY_FAILED ORADDRESS=%s:%d",
me->address, me->or_port); address, me->or_port);
tor_free(address);
} }
if (me && !check_whether_dirport_reachable()) { if (me && !check_whether_dirport_reachable()) {
char *address = tor_dup_ip(me->addr);
log_warn(LD_CONFIG, log_warn(LD_CONFIG,
"Your server (%s:%d) has not managed to confirm that its " "Your server (%s:%d) has not managed to confirm that its "
"DirPort is reachable. Please check your firewalls, ports, " "DirPort is reachable. Please check your firewalls, ports, "
"address, /etc/hosts file, etc.", "address, /etc/hosts file, etc.",
me->address, me->dir_port); address, me->dir_port);
control_event_server_status(LOG_WARN, control_event_server_status(LOG_WARN,
"REACHABILITY_FAILED DIRADDRESS=%s:%d", "REACHABILITY_FAILED DIRADDRESS=%s:%d",
me->address, me->dir_port); address, me->dir_port);
tor_free(address);
} }
} }

View file

@ -753,7 +753,7 @@ void
node_get_address_string(const node_t *node, char *buf, size_t len) node_get_address_string(const node_t *node, char *buf, size_t len)
{ {
if (node->ri) { if (node->ri) {
strlcpy(buf, node->ri->address, len); strlcpy(buf, fmt_addr32(node->ri->addr), len);
} else if (node->rs) { } else if (node->rs) {
tor_addr_t addr; tor_addr_t addr;
tor_addr_from_ipv4h(&addr, node->rs->addr); tor_addr_from_ipv4h(&addr, node->rs->addr);

View file

@ -1131,7 +1131,7 @@ consider_testing_reachability(int test_or, int test_dir)
/* XXX IPv6 self testing */ /* XXX IPv6 self testing */
log_info(LD_CIRC, "Testing %s of my ORPort: %s:%d.", log_info(LD_CIRC, "Testing %s of my ORPort: %s:%d.",
!orport_reachable ? "reachability" : "bandwidth", !orport_reachable ? "reachability" : "bandwidth",
me->address, me->or_port); fmt_addr32(me->addr), me->or_port);
circuit_launch_by_extend_info(CIRCUIT_PURPOSE_TESTING, ei, circuit_launch_by_extend_info(CIRCUIT_PURPOSE_TESTING, ei,
CIRCLAUNCH_NEED_CAPACITY|CIRCLAUNCH_IS_INTERNAL); CIRCLAUNCH_NEED_CAPACITY|CIRCLAUNCH_IS_INTERNAL);
extend_info_free(ei); extend_info_free(ei);
@ -1158,6 +1158,7 @@ router_orport_found_reachable(void)
{ {
const routerinfo_t *me = router_get_my_routerinfo(); const routerinfo_t *me = router_get_my_routerinfo();
if (!can_reach_or_port && me) { if (!can_reach_or_port && me) {
char *address = tor_dup_ip(me->addr);
log_notice(LD_OR,"Self-testing indicates your ORPort is reachable from " log_notice(LD_OR,"Self-testing indicates your ORPort is reachable from "
"the outside. Excellent.%s", "the outside. Excellent.%s",
get_options()->PublishServerDescriptor_ != NO_DIRINFO ? get_options()->PublishServerDescriptor_ != NO_DIRINFO ?
@ -1166,7 +1167,8 @@ router_orport_found_reachable(void)
mark_my_descriptor_dirty("ORPort found reachable"); mark_my_descriptor_dirty("ORPort found reachable");
control_event_server_status(LOG_NOTICE, control_event_server_status(LOG_NOTICE,
"REACHABILITY_SUCCEEDED ORADDRESS=%s:%d", "REACHABILITY_SUCCEEDED ORADDRESS=%s:%d",
me->address, me->or_port); address, me->or_port);
tor_free(address);
} }
} }
@ -1176,6 +1178,7 @@ router_dirport_found_reachable(void)
{ {
const routerinfo_t *me = router_get_my_routerinfo(); const routerinfo_t *me = router_get_my_routerinfo();
if (!can_reach_dir_port && me) { if (!can_reach_dir_port && me) {
char *address = tor_dup_ip(me->addr);
log_notice(LD_DIRSERV,"Self-testing indicates your DirPort is reachable " log_notice(LD_DIRSERV,"Self-testing indicates your DirPort is reachable "
"from the outside. Excellent."); "from the outside. Excellent.");
can_reach_dir_port = 1; can_reach_dir_port = 1;
@ -1183,7 +1186,8 @@ router_dirport_found_reachable(void)
mark_my_descriptor_dirty("DirPort found reachable"); mark_my_descriptor_dirty("DirPort found reachable");
control_event_server_status(LOG_NOTICE, control_event_server_status(LOG_NOTICE,
"REACHABILITY_SUCCEEDED DIRADDRESS=%s:%d", "REACHABILITY_SUCCEEDED DIRADDRESS=%s:%d",
me->address, me->dir_port); address, me->dir_port);
tor_free(address);
} }
} }