Commit 956b9613 authored by Johannes Berg's avatar Johannes Berg

wifi: mac80211: more station handling sanity checks

Add more sanity checks to the API handling, we shouldn't
be able to create a station without links, nor should we
be able to add a link to a station that wasn't created as
an MLD with links in the first place.
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent 0ad49045
......@@ -4649,6 +4649,9 @@ static int sta_add_link_station(struct ieee80211_local *local,
if (!sta)
return -ENOENT;
if (!sta->sta.valid_links)
return -EINVAL;
if (sta->sta.valid_links & BIT(params->link_id))
return -EALREADY;
......@@ -4724,6 +4727,10 @@ static int sta_del_link_station(struct ieee80211_sub_if_data *sdata,
if (!(sta->sta.valid_links & BIT(params->link_id)))
return -EINVAL;
/* must not create a STA without links */
if (sta->sta.valid_links == BIT(params->link_id))
return -EINVAL;
ieee80211_sta_remove_link(sta, params->link_id);
return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment