summaryrefslogtreecommitdiff
path: root/auth1.c
diff options
context:
space:
mode:
Diffstat (limited to 'auth1.c')
-rw-r--r--auth1.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/auth1.c b/auth1.c
index b7dfa987e..0f6be8201 100644
--- a/auth1.c
+++ b/auth1.c
@@ -10,7 +10,7 @@
10 */ 10 */
11 11
12#include "includes.h" 12#include "includes.h"
13RCSID("$OpenBSD: auth1.c,v 1.60 2005/05/20 12:57:01 djm Exp $"); 13RCSID("$OpenBSD: auth1.c,v 1.61 2005/06/17 02:44:32 djm Exp $");
14 14
15#include "xmalloc.h" 15#include "xmalloc.h"
16#include "rsa.h" 16#include "rsa.h"
@@ -140,7 +140,7 @@ auth1_process_rsa(Authctxt *authctxt, char *info, size_t infolen)
140static int 140static int
141auth1_process_rhosts_rsa(Authctxt *authctxt, char *info, size_t infolen) 141auth1_process_rhosts_rsa(Authctxt *authctxt, char *info, size_t infolen)
142{ 142{
143 int authenticated = 0; 143 int keybits, authenticated = 0;
144 u_int bits; 144 u_int bits;
145 Key *client_host_key; 145 Key *client_host_key;
146 u_int ulen; 146 u_int ulen;
@@ -158,7 +158,8 @@ auth1_process_rhosts_rsa(Authctxt *authctxt, char *info, size_t infolen)
158 packet_get_bignum(client_host_key->rsa->e); 158 packet_get_bignum(client_host_key->rsa->e);
159 packet_get_bignum(client_host_key->rsa->n); 159 packet_get_bignum(client_host_key->rsa->n);
160 160
161 if (bits != BN_num_bits(client_host_key->rsa->n)) { 161 keybits = BN_num_bits(client_host_key->rsa->n);
162 if (keybits < 0 || bits != (u_int)keybits) {
162 verbose("Warning: keysize mismatch for client_host_key: " 163 verbose("Warning: keysize mismatch for client_host_key: "
163 "actual %d, announced %d", 164 "actual %d, announced %d",
164 BN_num_bits(client_host_key->rsa->n), bits); 165 BN_num_bits(client_host_key->rsa->n), bits);