summaryrefslogtreecommitdiff
path: root/src/provider.c
diff options
context:
space:
mode:
authorPatrik Flykt <patrik.flykt@linux.intel.com>2012-01-25 13:49:41 +0200
committerSamuel Ortiz <sameo@linux.intel.com>2012-01-27 11:21:24 +0100
commitd05c00b6f152f32de71abc9521eb53555b477676 (patch)
tree47ec98901a24d032245f80553ef89984cfc25f54 /src/provider.c
parent35d3308810e424f44fb4c84d8446dd80f5f744e5 (diff)
downloadconnman-d05c00b6f152f32de71abc9521eb53555b477676.tar.gz
connman-d05c00b6f152f32de71abc9521eb53555b477676.tar.bz2
connman-d05c00b6f152f32de71abc9521eb53555b477676.zip
provider: Factor out keyfile loading
Factor out keyfile loading from connman_provider_load() into a fuction of its own.
Diffstat (limited to 'src/provider.c')
-rw-r--r--src/provider.c26
1 files changed, 17 insertions, 9 deletions
diff --git a/src/provider.c b/src/provider.c
index a041f91e..1f952824 100644
--- a/src/provider.c
+++ b/src/provider.c
@@ -76,20 +76,14 @@ void __connman_provider_append_properties(struct connman_provider *provider,
&provider->type);
}
-static int connman_provider_load(struct connman_provider *provider)
+static int provider_load_from_keyfile(struct connman_provider *provider,
+ GKeyFile *keyfile)
{
gsize idx = 0;
- GKeyFile *keyfile;
gchar **settings;
gchar *key, *value;
gsize length;
- DBG("provider %p", provider);
-
- keyfile = __connman_storage_load_provider(provider->identifier);
- if (keyfile == NULL)
- return -ENOENT;
-
settings = g_key_file_get_keys(keyfile, provider->identifier, &length,
NULL);
if (settings == NULL) {
@@ -99,7 +93,6 @@ static int connman_provider_load(struct connman_provider *provider)
while (idx < length) {
key = settings[idx];
- DBG("found key %s", key);
if (key != NULL) {
value = g_key_file_get_string(keyfile,
provider->identifier,
@@ -111,6 +104,21 @@ static int connman_provider_load(struct connman_provider *provider)
}
g_strfreev(settings);
+ return 0;
+}
+
+static int connman_provider_load(struct connman_provider *provider)
+{
+ GKeyFile *keyfile;
+
+ DBG("provider %p", provider);
+
+ keyfile = __connman_storage_load_provider(provider->identifier);
+ if (keyfile == NULL)
+ return -ENOENT;
+
+ provider_load_from_keyfile(provider, keyfile);
+
g_key_file_free(keyfile);
return 0;
}