From 0f96d32d4c9136ba330d85f444236ea3fb4414a2 Mon Sep 17 00:00:00 2001 From: Ludovic Pouzenc Date: Wed, 18 Jul 2018 10:56:06 +0200 Subject: [PATCH] Set SIGALRM handler before setting timer --- echoc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/echoc.c b/echoc.c index 2e99be1..eaed4e5 100644 --- a/echoc.c +++ b/echoc.c @@ -174,6 +174,8 @@ main(int argc, char *argv[]) if (setsockopt(sock, IPPROTO_IP, IP_MTU_DISCOVER, &ch, sizeof(ch)) < 0) err(2, "setsockopt IP_MTU_DISCOVER"); #endif + signal(SIGALRM, send_packet); + /* timer values */ itv.it_interval.tv_usec = interval*1000; itv.it_interval.tv_sec = 0; @@ -182,8 +184,6 @@ main(int argc, char *argv[]) if (setitimer(ITIMER_REAL, &itv, NULL) == -1) err(2, "setitimer"); - signal(SIGALRM, send_packet); - gettimeofday(&last_ts, NULL); while (1) {