]> git.proxmox.com Git - mirror_frr.git/blobdiff - zebra/kernel_socket.c
zebra: Add a `mpls enable` interface node command
[mirror_frr.git] / zebra / kernel_socket.c
index 2741a2324230057ce072fe1a253157c7dc85b7f5..076e9c4dfab1204571d6bab6db32bc0f23a8ec66 100644 (file)
@@ -1529,7 +1529,7 @@ void kernel_update_multi(struct dplane_ctx_q *ctx_list)
 {
        struct zebra_dplane_ctx *ctx;
        struct dplane_ctx_q handled_list;
-       enum zebra_dplane_result res;
+       enum zebra_dplane_result res = ZEBRA_DPLANE_REQUEST_SUCCESS;
 
        TAILQ_INIT(&handled_list);
 
@@ -1611,9 +1611,27 @@ void kernel_update_multi(struct dplane_ctx_q *ctx_list)
                        res = ZEBRA_DPLANE_REQUEST_SUCCESS;
                        break;
 
-               default:
-                       res = ZEBRA_DPLANE_REQUEST_FAILURE;
+               case DPLANE_OP_INTF_NETCONFIG:
+                       res = kernel_intf_netconf_update(ctx);
                        break;
+
+               case DPLANE_OP_NONE:
+               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:
+                       zlog_err("Unhandled dplane data for %s",
+                                dplane_op2str(dplane_ctx_get_op(ctx)));
+                       res = ZEBRA_DPLANE_REQUEST_FAILURE;
                }
 
        skip_one: