initial implementation of 'osysmon' main program + CTRL client
diff --git a/osysmon.h b/osysmon.h
index d9d1a11..fdae8c4 100644
--- a/osysmon.h
+++ b/osysmon.h
@@ -2,10 +2,13 @@
 
 #include <osmocom/core/select.h>
 #include <osmocom/core/utils.h>
+#include <osmocom/vty/command.h>
 
 #include <stdbool.h>
 #include <linux/if.h>
 
+#include "value_node.h"
+
 /* information gathered from sysinfo(2) */
 struct osysmon_state_sysinfo {
 	unsigned long uptime_secs;
@@ -31,6 +34,7 @@
 	} default_route;
 };
 
+#if 0
 struct osysmon_state_gbproxy {
 	char ns_state[32];
 	char bssgp_state[32];
@@ -45,10 +49,26 @@
 	unsigned int num_bts;
 	char a_state[32];
 };
+#endif
 
 struct osysmon_state {
 	struct osysmon_state_sysinfo sysinfo;
 	struct osysmon_state_rtnl rtnl;
-	struct osysmon_state_rtnl gbproxy;
-	struct osysmon_state_rtnl bsc;
+
+	/* list of 'struct ctrl client' */
+	struct llist_head ctrl_clients;
 };
+
+extern struct osysmon_state *g_oss;
+
+
+
+enum osysmon_vty_node {
+	CTRL_CLIENT_NODE = _LAST_OSMOVTY_NODE + 1,
+	CTRL_CLIENT_GETVAR_NODE,
+};
+
+
+int osysmon_ctrl_go_parent(struct vty *vty);
+int osysmon_ctrl_init();
+int osysmon_ctrl_poll(struct value_node *parent);