Page MenuHomeFreeBSD

net80211: document the crypto enmic/demic functions.
ClosedPublic

Authored by adrian on Mar 16 2025, 6:16 PM.
Referenced Files
Unknown Object (File)
Mon, Apr 14, 1:12 PM
Unknown Object (File)
Mon, Apr 14, 10:48 AM
Unknown Object (File)
Sun, Apr 13, 9:31 AM
Unknown Object (File)
Sat, Apr 5, 5:37 AM
Unknown Object (File)
Fri, Apr 4, 10:12 PM
Unknown Object (File)
Fri, Apr 4, 3:24 AM
Unknown Object (File)
Wed, Apr 2, 8:09 PM
Unknown Object (File)
Sun, Mar 30, 4:32 AM

Details

Summary

These functions implement what's needed for TKIP Michael MIC - which
is performed over the entire unencrypted MSDU. Each potential
fragmented MPDU is encrypted and has its own ICV/MIC.

CCMP/GCMP encrypts each MPDU separately (including the MPDUs that make
up an A-MPDU), so they'll implement null functions here and instead do
the MIC/ICV insertion inline in the crypto functions themselves.

Hopefully this makes it a bit clearer on how things should behave, and
will help figure out and clean up what further hardware offload
features we need.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

If both are TKIP-only I keep contemplating if they should be called mmic and we are done ;-)

sys/net80211/ieee80211_crypto.h
219

Can we add a comment here above the two:

/* See ieee80211_crypto_enmic() / ieee80211_crypto_demic() for description. */

Just to make it clearer if we don't rename them to mmic. Or:

/*

  • Currently only used by TKIP.
  • See ieee80211_crypto_enmic() / ieee80211_crypto_demic() for description. */

@bz would you mind reviewing this one in particular next? It's just a documentation commit and I'd like to get this landed :-)

Thanks!

bz requested changes to this revision.Mon, Mar 31, 4:35 PM

If you do the changes (if needed) just commit it.

sys/net80211/ieee80211_crypto.c
780

also here remove the // if you still have to change anything.

sys/net80211/ieee80211_crypto.h
251

is this before fragmentation? I'd not highlight the /before/ if you have to change it.

This revision now requires changes to proceed.Mon, Mar 31, 4:35 PM
This revision is now accepted and ready to land.Wed, Apr 2, 6:24 PM