+static void
+ vl_api_want_ip_neighbor_events_v2_t_handler
+ (vl_api_want_ip_neighbor_events_v2_t * mp)
+{
+ vl_api_want_ip_neighbor_events_reply_t *rmp;
+ ip_address_t ip;
+ int rv = 0;
+
+ if (mp->sw_if_index != ~0)
+ VALIDATE_SW_IF_INDEX (mp);
+ ip_address_decode2 (&mp->ip, &ip);
+
+ ip_neighbor_watcher_t watch = {
+ .ipw_client = mp->client_index,
+ .ipw_pid = mp->pid,
+ .ipw_api_version = 2,
+ };
+
+ if (mp->enable)
+ ip_neighbor_watch (&ip, ntohl (mp->sw_if_index), &watch);
+ else
+ ip_neighbor_unwatch (&ip, ntohl (mp->sw_if_index), &watch);
+
+ BAD_SW_IF_INDEX_LABEL;
+ REPLY_MACRO (VL_API_WANT_IP_NEIGHBOR_EVENTS_V2_REPLY);
+}
+