+++ /dev/null
---- a/networking/ping.c
-+++ b/networking/ping.c
-@@ -79,6 +79,7 @@ static int in_cksum(unsigned short *buf,
- /* simple version */
-
- static char *hostname;
-+static unsigned datalen = DEFDATALEN;
-
- static void noresp(int ign UNUSED_PARAM)
- {
-@@ -91,7 +92,7 @@ static void ping4(len_and_sockaddr *lsa)
- struct sockaddr_in pingaddr;
- struct icmp *pkt;
- int pingsock, c;
-- char packet[DEFDATALEN + MAXIPLEN + MAXICMPLEN];
-+ char packet[datalen + ICMP_MINLEN + MAXIPLEN + MAXICMPLEN];
-
- pingsock = create_icmp_socket();
- pingaddr = lsa->u.sin;
-@@ -101,7 +102,7 @@ static void ping4(len_and_sockaddr *lsa)
- pkt->icmp_type = ICMP_ECHO;
- pkt->icmp_cksum = in_cksum((unsigned short *) pkt, sizeof(packet));
-
-- c = xsendto(pingsock, packet, DEFDATALEN + ICMP_MINLEN,
-+ c = xsendto(pingsock, packet, datalen + ICMP_MINLEN,
- (struct sockaddr *) &pingaddr, sizeof(pingaddr));
-
- /* listen for replies */
-@@ -135,7 +136,7 @@ static void ping6(len_and_sockaddr *lsa)
- struct icmp6_hdr *pkt;
- int pingsock, c;
- int sockopt;
-- char packet[DEFDATALEN + MAXIPLEN + MAXICMPLEN];
-+ char packet[datalen + ICMP_MINLEN + MAXIPLEN + MAXICMPLEN];
-
- pingsock = create_icmp6_socket();
- pingaddr = lsa->u.sin6;
-@@ -147,7 +148,7 @@ static void ping6(len_and_sockaddr *lsa)
- sockopt = offsetof(struct icmp6_hdr, icmp6_cksum);
- setsockopt(pingsock, SOL_RAW, IPV6_CHECKSUM, &sockopt, sizeof(sockopt));
-
-- c = xsendto(pingsock, packet, DEFDATALEN + sizeof (struct icmp6_hdr),
-+ c = xsendto(pingsock, packet, datalen + sizeof (struct icmp6_hdr),
- (struct sockaddr *) &pingaddr, sizeof(pingaddr));
-
- /* listen for replies */