[PATCH 8/8] site logging: Log peer addresses on timeout
Ian Jackson
ijackson at chiark.greenend.org.uk
Wed May 14 21:00:28 BST 2014
Signed-off-by: Ian Jackson <ijackson at chiark.greenend.org.uk>
---
site.c | 20 +++++++++++++++++++-
1 file changed, 19 insertions(+), 1 deletion(-)
diff --git a/site.c b/site.c
index 6fd4afb..ab687b4 100644
--- a/site.c
+++ b/site.c
@@ -347,9 +347,27 @@ static void logtimeout(struct site *st, const char *fmt, ...)
FORMAT(printf,2,3);
static void logtimeout(struct site *st, const char *fmt, ...)
{
+ uint32_t class=event_log_priority(st,LOG_SETUP_TIMEOUT);
+ if (!class)
+ return;
+
va_list ap;
va_start(ap,fmt);
- vslog(st,LOG_SETUP_TIMEOUT,fmt,ap);
+
+ slilog_part(st->log,class,"%s: ",st->tunname);
+ vslilog_part(st->log,class,fmt,ap);
+
+ const char *delim;
+ int i;
+ for (i=0, delim=" (tried ";
+ i<st->setup_peers.npeers;
+ i++, delim=", ") {
+ transport_peer *peer=&st->setup_peers.peers[i];
+ const char *s=comm_addr_to_string(&peer->addr);
+ slilog_part(st->log,class,"%s%s",delim,s);
+ }
+
+ slilog_part(st->log,class,")\n");
va_end(ap);
}
--
1.7.10.4
More information about the sgo-software-discuss
mailing list