summaryrefslogtreecommitdiffstats
path: root/clientloop.c
diff options
context:
space:
mode:
authordjm@openbsd.org <djm@openbsd.org>2022-04-20 04:19:11 +0000
committerDamien Miller <djm@mindrot.org>2022-04-20 15:08:54 +1000
commitfec014785de198b9a325d1b94e324bb958c5fe7b (patch)
treeab60bc19e921a7ea0765abf6c55cdcf9a59a25fd /clientloop.c
parente68154b0d4f0f5085a050ea896955da1b1be6e30 (diff)
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
Diffstat (limited to 'clientloop.c')
-rw-r--r--clientloop.c7
1 files changed, 3 insertions, 4 deletions
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 <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, 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)