[arch-commits] Commit in wpa_supplicant/trunk (10 files)

Antonio Rojas arojas at gemini.archlinux.org
Sun Jan 23 09:37:45 UTC 2022


    Date: Sunday, January 23, 2022 @ 09:37:43
  Author: arojas
Revision: 434948

Update to 2.10

Added:
  wpa_supplicant/trunk/wpa_supplicant_config
  wpa_supplicant/trunk/wpa_supplicant_dbus_service_syslog.patch
  wpa_supplicant/trunk/wpa_supplicant_service_ignore-on-isolate.patch
  wpa_supplicant/trunk/wpa_supplicant_tls.patch
Modified:
  wpa_supplicant/trunk/PKGBUILD
Deleted:
  wpa_supplicant/trunk/CVE-2019-16275.patch
  wpa_supplicant/trunk/config
  wpa_supplicant/trunk/roam-properties.patch
  wpa_supplicant/trunk/systemd.patch
  wpa_supplicant/trunk/tls.patch

------------------------------------------------+
 CVE-2019-16275.patch                           |   73 --
 PKGBUILD                                       |   29 -
 config                                         |   80 --
 roam-properties.patch                          |   88 ---
 systemd.patch                                  |   29 -
 tls.patch                                      |   26 
 wpa_supplicant_config                          |  637 +++++++++++++++++++++++
 wpa_supplicant_dbus_service_syslog.patch       |   36 +
 wpa_supplicant_service_ignore-on-isolate.patch |   36 +
 wpa_supplicant_tls.patch                       |   28 +
 10 files changed, 750 insertions(+), 312 deletions(-)

