---
 src/6to4.c    |   20 ++++++++++++++++++++
 src/connman.h |    1 +
 2 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/src/6to4.c b/src/6to4.c
index 52a0c53..8593e71 100644
--- a/src/6to4.c
+++ b/src/6to4.c
@@ -541,3 +541,23 @@ void __connman_6to4_remove(struct connman_ipconfig 
*ip4config)
        if (tunnel_created)
                tunnel_destroy();
 }
+
+int __connman_6to4_check(struct connman_ipconfig *ip4config)
+{
+       const char *address;
+
+       if (ip4config == NULL || tunnel_created == 0 ||
+                                       tunnel_pending == 1)
+               return -1;
+
+       DBG("tunnel ip address %s", tunnel_ip_address);
+
+       address = __connman_ipconfig_get_local(ip4config);
+       if (address == NULL)
+               return -1;
+
+       if (g_strcmp0(address, tunnel_ip_address) == 0)
+               return 1;
+
+       return 0;
+}
diff --git a/src/connman.h b/src/connman.h
index b3a45f0..a4ebbbe 100644
--- a/src/connman.h
+++ b/src/connman.h
@@ -639,3 +639,4 @@ void __connman_dnsproxy_flush(void);
 
 int __connman_6to4_probe(struct connman_service *service);
 void __connman_6to4_remove(struct connman_ipconfig *ipconfig);
+int __connman_6to4_check(struct connman_ipconfig *ipconfig);
-- 
1.7.0.4

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

Reply via email to