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

Commit 60b22511 authored by Johannes Berg's avatar Johannes Berg Committed by John W. Linville
Browse files

mac80211: reject extra IEs for probe request when hw_scan



We cannot currently hand off extra IEs to hw_scan, so reject
configuring extra IEs for probe request frames when hw_scan
is set.

Signed-off-by: default avatarJohannes Berg <johannes@sipsolutions.net>
Cc: Jouni Malinen <j@w1.fi>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent e4e5e2b0
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -1176,11 +1176,16 @@ static int ieee80211_set_channel(struct wiphy *wiphy,
	return ieee80211_hw_config(local, IEEE80211_CONF_CHANGE_CHANNEL);
}

static int set_mgmt_extra_ie_sta(struct ieee80211_if_sta *ifsta, u8 subtype,
				 u8 *ies, size_t ies_len)
static int set_mgmt_extra_ie_sta(struct ieee80211_sub_if_data *sdata,
				 u8 subtype, u8 *ies, size_t ies_len)
{
	struct ieee80211_local *local = sdata->local;
	struct ieee80211_if_sta *ifsta = &sdata->u.sta;

	switch (subtype) {
	case IEEE80211_STYPE_PROBE_REQ >> 4:
		if (local->ops->hw_scan)
			break;
		kfree(ifsta->ie_probereq);
		ifsta->ie_probereq = ies;
		ifsta->ie_probereq_len = ies_len;
@@ -1244,7 +1249,7 @@ static int ieee80211_set_mgmt_extra_ie(struct wiphy *wiphy,
	switch (sdata->vif.type) {
	case NL80211_IFTYPE_STATION:
	case NL80211_IFTYPE_ADHOC:
		ret = set_mgmt_extra_ie_sta(&sdata->u.sta, params->subtype,
		ret = set_mgmt_extra_ie_sta(sdata, params->subtype,
					    ies, ies_len);
		break;
	default: