summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Nagy <mnagy@redhat.com>2009-02-27 12:13:05 +0100
committerMartin Nagy <mnagy@redhat.com>2009-03-16 15:45:47 +0100
commit977fb32441350db55e60664f12e99c861587d35e (patch)
tree5666642dffa27dca662170a9cf4ded1a1b2eb327
parenteb28d6d9ffe5c18f51a7288f3d536087991c1158 (diff)
downloadldap_driver_testing-977fb32441350db55e60664f12e99c861587d35e.tar.gz
ldap_driver_testing-977fb32441350db55e60664f12e99c861587d35e.tar.xz
ldap_driver_testing-977fb32441350db55e60664f12e99c861587d35e.zip
Apply defaults correctly.
-rw-r--r--settings.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/settings.c b/settings.c
index 6b82e38..8de73ee 100644
--- a/settings.c
+++ b/settings.c
@@ -35,7 +35,7 @@
*/
static int args_are_equal(const char *setting_argument,
const char *argv_argument);
-static isc_result_t set_value(setting_t *setting, const char *arg);
+static isc_result_t set_value(setting_t *setting, const char *value);
static isc_result_t set_default_value(setting_t *setting);
static const char * get_value_str(const char *arg);
@@ -44,11 +44,13 @@ set_settings(setting_t settings[], const char * const* argv)
{
isc_result_t result;
int i, j;
+ const char *value;
for (i = 0; argv[i] != NULL; i++) {
for (j = 0; settings[j].name != NULL; j++) {
if (args_are_equal(settings[j].name, argv[i])) {
- CHECK(set_value(&settings[j], argv[i]));
+ value = get_value_str(argv[i]);
+ CHECK(set_value(&settings[j], value));
break;
}
}
@@ -104,13 +106,10 @@ args_are_equal(const char *setting_argument, const char *argv_argument)
}
static isc_result_t
-set_value(setting_t *setting, const char *arg)
+set_value(setting_t *setting, const char *value)
{
isc_result_t result;
int numeric_value;
- const char *value;
-
- value = get_value_str(arg);
if (setting->type == ST_LD_STRING) {
CHECK(str_init_char((ld_string_t *)setting->target, value));