]> git.meshlink.io Git - meshlink/commitdiff
Ping nodes immediately when receiving SIGALRM.
authorGuus Sliepen <guus@tinc-vpn.org>
Fri, 15 Jan 2010 22:19:08 +0000 (23:19 +0100)
committerGuus Sliepen <guus@tinc-vpn.org>
Fri, 15 Jan 2010 22:19:08 +0000 (23:19 +0100)
One reason to send the ALRM signal is to let tinc immediately try to connect to
outgoing nodes, for example when PPP or DHCP configuration of the outgoing
interface finished.  Conversely, when the outgoing interface goes down one can
now send this signal to let tinc quickly detect that links are down too.

src/net.c

index 3f17083c192dec33ceb2fb5481513294263d6b8f..9b60a31446143dd3cce7c0cafe4da41f6077cfb8 100644 (file)
--- a/src/net.c
+++ b/src/net.c
@@ -418,8 +418,13 @@ int main_loop(void) {
                }
 
                if(sigalrm) {
+                       avl_node_t *node;
                        logger(LOG_INFO, "Flushing event queue");
                        expire_events();
+                       for(node = connection_tree->head; node; node = node->next) {
+                               connection_t *c = node->data;
+                               send_ping(c);
+                       }
                        sigalrm = false;
                }