summaryrefslogtreecommitdiffstats
path: root/sys/netinet/ip_icmp.c
diff options
context:
space:
mode:
authorarchie <archie@FreeBSD.org>1999-03-06 23:10:42 +0000
committerarchie <archie@FreeBSD.org>1999-03-06 23:10:42 +0000
commit095548bf2b7a6db930e5adb1cb20a6d7cd56f736 (patch)
tree8f6e0f6c09c3a470d17f827a56f0f7135d0ef50c /sys/netinet/ip_icmp.c
parent209b9e7c265bca5cdd9a9ca9418b0d5fef41886c (diff)
downloadFreeBSD-src-095548bf2b7a6db930e5adb1cb20a6d7cd56f736.zip
FreeBSD-src-095548bf2b7a6db930e5adb1cb20a6d7cd56f736.tar.gz
When an incoming packet is reflected back as an ICMP reply, make sure we
zero "m->m_pkthdr.rcvif", otherwise ipfw may wrongly match the outgoing packet. PR: kern/9723 Submitted by: David Malone <dwmalone@maths.tcd.ie>
Diffstat (limited to 'sys/netinet/ip_icmp.c')
-rw-r--r--sys/netinet/ip_icmp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/netinet/ip_icmp.c b/sys/netinet/ip_icmp.c
index d4eb5ca..d82d1d6 100644
--- a/sys/netinet/ip_icmp.c
+++ b/sys/netinet/ip_icmp.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ip_icmp.c 8.2 (Berkeley) 1/4/94
- * $Id: ip_icmp.c,v 1.32 1998/12/03 20:23:20 dillon Exp $
+ * $Id: ip_icmp.c,v 1.33 1998/12/04 04:21:25 dillon Exp $
*/
#include <sys/param.h>
@@ -663,6 +663,7 @@ icmp_send(m, opts)
icp->icmp_cksum = in_cksum(m, ip->ip_len - hlen);
m->m_data -= hlen;
m->m_len += hlen;
+ m->m_pkthdr.rcvif = (struct ifnet *)0;
#ifdef ICMPPRINTFS
if (icmpprintfs) {
char buf[4 * sizeof "123"];
OpenPOWER on IntegriCloud