1
0
mirror of https://github.com/openbsd/src.git synced 2026-04-28 16:16:48 +00:00

bit of webauthn support missed in previous commit

This commit is contained in:
djm
2026-02-07 02:02:00 +00:00
parent 9d884ef6f2
commit 95dc80d3cd

View File

@@ -1,4 +1,4 @@
/* $OpenBSD: authfd.c,v 1.136 2025/08/29 03:50:38 djm Exp $ */
/* $OpenBSD: authfd.c,v 1.137 2026/02/07 02:02:00 djm Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -436,8 +436,15 @@ ssh_agent_sign(int sock, const struct sshkey *key,
}
if ((r = sshbuf_get_string(msg, &sig, &len)) != 0)
goto out;
/* Check what we actually got back from the agent. */
if ((r = sshkey_check_sigtype(sig, len, alg)) != 0)
/*
* Check what we actually got back from the agent, in case it returned
* an incorrect RSA signature algorithm (e.g. "ssh-rsa" (RSA/SHA1) vs.
* "rsa-sha2-256").
* We don't do this for FIDO signatures as webauthn vs plain are just
* different signature formats and not entirely different algorithms.
*/
if (!sshkey_is_sk(key) &&
(r = sshkey_check_sigtype(sig, len, alg)) != 0)
goto out;
/* success */
*sigp = sig;