aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2011-03-02 22:40:31 +0100
committerHolger Hans Peter Freyther <zecke@selfish.org>2011-03-02 22:49:02 +0100
commitec84e3c1a16aaffe44b3f8968a4e8792ee057b6d (patch)
tree092ce42d5a46de8e4ddce6dbd5fccbf3b3ac2ef1
parent3c8b0f89aa2878d4a1545ece0997a0ca6f73b5aa (diff)
mgcp: Add a go to parent to allow multiple trunks
-rw-r--r--src/mgcp/mgcp_vty.c10
-rw-r--r--src/mgcp_ss7_vty.c3
2 files changed, 10 insertions, 3 deletions
diff --git a/src/mgcp/mgcp_vty.c b/src/mgcp/mgcp_vty.c
index 1d81ce9..717a815 100644
--- a/src/mgcp/mgcp_vty.c
+++ b/src/mgcp/mgcp_vty.c
@@ -38,8 +38,7 @@ extern void mgcp_write_extra(struct vty *vty, struct mgcp_config *cfg);
extern void mgcp_write_trunk_extra(struct vty *vty, struct mgcp_trunk_config *cfg);
-DEFUN(ournode_exit, ournode_exit_cmd,
- "exit", "Exit\n")
+enum node_type mgcp_go_parent(struct vty *vty)
{
switch (vty->node) {
case TRUNK_NODE:
@@ -50,6 +49,13 @@ DEFUN(ournode_exit, ournode_exit_cmd,
break;
}
+ return vty->node;
+}
+
+DEFUN(ournode_exit, ournode_exit_cmd,
+ "exit", "Exit\n")
+{
+ mgcp_go_parent(vty);
return CMD_SUCCESS;
}
diff --git a/src/mgcp_ss7_vty.c b/src/mgcp_ss7_vty.c
index a2c4c3f..4955607 100644
--- a/src/mgcp_ss7_vty.c
+++ b/src/mgcp_ss7_vty.c
@@ -28,10 +28,11 @@
extern struct mgcp_config *g_cfg;
+enum node_type mgcp_go_parent(struct vty *vty);
static struct vty_app_info vty_info = {
.name = "mgcp_ss7",
.version = "0.0.1",
- .go_parent_cb = NULL,
+ .go_parent_cb = mgcp_go_parent,
};
void logging_vty_add_cmds(void);