tomaswolf opened a new pull request, #415: URL: https://github.com/apache/mina-sshd/pull/415
During KEX we may queue up higher-level packets. When KEX ends, we flush this queue, writing all these queued packets. When writing a queued packet fails, previous code handled the failure wrongly, leading to an inconsistent state that could cause an endless loop in writeOrEnqueue. Fix this by making sure that (a) kexFlushed is true also in this case, and (b) by fulfilling the kexFlushedFuture and closing the session outside of the critical region. Because kexFlushed = true now also on failure, drain the queue and set up all the queued futures such that they will be fulfilled with the exception. Additionally, do the same if the session closes while we're still flushing queued packets. Fixes #414. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@mina.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@mina.apache.org For additional commands, e-mail: dev-h...@mina.apache.org