return true;
else
return false;
- default:
+ case BGP_ADDPATH_MAX:
return false;
}
+
+ assert(!"Reached end of function we should never hit");
}
static void bgp_addpath_flush_type_rn(struct bgp *bgp, afi_t afi, safi_t safi,
{
int ret;
uint8_t flags;
- int flood_control;
+ int flood_control = VXLAN_FLOOD_DISABLED;
uint32_t seq;
if (p->prefix.route_type == BGP_EVPN_MAC_IP_ROUTE) {
flood_control = VXLAN_FLOOD_PIM_SM;
break;
- default:
+ case PMSI_TNLTYPE_NO_INFO:
+ case PMSI_TNLTYPE_RSVP_TE_P2MP:
+ case PMSI_TNLTYPE_MLDP_P2MP:
+ case PMSI_TNLTYPE_PIM_SSM:
+ case PMSI_TNLTYPE_PIM_BIDIR:
+ case PMSI_TNLTYPE_MLDP_MP2MP:
flood_control = VXLAN_FLOOD_DISABLED;
break;
}
prefix_copy(prefix, &prefix_local);
break;
case BGP_FLOWSPEC_VALIDATE_ONLY:
- default:
+ case BGP_FLOWSPEC_RETURN_JSON:
break;
}
return offset;
mval++;
break;
case BGP_FLOWSPEC_VALIDATE_ONLY:
- default:
+ case BGP_FLOWSPEC_RETURN_JSON:
/* no action */
break;
}
mval++;
break;
case BGP_FLOWSPEC_VALIDATE_ONLY:
- default:
+ case BGP_FLOWSPEC_RETURN_JSON:
/* no action */
break;
}
BGP_EVENT_ADD(peer, TCP_fatal_error);
case Clearing:
case Deleted:
- default:
+ case BGP_STATUS_MAX:
break;
}
}
== 0)
return pi;
break;
- default:
+ case IPADDR_NONE:
return pi;
}
}
case BLACKHOLE_REJECT:
return SNMP_INTEGER(
MPLSL3VPNVRFRTECIDRTYPEREJECT);
- default:
+ case BLACKHOLE_UNSPEC:
+ case BLACKHOLE_NULL:
+ case BLACKHOLE_ADMINPROHIB:
return SNMP_INTEGER(
MPLSL3VPNVRFRTECIDRTYPEBLACKHOLE);
}
- default:
- return SNMP_INTEGER(
- MPLSL3VPNVRFRTECIDRTYPEOTHER);
+ break;
}
} else
return SNMP_INTEGER(MPLSL3VPNVRFRTECIDRTYPEOTHER);
"capabilityErrorMultiProtocolAfi",
"L2VPN");
break;
- default:
+ case AFI_UNSPEC:
+ case AFI_MAX:
json_object_int_add(
json_cap,
"capabilityErrorMultiProtocolAfiUnknown",
"capabilityErrorMultiProtocolSafi",
"flowspec");
break;
- default:
+ case SAFI_UNSPEC:
+ case SAFI_MAX:
json_object_int_add(
json_cap,
"capabilityErrorMultiProtocolSafiUnknown",
case AFI_L2VPN:
vty_out(vty, "AFI L2VPN, ");
break;
- default:
+ case AFI_UNSPEC:
+ case AFI_MAX:
vty_out(vty, "AFI Unknown %d, ",
ntohs(mpc.afi));
break;
case SAFI_EVPN:
vty_out(vty, "SAFI EVPN");
break;
- default:
+ case SAFI_UNSPEC:
+ case SAFI_MAX:
vty_out(vty, "SAFI Unknown %d ",
mpc.safi);
break;
case SAFI_ENCAP:
case SAFI_EVPN:
return (struct prefix_rd *)(bgp_dest_get_prefix(dest));
- default:
+ case SAFI_UNSPEC:
+ case SAFI_UNICAST:
+ case SAFI_MULTICAST:
+ case SAFI_LABELED_UNICAST:
+ case SAFI_FLOWSPEC:
+ case SAFI_MAX:
return NULL;
}
+
+ assert(!"Reached end of function when we were not expecting it");
}
/* Display specified route of BGP table. */
case AFI_L2VPN:
space = EVPN_ROUTE_PREFIXLEN;
break;
- default:
+ case AFI_UNSPEC:
+ case AFI_MAX:
return;
}
case AFI_L2VPN:
bitlen = EVPN_ROUTE_PREFIXLEN;
break;
- default:
+ case AFI_UNSPEC:
+ case AFI_MAX:
break;
}
return BGP_VPNV4_NODE;
case SAFI_FLOWSPEC:
return BGP_FLOWSPECV4_NODE;
- default:
+ case SAFI_UNSPEC:
+ case SAFI_ENCAP:
+ case SAFI_EVPN:
+ case SAFI_MAX:
/* not expected */
return BGP_IPV4_NODE;
}
+ break;
case AFI_IP6:
switch (safi) {
case SAFI_UNICAST:
return BGP_VPNV6_NODE;
case SAFI_FLOWSPEC:
return BGP_FLOWSPECV6_NODE;
- default:
- /* not expected */
+ case SAFI_UNSPEC:
+ case SAFI_ENCAP:
+ case SAFI_EVPN:
+ case SAFI_MAX:
+ /* not expected and the return value seems wrong */
return BGP_IPV4_NODE;
}
+ break;
case AFI_L2VPN:
return BGP_EVPN_NODE;
case AFI_UNSPEC:
return "ipv4-labeled-unicast";
case SAFI_FLOWSPEC:
return "ipv4-flowspec";
- default:
+ case SAFI_UNSPEC:
+ case SAFI_EVPN:
+ case SAFI_MAX:
return "unknown-afi/safi";
}
break;
return "ipv6-labeled-unicast";
case SAFI_FLOWSPEC:
return "ipv6-flowspec";
- default:
+ case SAFI_UNSPEC:
+ case SAFI_EVPN:
+ case SAFI_MAX:
return "unknown-afi/safi";
}
break;
switch (safi) {
case SAFI_EVPN:
return "l2vpn-evpn";
- default:
+ case SAFI_UNICAST:
+ case SAFI_MULTICAST:
+ case SAFI_MPLS_VPN:
+ case SAFI_ENCAP:
+ case SAFI_LABELED_UNICAST:
+ case SAFI_FLOWSPEC:
+ case SAFI_UNSPEC:
+ case SAFI_MAX:
return "unknown-afi/safi";
}
+ break;
case AFI_UNSPEC:
case AFI_MAX:
return "unknown-afi/safi";
}
/* all AFIs are accounted for above, so this shouldn't happen */
- return "unknown-afi/safi";
+
+ assert(!"Reached end of function where we did not expect to");
}
int bgp_get_vty(struct bgp **bgp, as_t *as, const char *name,
return BGP_AF_IPV4_ENCAP;
case SAFI_FLOWSPEC:
return BGP_AF_IPV4_FLOWSPEC;
- default:
+ case SAFI_EVPN:
+ case SAFI_UNSPEC:
+ case SAFI_MAX:
return BGP_AF_MAX;
}
break;
return BGP_AF_IPV6_ENCAP;
case SAFI_FLOWSPEC:
return BGP_AF_IPV6_FLOWSPEC;
- default:
+ case SAFI_EVPN:
+ case SAFI_UNSPEC:
+ case SAFI_MAX:
return BGP_AF_MAX;
}
break;
switch (safi) {
case SAFI_EVPN:
return BGP_AF_L2VPN_EVPN;
- default:
+ case SAFI_UNICAST:
+ case SAFI_MULTICAST:
+ case SAFI_LABELED_UNICAST:
+ case SAFI_MPLS_VPN:
+ case SAFI_ENCAP:
+ case SAFI_FLOWSPEC:
+ case SAFI_UNSPEC:
+ case SAFI_MAX:
return BGP_AF_MAX;
}
- default:
+ break;
+ case AFI_UNSPEC:
+ case AFI_MAX:
return BGP_AF_MAX;
}
+
+ assert(!"Reached end of function we should never hit");
}
/* If the peer is not a peer-group but is bound to a peer-group return 1 */
bgp_encap_type_pbb_to_tlv(&tto->bgpinfo.pbb, attr);
break;
- default:
- assert(0);
+ case BGP_ENCAP_TYPE_RESERVED:
+ assert(!"Cannot process BGP_ENCAP_TYPE_RESERVED");
}
return tto->type;
}
print_encap_type_pbb(stream, column_offset, &tto->bgpinfo.pbb);
break;
- default:
- assert(0);
+ case BGP_ENCAP_TYPE_RESERVED:
+ assert(!"Cannot process BGP_ENCAP_TYPE_RESERVED");
}
}
}
break;
- default:
- assert(0);
+ case SAFI_UNSPEC:
+ case SAFI_UNICAST:
+ case SAFI_MULTICAST:
+ case SAFI_EVPN:
+ case SAFI_LABELED_UNICAST:
+ case SAFI_FLOWSPEC:
+ case SAFI_MAX:
+ assert(!"Passed in safi should be impossible");
}
}
rt = import_table->imported_encap[afi];
break;
- default:
+ case AFI_UNSPEC:
+ case AFI_L2VPN:
+ case AFI_MAX:
flog_err(EC_LIB_DEVELOPMENT, "%s: bad afi %d", __func__, afi);
return;
}
rt = import_table->imported_vpn[afi];
break;
- default:
+ case AFI_UNSPEC:
+ case AFI_MAX:
flog_err(EC_LIB_DEVELOPMENT, "%s: bad afi %d", __func__, afi);
return;
}
case SAFI_ENCAP:
return rfapiBgpInfoFilteredImportEncap;
- default:
+ case SAFI_UNSPEC:
+ case SAFI_UNICAST:
+ case SAFI_MULTICAST:
+ case SAFI_EVPN:
+ case SAFI_LABELED_UNICAST:
+ case SAFI_FLOWSPEC:
+ case SAFI_MAX:
/* not expected */
flog_err(EC_LIB_DEVELOPMENT, "%s: bad safi %d", __func__, safi);
return rfapiBgpInfoFilteredImportBadSafi;
}
+
+ assert(!"Reached end of function when we were not expecting to");
}
void rfapiProcessUpdate(struct peer *peer,
{
struct agg_node *rn;
struct bgp_path_info *bpi;
- struct agg_table *rt;
- void (*timer_service_func)(struct thread *);
+ struct agg_table *rt = NULL;
+ void (*timer_service_func)(struct thread *) = NULL;
assert(afi == AFI_IP || afi == AFI_IP6);
rt = import_table->imported_encap[afi];
timer_service_func = rfapiWithdrawTimerEncap;
break;
- default:
+ case SAFI_UNSPEC:
+ case SAFI_UNICAST:
+ case SAFI_MULTICAST:
+ case SAFI_EVPN:
+ case SAFI_LABELED_UNICAST:
+ case SAFI_FLOWSPEC:
+ case SAFI_MAX:
/* Suppress uninitialized variable warning */
rt = NULL;
timer_service_func = NULL;
assert(0);
}
-
for (rn = agg_route_top(rt); rn; rn = agg_route_next(rn)) {
for (bpi = rn->info; bpi; bpi = bpi->next) {
if (bpi->peer == peer) {
}
break;
- default:
+ case SAFI_UNSPEC:
+ case SAFI_UNICAST:
+ case SAFI_MULTICAST:
+ case SAFI_EVPN:
+ case SAFI_LABELED_UNICAST:
+ case SAFI_FLOWSPEC:
+ case SAFI_MAX:
assert(0);
}
XFREE(MTYPE_RFAPI_IT_EXTRA, hie);
}
break;
- default:
+ case SAFI_UNSPEC:
+ case SAFI_UNICAST:
+ case SAFI_MULTICAST:
+ case SAFI_EVPN:
+ case SAFI_LABELED_UNICAST:
+ case SAFI_FLOWSPEC:
+ case SAFI_MAX:
assert(0);
}
XFREE(MTYPE_RFAPI_IT_EXTRA, hie);
vo->v.local_nexthop.cost, HVTYNL);
break;
- default:
+ case RFAPI_VN_OPTION_TYPE_INTERNAL_RD:
fp(out,
"%svn option type %d (unknown)%s",
offset, vo->type, HVTYNL);
rfapi_print_tunneltype_option(
stream, 8, &uo->v.tunnel);
break;
- default:
+ case RFAPI_UN_OPTION_TYPE_PROVISIONAL:
fp(out, "%sUN Option type %d%s", offset,
uo->type, vty_newline);
break;
case SHOW_NVE_SUMMARY_RESPONSES:
rfapiRibShowResponsesSummary(vty);
- default:
+ case SHOW_NVE_SUMMARY_UNKNOWN_NVES:
+ case SHOW_NVE_SUMMARY_MAX:
break;
}
vty_out(vty, "\n");