summaryrefslogtreecommitdiffstats
path: root/src/vnet/ip-neighbor/ip_neighbor_api.c
diff options
context:
space:
mode:
authorNeale Ranns <nranns@cisco.com>2020-04-02 17:08:28 +0000
committerNeale Ranns <nranns@cisco.com>2020-04-23 08:15:39 +0000
commitc87fbb417a580bf8e93d0176dba6a90b3cd6a787 (patch)
treea412c1c9afb4f8728632164d731f1adf67bfd6d3 /src/vnet/ip-neighbor/ip_neighbor_api.c
parentc17ff6ec3b69ef228047bf346e0b524c48d2c96e (diff)
ip-neighbor: Replace feature for the ip-neighbor data-base
Type: feature DB replace is implemented with a mark and sweep algorithm (just the the FIB) Signed-off-by: Neale Ranns <nranns@cisco.com> Change-Id: I54ab06e11552219e2a18e1b4a87d531321cf3829
Diffstat (limited to 'src/vnet/ip-neighbor/ip_neighbor_api.c')
-rw-r--r--src/vnet/ip-neighbor/ip_neighbor_api.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/vnet/ip-neighbor/ip_neighbor_api.c b/src/vnet/ip-neighbor/ip_neighbor_api.c
index ec1e493f368..86587fab31b 100644
--- a/src/vnet/ip-neighbor/ip_neighbor_api.c
+++ b/src/vnet/ip-neighbor/ip_neighbor_api.c
@@ -275,6 +275,32 @@ vl_api_ip_neighbor_config_t_handler (vl_api_ip_neighbor_config_t * mp)
REPLY_MACRO (VL_API_IP_NEIGHBOR_CONFIG_REPLY);
}
+static void
+vl_api_ip_neighbor_replace_begin_t_handler (vl_api_ip_neighbor_replace_begin_t
+ * mp)
+{
+ vl_api_ip_neighbor_replace_begin_reply_t *rmp;
+ int rv = 0;
+
+ ip_neighbor_mark (IP46_TYPE_IP4);
+ ip_neighbor_mark (IP46_TYPE_IP6);
+
+ REPLY_MACRO (VL_API_IP_NEIGHBOR_REPLACE_BEGIN_REPLY);
+}
+
+static void
+vl_api_ip_neighbor_replace_end_t_handler (vl_api_ip_neighbor_replace_end_t *
+ mp)
+{
+ vl_api_ip_neighbor_replace_end_reply_t *rmp;
+ int rv = 0;
+
+ ip_neighbor_sweep (IP46_TYPE_IP4);
+ ip_neighbor_sweep (IP46_TYPE_IP6);
+
+ REPLY_MACRO (VL_API_IP_NEIGHBOR_REPLACE_END_REPLY);
+}
+
#define vl_msg_name_crc_list
#include <vnet/ip-neighbor/ip_neighbor.api.h>
#undef vl_msg_name_crc_list