diff options
Diffstat (limited to 'meta-lsb/packages/iputils/files/debian/fix-arping-timeouts.diff')
| -rw-r--r-- | meta-lsb/packages/iputils/files/debian/fix-arping-timeouts.diff | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/meta-lsb/packages/iputils/files/debian/fix-arping-timeouts.diff b/meta-lsb/packages/iputils/files/debian/fix-arping-timeouts.diff new file mode 100644 index 0000000000..9f05769f71 --- /dev/null +++ b/meta-lsb/packages/iputils/files/debian/fix-arping-timeouts.diff | |||
| @@ -0,0 +1,24 @@ | |||
| 1 | Index: 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 | } | ||
