summaryrefslogtreecommitdiff
path: root/sshconnect.c
diff options
context:
space:
mode:
authordjm@openbsd.org <djm@openbsd.org>2020-10-07 02:26:28 +0000
committerDamien Miller <djm@mindrot.org>2020-10-07 13:34:11 +1100
commit4aa2717d7517cff4bc423a6cfba3a2defb055aea (patch)
tree5812645d82a87094e04752cd5e36294e850788a5 /sshconnect.c
parent04c06d04475f1f673e9d9743710d194453fe3888 (diff)
downloadopenssh-git-4aa2717d7517cff4bc423a6cfba3a2defb055aea.tar.gz
upstream: Disable UpdateHostkeys when hostkey checking fails
If host key checking fails (i.e. a wrong host key is recorded for the server) and the user elects to continue (via StrictHostKeyChecking=no), then disable UpdateHostkeys for the session. reminded by Mark D. Baushke; ok markus@ OpenBSD-Commit-ID: 98b524f121f4252309dd21becd8c4cacb0c6042a
Diffstat (limited to 'sshconnect.c')
-rw-r--r--sshconnect.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sshconnect.c b/sshconnect.c
index c055773f..d73cecc8 100644
--- a/sshconnect.c
+++ b/sshconnect.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sshconnect.c,v 1.338 2020/10/07 02:24:51 djm Exp $ */
+/* $OpenBSD: sshconnect.c,v 1.339 2020/10/07 02:26:28 djm Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -1079,6 +1079,11 @@ check_host_key(char *hostname, struct sockaddr *hostaddr, u_short port,
options.tun_open = SSH_TUNMODE_NO;
cancelled_forwarding = 1;
}
+ if (options.update_hostkeys != 0) {
+ error("UpdateHostkeys is disabled because the host "
+ "key is not trusted.");
+ options.update_hostkeys = 0;
+ }
if (options.exit_on_forward_failure && cancelled_forwarding)
fatal("Error: forwarding disabled due to host key "
"check failure");