#
6d21920e |
| 15-Mar-2025 |
Adrian Chadd <adrian@FreeBSD.org> |
net80211: refactor out the AAD init code shared between GCMP and CCMP
The 802.11 specification specifically calls out that the GCMP AES uses the CCMP AES specification, so we can re-use this here.
net80211: refactor out the AAD init code shared between GCMP and CCMP
The 802.11 specification specifically calls out that the GCMP AES uses the CCMP AES specification, so we can re-use this here.
Changes during refactoring:
* the first block (b0) needs the priority field populated, which was being done inline with the CCMP AAD assembly. So write a new function that implements just that.
* Use IEEE80211_IS_QOS_ANY() in the AAD assembly; 802.11-2020 12.5.3.3.3 (Construct AAD) talks about frames with QoS control field, not specifically QoS data frames (ie, not avoiding PS-POLL.)
* Use IEEE80211_IS_QOS_ANY() in the CCM nonce assembly. Leave some verbose comments about the definition of "MPDU priority".
* mask the HTC/ORDER bit in the FC if the data frame contains a QoS control field. Again, see 802.11-2020 12.5.3.3.3.
* Add extra comments about missing items and functionality for later implementation.
Differential Revision: https://reviews.freebsd.org/D49367 Reviewed by: bz
show more ...
|
#
2d4583c4 |
| 28-Feb-2025 |
Adrian Chadd <adrian@FreeBSD.org> |
net80211: add initial AES-GCMP crypto support
This adds initial AES-GCMP crypto support. It registers for both 128 and 256 bit support, although the 256 bit support will not work without extending
net80211: add initial AES-GCMP crypto support
This adds initial AES-GCMP crypto support. It registers for both 128 and 256 bit support, although the 256 bit support will not work without extending the net80211/ioctl keylength.
This is not yet enabled by default; drivers will need to opt-in to supporting it in either hardware or software.
The AES-GCMP code is BSD licenced code from hostapd.git release 2.11.
Differential Revision: https://reviews.freebsd.org/D49161
show more ...
|