diff options
author | markus@openbsd.org <markus@openbsd.org> | 2017-05-30 14:10:53 +0000 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2017-05-31 10:47:31 +1000 |
commit | 00ed75c92d1f95fe50032835106c368fa22f0f02 (patch) | |
tree | f66d7d747d708528011ae1d7ca553b39ed63bd82 /monitor_wrap.c | |
parent | 54d90ace1d3535b44d92a8611952dc109a74a031 (diff) | |
download | openssh-git-00ed75c92d1f95fe50032835106c368fa22f0f02.tar.gz |
upstream commit
switch auth2-pubkey.c to modern APIs; with & ok djm@
Upstream-ID: 8f08d4316eb1b0c4ffe4a206c05cdd45ed1daf07
Diffstat (limited to 'monitor_wrap.c')
-rw-r--r-- | monitor_wrap.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/monitor_wrap.c b/monitor_wrap.c index 0710a10b..25f3e967 100644 --- a/monitor_wrap.c +++ b/monitor_wrap.c @@ -1,4 +1,4 @@ -/* $OpenBSD: monitor_wrap.c,v 1.91 2017/05/30 08:52:19 markus Exp $ */ +/* $OpenBSD: monitor_wrap.c,v 1.92 2017/05/30 14:10:53 markus Exp $ */ /* * Copyright 2002 Niels Provos <provos@citi.umich.edu> * Copyright 2002 Markus Friedl <markus@openbsd.org> @@ -436,13 +436,13 @@ mm_key_allowed(enum mm_keytype type, const char *user, const char *host, */ int -mm_key_verify(struct sshkey *key, u_char *sig, u_int siglen, u_char *data, - u_int datalen) +mm_sshkey_verify(const struct sshkey *key, const u_char *sig, size_t siglen, + const u_char *data, size_t datalen, u_int compat) { Buffer m; u_char *blob; u_int len; - int verified = 0; + u_int encoded_ret = 0; debug3("%s entering", __func__); @@ -461,11 +461,13 @@ mm_key_verify(struct sshkey *key, u_char *sig, u_int siglen, u_char *data, debug3("%s: waiting for MONITOR_ANS_KEYVERIFY", __func__); mm_request_receive_expect(pmonitor->m_recvfd, MONITOR_ANS_KEYVERIFY, &m); - verified = buffer_get_int(&m); + encoded_ret = buffer_get_int(&m); buffer_free(&m); - return (verified); + if (encoded_ret != 0) + return SSH_ERR_SIGNATURE_INVALID; + return 0; } void |