/* (C) 2014 by sysmocom - s.f.m.c. GmbH * * All Rights Reserved * * Author: Alvaro Neira Ayuso * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . * */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include "sysmobts_misc.h" #include "sysmobts_mgr.h" #include "btsconfig.h" static const char copyright[] = "(C) 2012 by Harald Welte \r\n" "(C) 2014 by Holger Hans Peter Freyther\r\n" "License AGPLv3+: GNU AGPL version 2 or later \r\n" "This is free software: you are free to change and redistribute it.\r\n" "There is NO WARRANTY, to the extent permitted by law.\r\n"; static enum node_type go_to_parent(struct vty *vty) { switch (vty->node) { case MGR_NODE: vty->node = CONFIG_NODE; break; default: vty->node = CONFIG_NODE; } return vty->node; } static int is_config_node(struct vty *vty, int node) { switch (node) { case MGR_NODE: return 1; default: return 0; } } static struct vty_app_info vty_info = { .name = "sysmobts-mgr", .version = PACKAGE_VERSION, .go_parent_cb = go_to_parent, .is_config_node = is_config_node, .copyright = copyright, }; #define MGR_STR "Configure sysmobts-mgr\n" static struct cmd_node mgr_node = { MGR_NODE, "%s(sysmobts-mgr)# ", 1, }; DEFUN(cfg_mgr, cfg_mgr_cmd, "sysmobts-mgr", MGR_STR) { vty->node = MGR_NODE; return CMD_SUCCESS; } DEFUN(show_mgr, show_mgr_cmd, "show manager", SHOW_STR "Display information about the manager") { return CMD_SUCCESS; } static int config_write_mgr(struct vty *vty) { vty_out(vty, "sysmobts-mgr%s", VTY_NEWLINE); return CMD_SUCCESS; } int sysmobts_mgr_vty_init(void) { vty_init(&vty_info); install_element_ve(&show_mgr_cmd); install_node(&mgr_node, config_write_mgr); install_element(CONFIG_NODE, &cfg_mgr_cmd); vty_install_default(MGR_NODE); return 0; } int sysmobts_mgr_parse_config(const char *config_file) { int rc; rc = vty_read_config_file(config_file, NULL); if (rc < 0) { fprintf(stderr, "Failed to parse the config file: '%s'\n", config_file); return rc; } return 0; }