#define G_SUPPLICANT_KEYMGMT_WPA_EAP (1 << 7)
#define G_SUPPLICANT_KEYMGMT_WPA_EAP_256 (1 << 8)
#define G_SUPPLICANT_KEYMGMT_WPS (1 << 9)
-#if defined TIZEN_EXT_WIFI_MESH
+#if defined TIZEN_EXT
#define G_SUPPLICANT_KEYMGMT_SAE (1 << 10)
#endif
#if defined TIZEN_EXT
G_SUPPLICANT_SECURITY_FT_PSK,
G_SUPPLICANT_SECURITY_FT_IEEE8021X,
-#endif
-#if defined TIZEN_EXT_WIFI_MESH
G_SUPPLICANT_SECURITY_SAE,
#endif
} GSupplicantSecurity;
GSupplicantEapKeymgmt eap_keymgmt;
const char *phase1;
const char *pac_file;
-#endif
-#if defined TIZEN_EXT_WIFI_MESH
uint16_t ieee80211w;
#endif
};
{ "wpa-eap", G_SUPPLICANT_KEYMGMT_WPA_EAP },
{ "wpa-eap-sha256", G_SUPPLICANT_KEYMGMT_WPA_EAP_256 },
{ "wps", G_SUPPLICANT_KEYMGMT_WPS },
-#if defined TIZEN_EXT_WIFI_MESH
+#if defined TIZEN_EXT
{ "sae", G_SUPPLICANT_KEYMGMT_SAE },
#endif
{ }
GSupplicantPhy_mode phy_mode;
#endif
unsigned int wps_capabilities;
-#if defined TIZEN_EXT_WIFI_MESH
+#if defined TIZEN_EXT
dbus_bool_t sae;
#endif
};
return "ft_psk";
case G_SUPPLICANT_SECURITY_FT_IEEE8021X:
return "ft_ieee8021x";
-#endif
-#if defined TIZEN_EXT_WIFI_MESH
case G_SUPPLICANT_SECURITY_SAE:
return "sae";
#endif
return NULL;
if (network->best_bss->security == G_SUPPLICANT_SECURITY_PSK ||
+#if defined TIZEN_EXT
+ network->best_bss->security == G_SUPPLICANT_SECURITY_SAE ||
+#endif /* TIZEN_EXT */
network->best_bss->security == G_SUPPLICANT_SECURITY_IEEE8021X) {
unsigned int pairwise;
if (network == NULL || network->best_bss == NULL)
return 0;
+#if defined TIZEN_EXT
+ if (network->best_bss->security == G_SUPPLICANT_SECURITY_SAE)
+ return false;
+#endif /* TIZEN_EXT */
+
if (network->best_bss->rsn_selected) {
const char *mode = g_supplicant_network_get_enc_mode(network);
if (g_strcmp0(mode, "aes") == 0 ||
bss->psk = TRUE;
#endif
-#if defined TIZEN_EXT_WIFI_MESH
+#if defined TIZEN_EXT
if (bss->keymgmt & G_SUPPLICANT_KEYMGMT_SAE)
bss->sae = TRUE;
#endif
else if (bss->ft_ieee8021x == TRUE)
bss->security = G_SUPPLICANT_SECURITY_IEEE8021X;
#endif
-#if defined TIZEN_EXT_WIFI_MESH
+#if defined TIZEN_EXT
else if (bss->sae)
bss->security = G_SUPPLICANT_SECURITY_SAE;
#endif
g_free(proto);
}
-#if defined TIZEN_EXT_WIFI_MESH
+#if defined TIZEN_EXT
static void add_network_ieee80211w(DBusMessageIter *dict, GSupplicantSSID *ssid)
{
if (ssid->security != G_SUPPLICANT_SECURITY_SAE)
add_network_security_ciphers(dict, ssid);
add_network_security_proto(dict, ssid);
break;
-#endif
-#if defined TIZEN_EXT_WIFI_MESH
case G_SUPPLICANT_SECURITY_SAE:
key_mgmt = "SAE";
add_network_security_psk(dict, ssid);
add_network_security(&dict, ssid);
-#if defined TIZEN_EXT_WIFI_MESH
+#if defined TIZEN_EXT
add_network_ieee80211w(&dict, ssid);
#endif
CONNMAN_SERVICE_SECURITY_8021X = 4,
CONNMAN_SERVICE_SECURITY_WPA = 8,
CONNMAN_SERVICE_SECURITY_RSN = 9,
+#if defined TIZEN_EXT
+ CONNMAN_SERVICE_SECURITY_SAE = 10,
+#endif
};
enum connman_service_state {
return G_SUPPLICANT_SECURITY_FT_PSK;
else if (g_str_equal(security, "ft_ieee8021x") == TRUE)
return G_SUPPLICANT_SECURITY_FT_IEEE8021X;
+ else if (g_str_equal(security, "sae"))
+ return G_SUPPLICANT_SECURITY_SAE;
#endif
return G_SUPPLICANT_SECURITY_UNKNOWN;
ssid->scan_ssid = 1;
security = connman_network_get_string(network, "WiFi.Security");
ssid->security = network_security(security);
+#if defined TIZEN_EXT
+ ssid->ieee80211w = 1;
+#endif
ssid->passphrase = connman_network_get_string(network,
"WiFi.Passphrase");
ssid->eap = connman_network_get_string(network, "WiFi.EAP");
if (security == CONNMAN_SERVICE_SECURITY_PSK ||
#if defined TIZEN_EXT
security == CONNMAN_SERVICE_SECURITY_RSN ||
+ security == CONNMAN_SERVICE_SECURITY_SAE ||
#endif
security == CONNMAN_SERVICE_SECURITY_WEP) {
service->security = security;
#if defined TIZEN_EXT
if (!strcmp(str, "rsn"))
return CONNMAN_SERVICE_SECURITY_RSN;
+ if (!strcmp(str, "sae"))
+ return CONNMAN_SERVICE_SECURITY_SAE;
#endif
return CONNMAN_SERVICE_SECURITY_UNKNOWN;
return "psk";
case CONNMAN_SERVICE_SECURITY_RSN:
return "rsn";
+ case CONNMAN_SERVICE_SECURITY_SAE:
+ return "sae";
#else
case CONNMAN_SERVICE_SECURITY_RSN:
return "psk";
case CONNMAN_SERVICE_SECURITY_PSK:
case CONNMAN_SERVICE_SECURITY_WPA:
case CONNMAN_SERVICE_SECURITY_RSN:
+#if defined TIZEN_EXT
+ case CONNMAN_SERVICE_SECURITY_SAE:
+#endif
str = "wps";
dbus_message_iter_append_basic(iter,
DBUS_TYPE_STRING, &str);
case CONNMAN_SERVICE_SECURITY_PSK:
#if defined TIZEN_EXT
case CONNMAN_SERVICE_SECURITY_RSN:
+ /* TO CHECK: We need to check the key length supported by SAE */
+ case CONNMAN_SERVICE_SECURITY_SAE:
#endif
/* A raw key is always 64 bytes length,
* its content is in hex representation.
case CONNMAN_SERVICE_SECURITY_PSK:
case CONNMAN_SERVICE_SECURITY_WPA:
case CONNMAN_SERVICE_SECURITY_RSN:
+#if defined TIZEN_EXT
+ case CONNMAN_SERVICE_SECURITY_SAE:
+#endif
if (service->error == CONNMAN_SERVICE_ERROR_INVALID_KEY)
return -ENOKEY;
case CONNMAN_SERVICE_SECURITY_PSK:
case CONNMAN_SERVICE_SECURITY_WPA:
case CONNMAN_SERVICE_SECURITY_RSN:
+#if defined TIZEN_EXT
+ case CONNMAN_SERVICE_SECURITY_SAE:
+#endif
break;
case CONNMAN_SERVICE_SECURITY_8021X:
prepare_8021x(service);
else if (g_str_equal(security, "rsn"))
return CONNMAN_SERVICE_SECURITY_RSN;
#if defined TIZEN_EXT
+ else if (g_str_equal(security, "sae"))
+ return CONNMAN_SERVICE_SECURITY_SAE;
else if (g_str_equal(security, "ft_psk") == TRUE)
return CONNMAN_SERVICE_SECURITY_PSK;
else if (g_str_equal(security, "ft_ieee8021x") == TRUE)