From c56ce48a6f33f4c283e6aeb02c7e816c1c9a0ac8 Mon Sep 17 00:00:00 2001 From: Witold Sowa Date: Sun, 11 Apr 2010 21:37:28 +0300 Subject: [PATCH] dbus: Add new KeyMgmt interface capabilities Add "wpa-ft-psk", "wpa-psk-sha256", "wpa-ft-eap" and "wpa-eap-sha256" possible KeyMgmt values of interface capabilities to fit values in BSS RSN options dictionary. --- doc/dbus.doxygen | 2 +- wpa_supplicant/dbus/dbus_new_handlers.c | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/doc/dbus.doxygen b/doc/dbus.doxygen index 17a3d50..eeea200 100644 --- a/doc/dbus.doxygen +++ b/doc/dbus.doxygen @@ -328,7 +328,7 @@ fi.w1.wpa_supplicant1.CreateInterface. KeyValue typeDescription PairwiseasPossible array elements: "ccmp", "tkip", "none" GroupasPossible array elements: "ccmp", "tkip", "wep104", "wep40" - KeyMgmtasPossible array elements: "wpa-psk", "wpa-eap", "ieee8021x", "wpa-none", "wps", "none" + KeyMgmtasPossible array elements: "wpa-psk", "wpa-ft-psk", "wpa-psk-sha256", "wpa-eap", "wpa-ft-eap", "wpa-eap-sha256", "ieee8021x", "wpa-none", "wps", "none" ProtocolasPossible array elements: "rsn", "wpa" AuthAlgasPossible array elements: "open", "shared", "leap" ScanasPossible array elements: "active", "passive", "ssid" diff --git a/wpa_supplicant/dbus/dbus_new_handlers.c b/wpa_supplicant/dbus/dbus_new_handlers.c index 3e924dc..83691de 100644 --- a/wpa_supplicant/dbus/dbus_new_handlers.c +++ b/wpa_supplicant/dbus/dbus_new_handlers.c @@ -1814,6 +1814,18 @@ DBusMessage * wpas_dbus_getter_capabilities(DBusMessage *message, if (!wpa_dbus_dict_string_array_add_element( &iter_array, "wpa-eap")) goto nomem; + + if (capa.key_mgmt & WPA_DRIVER_CAPA_KEY_MGMT_FT) + if (!wpa_dbus_dict_string_array_add_element( + &iter_array, "wpa-ft-eap")) + goto nomem; + +/* TODO: Ensure that driver actually supports sha256 encryption. */ +#ifdef CONFIG_IEEE80211W + if (!wpa_dbus_dict_string_array_add_element( + &iter_array, "wpa-eap-sha256")) + goto nomem; +#endif /* CONFIG_IEEE80211W */ } if (capa.key_mgmt & (WPA_DRIVER_CAPA_KEY_MGMT_WPA_PSK | @@ -1821,6 +1833,18 @@ DBusMessage * wpas_dbus_getter_capabilities(DBusMessage *message, if (!wpa_dbus_dict_string_array_add_element( &iter_array, "wpa-psk")) goto nomem; + + if (capa.key_mgmt & WPA_DRIVER_CAPA_KEY_MGMT_FT_PSK) + if (!wpa_dbus_dict_string_array_add_element( + &iter_array, "wpa-ft-psk")) + goto nomem; + +/* TODO: Ensure that driver actually supports sha256 encryption. */ +#ifdef CONFIG_IEEE80211W + if (!wpa_dbus_dict_string_array_add_element( + &iter_array, "wpa-psk-sha256")) + goto nomem; +#endif /* CONFIG_IEEE80211W */ } if (capa.key_mgmt & WPA_DRIVER_CAPA_KEY_MGMT_WPA_NONE) { -- 2.1.4