session: avoid spurious disconnect and reset ntfs 80/40180/2
authorFlorin Coras <fcoras@cisco.com>
Thu, 11 Jan 2024 16:56:04 +0000 (11:56 -0500)
committerDave Barach <vpp@barachs.net>
Mon, 15 Jan 2024 13:11:24 +0000 (13:11 +0000)
Type: fix

Change-Id: Icdc9d1c8b7b29827ce17920dae64a365bb8a4e40
Signed-off-by: Florin Coras <fcoras@cisco.com>
src/vnet/session/session_input.c

index 91e4b90..e686881 100644 (file)
@@ -194,11 +194,13 @@ app_worker_flush_events_inline (app_worker_t *app_wrk, u32 thread_index,
          break;
        case SESSION_CTRL_EVT_DISCONNECTED:
          s = session_get (evt->session_index, thread_index);
-         app->cb_fns.session_disconnect_callback (s);
+         if (s->session_state <= SESSION_STATE_TRANSPORT_CLOSING)
+           app->cb_fns.session_disconnect_callback (s);
          break;
        case SESSION_CTRL_EVT_RESET:
          s = session_get (evt->session_index, thread_index);
-         app->cb_fns.session_reset_callback (s);
+         if (s->session_state <= SESSION_STATE_TRANSPORT_CLOSING)
+           app->cb_fns.session_reset_callback (s);
          break;
        case SESSION_CTRL_EVT_UNLISTEN_REPLY:
          if (is_builtin)