summaryrefslogtreecommitdiffhomepage
path: root/common-kex.c
diff options
context:
space:
mode:
authorMatt Johnston <matt@ucc.asn.au>2020-04-06 23:18:26 +0800
committerMatt Johnston <matt@ucc.asn.au>2020-04-06 23:18:26 +0800
commit7dc2f36c3e2d21455ae432da4d8f338e7dc0668c (patch)
treee09030cf950dca1c4a9b7a3e1cd8f633490570a9 /common-kex.c
parent90cfbe1f7a8138225c08a43a62ffe5a064a6297e (diff)
use sigtype where appropriate
Diffstat (limited to 'common-kex.c')
-rw-r--r--common-kex.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/common-kex.c b/common-kex.c
index 16b7e27..c1392c1 100644
--- a/common-kex.c
+++ b/common-kex.c
@@ -111,7 +111,8 @@ void send_msg_kexinit() {
if (ses.send_kex_first_guess) {
ses.newkeys->algo_kex = sshkex[0].data;
- ses.newkeys->algo_hostkey = sshhostkey[0].val;
+ ses.newkeys->algo_signature = sshhostkey[0].val;
+ ses.newkeys->algo_hostkey = signkey_type_from_signature(ses.newkeys->algo_signature);
ses.send_kex_first_guess();
}
@@ -152,6 +153,7 @@ static void switch_keys() {
TRACE(("switch_keys done"))
ses.keys->algo_kex = ses.newkeys->algo_kex;
ses.keys->algo_hostkey = ses.newkeys->algo_hostkey;
+ ses.keys->algo_signature = ses.newkeys->algo_signature;
ses.keys->allow_compress = 0;
m_free(ses.newkeys);
ses.newkeys = NULL;
@@ -847,8 +849,9 @@ static void read_kex_algos() {
erralgo = "hostkey";
goto error;
}
- TRACE(("hostkey algo %s", algo->name))
- ses.newkeys->algo_hostkey = algo->val;
+ TRACE(("signature algo %s", algo->name))
+ ses.newkeys->algo_signature = algo->val;
+ ses.newkeys->algo_hostkey = signkey_type_from_signature(ses.newkeys->algo_signature);
/* encryption_algorithms_client_to_server */
c2s_cipher_algo = buf_match_algo(ses.payload, sshciphers, NULL, NULL);