cfg80211: support bigger kek/kck key length
With some newer AKMs, the KCK and KEK are bigger, so allow that if the driver advertises support for it. In addition, add a new attribute for the AKM so we can use it for offloaded rekeying. Signed-off-by: Nathan Errera <nathan.errera@intel.com> [reword commit message] Link: https://lore.kernel.org/r/20200528212237.5eb58b00a5d1.I61b09d77c4f382e8d58a05dcca78096e99a6bc15@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:

committed by
Johannes Berg

parent
07c12d618f
commit
093a48d2aa
@@ -2936,12 +2936,17 @@ struct cfg80211_wowlan_wakeup {
|
||||
|
||||
/**
|
||||
* struct cfg80211_gtk_rekey_data - rekey data
|
||||
* @kek: key encryption key (NL80211_KEK_LEN bytes)
|
||||
* @kck: key confirmation key (NL80211_KCK_LEN bytes)
|
||||
* @kek: key encryption key (@kek_len bytes)
|
||||
* @kck: key confirmation key (@kck_len bytes)
|
||||
* @replay_ctr: replay counter (NL80211_REPLAY_CTR_LEN bytes)
|
||||
* @kek_len: length of kek
|
||||
* @kck_len length of kck
|
||||
* @akm: akm (oui, id)
|
||||
*/
|
||||
struct cfg80211_gtk_rekey_data {
|
||||
const u8 *kek, *kck, *replay_ctr;
|
||||
u32 akm;
|
||||
u8 kek_len, kck_len;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -4166,9 +4171,10 @@ struct cfg80211_ops {
|
||||
* beaconing mode (AP, IBSS, Mesh, ...).
|
||||
* @WIPHY_FLAG_HAS_STATIC_WEP: The device supports static WEP key installation
|
||||
* before connection.
|
||||
* @WIPHY_FLAG_SUPPORTS_EXT_KEK_KCK: The device supports bigger kek and kck keys
|
||||
*/
|
||||
enum wiphy_flags {
|
||||
/* use hole at 0 */
|
||||
WIPHY_FLAG_SUPPORTS_EXT_KEK_KCK = BIT(0),
|
||||
/* use hole at 1 */
|
||||
/* use hole at 2 */
|
||||
WIPHY_FLAG_NETNS_OK = BIT(3),
|
||||
|
Reference in New Issue
Block a user