diff options
author | Jukka Rissanen <jukka.rissanen@linux.intel.com> | 2012-04-05 12:00:47 +0300 |
---|---|---|
committer | Patrik Flykt <patrik.flykt@linux.intel.com> | 2012-04-05 14:17:38 +0300 |
commit | 4e1d663c9c31890af9869b2d8c9faf41acf7ef91 (patch) | |
tree | 39d9ef138a72ed79d0f0aefe5e0c31c3b2a10da8 | |
parent | 212ad2f520bb2fb9cdc830142f65cfb7d0bd68fe (diff) | |
download | connman-4e1d663c9c31890af9869b2d8c9faf41acf7ef91.tar.gz connman-4e1d663c9c31890af9869b2d8c9faf41acf7ef91.tar.bz2 connman-4e1d663c9c31890af9869b2d8c9faf41acf7ef91.zip |
provider: Check if there are any routes for the provider
-rw-r--r-- | src/connman.h | 1 | ||||
-rw-r--r-- | src/provider.c | 17 |
2 files changed, 18 insertions, 0 deletions
diff --git a/src/connman.h b/src/connman.h index 556b9e1d..e97f856e 100644 --- a/src/connman.h +++ b/src/connman.h @@ -498,6 +498,7 @@ int __connman_private_network_release(const char *path); #include <connman/provider.h> +connman_bool_t __connman_provider_check_routes(struct connman_provider *provider); int __connman_provider_append_user_route(struct connman_provider *provider, int family, const char *network, const char *netmask); void __connman_provider_append_properties(struct connman_provider *provider, DBusMessageIter *iter); diff --git a/src/provider.c b/src/provider.c index b893e20d..42fd112f 100644 --- a/src/provider.c +++ b/src/provider.c @@ -970,6 +970,23 @@ const char *connman_provider_get_string(struct connman_provider *provider, return g_hash_table_lookup(provider->setting_strings, key); } +connman_bool_t +__connman_provider_check_routes(struct connman_provider *provider) +{ + if (provider == NULL) + return FALSE; + + if (provider->user_routes != NULL && + g_hash_table_size(provider->user_routes) > 0) + return TRUE; + + if (provider->routes != NULL && + g_hash_table_size(provider->routes) > 0) + return TRUE; + + return FALSE; +} + void *connman_provider_get_data(struct connman_provider *provider) { return provider->driver_data; |