From 7385e1babf6eef586c79ad23f8e541aaf608c4e5 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Wed, 24 Oct 2018 20:11:33 +0200 Subject: [PATCH] ssh: Fix possible infinite loop in case of an read error. * agent/command-ssh.c (ssh_handler_add_identity): Handle other errors than EOF. -- GnuPG-bug-id: 4221 Signed-off-by: Werner Koch --- agent/command-ssh.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/agent/command-ssh.c b/agent/command-ssh.c index ff1f0a5bc..86fd092ff 100644 --- a/agent/command-ssh.c +++ b/agent/command-ssh.c @@ -3249,9 +3249,10 @@ ssh_handler_add_identity (ctrl_t ctrl, estream_t request, estream_t response) while (1) { err = stream_read_byte (request, &b); - if (gpg_err_code (err) == GPG_ERR_EOF) - { - err = 0; + if (err) + { + if (gpg_err_code (err) == GPG_ERR_EOF) + err = 0; break; }