[openssh-commits] [openssh] 15/22: upstream commit

git+noreply at mindrot.org git+noreply at mindrot.org
Mon May 1 12:02:18 AEST 2017


This is an automated email from the git hooks/post-receive script.

djm pushed a commit to branch master
in repository openssh.

commit aebd0abfaa8a41e75d50f9f7934267b0a2d9acb4
Author: djm at openbsd.org <djm at openbsd.org>
Date:   Sun Apr 30 23:26:54 2017 +0000

    upstream commit
    
    purge the last traces of SSHv1 from the TTY modes
    handling code
    
    ok markus
    
    Upstream-ID: 963a19f1e06577377c38a3b7ce468f121b966195
---
 ttymodes.c | 25 ++++++++-----------------
 ttymodes.h | 21 ++++++---------------
 2 files changed, 14 insertions(+), 32 deletions(-)

diff --git a/ttymodes.c b/ttymodes.c
index 2fc783b2..84513963 100644
--- a/ttymodes.c
+++ b/ttymodes.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ttymodes.c,v 1.31 2017/04/30 23:13:25 djm Exp $ */
+/* $OpenBSD: ttymodes.c,v 1.32 2017/04/30 23:26:54 djm Exp $ */
 /*
  * Author: Tatu Ylonen <ylo at cs.hut.fi>
  * Copyright (c) 1995 Tatu Ylonen <ylo at cs.hut.fi>, Espoo, Finland
@@ -59,12 +59,10 @@
 
 #define TTY_OP_END		0
 /*
- * uint32 (u_int) follows speed in SSH1 and SSH2
+ * uint32 (u_int) follows speed.
  */
-#define TTY_OP_ISPEED_PROTO1	192
-#define TTY_OP_OSPEED_PROTO1	193
-#define TTY_OP_ISPEED_PROTO2	128
-#define TTY_OP_OSPEED_PROTO2	129
+#define TTY_OP_ISPEED	128
+#define TTY_OP_OSPEED	129
 
 /*
  * Converts POSIX speed_t to a baud rate.  The values of the
@@ -282,11 +280,8 @@ tty_make_modes(int fd, struct termios *tiop)
 	struct termios tio;
 	int baud;
 	Buffer buf;
-	int tty_op_ospeed, tty_op_ispeed;
 
 	buffer_init(&buf);
-	tty_op_ospeed = TTY_OP_OSPEED_PROTO2;
-	tty_op_ispeed = TTY_OP_ISPEED_PROTO2;
 
 	if (tiop == NULL) {
 		if (fd == -1) {
@@ -302,10 +297,10 @@ tty_make_modes(int fd, struct termios *tiop)
 
 	/* Store input and output baud rates. */
 	baud = speed_to_baud(cfgetospeed(&tio));
-	buffer_put_char(&buf, tty_op_ospeed);
+	buffer_put_char(&buf, TTY_OP_OSPEED);
 	buffer_put_int(&buf, baud);
 	baud = speed_to_baud(cfgetispeed(&tio));
-	buffer_put_char(&buf, tty_op_ispeed);
+	buffer_put_char(&buf, TTY_OP_ISPEED);
 	buffer_put_int(&buf, baud);
 
 	/* Store values of mode flags. */
@@ -362,9 +357,7 @@ tty_parse_modes(int fd, int *n_bytes_ptr)
 		case TTY_OP_END:
 			goto set;
 
-		/* XXX: future conflict possible */
-		case TTY_OP_ISPEED_PROTO1:
-		case TTY_OP_ISPEED_PROTO2:
+		case TTY_OP_ISPEED:
 			n_bytes += 4;
 			baud = packet_get_int();
 			if (failure != -1 &&
@@ -372,9 +365,7 @@ tty_parse_modes(int fd, int *n_bytes_ptr)
 				error("cfsetispeed failed for %d", baud);
 			break;
 
-		/* XXX: future conflict possible */
-		case TTY_OP_OSPEED_PROTO1:
-		case TTY_OP_OSPEED_PROTO2:
+		case TTY_OP_OSPEED:
 			n_bytes += 4;
 			baud = packet_get_int();
 			if (failure != -1 &&
diff --git a/ttymodes.h b/ttymodes.h
index 14e177ce..24f07560 100644
--- a/ttymodes.h
+++ b/ttymodes.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: ttymodes.h,v 1.15 2016/05/03 09:03:49 dtucker Exp $ */
+/* $OpenBSD: ttymodes.h,v 1.16 2017/04/30 23:26:54 djm Exp $ */
 
 /*
  * Author: Tatu Ylonen <ylo at cs.hut.fi>
@@ -38,22 +38,13 @@
  */
 
 /*
- * SSH1:
- * The tty mode description is a stream of bytes.  The stream consists of
+ * The tty mode description is a string, consisting of
  * opcode-arguments pairs.  It is terminated by opcode TTY_OP_END (0).
- * Opcodes 1-127 have one-byte arguments.  Opcodes 128-159 have integer
- * arguments.  Opcodes 160-255 are not yet defined, and cause parsing to
- * stop (they should only be used after any other data).
+ * Opcodes 1-159 have uint32 arguments.
+ * Opcodes 160-255 are not yet defined and cause parsing to stop (they
+ * should only be used after any other data).
  *
- * SSH2:
- * Differences between SSH1 and SSH2 terminal mode encoding include:
- * 1. Encoded terminal modes are represented as a string, and a stream
- *    of bytes within that string.
- * 2. Opcode arguments are uint32 (1-159); 160-255 remain undefined.
- * 3. The values for TTY_OP_ISPEED and TTY_OP_OSPEED are different;
- *    128 and 129 vs. 192 and 193 respectively.
- *
- * The client puts in the stream any modes it knows about, and the
+ * The client puts in the string any modes it knows about, and the
  * server ignores any modes it does not know about.  This allows some degree
  * of machine-independence, at least between systems that use a posix-like
  * tty interface.  The protocol can support other systems as well, but might

-- 
To stop receiving notification emails like this one, please contact
djm at mindrot.org.


More information about the openssh-commits mailing list