Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

wifi: nl80211: Add support for EPP peer indication

Introduce a new netlink attribute NL80211_ATTR_EPP_PEER
to be used with NL80211_CMD_NEW_STA and
NL80211_CMD_ADD_LINK_STA for the userspace to indicate
that a non-AP STA is an Enhanced Privacy Protection (EPP)
peer.

Co-developed-by: Rohan Dutta <quic_drohan@quicinc.com>
Signed-off-by: Rohan Dutta <quic_drohan@quicinc.com>
Signed-off-by: Sai Pratyusha Magam <sai.magam@oss.qualcomm.com>
Signed-off-by: Kavita Kavita <kavita.kavita@oss.qualcomm.com>
Link: https://patch.msgid.link/20260114111900.2196941-5-kavita.kavita@oss.qualcomm.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

authored by

Sai Pratyusha Magam and committed by
Johannes Berg
6ee3a22c dc54de8d

+12
+2
include/net/cfg80211.h
··· 1785 1785 * present/updated 1786 1786 * @eml_cap: EML capabilities of this station 1787 1787 * @link_sta_params: link related params. 1788 + * @epp_peer: EPP peer indication 1788 1789 */ 1789 1790 struct station_parameters { 1790 1791 struct net_device *vlan; ··· 1812 1811 bool eml_cap_present; 1813 1812 u16 eml_cap; 1814 1813 struct link_station_parameters link_sta_params; 1814 + bool epp_peer; 1815 1815 }; 1816 1816 1817 1817 /**
+5
include/uapi/linux/nl80211.h
··· 2973 2973 * primary channel is 2 MHz wide, and the control channel designates 2974 2974 * the 1 MHz primary subchannel within that 2 MHz primary. 2975 2975 * 2976 + * @NL80211_ATTR_EPP_PEER: A flag attribute to indicate if the peer is an EPP 2977 + * STA. Used with %NL80211_CMD_NEW_STA and %NL80211_CMD_ADD_LINK_STA 2978 + * 2976 2979 * @NUM_NL80211_ATTR: total number of nl80211_attrs available 2977 2980 * @NL80211_ATTR_MAX: highest attribute number currently defined 2978 2981 * @__NL80211_ATTR_AFTER_LAST: internal use ··· 3543 3540 NL80211_ATTR_NAN_CAPABILITIES, 3544 3541 3545 3542 NL80211_ATTR_S1G_PRIMARY_2MHZ, 3543 + 3544 + NL80211_ATTR_EPP_PEER, 3546 3545 3547 3546 /* add attributes here, update the policy in nl80211.c */ 3548 3547
+5
net/wireless/nl80211.c
··· 932 932 NLA_POLICY_NESTED(nl80211_s1g_short_beacon), 933 933 [NL80211_ATTR_BSS_PARAM] = { .type = NLA_FLAG }, 934 934 [NL80211_ATTR_S1G_PRIMARY_2MHZ] = { .type = NLA_FLAG }, 935 + [NL80211_ATTR_EPP_PEER] = { .type = NLA_FLAG }, 935 936 }; 936 937 937 938 /* policy for the key attributes */ ··· 8793 8792 goto out; 8794 8793 } 8795 8794 } 8795 + 8796 + params.epp_peer = 8797 + nla_get_flag(info->attrs[NL80211_ATTR_EPP_PEER]); 8798 + 8796 8799 err = rdev_add_station(rdev, dev, mac_addr, &params); 8797 8800 out: 8798 8801 dev_put(params.vlan);