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

Reply via email to