diff options
author | Samuel Ortiz <sameo@linux.intel.com> | 2011-02-03 00:38:37 +0100 |
---|---|---|
committer | Samuel Ortiz <sameo@linux.intel.com> | 2011-02-03 00:38:37 +0100 |
commit | 609ea53e487a55298d7a168e616ab9bb91214084 (patch) | |
tree | 7ad21c3c5263586c55986ed9979f9328d32b98c9 /gsupplicant/supplicant.c | |
parent | 779bdfff2ace6ac14c1d472a1522481d7491f243 (diff) | |
download | connman-609ea53e487a55298d7a168e616ab9bb91214084.tar.gz connman-609ea53e487a55298d7a168e616ab9bb91214084.tar.bz2 connman-609ea53e487a55298d7a168e616ab9bb91214084.zip |
gsupplicant: Set WPA protocol
Diffstat (limited to 'gsupplicant/supplicant.c')
-rw-r--r-- | gsupplicant/supplicant.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/gsupplicant/supplicant.c b/gsupplicant/supplicant.c index 3dc50913..97e5858f 100644 --- a/gsupplicant/supplicant.c +++ b/gsupplicant/supplicant.c @@ -2726,6 +2726,39 @@ static void add_network_security_ciphers(DBusMessageIter *dict, g_free(group); } +static void add_network_security_proto(DBusMessageIter *dict, + GSupplicantSSID *ssid) +{ + unsigned int protocol, i; + char *proto; + char *protos[3]; + + protocol = ssid->protocol; + + if (protocol == 0) + return; + + i = 0; + + if (protocol & G_SUPPLICANT_PROTO_RSN) + protos[i++] = "RSN"; + + if (protocol & G_SUPPLICANT_PROTO_WPA) + protos[i++] = "WPA"; + + protos[i] = NULL; + + proto = g_strjoinv(" ", protos); + + SUPPLICANT_DBG("proto %s", proto); + + supplicant_dbus_dict_append_basic(dict, "proto", + DBUS_TYPE_STRING, + &proto); + + g_free(proto); +} + static void add_network_security(DBusMessageIter *dict, GSupplicantSSID *ssid) { char *key_mgmt; @@ -2740,10 +2773,12 @@ static void add_network_security(DBusMessageIter *dict, GSupplicantSSID *ssid) case G_SUPPLICANT_SECURITY_PSK: key_mgmt = "WPA-PSK"; add_network_security_psk(dict, ssid); + add_network_security_proto(dict, ssid); break; case G_SUPPLICANT_SECURITY_IEEE8021X: key_mgmt = "WPA-EAP"; add_network_security_eap(dict, ssid); + add_network_security_proto(dict, ssid); break; } |