diff options
-rw-r--r-- | sshconnect2.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sshconnect2.c b/sshconnect2.c index 86a0254be..1675f3935 100644 --- a/sshconnect2.c +++ b/sshconnect2.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sshconnect2.c,v 1.287 2018/09/14 05:26:27 djm Exp $ */ | 1 | /* $OpenBSD: sshconnect2.c,v 1.288 2018/10/11 03:48:04 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. |
4 | * Copyright (c) 2008 Damien Miller. All rights reserved. | 4 | * Copyright (c) 2008 Damien Miller. All rights reserved. |
@@ -1088,7 +1088,8 @@ key_sig_algorithm(struct ssh *ssh, const struct sshkey *key) | |||
1088 | * newer (SHA2) algorithms. | 1088 | * newer (SHA2) algorithms. |
1089 | */ | 1089 | */ |
1090 | if (ssh == NULL || ssh->kex->server_sig_algs == NULL || | 1090 | if (ssh == NULL || ssh->kex->server_sig_algs == NULL || |
1091 | (key->type != KEY_RSA && key->type != KEY_RSA_CERT)) { | 1091 | (key->type != KEY_RSA && key->type != KEY_RSA_CERT) || |
1092 | (key->type == KEY_RSA_CERT && (datafellows & SSH_BUG_SIGTYPE))) { | ||
1092 | /* Filter base key signature alg against our configuration */ | 1093 | /* Filter base key signature alg against our configuration */ |
1093 | return match_list(sshkey_ssh_name(key), | 1094 | return match_list(sshkey_ssh_name(key), |
1094 | options.pubkey_key_types, NULL); | 1095 | options.pubkey_key_types, NULL); |