summaryrefslogtreecommitdiff
path: root/ssh-keysign.c
diff options
context:
space:
mode:
Diffstat (limited to 'ssh-keysign.c')
-rw-r--r--ssh-keysign.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/ssh-keysign.c b/ssh-keysign.c
index 955f7b0abad9..8d6bcda10919 100644
--- a/ssh-keysign.c
+++ b/ssh-keysign.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ssh-keysign.c,v 1.75 2025/02/15 01:48:30 djm Exp $ */
+/* $OpenBSD: ssh-keysign.c,v 1.78 2025/09/25 06:25:38 djm Exp $ */
/*
* Copyright (c) 2002 Markus Friedl. All rights reserved.
*
@@ -26,9 +26,7 @@
#include "includes.h"
#include <fcntl.h>
-#ifdef HAVE_PATHS_H
#include <paths.h>
-#endif
#include <pwd.h>
#include <stdarg.h>
#include <stdio.h>
@@ -131,8 +129,10 @@ valid_request(struct passwd *pw, char *host, struct sshkey **ret, char **pkalgp,
/* client host name, handle trailing dot */
if ((r = sshbuf_get_cstring(b, &p, &len)) != 0)
fatal_fr(r, "parse hostname");
- debug2_f("check expect chost %s got %s", host, p);
- if (strlen(host) != len - 1)
+ debug2_f("check expect chost \"%s\" got \"%s\"", host, p);
+ if (len == 0)
+ fail++;
+ else if (strlen(host) != len - 1)
fail++;
else if (p[len - 1] != '.')
fail++;
@@ -200,12 +200,8 @@ main(int argc, char **argv)
i = 0;
/* XXX This really needs to read sshd_config for the paths */
-#ifdef WITH_DSA
- key_fd[i++] = open(_PATH_HOST_DSA_KEY_FILE, O_RDONLY);
-#endif
key_fd[i++] = open(_PATH_HOST_ECDSA_KEY_FILE, O_RDONLY);
key_fd[i++] = open(_PATH_HOST_ED25519_KEY_FILE, O_RDONLY);
- key_fd[i++] = open(_PATH_HOST_XMSS_KEY_FILE, O_RDONLY);
key_fd[i++] = open(_PATH_HOST_RSA_KEY_FILE, O_RDONLY);
if ((pw = getpwuid(getuid())) == NULL)