From 14201eaf926cea53725ee61378d586dc9c9c6810 Mon Sep 17 00:00:00 2001 From: Timo Teras Date: Wed, 24 Dec 2008 16:23:09 +0200 Subject: mtu: minor fixups; try harder to traverse nat boxes in mtu inject --- mtu.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'mtu.c') diff --git a/mtu.c b/mtu.c index 1a3c42c..01af3ed 100644 --- a/mtu.c +++ b/mtu.c @@ -93,9 +93,9 @@ static void do_inject(void) struct sockaddr_in from; int len, seq = 0; + icmp_send_ping(fd, (struct sockaddr *) &to, sizeof(to), + ++seq, mtu_size); for (;;) { - icmp_send_ping(fd, (struct sockaddr *) &to, sizeof(to), - ++seq, mtu_size); if ((len = icmp_read_reply(fd, (struct sockaddr *) &from, sizeof(from), buf, sizeof(buf))) <= 0) @@ -106,9 +106,13 @@ static void do_inject(void) (struct sockaddr *) &to)) continue; + if (seq != 1) + sleep(1); + + icmp_send_ping(fd, (struct sockaddr *) &to, sizeof(to), + ++seq, mtu_size); icmp_send_frag_needed(fd, (struct sockaddr *) &to, sizeof(to), (struct iphdr *) buf, mtu_size - 2); - sleep(1); } } -- cgit v1.2.3