diff options
Diffstat (limited to 'src/config.c')
-rw-r--r-- | src/config.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/config.c b/src/config.c index 9bfa9ae8..90a2180b 100644 --- a/src/config.c +++ b/src/config.c @@ -651,6 +651,7 @@ static gboolean inotify_data(GIOChannel *channel, GIOCondition cond, if (config != NULL) { g_hash_table_remove_all(config->service_table); load_config(config); + __connman_service_provision_changed(ident); } } @@ -870,3 +871,24 @@ int __connman_config_provision_service(struct connman_service *service) return 0; } + +int __connman_config_provision_service_ident(struct connman_service *service, + const char *ident) +{ + enum connman_service_type type; + struct connman_config *config; + + DBG("service %p", service); + + /* For now only WiFi services are supported */ + type = connman_service_get_type(service); + if (type != CONNMAN_SERVICE_TYPE_WIFI) + return -ENOSYS; + + config = g_hash_table_lookup(config_table, ident); + if(config != NULL) + g_hash_table_foreach(config->service_table, + provision_service, service); + + return 0; +} |