summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJussi Kukkonen <jussi.kukkonen@intel.com>2013-11-01 10:46:11 +0200
committerrmerlino <regis.merlino@intel.com>2013-12-12 14:26:08 +0100
commitb59b61ede6283138096327a06b5ef17cbc23288e (patch)
tree038010038126a786dc95e191da000e102efd4c11
parentb9a99cf119333d3978c972234f7cfcf25da158c4 (diff)
downloaddleyna-core-b59b61ede6283138096327a06b5ef17cbc23288e.tar.gz
[settings] Add "port" setting
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
-rw-r--r--libdleyna/core/settings.c23
-rw-r--r--libdleyna/core/settings.h2
2 files changed, 25 insertions, 0 deletions
diff --git a/libdleyna/core/settings.c b/libdleyna/core/settings.c
index 42ae27c..71f680d 100644
--- a/libdleyna/core/settings.c
+++ b/libdleyna/core/settings.c
@@ -35,6 +35,7 @@ struct dleyna_settings_t_ {
/* Global section */
gboolean never_quit;
gchar *connector_name;
+ guint port;
/* Log section */
dleyna_log_type_t log_type;
@@ -48,6 +49,7 @@ struct dleyna_settings_t_ {
#define DLEYNA_SETTINGS_GROUP_GENERAL "general"
#define DLEYNA_SETTINGS_KEY_NEVER_QUIT "never-quit"
#define DLEYNA_SETTINGS_KEY_CONNECTOR_NAME "connector-name"
+#define DLEYNA_SETTINGS_KEY_PORT "port"
#define DLEYNA_SETTINGS_GROUP_LOG "log"
#define DLEYNA_SETTINGS_KEY_LOG_TYPE "log-type"
@@ -76,6 +78,8 @@ do { \
DLEYNA_LOG_DEBUG_NL(); \
DLEYNA_LOG_INFO("Connector Name: %s", (settings)->connector_name);\
DLEYNA_LOG_DEBUG_NL(); \
+ DLEYNA_LOG_INFO("Port: %u", (settings)->port);\
+ DLEYNA_LOG_DEBUG_NL(); \
\
DLEYNA_LOG_INFO("[Logging settings]"); \
DLEYNA_LOG_INFO("Log Type : %d", (settings)->log_type); \
@@ -245,6 +249,7 @@ static void prv_read_keys(dleyna_settings_t *settings)
gboolean b_val;
gint int_val;
gchar *s_val;
+ guint64 u_val;
gint *int_star;
gsize length;
gchar **list;
@@ -274,6 +279,18 @@ static void prv_read_keys(dleyna_settings_t *settings)
error = NULL;
}
+ u_val = g_key_file_get_uint64(keyfile,
+ DLEYNA_SETTINGS_GROUP_GENERAL,
+ DLEYNA_SETTINGS_KEY_PORT,
+ &error);
+
+ if (error == NULL) {
+ settings->port = (guint)u_val;
+ } else {
+ g_error_free(error);
+ error = NULL;
+ }
+
int_val = g_key_file_get_integer(keyfile,
DLEYNA_SETTINGS_GROUP_LOG,
DLEYNA_SETTINGS_KEY_LOG_TYPE,
@@ -334,6 +351,7 @@ static void prv_init_default(dleyna_settings_t *settings)
settings->never_quit = DLEYNA_SETTINGS_DEFAULT_NEVER_QUIT;
settings->connector_name = g_strdup(
DLEYNA_SETTINGS_DEFAULT_CONNECTOR_NAME);
+ settings->port = 0;
settings->log_type = DLEYNA_SETTINGS_DEFAULT_LOG_TYPE;
settings->log_level = DLEYNA_SETTINGS_DEFAULT_LOG_LEVEL;
@@ -426,6 +444,11 @@ const gchar *dleyna_settings_connector_name(dleyna_settings_t *settings)
return settings->connector_name;
}
+guint dleyna_settings_port(dleyna_settings_t *settings)
+{
+ return settings->port;
+}
+
static void prv_save_settings_to_file(dleyna_settings_t *settings,
GError **error)
{
diff --git a/libdleyna/core/settings.h b/libdleyna/core/settings.h
index 76d2198..3575242 100644
--- a/libdleyna/core/settings.h
+++ b/libdleyna/core/settings.h
@@ -35,6 +35,8 @@ const gchar *dleyna_settings_connector_name(dleyna_settings_t *settings);
gboolean dleyna_settings_is_never_quit(dleyna_settings_t *settings);
+guint dleyna_settings_port(dleyna_settings_t *settings);
+
void dleyna_settings_set_never_quit(dleyna_settings_t *settings,
gboolean never_quit,
GError **error);