Merge pull request #12707 from donaldsharp/missed_enums

Missed enums
This commit is contained in:
Donatas Abraitis 2023-02-07 22:22:27 +02:00 committed by GitHub
commit 96475dfde9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
91 changed files with 1096 additions and 254 deletions

View File

@ -174,9 +174,11 @@ bool bgp_addpath_tx_path(enum bgp_addpath_strat strat, struct bgp_path_info *pi)
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,

View File

@ -1228,7 +1228,7 @@ static int evpn_zebra_install(struct bgp *bgp, struct bgpevpn *vpn,
{
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) {
@ -1298,7 +1298,12 @@ static int evpn_zebra_install(struct bgp *bgp, struct bgpevpn *vpn,
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;
}

View File

@ -231,7 +231,7 @@ int bgp_flowspec_ip_address(enum bgp_flowspec_util_nlri_t type,
prefix_copy(prefix, &prefix_local);
break;
case BGP_FLOWSPEC_VALIDATE_ONLY:
default:
case BGP_FLOWSPEC_RETURN_JSON:
break;
}
return offset;
@ -326,7 +326,7 @@ int bgp_flowspec_op_decode(enum bgp_flowspec_util_nlri_t type,
mval++;
break;
case BGP_FLOWSPEC_VALIDATE_ONLY:
default:
case BGP_FLOWSPEC_RETURN_JSON:
/* no action */
break;
}
@ -436,7 +436,7 @@ int bgp_flowspec_bitmask_decode(enum bgp_flowspec_util_nlri_t type,
mval++;
break;
case BGP_FLOWSPEC_VALIDATE_ONLY:
default:
case BGP_FLOWSPEC_RETURN_JSON:
/* no action */
break;
}

View File

@ -2397,7 +2397,7 @@ void bgp_fsm_nht_update(struct peer *peer, bool has_valid_nexthops)
BGP_EVENT_ADD(peer, TCP_fatal_error);
case Clearing:
case Deleted:
default:
case BGP_STATUS_MAX:
break;
}
}

View File

@ -1264,7 +1264,7 @@ bgp_lookup_route(struct bgp *l3vpn_bgp, struct bgp_dest **dest,
== 0)
return pi;
break;
default:
case IPADDR_NONE:
return pi;
}
}
@ -1627,13 +1627,13 @@ static uint8_t *mplsL3vpnRteTable(struct variable *v, oid name[],
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);

View File

@ -167,7 +167,8 @@ void bgp_capability_vty_out(struct vty *vty, struct peer *peer, bool use_json,
"capabilityErrorMultiProtocolAfi",
"L2VPN");
break;
default:
case AFI_UNSPEC:
case AFI_MAX:
json_object_int_add(
json_cap,
"capabilityErrorMultiProtocolAfiUnknown",
@ -217,7 +218,8 @@ void bgp_capability_vty_out(struct vty *vty, struct peer *peer, bool use_json,
"capabilityErrorMultiProtocolSafi",
"flowspec");
break;
default:
case SAFI_UNSPEC:
case SAFI_MAX:
json_object_int_add(
json_cap,
"capabilityErrorMultiProtocolSafiUnknown",
@ -237,7 +239,8 @@ void bgp_capability_vty_out(struct vty *vty, struct peer *peer, bool use_json,
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;
@ -264,7 +267,8 @@ void bgp_capability_vty_out(struct vty *vty, struct peer *peer, bool use_json,
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;

View File

@ -12058,9 +12058,16 @@ const struct prefix_rd *bgp_rd_from_dest(const struct bgp_dest *dest,
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. */
@ -13285,7 +13292,8 @@ static void bgp_table_stats_walker(struct thread *t)
case AFI_L2VPN:
space = EVPN_ROUTE_PREFIXLEN;
break;
default:
case AFI_UNSPEC:
case AFI_MAX:
return;
}
@ -13540,7 +13548,8 @@ static int bgp_table_stats_single(struct vty *vty, struct bgp *bgp, afi_t afi,
case AFI_L2VPN:
bitlen = EVPN_ROUTE_PREFIXLEN;
break;
default:
case AFI_UNSPEC:
case AFI_MAX:
break;
}

View File

@ -178,10 +178,14 @@ static enum node_type bgp_node_type(afi_t afi, safi_t safi)
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:
@ -194,10 +198,14 @@ static enum node_type bgp_node_type(afi_t afi, safi_t safi)
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:
@ -535,7 +543,9 @@ static const char *get_bgp_default_af_flag(afi_t afi, safi_t safi)
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;
@ -553,7 +563,9 @@ static const char *get_bgp_default_af_flag(afi_t afi, safi_t safi)
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;
@ -561,15 +573,24 @@ static const char *get_bgp_default_af_flag(afi_t afi, safi_t safi)
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,

View File

@ -2421,7 +2421,9 @@ static inline int afindex(afi_t afi, safi_t safi)
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;
@ -2439,7 +2441,9 @@ static inline int afindex(afi_t afi, safi_t safi)
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;
@ -2447,12 +2451,23 @@ static inline int afindex(afi_t afi, safi_t safi)
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 */

View File

@ -150,8 +150,8 @@ rfapi_tunneltype_option_to_tlv(struct bgp *bgp, struct rfapi_ip_addr *ea,
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;
}
@ -737,7 +737,7 @@ void rfapi_print_tunneltype_option(void *stream, int column_offset,
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");
}
}

View File

@ -260,8 +260,14 @@ void rfapiCheckRefcount(struct agg_node *rn, safi_t safi, int lockoffset)
}
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");
}
}
@ -2967,7 +2973,9 @@ static void rfapiBgpInfoFilteredImportEncap(
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;
}
@ -3416,7 +3424,8 @@ void rfapiBgpInfoFilteredImportVPN(
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;
}
@ -3808,11 +3817,19 @@ rfapiBgpInfoFilteredImportFunction(safi_t safi)
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,
@ -4028,8 +4045,8 @@ static void rfapiProcessPeerDownRt(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);
@ -4044,14 +4061,19 @@ static void rfapiProcessPeerDownRt(struct peer *peer,
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) {

View File

@ -244,7 +244,13 @@ void rfapiMonitorExtraFlush(safi_t safi, struct agg_node *rn)
}
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);
@ -306,7 +312,13 @@ void rfapiMonitorExtraPrune(safi_t safi, struct agg_node *rn)
}
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);

View File

@ -1863,7 +1863,7 @@ void rfapiPrintNhl(void *stream, struct rfapi_next_hop_entry *next_hops)
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);
@ -1881,7 +1881,7 @@ void rfapiPrintNhl(void *stream, struct rfapi_next_hop_entry *next_hops)
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;
@ -4175,7 +4175,8 @@ static int rfapi_vty_show_nve_summary(struct vty *vty,
case SHOW_NVE_SUMMARY_RESPONSES:
rfapiRibShowResponsesSummary(vty);
default:
case SHOW_NVE_SUMMARY_UNKNOWN_NVES:
case SHOW_NVE_SUMMARY_MAX:
break;
}
vty_out(vty, "\n");

View File

@ -351,6 +351,7 @@ AC_C_FLAG([-Wall])
AC_C_FLAG([-Wextra])
AC_C_FLAG([-Wformat-nonliteral])
AC_C_FLAG([-Wformat-security])
AC_C_FLAG([-Wswitch-enum])
AC_C_FLAG([-Wstrict-prototypes])
AC_C_FLAG([-Wmissing-prototypes])
AC_C_FLAG([-Wmissing-declarations])

View File

@ -484,9 +484,11 @@ const char *isis_adj_yang_state(enum isis_adj_state state)
return "up";
case ISIS_ADJ_INITIALIZING:
return "init";
default:
case ISIS_ADJ_UNKNOWN:
return "failed";
}
assert(!"Reached end of function where we are not expecting to");
}
void isis_adj_expire(struct thread *thread)
@ -954,8 +956,9 @@ int isis_adj_usage2levels(enum isis_adj_usage usage)
return IS_LEVEL_2;
case ISIS_ADJ_LEVEL1AND2:
return IS_LEVEL_1 | IS_LEVEL_2;
default:
break;
case ISIS_ADJ_NONE:
return 0;
}
return 0;
assert(!"Reached end of function where we are not expecting to");
}

View File

@ -77,9 +77,11 @@ static const char *pdu_counter_index_to_name(enum pdu_counter_index index)
return "L1 PSNP";
case L2_PARTIAL_SEQ_NUM_INDEX:
return "L2 PSNP";
default:
case PDU_COUNTER_SIZE:
return "???????";
}
assert(!"Reached end of function where we were not expecting to");
}
void pdu_counter_count(pdu_counter_t counter, uint8_t pdu_type)

View File

@ -1587,8 +1587,8 @@ static void spf_path_process(struct isis_spftree *spftree,
vertex->N.ip.priority = priority;
if (vertex->depth == 1 || listcount(vertex->Adj_N) > 0) {
struct isis_spftree *pre_spftree;
struct route_table *route_table;
bool allow_ecmp;
struct route_table *route_table = NULL;
bool allow_ecmp = false;
switch (spftree->type) {
case SPF_TYPE_RLFA:
@ -1606,7 +1606,8 @@ static void spf_path_process(struct isis_spftree *spftree,
return;
}
break;
default:
case SPF_TYPE_FORWARD:
case SPF_TYPE_REVERSE:
break;
}
@ -1624,7 +1625,8 @@ static void spf_path_process(struct isis_spftree *spftree,
pre_spftree->lfa.protection_counters
.tilfa[vertex->N.ip.priority] += 1;
break;
default:
case SPF_TYPE_FORWARD:
case SPF_TYPE_REVERSE:
route_table = spftree->route_table;
allow_ecmp = true;
@ -1699,7 +1701,14 @@ static void isis_spf_loop(struct isis_spftree *spftree,
VTYPE_IPREACH_TE))
continue;
break;
default:
case VTYPE_PSEUDO_IS:
case VTYPE_PSEUDO_TE_IS:
case VTYPE_NONPSEUDO_IS:
case VTYPE_NONPSEUDO_TE_IS:
case VTYPE_ES:
case VTYPE_IPREACH_TE:
case VTYPE_IP6REACH_INTERNAL:
case VTYPE_IP6REACH_EXTERNAL:
break;
}

View File

@ -1344,7 +1344,8 @@ void isis_te_lsp_event(struct isis_lsp *lsp, enum lsp_event event)
case LSP_DEL:
isis_te_delete_lsp(area->mta, lsp0);
break;
default:
case LSP_UNKNOWN:
case LSP_TICK:
break;
}
}

View File

@ -2340,9 +2340,11 @@ static const char *pdu_counter_index_to_name_json(enum pdu_counter_index index)
return "l1-psnp";
case L2_PARTIAL_SEQ_NUM_INDEX:
return "l2-psnp";
default:
case PDU_COUNTER_SIZE:
return "???????";
}
assert(!"Reached end of function where we are not expecting to");
}
static void common_isis_summary_json(struct json_object *json,

View File

@ -760,7 +760,7 @@ lde_update_label(struct fec_node *fn)
fn->fec.u.ipv6.prefixlen) != FILTER_PERMIT)
return (NO_LABEL);
break;
default:
case FEC_TYPE_PWID:
break;
}
@ -790,7 +790,7 @@ lde_update_label(struct fec_node *fn)
fn->fec.u.ipv6.prefixlen) != FILTER_PERMIT)
return (MPLS_LABEL_IMPLICIT_NULL);
return MPLS_LABEL_IPV6_EXPLICIT_NULL;
default:
case FEC_TYPE_PWID:
break;
}
}
@ -929,7 +929,7 @@ lde_fec2prefix(const struct fec *fec, struct prefix *prefix)
prefix->u.prefix6 = fec->u.ipv6.prefix;
prefix->prefixlen = fec->u.ipv6.prefixlen;
break;
default:
case FEC_TYPE_PWID:
prefix->family = AF_UNSPEC;
break;
}
@ -1314,7 +1314,7 @@ lde_send_labelrequest(struct lde_nbr *ln, struct fec_node *fn,
if (!ln->v6_enabled)
return;
break;
default:
case FEC_TYPE_PWID:
fatalx("lde_send_labelrequest: unknown af");
}
} else
@ -1595,7 +1595,7 @@ lde_nbr_addr_update(struct lde_nbr *ln, struct lde_addr *lde_addr, int removed)
if (lde_addr->af != AF_INET6)
continue;
break;
default:
case FEC_TYPE_PWID:
continue;
}

View File

@ -178,7 +178,7 @@ rt_dump(pid_t pid)
rtctl.prefix.v6 = fn->fec.u.ipv6.prefix;
rtctl.prefixlen = fn->fec.u.ipv6.prefixlen;
break;
default:
case FEC_TYPE_PWID:
continue;
}
@ -505,7 +505,7 @@ lde_check_mapping(struct map *map, struct lde_nbr *ln, int rcvd_label_mapping)
fec.u.ipv6.prefixlen) != FILTER_PERMIT)
return;
break;
default:
case FEC_TYPE_PWID:
break;
}
@ -665,7 +665,7 @@ lde_check_request(struct map *map, struct lde_nbr *ln)
lde_send_notification(ln, S_LOOP_DETECTED, map->msg_id,
htons(MSG_TYPE_LABELREQUEST));
return;
default:
case FEC_TYPE_PWID:
break;
}
}

