linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] Extended Key ID support
@ 2019-03-16 20:42 Alexander Wetzel
  2019-03-16 20:42 ` [PATCH 1/5] nl80211/cfg80211: " Alexander Wetzel
                   ` (4 more replies)
  0 siblings, 5 replies; 8+ messages in thread
From: Alexander Wetzel @ 2019-03-16 20:42 UTC (permalink / raw)
  To: johannes; +Cc: linux-wireless, Alexander Wetzel

This patch series adds support for IEEE 802.11-2016 Extended Key ID
support. Compared to the last RFC there are again quite some API
changes, but also some bug fixes. (The bug fixes I remember are outlined
in the different patches.)

The main differences are:
1) This series drops support to let the driver decide which key/keyid
   shall be used to encrypt a MPDU. The drivers must now always encrypt
   the MPDU with the key mac80211 has selected for it. This allows us to
   use the "normal" key install API for drivers and gets rid of special
   calls for Extended Key ID between mac80211 and the drivers.

2) It also drops the overly complex handling for tailroom needed and
   just handles the Rx-only keys like Rx/Tx ones.

3) The "old" Rx-only key flag has been replaced by
   IEEE80211_KEY_FLAG_NO_AUTO_TX. It's no longer cleared and primarily
   intended to stop ieee80211_key_replace() to activating the key for
   Tx, but also allows COMPAT driver to determine if Rx HW crypto can be
   activated or not.

4) COMPAT Extended Key ID will enable Rx decryption offload only after
   (at least) one MPDU has been decoded for the key with SW crypto.

5) COMPAT Extended Key ID support now has two dedicated key calls for
   activating/deactivating Rx HW offload.

6) A-MPDU border signal is now generated unconditionally, so there will
   always be one more packet with the old key, regardless of the time
   passed since the new key has been activated.

I think the API here is much simpler to understand and use, but it's
also a reversal of the decision from the first RFC version to not use
key flags to distinguish between normal and Extended Key ID installs.
(Normally only COMPAT drivers should care about the flag.)

I've tested the patches, but mostly only the full series.

Alexander Wetzel (5):
  nl80211/cfg80211: Extended Key ID support
  mac80211: IEEE 802.11 Extended Key ID support
  mac80211: Compatibility Extended Key ID support
  mac80211: Mark A-MPDU keyid borders for drivers
  mac80211_hwsim: Ext Key ID support (NATIVE)

 drivers/net/wireless/mac80211_hwsim.c |   1 +
 include/net/cfg80211.h                |   2 +
 include/net/mac80211.h                |  55 +++++++++-
 include/uapi/linux/nl80211.h          |  28 +++++
 net/mac80211/cfg.c                    |  36 +++++++
 net/mac80211/debugfs.c                |   2 +
 net/mac80211/ieee80211_i.h            |   2 +-
 net/mac80211/key.c                    | 143 ++++++++++++++++++++++----
 net/mac80211/key.h                    |   7 ++
 net/mac80211/main.c                   |  23 +++++
 net/mac80211/rx.c                     |  80 +++++++-------
 net/mac80211/sta_info.c               |  12 +++
 net/mac80211/sta_info.h               |   7 +-
 net/mac80211/tx.c                     |  73 +++++++++----
 net/wireless/nl80211.c                |  32 +++++-
 net/wireless/rdev-ops.h               |   3 +-
 net/wireless/trace.h                  |  31 +++++-
 net/wireless/util.c                   |  21 ++--
 18 files changed, 465 insertions(+), 93 deletions(-)

-- 
2.21.0


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2019-03-19 21:21 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-16 20:42 [PATCH 0/5] Extended Key ID support Alexander Wetzel
2019-03-16 20:42 ` [PATCH 1/5] nl80211/cfg80211: " Alexander Wetzel
2019-03-16 20:42 ` [PATCH 2/5] mac80211: IEEE 802.11 " Alexander Wetzel
2019-03-16 20:42 ` [PATCH 3/5] mac80211: Compatibility " Alexander Wetzel
2019-03-16 20:42 ` [PATCH 4/5] mac80211: Mark A-MPDU keyid borders for drivers Alexander Wetzel
2019-03-16 20:42 ` [PATCH 5/5] mac80211_hwsim: Ext Key ID support (NATIVE) Alexander Wetzel
2019-03-17 22:38   ` Johannes Berg
2019-03-19 20:44     ` Alexander Wetzel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).