[2/2] dbus: Add FILS capability

Message ID 1515383840-7921-2-git-send-email-masashi.honma@gmail.com
State Changes Requested
Headers show
Series
  • [1/2] wpa_cli: Fix duplicate const warning
Related show

Commit Message

Masashi Honma Jan. 8, 2018, 3:57 a.m.
Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
---
 wpa_supplicant/dbus/dbus_new_handlers.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

Jouni Malinen Feb. 3, 2018, 10:35 a.m. | #1
On Mon, Jan 08, 2018 at 12:57:20PM +0900, Masashi Honma wrote:
> diff --git a/wpa_supplicant/dbus/dbus_new_handlers.c b/wpa_supplicant/dbus/dbus_new_handlers.c
> @@ -980,7 +980,7 @@ dbus_bool_t wpas_dbus_getter_global_capabilities(
>  	const struct wpa_dbus_property_desc *property_desc,
>  	DBusMessageIter *iter, DBusError *error, void *user_data)
>  {
> -	const char *capabilities[5] = { NULL, NULL, NULL, NULL, NULL };
> +	const char *capabilities[6] = { NULL, NULL, NULL, NULL, NULL, NULL };
>  	size_t num_items = 0;
>  
>  #ifdef CONFIG_AP
> @@ -998,6 +998,9 @@ dbus_bool_t wpas_dbus_getter_global_capabilities(
>  #ifdef CONFIG_IEEE80211W
>  	capabilities[num_items++] = "pmf";
>  #endif /* CONFIG_IEEE80211W */
> +#ifdef CONFIG_FILS
> +	capabilities[num_items++] = "fils";
> +#endif /* CONFIG_FILS */

This would claim FILS to be supported even if the driver does not
support it. This should be done similarly to the "GET_CAPABILITY fils"
on the control interface, i.e., by checking the wpa_s->drv_flags. It
should also be noted that there is separate capabilities for FILS shared
key with and without PFS support (see wpa_is_fils_sk_pfs_supported()).
Masashi Honma Feb. 4, 2018, 1:50 a.m. | #2
On 2018/02/03 19:35, Jouni Malinen wrote:
> This would claim FILS to be supported even if the driver does not
> support it. This should be done similarly to the "GET_CAPABILITY fils"
> on the control interface, i.e., by checking the wpa_s->drv_flags. It
> should also be noted that there is separate capabilities for FILS shared
> key with and without PFS support (see wpa_is_fils_sk_pfs_supported()).

Though I agree with the checking with driver capabilities, the capabilities
could be different with each other when multi interfaces case. So my next patch
decides FILS is supported if at least one interface supports FILS. Because FILS
is capable on at least one interface. I would appreciate any other ideas.

Masashi Honma.

Patch

diff --git a/wpa_supplicant/dbus/dbus_new_handlers.c b/wpa_supplicant/dbus/dbus_new_handlers.c
index e31b733..846150a 100644
--- a/wpa_supplicant/dbus/dbus_new_handlers.c
+++ b/wpa_supplicant/dbus/dbus_new_handlers.c
@@ -980,7 +980,7 @@  dbus_bool_t wpas_dbus_getter_global_capabilities(
 	const struct wpa_dbus_property_desc *property_desc,
 	DBusMessageIter *iter, DBusError *error, void *user_data)
 {
-	const char *capabilities[5] = { NULL, NULL, NULL, NULL, NULL };
+	const char *capabilities[6] = { NULL, NULL, NULL, NULL, NULL, NULL };
 	size_t num_items = 0;
 
 #ifdef CONFIG_AP
@@ -998,6 +998,9 @@  dbus_bool_t wpas_dbus_getter_global_capabilities(
 #ifdef CONFIG_IEEE80211W
 	capabilities[num_items++] = "pmf";
 #endif /* CONFIG_IEEE80211W */
+#ifdef CONFIG_FILS
+	capabilities[num_items++] = "fils";
+#endif /* CONFIG_FILS */
 
 	return wpas_dbus_simple_array_property_getter(iter,
 						      DBUS_TYPE_STRING,