Merge pull request #7760 from donaldsharp/DIE_IN_A_FIRE

Die in a fire
This commit is contained in:
Donatas Abraitis 2020-12-18 11:26:10 +02:00 committed by GitHub
commit b2d8bcc52a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 97 additions and 106 deletions

View File

@ -19,8 +19,7 @@
*/
#include "bgpd/bgp_conditional_adv.h"
const char *get_afi_safi_str(afi_t afi, safi_t safi, bool for_json);
#include "bgpd/bgp_vty.h"
static route_map_result_t
bgp_check_rmap_prefixes_in_bgp_table(struct bgp_table *table,
@ -198,10 +197,6 @@ static int bgp_conditional_adv_timer(struct thread *t)
continue;
FOREACH_AFI_SAFI (afi, safi) {
if (strmatch(get_afi_safi_str(afi, safi, true),
"Unknown"))
continue;
if (!peer->afc_nego[afi][safi])
continue;

View File

@ -35,8 +35,7 @@
#include "bgpd/bgp_route.h"
#include "bgpd/bgp_attr.h"
#include "bgpd/bgp_advertise.h"
const char *get_afi_safi_str(afi_t afi, safi_t safi, bool for_json);
#include "bgpd/bgp_vty.h"
/* Global variable to access damping configuration */
static struct bgp_damp_config damp[AFI_MAX][SAFI_MAX];

View File

@ -55,10 +55,11 @@
#include "bgpd/bgp_keepalives.h"
#include "bgpd/bgp_io.h"
#include "bgpd/bgp_zebra.h"
#include "bgpd/bgp_vty.h"
DEFINE_HOOK(peer_backward_transition, (struct peer * peer), (peer))
DEFINE_HOOK(peer_status_changed, (struct peer * peer), (peer))
extern const char *get_afi_safi_str(afi_t afi, safi_t safi, bool for_json);
/* Definition of display strings corresponding to FSM events. This should be
* kept consistent with the events defined in bgpd.h
*/

View File

@ -96,7 +96,7 @@
/* Extern from bgp_dump.c */
extern const char *bgp_origin_str[];
extern const char *bgp_origin_long_str[];
const char *get_afi_safi_str(afi_t afi, safi_t safi, bool for_json);
/* PMSI strings. */
#define PMSI_TNLTYPE_STR_NO_INFO "No info"
#define PMSI_TNLTYPE_STR_DEFAULT PMSI_TNLTYPE_STR_NO_INFO
@ -11739,10 +11739,6 @@ DEFPY (show_ip_bgp_json,
? AFI_IP
: AFI_IP6;
FOREACH_SAFI (safi) {
if (strmatch(get_afi_safi_str(afi, safi, true),
"Unknown"))
continue;
if (!bgp_afi_safi_peer_exists(bgp, afi, safi))
continue;
@ -11773,10 +11769,6 @@ DEFPY (show_ip_bgp_json,
} else {
/* show <ip> bgp all: for each AFI and SAFI*/
FOREACH_AFI_SAFI (afi, safi) {
if (strmatch(get_afi_safi_str(afi, safi, true),
"Unknown"))
continue;
if (!bgp_afi_safi_peer_exists(bgp, afi, safi))
continue;
@ -13318,10 +13310,6 @@ DEFPY (show_ip_bgp_instance_neighbor_advertised_route,
afi = CHECK_FLAG(show_flags, BGP_SHOW_OPT_AFI_IP) ? AFI_IP
: AFI_IP6;
FOREACH_SAFI (safi) {
if (strmatch(get_afi_safi_str(afi, safi, true),
"Unknown"))
continue;
if (!bgp_afi_safi_peer_exists(bgp, afi, safi))
continue;
@ -13341,10 +13329,6 @@ DEFPY (show_ip_bgp_instance_neighbor_advertised_route,
}
} else {
FOREACH_AFI_SAFI (afi, safi) {
if (strmatch(get_afi_safi_str(afi, safi, true),
"Unknown"))
continue;
if (!bgp_afi_safi_peer_exists(bgp, afi, safi))
continue;

View File

@ -209,34 +209,38 @@ static enum node_type bgp_node_type(afi_t afi, safi_t safi)
static const char *get_afi_safi_vty_str(afi_t afi, safi_t safi)
{
if (afi == AFI_IP && safi == SAFI_UNICAST)
return "IPv4 Unicast";
else if (afi == AFI_IP && safi == SAFI_MULTICAST)
return "IPv4 Multicast";
else if (afi == AFI_IP && safi == SAFI_LABELED_UNICAST)
return "IPv4 Labeled Unicast";
else if (afi == AFI_IP && safi == SAFI_MPLS_VPN)
return "IPv4 VPN";
else if (afi == AFI_IP && safi == SAFI_ENCAP)
return "IPv4 Encap";
else if (afi == AFI_IP && safi == SAFI_FLOWSPEC)
return "IPv4 Flowspec";
else if (afi == AFI_IP6 && safi == SAFI_UNICAST)
return "IPv6 Unicast";
else if (afi == AFI_IP6 && safi == SAFI_MULTICAST)
return "IPv6 Multicast";
else if (afi == AFI_IP6 && safi == SAFI_LABELED_UNICAST)
return "IPv6 Labeled Unicast";
else if (afi == AFI_IP6 && safi == SAFI_MPLS_VPN)
return "IPv6 VPN";
else if (afi == AFI_IP6 && safi == SAFI_ENCAP)
return "IPv6 Encap";
else if (afi == AFI_IP6 && safi == SAFI_FLOWSPEC)
return "IPv6 Flowspec";
else if (afi == AFI_L2VPN && safi == SAFI_EVPN)
return "L2VPN EVPN";
else
return "Unknown";
if (afi == AFI_IP) {
if (safi == SAFI_UNICAST)
return "IPv4 Unicast";
if (safi == SAFI_MULTICAST)
return "IPv4 Multicast";
if (safi == SAFI_LABELED_UNICAST)
return "IPv4 Labeled Unicast";
if (safi == SAFI_MPLS_VPN)
return "IPv4 VPN";
if (safi == SAFI_ENCAP)
return "IPv4 Encap";
if (safi == SAFI_FLOWSPEC)
return "IPv4 Flowspec";
} else if (afi == AFI_IP6) {
if (safi == SAFI_UNICAST)
return "IPv6 Unicast";
if (safi == SAFI_MULTICAST)
return "IPv6 Multicast";
if (safi == SAFI_LABELED_UNICAST)
return "IPv6 Labeled Unicast";
if (safi == SAFI_MPLS_VPN)
return "IPv6 VPN";
if (safi == SAFI_ENCAP)
return "IPv6 Encap";
if (safi == SAFI_FLOWSPEC)
return "IPv6 Flowspec";
} else if (afi == AFI_L2VPN) {
if (safi == SAFI_EVPN)
return "L2VPN EVPN";
}
return "Unknown";
}
/*
@ -247,34 +251,38 @@ static const char *get_afi_safi_vty_str(afi_t afi, safi_t safi)
*/
static const char *get_afi_safi_json_str(afi_t afi, safi_t safi)
{
if (afi == AFI_IP && safi == SAFI_UNICAST)
return "ipv4Unicast";
else if (afi == AFI_IP && safi == SAFI_MULTICAST)
return "ipv4Multicast";
else if (afi == AFI_IP && safi == SAFI_LABELED_UNICAST)
return "ipv4LabeledUnicast";
else if (afi == AFI_IP && safi == SAFI_MPLS_VPN)
return "ipv4Vpn";
else if (afi == AFI_IP && safi == SAFI_ENCAP)
return "ipv4Encap";
else if (afi == AFI_IP && safi == SAFI_FLOWSPEC)
return "ipv4Flowspec";
else if (afi == AFI_IP6 && safi == SAFI_UNICAST)
return "ipv6Unicast";
else if (afi == AFI_IP6 && safi == SAFI_MULTICAST)
return "ipv6Multicast";
else if (afi == AFI_IP6 && safi == SAFI_LABELED_UNICAST)
return "ipv6LabeledUnicast";
else if (afi == AFI_IP6 && safi == SAFI_MPLS_VPN)
return "ipv6Vpn";
else if (afi == AFI_IP6 && safi == SAFI_ENCAP)
return "ipv6Encap";
else if (afi == AFI_IP6 && safi == SAFI_FLOWSPEC)
return "ipv6Flowspec";
else if (afi == AFI_L2VPN && safi == SAFI_EVPN)
return "l2VpnEvpn";
else
return "Unknown";
if (afi == AFI_IP) {
if (safi == SAFI_UNICAST)
return "ipv4Unicast";
if (safi == SAFI_MULTICAST)
return "ipv4Multicast";
if (safi == SAFI_LABELED_UNICAST)
return "ipv4LabeledUnicast";
if (safi == SAFI_MPLS_VPN)
return "ipv4Vpn";
if (safi == SAFI_ENCAP)
return "ipv4Encap";
if (safi == SAFI_FLOWSPEC)
return "ipv4Flowspec";
} else if (afi == AFI_IP6) {
if (safi == SAFI_UNICAST)
return "ipv6Unicast";
if (safi == SAFI_MULTICAST)
return "ipv6Multicast";
if (safi == SAFI_LABELED_UNICAST)
return "ipv6LabeledUnicast";
if (safi == SAFI_MPLS_VPN)
return "ipv6Vpn";
if (safi == SAFI_ENCAP)
return "ipv6Encap";
if (safi == SAFI_FLOWSPEC)
return "ipv6Flowspec";
} else if (afi == AFI_L2VPN) {
if (safi == SAFI_EVPN)
return "l2VpnEvpn";
}
return "Unknown";
}
/* return string maps to afi-safi specific container names
@ -282,30 +290,34 @@ static const char *get_afi_safi_json_str(afi_t afi, safi_t safi)
*/
const char *bgp_afi_safi_get_container_str(afi_t afi, safi_t safi)
{
if (afi == AFI_IP && safi == SAFI_UNICAST)
return "ipv4-unicast";
else if (afi == AFI_IP && safi == SAFI_MULTICAST)
return "ipv4-multicast";
else if (afi == AFI_IP && safi == SAFI_LABELED_UNICAST)
return "ipv4-labeled-unicast";
else if (afi == AFI_IP && safi == SAFI_MPLS_VPN)
return "l3vpn-ipv4-unicast";
else if (afi == AFI_IP && safi == SAFI_FLOWSPEC)
return "ipv4-flowspec";
else if (afi == AFI_IP6 && safi == SAFI_UNICAST)
return "ipv6-unicast";
else if (afi == AFI_IP6 && safi == SAFI_MULTICAST)
return "ipv6-multicast";
else if (afi == AFI_IP6 && safi == SAFI_LABELED_UNICAST)
return "ipv6-labeled-unicast";
else if (afi == AFI_IP6 && safi == SAFI_MPLS_VPN)
return "l3vpn-ipv6-unicast";
else if (afi == AFI_IP6 && safi == SAFI_FLOWSPEC)
return "ipv6-flowspec";
else if (afi == AFI_L2VPN && safi == SAFI_EVPN)
return "l2vpn-evpn";
else
return "Unknown";
if (afi == AFI_IP) {
if (safi == SAFI_UNICAST)
return "ipv4-unicast";
if (safi == SAFI_MULTICAST)
return "ipv4-multicast";
if (safi == SAFI_LABELED_UNICAST)
return "ipv4-labeled-unicast";
if (safi == SAFI_MPLS_VPN)
return "l3vpn-ipv4-unicast";
if (safi == SAFI_FLOWSPEC)
return "ipv4-flowspec";
} else if (afi == AFI_IP6) {
if (safi == SAFI_UNICAST)
return "ipv6-unicast";
if (safi == SAFI_MULTICAST)
return "ipv6-multicast";
if (safi == SAFI_LABELED_UNICAST)
return "ipv6-labeled-unicast";
if (safi == SAFI_MPLS_VPN)
return "l3vpn-ipv6-unicast";
if (safi == SAFI_FLOWSPEC)
return "ipv6-flowspec";
} else if (afi == AFI_L2VPN) {
if (safi == SAFI_EVPN)
return "l2vpn-evpn";
}
return "Unknown";
}
/* Utility function to get address family from current node. */