From 0242fd81ca6d13cad960870df09bf5732b892991 Mon Sep 17 00:00:00 2001 From: liuyacan Date: Fri, 20 Aug 2021 10:25:43 +0800 Subject: [PATCH] udp: fill rmt info if session is connection less The app may send packet to different remote via sendto() with same socket (without calling connect()). In such scenario, remote address need to be filled in. Type: fix Signed-off-by: liuyacan Change-Id: I49deb308668c05442f237e97acc9bfa239782482 --- src/vnet/session/session_node.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vnet/session/session_node.c b/src/vnet/session/session_node.c index 18fb61d25e9..72df07b1d6d 100644 --- a/src/vnet/session/session_node.c +++ b/src/vnet/session/session_node.c @@ -973,7 +973,7 @@ session_tx_fill_buffer (vlib_main_t * vm, session_tx_context_t * ctx, n_bytes_read = svm_fifo_peek (f, offset, deq_now, data0); ASSERT (n_bytes_read > 0); - if (ctx->s->session_state == SESSION_STATE_LISTENING) + if (transport_connection_is_cless (ctx->tc)) { ip_copy (&ctx->tc->rmt_ip, &hdr->rmt_ip, ctx->tc->is_ip4); ctx->tc->rmt_port = hdr->rmt_port; -- 2.16.6