summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustin Mitchell <jumitche@redhat.com>2017-09-28 14:09:10 -0400
committerSteve Dickson <steved@redhat.com>2017-10-26 08:50:08 -0400
commitd1392d80cdd6c40e36c965c6ff000e01a2ee1694 (patch)
treeb9c7fe277dd7a9cdf37f2d00a03dd8ee7a2fe64a
parent45484cb3ca377c03c0c6b1ac5d4f7975b81d3ff5 (diff)
downloadnfs-utils-d1392d80cdd6c40e36c965c6ff000e01a2ee1694.tar.gz
nfs-utils-d1392d80cdd6c40e36c965c6ff000e01a2ee1694.tar.xz
nfs-utils-d1392d80cdd6c40e36c965c6ff000e01a2ee1694.zip
conffile: Add get_str with default value
The similar config code in libnfsidmap had one additional feature of a get_str function with a default value option, include an equivalent function here to maintain compatibility. Signed-off-by: Justin Mitchell <jumitche@redhat.com> Signed-off-by: Steve Dickson <steved@redhat.com>
-rw-r--r--support/include/conffile.h1
-rw-r--r--support/nfs/conffile.c12
2 files changed, 13 insertions, 0 deletions
diff --git a/support/include/conffile.h b/support/include/conffile.h
index 0e7fa8b..d4cb6b4 100644
--- a/support/include/conffile.h
+++ b/support/include/conffile.h
@@ -58,6 +58,7 @@ extern struct conf_list *conf_get_tag_list(const char *, const char *);
extern int conf_get_num(const char *, const char *, int);
extern _Bool conf_get_bool(const char *, const char *, _Bool);
extern char *conf_get_str(const char *, const char *);
+extern char *conf_get_str_with_def(const char *, const char *, char *);
extern char *conf_get_section(const char *, const char *, const char *);
extern void conf_init(const char *);
extern void conf_cleanup(void);
diff --git a/support/nfs/conffile.c b/support/nfs/conffile.c
index 8239d66..9c5ed8e 100644
--- a/support/nfs/conffile.c
+++ b/support/nfs/conffile.c
@@ -639,6 +639,18 @@ conf_get_str(const char *section, const char *tag)
return conf_get_section(section, NULL, tag);
}
+/* Return the string value denoted by TAG in section SECTION,
+ * unless it is not set, in which case return def
+ */
+char *
+conf_get_str_with_def(const char *section, const char *tag, char *def)
+{
+ char * result = conf_get_section(section, NULL, tag);
+ if (!result)
+ return def;
+ return result;
+}
+
/*
* Find a section that may or may not have an argument
*/