From ff54f54165647c82f057a6d2f3a14e8a0be187cd Mon Sep 17 00:00:00 2001 From: nbd Date: Sun, 4 Mar 2007 14:36:34 +0000 Subject: [PATCH] hopefully fix ping bugs introduced in [6443] git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6505 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../patches/450-truncated_ping_results.patch | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/package/busybox/patches/450-truncated_ping_results.patch b/package/busybox/patches/450-truncated_ping_results.patch index 30e86701a..f60a1a9c0 100644 --- a/package/busybox/patches/450-truncated_ping_results.patch +++ b/package/busybox/patches/450-truncated_ping_results.patch @@ -5,7 +5,7 @@ struct icmp *pkt; int pingsock, c; - char packet[DEFDATALEN + MAXIPLEN + MAXICMPLEN]; -+ char packet[datalen + MAXIPLEN + MAXICMPLEN]; ++ char packet[datalen + ICMP_MINLEN + MAXIPLEN + MAXICMPLEN]; pingsock = create_icmp_socket(); @@ -18,17 +18,6 @@ (struct sockaddr *) &pingaddr, sizeof(struct sockaddr_in)); if (c < 0) { -@@ -257,8 +257,8 @@ - - gettimeofday(&tv, NULL); - -- /* discard if too short */ -- if (sz < (datalen + ICMP_MINLEN)) -+ /* discard if too short / long */ -+ if (sz < (datalen + ICMP_MINLEN) || sz > (MAXICMPLEN)) - return; - - /* check IP header */ @@ -274,6 +274,10 @@ ++nreceived; tp = (struct timeval *) icmppkt->icmp_data;