From 76401c5767ecdf701f4c77beee0b721c485321d5 Mon Sep 17 00:00:00 2001 From: Klement Sekera Date: Wed, 3 Mar 2021 22:14:55 +0100 Subject: nat: fix worker selection Use correct ports from SVR. Perform lookup of existing session for all cases to pick any created bypasses and derive correct thread indexes. Type: fix Change-Id: I1e3814c9e13cd4d9b8d65f514f7e9ab42df3c22e Signed-off-by: Klement Sekera --- src/plugins/nat/nat44-ed/nat44_ed_handoff.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/plugins/nat/nat44-ed/nat44_ed_handoff.c') diff --git a/src/plugins/nat/nat44-ed/nat44_ed_handoff.c b/src/plugins/nat/nat44-ed/nat44_ed_handoff.c index 6715ce2f2c4..e286df93a6e 100644 --- a/src/plugins/nat/nat44-ed/nat44_ed_handoff.c +++ b/src/plugins/nat/nat44-ed/nat44_ed_handoff.c @@ -157,10 +157,10 @@ nat44_worker_handoff_fn_inline (vlib_main_t * vm, if (is_in2out) { - ti[0] = sm->worker_in2out_cb (ip0, rx_fib_index0, is_output); - ti[1] = sm->worker_in2out_cb (ip1, rx_fib_index1, is_output); - ti[2] = sm->worker_in2out_cb (ip2, rx_fib_index2, is_output); - ti[3] = sm->worker_in2out_cb (ip3, rx_fib_index3, is_output); + ti[0] = sm->worker_in2out_cb (b[0], ip0, rx_fib_index0, is_output); + ti[1] = sm->worker_in2out_cb (b[1], ip1, rx_fib_index1, is_output); + ti[2] = sm->worker_in2out_cb (b[2], ip2, rx_fib_index2, is_output); + ti[3] = sm->worker_in2out_cb (b[3], ip3, rx_fib_index3, is_output); } else { @@ -218,7 +218,7 @@ nat44_worker_handoff_fn_inline (vlib_main_t * vm, if (is_in2out) { - ti[0] = sm->worker_in2out_cb (ip0, rx_fib_index0, is_output); + ti[0] = sm->worker_in2out_cb (b[0], ip0, rx_fib_index0, is_output); } else { -- cgit 1.2.3-korg