nl80211: Add STA node details in AP through QCA vendor subcommand
Addi STA node details in AP through QCA vendor subcommand QCA_NL80211_VENDOR_SUBCMD_ADD_STA_NODE vendor when processing FT protocol roaming. Signed-off-by: Shiva Sankar Gajula <sgajula@codeaurora.org>
This commit is contained in:
parent
f273b2a5c7
commit
df3b2e22a0
5 changed files with 52 additions and 3 deletions
|
@ -9558,6 +9558,40 @@ fail:
|
|||
return -1;
|
||||
}
|
||||
|
||||
|
||||
static int nl80211_add_sta_node(void *priv, const u8 *addr, u16 auth_alg)
|
||||
{
|
||||
struct i802_bss *bss = priv;
|
||||
struct wpa_driver_nl80211_data *drv = bss->drv;
|
||||
struct nl_msg *msg;
|
||||
struct nlattr *params;
|
||||
|
||||
if (!drv->add_sta_node_vendor_cmd_avail)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
wpa_printf(MSG_DEBUG, "nl80211: Add STA node");
|
||||
|
||||
if (!(msg = nl80211_drv_msg(drv, 0, NL80211_CMD_VENDOR)) ||
|
||||
nla_put_u32(msg, NL80211_ATTR_VENDOR_ID, OUI_QCA) ||
|
||||
nla_put_u32(msg, NL80211_ATTR_VENDOR_SUBCMD,
|
||||
QCA_NL80211_VENDOR_SUBCMD_ADD_STA_NODE) ||
|
||||
!(params = nla_nest_start(msg, NL80211_ATTR_VENDOR_DATA)) ||
|
||||
(addr &&
|
||||
nla_put(msg, QCA_WLAN_VENDOR_ATTR_ADD_STA_NODE_MAC_ADDR, ETH_ALEN,
|
||||
addr)) ||
|
||||
nla_put_u16(msg, QCA_WLAN_VENDOR_ATTR_ADD_STA_NODE_AUTH_ALGO,
|
||||
auth_alg)) {
|
||||
nlmsg_free(msg);
|
||||
wpa_printf(MSG_ERROR,
|
||||
"%s: err in adding vendor_cmd and vendor_data",
|
||||
__func__);
|
||||
return -1;
|
||||
}
|
||||
nla_nest_end(msg, params);
|
||||
|
||||
return send_and_recv_msgs(drv, msg, NULL, NULL);
|
||||
}
|
||||
|
||||
#endif /* CONFIG_DRIVER_NL80211_QCA */
|
||||
|
||||
|
||||
|
@ -11222,6 +11256,7 @@ const struct wpa_driver_ops wpa_driver_nl80211_ops = {
|
|||
.ignore_assoc_disallow = nl80211_ignore_assoc_disallow,
|
||||
#endif /* CONFIG_MBO */
|
||||
.set_bssid_blacklist = nl80211_set_bssid_blacklist,
|
||||
.add_sta_node = nl80211_add_sta_node,
|
||||
#endif /* CONFIG_DRIVER_NL80211_QCA */
|
||||
.configure_data_frame_filters = nl80211_configure_data_frame_filters,
|
||||
.get_ext_capab = nl80211_get_ext_capab,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue