libosmovty 0.9.6-23.20170220git32ee5af8.fc42
Osmocom VTY library
Loading...
Searching...
No Matches
command.h File Reference
#include <stdio.h>
#include <sys/types.h>
#include "vector.h"
#include "vty.h"

Go to the source code of this file.

Data Structures

struct  host
 Host configuration variable. More...
 
struct  cmd_node
 Node which has some commands and prompt string and configuration function pointer . More...
 
struct  cmd_element
 Structure of a command element. More...
 
struct  desc
 Command description structure. More...
 

Macros

#define CMD_SUCCESS   0
 Return value of the commands.
 
#define CMD_WARNING   1
 
#define CMD_ERR_NO_MATCH   2
 
#define CMD_ERR_AMBIGUOUS   3
 
#define CMD_ERR_INCOMPLETE   4
 
#define CMD_ERR_EXEED_ARGC_MAX   5
 
#define CMD_ERR_NOTHING_TODO   6
 
#define CMD_COMPLETE_FULL_MATCH   7
 
#define CMD_COMPLETE_MATCH   8
 
#define CMD_COMPLETE_LIST_MATCH   9
 
#define CMD_SUCCESS_DAEMON   10
 
#define CMD_ARGC_MAX   256
 
#define DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, attrs, dnum)
 
#define gDEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, attrs, dnum)
 
#define DEFUN_CMD_FUNC_DECL(funcname)
 
#define DEFUN_CMD_FUNC_TEXT(funcname)
 
#define DEFUN(funcname, cmdname, cmdstr, helpstr)
 Macro for defining a VTY node and function.
 
#define gDEFUN(funcname, cmdname, cmdstr, helpstr)
 Macro for defining a non-static (global) VTY node and function.
 
#define DEFUN_ATTR(funcname, cmdname, cmdstr, helpstr, attr)
 
#define DEFUN_HIDDEN(funcname, cmdname, cmdstr, helpstr)
 
#define DEFUN_DEPRECATED(funcname, cmdname, cmdstr, helpstr)
 
#define DEFUN_NOSH(funcname, cmdname, cmdstr, helpstr)
 
#define DEFSH(daemon, cmdname, cmdstr, helpstr)
 
#define DEFUNSH(daemon, funcname, cmdname, cmdstr, helpstr)
 
#define DEFUNSH_ATTR(daemon, funcname, cmdname, cmdstr, helpstr, attr)
 
#define DEFUNSH_HIDDEN(daemon, funcname, cmdname, cmdstr, helpstr)
 
#define DEFUNSH_DEPRECATED(daemon, funcname, cmdname, cmdstr, helpstr)
 
#define ALIAS(funcname, cmdname, cmdstr, helpstr)
 
#define gALIAS(funcname, cmdname, cmdstr, helpstr)
 
#define ALIAS_ATTR(funcname, cmdname, cmdstr, helpstr, attr)
 
#define ALIAS_HIDDEN(funcname, cmdname, cmdstr, helpstr)
 
#define ALIAS_DEPRECATED(funcname, cmdname, cmdstr, helpstr)
 
#define ALIAS_SH(daemon, funcname, cmdname, cmdstr, helpstr)
 
#define ALIAS_SH_HIDDEN(daemon, funcname, cmdname, cmdstr, helpstr)
 
#define ALIAS_SH_DEPRECATED(daemon, funcname, cmdname, cmdstr, helpstr)
 
#define CMD_OPTION(S)
 
#define CMD_VARIABLE(S)
 
#define CMD_VARARG(S)
 
#define CMD_RANGE(S)
 
#define CMD_IPV4(S)
 
#define CMD_IPV4_PREFIX(S)
 
#define CMD_IPV6(S)
 
#define CMD_IPV6_PREFIX(S)
 
#define SHOW_STR   "Show running system information\n"
 
#define IP_STR   "IP information\n"
 
#define IPV6_STR   "IPv6 information\n"
 
#define NO_STR   "Negate a command or set its defaults\n"
 
#define CLEAR_STR   "Reset functions\n"
 
#define RIP_STR   "RIP information\n"
 
#define BGP_STR   "BGP information\n"
 
#define OSPF_STR   "OSPF information\n"
 
#define NEIGHBOR_STR   "Specify neighbor router\n"
 
#define DEBUG_STR   "Debugging functions (see also 'undebug')\n"
 
#define UNDEBUG_STR   "Disable debugging functions (see also 'debug')\n"
 
#define ROUTER_STR   "Enable a routing process\n"
 