View File

@ -597,7 +597,7 @@ ldp_zebra_read_route(ZAPI_CALLBACK_ARGS)
if (!(kr.flags & F_CONNECTED))
continue;
break;
default:
case NEXTHOP_TYPE_BLACKHOLE:
continue;
}

View File

@ -421,35 +421,33 @@ pfkey_md5sig_remove(struct nbr *nbr)
int
pfkey_establish(struct nbr *nbr, struct nbr_params *nbrp)
{
if (nbrp->auth.method == AUTH_NONE)
return (0);
switch (nbr->auth.method) {
case AUTH_MD5SIG:
strlcpy(nbr->auth.md5key, nbrp->auth.md5key,
sizeof(nbr->auth.md5key));
return (pfkey_md5sig_establish(nbr, nbrp));
default:
break;
return pfkey_md5sig_establish(nbr, nbrp);
case AUTH_NONE:
return 0;
}
return (0);
assert(!"Reached end of function where we are not expecting to");
}
int
pfkey_remove(struct nbr *nbr)
{
if (nbr->auth.method == AUTH_NONE || !nbr->auth.established)
return (0);
if (!nbr->auth.established)
return 0;
switch (nbr->auth.method) {
case AUTH_MD5SIG:
return (pfkey_md5sig_remove(nbr));
default:
return pfkey_md5sig_remove(nbr);
case AUTH_NONE:
return 0;
break;
}
return (0);
assert(!"Reached end of function where we are not expecting to");
}
int

View File

@ -949,7 +949,8 @@ static int cmd_execute_command_real(vector vline, enum cmd_filter_type filter,
return CMD_ERR_INCOMPLETE;
case MATCHER_AMBIGUOUS:
return CMD_ERR_AMBIGUOUS;
default:
case MATCHER_NO_MATCH:
case MATCHER_OK:
return CMD_ERR_NO_MATCH;
}
}

View File

@ -267,9 +267,22 @@ static bool cmd_nodes_equal(struct graph_node *ga, struct graph_node *gb)
return false;
return cmd_subgraph_equal(ga, gb, a->forkjoin);
default:
case VARIABLE_TKN:
case IPV4_TKN:
case IPV4_PREFIX_TKN:
case IPV6_PREFIX_TKN:
case IPV6_TKN:
case MAC_TKN:
case MAC_PREFIX_TKN:
case JOIN_TKN:
case START_TKN:
case END_TKN:
case NEG_ONLY_TKN:
case WORD_TKN:
return true;
}
assert(!"Reached end of function we should never hit");
}
static void cmd_fork_bump_attr(struct graph_node *gn, struct graph_node *join,
@ -477,7 +490,7 @@ void cmd_graph_node_print_cb(struct graph_node *gn, struct buffer *buf)
char nbuf[512];
struct cmd_token *tok = gn->data;
const char *color;
const char *color = NULL;
if (wasend) {
wasend = false;
@ -526,10 +539,23 @@ void cmd_graph_node_print_cb(struct graph_node *gn, struct buffer *buf)
case WORD_TKN:
color = "#ffffff";
break;
default:
case RANGE_TKN:
case IPV4_TKN:
case IPV4_PREFIX_TKN:
case IPV6_TKN:
case IPV6_PREFIX_TKN:
case MAC_TKN:
case MAC_PREFIX_TKN:
case END_TKN:
case VARIABLE_TKN:
color = "#ffffff";
break;
}
/*
* Some compilers have the mistaken belief that we can
* get here without initializing color.
*/
snprintf(nbuf, sizeof(nbuf),
">, style = filled, fillcolor = \"%s\" ];\n", color);
buffer_putstr(buf, nbuf);

View File

@ -437,7 +437,7 @@ enum matcher_rv command_complete(struct graph *graph, vector vline,
add_nexthops(next, gstack[0], gstack,
idx + 1, neg);
break;
default:
case no_match:
trace_matcher("no_match\n");
break;
}
@ -544,9 +544,22 @@ static enum match_type min_match_level(enum cmd_token_type type)
// allowing words to partly match enables command abbreviation
case WORD_TKN:
return partly_match;
default:
case RANGE_TKN:
case IPV4_TKN:
case IPV4_PREFIX_TKN:
case IPV6_TKN:
case IPV6_PREFIX_TKN:
case MAC_TKN:
case MAC_PREFIX_TKN:
case FORK_TKN:
case JOIN_TKN:
case END_TKN:
case NEG_ONLY_TKN:
case VARIABLE_TKN:
return exact_match;
}
assert(!"Reached end of function we should never hit");
}
/**
@ -572,9 +585,15 @@ static int score_precedence(enum cmd_token_type type)
return 3;
case VARIABLE_TKN:
return 4;
default:
case JOIN_TKN:
case START_TKN:
case END_TKN:
case NEG_ONLY_TKN:
case SPECIAL_TKN:
return 10;
}
assert(!"Reached end of function we should never hit");
}
/**
@ -695,9 +714,14 @@ static enum match_type match_token(struct cmd_token *token, char *input_token)
case MAC_PREFIX_TKN:
return match_mac(input_token, true);
case END_TKN:
default:
case FORK_TKN:
case JOIN_TKN:
case START_TKN:
case NEG_ONLY_TKN:
return no_match;
}
assert(!"Reached end of function we should never hit");
}
#define IPV4_ADDR_STR "0123456789."

View File

@ -195,7 +195,7 @@ DEFUN (grammar_test_match,
case MATCHER_AMBIGUOUS:
vty_out(vty, "%% Ambiguous command\n");
break;
default:
case MATCHER_OK:
vty_out(vty, "%% Unknown error\n");
break;
}

View File

@ -61,9 +61,11 @@ static inline afi_t afi_iana2int(iana_afi_t afi)
return AFI_IP6;
case IANA_AFI_L2VPN:
return AFI_L2VPN;
default:
case IANA_AFI_RESERVED:
return AFI_MAX;
}
return AFI_MAX;
}
static inline iana_afi_t afi_int2iana(afi_t afi)
@ -75,9 +77,12 @@ static inline iana_afi_t afi_int2iana(afi_t afi)
return IANA_AFI_IPV6;
case AFI_L2VPN:
return IANA_AFI_L2VPN;
default:
case AFI_UNSPEC:
case AFI_MAX:
return IANA_AFI_RESERVED;
}
return IANA_AFI_RESERVED;
}
static inline const char *iana_afi2str(iana_afi_t afi)
@ -102,9 +107,11 @@ static inline safi_t safi_iana2int(iana_safi_t safi)
return SAFI_LABELED_UNICAST;
case IANA_SAFI_FLOWSPEC:
return SAFI_FLOWSPEC;
default:
case IANA_SAFI_RESERVED:
return SAFI_MAX;
}
return SAFI_MAX;
}
static inline iana_safi_t safi_int2iana(safi_t safi)
@ -124,9 +131,12 @@ static inline iana_safi_t safi_int2iana(safi_t safi)
return IANA_SAFI_LABELED_UNICAST;
case SAFI_FLOWSPEC:
return IANA_SAFI_FLOWSPEC;
default:
case SAFI_UNSPEC:
case SAFI_MAX:
return IANA_SAFI_RESERVED;
}
return IANA_SAFI_RESERVED;
}
static inline const char *iana_safi2str(iana_safi_t safi)

View File

@ -70,9 +70,11 @@ static inline int ipaddr_family(const struct ipaddr *ip)
return AF_INET;
case IPADDR_V6:
return AF_INET6;
default:
case IPADDR_NONE:
return AF_UNSPEC;
}
assert(!"Reached end of function where we should never hit");
}
static inline int str2ipaddr(const char *str, struct ipaddr *ip)
@ -158,9 +160,11 @@ static inline int ipaddr_cmp(const struct ipaddr *a, const struct ipaddr *b)
case IPADDR_V6:
return memcmp((void *)&a->ipaddr_v6, (void *)&b->ipaddr_v6,
sizeof(a->ipaddr_v6));
default:
case IPADDR_NONE:
return 0;
}
assert(!"Reached end of function we should never hit");
}
static inline bool ipaddr_is_zero(const struct ipaddr *ip)

View File

@ -443,7 +443,7 @@ struct ls_vertex *ls_vertex_add(struct ls_ted *ted, struct ls_node *node)
case ISIS_L2:
key = sysid_to_key(node->adv.id.iso.sys_id);
break;
default:
case UNKNOWN:
key = 0;
break;
}
@ -565,7 +565,7 @@ struct ls_vertex *ls_find_vertex_by_id(struct ls_ted *ted,
case ISIS_L2:
vertex.key = sysid_to_key(nid.id.iso.sys_id);
break;
default:
case UNKNOWN:
return NULL;
}
@ -1649,7 +1649,8 @@ struct ls_message *ls_vertex2msg(struct ls_message *msg,
case SYNC:
msg->event = LS_MSG_EVENT_SYNC;
break;
default:
case UNSET:
case ORPHAN:
msg->event = LS_MSG_EVENT_UNDEF;
break;
}
@ -1681,7 +1682,8 @@ struct ls_message *ls_edge2msg(struct ls_message *msg, struct ls_edge *edge)
case SYNC:
msg->event = LS_MSG_EVENT_SYNC;
break;
default:
case UNSET:
case ORPHAN:
msg->event = LS_MSG_EVENT_UNDEF;
break;
}
@ -1717,7 +1719,8 @@ struct ls_message *ls_subnet2msg(struct ls_message *msg,
case SYNC:
msg->event = LS_MSG_EVENT_SYNC;
break;
default:
case UNSET:
case ORPHAN:
msg->event = LS_MSG_EVENT_UNDEF;
break;
}

View File

@ -73,7 +73,10 @@ char *mlag_lib_msgid_to_str(enum mlag_msg_type msg_type, char *buf, size_t size)
case MLAG_PEER_FRR_STATUS:
snprintf(buf, size, "Mlag Peer FRR Status");
break;
default:
case MLAG_PIM_CFG_DUMP:
snprintf(buf, size, "Mlag Pim Configuration Dump");
break;
case MLAG_MSG_NONE:
snprintf(buf, size, "Unknown %d", msg_type);
break;
}

View File

@ -731,7 +731,13 @@ int nb_candidate_edit(struct nb_config *candidate,
case NB_OP_MOVE:
/* TODO: update configuration. */
break;
default:
case NB_OP_PRE_VALIDATE:
case NB_OP_APPLY_FINISH:
case NB_OP_GET_ELEM:
case NB_OP_GET_NEXT:
case NB_OP_GET_KEYS:
case NB_OP_LOOKUP_ENTRY:
case NB_OP_RPC:
flog_warn(EC_LIB_DEVELOPMENT,
"%s: unknown operation (%u) [xpath %s]", __func__,
operation, xpath_edit);
@ -1360,7 +1366,13 @@ static int nb_callback_configuration(struct nb_context *context,
ret = nb_callback_move(context, nb_node, event, dnode, errmsg,
errmsg_len);
break;
default:
case NB_OP_PRE_VALIDATE:
case NB_OP_APPLY_FINISH:
case NB_OP_GET_ELEM:
case NB_OP_GET_NEXT:
case NB_OP_GET_KEYS:
case NB_OP_LOOKUP_ENTRY:
case NB_OP_RPC:
yang_dnode_get_path(dnode, xpath, sizeof(xpath));
flog_err(EC_LIB_DEVELOPMENT,
"%s: unknown operation (%u) [xpath %s]", __func__,
@ -1489,7 +1501,7 @@ static int nb_transaction_process(enum nb_event event,
* 'prepare' phase.
*/
break;
default:
case NB_EV_VALIDATE:
break;
}
}
@ -2319,9 +2331,9 @@ const char *nb_event_name(enum nb_event event)
return "abort";
case NB_EV_APPLY:
return "apply";
default:
return "unknown";
}
assert(!"Reached end of function we should never hit");
}
const char *nb_operation_name(enum nb_operation operation)
@ -2349,9 +2361,9 @@ const char *nb_operation_name(enum nb_operation operation)
return "lookup_entry";
case NB_OP_RPC:
return "rpc";
default:
return "unknown";
}
assert(!"Reached end of function we should never hit");
}
const char *nb_err_name(enum nb_error error)
@ -2373,9 +2385,9 @@ const char *nb_err_name(enum nb_error error)
return "failed to allocate resource";
case NB_ERR_INCONSISTENCY:
return "internal inconsistency";
default:
return "unknown";
}
assert(!"Reached end of function we should never hit");
}
const char *nb_client_name(enum nb_client client)
@ -2389,9 +2401,13 @@ const char *nb_client_name(enum nb_client client)
return "Sysrepo";
case NB_CLIENT_GRPC:
return "gRPC";
default:
return "unknown";
case NB_CLIENT_PCEP:
return "Pcep";
case NB_CLIENT_NONE:
return "None";
}
assert(!"Reached end of function we should never hit");
}
static void nb_load_callbacks(const struct frr_yang_module_info *module)

View File

