ip-neighbor: fix aged neighbor probe 52/38852/2
authorSergio Gonzalez Monroy <monroy@anapaya.net>
Wed, 3 May 2023 12:26:44 +0000 (14:26 +0200)
committerNeale Ranns <neale@graphiant.com>
Sun, 21 May 2023 23:06:41 +0000 (23:06 +0000)
The order of the parameters when calling the ip_neighbor_probe_dst for
an aged neighbor is wrong and given that it runs on the master thread,
probes for IPv6 neighbors were never sent, leading to a certain neighbor
strike out and death and its removal from the neighbor cache.

Change-Id: Ic021bd0ece05bd2c1c6ab90eab0e2dc27cb10360
Type: fix
Fixes: fd2417b2a42
Signed-off-by: Sergio Gonzalez Monroy <monroy@anapaya.net>
src/vnet/ip-neighbor/ip_neighbor.c

index a177da9..8e997e4 100644 (file)
@@ -1598,8 +1598,8 @@ ip_neighbour_age_out (index_t ipni, f64 now, f64 * wait)
        }
       else
        {
-         ip_neighbor_probe_dst (ip_neighbor_get_sw_if_index (ipn), af,
-                                vlib_get_thread_index (),
+         ip_neighbor_probe_dst (ip_neighbor_get_sw_if_index (ipn),
+                                vlib_get_thread_index (), af,
                                 &ip_addr_46 (&ipn->ipn_key->ipnk_ip));
 
          ipn->ipn_n_probes++;