When printing version (eg during startup), use value from git-describe
[secnet] / site.c
diff --git a/site.c b/site.c
index 1af21ea..fe0e1a7 100644 (file)
--- 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);
 }
 
@@ -1933,14 +1951,14 @@ static void transport_peers_debug(struct site *st, transport_peers *dst,
         i++, (argp+=stride?stride:sizeof(*args))) {
        const struct comm_addr *ca=(void*)argp;
        slog(st, LOG_PEER_ADDRS, " args: addrs[%d]=%s",
-            i, ca->comm->addr_to_string(ca->comm->st,ca));
+            i, comm_addr_to_string(ca));
     }
     for (i=0; i<dst->npeers; i++) {
        struct timeval diff;
        timersub(tv_now,&dst->peers[i].last,&diff);
        const struct comm_addr *ca=&dst->peers[i].addr;
        slog(st, LOG_PEER_ADDRS, " peers: addrs[%d]=%s T-%ld.%06ld",
-            i, ca->comm->addr_to_string(ca->comm->st,ca),
+            i, comm_addr_to_string(ca),
             (unsigned long)diff.tv_sec, (unsigned long)diff.tv_usec);
     }
 }