summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@opensourcerouting.org>2024-10-16 12:23:23 +0200
committerDavid Lamparter <equinox@opensourcerouting.org>2024-10-16 13:00:11 +0200
commit49cf311d46bed1b656251c1aa259f4f043095a9c (patch)
tree10ae7aa36d2d939ac567546bf0676fe0e7b96939
parent40dce0be6a8f1cad15fce434177b48f9e69b96dd (diff)
*: clang-SA friendly switch-enum-return-string
clang-19's SA complains about unused initializers for this kind of "switch (enum) { return string }" kind of code. Use direct string return values to avoid the issue. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
-rw-r--r--bgpd/bgp_fsm.c73
-rw-r--r--lib/zclient.h61
-rw-r--r--zebra/zebra_dplane.c179
3 files changed, 101 insertions, 212 deletions
diff --git a/bgpd/bgp_fsm.c b/bgpd/bgp_fsm.c
index cdd9b7ae4d..567af5bb75 100644
--- a/bgpd/bgp_fsm.c
+++ b/bgpd/bgp_fsm.c
@@ -2776,99 +2776,72 @@ int bgp_gr_update_all(struct bgp *bgp, enum global_gr_command global_gr_cmd)
const char *print_peer_gr_mode(enum peer_mode pr_mode)
{
- const char *peer_gr_mode = NULL;
-
switch (pr_mode) {
case PEER_HELPER:
- peer_gr_mode = "PEER_HELPER";
- break;
+ return "PEER_HELPER";
case PEER_GR:
- peer_gr_mode = "PEER_GR";
- break;
+ return "PEER_GR";
case PEER_DISABLE:
- peer_gr_mode = "PEER_DISABLE";
- break;
+ return "PEER_DISABLE";
case PEER_INVALID:
- peer_gr_mode = "PEER_INVALID";
- break;
+ return "PEER_INVALID";
case PEER_GLOBAL_INHERIT:
- peer_gr_mode = "PEER_GLOBAL_INHERIT";
- break;
+ return "PEER_GLOBAL_INHERIT";
}
- return peer_gr_mode;
+ return NULL;
}
const char *print_peer_gr_cmd(enum peer_gr_command pr_gr_cmd)
{
- const char *peer_gr_cmd = NULL;
-
switch (pr_gr_cmd) {
case PEER_GR_CMD:
- peer_gr_cmd = "PEER_GR_CMD";
- break;
+ return "PEER_GR_CMD";
case NO_PEER_GR_CMD:
- peer_gr_cmd = "NO_PEER_GR_CMD";
- break;
+ return "NO_PEER_GR_CMD";
case PEER_DISABLE_CMD:
- peer_gr_cmd = "PEER_DISABLE_GR_CMD";
- break;
+ return "PEER_DISABLE_GR_CMD";
case NO_PEER_DISABLE_CMD:
- peer_gr_cmd = "NO_PEER_DISABLE_GR_CMD";
- break;
+ return "NO_PEER_DISABLE_GR_CMD";
case PEER_HELPER_CMD:
- peer_gr_cmd = "PEER_HELPER_CMD";
- break;
+ return "PEER_HELPER_CMD";
case NO_PEER_HELPER_CMD:
- peer_gr_cmd = "NO_PEER_HELPER_CMD";
- break;
+ return "NO_PEER_HELPER_CMD";
}
- return peer_gr_cmd;
+ return NULL;
}
const char *print_global_gr_mode(enum global_mode gl_mode)
{
- const char *global_gr_mode = "???";
-
switch (gl_mode) {
case GLOBAL_HELPER:
- global_gr_mode = "GLOBAL_HELPER";
- break;
+ return "GLOBAL_HELPER";
case GLOBAL_GR:
- global_gr_mode = "GLOBAL_GR";
- break;
+ return "GLOBAL_GR";
case GLOBAL_DISABLE:
- global_gr_mode = "GLOBAL_DISABLE";
- break;
+ return "GLOBAL_DISABLE";
case GLOBAL_INVALID:
- global_gr_mode = "GLOBAL_INVALID";
- break;
+ return "GLOBAL_INVALID";
}
- return global_gr_mode;
+ return "???";
}
const char *print_global_gr_cmd(enum global_gr_command gl_gr_cmd)
{
- const char *global_gr_cmd = NULL;
-
switch (gl_gr_cmd) {
case GLOBAL_GR_CMD:
- global_gr_cmd = "GLOBAL_GR_CMD";
- break;
+ return "GLOBAL_GR_CMD";
case NO_GLOBAL_GR_CMD:
- global_gr_cmd = "NO_GLOBAL_GR_CMD";
- break;
+ return "NO_GLOBAL_GR_CMD";
case GLOBAL_DISABLE_CMD:
- global_gr_cmd = "GLOBAL_DISABLE_CMD";
- break;
+ return "GLOBAL_DISABLE_CMD";
case NO_GLOBAL_DISABLE_CMD:
- global_gr_cmd = "NO_GLOBAL_DISABLE_CMD";
- break;
+ return "NO_GLOBAL_DISABLE_CMD";
}
- return global_gr_cmd;
+ return NULL;
}
enum global_mode bgp_global_gr_mode_get(struct bgp *bgp)
diff --git a/lib/zclient.h b/lib/zclient.h
index 91c0c9ed6d..6da9558aa5 100644
--- a/lib/zclient.h
+++ b/lib/zclient.h
@@ -251,21 +251,16 @@ enum zebra_error_types {
static inline const char *zebra_error_type2str(enum zebra_error_types type)
{
- const char *ret = "UNKNOWN";
-
switch (type) {
case ZEBRA_UNKNOWN_ERROR:
- ret = "ZEBRA_UNKNOWN_ERROR";
- break;
+ return "ZEBRA_UNKNOWN_ERROR";
case ZEBRA_NO_VRF:
- ret = "ZEBRA_NO_VRF";
- break;
+ return "ZEBRA_NO_VRF";
case ZEBRA_INVALID_MSG_TYPE:
- ret = "ZEBRA_INVALID_MSG_TYPE";
- break;
+ return "ZEBRA_INVALID_MSG_TYPE";
}
- return ret;
+ return "UNKNOWN";
}
struct redist_proto {
@@ -780,69 +775,51 @@ enum zclient_send_status {
static inline const char *
zapi_nhg_notify_owner2str(enum zapi_nhg_notify_owner note)
{
- const char *ret = "UNKNOWN";
-
switch (note) {
case ZAPI_NHG_FAIL_INSTALL:
- ret = "ZAPI_NHG_FAIL_INSTALL";
- break;
+ return "ZAPI_NHG_FAIL_INSTALL";
case ZAPI_NHG_INSTALLED:
- ret = "ZAPI_NHG_INSTALLED";
- break;
+ return "ZAPI_NHG_INSTALLED";
case ZAPI_NHG_REMOVE_FAIL:
- ret = "ZAPI_NHG_REMOVE_FAIL";
- break;
+ return "ZAPI_NHG_REMOVE_FAIL";
case ZAPI_NHG_REMOVED:
- ret = "ZAPI_NHG_REMOVED";
- break;
+ return "ZAPI_NHG_REMOVED";
}
- return ret;
+ return "UNKNOWN";
}
static inline const char *
zapi_rule_notify_owner2str(enum zapi_rule_notify_owner note)
{
- const char *ret = "UNKNOWN";
-
switch (note) {
case ZAPI_RULE_FAIL_INSTALL:
- ret = "ZAPI_RULE_FAIL_INSTALL";
- break;
+ return "ZAPI_RULE_FAIL_INSTALL";
case ZAPI_RULE_INSTALLED:
- ret = "ZAPI_RULE_INSTALLED";
- break;
+ return "ZAPI_RULE_INSTALLED";
case ZAPI_RULE_FAIL_REMOVE:
- ret = "ZAPI_RULE_FAIL_REMOVE";
- break;
+ return "ZAPI_RULE_FAIL_REMOVE";
case ZAPI_RULE_REMOVED:
- ret = "ZAPI_RULE_REMOVED";
- break;
+ return "ZAPI_RULE_REMOVED";
}
- return ret;
+ return "UNKNOWN";
}
static inline const char *zapi_srv6_sid_notify2str(enum zapi_srv6_sid_notify note)
{
- const char *ret = "UNKNOWN";
-
switch (note) {
case ZAPI_SRV6_SID_FAIL_ALLOC:
- ret = "ZAPI_SRV6_SID_FAIL_ALLOC";
- break;
+ return "ZAPI_SRV6_SID_FAIL_ALLOC";
case ZAPI_SRV6_SID_ALLOCATED:
- ret = "ZAPI_SRV6_SID_ALLOCATED";
- break;
+ return "ZAPI_SRV6_SID_ALLOCATED";
case ZAPI_SRV6_SID_FAIL_RELEASE:
- ret = "ZAPI_SRV6_SID_FAIL_RELEASE";
- break;
+ return "ZAPI_SRV6_SID_FAIL_RELEASE";
case ZAPI_SRV6_SID_RELEASED:
- ret = "ZAPI_SRV6_SID_RELEASED";
- break;
+ return "ZAPI_SRV6_SID_RELEASED";
}
- return ret;
+ return "UNKNOWN";
}
/* Zebra MAC types */
diff --git a/zebra/zebra_dplane.c b/zebra/zebra_dplane.c
index dd2d212dc9..88c1a04938 100644
--- a/zebra/zebra_dplane.c
+++ b/zebra/zebra_dplane.c
@@ -1046,144 +1046,102 @@ enum dplane_op_e dplane_ctx_get_op(const struct zebra_dplane_ctx *ctx)
const char *dplane_op2str(enum dplane_op_e op)
{
- const char *ret = "UNKNOWN";
-
switch (op) {
case DPLANE_OP_NONE:
- ret = "NONE";
- break;
+ return "NONE";
/* Route update */
case DPLANE_OP_ROUTE_INSTALL:
- ret = "ROUTE_INSTALL";
- break;
+ return "ROUTE_INSTALL";
case DPLANE_OP_ROUTE_UPDATE:
- ret = "ROUTE_UPDATE";
- break;
+ return "ROUTE_UPDATE";
case DPLANE_OP_ROUTE_DELETE:
- ret = "ROUTE_DELETE";
- break;
+ return "ROUTE_DELETE";
case DPLANE_OP_ROUTE_NOTIFY:
- ret = "ROUTE_NOTIFY";
- break;
+ return "ROUTE_NOTIFY";
/* Nexthop update */
case DPLANE_OP_NH_INSTALL:
- ret = "NH_INSTALL";
- break;
+ return "NH_INSTALL";
case DPLANE_OP_NH_UPDATE:
- ret = "NH_UPDATE";
- break;
+ return "NH_UPDATE";
case DPLANE_OP_NH_DELETE:
- ret = "NH_DELETE";
- break;
+ return "NH_DELETE";
case DPLANE_OP_LSP_INSTALL:
- ret = "LSP_INSTALL";
- break;
+ return "LSP_INSTALL";
case DPLANE_OP_LSP_UPDATE:
- ret = "LSP_UPDATE";
- break;
+ return "LSP_UPDATE";
case DPLANE_OP_LSP_DELETE:
- ret = "LSP_DELETE";
- break;
+ return "LSP_DELETE";
case DPLANE_OP_LSP_NOTIFY:
- ret = "LSP_NOTIFY";
- break;
+ return "LSP_NOTIFY";
case DPLANE_OP_PW_INSTALL:
- ret = "PW_INSTALL";
- break;
+ return "PW_INSTALL";
case DPLANE_OP_PW_UNINSTALL:
- ret = "PW_UNINSTALL";
- break;
+ return "PW_UNINSTALL";
case DPLANE_OP_SYS_ROUTE_ADD:
- ret = "SYS_ROUTE_ADD";
- break;
+ return "SYS_ROUTE_ADD";
case DPLANE_OP_SYS_ROUTE_DELETE:
- ret = "SYS_ROUTE_DEL";
- break;
+ return "SYS_ROUTE_DEL";
case DPLANE_OP_BR_PORT_UPDATE:
- ret = "BR_PORT_UPDATE";
- break;
+ return "BR_PORT_UPDATE";
case DPLANE_OP_ADDR_INSTALL:
- ret = "ADDR_INSTALL";
- break;
+ return "ADDR_INSTALL";
case DPLANE_OP_ADDR_UNINSTALL:
- ret = "ADDR_UNINSTALL";
- break;
+ return "ADDR_UNINSTALL";
case DPLANE_OP_MAC_INSTALL:
- ret = "MAC_INSTALL";
- break;
+ return "MAC_INSTALL";
case DPLANE_OP_MAC_DELETE:
- ret = "MAC_DELETE";
- break;
+ return "MAC_DELETE";
case DPLANE_OP_NEIGH_INSTALL:
- ret = "NEIGH_INSTALL";
- break;
+ return "NEIGH_INSTALL";
case DPLANE_OP_NEIGH_UPDATE:
- ret = "NEIGH_UPDATE";
- break;
+ return "NEIGH_UPDATE";
case DPLANE_OP_NEIGH_DELETE:
- ret = "NEIGH_DELETE";
- break;
+ return "NEIGH_DELETE";
case DPLANE_OP_VTEP_ADD:
- ret = "VTEP_ADD";
- break;
+ return "VTEP_ADD";
case DPLANE_OP_VTEP_DELETE:
- ret = "VTEP_DELETE";
- break;
+ return "VTEP_DELETE";
case DPLANE_OP_RULE_ADD:
- ret = "RULE_ADD";
- break;
+ return "RULE_ADD";
case DPLANE_OP_RULE_DELETE:
- ret = "RULE_DELETE";
- break;
+ return "RULE_DELETE";
case DPLANE_OP_RULE_UPDATE:
- ret = "RULE_UPDATE";
- break;
+ return "RULE_UPDATE";
case DPLANE_OP_NEIGH_DISCOVER:
- ret = "NEIGH_DISCOVER";
- break;
+ return "NEIGH_DISCOVER";
case DPLANE_OP_IPTABLE_ADD:
- ret = "IPTABLE_ADD";
- break;
+ return "IPTABLE_ADD";
case DPLANE_OP_IPTABLE_DELETE:
- ret = "IPTABLE_DELETE";
- break;
+ return "IPTABLE_DELETE";
case DPLANE_OP_IPSET_ADD:
- ret = "IPSET_ADD";
- break;
+ return "IPSET_ADD";
case DPLANE_OP_IPSET_DELETE:
- ret = "IPSET_DELETE";
- break;
+ return "IPSET_DELETE";
case DPLANE_OP_IPSET_ENTRY_ADD:
- ret = "IPSET_ENTRY_ADD";
- break;
+ return "IPSET_ENTRY_ADD";
case DPLANE_OP_IPSET_ENTRY_DELETE:
- ret = "IPSET_ENTRY_DELETE";
- break;
+ return "IPSET_ENTRY_DELETE";
case DPLANE_OP_NEIGH_IP_INSTALL:
- ret = "NEIGH_IP_INSTALL";
- break;
+ return "NEIGH_IP_INSTALL";
case DPLANE_OP_NEIGH_IP_DELETE:
- ret = "NEIGH_IP_DELETE";
- break;
+ return "NEIGH_IP_DELETE";
case DPLANE_OP_NEIGH_TABLE_UPDATE:
- ret = "NEIGH_TABLE_UPDATE";
- break;
+ return "NEIGH_TABLE_UPDATE";
case DPLANE_OP_GRE_SET:
- ret = "GRE_SET";
- break;
+ return "GRE_SET";
case DPLANE_OP_INTF_ADDR_ADD:
return "INTF_ADDR_ADD";
@@ -1195,72 +1153,53 @@ const char *dplane_op2str(enum dplane_op_e op)
return "INTF_NETCONFIG";
case DPLANE_OP_INTF_INSTALL:
- ret = "INTF_INSTALL";
- break;
+ return "INTF_INSTALL";
case DPLANE_OP_INTF_UPDATE:
- ret = "INTF_UPDATE";
- break;
+ return "INTF_UPDATE";
case DPLANE_OP_INTF_DELETE:
- ret = "INTF_DELETE";
- break;
+ return "INTF_DELETE";
case DPLANE_OP_TC_QDISC_INSTALL:
- ret = "TC_QDISC_INSTALL";
- break;
+ return "TC_QDISC_INSTALL";
case DPLANE_OP_TC_QDISC_UNINSTALL:
- ret = "TC_QDISC_UNINSTALL";
- break;
+ return "TC_QDISC_UNINSTALL";
case DPLANE_OP_TC_CLASS_ADD:
- ret = "TC_CLASS_ADD";
- break;
+ return "TC_CLASS_ADD";
case DPLANE_OP_TC_CLASS_DELETE:
- ret = "TC_CLASS_DELETE";
- break;
+ return "TC_CLASS_DELETE";
case DPLANE_OP_TC_CLASS_UPDATE:
- ret = "TC_CLASS_UPDATE";
- break;
+ return "TC_CLASS_UPDATE";
case DPLANE_OP_TC_FILTER_ADD:
- ret = "TC_FILTER_ADD";
- break;
+ return "TC_FILTER_ADD";
case DPLANE_OP_TC_FILTER_DELETE:
- ret = "TC_FILTER_DELETE";
- break;
+ return "TC_FILTER_DELETE";
case DPLANE_OP_TC_FILTER_UPDATE:
- ret = "TC__FILTER_UPDATE";
- break;
+ return "TC__FILTER_UPDATE";
case DPLANE_OP_STARTUP_STAGE:
- ret = "STARTUP_STAGE";
- break;
+ return "STARTUP_STAGE";
case DPLANE_OP_SRV6_ENCAP_SRCADDR_SET:
- ret = "SRV6_ENCAP_SRCADDR_SET";
- break;
+ return "SRV6_ENCAP_SRCADDR_SET";
case DPLANE_OP_VLAN_INSTALL:
- ret = "NEW_VLAN";
- break;
+ return "NEW_VLAN";
}
- return ret;
+ return "UNKNOWN";
}
const char *dplane_res2str(enum zebra_dplane_result res)
{
- const char *ret = "<Unknown>";
-
switch (res) {
case ZEBRA_DPLANE_REQUEST_FAILURE:
- ret = "FAILURE";
- break;
+ return "FAILURE";
case ZEBRA_DPLANE_REQUEST_QUEUED:
- ret = "QUEUED";
- break;
+ return "QUEUED";
case ZEBRA_DPLANE_REQUEST_SUCCESS:
- ret = "SUCCESS";
- break;
+ return "SUCCESS";
}
- return ret;
+ return "<Unknown>";
}
void dplane_ctx_set_dest(struct zebra_dplane_ctx *ctx,