From nobody Sun Jun 26 00:47:20 2022 X-Original-To: dev-commits-src-all@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 6EA15877A35; Sun, 26 Jun 2022 00:47:20 +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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4LVsdN2H95z4rxn; Sun, 26 Jun 2022 00:47:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1656204440; 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=0V7XcE4rT99NBRZfpLqistJMv9Gv5DAGmj+0o9N3GxQ=; b=RfMpELL0hVJTUefmZJalkS+Nry9MSCk7E7ha2tNK//6qsjgGQ64t+ucP0vyOJH9p84qg9o WDtFnUullCS07Y6UiDjhrJNLOgg1nZp/RFF2MLW9GoccaGHnTsLDxcc3o4GAOo3sguagJb YK4MnESr6abdaB5Ziubpp9U1jqQpneSUtzYAHFHK1H+4/DWlIaVyGtqj77ywYT5DoqyW2X PLiF2rIXboo1gVPgrIDs8252F2L225SgSSNZNk5t75bj8GzkwJQufKlviRVh0psL+z16P7 NfIySIgTRPmQzbJBnXLevdQfPCizysQZLRd/FF+NwM/qV8axgXbURjCoQwVyaQ== 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 23B3F7414; Sun, 26 Jun 2022 00:47:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 25Q0lKGo066390; Sun, 26 Jun 2022 00:47:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 25Q0lKH3066389; Sun, 26 Jun 2022 00:47:20 GMT (envelope-from git) Date: Sun, 26 Jun 2022 00:47:20 GMT Message-Id: <202206260047.25Q0lKH3066389@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 7f8db05c3e87 - stable/12 - wpa: Restore missing patch List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 7f8db05c3e87eab16e6f107b6ce94f16e4b1e75a Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1656204440; 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=0V7XcE4rT99NBRZfpLqistJMv9Gv5DAGmj+0o9N3GxQ=; b=cy/0ILjRNUS+67GKqMCTWxBLosRp0ykHJcKybDVSVQLmNqqVW390besOCm6U9RNWG8x6I9 krHLPKJRXWBs7XJRRlDdZrE5ccZReW7tHabfDIheC7xVF9sfEtYHjpvjB3wPEqkFpFWJp9 rGFTnoCCF/9bDJjZEmBZRbT6dNPA6nnN+bz0YAkTr+sAOWT6d8AeikJCsWXuyWHMdg6IUw JEceBsnDbUN8d875KDDAN/Mj6UyIlShS8bEzJjG+FZmdA6otwUEMC5BZG/yIhguE2y5qh5 /k0saPom2YUqiKkphVMfXbRxfu6zx36iMHDxV4Cyvw+cG3s2PnyAjkqVjSctFw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1656204440; a=rsa-sha256; cv=none; b=sAjoJgdeOvqm7iwREttP2nhD3B3UyvIcwFRAh7bAGdqdi7QLcPoLhXHiV9IY+khYIGb8+o JVjBZNcfmLgeDFja+lCKiDrk5UByVo6ov8gq4sUg1tMs3BElATYER4XuL6F2r2DTW2u86E xS1IYEpWCiz0mUt2M3QBiiUYr7ZAV1YPeB2UozGeZCUFBfWgx8qksGcvy3xn1OEUXDIbwV dU3o5DTB8baCD/acj2qK2HUcyRIkvAoDUmNhois2IlViwgxrn1V72uMnhbDJyGCuVNhsUw W5A7JiLNwp3OxV+4+JM2qKLv8B5jDNwUMjkuaWWVQ+jlOdJtpdpkz4Vs8Eb2qQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=7f8db05c3e87eab16e6f107b6ce94f16e4b1e75a commit 7f8db05c3e87eab16e6f107b6ce94f16e4b1e75a Author: Cy Schubert AuthorDate: 2022-06-20 14:21:55 +0000 Commit: Cy Schubert CommitDate: 2022-06-26 00:47:05 +0000 wpa: Restore missing patch In December after a failed MFV due to a now understood issue I had with git -- git aborts with extremely large MFV -- this patch was removed during the revert. Restore this patch. PR: 264238 Fixes: 4b72b91a7132df1f77bbae194e1071ac621f1edb (cherry picked from commit 3b2956781048f300c081952150d515573a274620) --- contrib/wpa/src/drivers/driver_bsd.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/contrib/wpa/src/drivers/driver_bsd.c b/contrib/wpa/src/drivers/driver_bsd.c index 16502b945212..c455bc931036 100644 --- a/contrib/wpa/src/drivers/driver_bsd.c +++ b/contrib/wpa/src/drivers/driver_bsd.c @@ -1224,7 +1224,10 @@ wpa_driver_bsd_associate(void *priv, struct wpa_driver_associate_params *params) mode = 0 /* STA */; break; case IEEE80211_MODE_IBSS: +#if 0 mode = IFM_IEEE80211_IBSS; +#endif + mode = IFM_IEEE80211_ADHOC; break; case IEEE80211_MODE_AP: mode = IFM_IEEE80211_HOSTAP; @@ -1271,6 +1274,13 @@ wpa_driver_bsd_associate(void *priv, struct wpa_driver_associate_params *params) params->wpa_ie[0] == WLAN_EID_RSN ? 2 : 1) < 0) return -1; + /* + * NB: interface must be marked UP for association + * or scanning (ap_scan=2) + */ + if (bsd_get_iface_flags(drv) < 0) + return -1; + os_memset(&mlme, 0, sizeof(mlme)); mlme.im_op = IEEE80211_MLME_ASSOC; if (params->ssid != NULL) @@ -1489,6 +1499,17 @@ static int wpa_driver_bsd_capa(struct bsd_driver_data *drv) if (devcaps.dc_drivercaps & IEEE80211_C_WPA2) drv->capa.key_mgmt = WPA_DRIVER_CAPA_KEY_MGMT_WPA2 | WPA_DRIVER_CAPA_KEY_MGMT_WPA2_PSK; +#ifdef __FreeBSD__ + drv->capa.enc |= WPA_DRIVER_CAPA_ENC_WEP40 | + WPA_DRIVER_CAPA_ENC_WEP104 | + WPA_DRIVER_CAPA_ENC_TKIP | + WPA_DRIVER_CAPA_ENC_CCMP; +#else + /* + * XXX + * FreeBSD exports hardware cryptocaps. These have no meaning for wpa + * since net80211 performs software crypto. + */ if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_WEP) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_WEP40 | @@ -1497,6 +1518,7 @@ 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; +#endif if (devcaps.dc_drivercaps & IEEE80211_C_HOSTAP) drv->capa.flags |= WPA_DRIVER_FLAGS_AP; @@ -1549,6 +1571,8 @@ get80211opmode(struct bsd_driver_data *drv) } if (ifmr.ifm_current & IFM_IEEE80211_HOSTAP) return IEEE80211_M_HOSTAP; + if (ifmr.ifm_current & IFM_IEEE80211_IBSS) + return IEEE80211_M_IBSS; if (ifmr.ifm_current & IFM_IEEE80211_MONITOR) return IEEE80211_M_MONITOR; #ifdef IEEE80211_M_MBSS