diff options
author | Colin Watson <cjwatson@debian.org> | 2014-10-07 12:13:50 +0100 |
---|---|---|
committer | Colin Watson <cjwatson@debian.org> | 2014-10-07 12:13:50 +0100 |
commit | 487bdb3a5ef6075887b830ccb8a0b14f6da78e93 (patch) | |
tree | a2cff6fec1e6c4b4153a170a3e172cfe6bfdec46 /compat.c | |
parent | 796ba4fd011b5d0d9d78d592ba2f30fc9d5ed2e7 (diff) | |
parent | 28453d58058a4d60c3ebe7d7f0c31a510cbf6158 (diff) |
Import openssh_6.7p1.orig.tar.gz
Diffstat (limited to 'compat.c')
-rw-r--r-- | compat.c | 19 |
1 files changed, 17 insertions, 2 deletions
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: compat.c,v 1.82 2013/12/30 23:52:27 djm Exp $ */ | 1 | /* $OpenBSD: compat.c,v 1.85 2014/04/20 02:49:32 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 1999, 2000, 2001, 2002 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 1999, 2000, 2001, 2002 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -95,6 +95,9 @@ compat_datafellows(const char *version) | |||
95 | { "Sun_SSH_1.0*", SSH_BUG_NOREKEY|SSH_BUG_EXTEOF}, | 95 | { "Sun_SSH_1.0*", SSH_BUG_NOREKEY|SSH_BUG_EXTEOF}, |
96 | { "OpenSSH_4*", 0 }, | 96 | { "OpenSSH_4*", 0 }, |
97 | { "OpenSSH_5*", SSH_NEW_OPENSSH|SSH_BUG_DYNAMIC_RPORT}, | 97 | { "OpenSSH_5*", SSH_NEW_OPENSSH|SSH_BUG_DYNAMIC_RPORT}, |
98 | { "OpenSSH_6.6.1*", SSH_NEW_OPENSSH}, | ||
99 | { "OpenSSH_6.5*," | ||
100 | "OpenSSH_6.6*", SSH_NEW_OPENSSH|SSH_BUG_CURVE25519PAD}, | ||
98 | { "OpenSSH*", SSH_NEW_OPENSSH }, | 101 | { "OpenSSH*", SSH_NEW_OPENSSH }, |
99 | { "*MindTerm*", 0 }, | 102 | { "*MindTerm*", 0 }, |
100 | { "2.1.0*", SSH_BUG_SIGBLOB|SSH_BUG_HMAC| | 103 | { "2.1.0*", SSH_BUG_SIGBLOB|SSH_BUG_HMAC| |
@@ -251,7 +254,6 @@ compat_cipher_proposal(char *cipher_prop) | |||
251 | return cipher_prop; | 254 | return cipher_prop; |
252 | } | 255 | } |
253 | 256 | ||
254 | |||
255 | char * | 257 | char * |
256 | compat_pkalg_proposal(char *pkalg_prop) | 258 | compat_pkalg_proposal(char *pkalg_prop) |
257 | { | 259 | { |
@@ -265,3 +267,16 @@ compat_pkalg_proposal(char *pkalg_prop) | |||
265 | return pkalg_prop; | 267 | return pkalg_prop; |
266 | } | 268 | } |
267 | 269 | ||
270 | char * | ||
271 | compat_kex_proposal(char *kex_prop) | ||
272 | { | ||
273 | if (!(datafellows & SSH_BUG_CURVE25519PAD)) | ||
274 | return kex_prop; | ||
275 | debug2("%s: original KEX proposal: %s", __func__, kex_prop); | ||
276 | kex_prop = filter_proposal(kex_prop, "curve25519-sha256@libssh.org"); | ||
277 | debug2("%s: compat KEX proposal: %s", __func__, kex_prop); | ||
278 | if (*kex_prop == '\0') | ||
279 | fatal("No supported key exchange algorithms found"); | ||
280 | return kex_prop; | ||
281 | } | ||
282 | |||