@ -148,11 +148,11 @@ const char *afi2str(afi_t afi)
case AFI_L2VPN:
return "l2vpn";
case AFI_MAX:
case AFI_UNSPEC:
return "bad-value";
default:
break;
}
return NULL;
assert(!"Reached end of function we should never reach");
}
const char *safi2str(safi_t safi)
@ -172,9 +172,12 @@ const char *safi2str(safi_t safi)
return "labeled-unicast";
case SAFI_FLOWSPEC:
return "flowspec";
default:
case SAFI_UNSPEC:
case SAFI_MAX:
return "unknown";
}
assert(!"Reached end of function we should never reach");
}
/* If n includes p prefix then return 1 else return 0. */
@ -1507,7 +1510,7 @@ static ssize_t printfrr_ia(struct fbuf *buf, struct printfrr_eargs *ea,
return bputch(buf, '*');
break;
default:
case IPADDR_NONE:
break;
}
}

View File

@ -1754,7 +1754,8 @@ route_map_apply_match(struct route_map_rule_list *match_list,
ret = RMAP_MATCH;
break;
default:
case RMAP_OKAY:
case RMAP_ERROR:
break;
}

View File

@ -635,7 +635,7 @@ uint32_t stream_get_ipv4(struct stream *s)
bool stream_get_ipaddr(struct stream *s, struct ipaddr *ip)
{
uint16_t ipa_len;
uint16_t ipa_len = 0;
STREAM_VERIFY_SANE(s);
@ -654,7 +654,7 @@ bool stream_get_ipaddr(struct stream *s, struct ipaddr *ip)
case IPADDR_V6:
ipa_len = IPV6_MAX_BYTELEN;
break;
default:
case IPADDR_NONE:
flog_err(EC_LIB_DEVELOPMENT,
"%s: unknown ip address-family: %u", __func__,
ip->ipa_type);
@ -947,7 +947,7 @@ bool stream_put_ipaddr(struct stream *s, struct ipaddr *ip)
case IPADDR_V6:
stream_write(s, (uint8_t *)&ip->ipaddr_v6, 16);
break;
default:
case IPADDR_NONE:
flog_err(EC_LIB_DEVELOPMENT,
"%s: unknown ip address-family: %u", __func__,
ip->ipa_type);

View File

@ -610,7 +610,7 @@ int vrf_configure_backend(enum vrf_backend_type backend)
case VRF_BACKEND_NETNS:
case VRF_BACKEND_VRF_LITE:
break;
default:
case VRF_BACKEND_MAX:
return -1;
}

View File

@ -2727,7 +2727,11 @@ static void vty_event_serv(enum vty_event event, struct vty_serv *vty_serv)
vty_serv->sock, &vty_serv->t_accept);
break;
#endif /* VTYSH */
default:
case VTY_READ:
case VTY_WRITE:
case VTY_TIMEOUT_RESET:
case VTYSH_READ:
case VTYSH_WRITE:
assert(!"vty_event_serv() called incorrectly");
}
}
@ -2766,7 +2770,8 @@ static void vty_event(enum vty_event event, struct vty *vty)
thread_add_timer(vty_master, vty_timeout, vty,
vty->v_timeout, &vty->t_timeout);
break;
default:
case VTY_SERV:
case VTYSH_SERV:
assert(!"vty_event() called incorrectly");
}
}

View File

@ -1682,7 +1682,8 @@ int zapi_tc_class_encode(uint8_t cmd, struct stream *s, struct tc_class *class)
stream_putq(s, class->u.htb.rate);
stream_putq(s, class->u.htb.ceil);
break;
default:
case TC_QDISC_UNSPEC:
case TC_QDISC_NOQUEUE:
/* not implemented */
break;
}
@ -1730,7 +1731,10 @@ int zapi_tc_filter_encode(uint8_t cmd, struct stream *s,
}
stream_putl(s, filter->u.flower.classid);
break;
default:
case TC_FILTER_UNSPEC:
case TC_FILTER_BPF:
case TC_FILTER_FLOW:
case TC_FILTER_U32:
/* not implemented */
break;
}

View File

@ -877,7 +877,8 @@ static int log_5424_show(struct vty *vty)
}
break;
default:
case ZLOG_FMT_3164:
case ZLOG_FMT_LOCAL:
vty_out(vty,
" structured data is not supported by the selected format\n");
break;

View File

@ -330,7 +330,14 @@ static void nhrp_cache_update_timers(struct nhrp_cache *c)
thread_add_timer_msec(master, nhrp_cache_do_free, c, 10,
&c->t_timeout);
break;
default:
case NHRP_CACHE_INCOMPLETE:
case NHRP_CACHE_NEGATIVE:
case NHRP_CACHE_CACHED:
case NHRP_CACHE_DYNAMIC:
case NHRP_CACHE_NHS:
case NHRP_CACHE_STATIC:
case NHRP_CACHE_LOCAL:
case NHRP_CACHE_NUM_TYPES:
if (c->cur.expires)
thread_add_timer(master, nhrp_cache_do_timeout, c,
c->cur.expires - monotime(NULL),

View File

@ -184,16 +184,17 @@ void nhrp_interface_update_nbma(struct interface *ifp,
struct nhrp_interface *nifp = ifp->info, *nbmanifp = NULL;
struct interface *nbmaifp = NULL;
union sockunion nbma;
struct in_addr saddr = {0};
sockunion_family(&nbma) = AF_UNSPEC;
if (nifp->source)
nbmaifp = if_lookup_by_name(nifp->source, nifp->link_vrf_id);
switch (ifp->ll_type) {
case ZEBRA_LLT_IPGRE: {
struct in_addr saddr = {0};
if (ifp->ll_type != ZEBRA_LLT_IPGRE)
debugf(NHRP_DEBUG_IF, "%s: Ignoring non GRE interface type %u",
__func__, ifp->ll_type);
else {
if (!gre_info) {
nhrp_send_zebra_gre_request(ifp);
return;
@ -214,9 +215,6 @@ void nhrp_interface_update_nbma(struct interface *ifp,
nbmaifp =
if_lookup_by_index(nifp->link_idx,
nifp->link_vrf_id);
} break;
default:
break;
}
if (nbmaifp)

View File

@ -139,7 +139,17 @@ void nhrp_route_announce(int add, enum nhrp_cache_type type,
/* Regular route, so these are announced
* to other routing daemons */
break;
default:
case NHRP_CACHE_INVALID:
case NHRP_CACHE_INCOMPLETE:
/*
* I cannot believe that we want to set a FIB_OVERRIDE
* for invalid state or incomplete. But this matches
* the original code. Someone will probably notice
* the problem eventually
*/
case NHRP_CACHE_CACHED:
case NHRP_CACHE_LOCAL:
case NHRP_CACHE_NUM_TYPES:
SET_FLAG(api.flags, ZEBRA_FLAG_FIB_OVERRIDE);
break;
}

View File

@ -135,11 +135,6 @@ static void vici_parse_message(struct vici_conn *vici, struct zbuf *msg,
case VICI_LIST_END:
debugf(NHRP_DEBUG_VICI, "VICI: List end");
break;
default:
debugf(NHRP_DEBUG_VICI,
"VICI: Unsupported message component type %d",
*type);
return;
}
}
}
@ -207,7 +202,12 @@ static void parse_sa_message(struct vici_message_ctx *ctx,
}
}
break;
default:
case VICI_START:
case VICI_KEY_VALUE:
case VICI_LIST_START:
case VICI_LIST_ITEM:
case VICI_LIST_END:
case VICI_END:
if (!key || !key->ptr)
break;
@ -286,7 +286,13 @@ static void parse_cmd_response(struct vici_message_ctx *ctx,
&& blob2buf(val, buf, sizeof(buf)))
flog_err(EC_NHRP_SWAN, "VICI: strongSwan: %s", buf);
break;
default:
case VICI_START:
case VICI_SECTION_START:
case VICI_SECTION_END:
case VICI_LIST_START:
case VICI_LIST_ITEM:
case VICI_LIST_END:
case VICI_END:
break;
}
}

View File

@ -539,7 +539,7 @@ void ospf_spf_remove_resource(struct vertex *vertex, struct list *vertex_list,
vertex_list);
break;
default:
case OSPF_TI_LFA_UNDEFINED_PROTECTION:
/* do nothing */
break;
}

View File

@ -1079,9 +1079,11 @@ static const char *objfun_type_name(enum objfun_type type)
return "mss";
case OBJFUN_MSN:
return "msn";
default:
case OBJFUN_UNDEFINED:
return NULL;
}
assert(!"Reached end of function we should never hit");
}
DEFPY_NOSH(show_debugging_pathd, show_debugging_pathd_cmd,

View File

@ -239,7 +239,10 @@ void pathd_srte_segment_list_segment_nai_apply_finish(
args->dnode, "./local-prefix-len");
local_prefix_len = atoi(local_prefix_len_buf);
break;
default:
case SRTE_SEGMENT_NAI_TYPE_NONE:
case SRTE_SEGMENT_NAI_TYPE_IPV6_ADJACENCY_LINK_LOCAL_ADDRESSES:
case SRTE_SEGMENT_NAI_TYPE_IPV6_LOCAL_IFACE:
case SRTE_SEGMENT_NAI_TYPE_IPV6_ALGORITHM:
break;
}

View File

@ -210,7 +210,7 @@ int pcep_main_event_handler(enum pcep_main_event_type type, int pcc_id,
ret = pcep_main_event_remove_candidate_segments(
(const char *)payload, true);
break;
default:
case PCEP_MAIN_EVENT_UNDEFINED:
flog_warn(EC_PATH_PCEP_RECOVERABLE_INTERNAL_ERROR,
"Unexpected event received in the main thread: %u",
type);

View File

@ -270,7 +270,8 @@ path_pcep_config_list_path_hops(struct srte_segment_list *segment_list)
sizeof(struct ipaddr));
hop->nai.remote_iface = segment->nai_remote_iface;
break;
default:
case SRTE_SEGMENT_NAI_TYPE_NONE:
case SRTE_SEGMENT_NAI_TYPE_IPV6_ADJACENCY_LINK_LOCAL_ADDRESSES:
break;
}
last_hop = hop;
@ -489,9 +490,12 @@ status_int_to_ext(enum srte_policy_status status)
return PCEP_LSP_OPERATIONAL_GOING_UP;
case SRTE_POLICY_STATUS_GOING_DOWN:
return PCEP_LSP_OPERATIONAL_GOING_DOWN;
default:
case SRTE_POLICY_STATUS_DOWN:
case SRTE_POLICY_STATUS_UNKNOWN:
return PCEP_LSP_OPERATIONAL_DOWN;
}
assert(!"Reached end of function where we are not expecting to");
}
enum pcep_sr_subobj_nai pcep_nai_type(enum srte_segment_nai_type type)
@ -539,7 +543,10 @@ enum srte_segment_nai_type srte_nai_type(enum pcep_sr_subobj_nai type)
return SRTE_SEGMENT_NAI_TYPE_IPV6_ADJACENCY;
case PCEP_SR_SUBOBJ_NAI_UNNUMBERED_IPV4_ADJACENCY:
return SRTE_SEGMENT_NAI_TYPE_IPV4_UNNUMBERED_ADJACENCY;
default:
case PCEP_SR_SUBOBJ_NAI_LINK_LOCAL_IPV6_ADJACENCY:
case PCEP_SR_SUBOBJ_NAI_UNKNOWN:
return SRTE_SEGMENT_NAI_TYPE_NONE;
}
assert(!"Reached end of function where we were not expecting to");
}

View File

@ -603,7 +603,9 @@ void pcep_thread_timer_handler(struct thread *thread)
pcep_thread_remove_candidate_path_segments(ctrl_state,
pcc_state);
break;
default:
case TM_PCEPLIB_TIMER:
case TM_UNDEFINED:
case TM_MAX:
flog_warn(EC_PATH_PCEP_RECOVERABLE_INTERNAL_ERROR,
"Unknown controller timer triggered: %u", timer_type);
break;
@ -823,7 +825,7 @@ void pcep_thread_event_handler(struct thread *thread)
pcep_pcc_send_error(ctrl_state, pcc_state, error,
(bool)sub_type);
break;
default:
case EV_PCEPLIB_EVENT:
flog_warn(EC_PATH_PCEP_RECOVERABLE_INTERNAL_ERROR,
"Unexpected event received in controller thread: %u",
type);
@ -1074,10 +1076,16 @@ const char *timer_type_name(enum pcep_ctrl_timer_type type)
return "PCEPLIB_TIMER";
case TM_TIMEOUT:
return "TIMEOUT";
default:
case TM_CALCULATE_BEST_PCE:
return "BEST_PCE";
case TM_SESSION_TIMEOUT_PCC:
return "TIMEOUT_PCC";
case TM_MAX:
return "UNKNOWN";
}
};
assert(!"Reached end of function where we did not expect to");
}
const char *timeout_type_name(enum pcep_ctrl_timeout_type type)
{
@ -1086,7 +1094,9 @@ const char *timeout_type_name(enum pcep_ctrl_timeout_type type)
return "UNDEFINED";
case TO_COMPUTATION_REQUEST:
return "COMPUTATION_REQUEST";
default:
case TO_MAX:
return "UNKNOWN";
}
assert(!"Reached end of function where we did not expect to");
}

View File

@ -90,9 +90,9 @@ const char *pcc_status_name(enum pcc_status status)
return "SYNCHRONIZING";
case PCEP_PCC_OPERATING:
return "OPERATING";
default:
return "UNKNOWN";
}
assert(!"Reached end of function where we do not expect to");
}
const char *pcep_event_type_name(pcep_event_type event_type)
@ -118,9 +118,13 @@ const char *pcep_event_type_name(pcep_event_type event_type)
return "PCC_RCVD_MAX_INVALID_MSGS";
case PCC_RCVD_MAX_UNKOWN_MSGS:
return "PCC_RCVD_MAX_UNKOWN_MSGS";
default:
return "UNKNOWN";
case PCC_CONNECTION_FAILURE:
return "PCC_CONNECTION_FAILURE";
case PCC_SENT_INVALID_OPEN:
return "PCC_SENT_INVALID_OPEN";
}
assert(!"Reached end of function where we do not expect to");
}
const char *pcep_error_type_name(enum pcep_error_type error_type)
@ -640,9 +644,11 @@ const char *pcep_message_type_name(enum pcep_message_types pcep_message_type)
return "INITIATE";
case PCEP_TYPE_START_TLS:
return "START_TLS";
default:
case PCEP_TYPE_MAX:
return "UNKNOWN";
}
assert(!"Reached end of function where we are not expecting to");
}
const char *pcep_object_class_name(enum pcep_object_classes obj_class)
@ -694,9 +700,11 @@ const char *pcep_object_class_name(enum pcep_object_classes obj_class)
return "SERVER_IND";
case PCEP_OBJ_CLASS_ASSOCIATION:
return "ASSOCIATION";
default:
case PCEP_OBJ_CLASS_MAX:
return "UNKNOWN";
}
assert(!"Reached end of function where we are not expecting to");
}
const char *pcep_object_type_name(enum pcep_object_classes obj_class,
@ -769,9 +777,9 @@ const char *pcep_lsp_status_name(enum pcep_lsp_operational_status status)
return "GOING_DOWN";
case PCEP_LSP_OPERATIONAL_GOING_UP:
return "GOING_UP";
default:
return "UNKNOWN";
}
assert(!"Reached end of function where we do not expect to");
}
@ -818,9 +826,11 @@ const char *pcep_tlv_type_name(enum pcep_object_tlv_types tlv_type)
return "UNKNOWN";
case PCEP_OBJ_TLV_TYPE_ARBITRARY:
return "ARBITRARY";
default:
return "UNKNOWN";
case PCEP_OBJ_TYPE_CISCO_BSID:
return "CISCO_BSID";
}
assert(!"Reached end of function where we do not expect to");
}
const char *pcep_ro_type_name(enum pcep_ro_subobj_types ro_type)
@ -839,9 +849,11 @@ const char *pcep_ro_type_name(enum pcep_ro_subobj_types ro_type)
return "ASN";
case RO_SUBOBJ_TYPE_SR:
return "SR";
default:
case RO_SUBOBJ_UNKNOWN:
return "UNKNOWN";
}
assert(!"Reached end of function where we do not expect to");
}
const char *pcep_nai_type_name(enum pcep_sr_subobj_nai nai_type)
@ -861,9 +873,11 @@ const char *pcep_nai_type_name(enum pcep_sr_subobj_nai nai_type)
return "UNNUMBERED_IPV4_ADJACENCY";
case PCEP_SR_SUBOBJ_NAI_LINK_LOCAL_IPV6_ADJACENCY:
return "LINK_LOCAL_IPV6_ADJACENCY";
default:
case PCEP_SR_SUBOBJ_NAI_UNKNOWN:
return "UNKNOWN";
}
assert(!"Reached end of function where we do not expect to");
}
const char *pcep_metric_type_name(enum pcep_metric_types type)
@ -1115,7 +1129,7 @@ void _format_path(int ps, struct path *path)
PATHD_FORMAT("%*sendpoint: %pI6\n", ps3, "",
&path->nbkey.endpoint.ipaddr_v6);
break;
default:
case IPADDR_NONE:
PATHD_FORMAT("%*sendpoint: NONE\n", ps3, "");
break;
}
@ -1300,7 +1314,9 @@ void _format_path_hop(int ps, struct path_hop *hop)
&hop->nai.remote_addr.ipaddr_v6,
hop->nai.remote_iface);
break;
default:
case PCEP_SR_SUBOBJ_NAI_ABSENT:
case PCEP_SR_SUBOBJ_NAI_LINK_LOCAL_IPV6_ADJACENCY:
case PCEP_SR_SUBOBJ_NAI_UNKNOWN:
PATHD_FORMAT("%*sNAI: UNSUPPORTED\n", ps, "");
break;
}
@ -1580,7 +1596,11 @@ void _format_pcep_object_ro_details(int ps, struct pcep_object_ro_subobj *ro)
case RO_SUBOBJ_TYPE_SR:
_format_pcep_object_ro_sr(ps, (struct pcep_ro_subobj_sr *)ro);
break;
default:
case RO_SUBOBJ_TYPE_IPV6:
case RO_SUBOBJ_TYPE_LABEL:
case RO_SUBOBJ_TYPE_UNNUM:
case RO_SUBOBJ_TYPE_ASN:
case RO_SUBOBJ_UNKNOWN:
PATHD_FORMAT("%*s...\n", ps, "");
break;
}
@ -1668,7 +1688,9 @@ void _format_pcep_object_ro_sr(int ps, struct pcep_ro_subobj_sr *obj)
PATHD_FORMAT("%*sNAI: %pI4(%u)/%pI4(%u)\n", ps, "",
laddr4, *liface, raddr4, *riface);
break;
default:
case PCEP_SR_SUBOBJ_NAI_ABSENT:
case PCEP_SR_SUBOBJ_NAI_LINK_LOCAL_IPV6_ADJACENCY:
case PCEP_SR_SUBOBJ_NAI_UNKNOWN:
PATHD_FORMAT("%*sNAI: UNSUPPORTED\n", ps, "");
break;
}
@ -1731,7 +1753,23 @@ void _format_pcep_object_tlv_details(int ps,
ps,
(struct pcep_object_tlv_path_setup_type *)tlv_header);
break;
default:
case PCEP_OBJ_TLV_TYPE_NO_PATH_VECTOR:
case PCEP_OBJ_TLV_TYPE_OBJECTIVE_FUNCTION_LIST:
case PCEP_OBJ_TLV_TYPE_VENDOR_INFO:
case PCEP_OBJ_TLV_TYPE_IPV4_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_IPV6_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_LSP_ERROR_CODE:
case PCEP_OBJ_TLV_TYPE_RSVP_ERROR_SPEC:
case PCEP_OBJ_TLV_TYPE_LSP_DB_VERSION:
case PCEP_OBJ_TLV_TYPE_SPEAKER_ENTITY_ID:
case PCEP_OBJ_TLV_TYPE_PATH_SETUP_TYPE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_NAME:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_PREFERENCE:
case PCEP_OBJ_TLV_TYPE_UNKNOWN:
case PCEP_OBJ_TYPE_CISCO_BSID:
case PCEP_OBJ_TLV_TYPE_ARBITRARY:
PATHD_FORMAT("%*s...\n", ps, "");
break;
}

View File

@ -767,7 +767,9 @@ double_linked_list *pcep_lib_format_path(struct pcep_caps *caps,
.s_addr,
hop->nai.remote_iface);
break;
default:
case PCEP_SR_SUBOBJ_NAI_ABSENT:
case PCEP_SR_SUBOBJ_NAI_LINK_LOCAL_IPV6_ADJACENCY:
case PCEP_SR_SUBOBJ_NAI_UNKNOWN:
break;
}
}
@ -854,7 +856,24 @@ void pcep_lib_parse_open(struct pcep_caps *caps, struct pcep_object_open *open)
case PCEP_OBJ_TLV_TYPE_OBJECTIVE_FUNCTION_LIST:
pcep_lib_parse_open_objfun_list(caps, tlv_header);
break;
default:
case PCEP_OBJ_TLV_TYPE_NO_PATH_VECTOR:
case PCEP_OBJ_TLV_TYPE_VENDOR_INFO:
case PCEP_OBJ_TLV_TYPE_IPV4_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_IPV6_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_LSP_ERROR_CODE:
case PCEP_OBJ_TLV_TYPE_RSVP_ERROR_SPEC:
case PCEP_OBJ_TLV_TYPE_LSP_DB_VERSION:
case PCEP_OBJ_TLV_TYPE_SPEAKER_ENTITY_ID:
case PCEP_OBJ_TLV_TYPE_PATH_SETUP_TYPE:
case PCEP_OBJ_TLV_TYPE_PATH_SETUP_TYPE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_NAME:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_PREFERENCE:
case PCEP_OBJ_TLV_TYPE_UNKNOWN:
case PCEP_OBJ_TLV_TYPE_ARBITRARY:
case PCEP_OBJ_TLV_TYPE_SYMBOLIC_PATH_NAME:
case PCEP_OBJ_TYPE_CISCO_BSID:
flog_warn(EC_PATH_PCEP_UNEXPECTED_PCEP_TLV,
"Unexpected OPEN's TLV %s (%u)",
pcep_tlv_type_name(tlv_header->type),
@ -915,7 +934,26 @@ void pcep_lib_parse_rp(struct path *path, struct pcep_object_rp *rp)
case PCEP_OBJ_TLV_TYPE_PATH_SETUP_TYPE:
// TODO: enforce the path setup type is SR_TE_PST
break;
default:
case PCEP_OBJ_TLV_TYPE_NO_PATH_VECTOR:
case PCEP_OBJ_TLV_TYPE_OBJECTIVE_FUNCTION_LIST:
case PCEP_OBJ_TLV_TYPE_VENDOR_INFO:
case PCEP_OBJ_TLV_TYPE_IPV4_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_IPV6_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_LSP_ERROR_CODE:
case PCEP_OBJ_TLV_TYPE_RSVP_ERROR_SPEC:
case PCEP_OBJ_TLV_TYPE_LSP_DB_VERSION:
case PCEP_OBJ_TLV_TYPE_SPEAKER_ENTITY_ID:
case PCEP_OBJ_TLV_TYPE_SR_PCE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_NAME:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_PREFERENCE:
case PCEP_OBJ_TLV_TYPE_STATEFUL_PCE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_UNKNOWN:
case PCEP_OBJ_TLV_TYPE_ARBITRARY:
case PCEP_OBJ_TLV_TYPE_SYMBOLIC_PATH_NAME:
case PCEP_OBJ_TYPE_CISCO_BSID:
case PCEP_OBJ_TLV_TYPE_PATH_SETUP_TYPE_CAPABILITY:
flog_warn(EC_PATH_PCEP_UNEXPECTED_PCEP_TLV,
"Unexpected RP's TLV %s (%u)",
pcep_tlv_type_name(tlv->type), tlv->type);
@ -945,7 +983,26 @@ void pcep_lib_parse_srp(struct path *path, struct pcep_object_srp *srp)
case PCEP_OBJ_TLV_TYPE_PATH_SETUP_TYPE:
// TODO: enforce the path setup type is SR_TE_PST
break;
default:
case PCEP_OBJ_TLV_TYPE_NO_PATH_VECTOR:
case PCEP_OBJ_TLV_TYPE_OBJECTIVE_FUNCTION_LIST:
case PCEP_OBJ_TLV_TYPE_VENDOR_INFO:
case PCEP_OBJ_TLV_TYPE_STATEFUL_PCE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_SYMBOLIC_PATH_NAME:
case PCEP_OBJ_TLV_TYPE_IPV4_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_IPV6_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_LSP_ERROR_CODE:
case PCEP_OBJ_TLV_TYPE_RSVP_ERROR_SPEC:
case PCEP_OBJ_TLV_TYPE_LSP_DB_VERSION:
case PCEP_OBJ_TLV_TYPE_SPEAKER_ENTITY_ID:
case PCEP_OBJ_TLV_TYPE_SR_PCE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_PATH_SETUP_TYPE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_NAME:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_PREFERENCE:
case PCEP_OBJ_TLV_TYPE_UNKNOWN:
case PCEP_OBJ_TYPE_CISCO_BSID:
case PCEP_OBJ_TLV_TYPE_ARBITRARY:
flog_warn(EC_PATH_PCEP_UNEXPECTED_PCEP_TLV,
"Unexpected SRP's TLV %s (%u)",
pcep_tlv_type_name(tlv->type), tlv->type);
@ -991,7 +1048,25 @@ void pcep_lib_parse_lsp(struct path *path, struct pcep_object_lsp *lsp)
path->binding_sid = ntohl(path->binding_sid);
path->binding_sid = (path->binding_sid >> 12);
break;
default:
case PCEP_OBJ_TLV_TYPE_NO_PATH_VECTOR:
case PCEP_OBJ_TLV_TYPE_OBJECTIVE_FUNCTION_LIST:
case PCEP_OBJ_TLV_TYPE_VENDOR_INFO:
case PCEP_OBJ_TLV_TYPE_IPV4_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_IPV6_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_LSP_ERROR_CODE:
case PCEP_OBJ_TLV_TYPE_RSVP_ERROR_SPEC:
case PCEP_OBJ_TLV_TYPE_LSP_DB_VERSION:
case PCEP_OBJ_TLV_TYPE_SPEAKER_ENTITY_ID:
case PCEP_OBJ_TLV_TYPE_SR_PCE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_PATH_SETUP_TYPE:
case PCEP_OBJ_TLV_TYPE_PATH_SETUP_TYPE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_NAME:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_PREFERENCE:
case PCEP_OBJ_TLV_TYPE_STATEFUL_PCE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_UNKNOWN:
case PCEP_OBJ_TLV_TYPE_ARBITRARY:
flog_warn(EC_PATH_PCEP_UNEXPECTED_PCEP_TLV,
"Unexpected LSP TLV %s (%u)",
pcep_tlv_type_name(tlv->type), tlv->type);
@ -1082,7 +1157,12 @@ void pcep_lib_parse_ero(struct path *path, struct pcep_object_ro *ero)
hop = pcep_lib_parse_ero_sr(
hop, (struct pcep_ro_subobj_sr *)obj);
break;
default:
case RO_SUBOBJ_TYPE_IPV4:
case RO_SUBOBJ_TYPE_IPV6:
case RO_SUBOBJ_TYPE_LABEL:
case RO_SUBOBJ_TYPE_UNNUM:
case RO_SUBOBJ_TYPE_ASN:
case RO_SUBOBJ_UNKNOWN:
flog_warn(EC_PATH_PCEP_UNEXPECTED_PCEP_ERO_SUBOBJ,
"Unexpected ERO sub-object %s (%u)",
pcep_ro_type_name(obj->ro_subobj_type),
@ -1181,7 +1261,9 @@ struct path_hop *pcep_lib_parse_ero_sr(struct path_hop *next,
assert(n->data != NULL);
hop->nai.remote_iface = *(uint32_t *)n->data;
break;
default:
case PCEP_SR_SUBOBJ_NAI_ABSENT:
case PCEP_SR_SUBOBJ_NAI_LINK_LOCAL_IPV6_ADJACENCY:
case PCEP_SR_SUBOBJ_NAI_UNKNOWN:
hop->has_nai = false;
flog_warn(EC_PATH_PCEP_UNEXPECTED_SR_NAI,
"Unexpected SR segment NAI type %s (%u)",

View File

@ -450,9 +450,11 @@ int pcep_pcc_disable(struct ctrl_state *ctrl_state, struct pcc_state *pcc_state)
pcc_state->sess = NULL;
pcc_state->status = PCEP_PCC_DISCONNECTED;
return 0;
default:
case PCEP_PCC_INITIALIZED:
return 1;
}
assert(!"Reached end of function where we are not expecting to");
}
void pcep_pcc_sync_path(struct ctrl_state *ctrl_state,
@ -614,7 +616,8 @@ void pcep_pcc_timeout_handler(struct ctrl_state *ctrl_state,
free_req_entry(req);
}
break;
default:
case TO_UNDEFINED:
case TO_MAX:
break;
}
}
@ -674,7 +677,7 @@ void pcep_pcc_pathd_event_handler(struct ctrl_state *ctrl_state,
if (pcc_state->caps.is_stateful)
send_report(pcc_state, path);
return;
default:
case PCEP_PATH_UNDEFINED:
flog_warn(EC_PATH_PCEP_RECOVERABLE_INTERNAL_ERROR,
"Unexpected pathd event received by pcc %s: %u",
pcc_state->tag, type);
@ -748,7 +751,7 @@ void pcep_pcc_pcep_event_handler(struct ctrl_state *ctrl_state,
|| pcc_state->status == PCEP_PCC_OPERATING);
handle_pcep_message(ctrl_state, pcc_state, event->message);
break;
default:
case PCC_CONNECTION_FAILURE:
flog_warn(EC_PATH_PCEP_UNEXPECTED_PCEPLIB_EVENT,
"Unexpected event from pceplib: %s",
format_pcep_event(event));
@ -1179,7 +1182,15 @@ void handle_pcep_message(struct ctrl_state *ctrl_state,
case PCEP_TYPE_PCREP:
handle_pcep_comp_reply(ctrl_state, pcc_state, msg);
break;
default:
case PCEP_TYPE_OPEN:
case PCEP_TYPE_KEEPALIVE:
case PCEP_TYPE_PCREQ:
case PCEP_TYPE_PCNOTF:
case PCEP_TYPE_ERROR:
case PCEP_TYPE_CLOSE:
case PCEP_TYPE_REPORT:
case PCEP_TYPE_START_TLS:
case PCEP_TYPE_MAX:
flog_warn(EC_PATH_PCEP_UNEXPECTED_PCEP_MESSAGE,
"Unexpected pcep message from pceplib: %s",
format_pcep_message(msg));
@ -1953,9 +1964,11 @@ static uint32_t hash_nbkey(const struct lsp_nb_key *nbkey)
case IPADDR_V6:
return jhash(&nbkey->endpoint.ipaddr_v6,
sizeof(nbkey->endpoint.ipaddr_v6), hash);
default:
case IPADDR_NONE:
return hash;
}
assert(!"Reached end of function where we were not expecting to");
}
static int cmp_nbkey(const struct lsp_nb_key *a, const struct lsp_nb_key *b)

View File

@ -527,7 +527,7 @@ uint32_t path_ted_config_write(struct vty *vty)
case IMPORT_OSPFv3:
vty_out(vty, " mpls-te import ospfv3\n");
break;
default:
case IMPORT_UNKNOWN:
break;
}
}

