aboutsummaryrefslogtreecommitdiffstats
path: root/pingu_burst.c
diff options
context:
space:
mode:
Diffstat (limited to 'pingu_burst.c')
-rw-r--r--pingu_burst.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/pingu_burst.c b/pingu_burst.c
index e09c1ce..a9f8e83 100644
--- a/pingu_burst.c
+++ b/pingu_burst.c
@@ -17,6 +17,7 @@ void ping_burst_start(struct ev_loop *loop, struct pingu_host *host)
struct addrinfo hints;
struct addrinfo *ai, *rp;
int r;
+ char buf[64];
/* we bind to device every burst in case an iface disappears and
comes back. e.g ppp0 */
@@ -38,16 +39,17 @@ void ping_burst_start(struct ev_loop *loop, struct pingu_host *host)
}
for (rp = ai; rp != NULL; rp = rp->ai_next) {
- sockaddr_init(&host->burst.saddr, ai->ai_family,
- ai->ai_addr);
+ sockaddr_from_addrinfo(&host->burst.saddr, ai);
r = pingu_ping_send(loop, host, 0);
if (r == 0)
break;
}
- if (rp == NULL)
+ sockaddr_to_string(&host->burst.saddr, buf, sizeof(buf));
+ if (rp == NULL) {
+ log_debug("%s: failed to send first ping to %s", host->label, buf);
host->burst.active = 0;
-
+ }
}
void pingu_burst_timeout_cb(struct ev_loop *loop, struct ev_timer *w,
@@ -59,6 +61,6 @@ void pingu_burst_timeout_cb(struct ev_loop *loop, struct ev_timer *w,
log_warning("%s: burst already active", host->host);
return;
}
- log_debug("%s: new burst", host->host);
+ log_debug("%s: new burst to %s via %s", host->label, host->host, host->iface->name);
ping_burst_start(loop, host);
}