From: Daniel Wagner <[email protected]>

---
 src/connman.h |    1 +
 src/service.c |   14 ++++++++++++++
 2 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/src/connman.h b/src/connman.h
index 0849b56..461e818 100644
--- a/src/connman.h
+++ b/src/connman.h
@@ -568,6 +568,7 @@ GSequence *__connman_service_get_list(struct 
connman_session *session,
 connman_bool_t __connman_service_is_connecting(struct connman_service 
*service);
 connman_bool_t __connman_service_is_connected(struct connman_service *service);
 connman_bool_t __connman_service_is_pending(struct connman_service *service);
+connman_bool_t __connman_service_is_idle(struct connman_service *service);
 const char *__connman_service_get_name(struct connman_service *service);
 
 #include <connman/location.h>
diff --git a/src/service.c b/src/service.c
index 0dc2ad7..1c58552 100644
--- a/src/service.c
+++ b/src/service.c
@@ -478,6 +478,15 @@ static connman_bool_t is_connected(struct connman_service 
*service)
        return is_connected_state(service, state);
 }
 
+static connman_bool_t is_idle(struct connman_service *service)
+{
+       enum connman_service_state state;
+
+       state = combine_state(service->state_ipv4, service->state_ipv6);
+
+       return state == CONNMAN_SERVICE_STATE_IDLE;
+}
+
 static void update_nameservers(struct connman_service *service)
 {
        const char *ifname;
@@ -1595,6 +1604,11 @@ connman_bool_t __connman_service_is_pending(struct 
connman_service *service)
        return service->pending != NULL;
 }
 
+connman_bool_t __connman_service_is_idle(struct connman_service *service)
+{
+       return is_idle(service);
+}
+
 const char *__connman_service_get_name(struct connman_service *service)
 {
        return service->name;
-- 
1.7.4.2

_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman

Reply via email to