From fec014785de198b9a325d1b94e324bb958c5fe7b Mon Sep 17 00:00:00 2001 From: "djm@openbsd.org" Date: Wed, 20 Apr 2022 04:19:11 +0000 Subject: upstream: Try to continue running local I/O for channels in state OPEN during SSH transport rekeying. The most visible benefit is that it should make ~-escapes work in the client (e.g. to exit) if the connection happened to have stalled during a rekey event. Based work by and ok dtucker@ OpenBSD-Commit-ID: a66e8f254e92edd4ce09c9f750883ec8f1ea5f45 --- clientloop.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'clientloop.c') diff --git a/clientloop.c b/clientloop.c index f8350e67..1d80683c 100644 --- a/clientloop.c +++ b/clientloop.c @@ -1,4 +1,4 @@ -/* $OpenBSD: clientloop.c,v 1.378 2022/01/22 00:49:34 djm Exp $ */ +/* $OpenBSD: clientloop.c,v 1.379 2022/04/20 04:19:11 djm Exp $ */ /* * Author: Tatu Ylonen * Copyright (c) 1995 Tatu Ylonen , Espoo, Finland @@ -1348,9 +1348,8 @@ client_loop(struct ssh *ssh, int have_pty, int escape_char_arg, if (quit_pending) break; - /* Do channel operations unless rekeying in progress. */ - if (!ssh_packet_is_rekeying(ssh)) - channel_after_poll(ssh, pfd, npfd_active); + /* Do channel operations. */ + channel_after_poll(ssh, pfd, npfd_active); /* Buffer input from the connection. */ if (conn_in_ready) -- cgit v1.2.3