View File

@ -281,7 +281,8 @@ int srte_segment_entry_set_nai(struct srte_segment_entry *segment,
segment->nai_local_iface = local_iface;
status = srte_ted_do_query_type_e(segment, &pre, local_iface);
break;
default:
case SRTE_SEGMENT_NAI_TYPE_NONE:
case SRTE_SEGMENT_NAI_TYPE_IPV6_ADJACENCY_LINK_LOCAL_ADDRESSES:
segment->nai_local_addr.ipa_type = IPADDR_NONE;
segment->nai_local_iface = 0;
segment->nai_remote_addr.ipa_type = IPADDR_NONE;
@ -472,7 +473,11 @@ int srte_policy_update_ted_sid(void)
s_entry, &prefix_cli,
s_entry->nai_algorithm);
break;
default:
case SRTE_SEGMENT_NAI_TYPE_NONE:
case SRTE_SEGMENT_NAI_TYPE_IPV4_NODE:
case SRTE_SEGMENT_NAI_TYPE_IPV6_NODE:
case SRTE_SEGMENT_NAI_TYPE_IPV4_UNNUMBERED_ADJACENCY:
case SRTE_SEGMENT_NAI_TYPE_IPV6_ADJACENCY_LINK_LOCAL_ADDRESSES:
break;
}
}
@ -1025,9 +1030,11 @@ static uint32_t filter_type_to_flag(enum affinity_filter_type type)
return F_CANDIDATE_HAS_INCLUDE_ANY;
case AFFINITY_FILTER_INCLUDE_ALL:
return F_CANDIDATE_HAS_INCLUDE_ALL;
default:
case AFFINITY_FILTER_UNDEFINED:
return 0;
}
assert(!"Reached end of function we should never hit");
}
static const char *filter_type_name(enum affinity_filter_type type)
@ -1039,9 +1046,11 @@ static const char *filter_type_name(enum affinity_filter_type type)
return "include-any";
case AFFINITY_FILTER_INCLUDE_ALL:
return "include-all";
default:
case AFFINITY_FILTER_UNDEFINED:
return "unknown";
}
assert(!"Reached end of function we should never hit");
}
/**
@ -1155,7 +1164,9 @@ void srte_candidate_status_update(struct srte_candidate *candidate, int status)
case SRTE_POLICY_STATUS_GOING_UP:
case SRTE_POLICY_STATUS_DOWN:
return;
default:
case SRTE_POLICY_STATUS_UNKNOWN:
case SRTE_POLICY_STATUS_UP:
case SRTE_POLICY_STATUS_GOING_DOWN:
policy->status = SRTE_POLICY_STATUS_DOWN;
srte_policy_status_log(policy);
break;
@ -1165,7 +1176,10 @@ void srte_candidate_status_update(struct srte_candidate *candidate, int status)
switch (policy->status) {
case SRTE_POLICY_STATUS_UP:
return;
default:
case SRTE_POLICY_STATUS_UNKNOWN:
case SRTE_POLICY_STATUS_DOWN:
case SRTE_POLICY_STATUS_GOING_DOWN:
case SRTE_POLICY_STATUS_GOING_UP:
policy->status = SRTE_POLICY_STATUS_UP;
srte_policy_status_log(policy);
break;
@ -1263,9 +1277,11 @@ const char *srte_origin2str(enum srte_protocol_origin origin)
return "BGP";
case SRTE_ORIGIN_LOCAL:
return "Local";
default:
case SRTE_ORIGIN_UNDEFINED:
return "Unknown";
}
assert(!"Reached end of function we should never hit");
}
void path_policy_show_debugging(struct vty *vty)

View File

@ -547,7 +547,8 @@ void pbr_nht_set_seq_nhg_data(struct pbr_map_sequence *pbrms,
case NEXTHOP_TYPE_IPV4:
case NEXTHOP_TYPE_IPV4_IFINDEX:
pbrms->family = AF_INET;
default:
case NEXTHOP_TYPE_IFINDEX:
case NEXTHOP_TYPE_BLACKHOLE:
break;
}
}

View File

@ -923,12 +923,13 @@ uint16_t pcep_encode_obj_ro(struct pcep_object_header *hdr,
index += LENGTH_10WORDS;
break;
default:
case PCEP_SR_SUBOBJ_NAI_ABSENT:
case PCEP_SR_SUBOBJ_NAI_UNKNOWN:
break;
}
} break;
default:
case RO_SUBOBJ_UNKNOWN:
break;
}
}
@ -1712,7 +1713,7 @@ struct pcep_object_header *pcep_decode_obj_ro(struct pcep_object_header *hdr,
} break;
case PCEP_SR_SUBOBJ_NAI_ABSENT:
default:
case PCEP_SR_SUBOBJ_NAI_UNKNOWN:
break;
}
} break;

View File

@ -313,7 +313,25 @@ void pcep_obj_free_tlv(struct pcep_object_tlv_header *tlv)
}
break;
default:
case PCEP_OBJ_TLV_TYPE_NO_PATH_VECTOR:
case PCEP_OBJ_TLV_TYPE_OBJECTIVE_FUNCTION_LIST:
case PCEP_OBJ_TLV_TYPE_VENDOR_INFO:
case PCEP_OBJ_TLV_TYPE_STATEFUL_PCE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_SYMBOLIC_PATH_NAME:
case PCEP_OBJ_TLV_TYPE_IPV4_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_IPV6_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_LSP_ERROR_CODE:
case PCEP_OBJ_TLV_TYPE_RSVP_ERROR_SPEC:
case PCEP_OBJ_TLV_TYPE_LSP_DB_VERSION:
case PCEP_OBJ_TLV_TYPE_SR_PCE_CAPABILITY:
case PCEP_OBJ_TLV_TYPE_PATH_SETUP_TYPE:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_NAME:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_PREFERENCE:
case PCEP_OBJ_TLV_TYPE_UNKNOWN:
case PCEP_OBJ_TYPE_CISCO_BSID:
case PCEP_OBJ_TLV_TYPE_ARBITRARY:
break;
}
@ -387,7 +405,25 @@ void pcep_obj_free_object(struct pcep_object_header *obj)
}
break;
default:
case PCEP_OBJ_CLASS_OPEN:
case PCEP_OBJ_CLASS_RP:
case PCEP_OBJ_CLASS_NOPATH:
case PCEP_OBJ_CLASS_ENDPOINTS:
case PCEP_OBJ_CLASS_BANDWIDTH:
case PCEP_OBJ_CLASS_METRIC:
case PCEP_OBJ_CLASS_LSPA:
case PCEP_OBJ_CLASS_NOTF:
case PCEP_OBJ_CLASS_ERROR:
case PCEP_OBJ_CLASS_CLOSE:
case PCEP_OBJ_CLASS_OF:
case PCEP_OBJ_CLASS_LSP:
case PCEP_OBJ_CLASS_SRP:
case PCEP_OBJ_CLASS_VENDOR_INFO:
case PCEP_OBJ_CLASS_INTER_LAYER:
case PCEP_OBJ_CLASS_REQ_ADAP_CAP:
case PCEP_OBJ_CLASS_SERVER_IND:
case PCEP_OBJ_CLASS_ASSOCIATION:
case PCEP_OBJ_CLASS_MAX:
break;
}

View File

@ -242,7 +242,22 @@ bool verify_pcep_open_object(pcep_session *session,
case PCEP_OBJ_TLV_TYPE_SR_PCE_CAPABILITY:
break;
default:
case PCEP_OBJ_TLV_TYPE_NO_PATH_VECTOR:
case PCEP_OBJ_TLV_TYPE_OBJECTIVE_FUNCTION_LIST:
case PCEP_OBJ_TLV_TYPE_VENDOR_INFO:
case PCEP_OBJ_TLV_TYPE_SYMBOLIC_PATH_NAME:
case PCEP_OBJ_TLV_TYPE_IPV4_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_IPV6_LSP_IDENTIFIERS:
case PCEP_OBJ_TLV_TYPE_LSP_ERROR_CODE:
case PCEP_OBJ_TLV_TYPE_RSVP_ERROR_SPEC:
case PCEP_OBJ_TLV_TYPE_PATH_SETUP_TYPE:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_POL_NAME:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_ID:
case PCEP_OBJ_TLV_TYPE_SRPOLICY_CPATH_PREFERENCE:
case PCEP_OBJ_TLV_TYPE_UNKNOWN:
case PCEP_OBJ_TYPE_CISCO_BSID:
case PCEP_OBJ_TLV_TYPE_ARBITRARY:
/* TODO how to handle unrecognized TLV ?? */
pcep_log(
LOG_INFO,
@ -895,7 +910,7 @@ void handle_timer_event(pcep_session_event *event)
case SESSION_STATE_INITIALIZED:
case SESSION_STATE_PCEP_CONNECTED:
default:
case SESSION_STATE_UNKNOWN:
pcep_log(
LOG_INFO,
"%s: handle_timer_event unrecognized state transition, timer_id [%d] state [%d] session [%d]",
@ -1120,7 +1135,8 @@ void handle_socket_comm_event(pcep_session_event *event)
message_enqueued = true;
break;
default:
case PCEP_TYPE_START_TLS:
case PCEP_TYPE_MAX:
pcep_log(LOG_INFO, "%s: \t UnSupported message",
__func__);
send_pcep_error(session,

View File

@ -529,7 +529,7 @@ static void on_assert_timer(struct thread *t)
case PIM_IFASSERT_I_AM_LOSER:
assert_action_a5(ch);
break;
default: {
case PIM_IFASSERT_NOINFO: {
if (PIM_DEBUG_PIM_EVENTS)
zlog_warn(
"%s: (S,G)=%s invalid assert state %d on interface %s",

View File

@ -871,7 +871,11 @@ int pim_zebra_mlag_handle_msg(int cmd, struct zclient *zclient,
pim_mlag_process_mroute_del(msg);
}
} break;
default:
case MLAG_MSG_NONE:
case MLAG_REGISTER:
case MLAG_DEREGISTER:
case MLAG_DUMP:
case MLAG_PIM_CFG_DUMP:
break;
}
return 0;

View File

@ -281,7 +281,12 @@ void pim_msdp_write(struct thread *thread)
case PIM_MSDP_V4_SOURCE_ACTIVE:
mp->sa_tx_cnt++;
break;
default:;
case PIM_MSDP_V4_SOURCE_ACTIVE_REQUEST:
case PIM_MSDP_V4_SOURCE_ACTIVE_RESPONSE:
case PIM_MSDP_RESERVED:
case PIM_MSDP_TRACEROUTE_PROGRESS:
case PIM_MSDP_TRACEROUTE_REPLY:
break;
}
if (PIM_DEBUG_MSDP_PACKETS) {
pim_msdp_pkt_dump(mp, type, len, false /*rx*/, s);
@ -626,8 +631,13 @@ static void pim_msdp_pkt_rx(struct pim_msdp_peer *mp)
mp->sa_rx_cnt++;
pim_msdp_pkt_sa_rx(mp, len);
break;
default:
case PIM_MSDP_V4_SOURCE_ACTIVE_REQUEST:
case PIM_MSDP_V4_SOURCE_ACTIVE_RESPONSE:
case PIM_MSDP_RESERVED:
case PIM_MSDP_TRACEROUTE_PROGRESS:
case PIM_MSDP_TRACEROUTE_REPLY:
mp->unk_rx_cnt++;
break;
}
}

View File

@ -354,6 +354,9 @@ bool pim_nht_bsr_rpf_check(struct pim_instance *pim, pim_addr bsr_addr,
case NEXTHOP_TYPE_IPV4_IFINDEX:
nhaddr = nh->gate.ipv4;
break;
case NEXTHOP_TYPE_IPV6:
case NEXTHOP_TYPE_IPV6_IFINDEX:
continue;
#else
case NEXTHOP_TYPE_IPV6:
if (nh->ifindex == IFINDEX_INTERNAL)
@ -363,12 +366,15 @@ bool pim_nht_bsr_rpf_check(struct pim_instance *pim, pim_addr bsr_addr,
case NEXTHOP_TYPE_IPV6_IFINDEX:
nhaddr = nh->gate.ipv6;
break;
case NEXTHOP_TYPE_IPV4:
case NEXTHOP_TYPE_IPV4_IFINDEX:
continue;
#endif
case NEXTHOP_TYPE_IFINDEX:
nhaddr = bsr_addr;
break;
default:
case NEXTHOP_TYPE_BLACKHOLE:
continue;
}

View File

@ -263,6 +263,7 @@ static int zclient_read_nexthop(struct pim_instance *pim,
&nh_ip4, nh_ifi, &addr);
#endif
break;
case NEXTHOP_TYPE_IPV6:
case NEXTHOP_TYPE_IPV6_IFINDEX:
stream_get(&nh_ip6, s, sizeof(nh_ip6));
nh_ifi = stream_getl(s);
@ -307,7 +308,7 @@ static int zclient_read_nexthop(struct pim_instance *pim,
++num_ifindex;
#endif
break;
default:
case NEXTHOP_TYPE_BLACKHOLE:
/* do nothing */
zlog_warn(
"%s: found non-ifindex nexthop type=%d for address %pPAs(%s)",

View File

@ -35,7 +35,7 @@ int32_t mlag_bulk_cnt;
static void pim_mlag_zebra_fill_header(enum mlag_msg_type msg_type)
{
uint32_t fill_msg_type = msg_type;
uint16_t data_len;
uint16_t data_len = 0;
uint16_t msg_cnt = 1;
if (msg_type == MLAG_MSG_NONE)
@ -54,7 +54,14 @@ static void pim_mlag_zebra_fill_header(enum mlag_msg_type msg_type)
data_len = sizeof(struct mlag_mroute_del);
fill_msg_type = MLAG_MROUTE_DEL_BULK;
break;
default:
case MLAG_MSG_NONE:
case MLAG_STATUS_UPDATE:
case MLAG_DUMP:
case MLAG_MROUTE_ADD_BULK:
case MLAG_MROUTE_DEL_BULK:
case MLAG_PIM_CFG_DUMP:
case MLAG_VXLAN_UPDATE:
case MLAG_PEER_FRR_STATUS:
data_len = 0;
break;
}

View File

@ -77,7 +77,7 @@ static inline int qpb__address_family__get(Qpb__AddressFamily pb_family,
case QPB__ADDRESS_FAMILY__UNKNOWN_AF:
return 0;
default: /* protobuf "magic value" _QPB__ADDRESS_FAMILY_IS_INT_SIZE */
case _QPB__ADDRESS_FAMILY_IS_INT_SIZE:
return 0;
}

View File

@ -236,9 +236,14 @@ struct yang_data *ripd_instance_state_routes_route_next_hop_get_elem(
case NEXTHOP_TYPE_IPV4:
case NEXTHOP_TYPE_IPV4_IFINDEX:
return yang_data_new_ipv4(args->xpath, &rinfo->nh.gate.ipv4);
default:
case NEXTHOP_TYPE_IFINDEX:
case NEXTHOP_TYPE_IPV6:
case NEXTHOP_TYPE_IPV6_IFINDEX:
case NEXTHOP_TYPE_BLACKHOLE:
return NULL;
}
assert(!"Reached end of function where we do not expect to reach");
}
/*
@ -257,9 +262,14 @@ struct yang_data *ripd_instance_state_routes_route_interface_get_elem(
return yang_data_new_string(
args->xpath,
ifindex2ifname(rinfo->nh.ifindex, rip->vrf->vrf_id));
default:
case NEXTHOP_TYPE_IPV4:
case NEXTHOP_TYPE_IPV6:
case NEXTHOP_TYPE_IPV6_IFINDEX:
case NEXTHOP_TYPE_BLACKHOLE:
return NULL;
}
assert(!"Reached end of function where we do not expect to reach");
}
/*

View File

@ -1933,7 +1933,8 @@ void ripng_event(struct ripng *ripng, enum ripng_event event, int sock)
thread_add_event(master, ripng_triggered_update, ripng,
0, &ripng->t_triggered_update);
break;
default:
case RIPNG_ZEBRA:
case RIPNG_REQUEST_EVENT:
break;
}
}

View File

@ -209,7 +209,8 @@ bool static_add_nexthop_validate(const char *nh_vrf_name,
vrf->vrf_id))
return false;
break;
default:
case STATIC_IFNAME:
case STATIC_BLACKHOLE:
break;
}
@ -302,7 +303,8 @@ struct static_nexthop *static_add_nexthop(struct static_path *pn,
case STATIC_IPV6_GATEWAY_IFNAME:
nh->addr.ipv6 = ipaddr->ipaddr_v6;
break;
default:
case STATIC_IFNAME:
case STATIC_BLACKHOLE:
break;
}
/*

View File

@ -135,7 +135,9 @@ static int static_route_nb_run(struct vty *vty, struct static_route_args *args)
if (args->source)
assert(!!str2prefix(args->source, &src));
break;
default:
case AFI_L2VPN:
case AFI_UNSPEC:
case AFI_MAX:
break;
}

View File

@ -885,7 +885,7 @@ static int run_stop_schedule(void)
strerror(errno));
}
default:
case sched_forever:
assert(!"schedule[].type value must be valid");
}

View File

@ -247,7 +247,9 @@ void connected_up(struct interface *ifp, struct connected *ifc)
return;
#endif
break;
default:
case AFI_UNSPEC:
case AFI_L2VPN:
case AFI_MAX:
flog_warn(EC_ZEBRA_CONNECTED_AFI_UNKNOWN,
"Received unknown AFI: %s", afi2str(afi));
return;
@ -435,7 +437,9 @@ void connected_down(struct interface *ifp, struct connected *ifc)
if (IN6_IS_ADDR_UNSPECIFIED(&p.u.prefix6))
return;
break;
default:
case AFI_UNSPEC:
case AFI_L2VPN:
case AFI_MAX:
zlog_warn("Unknown AFI: %s", afi2str(afi));
break;
}

View File

@ -1362,7 +1362,57 @@ static ssize_t netlink_intf_msg_encoder(struct zebra_dplane_ctx *ctx, void *buf,
case DPLANE_OP_INTF_DELETE:
cmd = RTM_DELLINK;
break;
default:
case DPLANE_OP_NONE:
case DPLANE_OP_ROUTE_INSTALL:
case DPLANE_OP_ROUTE_UPDATE:
case DPLANE_OP_ROUTE_DELETE:
case DPLANE_OP_ROUTE_NOTIFY:
case DPLANE_OP_NH_INSTALL:
case DPLANE_OP_NH_UPDATE:
case DPLANE_OP_NH_DELETE:
case DPLANE_OP_LSP_INSTALL:
case DPLANE_OP_LSP_DELETE:
case DPLANE_OP_LSP_NOTIFY:
case DPLANE_OP_LSP_UPDATE:
case DPLANE_OP_PW_INSTALL:
case DPLANE_OP_PW_UNINSTALL:
case DPLANE_OP_SYS_ROUTE_ADD:
case DPLANE_OP_SYS_ROUTE_DELETE:
case DPLANE_OP_ADDR_INSTALL:
case DPLANE_OP_ADDR_UNINSTALL:
case DPLANE_OP_MAC_INSTALL:
case DPLANE_OP_MAC_DELETE:
case DPLANE_OP_NEIGH_INSTALL:
case DPLANE_OP_NEIGH_UPDATE:
case DPLANE_OP_NEIGH_DELETE:
case DPLANE_OP_NEIGH_DISCOVER:
case DPLANE_OP_VTEP_ADD:
case DPLANE_OP_VTEP_DELETE:
case DPLANE_OP_RULE_ADD:
case DPLANE_OP_RULE_DELETE:
case DPLANE_OP_RULE_UPDATE:
case DPLANE_OP_BR_PORT_UPDATE:
case DPLANE_OP_IPTABLE_ADD:
case DPLANE_OP_IPTABLE_DELETE:
case DPLANE_OP_IPSET_ADD:
case DPLANE_OP_IPSET_ENTRY_ADD:
case DPLANE_OP_IPSET_ENTRY_DELETE:
case DPLANE_OP_IPSET_DELETE:
case DPLANE_OP_NEIGH_IP_INSTALL:
case DPLANE_OP_NEIGH_IP_DELETE:
case DPLANE_OP_NEIGH_TABLE_UPDATE:
case DPLANE_OP_GRE_SET:
case DPLANE_OP_INTF_ADDR_ADD:
case DPLANE_OP_INTF_ADDR_DEL:
case DPLANE_OP_INTF_NETCONFIG:
case DPLANE_OP_TC_QDISC_INSTALL:
case DPLANE_OP_TC_QDISC_UNINSTALL:
case DPLANE_OP_TC_CLASS_ADD:
case DPLANE_OP_TC_CLASS_DELETE:
case DPLANE_OP_TC_CLASS_UPDATE:
case DPLANE_OP_TC_FILTER_ADD:
case DPLANE_OP_TC_FILTER_DELETE:
case DPLANE_OP_TC_FILTER_UPDATE:
flog_err(
EC_ZEBRA_NHG_FIB_UPDATE,
"Context received for kernel interface update with incorrect OP code (%u)",

View File

@ -1226,7 +1226,8 @@ int rtm_write(int message, union sockunion *dest, union sockunion *mask,
case BLACKHOLE_REJECT:
msg.rtm.rtm_flags |= RTF_REJECT;
break;
default:
case BLACKHOLE_NULL:
case BLACKHOLE_ADMINPROHIB:
msg.rtm.rtm_flags |= RTF_BLACKHOLE;
break;
}

View File

@ -113,9 +113,13 @@ int router_id_get(afi_t afi, struct prefix *p, struct zebra_vrf *zvrf)
if (addr)
memcpy(&p->u.prefix6, addr, sizeof(struct in6_addr));
return 0;
default:
case AFI_UNSPEC:
case AFI_L2VPN:
case AFI_MAX:
return -1;
}
assert(!"Reached end of function we should never hit");
}
static int router_id_set(afi_t afi, struct prefix *p, struct zebra_vrf *zvrf)
@ -133,7 +137,9 @@ static int router_id_set(afi_t afi, struct prefix *p, struct zebra_vrf *zvrf)
case AFI_IP6:
zvrf->rid6_user_assigned.u.prefix6 = p->u.prefix6;
break;
default:
case AFI_UNSPEC:
case AFI_L2VPN:
case AFI_MAX:
return -1;
}

View File

@ -1569,7 +1569,16 @@ static bool _netlink_route_build_singlepath(const struct prefix *p,
ctx->table))
return false;
break;
default:
case ZEBRA_SEG6_LOCAL_ACTION_END_DX2:
case ZEBRA_SEG6_LOCAL_ACTION_END_DX6:
case ZEBRA_SEG6_LOCAL_ACTION_END_B6:
case ZEBRA_SEG6_LOCAL_ACTION_END_B6_ENCAP:
case ZEBRA_SEG6_LOCAL_ACTION_END_BM:
case ZEBRA_SEG6_LOCAL_ACTION_END_S:
case ZEBRA_SEG6_LOCAL_ACTION_END_AS:
case ZEBRA_SEG6_LOCAL_ACTION_END_AM:
case ZEBRA_SEG6_LOCAL_ACTION_END_BPF:
case ZEBRA_SEG6_LOCAL_ACTION_UNSPEC:
zlog_err("%s: unsupport seg6local behaviour action=%u",
__func__,
nexthop->nh_srv6->seg6local_action);
@ -2151,7 +2160,8 @@ ssize_t netlink_route_multipath_msg_encode(int cmd,
case BLACKHOLE_REJECT:
req->r.rtm_type = RTN_UNREACHABLE;
break;
default:
case BLACKHOLE_UNSPEC:
case BLACKHOLE_NULL:
req->r.rtm_type = RTN_BLACKHOLE;
break;
}
@ -4448,7 +4458,7 @@ static int netlink_neigh_table_update_ctx(const struct zebra_dplane_ctx *ctx,
static ssize_t netlink_neigh_msg_encoder(struct zebra_dplane_ctx *ctx,
void *buf, size_t buflen)
{
ssize_t ret;
ssize_t ret = 0;
switch (dplane_ctx_get_op(ctx)) {
case DPLANE_OP_NEIGH_INSTALL:
@ -4472,7 +4482,51 @@ static ssize_t netlink_neigh_msg_encoder(struct zebra_dplane_ctx *ctx,
case DPLANE_OP_NEIGH_TABLE_UPDATE:
ret = netlink_neigh_table_update_ctx(ctx, buf, buflen);
break;
default:
case DPLANE_OP_ROUTE_INSTALL:
case DPLANE_OP_ROUTE_UPDATE:
case DPLANE_OP_ROUTE_DELETE:
case DPLANE_OP_ROUTE_NOTIFY:
case DPLANE_OP_NH_INSTALL:
case DPLANE_OP_NH_UPDATE:
case DPLANE_OP_NH_DELETE:
case DPLANE_OP_LSP_INSTALL:
case DPLANE_OP_LSP_UPDATE:
case DPLANE_OP_LSP_DELETE:
case DPLANE_OP_LSP_NOTIFY:
case DPLANE_OP_PW_INSTALL:
case DPLANE_OP_PW_UNINSTALL:
case DPLANE_OP_SYS_ROUTE_ADD:
case DPLANE_OP_SYS_ROUTE_DELETE:
case DPLANE_OP_ADDR_INSTALL:
case DPLANE_OP_ADDR_UNINSTALL:
case DPLANE_OP_MAC_INSTALL:
case DPLANE_OP_MAC_DELETE:
case DPLANE_OP_RULE_ADD:
case DPLANE_OP_RULE_DELETE:
case DPLANE_OP_RULE_UPDATE:
case DPLANE_OP_BR_PORT_UPDATE:
case DPLANE_OP_IPTABLE_ADD:
case DPLANE_OP_IPTABLE_DELETE:
case DPLANE_OP_IPSET_ADD:
case DPLANE_OP_IPSET_DELETE:
case DPLANE_OP_IPSET_ENTRY_ADD:
case DPLANE_OP_IPSET_ENTRY_DELETE:
case DPLANE_OP_GRE_SET:
case DPLANE_OP_INTF_ADDR_ADD:
case DPLANE_OP_INTF_ADDR_DEL:
case DPLANE_OP_INTF_NETCONFIG:
case DPLANE_OP_INTF_INSTALL:
case DPLANE_OP_INTF_UPDATE:
case DPLANE_OP_INTF_DELETE:
case DPLANE_OP_TC_QDISC_INSTALL:
case DPLANE_OP_TC_QDISC_UNINSTALL:
case DPLANE_OP_TC_CLASS_ADD:
case DPLANE_OP_TC_CLASS_DELETE:
case DPLANE_OP_TC_CLASS_UPDATE:
case DPLANE_OP_TC_FILTER_ADD:
case DPLANE_OP_TC_FILTER_DELETE:
case DPLANE_OP_TC_FILTER_UPDATE:
case DPLANE_OP_NONE:
ret = -1;
}

View File

@ -745,7 +745,8 @@ int netlink_qdisc_change(struct nlmsghdr *h, ns_id_t ns_id, int startup)
case TC_QDISC_NOQUEUE:
/* "noqueue" is the default qdisc */
break;
default:
case TC_QDISC_HTB:
case TC_QDISC_UNSPEC:
break;
}

View File

@ -143,7 +143,7 @@ static int zserv_encode_nexthop(struct stream *s, struct nexthop *nexthop)
case NEXTHOP_TYPE_IFINDEX:
stream_putl(s, nexthop->ifindex);
break;
default:
case NEXTHOP_TYPE_BLACKHOLE:
/* do nothing */
break;
}
@ -576,7 +576,9 @@ int zsend_redistribute_route(int cmd, struct zserv *client,
else
client->redist_v6_del_cnt++;
break;
default:
case AFI_L2VPN:
case AFI_MAX:
case AFI_UNSPEC:
break;
}
@ -3424,7 +3426,10 @@ static inline void zread_tc_filter(ZAPI_HANDLER_ARGS)
STREAM_GETL(s, filter.filter.u.flower.classid);
break;
}
default:
case TC_FILTER_BPF:
case TC_FILTER_FLOW:
case TC_FILTER_U32:
case TC_FILTER_UNSPEC:
break;
}

