diff options
author | ru <ru@FreeBSD.org> | 2005-07-22 11:27:07 +0000 |
---|---|---|
committer | ru <ru@FreeBSD.org> | 2005-07-22 11:27:07 +0000 |
commit | 3fb54098756d7fd2c019365fc1f33884027ab9b7 (patch) | |
tree | 63451d68971f6d36be7a64b7f6ba07766562bf79 /sys/dev/vx | |
parent | 56e3e99e9df43b316cf715414c164d49709bda92 (diff) | |
download | FreeBSD-src-3fb54098756d7fd2c019365fc1f33884027ab9b7.zip FreeBSD-src-3fb54098756d7fd2c019365fc1f33884027ab9b7.tar.gz |
Don't drop frames if interface is in promiscuous mode.
PR: kern/83833
Submitted by: Eygene A. Ryabinkin
MFC after: 3 days
Diffstat (limited to 'sys/dev/vx')
-rw-r--r-- | sys/dev/vx/if_vx.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/vx/if_vx.c b/sys/dev/vx/if_vx.c index 468fc4e..98aa192 100644 --- a/sys/dev/vx/if_vx.c +++ b/sys/dev/vx/if_vx.c @@ -712,7 +712,8 @@ again: * bleah! */ - if ((eh->ether_dhost[0] & 1) == 0 /* !mcast and !bcast */ + if (!(ifp->if_flags & IFF_PROMISC) + && (eh->ether_dhost[0] & 1) == 0 /* !mcast and !bcast */ && bcmp(eh->ether_dhost, IFP2ENADDR(sc->ifp), ETHER_ADDR_LEN)!=0) { m_freem(m); return; |