summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--compat.c5
-rw-r--r--compat.h3
-rw-r--r--nchan.c4
-rw-r--r--ssh.c5
5 files changed, 16 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 975b305be..f110f435e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -27,6 +27,10 @@
27 OpenSSL 0.9.8h supplies a real EVP_sha256 so we do not need our 27 OpenSSL 0.9.8h supplies a real EVP_sha256 so we do not need our
28 replacement anymore 28 replacement anymore
29 (ID sync only for portable - we still need this) 29 (ID sync only for portable - we still need this)
30 - markus@cvs.openbsd.org 2008/09/11 14:22:37
31 [compat.c compat.h nchan.c ssh.c]
32 only send eow and no-more-sessions requests to openssh 5 and newer;
33 fixes interop problems with broken ssh v2 implementations; ok djm@
30 34
3120080906 3520080906
32 - (dtucker) [config.guess config.sub] Update to latest versions from 36 - (dtucker) [config.guess config.sub] Update to latest versions from
@@ -4761,4 +4765,4 @@
4761 OpenServer 6 and add osr5bigcrypt support so when someone migrates 4765 OpenServer 6 and add osr5bigcrypt support so when someone migrates
4762 passwords between UnixWare and OpenServer they will still work. OK dtucker@ 4766 passwords between UnixWare and OpenServer they will still work. OK dtucker@
4763 4767
4764$Id: ChangeLog,v 1.5105 2008/11/03 08:19:12 djm Exp $ 4768$Id: ChangeLog,v 1.5106 2008/11/03 08:20:10 djm Exp $
diff --git a/compat.c b/compat.c
index bc1131581..df3541df7 100644
--- a/compat.c
+++ b/compat.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: compat.c,v 1.77 2006/12/12 03:58:42 djm Exp $ */ 1/* $OpenBSD: compat.c,v 1.78 2008/09/11 14:22:37 markus 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 *
@@ -91,7 +91,8 @@ compat_datafellows(const char *version)
91 "OpenSSH_3.1*", SSH_BUG_EXTEOF|SSH_OLD_FORWARD_ADDR}, 91 "OpenSSH_3.1*", SSH_BUG_EXTEOF|SSH_OLD_FORWARD_ADDR},
92 { "OpenSSH_3.*", SSH_OLD_FORWARD_ADDR }, 92 { "OpenSSH_3.*", SSH_OLD_FORWARD_ADDR },
93 { "Sun_SSH_1.0*", SSH_BUG_NOREKEY|SSH_BUG_EXTEOF}, 93 { "Sun_SSH_1.0*", SSH_BUG_NOREKEY|SSH_BUG_EXTEOF},
94 { "OpenSSH*", 0 }, 94 { "OpenSSH_4*", 0 },
95 { "OpenSSH*", SSH_NEW_OPENSSH },
95 { "*MindTerm*", 0 }, 96 { "*MindTerm*", 0 },
96 { "2.1.0*", SSH_BUG_SIGBLOB|SSH_BUG_HMAC| 97 { "2.1.0*", SSH_BUG_SIGBLOB|SSH_BUG_HMAC|
97 SSH_OLD_SESSIONID|SSH_BUG_DEBUG| 98 SSH_OLD_SESSIONID|SSH_BUG_DEBUG|
diff --git a/compat.h b/compat.h
index 4d8ebc908..16cf282a7 100644
--- a/compat.h
+++ b/compat.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: compat.h,v 1.41 2006/12/12 03:58:42 djm Exp $ */ 1/* $OpenBSD: compat.h,v 1.42 2008/09/11 14:22:37 markus Exp $ */
2 2
3/* 3/*
4 * Copyright (c) 1999, 2000, 2001 Markus Friedl. All rights reserved. 4 * Copyright (c) 1999, 2000, 2001 Markus Friedl. All rights reserved.
@@ -57,6 +57,7 @@
57#define SSH_BUG_FIRSTKEX 0x00800000 57#define SSH_BUG_FIRSTKEX 0x00800000
58#define SSH_OLD_FORWARD_ADDR 0x01000000 58#define SSH_OLD_FORWARD_ADDR 0x01000000
59#define SSH_BUG_RFWD_ADDR 0x02000000 59#define SSH_BUG_RFWD_ADDR 0x02000000
60#define SSH_NEW_OPENSSH 0x04000000
60 61
61void enable_compat13(void); 62void enable_compat13(void);
62void enable_compat20(void); 63void enable_compat20(void);
diff --git a/nchan.c b/nchan.c
index e0ebf43f1..b78d6a764 100644
--- a/nchan.c
+++ b/nchan.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: nchan.c,v 1.60 2008/06/30 12:16:02 djm Exp $ */ 1/* $OpenBSD: nchan.c,v 1.61 2008/09/11 14:22:37 markus 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 *
@@ -387,6 +387,8 @@ chan_send_eow2(Channel *c)
387 c->self); 387 c->self);
388 return; 388 return;
389 } 389 }
390 if (!(datafellows & SSH_NEW_OPENSSH))
391 return;
390 packet_start(SSH2_MSG_CHANNEL_REQUEST); 392 packet_start(SSH2_MSG_CHANNEL_REQUEST);
391 packet_put_int(c->remote_id); 393 packet_put_int(c->remote_id);
392 packet_put_cstring("eow@openssh.com"); 394 packet_put_cstring("eow@openssh.com");
diff --git a/ssh.c b/ssh.c
index e2dd67d68..a91d886ce 100644
--- a/ssh.c
+++ b/ssh.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssh.c,v 1.318 2008/07/02 13:47:39 djm Exp $ */ 1/* $OpenBSD: ssh.c,v 1.319 2008/09/11 14:22:37 markus Exp $ */
2/* 2/*
3 * Author: Tatu Ylonen <ylo@cs.hut.fi> 3 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -1200,7 +1200,8 @@ ssh_session2(void)
1200 id = ssh_session2_open(); 1200 id = ssh_session2_open();
1201 1201
1202 /* If we don't expect to open a new session, then disallow it */ 1202 /* If we don't expect to open a new session, then disallow it */
1203 if (options.control_master == SSHCTL_MASTER_NO) { 1203 if (options.control_master == SSHCTL_MASTER_NO &&
1204 (datafellows & SSH_NEW_OPENSSH)) {
1204 debug("Requesting no-more-sessions@openssh.com"); 1205 debug("Requesting no-more-sessions@openssh.com");
1205 packet_start(SSH2_MSG_GLOBAL_REQUEST); 1206 packet_start(SSH2_MSG_GLOBAL_REQUEST);
1206 packet_put_cstring("no-more-sessions@openssh.com"); 1207 packet_put_cstring("no-more-sessions@openssh.com");