View File

@ -902,7 +902,7 @@ static inline int zfpm_encode_route(rib_dest_t *dest, struct route_entry *re,
#endif /* HAVE_NETLINK */
break;
default:
case ZFPM_MSG_FORMAT_NONE:
break;
}

View File

@ -315,7 +315,7 @@ static int netlink_route_info_fill(struct netlink_route_info *ri, int cmd,
ri->rtm_type = RTN_UNREACHABLE;
break;
case BLACKHOLE_NULL:
default:
case BLACKHOLE_UNSPEC:
ri->rtm_type = RTN_BLACKHOLE;
break;
}

View File

@ -186,7 +186,8 @@ static Fpm__AddRoute *create_add_route_message(qpb_allocator_t *allocator,
msg->route_type = FPM__ROUTE_TYPE__UNREACHABLE;
break;
case BLACKHOLE_NULL:
default:
case BLACKHOLE_UNSPEC:
case BLACKHOLE_ADMINPROHIB:
msg->route_type = FPM__ROUTE_TYPE__BLACKHOLE;
break;
}

View File

@ -888,7 +888,14 @@ int zebra_mlag_protobuf_encode_client_data(struct stream *s, uint32_t *msg_type)
if (cleanup)
return -1;
} break;
default:
case MLAG_REGISTER:
case MLAG_DEREGISTER:
case MLAG_STATUS_UPDATE:
case MLAG_DUMP:
case MLAG_PIM_CFG_DUMP:
case MLAG_VXLAN_UPDATE:
case MLAG_PEER_FRR_STATUS:
case MLAG_MSG_NONE:
break;
}

