freebsd-src/sys/net80211
Adrian Chadd 36fcd52c2b net80211: fix TKIP trailer trimming w/ no rx parameters given
Previous work made trimming the TKIP trailer an optional thing
based on what the driver indicated it did with the received
frame.  However, for drivers that aren't populating an RX frame
with an rx status - notably iwn(4) - exposed this bug.

If the driver doesn't expose any RX status then just restore
the previous behaviour.

This matches what was done in the CCMP code in ccmp_decap().

Locally tested:

* iwn(4), STA mode, CCMP + TKIP groupwise network

Differential Revision:	https://reviews.freebsd.org/D50638
Fixes:	731ff40069
MFC after:	3 days
Reviewed by:	bz
2025-06-02 17:11:59 -07:00
..
_ieee80211.h net80211; LinuxKPI 802.11: introduce IEEE80211_RX_F_ICV_STRIP 2025-04-22 20:03:30 +00:00
ieee80211.c net80211: migrate if_flags, if_drvflags out of most source files 2025-05-25 08:23:34 -07:00
ieee80211.h net80211: fix VHT160 and VHT80P80 selection and enable in LinuxKPI 802.11 2025-06-01 15:12:27 +00:00
ieee80211_acl.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ieee80211_action.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
ieee80211_action.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_adhoc.c net80211: refactor out ifp->if_broadcastaddr into ieee80211_freebsd.c 2025-05-25 08:23:55 -07:00
ieee80211_adhoc.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_ageq.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ieee80211_ageq.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_alq.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
ieee80211_alq.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_amrr.c net80211: add VHT MCS in AMRR rate control 2025-02-26 11:31:24 -08:00
ieee80211_amrr.h net80211: add VHT MCS in AMRR rate control 2025-02-26 11:31:24 -08:00
ieee80211_crypto.c net80211: fail setting a key if the cipher isn't HW/SW supported 2025-04-07 18:35:22 -07:00
ieee80211_crypto.h net80211: refactor out the AAD init code shared between GCMP and CCMP 2025-04-07 18:35:21 -07:00
ieee80211_crypto_ccmp.c net80211: refactor out the AAD init code shared between GCMP and CCMP 2025-04-07 18:35:21 -07:00
ieee80211_crypto_gcm.c net80211: add initial AES-GCMP crypto support 2025-03-12 17:02:27 -07:00
ieee80211_crypto_gcm.h net80211: add initial AES-GCMP crypto support 2025-03-12 17:02:27 -07:00
ieee80211_crypto_gcmp.c net80211: refactor out the AAD init code shared between GCMP and CCMP 2025-04-07 18:35:21 -07:00
ieee80211_crypto_none.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ieee80211_crypto_tkip.c net80211: fix TKIP trailer trimming w/ no rx parameters given 2025-06-02 17:11:59 -07:00
ieee80211_crypto_wep.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ieee80211_ddb.c net80211: add AES-GCM in ddb output 2025-03-01 17:35:23 -08:00
ieee80211_dfs.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
ieee80211_dfs.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_freebsd.c net80211: remove direct references to ifp->if_xname 2025-05-25 08:24:10 -07:00
ieee80211_freebsd.h net80211: refactor out ifp->if_broadcastaddr into ieee80211_freebsd.c 2025-05-25 08:23:55 -07:00
ieee80211_hostap.c net80211: refactor out ifp->if_broadcastaddr into ieee80211_freebsd.c 2025-05-25 08:23:55 -07:00
ieee80211_hostap.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_ht.c net80211: fix VHT160 and VHT80P80 selection and enable in LinuxKPI 802.11 2025-06-01 15:12:27 +00:00
ieee80211_ht.h net80211: HT: add missing bit descriptions for IEEE80211_AGGR_BITS 2024-12-08 20:59:15 +00:00
ieee80211_hwmp.c net80211: Fix a typo in a source code comment 2024-01-22 21:54:36 +01:00
ieee80211_input.c net80211: refactor the if_input call into ieee80211_vap_deliver_data() 2025-05-25 08:23:14 -07:00
ieee80211_input.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_ioctl.c net80211: make sure to not start a BGSCAN if not enabled 2025-05-28 10:42:58 +00:00
ieee80211_ioctl.h net80211: fail setting a key if the cipher isn't HW/SW supported 2025-04-07 18:35:22 -07:00
ieee80211_mesh.c net80211: remove direct use of ni->ni_txrate, add indirection methods 2025-02-26 11:29:09 -08:00
ieee80211_mesh.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
ieee80211_monitor.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
ieee80211_monitor.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_node.c net80211: Fix IEEE80211_KEY_UNDEFINED() in ieee80211_node_delucastkey() 2025-03-05 21:18:15 +00:00
ieee80211_node.h net80211: fill in missing flags to IEEE80211_NODE_BITS 2025-04-11 21:17:24 +00:00
ieee80211_output.c net80211: refactor out ifp->if_broadcastaddr into ieee80211_freebsd.c 2025-05-25 08:23:55 -07:00
ieee80211_phy.c net80211: add ieee80211_phy_vht_get_mcs_kbit() 2025-02-26 11:31:25 -08:00
ieee80211_phy.h net80211: add ieee80211_phy_vht_get_mcs_kbit() 2025-02-26 11:31:25 -08:00
ieee80211_power.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ieee80211_power.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_proto.c net80211: migrate if_flags, if_drvflags out of most source files 2025-05-25 08:23:34 -07:00
ieee80211_proto.h net80211: refactor sequence number assignment code 2025-05-15 19:33:27 -07:00
ieee80211_radiotap.c net80211: Correct a comment 2024-06-20 12:27:43 +08:00
ieee80211_radiotap.h net8011: radiotap: add more EHT constants 2024-04-14 23:09:09 +00:00
ieee80211_ratectl.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
ieee80211_ratectl.h net80211: change ieee80211_ratectl_rate() to not return a rix 2025-02-26 11:29:36 -08:00
ieee80211_ratectl_none.c net80211: remove direct use of ni->ni_txrate, add indirection methods 2025-02-26 11:29:09 -08:00
ieee80211_regdomain.c net80211: migrate ic_vhtcaps, ic_vht_mcsinfo, ic_flags_vht 2023-11-03 21:08:04 +00:00
ieee80211_regdomain.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_rssadapt.c net80211: remove direct use of ni->ni_txrate, add indirection methods 2025-02-26 11:29:09 -08:00
ieee80211_rssadapt.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
ieee80211_scan.c net80211: make sure to not start a BGSCAN if not enabled 2025-05-28 10:42:58 +00:00
ieee80211_scan.h net80211: scan/internal: change boolean argument from int to bool 2024-07-26 11:07:39 +00:00
ieee80211_scan_sta.c net80211: remove direct use of ni->ni_txrate, add indirection methods 2025-02-26 11:29:09 -08:00
ieee80211_scan_sw.c net80211: make sure to not start a BGSCAN if not enabled 2025-05-28 10:42:58 +00:00
ieee80211_scan_sw.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_sta.c net80211: migrate if_flags, if_drvflags out of most source files 2025-05-25 08:23:34 -07:00
ieee80211_sta.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_superg.c net80211: fix ff_approx_txtime() to handle VHT rates 2025-05-03 08:38:51 -07:00
ieee80211_superg.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_tdma.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
ieee80211_tdma.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_var.h net80211: validate control frame TA/RA before further processing 2025-04-24 22:35:49 -07:00
ieee80211_vht.c net80211: fix VHT80/VHT160 transmit width checks 2025-05-03 08:38:25 -07:00
ieee80211_vht.h net80211: add ieee80211_vht_node_check_tx_valid_mcs() 2025-02-26 11:31:02 -08:00
ieee80211_wds.c net80211: remove direct references to ifp->if_xname 2025-05-25 08:24:10 -07:00
ieee80211_wds.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_wps.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ieee80211_xauth.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00