summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2023-06-01 09:11:27 -0700
committerDave Barach <vpp@barachs.net>2023-06-02 16:04:59 +0000
commit645ac119e8f2602454050f5da6cafc4a22def7ff (patch)
tree08443cfb19c7bfddbd37417119203e69d1352512
parentf2b6edb149a32f455ce3ee13aff1acd0a3c2ab1d (diff)
session: cleanup cless listeners from session lookup
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Signed-off-by: Filip Tehlar <ftehlar@cisco.com> Change-Id: I46b8194ff00c6a0a4a2bc19df9991f037856cede
-rw-r--r--src/vnet/session/session.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/vnet/session/session.c b/src/vnet/session/session.c
index 1b9f9de2a1b..a07082b766c 100644
--- a/src/vnet/session/session.c
+++ b/src/vnet/session/session.c
@@ -1524,7 +1524,14 @@ session_stop_listen (session_t * s)
return SESSION_E_NONE;
if (!(tc->flags & TRANSPORT_CONNECTION_F_NO_LOOKUP))
- session_lookup_del_connection (tc);
+ {
+ if (transport_connection_is_cless (tc))
+ {
+ clib_memset (&tc->rmt_ip, 0, sizeof (tc->rmt_ip));
+ tc->rmt_port = 0;
+ }
+ session_lookup_del_connection (tc);
+ }
transport_stop_listen (tp, s->connection_index);
return 0;