Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 3 Aug 2011 04:28:16 +0000 (UTC)
From:      "Andrey V. Elsukov" <ae@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org
Subject:   svn commit: r224623 - stable/7/sys/netinet
Message-ID:  <201108030428.p734SGom085948@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ae
Date: Wed Aug  3 04:28:16 2011
New Revision: 224623
URL: http://svn.freebsd.org/changeset/base/224623

Log:
  MFC r223753:
    ARP code reuses mbuf from ARP request to make a reply, but it does not
    reset rcvif to NULL. Since rcvif is not NULL, ipfw(4) supposes that ARP
    replies were received on specified interface.
    Reset rcvif to NULL for ARP replies to fix this issue.
  
    PR:           kern/131817

Modified:
  stable/7/sys/netinet/if_ether.c
Directory Properties:
  stable/7/sys/   (props changed)
  stable/7/sys/cddl/contrib/opensolaris/   (props changed)
  stable/7/sys/contrib/dev/acpica/   (props changed)
  stable/7/sys/contrib/pf/   (props changed)

Modified: stable/7/sys/netinet/if_ether.c
==============================================================================
--- stable/7/sys/netinet/if_ether.c	Wed Aug  3 04:27:47 2011	(r224622)
+++ stable/7/sys/netinet/if_ether.c	Wed Aug  3 04:28:16 2011	(r224623)
@@ -981,6 +981,7 @@ reply:
 	ah->ar_pro = htons(ETHERTYPE_IP); /* let's be sure! */
 	m->m_len = sizeof(*ah) + (2 * ah->ar_pln) + (2 * ah->ar_hln);   
 	m->m_pkthdr.len = m->m_len;   
+	m->m_pkthdr.rcvif = NULL;
 	sa.sa_family = AF_ARP;
 	sa.sa_len = 2;
 	(*ifp->if_output)(ifp, m, &sa, (struct rtentry *)0);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201108030428.p734SGom085948>