summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2009-07-17 11:46:58 +0200
committerMarcel Holtmann <marcel@holtmann.org>2009-07-17 11:46:58 +0200
commit35c308f1ffb5424deb7e90508f95971ea69f39ca (patch)
treedcc95648677a86a5c3b0388574721f4eaeffa29b
parentd4777e4667f07be9e6d58b6ecf4fd81079f9c5b9 (diff)
downloadconnman-35c308f1ffb5424deb7e90508f95971ea69f39ca.tar.gz
connman-35c308f1ffb5424deb7e90508f95971ea69f39ca.tar.bz2
connman-35c308f1ffb5424deb7e90508f95971ea69f39ca.zip
Keep Ethernet services around only for one second
-rw-r--r--src/service.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/service.c b/src/service.c
index d1a99c82..d3891074 100644
--- a/src/service.c
+++ b/src/service.c
@@ -810,17 +810,21 @@ void __connman_service_put(struct connman_service *service)
iter = g_hash_table_lookup(service_hash, service->identifier);
if (iter != NULL) {
+ guint interval = 1;
+
reply_pending(service, EIO);
if (service->network != NULL) {
connman_network_unref(service->network);
service->network = NULL;
+
+ interval = 5;
}
service->state = CONNMAN_SERVICE_STATE_FAILURE;
service->error = CONNMAN_SERVICE_ERROR_OUT_OF_RANGE;
- service->timeout = g_timeout_add_seconds(5,
+ service->timeout = g_timeout_add_seconds(interval,
remove_timeout, iter);
} else
service_free(service);