nl80211: use_monitor and non-mac80211 drivers

Joel Cunningham joel.cunningham at me.com
Mon Oct 31 11:39:50 PDT 2016


Hi,

I have a question about the monitor interface that is used by driver_nl80211.c.  I’m working with a vendor driver that implements a full MAC (thus does not use mac80211).  Is it possible to skip using the monitor interface if poll command and TX status are supported and management frames are reported through cfg80211_rx_mgmt()?

I ask because when studying driver_nl80211.c, it seems that code paths which are used when use_monitor is 0 are specific to mac80211.  For example in nl80211_mgmt_subscribe_ap() we skip registering for beacon frames.

	static const int stypes[] = {
		WLAN_FC_STYPE_AUTH,
		WLAN_FC_STYPE_ASSOC_REQ,
		WLAN_FC_STYPE_REASSOC_REQ,
		WLAN_FC_STYPE_DISASSOC,
		WLAN_FC_STYPE_DEAUTH,
		WLAN_FC_STYPE_PROBE_REQ,
/* Beacon doesn't work as mac80211 doesn't currently allow
 * it, but it wouldn't really be the right thing anyway as
 * it isn't per interface ... maybe just dump the scan
 * results periodically for OLBC?
 */
		/* WLAN_FC_STYPE_BEACON, */
	};

Thanks,

Joel




More information about the Hostap mailing list