summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bgpd/bgp_vty.c40
1 files changed, 26 insertions, 14 deletions
diff --git a/bgpd/bgp_vty.c b/bgpd/bgp_vty.c
index 1a1a9b9b..94796c74 100644
--- a/bgpd/bgp_vty.c
+++ b/bgpd/bgp_vty.c
@@ -57,17 +57,20 @@ extern struct in_addr router_id_zebra;
afi_t
bgp_node_afi (struct vty *vty)
{
+ afi_t afi;
switch (vty->node)
{
case BGP_IPV6_NODE:
case BGP_IPV6M_NODE:
case BGP_VPNV6_NODE:
case BGP_ENCAPV6_NODE:
- return AFI_IP6;
+ afi = AFI_IP6;
+ break;
+ default:
+ afi = AFI_IP;
break;
}
-
- return AFI_IP;
+ return afi;
}
/* Utility function to get subsequent address family from current
@@ -75,17 +78,26 @@ bgp_node_afi (struct vty *vty)
safi_t
bgp_node_safi (struct vty *vty)
{
- if (vty->node == BGP_ENCAP_NODE)
- return SAFI_ENCAP;
- if (vty->node == BGP_ENCAPV6_NODE)
- return SAFI_ENCAP;
- if (vty->node == BGP_VPNV6_NODE)
- return SAFI_MPLS_VPN;
- if (vty->node == BGP_VPNV4_NODE)
- return SAFI_MPLS_VPN;
- if (vty->node == BGP_IPV4M_NODE || vty->node == BGP_IPV6M_NODE)
- return SAFI_MULTICAST;
- return SAFI_UNICAST;
+ safi_t safi;
+ switch (vty->node)
+ {
+ case BGP_ENCAP_NODE:
+ case BGP_ENCAPV6_NODE:
+ safi = SAFI_ENCAP;
+ break;
+ case BGP_VPNV4_NODE:
+ case BGP_VPNV6_NODE:
+ safi = SAFI_MPLS_VPN;
+ break;
+ case BGP_IPV4M_NODE:
+ case BGP_IPV6M_NODE:
+ safi = SAFI_MULTICAST;
+ break;
+ default:
+ safi = SAFI_UNICAST;
+ break;
+ }
+ return safi;
}
int