From f0635717b3e840a72a962a2014b18d84fac4c83a Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Tue, 11 Aug 2009 17:18:35 +0000 Subject: Switch tmux to use imsg. This is the last major change to make the client-server protocol more resilient and make the protocol versioning work properly. In future, the only things requiring a protocol version bump will be changes in the message structs, and (when both client and server have this change) mixing different versions should nicely report an error message. As a side effect this also makes the code tidier, fixes a problem with the way errors reported during server startup were handled, and supports fd passing (which will be used in future). Looked over by eric@, thanks. Please note that mixing a client with this change with an older server or vice versa may cause tmux to crash or hang - tmux should be completely exited before upgrading. --- client-fn.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) (limited to 'client-fn.c') diff --git a/client-fn.c b/client-fn.c index 129c6871..789ac427 100644 --- a/client-fn.c +++ b/client-fn.c @@ -66,14 +66,7 @@ void client_write_server( struct client_ctx *cctx, enum msgtype type, void *buf, size_t len) { - struct hdr hdr; - - hdr.type = type; - hdr.size = len; - buffer_write(cctx->srv_out, &hdr, sizeof hdr); - - if (buf != NULL && len > 0) - buffer_write(cctx->srv_out, buf, len); + imsg_compose(&cctx->ibuf, type, PROTOCOL_VERSION, -1, -1, buf, len); } void -- cgit