diff --git a/config.c b/config.c
index ed7f052..615c498 100644
--- a/config.c
+++ b/config.c
@@ -32,8 +32,8 @@
 
 #include <iniparser/iniparser.h>
 
-#include "config.h"
 #include "config-internal.h"
+#include "config.h"
 #include "util.h"
 
 static const char *config_default_filename = SYSCONFDIR "/obmc-console.conf";
@@ -109,6 +109,27 @@
 	return config;
 }
 
+const char *config_get_section_value(struct config *config, const char *secname,
+				     const char *name)
+{
+	char buf[CONFIG_MAX_KEY_LENGTH];
+	int rc;
+
+	rc = snprintf(buf, sizeof(buf), "%s:%s", secname, name);
+	if (rc < 0) {
+		return NULL;
+	}
+
+	if ((size_t)rc >= sizeof(buf)) {
+		// error / key too long for the buffer
+		warnx("config: section:key too long for buffer: '%s':'%s'",
+		      secname, name);
+		return NULL;
+	}
+
+	return iniparser_getstring(config->dict, buf, NULL);
+}
+
 void config_fini(struct config *config)
 {
 	if (!config) {
@@ -286,3 +307,13 @@
 
 	return DEFAULT_CONSOLE_ID;
 }
+
+int config_count_sections(struct config *config)
+{
+	return iniparser_getnsec(config->dict);
+}
+
+const char *config_get_section_name(struct config *config, int i)
+{
+	return iniparser_getsecname(config->dict, i);
+}