#define AS_STR   "AS number\n"
 
#define MBGP_STR   "MBGP information\n"
 
#define MATCH_STR   "Match values from routing table\n"
 
#define SET_STR   "Set values in destination routing protocol\n"
 
#define OUT_STR   "Filter outgoing routing updates\n"
 
#define IN_STR   "Filter incoming routing updates\n"
 
#define V4NOTATION_STR   "specify by IPv4 address notation(e.g. 0.0.0.0)\n"
 
#define OSPF6_NUMBER_STR   "Specify by number\n"
 
#define INTERFACE_STR   "Interface infomation\n"
 
#define IFNAME_STR   "Interface name(e.g. ep0)\n"
 
#define IP6_STR   "IPv6 Information\n"
 
#define OSPF6_STR   "Open Shortest Path First (OSPF) for IPv6\n"
 
#define OSPF6_ROUTER_STR   "Enable a routing process\n"
 
#define OSPF6_INSTANCE_STR   "<1-65535> Instance ID\n"
 
#define SECONDS_STR   "<1-65535> Seconds\n"
 
#define ROUTE_STR   "Routing Table\n"
 
#define PREFIX_LIST_STR   "Build a prefix list\n"
 
#define OSPF6_DUMP_TYPE_LIST   "(neighbor|interface|area|lsa|zebra|config|dbex|spf|route|lsdb|redistribute|hook|asbr|prefix|abr)"
 
#define ISIS_STR   "IS-IS information\n"
 
#define AREA_TAG_STR   "[area tag]\n"
 
#define CONF_BACKUP_EXT   ".sav"
 
#define NEIGHBOR_CMD   "neighbor A.B.C.D "
 
#define NO_NEIGHBOR_CMD   "no neighbor A.B.C.D "
 
#define NEIGHBOR_ADDR_STR   "Neighbor address\n"
 
#define NEIGHBOR_CMD2   "neighbor (A.B.C.D|WORD) "
 
#define NO_NEIGHBOR_CMD2   "no neighbor (A.B.C.D|WORD) "
 
#define NEIGHBOR_ADDR_STR2   "Neighbor address\nNeighbor tag\n"
 

Enumerations

enum  node_type {
  AUTH_NODE , VIEW_NODE , AUTH_ENABLE_NODE , ENABLE_NODE ,
  CONFIG_NODE , SERVICE_NODE , DEBUG_NODE , CFG_LOG_NODE ,
  CFG_STATS_NODE , VTY_NODE , L_E1INP_NODE , L_IPA_NODE ,
  L_NS_NODE , L_BSSGP_NODE , L_CTRL_NODE , RESERVED1_NODE ,
  RESERVED2_NODE , RESERVED3_NODE , _LAST_OSMOVTY_NODE
}
 There are some command levels which called from command node. More...
 
enum  { CMD_ATTR_DEPRECATED = 1 , CMD_ATTR_HIDDEN }
 

Functions

void install_node (struct cmd_node *node, int(*func)(struct vty *))
 Install top node of command vector.
 
void install_default (int node_type)
 
void install_element (int ntype, struct cmd_element *cmd)
 Install a command into a node.
 
void install_element_ve (struct cmd_element *cmd)
 
void sort_node (void)
 Sort each node's command element according to command string.
 
void vty_install_default (int node_type)
 
char * argv_concat (const char **argv, int argc, int shift)
 
vector cmd_make_strvec (const char *)
 
void cmd_free_strvec (vector v)
 Free allocated string vector.
 
vector cmd_describe_command ()
 
char ** cmd_complete_command ()
 
const char * cmd_prompt (enum node_type node)
 Return prompt character of specified node.
 
int config_from_file (struct vty *, FILE *)
 
enum node_type node_parent (enum node_type)
 
int cmd_execute_command (vector, struct vty *, struct cmd_element **, int)
 
int cmd_execute_command_strict (vector, struct vty *, struct cmd_element **)
 
void config_replace_string (struct cmd_element *, char *,...)
 
void cmd_init (int)
 
char * host_config_file ()
 
void host_config_set (const char *)
 
char * osmo_asciidoc_escape (const char *inp)
 escape all special asciidoc symbols
 
void print_version (int print_copyright)
 print the version (and optionally copyright) information
 

Variables

struct cmd_element config_exit_cmd
 
struct cmd_element config_help_cmd
 
struct cmd_element config_list_cmd
 
struct cmd_element config_end_cmd
 
void * tall_vty_cmd_ctx