History

nl80211: Add CAN_REPLACE_PTK0 API

Drivers able to correctly replace a in-use key should set @NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 to allow the user space (e.g. hostapd or wpa_supplicant) to rekey PTK keys. The user space must detect a PTK rekey attempt and only go ahead with it when the driver has set this flag. If the driver is not supporting the feature the user space either must not replace the PTK key or perform a full re-association instead. Ignoring this flag and continuing to rekey the connection can still work but has to be considered insecure and broken. Depending on the driver it can leak clear text packets or freeze the connection and is only supported to allow the user space to be updated.

Alexander Wetzel committed 8 years ago

Commit 2b815b01 parent d1332e71 file · +6 −0Browse files

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

Unified · Split

include/uapi/linux/nl80211.h+6−0
@@ -5226,6 +5226,11 @@ enum nl80211_feature_flags { · 5225 unmodified lines
52265226 * except for supported rates from the probe request content if requested
52275227 * by the %NL80211_SCAN_FLAG_MIN_PREQ_CONTENT flag.
52285228 *
5229+ * @NL80211_EXT_FEATURE_CAN_REPLACE_PTK0: Driver/device confirm that they are
5230+ * able to rekey an in-use key correctly. Userspace must not rekey PTK keys
5231+ * if this flag is not set. Ignoring this can leak clear text packets and/or
5232+ * freeze the connection.
5233+ *
52295234 * @NUM_NL80211_EXT_FEATURES: number of extended features.
52305235 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
52315236 */
@@ -5263,6 +5268,7 @@ enum nl80211_ext_feature_index { · 31 unmodified lines
52635268 NL80211_EXT_FEATURE_TXQS,
52645269 NL80211_EXT_FEATURE_SCAN_RANDOM_SN,
52655270 NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT,
5271+ NL80211_EXT_FEATURE_CAN_REPLACE_PTK0,
52665272
52675273 /* add new features before the definition below */
52685274 NUM_NL80211_EXT_FEATURES,