From cb1f2e0c01f33f6a1d6b0dd3415e7b5d716309f6 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Sun, 25 Jan 2009 17:37:45 +0100 Subject: [PATCH] conf: added config_add_param() The function config_add_param() allows adding new configuration parameters. --- src/conf.c | 10 ++++++++++ src/conf.h | 7 +++++++ 2 files changed, 17 insertions(+) diff --git a/src/conf.c b/src/conf.c index 9dfebc059..7560c02ba 100644 --- a/src/conf.c +++ b/src/conf.c @@ -23,6 +23,7 @@ #include +#include #include #include #include @@ -349,6 +350,15 @@ void config_read_file(const char *file) fclose(fp); } +void +config_add_param(const char *name, struct config_param *param) +{ + struct config_entry *entry = config_entry_get(name); + assert(entry != NULL); + + entry->params = g_slist_append(entry->params, param); +} + struct config_param * config_get_next_param(const char *name, const struct config_param * last) { diff --git a/src/conf.h b/src/conf.h index 42ac6f228..5e191815f 100644 --- a/src/conf.h +++ b/src/conf.h @@ -91,6 +91,13 @@ void config_global_finish(void); void config_read_file(const char *file); +/** + * Adds a new configuration parameter. The name must be registered + * with registerConfigParam(). + */ +void +config_add_param(const char *name, struct config_param *param); + /* don't free the returned value set _last_ to NULL to get first entry */ struct config_param *