cfg80211: allow the plink state blocking for user managed mesh

wpa_supplicant or authsae handles the mesh peering in user
space, but the plink state is still managed in kernel space.
Currently, there is no implementation by wpa_supplicant or
authsae to block the plink state after it is set to ESTAB.

By applying this patch, we can use the "iw mesh0 station set
<MAC address> plink_action block" to block the peer mesh STA.
This is useful for experimenting purposes.

Signed-off-by: Chun-Yeow Yeoh <yeohchunyeow@gmail.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
Chun-Yeow Yeoh 2015-04-18 01:30:02 +08:00 committed by Johannes Berg
parent 5a490510ba
commit 4292504044

View File

@ -4061,7 +4061,8 @@ int cfg80211_check_station_change(struct wiphy *wiphy,
return -EINVAL;
break;
case CFG80211_STA_MESH_PEER_USER:
if (params->plink_action != NL80211_PLINK_ACTION_NO_ACTION)
if (params->plink_action != NL80211_PLINK_ACTION_NO_ACTION &&
params->plink_action != NL80211_PLINK_ACTION_BLOCK)
return -EINVAL;
break;
}