From: Chun-Yeow Yeoh Date: Fri, 17 Apr 2015 17:30:02 +0000 (+0800) Subject: cfg80211: allow the plink state blocking for user managed mesh X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=4292504044a4fd4c5d9155dcb5c7b09ed6cbf611;p=linux-beck.git 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 plink_action block" to block the peer mesh STA. This is useful for experimenting purposes. Signed-off-by: Chun-Yeow Yeoh Signed-off-by: Johannes Berg --- diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c index dd78445c7d50..8a33bbae9ec5 100644 --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c @@ -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; }