diff options
Diffstat (limited to 'src/vnet/session')
-rw-r--r-- | src/vnet/session/session.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/vnet/session/session.c b/src/vnet/session/session.c index 0b66cf87c4d..b006cfaf2bb 100644 --- a/src/vnet/session/session.c +++ b/src/vnet/session/session.c @@ -1003,7 +1003,14 @@ session_stream_accept_notify (transport_connection_t * tc) if (!app_wrk) return -1; s->session_state = SESSION_STATE_ACCEPTING; - return app_worker_accept_notify (app_wrk, s); + if (app_worker_accept_notify (app_wrk, s)) + { + /* On transport delete, no notifications should be sent. Unless, the + * accept is retried and successful. */ + s->session_state = SESSION_STATE_CREATED; + return -1; + } + return 0; } /** |