Commit 553a282c authored by Johannes Berg's avatar Johannes Berg
Browse files

wifi: mac80211: mlme: fix override calculation



In my previous changes here, I neglected to take the old
conn_flags into account that might still be present from
the authentication, and thus ieee80211_setup_assoc_link()
can misbehave, as well as the override calculation being
wrong. Fix that by ORing in the old flags.

Fixes: 1845c1d4 ("wifi: mac80211: mlme: refactor assoc link setup")
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent 8a9be422
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -7048,6 +7048,8 @@ int ieee80211_mgd_assoc(struct ieee80211_sub_if_data *sdata,
		goto err_clear;
	}

	/* keep old conn_flags from ieee80211_prep_channel() from auth */
	conn_flags |= link->u.mgd.conn_flags;
	conn_flags |= ieee80211_setup_assoc_link(sdata, assoc_data, req,
						 conn_flags, assoc_link_id);
	override = link->u.mgd.conn_flags != conn_flags;