View File

@ -1848,7 +1848,57 @@ void zebra_mpls_lsp_dplane_result(struct zebra_dplane_ctx *ctx)
ZEBRA_SR_POLICY_LABEL_REMOVED);
break;
default:
case DPLANE_OP_LSP_NOTIFY:
case DPLANE_OP_NONE:
case DPLANE_OP_ROUTE_INSTALL:
case DPLANE_OP_ROUTE_UPDATE:
case DPLANE_OP_ROUTE_DELETE:
case DPLANE_OP_ROUTE_NOTIFY:
case DPLANE_OP_NH_INSTALL:
case DPLANE_OP_NH_UPDATE:
case DPLANE_OP_NH_DELETE:
case DPLANE_OP_PW_INSTALL:
case DPLANE_OP_PW_UNINSTALL:
case DPLANE_OP_SYS_ROUTE_ADD:
case DPLANE_OP_SYS_ROUTE_DELETE:
case DPLANE_OP_ADDR_INSTALL:
case DPLANE_OP_ADDR_UNINSTALL:
case DPLANE_OP_MAC_INSTALL:
case DPLANE_OP_MAC_DELETE:
case DPLANE_OP_NEIGH_INSTALL:
case DPLANE_OP_NEIGH_UPDATE:
case DPLANE_OP_NEIGH_DELETE:
case DPLANE_OP_VTEP_ADD:
case DPLANE_OP_VTEP_DELETE:
case DPLANE_OP_RULE_ADD:
case DPLANE_OP_RULE_DELETE:
case DPLANE_OP_RULE_UPDATE:
case DPLANE_OP_NEIGH_DISCOVER:
case DPLANE_OP_BR_PORT_UPDATE:
case DPLANE_OP_IPTABLE_ADD:
case DPLANE_OP_IPTABLE_DELETE:
case DPLANE_OP_IPSET_ADD:
case DPLANE_OP_IPSET_DELETE:
case DPLANE_OP_IPSET_ENTRY_ADD:
case DPLANE_OP_IPSET_ENTRY_DELETE:
case DPLANE_OP_NEIGH_IP_INSTALL:
case DPLANE_OP_NEIGH_IP_DELETE:
case DPLANE_OP_NEIGH_TABLE_UPDATE:
case DPLANE_OP_GRE_SET:
case DPLANE_OP_INTF_ADDR_ADD:
case DPLANE_OP_INTF_ADDR_DEL:
case DPLANE_OP_INTF_NETCONFIG:
case DPLANE_OP_INTF_INSTALL:
case DPLANE_OP_INTF_UPDATE:
case DPLANE_OP_INTF_DELETE:
case DPLANE_OP_TC_QDISC_INSTALL:
case DPLANE_OP_TC_QDISC_UNINSTALL:
case DPLANE_OP_TC_CLASS_ADD:
case DPLANE_OP_TC_CLASS_DELETE:
case DPLANE_OP_TC_CLASS_UPDATE:
case DPLANE_OP_TC_FILTER_ADD:
case DPLANE_OP_TC_FILTER_DELETE:
case DPLANE_OP_TC_FILTER_UPDATE:
break;
} /* Switch */

View File

