Blame SOURCES/wpa_supplicant-dbus-Export-OWE-capability-and-OWE-BSS-key_mgmt.patch

964f4f
From 7800725afb27397f7d6033d4969e2aeb61af4737 Mon Sep 17 00:00:00 2001
964f4f
Message-Id: <7800725afb27397f7d6033d4969e2aeb61af4737.1602780273.git.davide.caratti@gmail.com>
964f4f
From: Beniamino Galvani <bgalvani@redhat.com>
964f4f
Date: Sun, 13 Oct 2019 15:18:54 +0200
964f4f
Subject: [PATCH] dbus: Export OWE capability and OWE BSS key_mgmt
964f4f
964f4f
Export a new 'owe' capability to indicate that wpa_supplicant was
964f4f
built with OWE support and accepts 'key_mgmt=OWE'. Also, support 'owe'
964f4f
in the array of BSS' available key managements.
964f4f
964f4f
Signed-off-by: Beniamino Galvani <bgalvani@redhat.com>
964f4f
---
964f4f
 wpa_supplicant/dbus/dbus_new_handlers.c | 12 +++++++++---
964f4f
 1 file changed, 9 insertions(+), 3 deletions(-)
964f4f
964f4f
diff --git a/wpa_supplicant/dbus/dbus_new_handlers.c b/wpa_supplicant/dbus/dbus_new_handlers.c
964f4f
index d2c84e5c5..1206c3cde 100644
964f4f
--- a/wpa_supplicant/dbus/dbus_new_handlers.c
964f4f
+++ b/wpa_supplicant/dbus/dbus_new_handlers.c
964f4f
@@ -984,8 +984,7 @@ dbus_bool_t wpas_dbus_getter_global_capabilities(
964f4f
 	const struct wpa_dbus_property_desc *property_desc,
964f4f
 	DBusMessageIter *iter, DBusError *error, void *user_data)
964f4f
 {
964f4f
-	const char *capabilities[10] = { NULL, NULL, NULL, NULL, NULL, NULL,
964f4f
-					NULL, NULL, NULL, NULL };
964f4f
+	const char *capabilities[11];
964f4f
 	size_t num_items = 0;
964f4f
 #ifdef CONFIG_FILS
964f4f
 	struct wpa_global *global = user_data;
964f4f
@@ -1028,6 +1027,9 @@ dbus_bool_t wpas_dbus_getter_global_capabilities(
964f4f
 #ifdef CONFIG_SHA384
964f4f
 	capabilities[num_items++] = "sha384";
964f4f
 #endif /* CONFIG_SHA384 */
964f4f
+#ifdef CONFIG_OWE
964f4f
+	capabilities[num_items++] = "owe";
964f4f
+#endif /* CONFIG_OWE */
964f4f
 
964f4f
 	return wpas_dbus_simple_array_property_getter(iter,
964f4f
 						      DBUS_TYPE_STRING,
964f4f
@@ -4491,7 +4493,7 @@ static dbus_bool_t wpas_dbus_get_bss_security_prop(
964f4f
 	DBusMessageIter iter_dict, variant_iter;
964f4f
 	const char *group;
964f4f
 	const char *pairwise[5]; /* max 5 pairwise ciphers is supported */
964f4f
-	const char *key_mgmt[15]; /* max 15 key managements may be supported */
964f4f
+	const char *key_mgmt[16]; /* max 16 key managements may be supported */
964f4f
 	int n;
964f4f
 
964f4f
 	if (!dbus_message_iter_open_container(iter, DBUS_TYPE_VARIANT,
964f4f
@@ -4544,6 +4546,10 @@ static dbus_bool_t wpas_dbus_get_bss_security_prop(
964f4f
 	if (ie_data->key_mgmt & WPA_KEY_MGMT_FT_SAE)
964f4f
 		key_mgmt[n++] = "ft-sae";
964f4f
 #endif /* CONFIG_SAE */
964f4f
+#ifdef CONFIG_OWE
964f4f
+	if (ie_data->key_mgmt & WPA_KEY_MGMT_OWE)
964f4f
+		key_mgmt[n++] = "owe";
964f4f
+#endif /* CONFIG_OWE */
964f4f
 	if (ie_data->key_mgmt & WPA_KEY_MGMT_NONE)
964f4f
 		key_mgmt[n++] = "wpa-none";
964f4f
 
964f4f
-- 
964f4f
2.26.2
964f4f