summaryrefslogtreecommitdiff
path: root/compat.c
diff options
context:
space:
mode:
authordjm@openbsd.org <djm@openbsd.org>2018-01-23 05:27:21 +0000
committerDamien Miller <djm@mindrot.org>2018-01-23 16:40:29 +1100
commit14b5c635d1190633b23ac3372379517fb645b0c2 (patch)
tree8ef70b4660b04ba6add4c314d52f84375cb16788 /compat.c
parent7c77991f5de5d8475cbeb7cbb06d0c7d1611d7bb (diff)
upstream commit
Drop compatibility hacks for some ancient SSH implementations, including ssh.com <=2.* and OpenSSH <= 3.*. These versions were all released in or before 2001 and predate the final SSH RFCs. The hacks in question aren't necessary for RFC- compliant SSH implementations. ok markus@ OpenBSD-Commit-ID: 4be81c67db57647f907f4e881fb9341448606138
Diffstat (limited to 'compat.c')
-rw-r--r--compat.c71
1 files changed, 4 insertions, 67 deletions
diff --git a/compat.c b/compat.c
index d82135e2b..89b302cca 100644
--- a/compat.c
+++ b/compat.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: compat.c,v 1.104 2017/07/25 09:22:25 dtucker Exp $ */ 1/* $OpenBSD: compat.c,v 1.105 2018/01/23 05:27:21 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 *
@@ -50,83 +50,20 @@ compat_datafellows(const char *version)
50 char *pat; 50 char *pat;
51 int bugs; 51 int bugs;
52 } check[] = { 52 } check[] = {
53 { "OpenSSH-2.0*,"
54 "OpenSSH-2.1*,"
55 "OpenSSH_2.1*,"
56 "OpenSSH_2.2*", SSH_OLD_SESSIONID|SSH_BUG_BANNER|
57 SSH_OLD_DHGEX|SSH_BUG_NOREKEY|
58 SSH_BUG_EXTEOF|SSH_OLD_FORWARD_ADDR},
59 { "OpenSSH_2.3.0*", SSH_BUG_BANNER|SSH_BUG_BIGENDIANAES|
60 SSH_OLD_DHGEX|SSH_BUG_NOREKEY|
61 SSH_BUG_EXTEOF|SSH_OLD_FORWARD_ADDR},
62 { "OpenSSH_2.3.*", SSH_BUG_BIGENDIANAES|SSH_OLD_DHGEX|
63 SSH_BUG_NOREKEY|SSH_BUG_EXTEOF|
64 SSH_OLD_FORWARD_ADDR},
65 { "OpenSSH_2.5.0p1*,"
66 "OpenSSH_2.5.1p1*",
67 SSH_BUG_BIGENDIANAES|SSH_OLD_DHGEX|
68 SSH_BUG_NOREKEY|SSH_BUG_EXTEOF|
69 SSH_OLD_FORWARD_ADDR},
70 { "OpenSSH_2.5.0*,"
71 "OpenSSH_2.5.1*,"
72 "OpenSSH_2.5.2*", SSH_OLD_DHGEX|SSH_BUG_NOREKEY|
73 SSH_BUG_EXTEOF|SSH_OLD_FORWARD_ADDR},
74 { "OpenSSH_2.5.3*", SSH_BUG_NOREKEY|SSH_BUG_EXTEOF|
75 SSH_OLD_FORWARD_ADDR},
76 { "OpenSSH_2.*," 53 { "OpenSSH_2.*,"
77 "OpenSSH_3.0*," 54 "OpenSSH_3.0*,"
78 "OpenSSH_3.1*", SSH_BUG_EXTEOF|SSH_OLD_FORWARD_ADDR}, 55 "OpenSSH_3.1*", SSH_BUG_EXTEOF|SSH_OLD_FORWARD_ADDR},
79 { "OpenSSH_3.*", SSH_OLD_FORWARD_ADDR }, 56 { "OpenSSH_3.*", SSH_OLD_FORWARD_ADDR },
80 { "Sun_SSH_1.0*", SSH_BUG_NOREKEY|SSH_BUG_EXTEOF}, 57 { "Sun_SSH_1.0*", SSH_BUG_NOREKEY|SSH_BUG_EXTEOF},
81 { "OpenSSH_4*", 0 }, 58 { "OpenSSH_2*,"
59 "OpenSSH_3*,"
60 "OpenSSH_4*", 0 },
82 { "OpenSSH_5*", SSH_NEW_OPENSSH|SSH_BUG_DYNAMIC_RPORT}, 61 { "OpenSSH_5*", SSH_NEW_OPENSSH|SSH_BUG_DYNAMIC_RPORT},
83 { "OpenSSH_6.6.1*", SSH_NEW_OPENSSH}, 62 { "OpenSSH_6.6.1*", SSH_NEW_OPENSSH},
84 { "OpenSSH_6.5*," 63 { "OpenSSH_6.5*,"
85 "OpenSSH_6.6*", SSH_NEW_OPENSSH|SSH_BUG_CURVE25519PAD}, 64 "OpenSSH_6.6*", SSH_NEW_OPENSSH|SSH_BUG_CURVE25519PAD},
86 { "OpenSSH*", SSH_NEW_OPENSSH }, 65 { "OpenSSH*", SSH_NEW_OPENSSH },
87 { "*MindTerm*", 0 }, 66 { "*MindTerm*", 0 },
88 { "2.1.0*", SSH_BUG_SIGBLOB|SSH_BUG_HMAC|
89 SSH_OLD_SESSIONID|SSH_BUG_DEBUG|
90 SSH_BUG_RSASIGMD5|SSH_BUG_HBSERVICE|
91 SSH_BUG_FIRSTKEX },
92 { "2.1 *", SSH_BUG_SIGBLOB|SSH_BUG_HMAC|
93 SSH_OLD_SESSIONID|SSH_BUG_DEBUG|
94 SSH_BUG_RSASIGMD5|SSH_BUG_HBSERVICE|
95 SSH_BUG_FIRSTKEX },
96 { "2.0.13*,"
97 "2.0.14*,"
98 "2.0.15*,"
99 "2.0.16*,"
100 "2.0.17*,"
101 "2.0.18*,"
102 "2.0.19*", SSH_BUG_SIGBLOB|SSH_BUG_HMAC|
103 SSH_OLD_SESSIONID|SSH_BUG_DEBUG|
104 SSH_BUG_PKSERVICE|SSH_BUG_X11FWD|
105 SSH_BUG_PKOK|SSH_BUG_RSASIGMD5|
106 SSH_BUG_HBSERVICE|SSH_BUG_OPENFAILURE|
107 SSH_BUG_DUMMYCHAN|SSH_BUG_FIRSTKEX },
108 { "2.0.11*,"
109 "2.0.12*", SSH_BUG_SIGBLOB|SSH_BUG_HMAC|
110 SSH_OLD_SESSIONID|SSH_BUG_DEBUG|
111 SSH_BUG_PKSERVICE|SSH_BUG_X11FWD|
112 SSH_BUG_PKAUTH|SSH_BUG_PKOK|
113 SSH_BUG_RSASIGMD5|SSH_BUG_OPENFAILURE|
114 SSH_BUG_DUMMYCHAN|SSH_BUG_FIRSTKEX },
115 { "2.0.*", SSH_BUG_SIGBLOB|SSH_BUG_HMAC|
116 SSH_OLD_SESSIONID|SSH_BUG_DEBUG|
117 SSH_BUG_PKSERVICE|SSH_BUG_X11FWD|
118 SSH_BUG_PKAUTH|SSH_BUG_PKOK|
119 SSH_BUG_RSASIGMD5|SSH_BUG_OPENFAILURE|
120 SSH_BUG_DERIVEKEY|SSH_BUG_DUMMYCHAN|
121 SSH_BUG_FIRSTKEX },
122 { "2.2.0*,"
123 "2.3.0*", SSH_BUG_HMAC|SSH_BUG_DEBUG|
124 SSH_BUG_RSASIGMD5|SSH_BUG_FIRSTKEX },
125 { "2.3.*", SSH_BUG_DEBUG|SSH_BUG_RSASIGMD5|
126 SSH_BUG_FIRSTKEX },
127 { "2.4", SSH_OLD_SESSIONID }, /* Van Dyke */
128 { "2.*", SSH_BUG_DEBUG|SSH_BUG_FIRSTKEX|
129 SSH_BUG_RFWD_ADDR },
130 { "3.0.*", SSH_BUG_DEBUG }, 67 { "3.0.*", SSH_BUG_DEBUG },
131 { "3.0 SecureCRT*", SSH_OLD_SESSIONID }, 68 { "3.0 SecureCRT*", SSH_OLD_SESSIONID },
132 { "1.7 SecureFX*", SSH_OLD_SESSIONID }, 69 { "1.7 SecureFX*", SSH_OLD_SESSIONID },