Page MenuHomeFreeBSD

D54547.id169143.diff
No OneTemporary

D54547.id169143.diff

diff --git a/sys/dev/wtap/if_wtap.c b/sys/dev/wtap/if_wtap.c
--- a/sys/dev/wtap/if_wtap.c
+++ b/sys/dev/wtap/if_wtap.c
@@ -588,15 +588,22 @@
{
struct ieee80211_node *ni =
(struct ieee80211_node *) m->m_pkthdr.rcvif;
- struct ieee80211vap *vap = ni->ni_vap;
- struct wtap_vap *avp = WTAP_VAP(vap);
+ struct ieee80211vap *vap;
+ struct wtap_vap *avp;
if(ni == NULL){
- printf("m->m_pkthdr.rcvif is NULL we can't radiotap_tx\n");
- }else{
- if (ieee80211_radiotap_active_vap(vap))
- ieee80211_radiotap_tx(vap, m);
+ printf("m->m_pkthdr.rcvif is NULL, dropping packet\n");
+
+ m_free(m);
+ return ENXIO;
}
+
+ vap = ni->ni_vap;
+ avp = WTAP_VAP(vap);
+
+ if (ieee80211_radiotap_active_vap(vap))
+ ieee80211_radiotap_tx(vap, m);
+
if (m->m_flags & M_TXCB)
ieee80211_process_callback(ni, m, 0);
ieee80211_free_node(ni);

File Metadata

Mime Type
text/plain
Expires
Thu, Apr 2, 2:07 AM (3 h, 42 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27521735
Default Alt Text
D54547.id169143.diff (845 B)

Event Timeline