]>
git.proxmox.com Git - mirror_frr.git/blob - bgpd/bgp_vty.h
2 * Copyright (C) 1996, 97, 98, 99, 2000 Kunihiro Ishiguro
4 * This file is part of GNU Zebra.
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
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.
16 * You should have received a copy of the GNU General Public License along
17 * with this program; see the file COPYING; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21 #ifndef _QUAGGA_BGP_VTY_H
22 #define _QUAGGA_BGP_VTY_H
26 #define BGP_INSTANCE_HELP_STR "BGP view\nBGP VRF\nView/VRF name\n"
27 #define BGP_INSTANCE_ALL_HELP_STR "BGP view\nBGP VRF\nAll Views/VRFs\n"
29 #define BGP_AFI_CMD_STR "<ipv4|ipv6>"
30 #define BGP_AFI_HELP_STR "Address Family\nAddress Family\n"
31 #define BGP_SAFI_CMD_STR "<unicast|multicast|vpn>"
32 #define BGP_SAFI_HELP_STR \
33 "Address Family modifier\n" \
34 "Address Family modifier\n" \
35 "Address Family modifier\n"
36 #define BGP_AFI_SAFI_CMD_STR BGP_AFI_CMD_STR" "BGP_SAFI_CMD_STR
37 #define BGP_AFI_SAFI_HELP_STR BGP_AFI_HELP_STR BGP_SAFI_HELP_STR
39 #define BGP_SAFI_WITH_LABEL_CMD_STR "<unicast|multicast|vpn|labeled-unicast|flowspec>"
40 #define BGP_SAFI_WITH_LABEL_HELP_STR \
41 "Address Family modifier\n" \
42 "Address Family modifier\n" \
43 "Address Family modifier\n" \
44 "Address Family modifier\n" \
45 "Address Family modifier\n"
47 extern void bgp_vty_init(void);
48 extern const char *get_afi_safi_str(afi_t afi
, safi_t safi
, bool for_json
);
49 extern void bgp_config_write_update_delay(struct vty
*vty
, struct bgp
*bgp
);
50 extern void bgp_config_write_wpkt_quanta(struct vty
*vty
, struct bgp
*bgp
);
51 extern void bgp_config_write_rpkt_quanta(struct vty
*vty
, struct bgp
*bgp
);
52 extern void bgp_config_write_listen(struct vty
*vty
, struct bgp
*bgp
);
53 extern void bgp_config_write_coalesce_time(struct vty
*vty
, struct bgp
*bgp
);
54 extern int bgp_vty_return(struct vty
*vty
, int ret
);
55 extern struct peer
*peer_and_group_lookup_vty(struct vty
*vty
,
56 const char *peer_str
);
58 extern afi_t
bgp_vty_afi_from_str(const char *afi_str
);
60 extern safi_t
bgp_vty_safi_from_str(const char *safi_str
);
62 extern int argv_find_and_parse_afi(struct cmd_token
**argv
, int argc
,
63 int *index
, afi_t
*afi
);
65 extern int argv_find_and_parse_safi(struct cmd_token
**argv
, int argc
,
66 int *index
, safi_t
*safi
);
68 extern int bgp_vty_find_and_parse_afi_safi_bgp(struct vty
*vty
,
69 struct cmd_token
**argv
,
70 int argc
, int *idx
, afi_t
*afi
,
71 safi_t
*safi
, struct bgp
**bgp
,
73 extern int bgp_show_summary_vty(struct vty
*vty
, const char *name
, afi_t afi
,
74 safi_t safi
, bool show_failed
, bool use_json
);
75 extern void bgp_vpn_policy_config_write_afi(struct vty
*vty
, struct bgp
*bgp
,
77 #endif /* _QUAGGA_BGP_VTY_H */