X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fsession%2Fsession.c;h=81c93064d38dd185cd6ef35475c14e8668dec398;hb=c01d578a625fb136bc33b0eb9c19907769a67989;hp=7b50950fe01738a0038d0cdfc17e167b4b062517;hpb=eb97e5f548b009ffa92efa3f778b4a7f6f40b7eb;p=vpp.git diff --git a/src/vnet/session/session.c b/src/vnet/session/session.c index 7b50950fe01..81c93064d38 100644 --- a/src/vnet/session/session.c +++ b/src/vnet/session/session.c @@ -814,17 +814,22 @@ stream_session_delete_notify (transport_connection_t * tc) * from the app, do the whole disconnect since we might still * have lingering events */ stream_session_disconnect (s); + s->session_state = SESSION_STATE_CLOSED; break; case SESSION_STATE_CLOSING: /* Cleanup lookup table. Transport needs to still be valid */ session_lookup_del_session (s); + s->session_state = SESSION_STATE_CLOSED; break; case SESSION_STATE_CLOSED: + case SESSION_STATE_ACCEPTING: stream_session_delete (s); break; + default: + /* Assume connection was not yet added the lookup table */ + session_free_w_fifos (s); + break; } - - s->session_state = SESSION_STATE_CLOSED; } /**