From nobody Thu Feb 26 03:56:19 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4fLyLW4Sl0z6TBJs for ; Thu, 26 Feb 2026 03:56:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fLyLW3d2Kz3CSp for ; Thu, 26 Feb 2026 03:56:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1772078179; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fjH2bguszh4QHuj4ZqdTHuauBQimoQPN5BdKhRT0HwI=; b=YNwQ5xmbWX/ghY7EvgKotUcepw1aBhfBbYMDYiUiZjnElZeLEtfnQIZB1GKIg5OIzwU2B7 ON/ZgyPSbbntXLXYLoIcafO1jSffvXYOOjO/uKanY7PCK5EavecGFUBgvkvDf1pNyvZRiL 48szHo+n+5RI8NCBOLbJXCjonDF8FIkltGq8/+Rg916ERvRkYWjcImg9wyg3hruBmrQnCD njz9VRKKqTMeM95s9fMVsToUt3rigjYFqUb0M56s9BpL3+1/BVmP88Ui7o07rwPEsY0vWY HeJ+k4tmoWXSzMtXxbps7tH1noakEfKIjyFAWoD6r8zadKECeUam3Bgt4c4J7Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1772078179; a=rsa-sha256; cv=none; b=LM7ZRlomKT4Tf89M5sKwbPBLnpSPa56IcVSf95qizCwKafc4+nZ7Sw4JZirqBlQgnYYYwc dJylfYV9O4FTCzuZVlLsCaVsZHy76ffVcWsNZJGKTc1xKAp7RP7otH4aGzhYdHOot8TPvo nBaiuSUP6snuB0MdVdPOYdLLJayeZdPXmydgnz4IQlWU49n11pcuNzhNRX3jE3ST25bum8 yw/fKTJ0H6Xvbvv4PtwHWkfk/9KVucXGTOev/jcKUbw+r0gLb/QtAxopEhCE8TUiGa5NG8 eBgEPhSQ0zN0LzWCtXfmG8L1UNvnKR5beYDPQEArJEy8rXApqxUg7wZG7jkTnA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1772078179; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fjH2bguszh4QHuj4ZqdTHuauBQimoQPN5BdKhRT0HwI=; b=F4Mu6q+B4BuYv8LLpiiDl8BtVj9+p+uWbC0xA3T9F+D7Uh1zJtdsMUU5y1Agrai/6VKVZx ZPBJHJlBl71ZTJv34fmuQL4hiBLle7gnc9zAtnVJFryKM9KR52vhifYyHtxFiBis4p6z+/ vA7rE8Zj37c117ioMHaFj/oMyOx7aM2B0C5zzPSsz2U1xwQB+Zr3N+AdEniaaPXS88nsJQ AGJim54GsHRw9rebnr0BhggHCkKbzjF3MnGWLCjgYrpxGx41EHl/58Wspi20U9wj3Q14Ki tTJoAp6FH3uPBUWXvy9SGzTA4mYvPL57PDvV4d80e2MDHcvRXbQI8nWaggnn8A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fLyLW38K7zp7 for ; Thu, 26 Feb 2026 03:56:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3237a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 26 Feb 2026 03:56:19 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: a54a36c40f07 - main - ath: migrate to new net80211 encryption key API List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a54a36c40f07092ace706ccec8c3db6f6a1877c1 Auto-Submitted: auto-generated Date: Thu, 26 Feb 2026 03:56:19 +0000 Message-Id: <699fc463.3237a.681a6e95@gitrepo.freebsd.org> The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=a54a36c40f07092ace706ccec8c3db6f6a1877c1 commit a54a36c40f07092ace706ccec8c3db6f6a1877c1 Author: Adrian Chadd AuthorDate: 2026-02-26 03:49:27 +0000 Commit: Adrian Chadd CommitDate: 2026-02-26 03:49:27 +0000 ath: migrate to new net80211 encryption key API Migrate to the new encryption key API rather than poking at the key struct directly. Differential Revision: https://reviews.freebsd.org/D54479 --- sys/dev/ath/if_ath_keycache.c | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/sys/dev/ath/if_ath_keycache.c b/sys/dev/ath/if_ath_keycache.c index a58625ad2803..2b40a8940674 100644 --- a/sys/dev/ath/if_ath_keycache.c +++ b/sys/dev/ath/if_ath_keycache.c @@ -134,12 +134,16 @@ ath_keyset_tkip(struct ath_softc *sc, const struct ieee80211_key *k, * TX key goes at first index, RX key at the rx index. * The hal handles the MIC keys at index+64. */ - memcpy(hk->kv_mic, k->wk_txmic, sizeof(hk->kv_mic)); + memcpy(hk->kv_mic, + ieee80211_crypto_get_key_txmic_data(k), + sizeof(hk->kv_mic)); KEYPRINTF(sc, k->wk_keyix, hk, zerobssid); if (!ath_hal_keyset(ah, k->wk_keyix, hk, zerobssid)) return 0; - memcpy(hk->kv_mic, k->wk_rxmic, sizeof(hk->kv_mic)); + memcpy(hk->kv_mic, + ieee80211_crypto_get_key_rxmic_data(k), + sizeof(hk->kv_mic)); KEYPRINTF(sc, k->wk_keyix+32, hk, mac); /* XXX delete tx key on failure? */ return ath_hal_keyset(ah, k->wk_keyix+32, hk, mac); @@ -149,8 +153,12 @@ ath_keyset_tkip(struct ath_softc *sc, const struct ieee80211_key *k, * slot, just set key at the first index; the hal * will handle the rest. */ - memcpy(hk->kv_mic, k->wk_rxmic, sizeof(hk->kv_mic)); - memcpy(hk->kv_txmic, k->wk_txmic, sizeof(hk->kv_txmic)); + memcpy(hk->kv_mic, + ieee80211_crypto_get_key_rxmic_data(k), + sizeof(hk->kv_mic)); + memcpy(hk->kv_txmic, + ieee80211_crypto_get_key_txmic_data(k), + sizeof(hk->kv_txmic)); KEYPRINTF(sc, k->wk_keyix, hk, mac); return ath_hal_keyset(ah, k->wk_keyix, hk, mac); } @@ -160,13 +168,19 @@ ath_keyset_tkip(struct ath_softc *sc, const struct ieee80211_key *k, * NB: must pass MIC key in expected location when * the keycache only holds one MIC key per entry. */ - memcpy(hk->kv_mic, k->wk_txmic, sizeof(hk->kv_txmic)); + memcpy(hk->kv_mic, + ieee80211_crypto_get_key_txmic_data(k), + sizeof(hk->kv_txmic)); } else - memcpy(hk->kv_txmic, k->wk_txmic, sizeof(hk->kv_txmic)); + memcpy(hk->kv_txmic, + ieee80211_crypto_get_key_txmic_data(k), + sizeof(hk->kv_txmic)); KEYPRINTF(sc, k->wk_keyix, hk, mac); return ath_hal_keyset(ah, k->wk_keyix, hk, mac); } else if (k->wk_flags & IEEE80211_KEY_RECV) { - memcpy(hk->kv_mic, k->wk_rxmic, sizeof(hk->kv_mic)); + memcpy(hk->kv_mic, + ieee80211_crypto_get_key_rxmic_data(k), + sizeof(hk->kv_mic)); KEYPRINTF(sc, k->wk_keyix, hk, mac); return ath_hal_keyset(ah, k->wk_keyix, hk, mac); } @@ -210,8 +224,10 @@ ath_keyset(struct ath_softc *sc, struct ieee80211vap *vap, KASSERT(cip->ic_cipher < nitems(ciphermap), ("invalid cipher type %u", cip->ic_cipher)); hk.kv_type = ciphermap[cip->ic_cipher]; - hk.kv_len = k->wk_keylen; - memcpy(hk.kv_val, k->wk_key, k->wk_keylen); + hk.kv_len = ieee80211_crypto_get_key_len(k); + memcpy(hk.kv_val, + ieee80211_crypto_get_key_data(k), + ieee80211_crypto_get_key_len(k)); } else hk.kv_type = HAL_CIPHER_CLR;