11n ifmedia doesn't pick up monitor mode correctly. ok?
Index: ieee80211.c =================================================================== RCS file: /cvs/src/sys/net80211/ieee80211.c,v retrieving revision 1.51 diff -u -p -r1.51 ieee80211.c --- ieee80211.c 27 Nov 2015 04:03:45 -0000 1.51 +++ ieee80211.c 15 Dec 2015 17:05:34 -0000 @@ -366,6 +366,8 @@ ieee80211_media_init(struct ifnet *ifp, if (ic->ic_caps & IEEE80211_C_HOSTAP) ADD(ic, IFM_AUTO, mopt | IFM_IEEE80211_HOSTAP); #endif + if (ic->ic_caps & IEEE80211_C_MONITOR) + ADD(ic, IFM_AUTO, mopt | IFM_IEEE80211_MONITOR); for (i = 0; i < IEEE80211_HT_NUM_MCS; i++) { if (!isset(ic->ic_sup_mcs, i)) continue; @@ -378,6 +380,9 @@ ieee80211_media_init(struct ifnet *ifp, ADD(ic, IFM_IEEE80211_HT_MCS0 + i, mopt | IFM_IEEE80211_HOSTAP); #endif + if (ic->ic_caps & IEEE80211_C_MONITOR) + ADD(ic, IFM_IEEE80211_HT_MCS0 + i, + mopt | IFM_IEEE80211_MONITOR); } ic->ic_flags |= IEEE80211_F_HTON; /* enable 11n by default */ }