summaryrefslogtreecommitdiffstats
path: root/meta/recipes-extended/iputils/files/debian/fix-arping-timeouts.diff
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-extended/iputils/files/debian/fix-arping-timeouts.diff')
-rw-r--r--meta/recipes-extended/iputils/files/debian/fix-arping-timeouts.diff24
1 files changed, 24 insertions, 0 deletions
diff --git a/meta/recipes-extended/iputils/files/debian/fix-arping-timeouts.diff b/meta/recipes-extended/iputils/files/debian/fix-arping-timeouts.diff
new file mode 100644
index 0000000000..9f05769f71
--- /dev/null
+++ b/meta/recipes-extended/iputils/files/debian/fix-arping-timeouts.diff
@@ -0,0 +1,24 @@
1Index: trunk/arping.c
2===================================================================
3--- trunk.orig/arping.c 2010-05-07 23:13:52.000000000 -0700
4+++ trunk/arping.c 2010-05-07 23:41:16.000000000 -0700
5@@ -182,12 +182,17 @@
6 if (start.tv_sec==0)
7 start = tv;
8
9- if (count-- == 0 || (timeout && MS_TDIFF(tv,start) > timeout*1000 + 500))
10+ if (timeout && MS_TDIFF(tv,start) > timeout*1000 + 500)
11 finish();
12
13- if (last.tv_sec==0 || MS_TDIFF(tv,last) > 500) {
14+ if ((!timeout) && (count == 0))
15+ finish();
16+
17+ if ( count!=0 && (last.tv_sec==0 || MS_TDIFF(tv,last) > 500 ) ) {
18 send_pack(s, src, dst,
19 (struct sockaddr_ll *)&me, (struct sockaddr_ll *)&he);
20+ if (count >= 0)
21+ count--;
22 if (count == 0 && unsolicited)
23 finish();
24 }