History

cfg80211/nl80211: Offload OWE processing to user space in AP mode

This interface allows the host driver to offload OWE processing to user space. This intends to support OWE (Opportunistic Wireless Encryption) AKM by the drivers that implement SME but rely on the user space for the cryptographic/OWE processing in AP mode. Such drivers are not capable of processing/deriving the DH IE. A new NL80211 command - NL80211_CMD_UPDATE_OWE_INFO is introduced to send the request/event between the host driver and user space. Driver shall provide the OWE info (MAC address and DH IE) of the peer to user space for cryptographic processing of the DH IE through the event. Accordingly, the user space shall update the OWE info/DH IE to the driver. Following is the sequence in AP mode for OWE authentication. Driver passes the OWE info obtained from the peer in the Association Request to the user space through the event cfg80211_update_owe_info_event. User space shall process the OWE info received and generate new OWE info. This OWE info is passed to the driver through NL80211_CMD_UPDATE_OWE_INFO request. Driver eventually uses this OWE info to send the Association Response to the peer. This OWE info in the command interface carries the IEs that include PMKID of the peer if the PMKSA is still valid or an updated DH IE for generating a new PMKSA with the peer.

Sunil Dutt committed 7 years ago

Commit cb74e971 parent ab606335 files · +172 −0Browse files

Showing the changes to include/uapi/linux (1 of 5 files). Show all

Unified · Split

include/uapi/linux/nl80211.h+7−0
@@ -1065,6 +1065,11 @@ · 1064 unmodified lines
1065 * indicated by %NL80211_ATTR_WIPHY_FREQ and other attributes1065 * indicated by %NL80211_ATTR_WIPHY_FREQ and other attributes
1066 * determining the width and type.1066 * determining the width and type.
1067 *1067 *
1068 * @NL80211_CMD_UPDATE_OWE_INFO: This interface allows the host driver to
1069 * offload OWE processing to user space. This intends to support
1070 * OWE AKM by the host drivers that implement SME but rely
1071 * on the user space for the cryptographic/DH IE processing in AP mode.
1072 *
1068 * @NL80211_CMD_MAX: highest used command number1073 * @NL80211_CMD_MAX: highest used command number
1069 * @__NL80211_CMD_AFTER_LAST: internal use1074 * @__NL80211_CMD_AFTER_LAST: internal use
1070 */1075 */
@@ -1285,6 +1290,8 @@ enum nl80211_commands { · 214 unmodified lines
1285 1290
1286 NL80211_CMD_NOTIFY_RADAR,1291 NL80211_CMD_NOTIFY_RADAR,
1287 1292
1293 NL80211_CMD_UPDATE_OWE_INFO,
1294
1288 /* add new commands above here */1295 /* add new commands above here */
1289 1296
1290 /* used to define NL80211_CMD_MAX below */1297 /* used to define NL80211_CMD_MAX below */