diff options
author | Florin Coras <fcoras@cisco.com> | 2023-12-12 14:01:43 -0800 |
---|---|---|
committer | Dave Barach <vpp@barachs.net> | 2024-01-09 17:07:26 +0000 |
commit | 5afc13d594bf874092e135a8dc94d30c4537526b (patch) | |
tree | 6c73bd665cb422b8c8b82d2d5a58b1dc88ac08f4 /src | |
parent | 2b5bc3bce6fc5d4a2bbe1342522c62f9da0efd19 (diff) |
session: avoid spurious closed notifications
Type: fix
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ia98556e7ae61547cf153c78ec085cd4248bee74a
Diffstat (limited to 'src')
-rw-r--r-- | src/vnet/session/session.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/vnet/session/session.c b/src/vnet/session/session.c index 9ac9229d4db..2afc37a77f8 100644 --- a/src/vnet/session/session.c +++ b/src/vnet/session/session.c @@ -1184,6 +1184,9 @@ session_transport_closed_notify (transport_connection_t * tc) if (!(s = session_get_if_valid (tc->s_index, tc->thread_index))) return; + if (s->session_state >= SESSION_STATE_TRANSPORT_CLOSED) + return; + /* Transport thinks that app requested close but it actually didn't. * Can happen for tcp: * 1)if fin and rst are received in close succession. |