summaryrefslogtreecommitdiffstats
path: root/kex.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2001-03-30 10:47:14 +1000
committerDamien Miller <djm@mindrot.org>2001-03-30 10:47:14 +1000
commit2557bfc5d712cd3422921253be60be2fbb88a4f7 (patch)
treec615d4eaf1aa41da73112a41c950cb4b69200a53 /kex.c
parentd8f72ca6d5c8234699fc2c49b56837de554b2cf6 (diff)
- (djm) OpenBSD CVS Sync
- provos@cvs.openbsd.org 2001/03/28 21:59:41 [kex.c kex.h sshconnect2.c sshd.c] forgot to include min and max params in hash, okay markus@
Diffstat (limited to 'kex.c')
-rw-r--r--kex.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/kex.c b/kex.c
index 78e108e9..38c813d8 100644
--- a/kex.c
+++ b/kex.c
@@ -23,7 +23,7 @@
*/
#include "includes.h"
-RCSID("$OpenBSD: kex.c,v 1.23 2001/03/10 17:51:04 markus Exp $");
+RCSID("$OpenBSD: kex.c,v 1.24 2001/03/28 21:59:40 provos Exp $");
#include <openssl/crypto.h>
#include <openssl/bio.h>
@@ -290,7 +290,7 @@ kex_hash_gex(
char *ckexinit, int ckexinitlen,
char *skexinit, int skexinitlen,
char *serverhostkeyblob, int sbloblen,
- int minbits, BIGNUM *prime, BIGNUM *gen,
+ int min, int wantbits, int max, BIGNUM *prime, BIGNUM *gen,
BIGNUM *client_dh_pub,
BIGNUM *server_dh_pub,
BIGNUM *shared_secret)
@@ -313,7 +313,13 @@ kex_hash_gex(
buffer_append(&b, skexinit, skexinitlen);
buffer_put_string(&b, serverhostkeyblob, sbloblen);
- buffer_put_int(&b, minbits);
+ if (min == -1 || max == -1)
+ buffer_put_int(&b, wantbits);
+ else {
+ buffer_put_int(&b, min);
+ buffer_put_int(&b, wantbits);
+ buffer_put_int(&b, max);
+ }
buffer_put_bignum2(&b, prime);
buffer_put_bignum2(&b, gen);
buffer_put_bignum2(&b, client_dh_pub);