Deleted: CVE-2019-16275.patch
===================================================================
--- CVE-2019-16275.patch	2022-01-23 09:31:09 UTC (rev 434947)
+++ CVE-2019-16275.patch	2022-01-23 09:37:43 UTC (rev 434948)
@@ -1,73 +0,0 @@
-From 8c07fa9eda13e835f3f968b2e1c9a8be3a851ff9 Mon Sep 17 00:00:00 2001
-From: Jouni Malinen <j at w1.fi>
-Date: Thu, 29 Aug 2019 11:52:04 +0300
-Subject: [PATCH] AP: Silently ignore management frame from unexpected source
- address
-
-Do not process any received Management frames with unexpected/invalid SA
-so that we do not add any state for unexpected STA addresses or end up
-sending out frames to unexpected destination. This prevents unexpected
-sequences where an unprotected frame might end up causing the AP to send
-out a response to another device and that other device processing the
-unexpected response.
-
-In particular, this prevents some potential denial of service cases
-where the unexpected response frame from the AP might result in a
-connected station dropping its association.
-
-Signed-off-by: Jouni Malinen <j at w1.fi>
----
- src/ap/drv_callbacks.c | 13 +++++++++++++
- src/ap/ieee802_11.c    | 12 ++++++++++++
- 2 files changed, 25 insertions(+)
-
-diff --git a/src/ap/drv_callbacks.c b/src/ap/drv_callbacks.c
-index 31587685fe3b..34ca379edc3d 100644
---- a/src/ap/drv_callbacks.c
-+++ b/src/ap/drv_callbacks.c
-@@ -131,6 +131,19 @@ int hostapd_notif_assoc(struct hostapd_data *hapd, const u8 *addr,
- 			   "hostapd_notif_assoc: Skip event with no address");
- 		return -1;
- 	}
-+
-+	if (is_multicast_ether_addr(addr) ||
-+	    is_zero_ether_addr(addr) ||
-+	    os_memcmp(addr, hapd->own_addr, ETH_ALEN) == 0) {
-+		/* Do not process any frames with unexpected/invalid SA so that
-+		 * we do not add any state for unexpected STA addresses or end
-+		 * up sending out frames to unexpected destination. */
-+		wpa_printf(MSG_DEBUG, "%s: Invalid SA=" MACSTR
-+			   " in received indication - ignore this indication silently",
-+			   __func__, MAC2STR(addr));
-+		return 0;
-+	}
-+
- 	random_add_randomness(addr, ETH_ALEN);
- 
- 	hostapd_logger(hapd, addr, HOSTAPD_MODULE_IEEE80211,
-diff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c
-index c85a28db44b7..e7065372e158 100644
---- a/src/ap/ieee802_11.c
-+++ b/src/ap/ieee802_11.c
-@@ -4626,6 +4626,18 @@ int ieee802_11_mgmt(struct hostapd_data *hapd, const u8 *buf, size_t len,
- 	fc = le_to_host16(mgmt->frame_control);
- 	stype = WLAN_FC_GET_STYPE(fc);
- 
-+	if (is_multicast_ether_addr(mgmt->sa) ||
-+	    is_zero_ether_addr(mgmt->sa) ||
-+	    os_memcmp(mgmt->sa, hapd->own_addr, ETH_ALEN) == 0) {
-+		/* Do not process any frames with unexpected/invalid SA so that
-+		 * we do not add any state for unexpected STA addresses or end
-+		 * up sending out frames to unexpected destination. */
-+		wpa_printf(MSG_DEBUG, "MGMT: Invalid SA=" MACSTR
-+			   " in received frame - ignore this frame silently",
-+			   MAC2STR(mgmt->sa));
-+		return 0;
-+	}
-+
- 	if (stype == WLAN_FC_STYPE_BEACON) {
- 		handle_beacon(hapd, mgmt, len, fi);
- 		return 1;
--- 
-2.20.1
-

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2022-01-23 09:31:09 UTC (rev 434947)
+++ PKGBUILD	2022-01-23 09:37:43 UTC (rev 434948)
@@ -1,9 +1,10 @@
 # Maintainer:  Bartłomiej Piotrowski <bpiotrowski at archlinux.org>
 # Contributor: Thomas Bächler <thomas at archlinux.org>
+# Contributor: loqs
 
 pkgname=wpa_supplicant
-pkgver=2.9
-pkgrel=8
+pkgver=2.10
+pkgrel=1
 epoch=2
 pkgdesc='A utility providing key negotiation for WPA wireless networks'
 url='https://w1.fi/wpa_supplicant/'
@@ -13,22 +14,18 @@
 install=wpa_supplicant.install
 source=(
   https://w1.fi/releases/${pkgname}-${pkgver}.tar.gz{,.asc}
-  https://w1.fi/security/2020-2/0001-P2P-Fix-copying-of-secondary-device-types-for-P2P-gr.patch
-  CVE-2019-16275.patch
-  tls.patch             # More permissive TLS fallback
-  systemd.patch         # Unit improvements from Ubuntu
-  roam-properties.patch # https://bugs.archlinux.org/task/65482
-  config
+  wpa_supplicant_tls.patch                        # More permissive TLS fallback
+  wpa_supplicant_dbus_service_syslog.patch        # Unit improvements from Ubuntu
+  wpa_supplicant_service_ignore-on-isolate.patch  # More unit improvements from Ubuntu
+  wpa_supplicant_config
 )
 validpgpkeys=('EC4AA0A991A5F2464582D52D2B6EF432EFC895FA') # Jouni Malinen
-sha256sums=('fcbdee7b4a64bea8177973299c8c824419c413ec2e3a95db63dd6a5dc3541f17'
+sha256sums=('20df7ae5154b3830355f8ab4269123a87affdea59fe74fe9292a91d0d7e17b2f'
             'SKIP'
-            'c4d65cc13863e0237d0644198558e2c47b4ed91e2b2be4516ff590724187c4a5'
-            'bf91a135e717265969f1ab0319297c9d2e6f695928a17e3b3fa5accc8ef7b297'
-            '449c7dad67b246b5b93e796f57c2f90c5c32cfc5b16f7aa4f17802dc260d3414'
-            'dd14f99618bb4db40eadfaf4ced29d6139ccf319429a1eef54c2c08c80924742'
-            '1ad3b61397c4a1dbafbf89059bccdda07cfe7eaff9f23ee25bed7bdd82c2bd87'
-            '6f71a04875465178992e78216603d3c4735ee717a31738a6e30702c7a81c6c4e')
+            '08915b040d03a3e07cdc8ea6c76b497e00059e01ce85b67413dfe41d4fc68992'
+            '60f6a1cf2e124813dfce1da78ee1818e2ff5236aafa4113c7ae3b3f2a0b84006'
+            'd42bdbf3d4980b9f0a819612df0c39843c7e96c8afcb103aa656c824f93790b0'
+            '385c956607d9a4966b13458db60a29b7556ff0c9928d7fef59381678ce79f13b')
 
 prepare() {
   cd "$srcdir/$pkgname-$pkgver"
@@ -42,7 +39,7 @@
   done
 
   cd "$srcdir/$pkgname-$pkgver/$pkgname"
-  cp "$srcdir/config" ./.config
+  cp "$srcdir/wpa_supplicant_config" ./.config
 }
 
 build() {

Deleted: config
===================================================================
--- config	2022-01-23 09:31:09 UTC (rev 434947)
+++ config	2022-01-23 09:37:43 UTC (rev 434948)
@@ -1,80 +0,0 @@
-CONFIG_ACS=y
-CONFIG_AP=y
-CONFIG_AUTOSCAN_EXPONENTIAL=y
-CONFIG_AUTOSCAN_PERIODIC=y
-CONFIG_BACKEND=file
-CONFIG_BGSCAN_LEARN=y
-CONFIG_BGSCAN_SIMPLE=y
-CONFIG_CTRL_IFACE=y
-CONFIG_CTRL_IFACE_DBUS_INTRO=y
-CONFIG_CTRL_IFACE_DBUS_NEW=y
-CONFIG_DEBUG_FILE=y
-CONFIG_DEBUG_LINUX_TRACING=y
-CONFIG_DEBUG_SYSLOG=y
-CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
-CONFIG_DELAYED_MIC_ERROR_REPORT=y
-CONFIG_DPP=y
-CONFIG_DRIVER_MACSEC_LINUX=y
-CONFIG_DRIVER_NL80211=y
-CONFIG_DRIVER_NL80211_QCA=y
-CONFIG_DRIVER_NONE=y
-CONFIG_DRIVER_WEXT=y
-CONFIG_DRIVER_WIRED=y
-CONFIG_EAP_AKA=y
-CONFIG_EAP_AKA_PRIME=y
-CONFIG_EAP_EKE=y
-CONFIG_EAP_FAST=y
-CONFIG_EAP_GPSK=y
-CONFIG_EAP_GPSK_SHA256=y
-CONFIG_EAP_GTC=y
-CONFIG_EAP_IKEV2=y
-CONFIG_EAP_LEAP=y
-CONFIG_EAP_MD5=y
-CONFIG_EAP_MSCHAPV2=y
-CONFIG_EAP_OTP=y
-CONFIG_EAP_PAX=y
-CONFIG_EAP_PEAP=y
-CONFIG_EAP_PSK=y
-CONFIG_EAP_PWD=y
-CONFIG_EAP_SAKE=y
-CONFIG_EAP_SIM=y
-CONFIG_EAP_TLS=y
-CONFIG_EAP_TNC=y
-CONFIG_EAP_TTLS=y
-CONFIG_ELOOP=eloop
-CONFIG_FST=y
-CONFIG_GETRANDOM=y
-CONFIG_HS20=y
-CONFIG_HT_OVERRIDES=y
-CONFIG_IBSS_RSN=y
-CONFIG_IEEE80211AC=y
-CONFIG_IEEE80211N=y
-CONFIG_IEEE80211R=y
-CONFIG_IEEE80211W=y
-CONFIG_IEEE8021X_EAPOL=y
-CONFIG_INTERWORKING=y
-CONFIG_IPV6=y
-CONFIG_L2_PACKET=linux
-CONFIG_LIBNL32=y
-CONFIG_MACSEC=y
-CONFIG_MAIN=main
-CONFIG_NO_RANDOM_POOL=y
-CONFIG_OS=unix
-CONFIG_OWE=y
-CONFIG_P2P=y
-CONFIG_PKCS12=y
-CONFIG_PMKSA_CACHE_EXTERNAL=y
-CONFIG_READLINE=y
-CONFIG_SAE=y
-CONFIG_SMARTCARD=y
-CONFIG_TDLS=y
-CONFIG_TLS=openssl
-CONFIG_TLSV11=y
-CONFIG_TLSV12=y
-CONFIG_TLS_DEFAULT_CIPHERS="DEFAULT at SECLEVEL=1"
-CONFIG_VHT_OVERRIDES=y
-CONFIG_WIFI_DISPLAY=y
-CONFIG_WPS=y
-CONFIG_WPS_ER=y
-CONFIG_WPS_NFC=y
-CONFIG_WPS_REG_DISABLE_OPEN=y

Deleted: roam-properties.patch
===================================================================
--- roam-properties.patch	2022-01-23 09:31:09 UTC (rev 434947)
+++ roam-properties.patch	2022-01-23 09:37:43 UTC (rev 434948)
@@ -1,88 +0,0 @@
-From 23d87687c2428f3b94865580b0d33e05c03e6756 Mon Sep 17 00:00:00 2001
-From: Matthew Wang <matthewmwang at chromium.org>
-Date: Fri, 11 Oct 2019 13:49:25 -0700
-Subject: dbus: Move roam metrics to the correct interface
-
-These properties were in the wpas_dbus_bss_properties array when they
-should have been in the wpas_dbus_interface_properties array. Move them
-to the right place. This is the logical location for these properties
-and it matches both the other parts of the implementation (e.g., being
-in enum wpas_dbus_prop, not in enum wpas_dbus_bss_prop) and what
-was originally documented for the interface in dbus.doxygen.
-
-Fixes: 2bbad1c7c9cb ("dbus: Export roam time, roam complete, and session length")
-Fixes: 80d06d0ca9f3 ("dbus: Export BSS Transition Management status")
-Signed-off-by: Matthew Wang <matthewmwang at chromium.org>
----
- wpa_supplicant/dbus/dbus_new.c | 48 +++++++++++++++++++++---------------------
- 1 file changed, 24 insertions(+), 24 deletions(-)
-
-diff --git a/wpa_supplicant/dbus/dbus_new.c b/wpa_supplicant/dbus/dbus_new.c
-index 5e6b522..e9e77bd 100644
---- a/wpa_supplicant/dbus/dbus_new.c
-+++ b/wpa_supplicant/dbus/dbus_new.c
-@@ -2855,30 +2855,6 @@ static const struct wpa_dbus_property_desc wpas_dbus_bss_properties[] = {
- 	  NULL,
- 	  NULL
- 	},
--	{
--	  "RoamTime", WPAS_DBUS_NEW_IFACE_INTERFACE, "u",
--	  wpas_dbus_getter_roam_time,
--	  NULL,
--	  NULL
--	},
--	{
--	  "RoamComplete", WPAS_DBUS_NEW_IFACE_INTERFACE, "b",
--	  wpas_dbus_getter_roam_complete,
--	  NULL,
--	  NULL
--	},
--	{
--	  "SessionLength", WPAS_DBUS_NEW_IFACE_INTERFACE, "u",
--	  wpas_dbus_getter_session_length,
--	  NULL,
--	  NULL
--	},
--	{
--	  "BSSTMStatus", WPAS_DBUS_NEW_IFACE_INTERFACE, "u",
--	  wpas_dbus_getter_bss_tm_status,
--	  NULL,
--	  NULL
--	},
- 	{ NULL, NULL, NULL, NULL, NULL, NULL }
- };
- 
-@@ -3786,6 +3762,30 @@ static const struct wpa_dbus_property_desc wpas_dbus_interface_properties[] = {
- 	  NULL,
- 	  NULL
- 	},
-+	{
-+	  "RoamTime", WPAS_DBUS_NEW_IFACE_INTERFACE, "u",
-+	  wpas_dbus_getter_roam_time,
-+	  NULL,
-+	  NULL
-+	},
-+	{
-+	  "RoamComplete", WPAS_DBUS_NEW_IFACE_INTERFACE, "b",
-+	  wpas_dbus_getter_roam_complete,
-+	  NULL,
-+	  NULL
-+	},
-+	{
-+	  "SessionLength", WPAS_DBUS_NEW_IFACE_INTERFACE, "u",
-+	  wpas_dbus_getter_session_length,
-+	  NULL,
-+	  NULL
-+	},
-+	{
-+	  "BSSTMStatus", WPAS_DBUS_NEW_IFACE_INTERFACE, "u",
-+	  wpas_dbus_getter_bss_tm_status,
-+	  NULL,
-+	  NULL
-+	},
- #ifdef CONFIG_MESH
- 	{ "MeshPeers", WPAS_DBUS_NEW_IFACE_MESH, "aay",
- 	  wpas_dbus_getter_mesh_peers,
--- 
-cgit v0.12
-

Deleted: systemd.patch
===================================================================
--- systemd.patch	2022-01-23 09:31:09 UTC (rev 434947)
+++ systemd.patch	2022-01-23 09:37:43 UTC (rev 434948)
@@ -1,29 +0,0 @@
-diff -u -r wpa_supplicant-2.9/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in wpa_supplicant-2.9-systemd/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in
---- wpa_supplicant-2.9/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in	2019-08-07 13:25:25.000000000 +0000
-+++ wpa_supplicant-2.9-systemd/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in	2020-01-22 22:46:14.676497087 +0000
-@@ -1,5 +1,5 @@
- [D-BUS Service]
- Name=fi.w1.wpa_supplicant1
--Exec=@BINDIR@/wpa_supplicant -u
-+Exec=@BINDIR@/wpa_supplicant -u -s -O /run/wpa_supplicant
- User=root
- SystemdService=wpa_supplicant.service
-diff -u -r wpa_supplicant-2.9/wpa_supplicant/systemd/wpa_supplicant.service.in wpa_supplicant-2.9-systemd/wpa_supplicant/systemd/wpa_supplicant.service.in
---- wpa_supplicant-2.9/wpa_supplicant/systemd/wpa_supplicant.service.in	2019-08-07 13:25:25.000000000 +0000
-+++ wpa_supplicant-2.9-systemd/wpa_supplicant/systemd/wpa_supplicant.service.in	2020-01-22 22:47:53.561183663 +0000
-@@ -1,12 +1,14 @@
- [Unit]
- Description=WPA supplicant
- Before=network.target
-+After=dbus.service
- Wants=network.target
-+IgnoreOnIsolate=true
- 
- [Service]
- Type=dbus
- BusName=fi.w1.wpa_supplicant1
--ExecStart=@BINDIR@/wpa_supplicant -u
-+ExecStart=@BINDIR@/wpa_supplicant -u -s -O /run/wpa_supplicant
- 
- [Install]
- WantedBy=multi-user.target

Deleted: tls.patch
===================================================================
--- tls.patch	2022-01-23 09:31:09 UTC (rev 434947)
+++ tls.patch	2022-01-23 09:37:43 UTC (rev 434948)
@@ -1,26 +0,0 @@
-diff -u -r wpa_supplicant-2.9/src/crypto/tls_openssl.c wpa_supplicant-2.9-tls/src/crypto/tls_openssl.c
---- wpa_supplicant-2.9/src/crypto/tls_openssl.c	2019-08-07 13:25:25.000000000 +0000
-+++ wpa_supplicant-2.9-tls/src/crypto/tls_openssl.c	2020-01-22 22:49:12.575598357 +0000
-@@ -1035,6 +1035,13 @@
- 		os_free(data);
- 		return NULL;
- 	}
-+
-+#ifndef EAP_SERVER_TLS
-+	/* Enable TLSv1.0 by default to allow connecting to legacy
-+	 * networks since Debian OpenSSL is set to minimum TLSv1.2 and SECLEVEL=2. */
-+	SSL_CTX_set_min_proto_version(ssl, TLS1_VERSION);
-+#endif
-+
- 	data->ssl = ssl;
- 	if (conf) {
- 		data->tls_session_lifetime = conf->tls_session_lifetime;
-@@ -1577,6 +1584,7 @@
- #ifdef SSL_OP_NO_COMPRESSION
- 	options |= SSL_OP_NO_COMPRESSION;
- #endif /* SSL_OP_NO_COMPRESSION */
-+	options |= SSL_OP_NO_TICKET;
- 	SSL_set_options(conn->ssl, options);
- #ifdef SSL_OP_ENABLE_MIDDLEBOX_COMPAT
- 	/* Hopefully there is no need for middlebox compatibility mechanisms
-Only in wpa_supplicant-2.9-tls/src/crypto: tls_openssl.c.orig

Added: wpa_supplicant_config
===================================================================
--- wpa_supplicant_config	                        (rev 0)
+++ wpa_supplicant_config	2022-01-23 09:37:43 UTC (rev 434948)
@@ -0,0 +1,637 @@
+# Example wpa_supplicant build time configuration
+#
+# This file lists the configuration options that are used when building the
+# wpa_supplicant binary. All lines starting with # are ignored. Configuration
+# option lines must be commented out complete, if they are not to be included,
+# i.e., just setting VARIABLE=n is not disabling that variable.
+#
+# This file is included in Makefile, so variables like CFLAGS and LIBS can also
+# be modified from here. In most cases, these lines should use += in order not
+# to override previous values of the variables.
+
+
+# Uncomment following two lines and fix the paths if you have installed OpenSSL
+# or GnuTLS in non-default location
+#CFLAGS += -I/usr/local/openssl/include
+#LIBS += -L/usr/local/openssl/lib
+
+# Some Red Hat versions seem to include kerberos header files from OpenSSL, but
+# the kerberos files are not in the default include path. Following line can be
+# used to fix build issues on such systems (krb5.h not found).
+#CFLAGS += -I/usr/include/kerberos
+
+# Driver interface for generic Linux wireless extensions
+# Note: WEXT is deprecated in the current Linux kernel version and no new
+# functionality is added to it. nl80211-based interface is the new
+# replacement for WEXT and its use allows wpa_supplicant to properly control
+# the driver to improve existing functionality like roaming and to support new
+# functionality.
+CONFIG_DRIVER_WEXT=y
+
+# Driver interface for Linux drivers using the nl80211 kernel interface
+CONFIG_DRIVER_NL80211=y
+
+# QCA vendor extensions to nl80211
+CONFIG_DRIVER_NL80211_QCA=y
+
+# driver_nl80211.c requires libnl. If you are compiling it yourself
+# you may need to point hostapd to your version of libnl.
+#
+#CFLAGS += -I$<path to libnl include files>
+#LIBS += -L$<path to libnl library files>
+
+# Use libnl v2.0 (or 3.0) libraries.
+#CONFIG_LIBNL20=y
+
+# Use libnl 3.2 libraries (if this is selected, CONFIG_LIBNL20 is ignored)
+CONFIG_LIBNL32=y
+
+
+# Driver interface for FreeBSD net80211 layer (e.g., Atheros driver)
+#CONFIG_DRIVER_BSD=y
+#CFLAGS += -I/usr/local/include
+#LIBS += -L/usr/local/lib
+#LIBS_p += -L/usr/local/lib
+#LIBS_c += -L/usr/local/lib
+
+# Driver interface for Windows NDIS
+#CONFIG_DRIVER_NDIS=y
+#CFLAGS += -I/usr/include/w32api/ddk
+#LIBS += -L/usr/local/lib
+# For native build using mingw
+#CONFIG_NATIVE_WINDOWS=y
+# Additional directories for cross-compilation on Linux host for mingw target
+#CFLAGS += -I/opt/mingw/mingw32/include/ddk
+#LIBS += -L/opt/mingw/mingw32/lib
+#CC=mingw32-gcc
+# By default, driver_ndis uses WinPcap for low-level operations. This can be
+# replaced with the following option which replaces WinPcap calls with NDISUIO.
+# However, this requires that WZC is disabled (net stop wzcsvc) before starting
+# wpa_supplicant.
+# CONFIG_USE_NDISUIO=y
+
+# Driver interface for wired Ethernet drivers
+CONFIG_DRIVER_WIRED=y
+
+# Driver interface for MACsec capable Qualcomm Atheros drivers
+#CONFIG_DRIVER_MACSEC_QCA=y
+
+# Driver interface for Linux MACsec drivers
+CONFIG_DRIVER_MACSEC_LINUX=y
+
+# Driver interface for the Broadcom RoboSwitch family
+#CONFIG_DRIVER_ROBOSWITCH=y
+
+# Driver interface for no driver (e.g., WPS ER only)
+CONFIG_DRIVER_NONE=y
+
+# Solaris libraries
+#LIBS += -lsocket -ldlpi -lnsl
+#LIBS_c += -lsocket
+
+# Enable IEEE 802.1X Supplicant (automatically included if any EAP method or
+# MACsec is included)
+CONFIG_IEEE8021X_EAPOL=y
+
+# EAP-MD5
+CONFIG_EAP_MD5=y
+
+# EAP-MSCHAPv2
+CONFIG_EAP_MSCHAPV2=y
+
+# EAP-TLS
+CONFIG_EAP_TLS=y
+
+# EAL-PEAP
+CONFIG_EAP_PEAP=y
+
+# EAP-TTLS
+CONFIG_EAP_TTLS=y
+
+# EAP-FAST
+CONFIG_EAP_FAST=y
+
+# EAP-TEAP
+# Note: The current EAP-TEAP implementation is experimental and should not be
+# enabled for production use. The IETF RFC 7170 that defines EAP-TEAP has number
+# of conflicting statements and missing details and the implementation has
+# vendor specific workarounds for those and as such, may not interoperate with
+# any other implementation. This should not be used for anything else than
+# experimentation and interoperability testing until those issues has been
+# resolved.
+#CONFIG_EAP_TEAP=y
+
+# EAP-GTC
+CONFIG_EAP_GTC=y
+
+# EAP-OTP
+CONFIG_EAP_OTP=y
+
+# EAP-SIM (enable CONFIG_PCSC, if EAP-SIM is used)
+CONFIG_EAP_SIM=y
+
+# Enable SIM simulator (Milenage) for EAP-SIM
+#CONFIG_SIM_SIMULATOR=y
+
+# EAP-PSK (experimental; this is _not_ needed for WPA-PSK)
+CONFIG_EAP_PSK=y
+
+# EAP-pwd (secure authentication using only a password)
+CONFIG_EAP_PWD=y
+
+# EAP-PAX
+CONFIG_EAP_PAX=y
+
+# LEAP
+CONFIG_EAP_LEAP=y
+
+# EAP-AKA (enable CONFIG_PCSC, if EAP-AKA is used)
+CONFIG_EAP_AKA=y
+
+# EAP-AKA' (enable CONFIG_PCSC, if EAP-AKA' is used).
+# This requires CONFIG_EAP_AKA to be enabled, too.
+CONFIG_EAP_AKA_PRIME=y
+
+# Enable USIM simulator (Milenage) for EAP-AKA
+#CONFIG_USIM_SIMULATOR=y
+
+# EAP-SAKE
+CONFIG_EAP_SAKE=y
+
+# EAP-GPSK
+CONFIG_EAP_GPSK=y
+# Include support for optional SHA256 cipher suite in EAP-GPSK
+CONFIG_EAP_GPSK_SHA256=y
+
+# EAP-TNC and related Trusted Network Connect support (experimental)
+CONFIG_EAP_TNC=y
+
+# Wi-Fi Protected Setup (WPS)
+CONFIG_WPS=y
+# Enable WPS external registrar functionality
+CONFIG_WPS_ER=y
+# Disable credentials for an open network by default when acting as a WPS
+# registrar.
+CONFIG_WPS_REG_DISABLE_OPEN=y
+# Enable WPS support with NFC config method
+CONFIG_WPS_NFC=y
+
+# EAP-IKEv2
+CONFIG_EAP_IKEV2=y
+
+# EAP-EKE
+CONFIG_EAP_EKE=y
+
+# MACsec
+CONFIG_MACSEC=y
+
+# PKCS#12 (PFX) support (used to read private key and certificate file from
+# a file that usually has extension .p12 or .pfx)
+CONFIG_PKCS12=y
+
+# Smartcard support (i.e., private key on a smartcard), e.g., with openssl
+# engine.
+CONFIG_SMARTCARD=y
+
+# PC/SC interface for smartcards (USIM, GSM SIM)
+# Enable this if EAP-SIM or EAP-AKA is included
+#CONFIG_PCSC=y
+
+# Support HT overrides (disable HT/HT40, mask MCS rates, etc.)
+CONFIG_HT_OVERRIDES=y
+
+# Support VHT overrides (disable VHT, mask MCS rates, etc.)
+CONFIG_VHT_OVERRIDES=y
+
+# Development testing
+#CONFIG_EAPOL_TEST=y
+
+# Select control interface backend for external programs, e.g, wpa_cli:
+# unix = UNIX domain sockets (default for Linux/*BSD)
+# udp = UDP sockets using localhost (127.0.0.1)
+# udp6 = UDP IPv6 sockets using localhost (::1)
+# named_pipe = Windows Named Pipe (default for Windows)
+# udp-remote = UDP sockets with remote access (only for tests systems/purpose)
+# udp6-remote = UDP IPv6 sockets with remote access (only for tests purpose)
+# y = use default (backwards compatibility)
+# If this option is commented out, control interface is not included in the
+# build.
+CONFIG_CTRL_IFACE=y
+
+# Include support for GNU Readline and History Libraries in wpa_cli.
+# When building a wpa_cli binary for distribution, please note that these
+# libraries are licensed under GPL and as such, BSD license may not apply for
+# the resulting binary.
+CONFIG_READLINE=y
+
+# Include internal line edit mode in wpa_cli. This can be used as a replacement
+# for GNU Readline to provide limited command line editing and history support.
+#CONFIG_WPA_CLI_EDIT=y
+
+# Remove debugging code that is printing out debug message to stdout.
+# This can be used to reduce the size of the wpa_supplicant considerably
+# if debugging code is not needed. The size reduction can be around 35%
+# (e.g., 90 kB).
+#CONFIG_NO_STDOUT_DEBUG=y
+
+# Remove WPA support, e.g., for wired-only IEEE 802.1X supplicant, to save
+# 35-50 kB in code size.
+#CONFIG_NO_WPA=y
+
+# Remove IEEE 802.11i/WPA-Personal ASCII passphrase support
+# This option can be used to reduce code size by removing support for
+# converting ASCII passphrases into PSK. If this functionality is removed, the
+# PSK can only be configured as the 64-octet hexstring (e.g., from
+# wpa_passphrase). This saves about 0.5 kB in code size.
+#CONFIG_NO_WPA_PASSPHRASE=y
+
+# Simultaneous Authentication of Equals (SAE), WPA3-Personal
+CONFIG_SAE=y
+
+# Disable scan result processing (ap_scan=1) to save code size by about 1 kB.
+# This can be used if ap_scan=1 mode is never enabled.
+#CONFIG_NO_SCAN_PROCESSING=y
+
+# Select configuration backend:
+# file = text file (e.g., wpa_supplicant.conf; note: the configuration file
+#	path is given on command line, not here; this option is just used to
+#	select the backend that allows configuration files to be used)
+# winreg = Windows registry (see win_example.reg for an example)
+CONFIG_BACKEND=file
+
+# Remove configuration write functionality (i.e., to allow the configuration
+# file to be updated based on runtime configuration changes). The runtime
+# configuration can still be changed, the changes are just not going to be
+# persistent over restarts. This option can be used to reduce code size by
+# about 3.5 kB.
+#CONFIG_NO_CONFIG_WRITE=y
+
+# Remove support for configuration blobs to reduce code size by about 1.5 kB.
+#CONFIG_NO_CONFIG_BLOBS=y
+
+# Select program entry point implementation:
+# main = UNIX/POSIX like main() function (default)
+# main_winsvc = Windows service (read parameters from registry)
+# main_none = Very basic example (development use only)
+CONFIG_MAIN=main
+
+# Select wrapper for operating system and C library specific functions
+# unix = UNIX/POSIX like systems (default)
+# win32 = Windows systems
+# none = Empty template
+CONFIG_OS=unix
+
+# Select event loop implementation
+# eloop = select() loop (default)
+# eloop_win = Windows events and WaitForMultipleObject() loop
+CONFIG_ELOOP=eloop
+
+# Should we use poll instead of select? Select is used by default.
+#CONFIG_ELOOP_POLL=y
+
+# Should we use epoll instead of select? Select is used by default.
+#CONFIG_ELOOP_EPOLL=y
+
+# Should we use kqueue instead of select? Select is used by default.
+#CONFIG_ELOOP_KQUEUE=y
+
+# Select layer 2 packet implementation
+# linux = Linux packet socket (default)
+# pcap = libpcap/libdnet/WinPcap
+# freebsd = FreeBSD libpcap
+# winpcap = WinPcap with receive thread
+# ndis = Windows NDISUIO (note: requires CONFIG_USE_NDISUIO=y)
+# none = Empty template
+CONFIG_L2_PACKET=linux
+
+# Disable Linux packet socket workaround applicable for station interface
+# in a bridge for EAPOL frames. This should be uncommented only if the kernel
+# is known to not have the regression issue in packet socket behavior with
+# bridge interfaces (commit 'bridge: respect RFC2863 operational state')').
+#CONFIG_NO_LINUX_PACKET_SOCKET_WAR=y
+
+# Support Operating Channel Validation
+#CONFIG_OCV=y
+
+# Select TLS implementation
+# openssl = OpenSSL (default)
+# gnutls = GnuTLS
+# internal = Internal TLSv1 implementation (experimental)
+# linux = Linux kernel AF_ALG and internal TLSv1 implementation (experimental)
+# none = Empty template
+CONFIG_TLS=openssl
+
+# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.1)
+# can be enabled to get a stronger construction of messages when block ciphers
+# are used. It should be noted that some existing TLS v1.0 -based
+# implementation may not be compatible with TLS v1.1 message (ClientHello is
+# sent prior to negotiating which version will be used)
+CONFIG_TLSV11=y
+
+# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.2)
+# can be enabled to enable use of stronger crypto algorithms. It should be
+# noted that some existing TLS v1.0 -based implementation may not be compatible
+# with TLS v1.2 message (ClientHello is sent prior to negotiating which version
+# will be used)
+CONFIG_TLSV12=y
+
+# Select which ciphers to use by default with OpenSSL if the user does not
+# specify them.
+#CONFIG_TLS_DEFAULT_CIPHERS="DEFAULT:!EXP:!LOW"
+CONFIG_TLS_DEFAULT_CIPHERS="DEFAULT at SECLEVEL=1"
+
+# If CONFIG_TLS=internal is used, additional library and include paths are
+# needed for LibTomMath. Alternatively, an integrated, minimal version of
+# LibTomMath can be used. See beginning of libtommath.c for details on benefits
+# and drawbacks of this option.
+#CONFIG_INTERNAL_LIBTOMMATH=y
+#ifndef CONFIG_INTERNAL_LIBTOMMATH
+#LTM_PATH=/usr/src/libtommath-0.39
+#CFLAGS += -I$(LTM_PATH)
+#LIBS += -L$(LTM_PATH)
+#LIBS_p += -L$(LTM_PATH)
+#endif
+# At the cost of about 4 kB of additional binary size, the internal LibTomMath
+# can be configured to include faster routines for exptmod, sqr, and div to
+# speed up DH and RSA calculation considerably
+#CONFIG_INTERNAL_LIBTOMMATH_FAST=y
+
+# Include NDIS event processing through WMI into wpa_supplicant/wpasvc.
+# This is only for Windows builds and requires WMI-related header files and
+# WbemUuid.Lib from Platform SDK even when building with MinGW.
+#CONFIG_NDIS_EVENTS_INTEGRATED=y
+#PLATFORMSDKLIB="/opt/Program Files/Microsoft Platform SDK/Lib"
+
+# Add support for new DBus control interface
+# (fi.w1.wpa_supplicant1)
+CONFIG_CTRL_IFACE_DBUS_NEW=y
+
+# Add introspection support for new DBus control interface
+CONFIG_CTRL_IFACE_DBUS_INTRO=y
+
+# Add support for loading EAP methods dynamically as shared libraries.
+# When this option is enabled, each EAP method can be either included
+# statically (CONFIG_EAP_<method>=y) or dynamically (CONFIG_EAP_<method>=dyn).
+# Dynamic EAP methods are build as shared objects (eap_*.so) and they need to
+# be loaded in the beginning of the wpa_supplicant configuration file
+# (see load_dynamic_eap parameter in the example file) before being used in
+# the network blocks.
+#
+# Note that some shared parts of EAP methods are included in the main program
+# and in order to be able to use dynamic EAP methods using these parts, the
+# main program must have been build with the EAP method enabled (=y or =dyn).
+# This means that EAP-TLS/PEAP/TTLS/FAST cannot be added as dynamic libraries
+# unless at least one of them was included in the main build to force inclusion
+# of the shared code. Similarly, at least one of EAP-SIM/AKA must be included
+# in the main build to be able to load these methods dynamically.
+#
+# Please also note that using dynamic libraries will increase the total binary
+# size. Thus, it may not be the best option for targets that have limited
+# amount of memory/flash.
+#CONFIG_DYNAMIC_EAP_METHODS=y
+
+# IEEE Std 802.11r-2008 (Fast BSS Transition) for station mode
+CONFIG_IEEE80211R=y
+
+# Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt)
+CONFIG_DEBUG_FILE=y
+
+# Send debug messages to syslog instead of stdout
+CONFIG_DEBUG_SYSLOG=y
+# Set syslog facility for debug messages
+CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
+
+# Add support for sending all debug messages (regardless of debug verbosity)
+# to the Linux kernel tracing facility. This helps debug the entire stack by
+# making it easy to record everything happening from the driver up into the
+# same file, e.g., using trace-cmd.
+CONFIG_DEBUG_LINUX_TRACING=y
+
+# Add support for writing debug log to Android logcat instead of standard
+# output
+#CONFIG_ANDROID_LOG=y
+
+# Enable privilege separation (see README 'Privilege separation' for details)
+#CONFIG_PRIVSEP=y
+
+# Enable mitigation against certain attacks against TKIP by delaying Michael
+# MIC error reports by a random amount of time between 0 and 60 seconds
+CONFIG_DELAYED_MIC_ERROR_REPORT=y
+
+# Enable tracing code for developer debugging
+# This tracks use of memory allocations and other registrations and reports
+# incorrect use with a backtrace of call (or allocation) location.
+#CONFIG_WPA_TRACE=y
+# For BSD, uncomment these.
+#LIBS += -lexecinfo
+#LIBS_p += -lexecinfo
+#LIBS_c += -lexecinfo
+
+# Use libbfd to get more details for developer debugging
+# This enables use of libbfd to get more detailed symbols for the backtraces
+# generated by CONFIG_WPA_TRACE=y.
+#CONFIG_WPA_TRACE_BFD=y
+# For BSD, uncomment these.
+#LIBS += -lbfd -liberty -lz
+#LIBS_p += -lbfd -liberty -lz
+#LIBS_c += -lbfd -liberty -lz
+
+# wpa_supplicant depends on strong random number generation being available
+# from the operating system. os_get_random() function is used to fetch random
+# data when needed, e.g., for key generation. On Linux and BSD systems, this
+# works by reading /dev/urandom. It should be noted that the OS entropy pool
+# needs to be properly initialized before wpa_supplicant is started. This is
+# important especially on embedded devices that do not have a hardware random
+# number generator and may by default start up with minimal entropy available
+# for random number generation.
+#
+# As a safety net, wpa_supplicant is by default trying to internally collect
+# additional entropy for generating random data to mix in with the data fetched
+# from the OS. This by itself is not considered to be very strong, but it may
+# help in cases where the system pool is not initialized properly. However, it
+# is very strongly recommended that the system pool is initialized with enough
+# entropy either by using hardware assisted random number generator or by
+# storing state over device reboots.
+#
+# wpa_supplicant can be configured to maintain its own entropy store over
+# restarts to enhance random number generation. This is not perfect, but it is
+# much more secure than using the same sequence of random numbers after every
+# reboot. This can be enabled with -e<entropy file> command line option. The
+# specified file needs to be readable and writable by wpa_supplicant.
+#
+# If the os_get_random() is known to provide strong random data (e.g., on
+# Linux/BSD, the board in question is known to have reliable source of random
+# data from /dev/urandom), the internal wpa_supplicant random pool can be
+# disabled. This will save some in binary size and CPU use. However, this
+# should only be considered for builds that are known to be used on devices
+# that meet the requirements described above.
+CONFIG_NO_RANDOM_POOL=y
+
+# Should we attempt to use the getrandom(2) call that provides more reliable
+# yet secure randomness source than /dev/random on Linux 3.17 and newer.
+# Requires glibc 2.25 to build, falls back to /dev/random if unavailable.
+CONFIG_GETRANDOM=y
+
+# IEEE 802.11ac (Very High Throughput) support (mainly for AP mode)
+CONFIG_IEEE80211AC=y
+
+# Wireless Network Management (IEEE Std 802.11v-2011)
+# Note: This is experimental and not complete implementation.
+#CONFIG_WNM=y
+
+# Interworking (IEEE 802.11u)
+# This can be used to enable functionality to improve interworking with
+# external networks (GAS/ANQP to learn more about the networks and network
+# selection based on available credentials).
+CONFIG_INTERWORKING=y
+
+# Hotspot 2.0
+CONFIG_HS20=y
+
+# Enable interface matching in wpa_supplicant
+#CONFIG_MATCH_IFACE=y
+
+# Disable roaming in wpa_supplicant
+#CONFIG_NO_ROAMING=y
+
+# AP mode operations with wpa_supplicant
+# This can be used for controlling AP mode operations with wpa_supplicant. It
+# should be noted that this is mainly aimed at simple cases like
+# WPA2-Personal while more complex configurations like WPA2-Enterprise with an
+# external RADIUS server can be supported with hostapd.
+CONFIG_AP=y
+
+# P2P (Wi-Fi Direct)
+# This can be used to enable P2P support in wpa_supplicant. See README-P2P for
+# more information on P2P operations.
+CONFIG_P2P=y
+
+# Enable TDLS support
+CONFIG_TDLS=y
+
+# Wi-Fi Display
+# This can be used to enable Wi-Fi Display extensions for P2P using an external
+# program to control the additional information exchanges in the messages.
+CONFIG_WIFI_DISPLAY=y
+
+# Autoscan
+# This can be used to enable automatic scan support in wpa_supplicant.
+# See wpa_supplicant.conf for more information on autoscan usage.
+#
+# Enabling directly a module will enable autoscan support.
+# For exponential module:
+CONFIG_AUTOSCAN_EXPONENTIAL=y
+# For periodic module:
+CONFIG_AUTOSCAN_PERIODIC=y
+
+# Password (and passphrase, etc.) backend for external storage
+# These optional mechanisms can be used to add support for storing passwords
+# and other secrets in external (to wpa_supplicant) location. This allows, for
+# example, operating system specific key storage to be used
+#
+# External password backend for testing purposes (developer use)
+#CONFIG_EXT_PASSWORD_TEST=y
+# File-based backend to read passwords from an external file.
+#CONFIG_EXT_PASSWORD_FILE=y
+
+# Enable Fast Session Transfer (FST)
+CONFIG_FST=y
+
+# Enable CLI commands for FST testing
+#CONFIG_FST_TEST=y
+
+# OS X builds. This is only for building eapol_test.
+#CONFIG_OSX=y
+
+# Automatic Channel Selection
+# This will allow wpa_supplicant to pick the channel automatically when channel
+# is set to "0".
+#
+# TODO: Extend parser to be able to parse "channel=acs_survey" as an alternative
+# to "channel=0". This would enable us to eventually add other ACS algorithms in
+# similar way.
+#
+# Automatic selection is currently only done through initialization, later on
+# we hope to do background checks to keep us moving to more ideal channels as
+# time goes by. ACS is currently only supported through the nl80211 driver and
+# your driver must have survey dump capability that is filled by the driver
+# during scanning.
+#
+# TODO: In analogy to hostapd be able to customize the ACS survey algorithm with
+# a newly to create wpa_supplicant.conf variable acs_num_scans.
+#
+# Supported ACS drivers:
+# * ath9k
+# * ath5k
+# * ath10k
+#
+# For more details refer to:
+# http://wireless.kernel.org/en/users/Documentation/acs
+CONFIG_ACS=y
+
+# Support Multi Band Operation
+#CONFIG_MBO=y
+
+# Fast Initial Link Setup (FILS) (IEEE 802.11ai)
+#CONFIG_FILS=y
+# FILS shared key authentication with PFS
+#CONFIG_FILS_SK_PFS=y
+
+# Support RSN on IBSS networks
+# This is needed to be able to use mode=1 network profile with proto=RSN and
+# key_mgmt=WPA-PSK (i.e., full key management instead of WPA-None).
+CONFIG_IBSS_RSN=y
+
+# External PMKSA cache control
+# This can be used to enable control interface commands that allow the current
+# PMKSA cache entries to be fetched and new entries to be added.
+CONFIG_PMKSA_CACHE_EXTERNAL=y
+
+# Mesh Networking (IEEE 802.11s)
+#CONFIG_MESH=y
+
+# Background scanning modules
+# These can be used to request wpa_supplicant to perform background scanning
+# operations for roaming within an ESS (same SSID). See the bgscan parameter in
+# the wpa_supplicant.conf file for more details.
+# Periodic background scans based on signal strength
+CONFIG_BGSCAN_SIMPLE=y
+# Learn channels used by the network and try to avoid bgscans on other
+# channels (experimental)
+CONFIG_BGSCAN_LEARN=y
+
+# Opportunistic Wireless Encryption (OWE)
+# Experimental implementation of draft-harkins-owe-07.txt
+CONFIG_OWE=y
+
+# Device Provisioning Protocol (DPP) (also known as Wi-Fi Easy Connect)
+CONFIG_DPP=y
+# DPP version 2 support
+CONFIG_DPP2=y
+# DPP version 3 support (experimental and still changing; do not enable for
+# production use)
+#CONFIG_DPP3=y
+
+# Wired equivalent privacy (WEP)
+# WEP is an obsolete cryptographic data confidentiality algorithm that is not
+# considered secure. It should not be used for anything anymore. The
+# functionality needed to use WEP is available in the current wpa_supplicant
+# release under this optional build parameter. This functionality is subject to
+# be completely removed in a future release.
+#CONFIG_WEP=y
+
+# Remove all TKIP functionality
+# TKIP is an old cryptographic data confidentiality algorithm that is not
+# considered secure. It should not be used anymore for anything else than a
+# backwards compatibility option as a group cipher when connecting to APs that
+# use WPA+WPA2 mixed mode. For now, the default wpa_supplicant build includes
+# support for this by default, but that functionality is subject to be removed
+# in the future.
+#CONFIG_NO_TKIP=y
+
+# Pre-Association Security Negotiation (PASN)
+# Experimental implementation based on IEEE P802.11z/D2.6 and the protocol
+# design is still subject to change. As such, this should not yet be enabled in
+# production use.
+#CONFIG_PASN=y
+CONFIG_IPV6=y

Added: wpa_supplicant_dbus_service_syslog.patch
===================================================================
--- wpa_supplicant_dbus_service_syslog.patch	                        (rev 0)
+++ wpa_supplicant_dbus_service_syslog.patch	2022-01-23 09:37:43 UTC (rev 434948)
@@ -0,0 +1,36 @@
+From: Kel Modderman <kel at otaku42.de>
+Date: Sat, 21 Apr 2012 15:59:32 +1000
+Subject: Tweak D-Bus/systemd service activation configuration files:
+
+ * log wpa_supplicant messages to syslog
+ * activate control socket interface so that wpa_cli can be used by D-Bus
+   activated wpa_supplicant daemon
+---
+ wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in | 2 +-
+ wpa_supplicant/systemd/wpa_supplicant.service.in     | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in b/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in
+index d97ff39..3b0af67 100644
+--- a/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in
++++ b/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in
+@@ -1,5 +1,5 @@
+ [D-BUS Service]
+ Name=fi.w1.wpa_supplicant1
+-Exec=@BINDIR@/wpa_supplicant -u
++Exec=@BINDIR@/wpa_supplicant -u -s -O /run/wpa_supplicant
+ User=root
+ SystemdService=wpa_supplicant.service
+diff --git a/wpa_supplicant/systemd/wpa_supplicant.service.in b/wpa_supplicant/systemd/wpa_supplicant.service.in
+index 58a6228..bc0688a 100644
+--- a/wpa_supplicant/systemd/wpa_supplicant.service.in
++++ b/wpa_supplicant/systemd/wpa_supplicant.service.in
+@@ -7,7 +7,7 @@ Wants=network.target
+ [Service]
+ Type=dbus
+ BusName=fi.w1.wpa_supplicant1
+-ExecStart=@BINDIR@/wpa_supplicant -u
++ExecStart=@BINDIR@/wpa_supplicant -u -s -O /run/wpa_supplicant
+ 
+ [Install]
+ WantedBy=multi-user.target

Added: wpa_supplicant_service_ignore-on-isolate.patch
===================================================================
--- wpa_supplicant_service_ignore-on-isolate.patch	                        (rev 0)
+++ wpa_supplicant_service_ignore-on-isolate.patch	2022-01-23 09:37:43 UTC (rev 434948)
@@ -0,0 +1,36 @@
+From: Mathieu Trudel-Lapierre <cyphermox at ubuntu.com>
+Date: Mon, 13 Mar 2017 13:46:12 -0400
+Subject: Add IgnoreOnIsolate=yes to keep wpa-supplicant running while
+ systemctl isolate
+
+> Add IgnoreOnIsolate=yes so that when switching "runlevels" in
+> oem-config will not kill off wpa and cause wireless to be
+> unavailable on first boot. (LP: #1576024)
+
+Also happens when running systemctl isolate default.target:
+
+> NM should be detecting that wpasupplicant is not running and start
+> it -- this should already have been working by way of wpasupplicant
+> being dbus-activated.
+[...]
+> It seems to me like IgnoreOnIsolate for wpasupplicant would be the
+> right thing to do, or to figure out why it isn't being properly
+> started when NM tries to use it.
+
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/1576024
+---
+ wpa_supplicant/systemd/wpa_supplicant.service.in | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/wpa_supplicant/systemd/wpa_supplicant.service.in b/wpa_supplicant/systemd/wpa_supplicant.service.in
+index bc0688a..561ae8f 100644
+--- a/wpa_supplicant/systemd/wpa_supplicant.service.in
++++ b/wpa_supplicant/systemd/wpa_supplicant.service.in
+@@ -3,6 +3,7 @@ Description=WPA supplicant
+ Before=network.target
+ After=dbus.service
+ Wants=network.target
++IgnoreOnIsolate=true
+ 
+ [Service]
+ Type=dbus

Added: wpa_supplicant_tls.patch
===================================================================
--- wpa_supplicant_tls.patch	                        (rev 0)
+++ wpa_supplicant_tls.patch	2022-01-23 09:37:43 UTC (rev 434948)
@@ -0,0 +1,28 @@
+From: Andrej Shadura <andrewsh at debian.org>
+Date: Sat, 15 Dec 2018 14:19:22 +0100
+Subject: Enable TLSv1.0 by default
+
+OpenSSL 1.1.1 disables TLSv1.0 by default and sets the security level to 2.
+Some older networks may support for TLSv1.0 and less secure cyphers.
+---
+ src/crypto/tls_openssl.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/src/crypto/tls_openssl.c b/src/crypto/tls_openssl.c
+index c9e00b3..273e5cb 100644
+--- a/src/crypto/tls_openssl.c
++++ b/src/crypto/tls_openssl.c
+@@ -1040,6 +1040,13 @@ void * tls_init(const struct tls_config *conf)
+ 		os_free(data);
+ 		return NULL;
+ 	}
++
++#ifndef EAP_SERVER_TLS
++	/* Enable TLSv1.0 by default to allow connecting to legacy
++	 * networks since Debian OpenSSL is set to minimum TLSv1.2 and SECLEVEL=2. */
++	SSL_CTX_set_min_proto_version(ssl, TLS1_VERSION);
++#endif
++
+ 	data->ssl = ssl;
+ 	if (conf) {
+ 		data->tls_session_lifetime = conf->tls_session_lifetime;



More information about the arch-commits mailing list