libosmovty 0.9.6-23.20170220git32ee5af8.fc42
Osmocom VTY library
Loading...
Searching...
No Matches
VTY Command

Files

file  command.h
 
file  command.c
 

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"
 
#define CONFIGFILE_MASK   022
 
#define IPV6_ADDR_STR   "0123456789abcdefABCDEF:.%"
 
#define IPV6_PREFIX_STR   "0123456789abcdefABCDEF:.%/"
 
#define STATE_START   1
 
#define STATE_COLON   2
 
#define STATE_DOUBLE   3
 
#define STATE_ADDR   4
 
#define STATE_DOT   5
 
#define STATE_SLASH   6
 
#define STATE_MASK   7
 
#define DECIMAL_STRLEN_MAX   10
 

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 }
 
enum  match_type {
  no_match = 0 , any_match , extend_match , ipv4_prefix_match ,
  ipv4_match , ipv6_prefix_match , ipv6_match , range_match ,
  vararg_match , partly_match , exact_match
}
 

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
 
static int cmp_node (const void *p, const void *q)
 
static int cmp_desc (const void *p, const void *q)
 
static int is_config_child (struct vty *vty)
 
static char * cmd_desc_str (const char **string)
 Fetch next description. Used in cmd_make_descvec().
 
static vector cmd_make_descvec (const char *string, const char *descstr)
 New string vector.
 
static int cmd_cmdsize (vector strvec)
 
static char * xml_escape (const char *inp)
 
static int vty_dump_element (struct cmd_element *cmd, struct vty *vty)
 
static int vty_dump_nodes (struct vty *vty)
 
static int check_element_exists (struct cmd_node *cnode, const char *cmdstring)
 
static int config_write_host (struct vty *vty)
 
static vector cmd_node_vector (vector v, enum node_type ntype)
 
static enum match_type cmd_ipv4_match (const char *str)
 
static enum match_type cmd_ipv4_prefix_match (const char *str)
 
static int cmd_range_match (const char *range, const char *str)
 
static char * cmd_deopt (const char *str)
 
static enum match_type cmd_match (const char *str, const char *command, enum match_type min, bool recur)
 
static enum match_type cmd_filter (char *command, vector v, unsigned int index, enum match_type level)
 
static int is_cmd_ambiguous (char *command, vector v, int index, enum match_type type)
 
static const char * cmd_entry_function (const char *src, const char *dst)
 
static const char * cmd_entry_function_desc (const char *src, const char *dst)
 
static int cmd_unique_string (vector v, const char *str)
 
static int desc_unique_string (vector v, const char *str)
 
static int cmd_try_do_shortcut (enum node_type node, char *first_word)
 
static vector cmd_describe_command_real (vector vline, struct vty *vty, int *status)
 
vector cmd_describe_command (vector vline, struct vty *vty, int *status)
 
static int cmd_lcd (char **matched)
 
static char ** cmd_complete_command_real (vector vline, struct vty *vty, int *status)
 
char ** cmd_complete_command (vector vline, struct vty *vty, int *status)
 
int vty_go_parent (struct vty *vty)
 
static int cmd_execute_command_real (vector vline, struct vty *vty, struct cmd_element **cmd)
 
 DEFUN (config_terminal, config_terminal_cmd, "configure terminal", "Configuration from vty interface\n" "Configuration terminal\n")
 
 DEFUN (enable, config_enable_cmd, "enable", "Turn on privileged mode command\n")
 
 DEFUN (disable, config_disable_cmd, "disable", "Turn off privileged mode command\n")
 
 gDEFUN (config_exit, config_exit_cmd, "exit", "Exit current mode and down to previous mode\n")
 
 gDEFUN (config_end, config_end_cmd, "end", "End current mode and change to enable mode.")
 
 DEFUN (show_version, show_version_cmd, "show version", SHOW_STR "Displays program version\n")
 
 DEFUN (show_online_help, show_online_help_cmd, "show online-help", SHOW_STR "Online help\n")
 
 gDEFUN (config_help, config_help_cmd, "help", "Description of the interactive help system\n")
 
 gDEFUN (config_list, config_list_cmd, "list", "Print command list\n")
 
static int write_config_file (const char *config_file, char **outpath)
 
 DEFUN (config_write_file, config_write_file_cmd, "write file", "Write running configuration to memory, network, or terminal\n" "Write to configuration file\n")
 
 ALIAS (config_write_file, config_write_cmd, "write", "Write running configuration to memory, network, or terminal\n") ALIAS(config_write_file
 
write Write running configuration to or terminal n Write configuration to the file (same as write file)\n") ALIAS(config_write_file
 
write Write running configuration to or terminal n Write configuration to the copy running config startup Copy configuration n Copy running config to n Copy running config to startup config (same as write file)\n") DEFUN(config_write_terminal
 
 if (vty->type==VTY_SHELL_SERV)
 
 vty_out (vty, "!%s", VTY_NEWLINE)
 
 for (i=0;i< vector_active(cmdvec);i++) if((node
 
 ALIAS (config_write_terminal, show_running_config_cmd, "show running-config", SHOW_STR "running configuration\n")
 
 DEFUN (config_hostname, hostname_cmd, "hostname WORD", "Set system's network name\n" "This system's network name\n")
 
 DEFUN (config_no_hostname, no_hostname_cmd, "no hostname [HOSTNAME]", NO_STR "Reset system's network name\n" "Host name of this router\n")
 
 DEFUN (config_password, password_cmd, "password (8|) WORD", "Assign the terminal connection password\n" "Specifies a HIDDEN password will follow\n" "dummy string \n" "The HIDDEN line password string\n")
 
 ALIAS (config_password, password_text_cmd, "password LINE", "Assign the terminal connection password\n" "The UNENCRYPTED (cleartext) line password\n")
 
 ALIAS (config_enable_password, enable_password_text_cmd, "enable password LINE", "Modify enable password parameters\n" "Assign the privileged level password\n" "The UNENCRYPTED (cleartext) 'enable' password\n")
 
 DEFUN (config_terminal_length, config_terminal_length_cmd, "terminal length <0-512>", "Set terminal line parameters\n" "Set number of lines on a screen\n" "Number of lines on screen (0 for no pausing)\n")
 
 DEFUN (config_terminal_no_length, config_terminal_no_length_cmd, "terminal no length", "Set terminal line parameters\n" NO_STR "Set number of lines on a screen\n")
 
 DEFUN (service_terminal_length, service_terminal_length_cmd, "service terminal-length <0-512>", "Set up miscellaneous service\n" "System wide terminal length configuration\n" "Number of lines of VTY (0 means no line control)\n")
 
 DEFUN (no_service_terminal_length, no_service_terminal_length_cmd, "no service terminal-length [<0-512>]", NO_STR "Set up miscellaneous service\n" "System wide terminal length configuration\n" "Number of lines of VTY (0 means no line control)\n")
 
 DEFUN_HIDDEN (do_echo, echo_cmd, "echo .MESSAGE", "Echo a message back to the vty\n" "The message to echo\n")
 
 DEFUN (banner_motd_file, banner_motd_file_cmd, "banner motd file [FILE]", "Set banner\n" "Banner for motd\n" "Banner from a file\n" "Filename\n")
 
 DEFUN (banner_motd_default, banner_motd_default_cmd, "banner motd default", "Set banner string\n" "Strings for motd\n" "Default string\n")
 
 DEFUN (no_banner_motd, no_banner_motd_cmd, "no banner motd", NO_STR "Set banner string\n" "Strings for motd\n")
 
int osmo_vty_write_config_file (const char *filename)
 Write the current running config to a given file.
 
int osmo_vty_save_config_file (void)
 Save the current state to the config file.
 

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
 
void * tall_vty_cmd_ctx
 
vector cmdvec
 
struct host host
 
struct cmd_node auth_node
 
struct cmd_node view_node
 
struct cmd_node auth_enable_node
 
struct cmd_node enable_node
 
struct cmd_node config_node
 
const char * default_motd = ""
 
 config_write_memory_cmd
 
write memory
 
write Write running configuration to network
 
write Write running configuration to or terminal n Write configuration to the copy_runningconfig_startupconfig_cmd
 
write Write running configuration to or terminal n Write configuration to the copy running config startup config
 
write Write running configuration to or terminal n Write configuration to the copy running config startup Copy configuration n Copy running config to n Copy running config to startup config_write_terminal_cmd
 
write Write running configuration to or terminal n Write configuration to the copy running config startup Copy configuration n Copy running config to n Copy running config to startup write terminal
 
write Write running configuration to or terminal n Write configuration to the copy running config startup Copy configuration n Copy running config to n Copy running config to startup write Write running configuration to or terminal n Write to terminal n
 
struct cmd_nodenode
 
 else
 
return CMD_SUCCESS
 

Detailed Description

Macro Definition Documentation

◆ ALIAS

#define ALIAS ( funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, 0, 0)

◆ ALIAS_ATTR

#define ALIAS_ATTR ( funcname,
cmdname,
cmdstr,
helpstr,
attr )
Value:
DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, attr, 0)

◆ ALIAS_DEPRECATED

#define ALIAS_DEPRECATED ( funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, CMD_ATTR_DEPRECATED, 0)

◆ ALIAS_HIDDEN

#define ALIAS_HIDDEN ( funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, CMD_ATTR_HIDDEN, 0)

◆ ALIAS_SH

#define ALIAS_SH ( daemon,
funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, 0, daemon)

◆ ALIAS_SH_DEPRECATED

#define ALIAS_SH_DEPRECATED ( daemon,
funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, CMD_ATTR_DEPRECATED, daemon)

◆ ALIAS_SH_HIDDEN

#define ALIAS_SH_HIDDEN ( daemon,
funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, CMD_ATTR_HIDDEN, daemon)

◆ CMD_IPV4

#define CMD_IPV4 ( S)
Value:
((strcmp ((S), "A.B.C.D") == 0))

◆ CMD_IPV4_PREFIX

#define CMD_IPV4_PREFIX ( S)
Value:
((strcmp ((S), "A.B.C.D/M") == 0))

◆ CMD_IPV6

#define CMD_IPV6 ( S)
Value:
((strcmp ((S), "X:X::X:X") == 0))

◆ CMD_IPV6_PREFIX

#define CMD_IPV6_PREFIX ( S)
Value:
((strcmp ((S), "X:X::X:X/M") == 0))

◆ CMD_OPTION

#define CMD_OPTION ( S)
Value:
((S[0]) == '[')

◆ CMD_RANGE

#define CMD_RANGE ( S)
Value:
((S[0] == '<'))

◆ CMD_VARARG

#define CMD_VARARG ( S)
Value:
((S[0]) == '.')

◆ CMD_VARIABLE

#define CMD_VARIABLE ( S)
Value:
(((S[0]) >= 'A' && (S[0]) <= 'Z') || ((S[0]) == '<'))

◆ DEFSH

#define DEFSH ( daemon,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_CMD_ELEMENT(NULL, cmdname, cmdstr, helpstr, 0, daemon) \

◆ DEFUN

#define DEFUN ( funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_CMD_FUNC_DECL(funcname) \
DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, 0, 0) \
DEFUN_CMD_FUNC_TEXT(funcname)

Macro for defining a VTY node and function.

Parameters
[in]funcnameName of the function implementing the node
[in]cmdnameName of the command node
[in]cmdstrString with syntax of node
[in]helpstrString with help message of node

◆ DEFUN_ATTR

#define DEFUN_ATTR ( funcname,
cmdname,
cmdstr,
helpstr,
attr )
Value:
DEFUN_CMD_FUNC_DECL(funcname) \
DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, attr, 0) \
DEFUN_CMD_FUNC_TEXT(funcname)

◆ DEFUN_CMD_ELEMENT

#define DEFUN_CMD_ELEMENT ( funcname,
cmdname,
cmdstr,
helpstr,
attrs,
dnum )
Value:
static struct cmd_element cmdname = \
{ \
.string = cmdstr, \
.func = funcname, \
.doc = helpstr, \
.attr = attrs, \
.daemon = dnum, \
};
Structure of a command element.
Definition command.h:126

◆ DEFUN_CMD_FUNC_DECL

#define DEFUN_CMD_FUNC_DECL ( funcname)
Value:
static int funcname (struct cmd_element *, struct vty *, int, const char *[]); \
Definition vty.h:50

◆ DEFUN_CMD_FUNC_TEXT

#define DEFUN_CMD_FUNC_TEXT ( funcname)
Value:
static int funcname \
(struct cmd_element *self, struct vty *vty, int argc, const char *argv[])

◆ DEFUN_DEPRECATED

#define DEFUN_DEPRECATED ( funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_ATTR (funcname, cmdname, cmdstr, helpstr, CMD_ATTR_DEPRECATED) \

◆ DEFUN_HIDDEN

#define DEFUN_HIDDEN ( funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_ATTR (funcname, cmdname, cmdstr, helpstr, CMD_ATTR_HIDDEN)

◆ DEFUN_NOSH

#define DEFUN_NOSH ( funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN(funcname, cmdname, cmdstr, helpstr)
#define DEFUN(funcname, cmdname, cmdstr, helpstr)
Macro for defining a VTY node and function.
Definition command.h:198

◆ DEFUNSH

#define DEFUNSH ( daemon,
funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_CMD_FUNC_DECL(funcname) \
DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, 0, daemon) \
DEFUN_CMD_FUNC_TEXT(funcname)

◆ DEFUNSH_ATTR

#define DEFUNSH_ATTR ( daemon,
funcname,
cmdname,
cmdstr,
helpstr,
attr )
Value:
DEFUN_CMD_FUNC_DECL(funcname) \
DEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, attr, daemon) \
DEFUN_CMD_FUNC_TEXT(funcname)

◆ DEFUNSH_DEPRECATED

#define DEFUNSH_DEPRECATED ( daemon,
funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUNSH_ATTR (daemon, funcname, cmdname, cmdstr, helpstr, CMD_ATTR_DEPRECATED)

◆ DEFUNSH_HIDDEN

#define DEFUNSH_HIDDEN ( daemon,
funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUNSH_ATTR (daemon, funcname, cmdname, cmdstr, helpstr, CMD_ATTR_HIDDEN)

◆ gALIAS

#define gALIAS ( funcname,
cmdname,
cmdstr,
helpstr )
Value:
gDEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, 0, 0)

◆ gDEFUN

#define gDEFUN ( funcname,
cmdname,
cmdstr,
helpstr )
Value:
DEFUN_CMD_FUNC_DECL(funcname) \
gDEFUN_CMD_ELEMENT(funcname, cmdname, cmdstr, helpstr, 0, 0) \
DEFUN_CMD_FUNC_TEXT(funcname)

Macro for defining a non-static (global) VTY node and function.

Parameters
[in]funcnameName of the function implementing the node
[in]cmdnameName of the command node
[in]cmdstrString with syntax of node
[in]helpstrString with help message of node

◆ gDEFUN_CMD_ELEMENT

#define gDEFUN_CMD_ELEMENT ( funcname,
cmdname,
cmdstr,
helpstr,
attrs,
dnum )
Value:
struct cmd_element cmdname = \
{ \
.string = cmdstr, \
.func = funcname, \
.doc = helpstr, \
.attr = attrs, \
.daemon = dnum, \
};

Enumeration Type Documentation

◆ node_type

enum node_type

There are some command levels which called from command node.

Enumerator
AUTH_NODE 

Authentication mode of vty interface.

VIEW_NODE 

View node. Default mode of vty interface.

AUTH_ENABLE_NODE 

Authentication mode for change enable.

ENABLE_NODE 

Enable node.

CONFIG_NODE 

Config node. Default mode of config file.

SERVICE_NODE 

Service node.

DEBUG_NODE 

Debug node.

CFG_LOG_NODE 

Configure the logging.

CFG_STATS_NODE 

Configure the statistics.

VTY_NODE 

Vty node.

L_E1INP_NODE 

E1 line in libosmo-abis.

L_IPA_NODE 

IPA proxying commands in libosmo-abis.

L_NS_NODE 

NS node in libosmo-gb.

L_BSSGP_NODE 

BSSGP node in libosmo-gb.

L_CTRL_NODE 

Control interface node.

RESERVED1_NODE 

Reserved for later extensions.

RESERVED2_NODE 

Reserved for later extensions.

RESERVED3_NODE 

Reserved for later extensions.

Function Documentation

◆ cmd_make_strvec()

vector cmd_make_strvec ( const char * string)

Breaking up string into each command piece. I assume given character is separated by a space character. Return value is a vector which includes char ** data element.

References cmd_element::string, and cmd_element::strvec.

◆ install_element()

void install_element ( int ntype,
struct cmd_element * cmd )

Install a command into a node.

Parameters
[in]ntypeNode Type
[cmd]element to be installed

References cmd_make_descvec(), cmd_node::cmd_vector, cmd_element::cmdsize, cmd_element::doc, cmd_element::string, and cmd_element::strvec.

Referenced by vty_init().

◆ osmo_asciidoc_escape()

char * osmo_asciidoc_escape ( const char * inp)

escape all special asciidoc symbols

Parameters
unsafestring
Returns
a new talloc char *

◆ osmo_vty_save_config_file()

int osmo_vty_save_config_file ( void )

Save the current state to the config file.

Returns
0 in case of success.

If the filename already exists create a filename.sav version with the current code.

References host::config.

◆ osmo_vty_write_config_file()

int osmo_vty_write_config_file ( const char * filename)

Write the current running config to a given file.

Parameters
[in]vtythe vty of the code
[in]filenamewhere to store the file
Returns
0 in case of success.

If the filename already exists create a filename.sav version with the current code.

◆ print_version()

void print_version ( int print_copyright)

print the version (and optionally copyright) information

This is called from main when a daemon is invoked with -v or –version.

References host::app_info, vty_app_info::copyright, vty_app_info::name, and vty_app_info::version.

Variable Documentation

◆ auth_enable_node

struct cmd_node auth_enable_node
Initial value:
= {
"Password: ",
}
@ AUTH_ENABLE_NODE
Authentication mode for change enable.
Definition command.h:72

◆ auth_node

struct cmd_node auth_node
Initial value:
= {
"Password: ",
}
@ AUTH_NODE
Authentication mode of vty interface.
Definition command.h:70

◆ config_node

struct cmd_node config_node
Initial value:
= {
"%s(config)# ",
1
}
@ CONFIG_NODE
Config node. Default mode of config file.
Definition command.h:74

◆ else

else
Initial value:
{
vty_out(vty, "%sCurrent configuration:%s", VTY_NEWLINE,
VTY_NEWLINE)

◆ enable_node

struct cmd_node enable_node
Initial value:
= {
"%s# ",
}
@ ENABLE_NODE
Enable node.
Definition command.h:73

◆ n

write Write running configuration to or terminal n Write configuration to the copy running config startup Copy configuration n Copy running config to n Copy running config to startup write Write running configuration to or terminal n Write to terminal n
Initial value:
{
unsigned int i

◆ view_node

struct cmd_node view_node
Initial value:
= {
"%s> ",
}
@ VIEW_NODE
View node. Default mode of vty interface.
Definition command.h:71