if (driver->probe(element) < 0)
return FALSE;
- __connman_element_lock(element);
element->driver = driver;
- __connman_element_unlock(element);
}
return FALSE;
if (driver->remove)
driver->remove(element);
- __connman_element_lock(element);
element->driver = NULL;
- __connman_element_unlock(element);
}
return FALSE;
{
DBG("element %p name %s", element, element->name);
- __connman_element_lock(element);
-
g_hash_table_destroy(element->properties);
element->properties = NULL;
-
- __connman_element_unlock(element);
}
void connman_element_unref(struct connman_element *element)
break;
}
- __connman_element_lock(element);
-
g_hash_table_replace(element->properties, g_strdup(name), property);
- __connman_element_unlock(element);
-
return 0;
}
break;
}
- __connman_element_lock(element);
-
g_hash_table_replace(element->properties, g_strdup(name), property);
- __connman_element_unlock(element);
-
return 0;
}
if (element->ipv4.method == CONNMAN_IPCONFIG_METHOD_UNKNOWN)
return connman_element_get_value(element->parent,
id, value);
- __connman_element_lock(element);
*((const char **) value) = __connman_ipconfig_method2string(element->ipv4.method);
- __connman_element_unlock(element);
break;
case CONNMAN_PROPERTY_ID_IPV4_ADDRESS:
if (element->ipv4.address == NULL)
return connman_element_get_value(element->parent,
id, value);
- __connman_element_lock(element);
*((char **) value) = element->ipv4.address;
- __connman_element_unlock(element);
break;
case CONNMAN_PROPERTY_ID_IPV4_NETMASK:
if (element->ipv4.netmask == NULL)
return connman_element_get_value(element->parent,
id, value);
- __connman_element_lock(element);
*((char **) value) = element->ipv4.netmask;
- __connman_element_unlock(element);
break;
case CONNMAN_PROPERTY_ID_IPV4_GATEWAY:
if (element->ipv4.gateway == NULL)
return connman_element_get_value(element->parent,
id, value);
- __connman_element_lock(element);
*((char **) value) = element->ipv4.gateway;
- __connman_element_unlock(element);
break;
case CONNMAN_PROPERTY_ID_IPV4_BROADCAST:
if (element->ipv4.broadcast == NULL)
return connman_element_get_value(element->parent,
id, value);
- __connman_element_lock(element);
*((char **) value) = element->ipv4.broadcast;
- __connman_element_unlock(element);
break;
case CONNMAN_PROPERTY_ID_IPV4_NAMESERVER:
if (element->ipv4.nameserver == NULL)
return connman_element_get_value(element->parent,
id, value);
- __connman_element_lock(element);
*((char **) value) = element->ipv4.nameserver;
- __connman_element_unlock(element);
break;
case CONNMAN_PROPERTY_ID_IPV4_TIMESERVER:
if (element->ipv4.timeserver == NULL)
return connman_element_get_value(element->parent,
id, value);
- __connman_element_lock(element);
*((char **) value) = element->ipv4.timeserver;
- __connman_element_unlock(element);
break;
case CONNMAN_PROPERTY_ID_IPV4_PAC:
if (element->ipv4.pac == NULL)
return connman_element_get_value(element->parent,
id, value);
- __connman_element_lock(element);
*((char **) value) = element->ipv4.pac;
- __connman_element_unlock(element);
break;
default:
return -EINVAL;
DBG("element %p name %s", element, element->name);
- __connman_element_lock(element);
-
property = g_hash_table_lookup(element->properties, name);
if (property != NULL) {
switch (property->type) {
}
}
- __connman_element_unlock(element);
-
if (found == FALSE && element->parent != NULL)
return get_static_property(element->parent, name, value);
DBG("element %p name %s", element, element->name);
- __connman_element_lock(element);
-
property = g_hash_table_lookup(element->properties, name);
if (property != NULL) {
*((void **) value) = property->value;
found = TRUE;
}
- __connman_element_unlock(element);
-
return found;
}
DBG("driver %p name %s", driver, driver->name);
if (driver->probe(element) == 0) {
- __connman_element_lock(element);
element->driver = driver;
- __connman_element_unlock(element);
break;
}
}
const gchar *basepath;
GNode *node;
- __connman_element_lock(element);
-
if (element->parent) {
node = g_node_find(element_root, G_PRE_ORDER,
G_TRAVERSE_ALL, element->parent);
element->path = g_strdup_printf("%s/%s", basepath, element->name);
- __connman_element_unlock(element);
-
if (node == NULL) {
connman_error("Element registration for %s failed",
element->path);
if (connman_element_ref(element) == NULL)
return -EINVAL;
- __connman_element_lock(element);
-
if (element->name == NULL) {
element->name = g_strdup(type2string(element->type));
if (element->name == NULL) {
- __connman_element_unlock(element);
return -EINVAL;
}
}
element->parent = parent;
- __connman_element_unlock(element);
-
register_element(element, NULL);
return 0;
if (element->driver->remove)
element->driver->remove(element);
- __connman_element_lock(element);
element->driver = NULL;
- __connman_element_unlock(element);
}
if (node != NULL)
if (element->driver->remove)
element->driver->remove(element);
- __connman_element_lock(element);
element->driver = NULL;
- __connman_element_unlock(element);
}
return FALSE;