Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4c4df78f authored by Chatre, Reinette's avatar Chatre, Reinette Committed by John W. Linville
Browse files

iwlwifi: add test to determine if interface in monitor mode



mac80211 sets driver in monitor mode through configuring the
RX filters. We cannot trust priv->iw_mode to be accurate
regarding monitor mode as iw_mode is only set in add_interface,
which is not called by mac80211 when in monitor mode.

Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
Signed-off-by: default avatarTomas Winkler <tomas.winkler@intel.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 1a9f5093
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -698,6 +698,18 @@ static u8 iwl_count_chain_bitmap(u32 chain_bitmap)
	return res;
}

/**
 * iwl_is_monitor_mode - Determine if interface in monitor mode
 *
 * priv->iw_mode is set in add_interface, but add_interface is
 * never called for monitor mode. The only way mac80211 informs us about
 * monitor mode is through configuring filters (call to configure_filter).
 */
static bool iwl_is_monitor_mode(struct iwl_priv *priv)
{
	return !!(priv->staging_rxon.filter_flags & RXON_FILTER_PROMISC_MSK);
}

/**
 * iwl_set_rxon_chain - Set up Rx chain usage in "staging" RXON image
 *