@ -255,7 +255,57 @@ static int kernel_lsp_cmd(struct zebra_dplane_ctx *ctx)
case DPLANE_OP_LSP_UPDATE:
action = RTM_CHANGE;
break;
default:
case DPLANE_OP_NONE:
case DPLANE_OP_ROUTE_INSTALL:
case DPLANE_OP_ROUTE_UPDATE:
case DPLANE_OP_ROUTE_DELETE:
case DPLANE_OP_ROUTE_NOTIFY:
case DPLANE_OP_NH_INSTALL:
case DPLANE_OP_NH_UPDATE:
case DPLANE_OP_NH_DELETE:
case DPLANE_OP_LSP_NOTIFY:
case DPLANE_OP_PW_INSTALL:
case DPLANE_OP_PW_UNINSTALL:
case DPLANE_OP_SYS_ROUTE_ADD:
case DPLANE_OP_SYS_ROUTE_DELETE:
case DPLANE_OP_ADDR_INSTALL:
case DPLANE_OP_ADDR_UNINSTALL:
case DPLANE_OP_MAC_INSTALL:
case DPLANE_OP_MAC_DELETE:
case DPLANE_OP_NEIGH_INSTALL:
case DPLANE_OP_NEIGH_UPDATE:
case DPLANE_OP_NEIGH_DELETE:
case DPLANE_OP_VTEP_ADD:
case DPLANE_OP_VTEP_DELETE:
case DPLANE_OP_RULE_ADD:
case DPLANE_OP_RULE_DELETE:
case DPLANE_OP_RULE_UPDATE:
case DPLANE_OP_NEIGH_DISCOVER:
case DPLANE_OP_BR_PORT_UPDATE:
case DPLANE_OP_IPTABLE_ADD:
case DPLANE_OP_IPTABLE_DELETE:
case DPLANE_OP_IPSET_ADD:
case DPLANE_OP_IPSET_DELETE:
case DPLANE_OP_IPSET_ENTRY_ADD:
case DPLANE_OP_IPSET_ENTRY_DELETE:
case DPLANE_OP_NEIGH_IP_INSTALL:
case DPLANE_OP_NEIGH_IP_DELETE:
case DPLANE_OP_NEIGH_TABLE_UPDATE:
case DPLANE_OP_GRE_SET:
case DPLANE_OP_INTF_ADDR_ADD:
case DPLANE_OP_INTF_ADDR_DEL:
case DPLANE_OP_INTF_NETCONFIG:
case DPLANE_OP_INTF_INSTALL:
case DPLANE_OP_INTF_UPDATE:
case DPLANE_OP_INTF_DELETE:
case DPLANE_OP_TC_QDISC_INSTALL:
case DPLANE_OP_TC_QDISC_UNINSTALL:
case DPLANE_OP_TC_CLASS_ADD:
case DPLANE_OP_TC_CLASS_DELETE:
case DPLANE_OP_TC_CLASS_UPDATE:
case DPLANE_OP_TC_FILTER_ADD:
case DPLANE_OP_TC_FILTER_DELETE:
case DPLANE_OP_TC_FILTER_UPDATE:
return -1;
}
@ -415,7 +465,58 @@ enum zebra_dplane_result kernel_pw_update(struct zebra_dplane_ctx *ctx)
case DPLANE_OP_PW_UNINSTALL:
result = kmpw_uninstall(ctx);
break;
default:
case DPLANE_OP_NONE:
case DPLANE_OP_ROUTE_INSTALL:
case DPLANE_OP_ROUTE_UPDATE:
case DPLANE_OP_ROUTE_DELETE:
case DPLANE_OP_ROUTE_NOTIFY:
case DPLANE_OP_NH_INSTALL:
case DPLANE_OP_NH_UPDATE:
case DPLANE_OP_NH_DELETE:
case DPLANE_OP_LSP_INSTALL:
case DPLANE_OP_LSP_UPDATE:
case DPLANE_OP_LSP_DELETE:
case DPLANE_OP_LSP_NOTIFY:
case DPLANE_OP_SYS_ROUTE_ADD:
case DPLANE_OP_SYS_ROUTE_DELETE:
case DPLANE_OP_ADDR_INSTALL:
case DPLANE_OP_ADDR_UNINSTALL:
case DPLANE_OP_MAC_INSTALL:
case DPLANE_OP_MAC_DELETE:
case DPLANE_OP_NEIGH_INSTALL:
case DPLANE_OP_NEIGH_UPDATE:
case DPLANE_OP_NEIGH_DELETE:
case DPLANE_OP_VTEP_ADD:
case DPLANE_OP_VTEP_DELETE:
case DPLANE_OP_RULE_ADD:
case DPLANE_OP_RULE_DELETE:
case DPLANE_OP_RULE_UPDATE:
case DPLANE_OP_NEIGH_DISCOVER:
case DPLANE_OP_BR_PORT_UPDATE:
case DPLANE_OP_IPTABLE_ADD:
case DPLANE_OP_IPTABLE_DELETE:
case DPLANE_OP_IPSET_ADD:
case DPLANE_OP_IPSET_DELETE:
case DPLANE_OP_IPSET_ENTRY_ADD:
case DPLANE_OP_IPSET_ENTRY_DELETE:
case DPLANE_OP_NEIGH_IP_INSTALL:
case DPLANE_OP_NEIGH_IP_DELETE:
case DPLANE_OP_NEIGH_TABLE_UPDATE:
case DPLANE_OP_GRE_SET:
case DPLANE_OP_INTF_ADDR_ADD:
case DPLANE_OP_INTF_ADDR_DEL:
case DPLANE_OP_INTF_NETCONFIG:
case DPLANE_OP_INTF_INSTALL:
case DPLANE_OP_INTF_UPDATE:
case DPLANE_OP_INTF_DELETE:
case DPLANE_OP_TC_QDISC_INSTALL:
case DPLANE_OP_TC_QDISC_UNINSTALL:
case DPLANE_OP_TC_CLASS_ADD:
case DPLANE_OP_TC_CLASS_DELETE:
case DPLANE_OP_TC_CLASS_UPDATE:
case DPLANE_OP_TC_FILTER_ADD:
case DPLANE_OP_TC_FILTER_DELETE:
case DPLANE_OP_TC_FILTER_UPDATE:
break;
}

View File

@ -706,7 +706,7 @@ lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_nexthop_nh_type_get_elem(
case NEXTHOP_TYPE_IPV6_IFINDEX:
return yang_data_new_string(args->xpath, "ip6-ifindex");
break;
default:
case NEXTHOP_TYPE_BLACKHOLE:
break;
}

View File

@ -2250,7 +2250,9 @@ static int nexthop_active(struct nexthop *nexthop, struct nhg_hash_entry *nhe,
endpoint.ipa_type = IPADDR_V6;
endpoint.ipaddr_v6 = nexthop->gate.ipv6;
break;
default:
case AFI_UNSPEC:
case AFI_L2VPN:
case AFI_MAX:
flog_err(EC_LIB_DEVELOPMENT,
"%s: unknown address-family: %u", __func__,
afi);
@ -2291,7 +2293,9 @@ static int nexthop_active(struct nexthop *nexthop, struct nhg_hash_entry *nhe,
p.prefixlen = IPV6_MAX_BITLEN;
p.u.prefix6 = nexthop->gate.ipv6;
break;
default:
case AFI_UNSPEC:
case AFI_L2VPN:
case AFI_MAX:
assert(afi != AFI_IP && afi != AFI_IP6);
break;
}

View File

@ -648,7 +648,8 @@ static void zebra_pbr_expand_rule(struct zebra_pbr_rule *rule)
zebra_neigh_ref(action->ifindex, &ip, rule);
break;
default:
case NEXTHOP_TYPE_BLACKHOLE:
case NEXTHOP_TYPE_IFINDEX:
action->afi = AFI_UNSPEC;
}
}

View File

@ -2158,7 +2158,58 @@ static void rib_process_result(struct zebra_dplane_ctx *ctx)
(old_re && RIB_SYSTEM_ROUTE(old_re)))
zebra_rib_fixup_system(rn);
break;
default:
case DPLANE_OP_NONE:
case DPLANE_OP_ROUTE_NOTIFY:
case DPLANE_OP_NH_INSTALL:
case DPLANE_OP_NH_UPDATE:
case DPLANE_OP_NH_DELETE:
case DPLANE_OP_LSP_INSTALL:
case DPLANE_OP_LSP_UPDATE:
case DPLANE_OP_LSP_DELETE:
case DPLANE_OP_LSP_NOTIFY:
case DPLANE_OP_PW_INSTALL:
case DPLANE_OP_PW_UNINSTALL:
case DPLANE_OP_SYS_ROUTE_ADD:
case DPLANE_OP_SYS_ROUTE_DELETE:
case DPLANE_OP_ADDR_INSTALL:
case DPLANE_OP_ADDR_UNINSTALL:
case DPLANE_OP_MAC_INSTALL:
case DPLANE_OP_MAC_DELETE:
case DPLANE_OP_NEIGH_INSTALL:
case DPLANE_OP_NEIGH_UPDATE:
case DPLANE_OP_NEIGH_DELETE:
case DPLANE_OP_VTEP_ADD:
case DPLANE_OP_VTEP_DELETE:
case DPLANE_OP_RULE_ADD:
case DPLANE_OP_RULE_DELETE:
case DPLANE_OP_RULE_UPDATE:
case DPLANE_OP_NEIGH_DISCOVER:
case DPLANE_OP_BR_PORT_UPDATE:
case DPLANE_OP_IPTABLE_ADD:
case DPLANE_OP_IPTABLE_DELETE:
case DPLANE_OP_IPSET_ADD:
case DPLANE_OP_IPSET_DELETE:
case DPLANE_OP_IPSET_ENTRY_ADD:
case DPLANE_OP_IPSET_ENTRY_DELETE:
case DPLANE_OP_NEIGH_IP_INSTALL:
case DPLANE_OP_NEIGH_IP_DELETE:
case DPLANE_OP_NEIGH_TABLE_UPDATE:
case DPLANE_OP_GRE_SET:
case DPLANE_OP_INTF_ADDR_ADD:
case DPLANE_OP_INTF_ADDR_DEL:
case DPLANE_OP_INTF_NETCONFIG:
case DPLANE_OP_INTF_INSTALL:
case DPLANE_OP_INTF_UPDATE:
case DPLANE_OP_INTF_DELETE:
case DPLANE_OP_TC_QDISC_INSTALL:
case DPLANE_OP_TC_QDISC_UNINSTALL:
case DPLANE_OP_TC_CLASS_ADD:
case DPLANE_OP_TC_CLASS_DELETE:
case DPLANE_OP_TC_CLASS_UPDATE:
case DPLANE_OP_TC_FILTER_ADD:
case DPLANE_OP_TC_FILTER_DELETE:
case DPLANE_OP_TC_FILTER_UPDATE:
break;
}
@ -4334,7 +4385,7 @@ void rib_update_table(struct route_table *table, enum rib_update_event event,
case RIB_UPDATE_OTHER:
rib_update_route_node(rn, rtype);
break;
default:
case RIB_UPDATE_MAX:
break;
}
}

View File

@ -1401,7 +1401,8 @@ void show_nexthop_json_helper(json_object *json_nexthop,
json_object_string_addf(json_nexthop, "source", "%pI6",
&nexthop->src.ipv6);
break;
default:
case NEXTHOP_TYPE_IFINDEX:
case NEXTHOP_TYPE_BLACKHOLE:
break;
}
@ -1523,7 +1524,8 @@ void show_route_nexthop_helper(struct vty *vty, const struct route_entry *re,
if (!IPV6_ADDR_SAME(&nexthop->src.ipv6, &in6addr_any))
vty_out(vty, ", src %pI6", &nexthop->src.ipv6);
break;
default:
case NEXTHOP_TYPE_IFINDEX:
case NEXTHOP_TYPE_BLACKHOLE:
break;
}

View File

@ -1049,7 +1049,9 @@ route_match_ip_next_hop(void *rule, const struct prefix *prefix, void *object)
p.prefix = nh_data->nexthop->gate.ipv4;
p.prefixlen = IPV4_MAX_BITLEN;
break;
default:
case NEXTHOP_TYPE_IPV6:
case NEXTHOP_TYPE_IPV6_IFINDEX:
case NEXTHOP_TYPE_BLACKHOLE:
return RMAP_NOMATCH;
}
alist = access_list_lookup(AFI_IP, (char *)rule);
@ -1105,7 +1107,9 @@ route_match_ip_next_hop_prefix_list(void *rule, const struct prefix *prefix,
p.prefix = nh_data->nexthop->gate.ipv4;
p.prefixlen = IPV4_MAX_BITLEN;
break;
default:
case NEXTHOP_TYPE_IPV6:
case NEXTHOP_TYPE_IPV6_IFINDEX:
case NEXTHOP_TYPE_BLACKHOLE:
return RMAP_NOMATCH;
}
plist = prefix_list_lookup(AFI_IP, (char *)rule);
@ -1364,7 +1368,9 @@ route_match_ip_nexthop_prefix_len(void *rule, const struct prefix *prefix,
p.prefix = nh_data->nexthop->gate.ipv4;
p.prefixlen = IPV4_MAX_BITLEN;
break;
default:
case NEXTHOP_TYPE_IPV6:
case NEXTHOP_TYPE_IPV6_IFINDEX:
case NEXTHOP_TYPE_BLACKHOLE:
return RMAP_NOMATCH;
}
return ((p.prefixlen == *prefixlen) ? RMAP_MATCH : RMAP_NOMATCH);

View File

@ -140,7 +140,7 @@ static int zebra_sr_policy_notify_update_client(struct zebra_sr_policy *policy,
stream_putc(s, IPV6_MAX_BITLEN);
stream_put(s, &policy->endpoint.ipaddr_v6, IPV6_MAX_BYTELEN);
break;
default:
case IPADDR_NONE:
flog_warn(EC_LIB_DEVELOPMENT,
"%s: unknown policy endpoint address family: %u",
__func__, policy->endpoint.ipa_type);
@ -202,7 +202,7 @@ static void zebra_sr_policy_notify_update(struct zebra_sr_policy *policy)
p.prefixlen = IPV6_MAX_BITLEN;
p.u.prefix6 = policy->endpoint.ipaddr_v6;
break;
default:
case IPADDR_NONE:
flog_warn(EC_LIB_DEVELOPMENT,
"%s: unknown policy endpoint address family: %u",
__func__, policy->endpoint.ipa_type);

View File

@ -405,7 +405,8 @@ static void show_nexthop_detail_helper(struct vty *vty,
}
break;
default:
case NEXTHOP_TYPE_IFINDEX:
case NEXTHOP_TYPE_BLACKHOLE:
break;
}