summaryrefslogtreecommitdiffstats
path: root/sys/netinet/ip_fastfwd.c
diff options
context:
space:
mode:
authorandre <andre@FreeBSD.org>2004-08-11 10:49:56 +0000
committerandre <andre@FreeBSD.org>2004-08-11 10:49:56 +0000
commit3d16b5d93ef49c2b40148fdb108a3c861f6a46ff (patch)
tree8d68246ff274baf7fc01de5874c828c53f68ed23 /sys/netinet/ip_fastfwd.c
parent47aa08bf9407cd604de9ded494d7a7b1043604bf (diff)
downloadFreeBSD-src-3d16b5d93ef49c2b40148fdb108a3c861f6a46ff.zip
FreeBSD-src-3d16b5d93ef49c2b40148fdb108a3c861f6a46ff.tar.gz
Only check for local broadcast addresses if the mbuf is flagged with M_BCAST.
Diffstat (limited to 'sys/netinet/ip_fastfwd.c')
-rw-r--r--sys/netinet/ip_fastfwd.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/netinet/ip_fastfwd.c b/sys/netinet/ip_fastfwd.c
index 6b6d24d..6f66817 100644
--- a/sys/netinet/ip_fastfwd.c
+++ b/sys/netinet/ip_fastfwd.c
@@ -338,7 +338,8 @@ ip_fastforward(struct mbuf *m)
/*
* Or is it for a local IP broadcast address on this host?
*/
- if (m->m_pkthdr.rcvif->if_flags & IFF_BROADCAST) {
+ if ((m->m_flags & M_BCAST) &&
+ (m->m_pkthdr.rcvif->if_flags & IFF_BROADCAST)) {
TAILQ_FOREACH(ifa, &m->m_pkthdr.rcvif->if_addrhead, ifa_link) {
if (ifa->ifa_addr->sa_family != AF_INET)
continue;
OpenPOWER on IntegriCloud