cfg80211: Fix Extended Key ID key install checks
authorAlexander Wetzel <alexander@wetzel-home.de>
Mon, 5 Aug 2019 12:34:00 +0000 (14:34 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 21 Aug 2019 08:19:10 +0000 (10:19 +0200)
commitb67fd72e84a88cae64cea8ab47ccdaab3bb3094d
tree266c477c8ef86243b80da620108b7f32659b071b
parent5fd2f91ad483baffdbe798f8a08f1b41442d1e24
cfg80211: Fix Extended Key ID key install checks

Fix two shortcomings in the Extended Key ID API:

 1) Allow the userspace to install pairwise keys using keyid 1 without
    NL80211_KEY_NO_TX set. This allows the userspace to install and
    activate pairwise keys with keyid 1 in the same way as for keyid 0,
    simplifying the API usage for e.g. FILS and FT key installs.

 2) IEEE 802.11 - 2016 restricts Extended Key ID usage to CCMP/GCMP
    ciphers in IEEE 802.11 - 2016 "9.4.2.25.4 RSN capabilities".
    Enforce that when installing a key.

Cc: stable@vger.kernel.org # 5.2
Fixes: 6cdd3979a2bd ("nl80211/cfg80211: Extended Key ID support")
Signed-off-by: Alexander Wetzel <alexander@wetzel-home.de>
Link: https://lore.kernel.org/r/20190805123400.51567-1-alexander@wetzel-home.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/wireless/util.c