session: lookup/rules table improvements and cleanup
[vpp.git] / src / vnet / session / segment_manager.c
index f35dec7..f5a4024 100644 (file)
@@ -217,6 +217,12 @@ segment_manager_app_detached (segment_manager_t * sm)
   return (sm->app_index == SEGMENT_MANAGER_INVALID_APP_INDEX);
 }
 
+void
+segment_manager_app_detach (segment_manager_t * sm)
+{
+  sm->app_index = SEGMENT_MANAGER_INVALID_APP_INDEX;
+}
+
 static void
 segment_manager_del_segment (segment_manager_t * sm, u32 segment_index)
 {
@@ -273,7 +279,7 @@ segment_manager_del_sessions (segment_manager_t * sm)
          if (session->session_state != SESSION_STATE_CLOSED)
            {
              session->session_state = SESSION_STATE_CLOSED;
-             session_send_session_evt_to_thread (stream_session_handle
+             session_send_session_evt_to_thread (session_handle
                                                  (session),
                                                  FIFO_EVENT_DISCONNECT,
                                                  thread_index);
@@ -325,6 +331,7 @@ segment_manager_del (segment_manager_t * sm)
 void
 segment_manager_init_del (segment_manager_t * sm)
 {
+  segment_manager_app_detach (sm);
   if (segment_manager_has_fifos (sm))
     segment_manager_del_sessions (sm);
   else