[PATCH] mux: update PROTOCOL.mux and fix error messages on client side

Bert Wesarg bert.wesarg at googlemail.com
Fri Jan 14 08:40:14 EST 2011


---
 PROTOCOL.mux |   24 ++++++++++++------------
 mux.c        |   10 +++++-----
 2 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/PROTOCOL.mux b/PROTOCOL.mux
index 1d8c463..958e0d5 100644
--- a/PROTOCOL.mux
+++ b/PROTOCOL.mux
@@ -28,7 +28,7 @@ defined.
 To open a new multiplexed session, a client may send the following
 request:
 
-	uint32	MUX_C_MSG_NEW_SESSION
+	uint32	MUX_C_NEW_SESSION
 	uint32  request id
 	string	reserved
 	bool	want tty flag
@@ -99,7 +99,7 @@ The server will reply with one of MUX_S_OK or MUX_S_PERMISSION_DENIED.
 
 A client may request the master to establish a port forward:
 
-	uint32	MUX_C_OPEN_FORWARD
+	uint32	MUX_C_OPEN_FWD
 	uint32	request id
 	uint32	forwarding type
 	string	listen host
@@ -118,24 +118,23 @@ For dynamically allocated listen port the server replies with
 	uint32	client request id
 	uint32	allocated remote listen port
 
-5. Requesting closure of port forwards
+6. Requesting closure of port forwards
+
+Note: currently unimplemented (server will always reply with MUX_S_FAILURE).
 
 A client may request the master to establish a port forward:
 
-	uint32	MUX_C_OPEN_FORWARD
+	uint32	MUX_C_CLOSE_FWD
 	uint32	request id
-	uint32	forwarding type
 	string	listen host
 	string	listen port
 	string	connect host
 	string	connect port
 
-forwarding type may be MUX_FWD_LOCAL, MUX_FWD_REMOTE, MUX_FWD_DYNAMIC.
-
 A server may reply with a MUX_S_OK, a MUX_S_PERMISSION_DENIED or a
 MUX_S_FAILURE.
 
-6. Requesting stdio forwarding
+7. Requesting stdio forwarding
 
 A client may request the master to establish a stdio forwarding:
 
@@ -153,7 +152,7 @@ The contents of "reserved" are currently ignored.
 A server may reply with a MUX_S_SESSION_OPEED, a MUX_S_PERMISSION_DENIED
 or a MUX_S_FAILURE.
 
-7. Status messages
+8. Status messages
 
 The MUX_S_OK message is empty:
 
@@ -170,14 +169,15 @@ The MUX_S_PERMISSION_DENIED and MUX_S_FAILURE include a reason:
 	uint32	client request id
 	string	reason
 
-7. Protocol numbers
+9. Protocol numbers
 
 #define MUX_MSG_HELLO		0x00000001
 #define MUX_C_NEW_SESSION	0x10000002
 #define MUX_C_ALIVE_CHECK	0x10000004
 #define MUX_C_TERMINATE		0x10000005
-#define MUX_C_OPEN_FORWARD	0x10000006
-#define MUX_C_CLOSE_FORWARD	0x10000007
+#define MUX_C_OPEN_FWD		0x10000006
+#define MUX_C_CLOSE_FWD		0x10000007
+#define MUX_C_NEW_STDIO_FWD	0x10000008
 #define MUX_S_OK		0x80000001
 #define MUX_S_PERMISSION_DENIED	0x80000002
 #define MUX_S_FAILURE		0x80000003
diff --git a/mux.c b/mux.c
index f1f7e6b..9b3633b 100644
--- a/mux.c
+++ b/mux.c
@@ -1530,7 +1530,7 @@ mux_client_request_forward(int fd, u_int ftype, Forward *fwd)
 	case MUX_S_FAILURE:
 		e = buffer_get_string(&m, NULL);
 		buffer_free(&m);
-		error("%s: session request failed: %s", __func__, e);
+		error("%s: forwarding request failed: %s", __func__, e);
 		return -1;
 	default:
 		fatal("%s: unexpected response from master 0x%08x",
@@ -1649,12 +1649,12 @@ mux_client_request_session(int fd)
 	case MUX_S_PERMISSION_DENIED:
 		e = buffer_get_string(&m, NULL);
 		buffer_free(&m);
-		error("Master refused forwarding request: %s", e);
+		error("Master refused session request: %s", e);
 		return -1;
 	case MUX_S_FAILURE:
 		e = buffer_get_string(&m, NULL);
 		buffer_free(&m);
-		error("%s: forwarding request failed: %s", __func__, e);
+		error("%s: session request failed: %s", __func__, e);
 		return -1;
 	default:
 		buffer_free(&m);
@@ -1781,11 +1781,11 @@ mux_client_request_stdio_fwd(int fd)
 	case MUX_S_PERMISSION_DENIED:
 		e = buffer_get_string(&m, NULL);
 		buffer_free(&m);
-		fatal("Master refused forwarding request: %s", e);
+		fatal("Master refused stdio forwarding request: %s", e);
 	case MUX_S_FAILURE:
 		e = buffer_get_string(&m, NULL);
 		buffer_free(&m);
-		fatal("%s: stdio forwarding request failed: %s", __func__, e);
+		fatal("%s: stdio stdio forwarding request failed: %s", __func__, e);
 	default:
 		buffer_free(&m);
 		error("%s: unexpected response from master 0x%08x",
-- 
1.7.3.3.1603.g7f137



More information about the openssh-unix-dev mailing list