diff --git a/value_node.c b/value_node.c
index 0713bf6..ef0167c 100644
--- a/value_node.c
+++ b/value_node.c
@@ -22,6 +22,7 @@
  */
 
 #include <talloc.h>
+#include <string.h>
 #include <osmocom/core/utils.h>
 
 #include "value_node.h"
@@ -30,7 +31,15 @@
 				  const char *name, const char *value)
 {
 	struct value_node *vn = talloc_zero(parent, struct value_node);
+
+	if (parent && value_node_find(parent, name)) {
+		/* duplicate name not permitted! */
+		return NULL;
+	}
+
+	vn = talloc_zero(parent, struct value_node);
 	OSMO_ASSERT(vn);
+
 	/* we assume the name is static/const and owned by caller */
 	vn->name = name;
 	if (value)
@@ -43,6 +52,25 @@
 	return vn;
 }
 
+struct value_node *value_node_find(struct value_node *parent, const char *name)
+{
+	struct value_node *vn;
+	llist_for_each_entry(vn, &parent->children, list) {
+		if (!strcmp(name, vn->name))
+			return vn;
+	}
+	return NULL;
+}
+
+struct value_node *value_node_find_or_add(struct value_node *parent, const char *name)
+{
+	struct value_node *vn;
+	vn = value_node_find(parent, name);
+	if (!vn)
+		vn = value_node_add(parent, parent, name, NULL);
+	return vn;
+}
+
 void value_node_del(struct value_node *node)
 {
 	/* remove ourselves from the parent */
