From 130f5df4fa37cace8c079dccb690e5cafbf00751 Mon Sep 17 00:00:00 2001 From: "djm@openbsd.org" Date: Mon, 12 Sep 2016 23:31:27 +0000 Subject: upstream commit list all supported signature algorithms in the server-sig-algs Reported by mb AT smartftp.com in bz#2547 and (independantly) Ron Frederick; ok markus@ Upstream-ID: ddf702d721f54646b11ef2cee6d916666cb685cd --- kex.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'kex.c') diff --git a/kex.c b/kex.c index 3f08720e3..f4c130f14 100644 --- a/kex.c +++ b/kex.c @@ -1,4 +1,4 @@ -/* $OpenBSD: kex.c,v 1.120 2016/09/12 01:22:38 deraadt Exp $ */ +/* $OpenBSD: kex.c,v 1.121 2016/09/12 23:31:27 djm Exp $ */ /* * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. * @@ -340,13 +340,20 @@ static int kex_send_ext_info(struct ssh *ssh) { int r; + char *algs; + if ((algs = sshkey_alg_list(0, 1, ',')) == NULL) + return SSH_ERR_ALLOC_FAIL; if ((r = sshpkt_start(ssh, SSH2_MSG_EXT_INFO)) != 0 || (r = sshpkt_put_u32(ssh, 1)) != 0 || (r = sshpkt_put_cstring(ssh, "server-sig-algs")) != 0 || - (r = sshpkt_put_cstring(ssh, "rsa-sha2-256,rsa-sha2-512")) != 0 || + (r = sshpkt_put_cstring(ssh, algs)) != 0 || (r = sshpkt_send(ssh)) != 0) - return r; + goto out; + /* success */ + r = 0; + out: + free(algs); return 0; } -- cgit v1.2.3