From nobody Tue Apr 08 01:35:30 2025 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 4ZWpYb3lKdz5sWcX; Tue, 08 Apr 2025 01:35:31 +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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWpYb007Qz3Pd0; Tue, 08 Apr 2025 01:35:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744076131; 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=ogsT3k88u9aYrcXY8/xgcuEdqZa4uJD+CevH9xVv8rw=; b=uVYiMZhcpUCZWEJ6Ef5ditzVNDhCafhYBCBHz5UJDpADy9iJcFf6ILTbCKUJILYhloszmS 9bRxBJLeT5jcsssUfHulQY+26NInyKNUp5W/LaeKJu3Sxb7Q+Q7Rvvc6ExoVGicfgkQOZN UDtetdtIdyQHOBTCckIi86YdooMuJXeUxeAjCZjG+DVKuGNDTr8BlxWLPsgKOBnu+NMPki fKSk9ew/uBZ28DYMz6/dncj0w3LItYvtx1Qt7LzGAKFnhy/wZwZWdEcjptVv6Zo3E8Jtbd +In2mUMkNdgxoprrJIb0KhkFCgRwW0OskLVXNGTpHDe/AhSqNUytl/kI+e/0xA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744076131; a=rsa-sha256; cv=none; b=kky2A4lMuEc1mSSXtKBloyihARV8rU0YVOvX7+1UjbdoohqFS3dhDQPkOm9EFqVLmPf5fr zYa3EmnYO1sRraXdzMc4/ebJi5USRSTAaklwU0XJPXe0aswnH7r5yWAGNhuObAT3vEdVQV /oco6RtgsURwYV/9rM6RGWIiRhZ4q+gKEaANfCK+0BZkpozg4TkMAt3+GNDCsEQszyxDBC 8C31sxTn9207ohq3DrRr32J1ZZmqCXQ2g8pTMFyliDxMbv3sR8oqanMVY17OvOdJS7IRvR YveahH9FlhO5oaa2yHPsZxPMUn6mVZffXboTU/7hzQKXLfLa6Oi32mVk/L0GAw== 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=1744076131; 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=ogsT3k88u9aYrcXY8/xgcuEdqZa4uJD+CevH9xVv8rw=; b=qcWEX7Mv26nDxBLFELTNTxTtyWW4y7AoJ5nn+hOBtfV+Sg+ALWOZ+8aYtnt11WlgQ5WtEL 9EeOIWu1mhZu+NRpwoFsK6mBp+LkrUtNMJrpiBvefoG0e/tejIci8YrNAkwGwDJEaC1ozB B3jLZuutyNWxejqDPsKx+ICbYkgvQ2WdxhTxx+jPQmsyfk4Q4ye2Hqin2GjKuLxT8W+CnR Ddf/9Gt0h5rksgeqmm680Mbjtc5iz1ZByUT+3UL2c1e0R9qIXNkfhESCks0bIKmTOqkYtJ F4HsYHwHf2DipP61i+T7MF9NfWvWLLz1EQkx4gQT4Thek9qUfce93c61MNIC/g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (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 did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWpYZ6Yjwz18lb; Tue, 08 Apr 2025 01:35:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5381ZUqK071342; Tue, 8 Apr 2025 01:35:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5381ZUi9071339; Tue, 8 Apr 2025 01:35:30 GMT (envelope-from git) Date: Tue, 8 Apr 2025 01:35:30 GMT Message-Id: <202504080135.5381ZUi9071339@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: fa06d18b3b87 - main - wpa: add support for CCMP-256/GMCP-256 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: fa06d18b3b8753a6b51198051d44edb2043db938 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=fa06d18b3b8753a6b51198051d44edb2043db938 commit fa06d18b3b8753a6b51198051d44edb2043db938 Author: Adrian Chadd AuthorDate: 2025-03-20 04:20:56 +0000 Commit: Adrian Chadd CommitDate: 2025-04-08 01:35:22 +0000 wpa: add support for CCMP-256/GMCP-256 This adds support for CCMP-256 and GCMP-256 if available via net80211 device capabilities, and will set the keys as needed. Differential Revision: https://reviews.freebsd.org/D49418 Reviewed by: cy --- contrib/wpa/src/drivers/driver_bsd.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/contrib/wpa/src/drivers/driver_bsd.c b/contrib/wpa/src/drivers/driver_bsd.c index fc9a44743d7d..6efaa9c27ff2 100644 --- a/contrib/wpa/src/drivers/driver_bsd.c +++ b/contrib/wpa/src/drivers/driver_bsd.c @@ -378,9 +378,15 @@ bsd_set_key(void *priv, struct wpa_driver_set_key_params *params) case WPA_ALG_CCMP: wk.ik_type = IEEE80211_CIPHER_AES_CCM; break; + case WPA_ALG_CCMP_256: + wk.ik_type = IEEE80211_CIPHER_AES_CCM_256; + break; case WPA_ALG_GCMP: wk.ik_type = IEEE80211_CIPHER_AES_GCM_128; break; + case WPA_ALG_GCMP_256: + wk.ik_type = IEEE80211_CIPHER_AES_GCM_256; + break; case WPA_ALG_BIP_CMAC_128: wk.ik_type = IEEE80211_CIPHER_BIP_CMAC_128; break; @@ -448,16 +454,24 @@ bsd_configure_wpa(void *priv, struct wpa_bss_params *params) { #ifndef IEEE80211_IOC_APPIE static const char *ciphernames[] = - { "WEP", "TKIP", "AES-OCB", "AES-CCM", "CKIP", "NONE" }; + { "WEP", "TKIP", "AES-OCB", "AES-CCM", "CKIP", "NONE", + "AES-CCM-256", "BIP-CMAC-128", "BIP-CMAC-256", "BIP-GMAC-128", + "BIP-GMAC-256", "AES-GCM-128", "AES-GCM-256" }; int v; switch (params->wpa_group) { case WPA_CIPHER_CCMP: v = IEEE80211_CIPHER_AES_CCM; break; + case WPA_CIPHER_CCMP_256: + v = IEEE80211_CIPHER_AES_CCM_256; + break; case WPA_CIPHER_GCMP: v = IEEE80211_CIPHER_AES_GCM_128; break; + case WPA_CIPHER_GCMP_256: + v = IEEE80211_CIPHER_AES_GCM_256; + break; case WPA_CIPHER_BIP_CMAC_128: v = IEEE80211_CIPHER_BIP_CMAC_128; break; @@ -501,8 +515,12 @@ bsd_configure_wpa(void *priv, struct wpa_bss_params *params) v |= 1<wpa_pairwise & WPA_CIPHER_GCMP) v |= 1<wpa_pairwise & WPA_CIPHER_GCMP_256) + v |= 1<wpa_pairwise & WPA_CIPHER_CCMP) v |= 1<wpa_pairwise & WPA_CIPHER_CCMP_256) + v |= 1<wpa_pairwise & WPA_CIPHER_TKIP) v |= 1<wpa_pairwise & WPA_CIPHER_NONE) @@ -1584,8 +1602,12 @@ static int wpa_driver_bsd_capa(struct bsd_driver_data *drv) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_TKIP; if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_AES_CCM) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_CCMP; + if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_AES_CCM_256) + drv->capa.enc |= WPA_DRIVER_CAPA_ENC_CCMP_256; if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_AES_GCM_128) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_GCMP; + if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_AES_GCM_256) + drv->capa.enc |= WPA_DRIVER_CAPA_ENC_GCMP_256; if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_BIP_CMAC_128) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_BIP;