connman_bool_t secondary;
connman_bool_t available;
connman_bool_t connected;
+ connman_bool_t hidden;
connman_uint8_t strength;
connman_uint16_t frequency;
char *identifier;
__connman_element_initialize(&network->element);
//temp = connman_dbus_encode_string(identifier);
- temp = g_strdup(identifier);
+ if (identifier == NULL) {
+ temp = g_strdup("hidden");
+ network->hidden = TRUE;
+ } else
+ temp = g_strdup(identifier);
+
if (temp == NULL) {
g_free(network);
return NULL;
network->type = type;
network->secondary = FALSE;
- network->identifier = g_strdup(identifier);
+ network->identifier = g_strdup(temp);
network->ipconfig = connman_ipconfig_create();
if (network->ipconfig == NULL) {
*/
connman_bool_t connman_network_get_available(struct connman_network *network)
{
+ if (network->hidden == TRUE)
+ return TRUE;
+
return network->available;
}
connman_element_unregister_children(&network->element);
__connman_device_set_network(network->device, NULL);
+ network->hidden = FALSE;
__connman_device_decrease_connections(network->device);
if (err < 0) {
if (err == -EINPROGRESS)
connman_network_set_associating(network, TRUE);
+ else
+ network->hidden = FALSE;
return err;
}