piece of UpdateHostkeys client strictification: when updating known_hosts
authordjm <djm@openbsd.org>
Thu, 6 Jan 2022 22:02:52 +0000 (22:02 +0000)
committerdjm <djm@openbsd.org>
Thu, 6 Jan 2022 22:02:52 +0000 (22:02 +0000)
with new keys, ignore NULL keys (forgot to include in prior commit)

usr.bin/ssh/hostfile.c

index 7736a98..e193d42 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: hostfile.c,v 1.92 2021/10/02 03:17:01 dtucker Exp $ */
+/* $OpenBSD: hostfile.c,v 1.93 2022/01/06 22:02:52 djm Exp $ */
 /*
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
  * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -635,7 +635,7 @@ hostfile_replace_entries(const char *filename, const char *host, const char *ip,
        /* Re-add the requested keys */
        want = HKF_MATCH_HOST | (ip == NULL ? 0 : HKF_MATCH_IP);
        for (i = 0; i < nkeys; i++) {
-               if ((want & ctx.match_keys[i]) == want)
+               if (keys[i] == NULL || (want & ctx.match_keys[i]) == want)
                        continue;
                if ((fp = sshkey_fingerprint(keys[i], hash_alg,
                    SSH_FP_DEFAULT)) == NULL) {