diff options
author | Daniel Wagner <daniel.wagner@bmw-carit.de> | 2012-10-02 16:04:59 +0200 |
---|---|---|
committer | Daniel Wagner <daniel.wagner@bmw-carit.de> | 2012-10-02 16:22:31 +0200 |
commit | bb9098e011846fd1985a2b6eda185d8ebf6abb6e (patch) | |
tree | a9cf4fd6bd43a04df546f9aa43a30a01d96d3162 | |
parent | 36ab809686c0be354199b9a62619a8c57863e5ee (diff) | |
download | connman-bb9098e011846fd1985a2b6eda185d8ebf6abb6e.tar.gz connman-bb9098e011846fd1985a2b6eda185d8ebf6abb6e.tar.bz2 connman-bb9098e011846fd1985a2b6eda185d8ebf6abb6e.zip |
session: Move the default config create part back to core
-rw-r--r-- | include/session.h | 2 | ||||
-rw-r--r-- | plugins/session_policy.c | 12 | ||||
-rw-r--r-- | src/session.c | 21 |
3 files changed, 24 insertions, 11 deletions
diff --git a/include/session.h b/include/session.h index b8f7a519..63e077be 100644 --- a/include/session.h +++ b/include/session.h @@ -79,6 +79,8 @@ void connman_session_policy_unregister(struct connman_session_policy *config); GSList *connman_session_allowed_bearers_any(void); void connman_session_free_bearers(GSList *bearers); +struct connman_session_config *connman_session_create_default_config(void); + #ifdef __cplusplus } #endif diff --git a/plugins/session_policy.c b/plugins/session_policy.c index 5c2c418f..98d984ac 100644 --- a/plugins/session_policy.c +++ b/plugins/session_policy.c @@ -42,20 +42,10 @@ static struct connman_session_config *policy_create( DBG("session %p", session); - config = g_try_new0(struct connman_session_config, 1); + config = connman_session_create_default_config(); if (config == NULL) return NULL; - config->priority = FALSE; - config->roaming_policy = CONNMAN_SESSION_ROAMING_POLICY_DEFAULT; - config->type = CONNMAN_SESSION_TYPE_ANY; - config->ecall = FALSE; - config->allowed_bearers = connman_session_allowed_bearers_any(); - if (config->allowed_bearers == NULL) { - g_free(config); - return NULL; - } - g_hash_table_replace(config_hash, session, config); return config; diff --git a/src/session.c b/src/session.c index fe1f5033..de25f789 100644 --- a/src/session.c +++ b/src/session.c @@ -326,6 +326,27 @@ void connman_session_policy_unregister(struct connman_session_policy *policy) remove_policy(policy); } +struct connman_session_config *connman_session_create_default_config(void) +{ + struct connman_session_config *config; + + config = g_try_new0(struct connman_session_config, 1); + if (config == NULL) + return NULL; + + config->priority = FALSE; + config->roaming_policy = CONNMAN_SESSION_ROAMING_POLICY_DEFAULT; + config->type = CONNMAN_SESSION_TYPE_ANY; + config->ecall = FALSE; + config->allowed_bearers = connman_session_allowed_bearers_any(); + if (config->allowed_bearers == NULL) { + g_free(config); + return NULL; + } + + return config; +} + static enum connman_session_type apply_policy_on_type( enum connman_session_type policy, enum connman_session_type type) |