Only check for local broadcast addresses if the mbuf is flagged with M_BCAST.

This commit is contained in:
Andre Oppermann 2004-08-11 10:49:56 +00:00
parent 0b17fba7bc
commit 767981878c

View File

@ -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;