Initialize radiotap header fields before calling ieee80211_radiotap_rx()

Reviewed by:	kevlo
Approved by:	adrian (mentor)
Differential Revision:	https://reviews.freebsd.org/D3951
This commit is contained in:
Andriy Voskoboinyk 2015-10-22 12:15:40 +00:00
parent 2ff069a7bc
commit cc52232057

View file

@ -2847,13 +2847,6 @@ run_rx_frame(struct run_softc *sc, struct mbuf *m, uint32_t dmalen)
m->m_pkthdr.len = m->m_len = len;
if (ni != NULL) {
(void)ieee80211_input(ni, m, rssi, nf);
ieee80211_free_node(ni);
} else {
(void)ieee80211_input_all(ic, m, rssi, nf);
}
if (__predict_false(ieee80211_radiotap_active(ic))) {
struct run_rx_radiotap_header *tap = &sc->sc_rxtap;
uint16_t phy;
@ -2892,6 +2885,13 @@ run_rx_frame(struct run_softc *sc, struct mbuf *m, uint32_t dmalen)
break;
}
}
if (ni != NULL) {
(void)ieee80211_input(ni, m, rssi, nf);
ieee80211_free_node(ni);
} else {
(void)ieee80211_input_all(ic, m, rssi, nf);
}
}
static void