vty: Add a new callback to let code decide if it is a config node or not
diff --git a/include/osmocom/vty/vty.h b/include/osmocom/vty/vty.h
index e7399ba..71b6be0 100644
--- a/include/osmocom/vty/vty.h
+++ b/include/osmocom/vty/vty.h
@@ -133,6 +133,7 @@
const char *copyright;
void *tall_ctx;
enum node_type (*go_parent_cb)(struct vty *vty);
+ int (*is_config_node)(struct vty *vty, int node);
};
/* Prototypes. */
diff --git a/src/vty/command.c b/src/vty/command.c
index bec28a0..6a52321 100644
--- a/src/vty/command.c
+++ b/src/vty/command.c
@@ -141,6 +141,10 @@
static int is_config(struct vty *vty)
{
+ /* ask the application */
+ if (host.app_info->is_config_node)
+ return host.app_info->is_config_node(vty, vty->node);
+
/* Assume that everything above CONFIG_NODE is a config node */
return vty->node > CONFIG_NODE;
}