From: Florin Coras Date: Wed, 8 Feb 2023 17:47:54 +0000 (-0800) Subject: session: accept lcl ip updates on cl sessions X-Git-Tag: v23.10-rc0~251 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=7a6532bb9f3b9c429f92d11a6ccbf55638906d0a;p=vpp.git session: accept lcl ip updates on cl sessions Allow apps/vcl to provide updated local ips for dgrams. In particular, allow sessions bound to 0/0 to send data with valid local ips. Type: improvement Signed-off-by: Florin Coras Change-Id: I50a086b1c252731a32a15b6a181ad3dba0c687e0 --- diff --git a/src/vnet/session/session_node.c b/src/vnet/session/session_node.c index fd57f08aed7..7a630715591 100644 --- a/src/vnet/session/session_node.c +++ b/src/vnet/session/session_node.c @@ -1101,6 +1101,8 @@ session_tx_fill_buffer (session_worker_t *wrk, session_tx_context_t *ctx, if (transport_connection_is_cless (ctx->tc)) { ip_copy (&ctx->tc->rmt_ip, &hdr->rmt_ip, ctx->tc->is_ip4); + ip_copy (&ctx->tc->lcl_ip, &hdr->lcl_ip, ctx->tc->is_ip4); + /* Local port assumed to be bound, not overwriting it */ ctx->tc->rmt_port = hdr->rmt_port; } hdr->data_offset += n_bytes_read;