diff options
author | andre <andre@FreeBSD.org> | 2013-08-19 13:27:32 +0000 |
---|---|---|
committer | andre <andre@FreeBSD.org> | 2013-08-19 13:27:32 +0000 |
commit | 7cc6cc696c12dcee5a294f67527cebb28374c49e (patch) | |
tree | 4bf04ae1ab9f3c2b9ed6d2ce7bcd15edb4b3a1f0 /sys/net80211 | |
parent | a84c641767af511112a0ead58df9bf7937868cde (diff) | |
download | FreeBSD-src-7cc6cc696c12dcee5a294f67527cebb28374c49e.zip FreeBSD-src-7cc6cc696c12dcee5a294f67527cebb28374c49e.tar.gz |
Add m_clrprotoflags() to clear protocol specific mbuf flags at up and
downwards layer crossings.
Consistently use it within IP, IPv6 and ethernet protocols.
Discussed with: trociny, glebius
Diffstat (limited to 'sys/net80211')
-rw-r--r-- | sys/net80211/ieee80211_hostap.c | 3 | ||||
-rw-r--r-- | sys/net80211/ieee80211_input.c | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/sys/net80211/ieee80211_hostap.c b/sys/net80211/ieee80211_hostap.c index ee17527..5839e7d 100644 --- a/sys/net80211/ieee80211_hostap.c +++ b/sys/net80211/ieee80211_hostap.c @@ -355,7 +355,8 @@ hostap_deliver_data(struct ieee80211vap *vap, struct ifnet *ifp = vap->iv_ifp; /* clear driver/net80211 flags before passing up */ - m->m_flags &= ~(M_80211_RX | M_MCAST | M_BCAST); + m->m_flags &= ~(M_MCAST | M_BCAST); + m_clrprotoflags(m); KASSERT(vap->iv_opmode == IEEE80211_M_HOSTAP, ("gack, opmode %d", vap->iv_opmode)); diff --git a/sys/net80211/ieee80211_input.c b/sys/net80211/ieee80211_input.c index 91adc6c..a32ef18 100644 --- a/sys/net80211/ieee80211_input.c +++ b/sys/net80211/ieee80211_input.c @@ -250,7 +250,8 @@ ieee80211_deliver_data(struct ieee80211vap *vap, struct ifnet *ifp = vap->iv_ifp; /* clear driver/net80211 flags before passing up */ - m->m_flags &= ~(M_80211_RX | M_MCAST | M_BCAST); + m->m_flags &= ~(M_MCAST | M_BCAST); + m_clrprotoflags(m); /* NB: see hostap_deliver_data, this path doesn't handle hostap */ KASSERT(vap->iv_opmode != IEEE80211_M_HOSTAP, ("gack, hostap")); |