[prev in list] [next in list] [prev in thread] [next in thread]
List: busybox
Subject: [PATCH] Fix payload lengths in ping(6)
From: "KRONSTORFER Horst" <Horst.KRONSTORFER () frequentis ! com>
Date: 2006-03-31 23:49:15
Message-ID: C5BA91F04186584EB68FD42BB4993E6B5615F4 () FRQWOLEX01 ! frequentis ! frq
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
hi!
attached patch fixes incorrect payload lengths in ping(6).
-h
[Attachment #5 (text/html)]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7638.1">
<TITLE>[PATCH] Fix payload lengths in ping(6)</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/plain format -->
<P><FONT SIZE=2>hi!<BR>
<BR>
attached patch fixes incorrect payload lengths in ping(6).<BR>
<BR>
-h<BR>
<BR>
</FONT>
</P>
</BODY>
</HTML>
["ping.patch" (application/octet-stream)]
Index: networking/ping6.c
===================================================================
--- networking/ping6.c (revision 14714)
+++ networking/ping6.c (working copy)
@@ -111,7 +111,7 @@
setsockopt(pingsock, SOL_RAW, IPV6_CHECKSUM, (char *) &sockopt,
sizeof(sockopt));
- c = sendto(pingsock, packet, sizeof(packet), 0,
+ c = sendto(pingsock, packet, DEFDATALEN + sizeof (struct icmp6_hdr), 0,
(struct sockaddr *) &pingaddr, sizeof(struct sockaddr_in6));
if (c < 0 || c != sizeof(packet))
@@ -204,7 +204,7 @@
{
struct icmp6_hdr *pkt;
int i;
- char packet[datalen + 8];
+ char packet[datalen + sizeof (struct icmp6_hdr)];
pkt = (struct icmp6_hdr *) packet;
Index: networking/ping.c
===================================================================
--- networking/ping.c (revision 14714)
+++ networking/ping.c (working copy)
@@ -108,7 +108,7 @@
pkt->icmp_type = ICMP_ECHO;
pkt->icmp_cksum = in_cksum((unsigned short *) pkt, sizeof(packet));
- c = sendto(pingsock, packet, sizeof(packet), 0,
+ c = sendto(pingsock, packet, DEFDATALEN + ICMP_MINLEN, 0,
(struct sockaddr *) &pingaddr, sizeof(struct sockaddr_in));
if (c < 0 || c != sizeof(packet))
@@ -202,7 +202,7 @@
{
struct icmp *pkt;
int i;
- char packet[datalen + sizeof(struct icmp)];
+ char packet[datalen + ICMP_MINLEN];
pkt = (struct icmp *) packet;
_______________________________________________
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic