libosmovty 1.9.0.196-9975
Osmocom VTY library
vty.h File Reference
#include <stdio.h>
#include <stdarg.h>
#include <stdbool.h>
#include <time.h>
#include <osmocom/core/linuxlist.h>
#include <osmocom/core/defs.h>

Go to the source code of this file.

Data Structures

struct  vty
 Internal representation of a single VTY. More...
 
struct  vty_app_info
 Information an application registers with the VTY. More...
 
struct  vty_signal_data
 

Macros

#define VTY_PRINTF_ATTRIBUTE(a, b)
 
#define ERRNO_IO_RETRY(EN)    (((EN) == EAGAIN) || ((EN) == EWOULDBLOCK) || ((EN) == EINTR))
 
#define VTY_READ_BUFSIZ   512
 
#define VTY_BUFSIZ   512
 
#define VTY_MAXHIST   20
 
#define VTY_CMD_USR_ATTR_NUM   32
 
#define VTY_CMD_ATTR_FLAGS_RESERVED    { '.', '!', '@', '^' }
 
#define TELNET_NAWS_SB_LEN   5
 
#define VTY_NEWLINE   ((vty->type == VTY_TERM) ? "\r\n" : "\n")
 

Enumerations

enum  event {
  VTY_SERV ,
  VTY_READ ,
  VTY_WRITE ,
  VTY_CLOSED ,
  VTY_TIMEOUT_RESET
}
 VTY events. More...
 
enum  vty_type {
  VTY_TERM ,
  VTY_FILE ,
  VTY_SHELL ,
  VTY_SHELL_SERV
}
 
enum  signal_vty { S_VTY_EVENT }
 signal handling More...
 

Functions

static const char * vty_newline (struct vty *vty)
 
void vty_init (struct vty_app_info *app_info)
 Initialize VTY layer. More...
 
int vty_read_config_file (const char *file_name, void *priv)
 Read the configuration file using the VTY code. More...
 
int vty_read_config_filep (FILE *confp, void *priv)
 Read up VTY configuration from a file stream. More...
 
void vty_init_vtysh (void)
 
void vty_reset (void)
 Reset all VTY status. More...
 
struct vtyvty_new (void)
 Allocate a new vty interface structure. More...
 
struct vtyvty_create (int vty_sock, void *priv)
 Create new vty structure. More...
 
bool vty_is_active (struct vty *vty)
 
int vty_out (struct vty *, const char *,...) VTY_PRINTF_ATTRIBUTE(2
 
int int vty_out_va (struct vty *vty, const char *format, va_list ap)
 
int vty_out_newline (struct vty *)
 print a newline on the given VTY More...
 
int vty_out_uptime (struct vty *vty, const struct timespec *starttime)
 calculates the time difference of a give timespec to the current time and prints in a human readable format (days, hours, minutes, seconds). More...
 
int vty_read (struct vty *vty)
 Read data via vty socket. More...
 
void vty_close (struct vty *)
 Close a given vty interface. More...
 
void vty_flush (struct vty *vty)
 
char * vty_get_cwd (void)
 
void vty_log (const char *level, const char *proto, const char *fmt, va_list)
 
int vty_config_lock (struct vty *)
 Lock the configuration to a given VTY. More...
 
int vty_config_unlock (struct vty *)
 Unlock the configuration from a given VTY. More...
 
int vty_shell (struct vty *)
 Return if this VTY is a shell or not. More...
 
int vty_shell_serv (struct vty *)
 
void vty_hello (struct vty *)
 
void * vty_current_index (struct vty *)
 return the current index of a given VTY More...
 
int vty_current_node (struct vty *vty)
 return the current node of a given VTY More...
 
int vty_go_parent (struct vty *vty)
 
const char * vty_get_bind_addr (void)
 
int vty_get_bind_port (int default_port)
 Returns configured port passed to the 'line vty'/'bind' command or default_port. More...
 

Variables

void * tall_vty_ctx
 
struct cmd_element cfg_description_cmd
 
struct cmd_element cfg_no_description_cmd
 

Macro Definition Documentation

◆ TELNET_NAWS_SB_LEN

#define TELNET_NAWS_SB_LEN   5