From: liuyacan Date: Fri, 20 Aug 2021 02:25:43 +0000 (+0800) Subject: udp: fill rmt info if session is connection less X-Git-Tag: v22.02-rc0~73 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=0242fd81ca6d13cad960870df09bf5732b892991;p=vpp.git 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 --- 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;