connman_bool_t associating);
void connman_network_set_error(struct connman_network *network,
enum connman_network_error error);
+void connman_network_clear_error(struct connman_network *network);
int connman_network_set_connected(struct connman_network *network,
connman_bool_t connected);
connman_bool_t connman_network_get_connected(struct connman_network *network);
enum connman_service_state state);
int __connman_service_indicate_error(struct connman_service *service,
enum connman_service_error error);
+int __connman_service_clear_error(struct connman_service *service);
int __connman_service_indicate_default(struct connman_service *service);
int __connman_service_request_login(struct connman_service *service);
}
}
+void connman_network_clear_error(struct connman_network *network)
+{
+ struct connman_service *service;
+
+ DBG("network %p", network);
+
+ if (network == NULL)
+ return;
+
+ if (network->connecting == TRUE || network->associating == TRUE)
+ return;
+
+ service = __connman_service_lookup_from_network(network);
+ __connman_service_clear_error(service);
+}
+
static void set_configuration(struct connman_network *network)
{
struct connman_service *service;
CONNMAN_SERVICE_STATE_FAILURE);
}
+int __connman_service_clear_error(struct connman_service *service)
+{
+ DBG("service %p", service);
+
+ if (service == NULL)
+ return -EINVAL;
+
+ if (service->state != CONNMAN_SERVICE_STATE_FAILURE)
+ return -EINVAL;
+
+ service->state = CONNMAN_SERVICE_STATE_UNKNOWN;
+ service->error = CONNMAN_SERVICE_ERROR_UNKNOWN;;
+
+ if (service->favorite == TRUE)
+ set_reconnect_state(service, TRUE);
+
+ return __connman_service_indicate_state(service,
+ CONNMAN_SERVICE_STATE_IDLE);
+}
+
int __connman_service_indicate_default(struct connman_service *service)
{
DBG("service %p", service);