return NULL;
}
+
+ bool g_supplicant_network_get_rsn_selected(GSupplicantNetwork *network)
+ {
+ if (network == NULL || network->best_bss == NULL)
+ return 0;
+
+ if (network->best_bss->rsn_selected)
+ return true;
+ else
+ return false;
+ }
+
#endif
static void merge_network(GSupplicantNetwork *network)
data->interface = interface;
data->path = g_strdup(interface->path);
+#if defined TIZEN_EXT
+ data->interface->scan_callback = data->callback = callback;
+ data->interface->scan_data = data->user_data = user_data;
+#else
data->callback = callback;
data->user_data = user_data;
+#endif
data->scan_params = scan_data;
interface->scan_callback = callback;
if (!ssid->private_key_path)
return;
+#if !defined TIZEN_EXT
if (!ssid->private_key_passphrase)
return;
+#endif
if (ssid->ca_cert_path)
supplicant_dbus_dict_append_basic(dict, "ca_cert",
supplicant_dbus_dict_append_basic(dict, "private_key",
DBUS_TYPE_STRING,
&ssid->private_key_path);
+#if !defined TIZEN_EXT
supplicant_dbus_dict_append_basic(dict, "private_key_passwd",
DBUS_TYPE_STRING,
&ssid->private_key_passphrase);
+#endif
supplicant_dbus_dict_append_basic(dict, "client_cert",
DBUS_TYPE_STRING,
&ssid->client_cert_path);
if (!ssid->private_key_path)
return;
+#if !defined TIZEN_EXT
if (!ssid->private_key_passphrase)
return;
+#endif
supplicant_dbus_dict_append_basic(dict, "client_cert",
DBUS_TYPE_STRING,
DBUS_TYPE_STRING,
&ssid->private_key_path);
+#if !defined TIZEN_EXT
supplicant_dbus_dict_append_basic(dict, "private_key_passwd",
DBUS_TYPE_STRING,
&ssid->private_key_passphrase);
+#endif
}
unsigned char bssid[WIFI_BSSID_LEN_MAX];
unsigned int maxrate;
unsigned int isHS20AP;
+ bool rsn_selected;
#endif
} wifi;
if (network->associating == FALSE &&
state_ipv4 == CONNMAN_SERVICE_STATE_ASSOCIATION &&
- state_ipv6 == CONNMAN_SERVICE_STATE_ASSOCIATION) {
- __connman_service_ipconfig_indicate_state(service,
- CONNMAN_SERVICE_STATE_IDLE,
- CONNMAN_IPCONFIG_TYPE_IPV4);
-
- __connman_service_ipconfig_indicate_state(service,
- CONNMAN_SERVICE_STATE_IDLE,
- CONNMAN_IPCONFIG_TYPE_IPV6);
- }
+ state_ipv6 == CONNMAN_SERVICE_STATE_ASSOCIATION)
+ connman_network_clear_associating(network);
return FALSE;
}
return (const char *)network->wifi.encryption_mode;
}
+ int connman_network_set_rsn_selected(struct connman_network *network,
+ bool rsn_selected)
+ {
+ network->wifi.rsn_selected = rsn_selected;
+
+ return 0;
+ }
+
int connman_network_set_proxy(struct connman_network *network,
const char *proxies)
{
else if (g_str_equal(key, "WiFi.Mode"))
return network->wifi.mode;
else if (g_str_equal(key, "WiFi.Security"))
+ #if defined TIZEN_EXT
+ if (network->wifi.rsn_selected != true ||
+ g_str_equal(network->wifi.security, "ieee8021x"))
+ return network->wifi.security;
+ else
+ return "rsn";
+ #else
return network->wifi.security;
+ #endif
else if (g_str_equal(key, "WiFi.Passphrase"))
return network->wifi.passphrase;
else if (g_str_equal(key, "WiFi.EAP"))
return CONNMAN_SERVICE_SECURITY_NONE;
if (!strcmp(str, "wep"))
return CONNMAN_SERVICE_SECURITY_WEP;
+ #if defined TIZEN_EXT
+ if (!strcmp(str, "rsn"))
+ return CONNMAN_SERVICE_SECURITY_RSN;
+ #endif
return CONNMAN_SERVICE_SECURITY_UNKNOWN;
}
return "wep";
case CONNMAN_SERVICE_SECURITY_PSK:
case CONNMAN_SERVICE_SECURITY_WPA:
+ #if defined TIZEN_EXT
+ return "psk";
+ case CONNMAN_SERVICE_SECURITY_RSN:
+ return "rsn";
+ #else
case CONNMAN_SERVICE_SECURITY_RSN:
return "psk";
+ #endif
case CONNMAN_SERVICE_SECURITY_8021X:
return "ieee8021x";
}
if (!str)
return;
+#if !defined TIZEN_EXT
if (!allow_property_changed(service))
return;
+#endif
connman_dbus_property_changed_basic(service->path,
CONNMAN_SERVICE_INTERFACE, "State",
unsigned int maxrate;
uint16_t frequency;
const char *enc_mode;
+ gboolean passpoint;
bssid = connman_network_get_bssid(network);
maxrate = connman_network_get_maxrate(network);
frequency = connman_network_get_frequency(network);
enc_mode = connman_network_get_enc_mode(network);
+ passpoint = connman_network_get_is_hs20AP(network);
snprintf(bssid_str, WIFI_BSSID_STR_LEN, "%02x:%02x:%02x:%02x:%02x:%02x",
bssid[0], bssid[1], bssid[2],
DBUS_TYPE_UINT16, &frequency);
connman_dbus_dict_append_basic(dict, "EncryptionMode",
DBUS_TYPE_STRING, &enc_mode);
+ connman_dbus_dict_append_basic(dict, "Passpoint",
+ DBUS_TYPE_BOOLEAN, &passpoint);
}
#endif
case CONNMAN_SERVICE_SECURITY_UNKNOWN:
case CONNMAN_SERVICE_SECURITY_NONE:
case CONNMAN_SERVICE_SECURITY_WPA:
+ #if !defined TIZEN_EXT
case CONNMAN_SERVICE_SECURITY_RSN:
+ #endif
DBG("service security '%s' (%d) not handled",
security2string(security), security);
return -EOPNOTSUPP;
case CONNMAN_SERVICE_SECURITY_PSK:
+ #if defined TIZEN_EXT
+ case CONNMAN_SERVICE_SECURITY_RSN:
+ #endif
/* A raw key is always 64 bytes length,
* its content is in hex representation.
* A PSK key must be between [8..63].
static bool allow_property_changed(struct connman_service *service)
{
+#if defined TIZEN_EXT
+ if (service->path == NULL)
+ return FALSE;
+#endif
if (g_hash_table_lookup_extended(services_notify->add, service->path,
NULL, NULL)) {
DBG("no property updates for service %p", service);