|
@@ -124,6 +124,7 @@ static const struct nla_policy nl80211_policy[NL80211_ATTR_MAX+1] = {
|
|
|
[NL80211_ATTR_BSS_HT_OPMODE] = { .type = NLA_U16 },
|
|
|
|
|
|
[NL80211_ATTR_MESH_CONFIG] = { .type = NLA_NESTED },
|
|
|
+ [NL80211_ATTR_SUPPORT_MESH_AUTH] = { .type = NLA_FLAG },
|
|
|
|
|
|
[NL80211_ATTR_HT_CAPABILITY] = { .type = NLA_BINARY,
|
|
|
.len = NL80211_HT_CAPABILITY_LEN },
|
|
@@ -594,6 +595,8 @@ static int nl80211_send_wiphy(struct sk_buff *msg, u32 pid, u32 seq, int flags,
|
|
|
|
|
|
if (dev->wiphy.flags & WIPHY_FLAG_IBSS_RSN)
|
|
|
NLA_PUT_FLAG(msg, NL80211_ATTR_SUPPORT_IBSS_RSN);
|
|
|
+ if (dev->wiphy.flags & WIPHY_FLAG_MESH_AUTH)
|
|
|
+ NLA_PUT_FLAG(msg, NL80211_ATTR_SUPPORT_MESH_AUTH);
|
|
|
|
|
|
NLA_PUT(msg, NL80211_ATTR_CIPHER_SUITES,
|
|
|
sizeof(u32) * dev->wiphy.n_cipher_suites,
|
|
@@ -2823,6 +2826,7 @@ static const struct nla_policy
|
|
|
nl80211_mesh_setup_params_policy[NL80211_MESH_SETUP_ATTR_MAX+1] = {
|
|
|
[NL80211_MESH_SETUP_ENABLE_VENDOR_PATH_SEL] = { .type = NLA_U8 },
|
|
|
[NL80211_MESH_SETUP_ENABLE_VENDOR_METRIC] = { .type = NLA_U8 },
|
|
|
+ [NL80211_MESH_SETUP_USERSPACE_AUTH] = { .type = NLA_FLAG },
|
|
|
[NL80211_MESH_SETUP_IE] = { .type = NLA_BINARY,
|
|
|
.len = IEEE80211_MAX_DATA_LEN },
|
|
|
};
|
|
@@ -2934,6 +2938,7 @@ static int nl80211_parse_mesh_setup(struct genl_info *info,
|
|
|
setup->ie = nla_data(ieattr);
|
|
|
setup->ie_len = nla_len(ieattr);
|
|
|
}
|
|
|
+ setup->is_secure = nla_get_flag(tb[NL80211_MESH_SETUP_USERSPACE_AUTH]);
|
|
|
|
|
|
return 0;
|
|
|
}
|