Date: Thu, 22 Mar 2007 17:51:59 +0000 From: "Bruce M. Simpson" <bms@FreeBSD.org> To: Scot Hetzel <swhetzel@gmail.com>, Denis Shaposhnikov <dsh@vlink.ru>, david@catwhisker.org Cc: current@freebsd.org Subject: Re: no network access on today's CURRENT Message-ID: <4602C23F.3060400@FreeBSD.org> In-Reply-To: <4602B42D.5060102@FreeBSD.org> References: <46025922.4090809@vlink.ru> <790a9fff0703220825g69405b89j123f7be87fadcb10@mail.gmail.com> <4602B42D.5060102@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------020506060009020300030706
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Are you using any FreeBSD networking features which put the interface
into promiscuous mode?
e.g. vlan, netgraph, if_bridge?
If so, Yar has found a typo in the code, which did not get enough
testing before commit (despite my request on -net for volunteers to do
so). Can you please try this patch?
regards,
BMS
--------------020506060009020300030706
Content-Type: text/x-patch;
name="promisc.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="promisc.diff"
Index: if_ethersubr.c
===================================================================
RCS file: /home/ncvs/src/sys/net/if_ethersubr.c,v
retrieving revision 1.225
diff -u -p -r1.225 if_ethersubr.c
--- if_ethersubr.c 20 Mar 2007 14:29:54 -0000 1.225
+++ if_ethersubr.c 22 Mar 2007 17:51:31 -0000
@@ -669,15 +669,14 @@ ether_input(struct ifnet *ifp, struct mb
#endif
{
/*
- * If the frame was received promiscuously, set the
+ * If the frame received was not for our MAC address, set the
* M_PROMISC flag on the mbuf chain. The frame may need to
* be seen by the rest of the Ethernet input path in case of
* re-entry (e.g. bridge, vlan, netgraph) but should not be
* seen by upper protocol layers.
*/
if (!ETHER_IS_MULTICAST(eh->ether_dhost) &&
- (ifp->if_flags & IFF_PROMISC) != 0 &&
- !bcmp(IF_LLADDR(ifp), eh->ether_dhost, ETHER_ADDR_LEN))
+ bcmp(IF_LLADDR(ifp), eh->ether_dhost, ETHER_ADDR_LEN) != 0)
m->m_flags |= M_PROMISC;
}
--------------020506060009020300030706--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4602C23F.3060400>
