1/* Virtual terminal interface shell. 2 * Copyright (C) 2000 Kunihiro Ishiguro 3 * 4 * This file is part of GNU Zebra. 5 * 6 * GNU Zebra is free software; you can redistribute it and/or modify it 7 * under the terms of the GNU General Public License as published by the 8 * Free Software Foundation; either version 2, or (at your option) any 9 * later version. 10 * 11 * GNU Zebra is distributed in the hope that it will be useful, but 12 * WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * General Public License for more details. 15 * 16 * You should have received a copy of the GNU General Public License 17 * along with GNU Zebra; see the file COPYING. If not, write to the Free 18 * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 19 * 02111-1307, USA. 20 */ 21 22#ifndef VTYSH_H 23#define VTYSH_H 24 25#define VTYSH_ZEBRA 0x01 26#define VTYSH_RIPD 0x02 27#define VTYSH_RIPNGD 0x04 28#define VTYSH_OSPFD 0x08 29#define VTYSH_OSPF6D 0x10 30#define VTYSH_BGPD 0x20 31#define VTYSH_ALL VTYSH_ZEBRA|VTYSH_RIPD|VTYSH_RIPNGD|VTYSH_OSPFD|VTYSH_OSPF6D|VTYSH_BGPD 32#define VTYSH_RMAP VTYSH_RIPD|VTYSH_OSPFD|VTYSH_BGPD 33 34#define VTYSH_INDEX_ZEBRA 0 35#define VTYSH_INDEX_RIP 1 36#define VTYSH_INDEX_RIPNG 2 37#define VTYSH_INDEX_OSPF 3 38#define VTYSH_INDEX_OSPF6 4 39#define VTYSH_INDEX_BGP 5 40#define VTYSH_INDEX_MAX 6 41 42/* UNIX domain socket path. */ 43#define ZEBRA_PATH "/tmp/.zebra" 44#define RIP_PATH "/tmp/.ripd" 45#define RIPNG_PATH "/tmp/.ripngd" 46#define OSPF_PATH "/tmp/.ospfd" 47#define OSPF6_PATH "/tmp/.ospf6d" 48#define BGP_PATH "/tmp/.bgpd" 49 50/* vtysh local configuration file. */ 51#define VTYSH_DEFAULT_CONFIG "vtysh.conf" 52 53void vtysh_init_vty (); 54void vtysh_init_cmd (); 55void vtysh_connect_all (); 56void vtysh_readline_init (); 57void vtysh_user_init (); 58 59void vtysh_execute (char *); 60void vtysh_execute_no_pager (char *); 61 62char *vtysh_prompt (); 63 64void vtysh_config_write (); 65 66int vtysh_config_from_file (struct vty *, FILE *); 67 68void vtysh_read_config (char *, char *, char *); 69 70void vtysh_config_parse (char *); 71 72void vtysh_config_dump (FILE *); 73 74void vtysh_config_init (); 75 76void vtysh_pager_init (); 77 78/* Child process execution flag. */ 79extern int execute_flag; 80 81extern struct vty *vty; 82 83#endif /* VTYSH_H */ 84