return NULL;
}
-const char *__connman_ipconfig_method2string(enum connman_ipconfig_method method)
-{
- switch (method) {
- case CONNMAN_IPCONFIG_METHOD_UNKNOWN:
- return "unknown";
- case CONNMAN_IPCONFIG_METHOD_OFF:
- return "off";
- case CONNMAN_IPCONFIG_METHOD_STATIC:
- return "static";
- case CONNMAN_IPCONFIG_METHOD_DHCP:
- return "dhcp";
- }
-
- return "unknown";
-}
-
-enum connman_ipconfig_method __connman_ipconfig_string2method(const char *method)
-{
- if (strcasecmp(method, "off") == 0)
- return CONNMAN_IPCONFIG_METHOD_OFF;
- else if (strcasecmp(method, "static") == 0)
- return CONNMAN_IPCONFIG_METHOD_STATIC;
- else if (strcasecmp(method, "dhcp") == 0)
- return CONNMAN_IPCONFIG_METHOD_DHCP;
- else
- return CONNMAN_IPCONFIG_METHOD_UNKNOWN;
-}
-
static void emit_element_signal(DBusConnection *conn, const char *member,
struct connman_element *element)
{
case CONNMAN_DEVICE_TYPE_VENDOR:
case CONNMAN_DEVICE_TYPE_BLUETOOTH:
case CONNMAN_DEVICE_TYPE_GPS:
+ case CONNMAN_DEVICE_TYPE_MBM:
case CONNMAN_DEVICE_TYPE_HSO:
case CONNMAN_DEVICE_TYPE_NOZOMI:
case CONNMAN_DEVICE_TYPE_HUAWEI:
return 0;
}
+static enum connman_service_error convert_error(enum connman_element_error error)
+{
+ switch (error) {
+ case CONNMAN_ELEMENT_ERROR_UNKNOWN:
+ case CONNMAN_ELEMENT_ERROR_FAILED:
+ break;
+ case CONNMAN_ELEMENT_ERROR_DHCP_FAILED:
+ return CONNMAN_SERVICE_ERROR_DHCP_FAILED;
+ case CONNMAN_ELEMENT_ERROR_CONNECT_FAILED:
+ return CONNMAN_SERVICE_ERROR_CONNECT_FAILED;
+ }
+
+ return CONNMAN_SERVICE_ERROR_UNKNOWN;
+}
+
/**
* connman_element_set_error:
* @element: element structure
element->driver->change(element);
service = __connman_element_get_service(element);
- __connman_service_indicate_state(service,
- CONNMAN_SERVICE_STATE_FAILURE);
+ __connman_service_indicate_error(service, convert_error(error));
}
int __connman_element_init(DBusConnection *conn, const char *device,
__connman_connection_init();
__connman_ipv4_init();
- __connman_detect_init();
__connman_rfkill_init();
}
DBG("");
__connman_rfkill_cleanup();
- __connman_detect_cleanup();
__connman_ipv4_cleanup();
__connman_connection_cleanup();
}