From 45db885a6a050aa809ae333bf6c14349db644822 Mon Sep 17 00:00:00 2001 From: Neale Ranns Date: Wed, 9 Jan 2019 00:04:04 -0800 Subject: ARP/ND: copy opaque2 persistent fields to new packet Change-Id: Ic65f686aaccaf8450732d88d7471b587faccaa9d Signed-off-by: Neale Ranns --- src/vnet/ip/ip6_neighbor.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/vnet/ip/ip6_neighbor.c') diff --git a/src/vnet/ip/ip6_neighbor.c b/src/vnet/ip/ip6_neighbor.c index fde3a7e71d4..3acfb1a4897 100755 --- a/src/vnet/ip/ip6_neighbor.c +++ b/src/vnet/ip/ip6_neighbor.c @@ -3284,6 +3284,10 @@ ip6_discover_neighbor_inline (vlib_main_t * vm, if (!h0) continue; + /* copy the persistent fields from the original */ + b0 = vlib_get_buffer (vm, bi0); + clib_memcpy_fast (b0->opaque2, p0->opaque2, sizeof (p0->opaque2)); + /* * Build ethernet header. * Choose source address based on destination lookup @@ -3324,7 +3328,6 @@ ip6_discover_neighbor_inline (vlib_main_t * vm, ASSERT (bogus_length == 0); vlib_buffer_copy_trace_flag (vm, p0, bi0); - b0 = vlib_get_buffer (vm, bi0); vnet_buffer (b0)->sw_if_index[VLIB_TX] = vnet_buffer (p0)->sw_if_index[VLIB_TX]; -- cgit 1.2.3-korg