summaryrefslogtreecommitdiff
path: root/usr.bin/ssh/kexkemc.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.bin/ssh/kexkemc.c')
-rw-r--r--usr.bin/ssh/kexkemc.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/usr.bin/ssh/kexkemc.c b/usr.bin/ssh/kexkemc.c
index 13f36a1160a..384a4db598c 100644
--- a/usr.bin/ssh/kexkemc.c
+++ b/usr.bin/ssh/kexkemc.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: kexkemc.c,v 1.2 2019/01/21 10:24:09 djm Exp $ */
+/* $OpenBSD: kexkemc.c,v 1.3 2019/01/21 10:28:02 djm Exp $ */
/*
* Copyright (c) 2019 Markus Friedl. All rights reserved.
*
@@ -48,6 +48,13 @@ kex_kem_client(struct ssh *ssh)
int r;
switch (kex->kex_type) {
+ case KEX_DH_GRP1_SHA1:
+ case KEX_DH_GRP14_SHA1:
+ case KEX_DH_GRP14_SHA256:
+ case KEX_DH_GRP16_SHA512:
+ case KEX_DH_GRP18_SHA512:
+ r = kex_dh_keypair(kex);
+ break;
case KEX_C25519_SHA256:
r = kex_c25519_keypair(kex);
break;
@@ -99,6 +106,13 @@ input_kex_kem_reply(int type, u_int32_t seq, struct ssh *ssh)
/* compute shared secret */
switch (kex->kex_type) {
+ case KEX_DH_GRP1_SHA1:
+ case KEX_DH_GRP14_SHA1:
+ case KEX_DH_GRP14_SHA256:
+ case KEX_DH_GRP16_SHA512:
+ case KEX_DH_GRP18_SHA512:
+ r = kex_dh_dec(kex, server_pubkey, pklen, &shared_secret);
+ break;
case KEX_C25519_SHA256:
r = kex_c25519_dec(kex, server_pubkey, pklen, &shared_secret);
break;