-/* $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@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
#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
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) {
/* 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. */
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 &&
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 &&
-/* $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@cs.hut.fi>
*/
/*
- * 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