diff options
Diffstat (limited to 'auth1.c')
-rw-r--r-- | auth1.c | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -10,7 +10,7 @@ | |||
10 | */ | 10 | */ |
11 | 11 | ||
12 | #include "includes.h" | 12 | #include "includes.h" |
13 | RCSID("$OpenBSD: auth1.c,v 1.60 2005/05/20 12:57:01 djm Exp $"); | 13 | RCSID("$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) | |||
140 | static int | 140 | static int |
141 | auth1_process_rhosts_rsa(Authctxt *authctxt, char *info, size_t infolen) | 141 | auth1_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); |