summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@cvs.openbsd.org>2009-07-26 12:58:45 +0000
committerNicholas Marriott <nicm@cvs.openbsd.org>2009-07-26 12:58:45 +0000
commit9d7adcc68d696be005aa775aefe71538f3e82a63 (patch)
treeb71f925bb054ef9ce5cef706aea3729f79c7f0f7
parent040c8a0a2f1ccc88349164fc8bb816cde4d204c7 (diff)
Make all messages sent between the client and server fixed size.
This is the first of two changes to make the protocol more resilient and less sensitive to other changes in the code, particularly with commands. The client now packs argv into a buffer and sends it to the server for parsing, rather than doing it itself and sending the parsed command data. As a side-effect this also removes a lot of now-unused command marshalling code. Mixing a server without this change and a client with or vice versa will cause tmux to hang or crash, please ensure that tmux is entirely killed before upgrading.
-rw-r--r--usr.bin/tmux/client-fn.c18
-rw-r--r--usr.bin/tmux/client-msg.c15
-rw-r--r--usr.bin/tmux/client.c21
-rw-r--r--usr.bin/tmux/cmd-attach-session.c4
-rw-r--r--usr.bin/tmux/cmd-bind-key.c25
-rw-r--r--usr.bin/tmux/cmd-break-pane.c4
-rw-r--r--usr.bin/tmux/cmd-choose-session.c4
-rw-r--r--usr.bin/tmux/cmd-choose-window.c4
-rw-r--r--usr.bin/tmux/cmd-clear-history.c4
-rw-r--r--usr.bin/tmux/cmd-clock-mode.c4
-rw-r--r--usr.bin/tmux/cmd-command-prompt.c4
-rw-r--r--usr.bin/tmux/cmd-confirm-before.c4
-rw-r--r--usr.bin/tmux/cmd-copy-buffer.c27
-rw-r--r--usr.bin/tmux/cmd-copy-mode.c4
-rw-r--r--usr.bin/tmux/cmd-delete-buffer.c4
-rw-r--r--usr.bin/tmux/cmd-detach-client.c4
-rw-r--r--usr.bin/tmux/cmd-display-message.c4
-rw-r--r--usr.bin/tmux/cmd-down-pane.c4
-rw-r--r--usr.bin/tmux/cmd-find-window.c4
-rw-r--r--usr.bin/tmux/cmd-generic.c111
-rw-r--r--usr.bin/tmux/cmd-has-session.c4
-rw-r--r--usr.bin/tmux/cmd-if-shell.c27
-rw-r--r--usr.bin/tmux/cmd-kill-pane.c4
-rw-r--r--usr.bin/tmux/cmd-kill-server.c4
-rw-r--r--usr.bin/tmux/cmd-kill-session.c4
-rw-r--r--usr.bin/tmux/cmd-kill-window.c4
-rw-r--r--usr.bin/tmux/cmd-last-window.c4
-rw-r--r--usr.bin/tmux/cmd-link-window.c4
-rw-r--r--usr.bin/tmux/cmd-list-buffers.c4
-rw-r--r--usr.bin/tmux/cmd-list-clients.c4
-rw-r--r--usr.bin/tmux/cmd-list-commands.c4
-rw-r--r--usr.bin/tmux/cmd-list-keys.c4
-rw-r--r--usr.bin/tmux/cmd-list-sessions.c4
-rw-r--r--usr.bin/tmux/cmd-list-windows.c4
-rw-r--r--usr.bin/tmux/cmd-list.c37
-rw-r--r--usr.bin/tmux/cmd-load-buffer.c4
-rw-r--r--usr.bin/tmux/cmd-lock-server.c4
-rw-r--r--usr.bin/tmux/cmd-move-window.c4
-rw-r--r--usr.bin/tmux/cmd-new-session.c29
-rw-r--r--usr.bin/tmux/cmd-new-window.c29
-rw-r--r--usr.bin/tmux/cmd-next-layout.c4
-rw-r--r--usr.bin/tmux/cmd-next-window.c4
-rw-r--r--usr.bin/tmux/cmd-paste-buffer.c4
-rw-r--r--usr.bin/tmux/cmd-previous-layout.c4
-rw-r--r--usr.bin/tmux/cmd-previous-window.c4
-rw-r--r--usr.bin/tmux/cmd-refresh-client.c4
-rw-r--r--usr.bin/tmux/cmd-rename-session.c4
-rw-r--r--usr.bin/tmux/cmd-rename-window.c4
-rw-r--r--usr.bin/tmux/cmd-resize-pane.c4
-rw-r--r--usr.bin/tmux/cmd-respawn-window.c4
-rw-r--r--usr.bin/tmux/cmd-rotate-window.c4
-rw-r--r--usr.bin/tmux/cmd-save-buffer.c4
-rw-r--r--usr.bin/tmux/cmd-scroll-mode.c4
-rw-r--r--usr.bin/tmux/cmd-select-layout.c4
-rw-r--r--usr.bin/tmux/cmd-select-pane.c4
-rw-r--r--usr.bin/tmux/cmd-select-prompt.c4
-rw-r--r--usr.bin/tmux/cmd-select-window.c4
-rw-r--r--usr.bin/tmux/cmd-send-keys.c28
-rw-r--r--usr.bin/tmux/cmd-send-prefix.c4
-rw-r--r--usr.bin/tmux/cmd-server-info.c4
-rw-r--r--usr.bin/tmux/cmd-set-buffer.c4
-rw-r--r--usr.bin/tmux/cmd-set-option.c4
-rw-r--r--usr.bin/tmux/cmd-set-password.c25
-rw-r--r--usr.bin/tmux/cmd-set-window-option.c4
-rw-r--r--usr.bin/tmux/cmd-show-buffer.c4
-rw-r--r--usr.bin/tmux/cmd-show-options.c4
-rw-r--r--usr.bin/tmux/cmd-show-window-options.c4
-rw-r--r--usr.bin/tmux/cmd-source-file.c25
-rw-r--r--usr.bin/tmux/cmd-split-window.c27
-rw-r--r--usr.bin/tmux/cmd-start-server.c4
-rw-r--r--usr.bin/tmux/cmd-suspend-client.c4
-rw-r--r--usr.bin/tmux/cmd-swap-pane.c25
-rw-r--r--usr.bin/tmux/cmd-swap-window.c4
-rw-r--r--usr.bin/tmux/cmd-switch-client.c27
-rw-r--r--usr.bin/tmux/cmd-unbind-key.c23
-rw-r--r--usr.bin/tmux/cmd-unlink-window.c4
-rw-r--r--usr.bin/tmux/cmd-up-pane.c4
-rw-r--r--usr.bin/tmux/cmd.c142
-rw-r--r--usr.bin/tmux/server-fn.c13
-rw-r--r--usr.bin/tmux/server-msg.c95
-rw-r--r--usr.bin/tmux/tmux.c128
-rw-r--r--usr.bin/tmux/tmux.h60
82 files changed, 335 insertions, 862 deletions
diff --git a/usr.bin/tmux/client-fn.c b/usr.bin/tmux/client-fn.c
index 8a0e9c8627f..195254d322e 100644
--- a/usr.bin/tmux/client-fn.c
+++ b/usr.bin/tmux/client-fn.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: client-fn.c,v 1.1 2009/06/01 22:58:49 nicm Exp $ */
+/* $OpenBSD: client-fn.c,v 1.2 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -74,19 +74,3 @@ client_write_server(
if (buf != NULL && len > 0)
buffer_write(cctx->srv_out, buf, len);
}
-
-void
-client_write_server2(struct client_ctx *cctx,
- enum hdrtype type, void *buf1, size_t len1, void *buf2, size_t len2)
-{
- struct hdr hdr;
-
- hdr.type = type;
- hdr.size = len1 + len2;
- buffer_write(cctx->srv_out, &hdr, sizeof hdr);
-
- if (buf1 != NULL && len1 > 0)
- buffer_write(cctx->srv_out, buf1, len1);
- if (buf2 != NULL && len2 > 0)
- buffer_write(cctx->srv_out, buf2, len2);
-}
diff --git a/usr.bin/tmux/client-msg.c b/usr.bin/tmux/client-msg.c
index 4db5ea920b0..26183343d36 100644
--- a/usr.bin/tmux/client-msg.c
+++ b/usr.bin/tmux/client-msg.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: client-msg.c,v 1.4 2009/07/23 20:24:27 nicm Exp $ */
+/* $OpenBSD: client-msg.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -70,16 +70,15 @@ client_msg_dispatch(struct client_ctx *cctx)
int
client_msg_fn_error(struct hdr *hdr, struct client_ctx *cctx)
{
- char *errstr;
+ struct msg_print_data data;
- if (hdr->size == SIZE_MAX)
- fatalx("bad MSG_ERROR size");
+ if (hdr->size < sizeof data)
+ fatalx("bad MSG_PRINT size");
+ buffer_read(cctx->srv_in, &data, sizeof data);
- errstr = xmalloc(hdr->size + 1);
- buffer_read(cctx->srv_in, errstr, hdr->size);
- errstr[hdr->size] = '\0';
+ data.msg[(sizeof data.msg) - 1] = '\0';
+ cctx->errstr = xstrdup(data.msg);
- cctx->errstr = errstr;
return (-1);
}
diff --git a/usr.bin/tmux/client.c b/usr.bin/tmux/client.c
index fe68e24fc3d..4547b40e194 100644
--- a/usr.bin/tmux/client.c
+++ b/usr.bin/tmux/client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: client.c,v 1.6 2009/07/23 21:19:11 nicm Exp $ */
+/* $OpenBSD: client.c,v 1.7 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -44,8 +44,7 @@ client_init(char *path, struct client_ctx *cctx, int cmdflags, int flags)
struct winsize ws;
size_t size;
int mode;
- struct buffer *b;
- char *name;
+ char *name, *term;
char rpathbuf[MAXPATHLEN];
if (realpath(path, rpathbuf) == NULL)
@@ -103,20 +102,24 @@ server_started:
data.flags = flags;
data.sx = ws.ws_col;
data.sy = ws.ws_row;
- *data.tty = '\0';
+
if (getcwd(data.cwd, sizeof data.cwd) == NULL)
*data.cwd = '\0';
+ *data.term = '\0';
+ if ((term = getenv("TERM")) != NULL) {
+ if (strlcpy(data.term,
+ term, sizeof data.term) >= sizeof data.term)
+ *data.term = '\0';
+ }
+
+ *data.tty = '\0';
if ((name = ttyname(STDIN_FILENO)) == NULL)
fatal("ttyname failed");
if (strlcpy(data.tty, name, sizeof data.tty) >= sizeof data.tty)
fatalx("ttyname failed");
- b = buffer_create(BUFSIZ);
- cmd_send_string(b, getenv("TERM"));
- client_write_server2(cctx, MSG_IDENTIFY,
- &data, sizeof data, BUFFER_OUT(b), BUFFER_USED(b));
- buffer_destroy(b);
+ client_write_server(cctx, MSG_IDENTIFY, &data, sizeof data);
}
return (0);
diff --git a/usr.bin/tmux/cmd-attach-session.c b/usr.bin/tmux/cmd-attach-session.c
index 5e6454e81bf..22d6423b891 100644
--- a/usr.bin/tmux/cmd-attach-session.c
+++ b/usr.bin/tmux/cmd-attach-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-attach-session.c,v 1.5 2009/07/23 12:33:48 nicm Exp $ */
+/* $OpenBSD: cmd-attach-session.c,v 1.6 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_attach_session_entry = {
cmd_target_init,
cmd_target_parse,
cmd_attach_session_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-bind-key.c b/usr.bin/tmux/cmd-bind-key.c
index c4775474dc4..74f1db566e5 100644
--- a/usr.bin/tmux/cmd-bind-key.c
+++ b/usr.bin/tmux/cmd-bind-key.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-bind-key.c,v 1.3 2009/07/24 14:52:47 nicm Exp $ */
+/* $OpenBSD: cmd-bind-key.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -26,8 +26,6 @@
int cmd_bind_key_parse(struct cmd *, int, char **, char **);
int cmd_bind_key_exec(struct cmd *, struct cmd_ctx *);
-void cmd_bind_key_send(struct cmd *, struct buffer *);
-void cmd_bind_key_recv(struct cmd *, struct buffer *);
void cmd_bind_key_free(struct cmd *);
size_t cmd_bind_key_print(struct cmd *, char *, size_t);
@@ -44,8 +42,6 @@ const struct cmd_entry cmd_bind_key_entry = {
NULL,
cmd_bind_key_parse,
cmd_bind_key_exec,
- cmd_bind_key_send,
- cmd_bind_key_recv,
cmd_bind_key_free,
cmd_bind_key_print
};
@@ -114,25 +110,6 @@ cmd_bind_key_exec(struct cmd *self, unused struct cmd_ctx *ctx)
}
void
-cmd_bind_key_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_bind_key_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_list_send(data->cmdlist, b);
-}
-
-void
-cmd_bind_key_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_bind_key_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->cmdlist = cmd_list_recv(b);
-}
-
-void
cmd_bind_key_free(struct cmd *self)
{
struct cmd_bind_key_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-break-pane.c b/usr.bin/tmux/cmd-break-pane.c
index b77e1536276..edf2fbf8b87 100644
--- a/usr.bin/tmux/cmd-break-pane.c
+++ b/usr.bin/tmux/cmd-break-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-break-pane.c,v 1.3 2009/07/19 13:21:40 nicm Exp $ */
+/* $OpenBSD: cmd-break-pane.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_break_pane_entry = {
cmd_pane_init,
cmd_pane_parse,
cmd_break_pane_exec,
- cmd_pane_send,
- cmd_pane_recv,
cmd_pane_free,
cmd_pane_print
};
diff --git a/usr.bin/tmux/cmd-choose-session.c b/usr.bin/tmux/cmd-choose-session.c
index 91613b8f623..81719f0fc55 100644
--- a/usr.bin/tmux/cmd-choose-session.c
+++ b/usr.bin/tmux/cmd-choose-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-choose-session.c,v 1.3 2009/07/17 07:05:58 nicm Exp $ */
+/* $OpenBSD: cmd-choose-session.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_choose_session_entry = {
cmd_target_init,
cmd_target_parse,
cmd_choose_session_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-choose-window.c b/usr.bin/tmux/cmd-choose-window.c
index 99f7f7a67bc..ed853d74f0c 100644
--- a/usr.bin/tmux/cmd-choose-window.c
+++ b/usr.bin/tmux/cmd-choose-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-choose-window.c,v 1.4 2009/07/19 13:21:40 nicm Exp $ */
+/* $OpenBSD: cmd-choose-window.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_choose_window_entry = {
cmd_target_init,
cmd_target_parse,
cmd_choose_window_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-clear-history.c b/usr.bin/tmux/cmd-clear-history.c
index 07a400cb174..922fe25a4fa 100644
--- a/usr.bin/tmux/cmd-clear-history.c
+++ b/usr.bin/tmux/cmd-clear-history.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-clear-history.c,v 1.3 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-clear-history.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_clear_history_entry = {
cmd_pane_init,
cmd_pane_parse,
cmd_clear_history_exec,
- cmd_pane_send,
- cmd_pane_recv,
cmd_pane_free,
cmd_pane_print
};
diff --git a/usr.bin/tmux/cmd-clock-mode.c b/usr.bin/tmux/cmd-clock-mode.c
index 6ca2fddc3b1..89231c8e89f 100644
--- a/usr.bin/tmux/cmd-clock-mode.c
+++ b/usr.bin/tmux/cmd-clock-mode.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-clock-mode.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-clock-mode.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_clock_mode_entry = {
cmd_target_init,
cmd_target_parse,
cmd_clock_mode_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-command-prompt.c b/usr.bin/tmux/cmd-command-prompt.c
index be532a75738..4019689b702 100644
--- a/usr.bin/tmux/cmd-command-prompt.c
+++ b/usr.bin/tmux/cmd-command-prompt.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-command-prompt.c,v 1.5 2009/07/20 07:31:10 nicm Exp $ */
+/* $OpenBSD: cmd-command-prompt.c,v 1.6 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -40,8 +40,6 @@ const struct cmd_entry cmd_command_prompt_entry = {
cmd_command_prompt_init,
cmd_target_parse,
cmd_command_prompt_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-confirm-before.c b/usr.bin/tmux/cmd-confirm-before.c
index 4fe70270bb6..e4fd9e2617a 100644
--- a/usr.bin/tmux/cmd-confirm-before.c
+++ b/usr.bin/tmux/cmd-confirm-before.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-confirm-before.c,v 1.5 2009/07/21 18:52:03 nicm Exp $ */
+/* $OpenBSD: cmd-confirm-before.c,v 1.6 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -38,8 +38,6 @@ const struct cmd_entry cmd_confirm_before_entry = {
cmd_confirm_before_init,
cmd_target_parse,
cmd_confirm_before_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-copy-buffer.c b/usr.bin/tmux/cmd-copy-buffer.c
index 4f922a16d5a..3f6f5cb28a7 100644
--- a/usr.bin/tmux/cmd-copy-buffer.c
+++ b/usr.bin/tmux/cmd-copy-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-copy-buffer.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-copy-buffer.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -26,8 +26,6 @@
int cmd_copy_buffer_parse(struct cmd *, int, char **, char **);
int cmd_copy_buffer_exec(struct cmd *, struct cmd_ctx *);
-void cmd_copy_buffer_send(struct cmd *, struct buffer *);
-void cmd_copy_buffer_recv(struct cmd *, struct buffer *);
void cmd_copy_buffer_free(struct cmd *);
void cmd_copy_buffer_init(struct cmd *, int);
size_t cmd_copy_buffer_print(struct cmd *, char *, size_t);
@@ -46,8 +44,6 @@ const struct cmd_entry cmd_copy_buffer_entry = {
cmd_copy_buffer_init,
cmd_copy_buffer_parse,
cmd_copy_buffer_exec,
- cmd_copy_buffer_send,
- cmd_copy_buffer_recv,
cmd_copy_buffer_free,
cmd_copy_buffer_print
};
@@ -161,27 +157,6 @@ cmd_copy_buffer_exec(struct cmd *self, struct cmd_ctx *ctx)
}
void
-cmd_copy_buffer_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_copy_buffer_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->dst_session);
- cmd_send_string(b, data->src_session);
-}
-
-void
-cmd_copy_buffer_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_copy_buffer_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->dst_session = cmd_recv_string(b);
- data->src_session = cmd_recv_string(b);
-}
-
-void
cmd_copy_buffer_free(struct cmd *self)
{
struct cmd_copy_buffer_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-copy-mode.c b/usr.bin/tmux/cmd-copy-mode.c
index 481d3508b5f..6e9a1f3ddd7 100644
--- a/usr.bin/tmux/cmd-copy-mode.c
+++ b/usr.bin/tmux/cmd-copy-mode.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-copy-mode.c,v 1.4 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-copy-mode.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_copy_mode_entry = {
cmd_target_init,
cmd_target_parse,
cmd_copy_mode_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
NULL
};
diff --git a/usr.bin/tmux/cmd-delete-buffer.c b/usr.bin/tmux/cmd-delete-buffer.c
index 579d13c70e8..de9de2156a6 100644
--- a/usr.bin/tmux/cmd-delete-buffer.c
+++ b/usr.bin/tmux/cmd-delete-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-delete-buffer.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-delete-buffer.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_delete_buffer_entry = {
cmd_buffer_init,
cmd_buffer_parse,
cmd_delete_buffer_exec,
- cmd_buffer_send,
- cmd_buffer_recv,
cmd_buffer_free,
cmd_buffer_print
};
diff --git a/usr.bin/tmux/cmd-detach-client.c b/usr.bin/tmux/cmd-detach-client.c
index 1f77d82e0a0..334338282ad 100644
--- a/usr.bin/tmux/cmd-detach-client.c
+++ b/usr.bin/tmux/cmd-detach-client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-detach-client.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-detach-client.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_detach_client_entry = {
cmd_target_init,
cmd_target_parse,
cmd_detach_client_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-display-message.c b/usr.bin/tmux/cmd-display-message.c
index dea7bf0748c..71b64f01364 100644
--- a/usr.bin/tmux/cmd-display-message.c
+++ b/usr.bin/tmux/cmd-display-message.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-display-message.c,v 1.1 2009/07/17 18:45:08 nicm Exp $ */
+/* $OpenBSD: cmd-display-message.c,v 1.2 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_display_message_entry = {
cmd_target_init,
cmd_target_parse,
cmd_display_message_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-down-pane.c b/usr.bin/tmux/cmd-down-pane.c
index feec23a3521..a436da5de5f 100644
--- a/usr.bin/tmux/cmd-down-pane.c
+++ b/usr.bin/tmux/cmd-down-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-down-pane.c,v 1.5 2009/07/20 19:35:33 nicm Exp $ */
+/* $OpenBSD: cmd-down-pane.c,v 1.6 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_down_pane_entry = {
cmd_target_init,
cmd_target_parse,
cmd_down_pane_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-find-window.c b/usr.bin/tmux/cmd-find-window.c
index 95dac74fb56..0e2d876b42d 100644
--- a/usr.bin/tmux/cmd-find-window.c
+++ b/usr.bin/tmux/cmd-find-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-find-window.c,v 1.4 2009/07/17 07:05:58 nicm Exp $ */
+/* $OpenBSD: cmd-find-window.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -38,8 +38,6 @@ const struct cmd_entry cmd_find_window_entry = {
cmd_target_init,
cmd_target_parse,
cmd_find_window_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-generic.c b/usr.bin/tmux/cmd-generic.c
index 843e2ae3065..9eff797b4ff 100644
--- a/usr.bin/tmux/cmd-generic.c
+++ b/usr.bin/tmux/cmd-generic.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-generic.c,v 1.3 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-generic.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -177,27 +177,6 @@ usage:
}
void
-cmd_target_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_target_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->target);
- cmd_send_string(b, data->arg);
-}
-
-void
-cmd_target_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_target_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->target = cmd_recv_string(b);
- data->arg = cmd_recv_string(b);
-}
-
-void
cmd_target_free(struct cmd *self)
{
struct cmd_target_data *data = self->data;
@@ -279,29 +258,6 @@ usage:
}
void
-cmd_srcdst_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_srcdst_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->src);
- cmd_send_string(b, data->dst);
- cmd_send_string(b, data->arg);
-}
-
-void
-cmd_srcdst_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_srcdst_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->src = cmd_recv_string(b);
- data->dst = cmd_recv_string(b);
- data->arg = cmd_recv_string(b);
-}
-
-void
cmd_srcdst_free(struct cmd *self)
{
struct cmd_srcdst_data *data = self->data;
@@ -395,27 +351,6 @@ error:
}
void
-cmd_buffer_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_buffer_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->target);
- cmd_send_string(b, data->arg);
-}
-
-void
-cmd_buffer_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_buffer_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->target = cmd_recv_string(b);
- data->arg = cmd_recv_string(b);
-}
-
-void
cmd_buffer_free(struct cmd *self)
{
struct cmd_buffer_data *data = self->data;
@@ -501,29 +436,6 @@ usage:
}
void
-cmd_option_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_option_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->target);
- cmd_send_string(b, data->option);
- cmd_send_string(b, data->value);
-}
-
-void
-cmd_option_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_option_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->target = cmd_recv_string(b);
- data->option = cmd_recv_string(b);
- data->value = cmd_recv_string(b);
-}
-
-void
cmd_option_free(struct cmd *self)
{
struct cmd_option_data *data = self->data;
@@ -618,27 +530,6 @@ error:
}
void
-cmd_pane_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_pane_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->target);
- cmd_send_string(b, data->arg);
-}
-
-void
-cmd_pane_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_pane_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->target = cmd_recv_string(b);
- data->arg = cmd_recv_string(b);
-}
-
-void
cmd_pane_free(struct cmd *self)
{
struct cmd_pane_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-has-session.c b/usr.bin/tmux/cmd-has-session.c
index 67df518007b..62c7c431b9f 100644
--- a/usr.bin/tmux/cmd-has-session.c
+++ b/usr.bin/tmux/cmd-has-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-has-session.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-has-session.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_has_session_entry = {
cmd_target_init,
cmd_target_parse,
cmd_has_session_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-if-shell.c b/usr.bin/tmux/cmd-if-shell.c
index c50d8d998e6..77435382551 100644
--- a/usr.bin/tmux/cmd-if-shell.c
+++ b/usr.bin/tmux/cmd-if-shell.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-if-shell.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-if-shell.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -30,8 +30,6 @@
int cmd_if_shell_parse(struct cmd *, int, char **, char **);
int cmd_if_shell_exec(struct cmd *, struct cmd_ctx *);
-void cmd_if_shell_send(struct cmd *, struct buffer *);
-void cmd_if_shell_recv(struct cmd *, struct buffer *);
void cmd_if_shell_free(struct cmd *);
void cmd_if_shell_init(struct cmd *, int);
size_t cmd_if_shell_print(struct cmd *, char *, size_t);
@@ -48,8 +46,6 @@ const struct cmd_entry cmd_if_shell_entry = {
cmd_if_shell_init,
cmd_if_shell_parse,
cmd_if_shell_exec,
- cmd_if_shell_send,
- cmd_if_shell_recv,
cmd_if_shell_free,
cmd_if_shell_print
};
@@ -127,27 +123,6 @@ cmd_if_shell_exec(struct cmd *self, struct cmd_ctx *ctx)
}
void
-cmd_if_shell_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_if_shell_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->cmd);
- cmd_send_string(b, data->sh_cmd);
-}
-
-void
-cmd_if_shell_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_if_shell_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->cmd = cmd_recv_string(b);
- data->sh_cmd = cmd_recv_string(b);
-}
-
-void
cmd_if_shell_free(struct cmd *self)
{
struct cmd_if_shell_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-kill-pane.c b/usr.bin/tmux/cmd-kill-pane.c
index 319da2bcbf6..c63125ce962 100644
--- a/usr.bin/tmux/cmd-kill-pane.c
+++ b/usr.bin/tmux/cmd-kill-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-kill-pane.c,v 1.4 2009/07/19 13:21:40 nicm Exp $ */
+/* $OpenBSD: cmd-kill-pane.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_kill_pane_entry = {
cmd_pane_init,
cmd_pane_parse,
cmd_kill_pane_exec,
- cmd_pane_send,
- cmd_pane_recv,
cmd_pane_free,
cmd_pane_print
};
diff --git a/usr.bin/tmux/cmd-kill-server.c b/usr.bin/tmux/cmd-kill-server.c
index 3c78a07aa49..59de2e58a35 100644
--- a/usr.bin/tmux/cmd-kill-server.c
+++ b/usr.bin/tmux/cmd-kill-server.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-kill-server.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-kill-server.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -37,8 +37,6 @@ const struct cmd_entry cmd_kill_server_entry = {
NULL,
cmd_kill_server_exec,
NULL,
- NULL,
- NULL,
NULL
};
diff --git a/usr.bin/tmux/cmd-kill-session.c b/usr.bin/tmux/cmd-kill-session.c
index c965b9b0ac7..896df6e8057 100644
--- a/usr.bin/tmux/cmd-kill-session.c
+++ b/usr.bin/tmux/cmd-kill-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-kill-session.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-kill-session.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -36,8 +36,6 @@ const struct cmd_entry cmd_kill_session_entry = {
cmd_target_init,
cmd_target_parse,
cmd_kill_session_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-kill-window.c b/usr.bin/tmux/cmd-kill-window.c
index f5ded5e6342..c6b7576f55a 100644
--- a/usr.bin/tmux/cmd-kill-window.c
+++ b/usr.bin/tmux/cmd-kill-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-kill-window.c,v 1.4 2009/07/17 20:37:03 nicm Exp $ */
+/* $OpenBSD: cmd-kill-window.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_kill_window_entry = {
cmd_target_init,
cmd_target_parse,
cmd_kill_window_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-last-window.c b/usr.bin/tmux/cmd-last-window.c
index 9bd652cfc1c..973ff3c79af 100644
--- a/usr.bin/tmux/cmd-last-window.c
+++ b/usr.bin/tmux/cmd-last-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-last-window.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-last-window.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_last_window_entry = {
cmd_target_init,
cmd_target_parse,
cmd_last_window_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-link-window.c b/usr.bin/tmux/cmd-link-window.c
index 4668cf8d876..53f413b99ca 100644
--- a/usr.bin/tmux/cmd-link-window.c
+++ b/usr.bin/tmux/cmd-link-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-link-window.c,v 1.3 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-link-window.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_link_window_entry = {
cmd_srcdst_init,
cmd_srcdst_parse,
cmd_link_window_exec,
- cmd_srcdst_send,
- cmd_srcdst_recv,
cmd_srcdst_free,
cmd_srcdst_print
};
diff --git a/usr.bin/tmux/cmd-list-buffers.c b/usr.bin/tmux/cmd-list-buffers.c
index 409cb93b411..7e1940cb5f0 100644
--- a/usr.bin/tmux/cmd-list-buffers.c
+++ b/usr.bin/tmux/cmd-list-buffers.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-buffers.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-list-buffers.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_list_buffers_entry = {
cmd_target_init,
cmd_target_parse,
cmd_list_buffers_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-list-clients.c b/usr.bin/tmux/cmd-list-clients.c
index 86115771331..d472d717f92 100644
--- a/usr.bin/tmux/cmd-list-clients.c
+++ b/usr.bin/tmux/cmd-list-clients.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-clients.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-list-clients.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -37,8 +37,6 @@ const struct cmd_entry cmd_list_clients_entry = {
NULL,
cmd_list_clients_exec,
NULL,
- NULL,
- NULL,
NULL
};
diff --git a/usr.bin/tmux/cmd-list-commands.c b/usr.bin/tmux/cmd-list-commands.c
index f7ea2301a15..5685af075a5 100644
--- a/usr.bin/tmux/cmd-list-commands.c
+++ b/usr.bin/tmux/cmd-list-commands.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-commands.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-list-commands.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -34,8 +34,6 @@ const struct cmd_entry cmd_list_commands_entry = {
NULL,
cmd_list_commands_exec,
NULL,
- NULL,
- NULL,
NULL
};
diff --git a/usr.bin/tmux/cmd-list-keys.c b/usr.bin/tmux/cmd-list-keys.c
index 5cfa7ae6818..3b2cf857153 100644
--- a/usr.bin/tmux/cmd-list-keys.c
+++ b/usr.bin/tmux/cmd-list-keys.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-keys.c,v 1.4 2009/07/24 14:52:47 nicm Exp $ */
+/* $OpenBSD: cmd-list-keys.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -36,8 +36,6 @@ const struct cmd_entry cmd_list_keys_entry = {
NULL,
cmd_list_keys_exec,
NULL,
- NULL,
- NULL,
NULL
};
diff --git a/usr.bin/tmux/cmd-list-sessions.c b/usr.bin/tmux/cmd-list-sessions.c
index ec35edeae12..9c03f5589ac 100644
--- a/usr.bin/tmux/cmd-list-sessions.c
+++ b/usr.bin/tmux/cmd-list-sessions.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-sessions.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-list-sessions.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -36,8 +36,6 @@ const struct cmd_entry cmd_list_sessions_entry = {
NULL,
cmd_list_sessions_exec,
NULL,
- NULL,
- NULL,
NULL
};
diff --git a/usr.bin/tmux/cmd-list-windows.c b/usr.bin/tmux/cmd-list-windows.c
index 62c4fdc5dd4..9802eb2110c 100644
--- a/usr.bin/tmux/cmd-list-windows.c
+++ b/usr.bin/tmux/cmd-list-windows.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-windows.c,v 1.3 2009/07/19 13:21:40 nicm Exp $ */
+/* $OpenBSD: cmd-list-windows.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_list_windows_entry = {
cmd_target_init,
cmd_target_parse,
cmd_list_windows_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-list.c b/usr.bin/tmux/cmd-list.c
index 2d778e25e31..6054ac53ae6 100644
--- a/usr.bin/tmux/cmd-list.c
+++ b/usr.bin/tmux/cmd-list.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list.c,v 1.1 2009/06/01 22:58:49 nicm Exp $ */
+/* $OpenBSD: cmd-list.c,v 1.2 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -87,41 +87,6 @@ cmd_list_exec(struct cmd_list *cmdlist, struct cmd_ctx *ctx)
}
void
-cmd_list_send(struct cmd_list *cmdlist, struct buffer *b)
-{
- struct cmd *cmd;
- u_int n;
-
- n = 0;
- TAILQ_FOREACH(cmd, cmdlist, qentry)
- n++;
-
- buffer_write(b, &n, sizeof n);
- TAILQ_FOREACH(cmd, cmdlist, qentry)
- cmd_send(cmd, b);
-}
-
-struct cmd_list *
-cmd_list_recv(struct buffer *b)
-{
- struct cmd_list *cmdlist;
- struct cmd *cmd;
- u_int n;
-
- buffer_read(b, &n, sizeof n);
-
- cmdlist = xmalloc(sizeof *cmdlist);
- TAILQ_INIT(cmdlist);
-
- while (n-- > 0) {
- cmd = cmd_recv(b);
- TAILQ_INSERT_TAIL(cmdlist, cmd, qentry);
- }
-
- return (cmdlist);
-}
-
-void
cmd_list_free(struct cmd_list *cmdlist)
{
struct cmd *cmd;
diff --git a/usr.bin/tmux/cmd-load-buffer.c b/usr.bin/tmux/cmd-load-buffer.c
index 226c832e72d..43bc7221b9a 100644
--- a/usr.bin/tmux/cmd-load-buffer.c
+++ b/usr.bin/tmux/cmd-load-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-load-buffer.c,v 1.3 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-load-buffer.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -39,8 +39,6 @@ const struct cmd_entry cmd_load_buffer_entry = {
cmd_buffer_init,
cmd_buffer_parse,
cmd_load_buffer_exec,
- cmd_buffer_send,
- cmd_buffer_recv,
cmd_buffer_free,
cmd_buffer_print
};
diff --git a/usr.bin/tmux/cmd-lock-server.c b/usr.bin/tmux/cmd-lock-server.c
index 6b8a1b7c23d..37d424af832 100644
--- a/usr.bin/tmux/cmd-lock-server.c
+++ b/usr.bin/tmux/cmd-lock-server.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-lock-server.c,v 1.3 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-lock-server.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -39,8 +39,6 @@ const struct cmd_entry cmd_lock_server_entry = {
cmd_lock_server_exec,
NULL,
NULL,
- NULL,
- NULL,
};
int
diff --git a/usr.bin/tmux/cmd-move-window.c b/usr.bin/tmux/cmd-move-window.c
index 6bd4883cd3a..a7301d94d1b 100644
--- a/usr.bin/tmux/cmd-move-window.c
+++ b/usr.bin/tmux/cmd-move-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-move-window.c,v 1.3 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-move-window.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_move_window_entry = {
cmd_srcdst_init,
cmd_srcdst_parse,
cmd_move_window_exec,
- cmd_srcdst_send,
- cmd_srcdst_recv,
cmd_srcdst_free,
cmd_srcdst_print
};
diff --git a/usr.bin/tmux/cmd-new-session.c b/usr.bin/tmux/cmd-new-session.c
index e1c83315222..a5ea55a3329 100644
--- a/usr.bin/tmux/cmd-new-session.c
+++ b/usr.bin/tmux/cmd-new-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-new-session.c,v 1.7 2009/07/23 15:47:56 nicm Exp $ */
+/* $OpenBSD: cmd-new-session.c,v 1.8 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -26,8 +26,6 @@
int cmd_new_session_parse(struct cmd *, int, char **, char **);
int cmd_new_session_exec(struct cmd *, struct cmd_ctx *);
-void cmd_new_session_send(struct cmd *, struct buffer *);
-void cmd_new_session_recv(struct cmd *, struct buffer *);
void cmd_new_session_free(struct cmd *);
void cmd_new_session_init(struct cmd *, int);
size_t cmd_new_session_print(struct cmd *, char *, size_t);
@@ -46,8 +44,6 @@ const struct cmd_entry cmd_new_session_entry = {
cmd_new_session_init,
cmd_new_session_parse,
cmd_new_session_exec,
- cmd_new_session_send,
- cmd_new_session_recv,
cmd_new_session_free,
cmd_new_session_print
};
@@ -229,29 +225,6 @@ cmd_new_session_exec(struct cmd *self, struct cmd_ctx *ctx)
}
void
-cmd_new_session_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_new_session_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->newname);
- cmd_send_string(b, data->winname);
- cmd_send_string(b, data->cmd);
-}
-
-void
-cmd_new_session_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_new_session_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->newname = cmd_recv_string(b);
- data->winname = cmd_recv_string(b);
- data->cmd = cmd_recv_string(b);
-}
-
-void
cmd_new_session_free(struct cmd *self)
{
struct cmd_new_session_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-new-window.c b/usr.bin/tmux/cmd-new-window.c
index 07d6ba06bcf..fd55516f7c6 100644
--- a/usr.bin/tmux/cmd-new-window.c
+++ b/usr.bin/tmux/cmd-new-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-new-window.c,v 1.4 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-new-window.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -28,8 +28,6 @@
int cmd_new_window_parse(struct cmd *, int, char **, char **);
int cmd_new_window_exec(struct cmd *, struct cmd_ctx *);
-void cmd_new_window_send(struct cmd *, struct buffer *);
-void cmd_new_window_recv(struct cmd *, struct buffer *);
void cmd_new_window_free(struct cmd *);
void cmd_new_window_init(struct cmd *, int);
size_t cmd_new_window_print(struct cmd *, char *, size_t);
@@ -49,8 +47,6 @@ const struct cmd_entry cmd_new_window_entry = {
cmd_new_window_init,
cmd_new_window_parse,
cmd_new_window_exec,
- cmd_new_window_send,
- cmd_new_window_recv,
cmd_new_window_free,
cmd_new_window_print
};
@@ -174,29 +170,6 @@ cmd_new_window_exec(struct cmd *self, struct cmd_ctx *ctx)
}
void
-cmd_new_window_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_new_window_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->target);
- cmd_send_string(b, data->name);
- cmd_send_string(b, data->cmd);
-}
-
-void
-cmd_new_window_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_new_window_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->target = cmd_recv_string(b);
- data->name = cmd_recv_string(b);
- data->cmd = cmd_recv_string(b);
-}
-
-void
cmd_new_window_free(struct cmd *self)
{
struct cmd_new_window_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-next-layout.c b/usr.bin/tmux/cmd-next-layout.c
index d791344b86f..81a943233da 100644
--- a/usr.bin/tmux/cmd-next-layout.c
+++ b/usr.bin/tmux/cmd-next-layout.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-next-layout.c,v 1.3 2009/07/19 13:21:40 nicm Exp $ */
+/* $OpenBSD: cmd-next-layout.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_next_layout_entry = {
cmd_target_init,
cmd_target_parse,
cmd_next_layout_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-next-window.c b/usr.bin/tmux/cmd-next-window.c
index f3bfae17f6e..455efe246f4 100644
--- a/usr.bin/tmux/cmd-next-window.c
+++ b/usr.bin/tmux/cmd-next-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-next-window.c,v 1.4 2009/07/21 17:57:29 nicm Exp $ */
+/* $OpenBSD: cmd-next-window.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -34,8 +34,6 @@ const struct cmd_entry cmd_next_window_entry = {
cmd_next_window_init,
cmd_target_parse,
cmd_next_window_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-paste-buffer.c b/usr.bin/tmux/cmd-paste-buffer.c
index 7e078767b18..3e4e24a60c9 100644
--- a/usr.bin/tmux/cmd-paste-buffer.c
+++ b/usr.bin/tmux/cmd-paste-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-paste-buffer.c,v 1.4 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-paste-buffer.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -36,8 +36,6 @@ const struct cmd_entry cmd_paste_buffer_entry = {
cmd_buffer_init,
cmd_buffer_parse,
cmd_paste_buffer_exec,
- cmd_buffer_send,
- cmd_buffer_recv,
cmd_buffer_free,
cmd_buffer_print
};
diff --git a/usr.bin/tmux/cmd-previous-layout.c b/usr.bin/tmux/cmd-previous-layout.c
index 032402846e5..9d87a2473d7 100644
--- a/usr.bin/tmux/cmd-previous-layout.c
+++ b/usr.bin/tmux/cmd-previous-layout.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-previous-layout.c,v 1.3 2009/07/19 13:21:40 nicm Exp $ */
+/* $OpenBSD: cmd-previous-layout.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_previous_layout_entry = {
cmd_target_init,
cmd_target_parse,
cmd_previous_layout_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-previous-window.c b/usr.bin/tmux/cmd-previous-window.c
index ae0abdcee50..8b5a3e2806b 100644
--- a/usr.bin/tmux/cmd-previous-window.c
+++ b/usr.bin/tmux/cmd-previous-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-previous-window.c,v 1.4 2009/07/21 17:57:29 nicm Exp $ */
+/* $OpenBSD: cmd-previous-window.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -34,8 +34,6 @@ const struct cmd_entry cmd_previous_window_entry = {
cmd_previous_window_init,
cmd_target_parse,
cmd_previous_window_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-refresh-client.c b/usr.bin/tmux/cmd-refresh-client.c
index b91ed6ec889..a7630b020ec 100644
--- a/usr.bin/tmux/cmd-refresh-client.c
+++ b/usr.bin/tmux/cmd-refresh-client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-refresh-client.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-refresh-client.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_refresh_client_entry = {
cmd_target_init,
cmd_target_parse,
cmd_refresh_client_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-rename-session.c b/usr.bin/tmux/cmd-rename-session.c
index 64fb445bdc1..f02dcbcff71 100644
--- a/usr.bin/tmux/cmd-rename-session.c
+++ b/usr.bin/tmux/cmd-rename-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-rename-session.c,v 1.3 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-rename-session.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_rename_session_entry = {
cmd_target_init,
cmd_target_parse,
cmd_rename_session_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-rename-window.c b/usr.bin/tmux/cmd-rename-window.c
index a262c8899ed..722e0394617 100644
--- a/usr.bin/tmux/cmd-rename-window.c
+++ b/usr.bin/tmux/cmd-rename-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-rename-window.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-rename-window.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_rename_window_entry = {
cmd_target_init,
cmd_target_parse,
cmd_rename_window_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-resize-pane.c b/usr.bin/tmux/cmd-resize-pane.c
index 6e9377ad134..a494e44aec4 100644
--- a/usr.bin/tmux/cmd-resize-pane.c
+++ b/usr.bin/tmux/cmd-resize-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-resize-pane.c,v 1.4 2009/07/21 17:57:29 nicm Exp $ */
+/* $OpenBSD: cmd-resize-pane.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -37,8 +37,6 @@ const struct cmd_entry cmd_resize_pane_entry = {
cmd_resize_pane_init,
cmd_pane_parse,
cmd_resize_pane_exec,
- cmd_pane_send,
- cmd_pane_recv,
cmd_pane_free,
cmd_pane_print
};
diff --git a/usr.bin/tmux/cmd-respawn-window.c b/usr.bin/tmux/cmd-respawn-window.c
index 4d450affa62..e9ac69d01c8 100644
--- a/usr.bin/tmux/cmd-respawn-window.c
+++ b/usr.bin/tmux/cmd-respawn-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-respawn-window.c,v 1.4 2009/07/24 19:35:33 nicm Exp $ */
+/* $OpenBSD: cmd-respawn-window.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_respawn_window_entry = {
cmd_target_init,
cmd_target_parse,
cmd_respawn_window_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-rotate-window.c b/usr.bin/tmux/cmd-rotate-window.c
index d18f704d6d3..4fdc0a221b1 100644
--- a/usr.bin/tmux/cmd-rotate-window.c
+++ b/usr.bin/tmux/cmd-rotate-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-rotate-window.c,v 1.8 2009/07/21 17:57:29 nicm Exp $ */
+/* $OpenBSD: cmd-rotate-window.c,v 1.9 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -34,8 +34,6 @@ const struct cmd_entry cmd_rotate_window_entry = {
cmd_rotate_window_init,
cmd_target_parse,
cmd_rotate_window_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-save-buffer.c b/usr.bin/tmux/cmd-save-buffer.c
index b6ae18dc8e2..22ea1c48b00 100644
--- a/usr.bin/tmux/cmd-save-buffer.c
+++ b/usr.bin/tmux/cmd-save-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-save-buffer.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-save-buffer.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -37,8 +37,6 @@ const struct cmd_entry cmd_save_buffer_entry = {
cmd_buffer_init,
cmd_buffer_parse,
cmd_save_buffer_exec,
- cmd_buffer_send,
- cmd_buffer_recv,
cmd_buffer_free,
cmd_buffer_print
};
diff --git a/usr.bin/tmux/cmd-scroll-mode.c b/usr.bin/tmux/cmd-scroll-mode.c
index d5085b29d04..a9f7906c762 100644
--- a/usr.bin/tmux/cmd-scroll-mode.c
+++ b/usr.bin/tmux/cmd-scroll-mode.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-scroll-mode.c,v 1.4 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-scroll-mode.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -34,8 +34,6 @@ const struct cmd_entry cmd_scroll_mode_entry = {
cmd_scroll_mode_init,
cmd_target_parse,
cmd_scroll_mode_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-select-layout.c b/usr.bin/tmux/cmd-select-layout.c
index 0fbfa77f052..7278e473874 100644
--- a/usr.bin/tmux/cmd-select-layout.c
+++ b/usr.bin/tmux/cmd-select-layout.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-select-layout.c,v 1.4 2009/07/21 17:57:29 nicm Exp $ */
+/* $OpenBSD: cmd-select-layout.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -34,8 +34,6 @@ const struct cmd_entry cmd_select_layout_entry = {
cmd_select_layout_init,
cmd_target_parse,
cmd_select_layout_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-select-pane.c b/usr.bin/tmux/cmd-select-pane.c
index 725d3bd4286..5e7d3509150 100644
--- a/usr.bin/tmux/cmd-select-pane.c
+++ b/usr.bin/tmux/cmd-select-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-select-pane.c,v 1.5 2009/07/20 19:35:33 nicm Exp $ */
+/* $OpenBSD: cmd-select-pane.c,v 1.6 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_select_pane_entry = {
cmd_pane_init,
cmd_pane_parse,
cmd_select_pane_exec,
- cmd_pane_send,
- cmd_pane_recv,
cmd_pane_free,
cmd_pane_print
};
diff --git a/usr.bin/tmux/cmd-select-prompt.c b/usr.bin/tmux/cmd-select-prompt.c
index 76618175484..5606ea733f0 100644
--- a/usr.bin/tmux/cmd-select-prompt.c
+++ b/usr.bin/tmux/cmd-select-prompt.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-select-prompt.c,v 1.4 2009/07/17 06:13:27 nicm Exp $ */
+/* $OpenBSD: cmd-select-prompt.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -37,8 +37,6 @@ const struct cmd_entry cmd_select_prompt_entry = {
cmd_target_init,
cmd_target_parse,
cmd_select_prompt_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-select-window.c b/usr.bin/tmux/cmd-select-window.c
index ea4daa6af85..b3794c1f707 100644
--- a/usr.bin/tmux/cmd-select-window.c
+++ b/usr.bin/tmux/cmd-select-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-select-window.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-select-window.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -36,8 +36,6 @@ const struct cmd_entry cmd_select_window_entry = {
cmd_select_window_init,
cmd_target_parse,
cmd_select_window_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-send-keys.c b/usr.bin/tmux/cmd-send-keys.c
index 10abebbf5c5..55eb22b0510 100644
--- a/usr.bin/tmux/cmd-send-keys.c
+++ b/usr.bin/tmux/cmd-send-keys.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-send-keys.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-send-keys.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -28,8 +28,6 @@
int cmd_send_keys_parse(struct cmd *, int, char **, char **);
int cmd_send_keys_exec(struct cmd *, struct cmd_ctx *);
-void cmd_send_keys_send(struct cmd *, struct buffer *);
-void cmd_send_keys_recv(struct cmd *, struct buffer *);
void cmd_send_keys_free(struct cmd *);
size_t cmd_send_keys_print(struct cmd *, char *, size_t);
@@ -47,8 +45,6 @@ const struct cmd_entry cmd_send_keys_entry = {
NULL,
cmd_send_keys_parse,
cmd_send_keys_exec,
- cmd_send_keys_send,
- cmd_send_keys_recv,
cmd_send_keys_free,
cmd_send_keys_print
};
@@ -128,28 +124,6 @@ cmd_send_keys_exec(struct cmd *self, struct cmd_ctx *ctx)
}
void
-cmd_send_keys_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_send_keys_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->target);
- buffer_write(b, data->keys, data->nkeys * sizeof *data->keys);
-}
-
-void
-cmd_send_keys_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_send_keys_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->target = cmd_recv_string(b);
- data->keys = xcalloc(data->nkeys, sizeof *data->keys);
- buffer_read(b, data->keys, data->nkeys * sizeof *data->keys);
-}
-
-void
cmd_send_keys_free(struct cmd *self)
{
struct cmd_send_keys_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-send-prefix.c b/usr.bin/tmux/cmd-send-prefix.c
index 20898d3ab91..0bb750ff094 100644
--- a/usr.bin/tmux/cmd-send-prefix.c
+++ b/usr.bin/tmux/cmd-send-prefix.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-send-prefix.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-send-prefix.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_send_prefix_entry = {
cmd_target_init,
cmd_target_parse,
cmd_send_prefix_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-server-info.c b/usr.bin/tmux/cmd-server-info.c
index 8d71d57248c..eb909d7b99c 100644
--- a/usr.bin/tmux/cmd-server-info.c
+++ b/usr.bin/tmux/cmd-server-info.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-server-info.c,v 1.3 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-server-info.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -41,8 +41,6 @@ const struct cmd_entry cmd_server_info_entry = {
NULL,
cmd_server_info_exec,
NULL,
- NULL,
- NULL,
NULL
};
diff --git a/usr.bin/tmux/cmd-set-buffer.c b/usr.bin/tmux/cmd-set-buffer.c
index 7e2596ee6c6..d3a853922f2 100644
--- a/usr.bin/tmux/cmd-set-buffer.c
+++ b/usr.bin/tmux/cmd-set-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-set-buffer.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-set-buffer.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_set_buffer_entry = {
cmd_buffer_init,
cmd_buffer_parse,
cmd_set_buffer_exec,
- cmd_buffer_send,
- cmd_buffer_recv,
cmd_buffer_free,
cmd_buffer_print
};
diff --git a/usr.bin/tmux/cmd-set-option.c b/usr.bin/tmux/cmd-set-option.c
index e4c094e82ee..1a98c35382d 100644
--- a/usr.bin/tmux/cmd-set-option.c
+++ b/usr.bin/tmux/cmd-set-option.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-set-option.c,v 1.8 2009/07/20 14:32:09 nicm Exp $ */
+/* $OpenBSD: cmd-set-option.c,v 1.9 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -36,8 +36,6 @@ const struct cmd_entry cmd_set_option_entry = {
NULL,
cmd_option_parse,
cmd_set_option_exec,
- cmd_option_send,
- cmd_option_recv,
cmd_option_free,
cmd_option_print
};
diff --git a/usr.bin/tmux/cmd-set-password.c b/usr.bin/tmux/cmd-set-password.c
index b23725ac03e..0eddce7ad63 100644
--- a/usr.bin/tmux/cmd-set-password.c
+++ b/usr.bin/tmux/cmd-set-password.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-set-password.c,v 1.3 2009/07/21 21:20:07 nicm Exp $ */
+/* $OpenBSD: cmd-set-password.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,8 +29,6 @@
int cmd_set_password_parse(struct cmd *, int, char **, char **);
int cmd_set_password_exec(struct cmd *, struct cmd_ctx *);
-void cmd_set_password_send(struct cmd *, struct buffer *);
-void cmd_set_password_recv(struct cmd *, struct buffer *);
void cmd_set_password_free(struct cmd *);
void cmd_set_password_init(struct cmd *, int);
size_t cmd_set_password_print(struct cmd *, char *, size_t);
@@ -47,8 +45,6 @@ const struct cmd_entry cmd_set_password_entry = {
cmd_set_password_init,
cmd_set_password_parse,
cmd_set_password_exec,
- cmd_set_password_send,
- cmd_set_password_recv,
cmd_set_password_free,
cmd_set_password_print
};
@@ -123,25 +119,6 @@ cmd_set_password_exec(struct cmd *self, struct cmd_ctx *ctx)
}
void
-cmd_set_password_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_set_password_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->password);
-}
-
-void
-cmd_set_password_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_set_password_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->password = cmd_recv_string(b);
-}
-
-void
cmd_set_password_free(struct cmd *self)
{
struct cmd_set_password_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-set-window-option.c b/usr.bin/tmux/cmd-set-window-option.c
index e99c33a0e25..0ed1bda0cbd 100644
--- a/usr.bin/tmux/cmd-set-window-option.c
+++ b/usr.bin/tmux/cmd-set-window-option.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-set-window-option.c,v 1.7 2009/07/20 09:15:18 nicm Exp $ */
+/* $OpenBSD: cmd-set-window-option.c,v 1.8 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -36,8 +36,6 @@ const struct cmd_entry cmd_set_window_option_entry = {
NULL,
cmd_option_parse,
cmd_set_window_option_exec,
- cmd_option_send,
- cmd_option_recv,
cmd_option_free,
cmd_option_print
};
diff --git a/usr.bin/tmux/cmd-show-buffer.c b/usr.bin/tmux/cmd-show-buffer.c
index 87be5325d0d..38bf9c89f0d 100644
--- a/usr.bin/tmux/cmd-show-buffer.c
+++ b/usr.bin/tmux/cmd-show-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-show-buffer.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-show-buffer.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_show_buffer_entry = {
cmd_buffer_init,
cmd_buffer_parse,
cmd_show_buffer_exec,
- cmd_buffer_send,
- cmd_buffer_recv,
cmd_buffer_free,
cmd_buffer_print
};
diff --git a/usr.bin/tmux/cmd-show-options.c b/usr.bin/tmux/cmd-show-options.c
index 4a65acbe8ba..b3bd820f04d 100644
--- a/usr.bin/tmux/cmd-show-options.c
+++ b/usr.bin/tmux/cmd-show-options.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-show-options.c,v 1.4 2009/07/15 07:50:34 nicm Exp $ */
+/* $OpenBSD: cmd-show-options.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -36,8 +36,6 @@ const struct cmd_entry cmd_show_options_entry = {
cmd_target_init,
cmd_target_parse,
cmd_show_options_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-show-window-options.c b/usr.bin/tmux/cmd-show-window-options.c
index 0f60512fba0..7674f20305a 100644
--- a/usr.bin/tmux/cmd-show-window-options.c
+++ b/usr.bin/tmux/cmd-show-window-options.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-show-window-options.c,v 1.4 2009/07/15 07:50:34 nicm Exp $ */
+/* $OpenBSD: cmd-show-window-options.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -36,8 +36,6 @@ const struct cmd_entry cmd_show_window_options_entry = {
cmd_target_init,
cmd_target_parse,
cmd_show_window_options_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-source-file.c b/usr.bin/tmux/cmd-source-file.c
index f28c4f1000a..6193a4fafc7 100644
--- a/usr.bin/tmux/cmd-source-file.c
+++ b/usr.bin/tmux/cmd-source-file.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-source-file.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-source-file.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2008 Tiago Cunha <me@tiagocunha.org>
@@ -26,8 +26,6 @@
int cmd_source_file_parse(struct cmd *, int, char **, char **);
int cmd_source_file_exec(struct cmd *, struct cmd_ctx *);
-void cmd_source_file_send(struct cmd *, struct buffer *);
-void cmd_source_file_recv(struct cmd *, struct buffer *);
void cmd_source_file_free(struct cmd *);
void cmd_source_file_init(struct cmd *, int);
size_t cmd_source_file_print(struct cmd *, char *, size_t);
@@ -43,8 +41,6 @@ const struct cmd_entry cmd_source_file_entry = {
cmd_source_file_init,
cmd_source_file_parse,
cmd_source_file_exec,
- cmd_source_file_send,
- cmd_source_file_recv,
cmd_source_file_free,
cmd_source_file_print
};
@@ -104,25 +100,6 @@ cmd_source_file_exec(struct cmd *self, struct cmd_ctx *ctx)
}
void
-cmd_source_file_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_source_file_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->path);
-}
-
-void
-cmd_source_file_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_source_file_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->path = cmd_recv_string(b);
-}
-
-void
cmd_source_file_free(struct cmd *self)
{
struct cmd_source_file_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-split-window.c b/usr.bin/tmux/cmd-split-window.c
index ad27dd08ec0..2585b1f15d4 100644
--- a/usr.bin/tmux/cmd-split-window.c
+++ b/usr.bin/tmux/cmd-split-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-split-window.c,v 1.6 2009/07/22 21:34:36 nicm Exp $ */
+/* $OpenBSD: cmd-split-window.c,v 1.7 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,8 +29,6 @@
int cmd_split_window_parse(struct cmd *, int, char **, char **);
int cmd_split_window_exec(struct cmd *, struct cmd_ctx *);
-void cmd_split_window_send(struct cmd *, struct buffer *);
-void cmd_split_window_recv(struct cmd *, struct buffer *);
void cmd_split_window_free(struct cmd *);
void cmd_split_window_init(struct cmd *, int);
size_t cmd_split_window_print(struct cmd *, char *, size_t);
@@ -51,8 +49,6 @@ const struct cmd_entry cmd_split_window_entry = {
cmd_split_window_init,
cmd_split_window_parse,
cmd_split_window_exec,
- cmd_split_window_send,
- cmd_split_window_recv,
cmd_split_window_free,
cmd_split_window_print
};
@@ -212,27 +208,6 @@ error:
}
void
-cmd_split_window_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_split_window_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->target);
- cmd_send_string(b, data->cmd);
-}
-
-void
-cmd_split_window_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_split_window_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->target = cmd_recv_string(b);
- data->cmd = cmd_recv_string(b);
-}
-
-void
cmd_split_window_free(struct cmd *self)
{
struct cmd_split_window_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-start-server.c b/usr.bin/tmux/cmd-start-server.c
index 2a3855f2092..e8ecc029272 100644
--- a/usr.bin/tmux/cmd-start-server.c
+++ b/usr.bin/tmux/cmd-start-server.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-start-server.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-start-server.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -34,8 +34,6 @@ const struct cmd_entry cmd_start_server_entry = {
NULL,
cmd_start_server_exec,
NULL,
- NULL,
- NULL,
NULL
};
diff --git a/usr.bin/tmux/cmd-suspend-client.c b/usr.bin/tmux/cmd-suspend-client.c
index ac01d6eebe9..6d6fcd96237 100644
--- a/usr.bin/tmux/cmd-suspend-client.c
+++ b/usr.bin/tmux/cmd-suspend-client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-suspend-client.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-suspend-client.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -41,8 +41,6 @@ const struct cmd_entry cmd_suspend_client_entry = {
cmd_target_init,
cmd_target_parse,
cmd_suspend_client_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-swap-pane.c b/usr.bin/tmux/cmd-swap-pane.c
index bcc03be7ebe..7d5437516d8 100644
--- a/usr.bin/tmux/cmd-swap-pane.c
+++ b/usr.bin/tmux/cmd-swap-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-swap-pane.c,v 1.6 2009/07/20 07:13:31 nicm Exp $ */
+/* $OpenBSD: cmd-swap-pane.c,v 1.7 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -28,8 +28,6 @@
int cmd_swap_pane_parse(struct cmd *, int, char **, char **);
int cmd_swap_pane_exec(struct cmd *, struct cmd_ctx *);
-void cmd_swap_pane_send(struct cmd *, struct buffer *);
-void cmd_swap_pane_recv(struct cmd *, struct buffer *);
void cmd_swap_pane_free(struct cmd *);
void cmd_swap_pane_init(struct cmd *, int);
size_t cmd_swap_pane_print(struct cmd *, char *, size_t);
@@ -50,8 +48,6 @@ const struct cmd_entry cmd_swap_pane_entry = {
cmd_swap_pane_init,
cmd_swap_pane_parse,
cmd_swap_pane_exec,
- cmd_swap_pane_send,
- cmd_swap_pane_recv,
cmd_swap_pane_free,
cmd_swap_pane_print
};
@@ -235,25 +231,6 @@ cmd_swap_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
}
void
-cmd_swap_pane_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_swap_pane_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->target);
-}
-
-void
-cmd_swap_pane_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_swap_pane_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->target = cmd_recv_string(b);
-}
-
-void
cmd_swap_pane_free(struct cmd *self)
{
struct cmd_swap_pane_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-swap-window.c b/usr.bin/tmux/cmd-swap-window.c
index 40896d5c0de..e51609f6e47 100644
--- a/usr.bin/tmux/cmd-swap-window.c
+++ b/usr.bin/tmux/cmd-swap-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-swap-window.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-swap-window.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -35,8 +35,6 @@ const struct cmd_entry cmd_swap_window_entry = {
cmd_srcdst_init,
cmd_srcdst_parse,
cmd_swap_window_exec,
- cmd_srcdst_send,
- cmd_srcdst_recv,
cmd_srcdst_free,
cmd_srcdst_print
};
diff --git a/usr.bin/tmux/cmd-switch-client.c b/usr.bin/tmux/cmd-switch-client.c
index 3e3274ef427..a2573a9905d 100644
--- a/usr.bin/tmux/cmd-switch-client.c
+++ b/usr.bin/tmux/cmd-switch-client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-switch-client.c,v 1.2 2009/07/13 23:11:35 nicm Exp $ */
+/* $OpenBSD: cmd-switch-client.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,8 +29,6 @@
int cmd_switch_client_parse(struct cmd *, int, char **, char **);
int cmd_switch_client_exec(struct cmd *, struct cmd_ctx *);
-void cmd_switch_client_send(struct cmd *, struct buffer *);
-void cmd_switch_client_recv(struct cmd *, struct buffer *);
void cmd_switch_client_free(struct cmd *);
size_t cmd_switch_client_print(struct cmd *, char *, size_t);
@@ -46,8 +44,6 @@ const struct cmd_entry cmd_switch_client_entry = {
NULL,
cmd_switch_client_parse,
cmd_switch_client_exec,
- cmd_switch_client_send,
- cmd_switch_client_recv,
cmd_switch_client_free,
cmd_switch_client_print
};
@@ -112,27 +108,6 @@ cmd_switch_client_exec(struct cmd *self, struct cmd_ctx *ctx)
}
void
-cmd_switch_client_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_switch_client_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
- cmd_send_string(b, data->name);
- cmd_send_string(b, data->target);
-}
-
-void
-cmd_switch_client_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_switch_client_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
- data->name = cmd_recv_string(b);
- data->target = cmd_recv_string(b);
-}
-
-void
cmd_switch_client_free(struct cmd *self)
{
struct cmd_switch_client_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-unbind-key.c b/usr.bin/tmux/cmd-unbind-key.c
index 5415c601833..63b8aa0f998 100644
--- a/usr.bin/tmux/cmd-unbind-key.c
+++ b/usr.bin/tmux/cmd-unbind-key.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-unbind-key.c,v 1.3 2009/07/24 14:52:47 nicm Exp $ */
+/* $OpenBSD: cmd-unbind-key.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -26,8 +26,6 @@
int cmd_unbind_key_parse(struct cmd *, int, char **, char **);
int cmd_unbind_key_exec(struct cmd *, struct cmd_ctx *);
-void cmd_unbind_key_send(struct cmd *, struct buffer *);
-void cmd_unbind_key_recv(struct cmd *, struct buffer *);
void cmd_unbind_key_free(struct cmd *);
struct cmd_unbind_key_data {
@@ -41,8 +39,6 @@ const struct cmd_entry cmd_unbind_key_entry = {
NULL,
cmd_unbind_key_parse,
cmd_unbind_key_exec,
- cmd_unbind_key_send,
- cmd_unbind_key_recv,
cmd_unbind_key_free,
NULL
};
@@ -100,23 +96,6 @@ cmd_unbind_key_exec(struct cmd *self, unused struct cmd_ctx *ctx)
}
void
-cmd_unbind_key_send(struct cmd *self, struct buffer *b)
-{
- struct cmd_unbind_key_data *data = self->data;
-
- buffer_write(b, data, sizeof *data);
-}
-
-void
-cmd_unbind_key_recv(struct cmd *self, struct buffer *b)
-{
- struct cmd_unbind_key_data *data;
-
- self->data = data = xmalloc(sizeof *data);
- buffer_read(b, data, sizeof *data);
-}
-
-void
cmd_unbind_key_free(struct cmd *self)
{
struct cmd_unbind_key_data *data = self->data;
diff --git a/usr.bin/tmux/cmd-unlink-window.c b/usr.bin/tmux/cmd-unlink-window.c
index 181f75247de..ee21d121648 100644
--- a/usr.bin/tmux/cmd-unlink-window.c
+++ b/usr.bin/tmux/cmd-unlink-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-unlink-window.c,v 1.3 2009/07/15 08:05:56 nicm Exp $ */
+/* $OpenBSD: cmd-unlink-window.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_unlink_window_entry = {
cmd_target_init,
cmd_target_parse,
cmd_unlink_window_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd-up-pane.c b/usr.bin/tmux/cmd-up-pane.c
index 86419b9933f..576ab456470 100644
--- a/usr.bin/tmux/cmd-up-pane.c
+++ b/usr.bin/tmux/cmd-up-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-up-pane.c,v 1.5 2009/07/20 19:35:33 nicm Exp $ */
+/* $OpenBSD: cmd-up-pane.c,v 1.6 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,8 +33,6 @@ const struct cmd_entry cmd_up_pane_entry = {
cmd_target_init,
cmd_target_parse,
cmd_up_pane_exec,
- cmd_target_send,
- cmd_target_recv,
cmd_target_free,
cmd_target_print
};
diff --git a/usr.bin/tmux/cmd.c b/usr.bin/tmux/cmd.c
index 15c6f0d232f..c63d2e01a19 100644
--- a/usr.bin/tmux/cmd.c
+++ b/usr.bin/tmux/cmd.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd.c,v 1.9 2009/07/24 18:46:40 nicm Exp $ */
+/* $OpenBSD: cmd.c,v 1.10 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -109,6 +109,64 @@ struct session *cmd_lookup_session(const char *, int *);
struct winlink *cmd_lookup_window(struct session *, const char *, int *);
int cmd_lookup_index(struct session *, const char *, int *);
+int
+cmd_pack_argv(int argc, char **argv, char *buf, size_t len)
+{
+ size_t arglen;
+ int i;
+
+ *buf = '\0';
+ for (i = 0; i < argc; i++) {
+ if (strlcpy(buf, argv[i], len) >= len)
+ return (-1);
+ arglen = strlen(argv[i]) + 1;
+ buf += arglen;
+ len -= arglen;
+ }
+
+ return (0);
+}
+
+int
+cmd_unpack_argv(char *buf, size_t len, int argc, char ***argv)
+{
+ int i;
+ size_t arglen;
+
+ if (argc == 0)
+ return (0);
+ *argv = xcalloc(argc, sizeof **argv);
+
+ buf[len - 1] = '\0';
+ for (i = 0; i < argc; i++) {
+ if (len == 0) {
+ cmd_free_argv(argc, *argv);
+ return (-1);
+ }
+
+ arglen = strlen(buf) + 1;
+ (*argv)[i] = xstrdup(buf);
+ buf += arglen;
+ len -= arglen;
+ }
+
+ return (0);
+}
+
+void
+cmd_free_argv(int argc, char **argv)
+{
+ int i;
+
+ if (argc == 0)
+ return;
+ for (i = 0; i < argc; i++) {
+ if (argv[i] != NULL)
+ xfree(argv[i]);
+ }
+ xfree(argv);
+}
+
struct cmd *
cmd_parse(int argc, char **argv, char **cause)
{
@@ -205,53 +263,6 @@ cmd_exec(struct cmd *cmd, struct cmd_ctx *ctx)
}
void
-cmd_send(struct cmd *cmd, struct buffer *b)
-{
- const struct cmd_entry **entryp;
- u_int n;
-
- n = 0;
- for (entryp = cmd_table; *entryp != NULL; entryp++) {
- if (*entryp == cmd->entry)
- break;
- n++;
- }
- if (*entryp == NULL)
- fatalx("command not found");
-
- buffer_write(b, &n, sizeof n);
-
- if (cmd->entry->send != NULL)
- cmd->entry->send(cmd, b);
-}
-
-struct cmd *
-cmd_recv(struct buffer *b)
-{
- const struct cmd_entry **entryp;
- struct cmd *cmd;
- u_int m, n;
-
- buffer_read(b, &m, sizeof m);
-
- n = 0;
- for (entryp = cmd_table; *entryp != NULL; entryp++) {
- if (n == m)
- break;
- n++;
- }
- if (*entryp == NULL)
- fatalx("command not found");
-
- cmd = xmalloc(sizeof *cmd);
- cmd->entry = *entryp;
-
- if (cmd->entry->recv != NULL)
- cmd->entry->recv(cmd, b);
- return (cmd);
-}
-
-void
cmd_free(struct cmd *cmd)
{
if (cmd->data != NULL && cmd->entry->free != NULL)
@@ -268,41 +279,6 @@ cmd_print(struct cmd *cmd, char *buf, size_t len)
return (cmd->entry->print(cmd, buf, len));
}
-void
-cmd_send_string(struct buffer *b, const char *s)
-{
- size_t n;
-
- if (s == NULL) {
- n = 0;
- buffer_write(b, &n, sizeof n);
- return;
- }
-
- n = strlen(s) + 1;
- buffer_write(b, &n, sizeof n);
-
- buffer_write(b, s, n);
-}
-
-char *
-cmd_recv_string(struct buffer *b)
-{
- char *s;
- size_t n;
-
- buffer_read(b, &n, sizeof n);
-
- if (n == 0)
- return (NULL);
-
- s = xmalloc(n);
- buffer_read(b, s, n);
- s[n - 1] = '\0';
-
- return (s);
-}
-
/*
* Figure out the current session. Use: 1) the current session, if the command
* context has one; 2) the session specified in the TMUX variable from the
diff --git a/usr.bin/tmux/server-fn.c b/usr.bin/tmux/server-fn.c
index 8beef15e7e3..22ba7eeefa6 100644
--- a/usr.bin/tmux/server-fn.c
+++ b/usr.bin/tmux/server-fn.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: server-fn.c,v 1.9 2009/07/20 14:37:51 nicm Exp $ */
+/* $OpenBSD: server-fn.c,v 1.10 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -48,6 +48,15 @@ server_fill_environ(struct session *s)
}
void
+server_write_error(struct client *c, const char *msg)
+{
+ struct msg_print_data printdata;
+
+ strlcpy(printdata.msg, msg, sizeof printdata.msg);
+ server_write_client(c, MSG_ERROR, &printdata, sizeof printdata);
+}
+
+void
server_write_client(
struct client *c, enum hdrtype type, const void *buf, size_t len)
{
@@ -220,7 +229,7 @@ wrong:
password_failures++;
for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
c = ARRAY_ITEM(&clients, i);
- if (c == NULL || c->prompt_buffer == NULL)
+ if (c == NULL || c->prompt_buffer == NULL)
continue;
*c->prompt_buffer = '\0';
diff --git a/usr.bin/tmux/server-msg.c b/usr.bin/tmux/server-msg.c
index 6abcaf23c64..475bad2bf1d 100644
--- a/usr.bin/tmux/server-msg.c
+++ b/usr.bin/tmux/server-msg.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: server-msg.c,v 1.6 2009/07/23 21:19:11 nicm Exp $ */
+/* $OpenBSD: server-msg.c,v 1.7 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -83,46 +83,43 @@ server_msg_dispatch(struct client *c)
void printflike2
server_msg_fn_command_error(struct cmd_ctx *ctx, const char *fmt, ...)
{
- va_list ap;
- char *msg;
+ struct msg_print_data data;
+ va_list ap;
va_start(ap, fmt);
- xvasprintf(&msg, fmt, ap);
+ xvsnprintf(data.msg, sizeof data.msg, fmt, ap);
va_end(ap);
- server_write_client(ctx->cmdclient, MSG_ERROR, msg, strlen(msg));
- xfree(msg);
+ server_write_client(ctx->cmdclient, MSG_ERROR, &data, sizeof data);
}
void printflike2
server_msg_fn_command_print(struct cmd_ctx *ctx, const char *fmt, ...)
{
- va_list ap;
- char *msg;
+ struct msg_print_data data;
+ va_list ap;
va_start(ap, fmt);
- xvasprintf(&msg, fmt, ap);
+ xvsnprintf(data.msg, sizeof data.msg, fmt, ap);
va_end(ap);
- server_write_client(ctx->cmdclient, MSG_PRINT, msg, strlen(msg));
- xfree(msg);
+ server_write_client(ctx->cmdclient, MSG_PRINT, &data, sizeof data);
}
void printflike2
server_msg_fn_command_info(struct cmd_ctx *ctx, const char *fmt, ...)
{
- va_list ap;
- char *msg;
+ struct msg_print_data data;
+ va_list ap;
if (be_quiet)
return;
va_start(ap, fmt);
- xvasprintf(&msg, fmt, ap);
+ xvsnprintf(data.msg, sizeof data.msg, fmt, ap);
va_end(ap);
- server_write_client(ctx->cmdclient, MSG_PRINT, msg, strlen(msg));
- xfree(msg);
+ server_write_client(ctx->cmdclient, MSG_PRINT, &data, sizeof data);
}
void
@@ -130,14 +127,15 @@ server_msg_fn_command(struct hdr *hdr, struct client *c)
{
struct msg_command_data data;
struct cmd_ctx ctx;
- struct cmd_list *cmdlist;
+ struct cmd_list *cmdlist = NULL;
struct cmd *cmd;
+ int argc;
+ char **argv, *cause;
if (hdr->size < sizeof data)
fatalx("bad MSG_COMMAND size");
buffer_read(c->in, &data, sizeof data);
- cmdlist = cmd_list_recv(c->in);
server_activity = time(NULL);
ctx.error = server_msg_fn_command_error;
@@ -150,15 +148,33 @@ server_msg_fn_command(struct hdr *hdr, struct client *c)
ctx.cmdclient = c;
+ argc = data.argc;
+ data.argv[(sizeof data.argv) - 1] = '\0';
+ if (cmd_unpack_argv(data.argv, sizeof data.argv, argc, &argv) != 0) {
+ server_msg_fn_command_error(&ctx, "command too long");
+ goto error;
+ }
+
+ if (argc == 0) {
+ argc = 1;
+ argv = xcalloc(1, sizeof *argv);
+ *argv = xstrdup("new-session");
+ }
+
+ if ((cmdlist = cmd_list_parse(argc, argv, &cause)) == NULL) {
+ server_msg_fn_command_error(&ctx, "%s", cause);
+ cmd_free_argv(argc, argv);
+ goto error;
+ }
+ cmd_free_argv(argc, argv);
+
if (data.pid != -1) {
TAILQ_FOREACH(cmd, cmdlist, qentry) {
if (cmd->entry->flags & CMD_CANTNEST) {
server_msg_fn_command_error(&ctx,
"sessions should be nested with care. "
"unset $TMUX to force");
- cmd_list_free(cmdlist);
- server_write_client(c, MSG_EXIT, NULL, 0);
- return;
+ goto error;
}
}
}
@@ -166,27 +182,28 @@ server_msg_fn_command(struct hdr *hdr, struct client *c)
if (cmd_list_exec(cmdlist, &ctx) != 1)
server_write_client(c, MSG_EXIT, NULL, 0);
cmd_list_free(cmdlist);
+ return;
+
+error:
+ if (cmdlist != NULL)
+ cmd_list_free(cmdlist);
+ server_write_client(c, MSG_EXIT, NULL, 0);
}
void
server_msg_fn_identify(struct hdr *hdr, struct client *c)
{
struct msg_identify_data data;
- char *term;
if (hdr->size < sizeof data)
fatalx("bad MSG_IDENTIFY size");
buffer_read(c->in, &data, sizeof data);
- term = cmd_recv_string(c->in);
log_debug("identify msg from client: %u,%u (%d)",
data.sx, data.sy, data.version);
if (data.version != PROTOCOL_VERSION) {
-#define MSG "protocol version mismatch"
- server_write_client(c, MSG_ERROR, MSG, (sizeof MSG) - 1);
-#undef MSG
- server_write_client(c, MSG_EXIT, NULL, 0);
+ server_write_error(c, "protocol version mismatch");
return;
}
@@ -199,7 +216,8 @@ server_msg_fn_identify(struct hdr *hdr, struct client *c)
c->cwd = xstrdup(data.cwd);
data.tty[(sizeof data.tty) - 1] = '\0';
- tty_init(&c->tty, data.tty, term);
+ data.term[(sizeof data.term) - 1] = '\0';
+ tty_init(&c->tty, data.tty, data.term);
if (data.flags & IDENTIFY_UTF8)
c->tty.flags |= TTY_UTF8;
if (data.flags & IDENTIFY_256COLOURS)
@@ -209,9 +227,6 @@ server_msg_fn_identify(struct hdr *hdr, struct client *c)
if (data.flags & IDENTIFY_HASDEFAULTS)
c->tty.term_flags |= TERM_HASDEFAULTS;
- if (term != NULL)
- xfree(term);
-
c->flags |= CLIENT_TERMINAL;
}
@@ -262,24 +277,20 @@ server_msg_fn_exiting(struct hdr *hdr, struct client *c)
void
server_msg_fn_unlock(struct hdr *hdr, struct client *c)
{
- char *pass;
+ struct msg_unlock_data data;
- if (hdr->size == 0)
+ if (hdr->size != sizeof data)
fatalx("bad MSG_UNLOCK size");
- pass = cmd_recv_string(c->in);
+ buffer_read(c->in, &data, sizeof data);
log_debug("unlock msg from client");
- if (server_unlock(pass) != 0) {
-#define MSG "bad password"
- server_write_client(c, MSG_ERROR, MSG, (sizeof MSG) - 1);
-#undef MSG
- }
+ data.pass[(sizeof data.pass) - 1] = '\0';
+ if (server_unlock(data.pass) != 0)
+ server_write_error(c, "bad password");
+ memset(&data, 0, sizeof data);
server_write_client(c, MSG_EXIT, NULL, 0);
-
- memset(pass, 0, strlen(pass));
- xfree(pass);
}
void
diff --git a/usr.bin/tmux/tmux.c b/usr.bin/tmux/tmux.c
index da3c7ab15ec..1f2910aa480 100644
--- a/usr.bin/tmux/tmux.c
+++ b/usr.bin/tmux/tmux.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tmux.c,v 1.20 2009/07/22 21:58:56 nicm Exp $ */
+/* $OpenBSD: tmux.c,v 1.21 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -57,6 +57,8 @@ char *socket_path;
__dead void usage(void);
char *makesockpath(const char *);
+int prepare_unlock(enum hdrtype *, void **, size_t *, int);
+int prepare_cmd(enum hdrtype *, void **, size_t *, int, char **);
__dead void
usage(void)
@@ -201,18 +203,69 @@ makesockpath(const char *label)
}
int
+prepare_unlock(enum hdrtype *msg, void **buf, size_t *len, int argc)
+{
+ static struct msg_unlock_data unlockdata;
+ char *pass;
+
+ if (argc != 0) {
+ log_warnx("can't specify a command when unlocking");
+ return (-1);
+ }
+
+ if ((pass = getpass("Password: ")) == NULL)
+ return (-1);
+
+ if (strlen(pass) >= sizeof unlockdata.pass) {
+ log_warnx("password too long");
+ return (-1);
+ }
+
+ strlcpy(unlockdata.pass, pass, sizeof unlockdata.pass);
+ memset(pass, 0, strlen(pass));
+
+ *buf = &unlockdata;
+ *len = sizeof unlockdata;
+
+ *msg = MSG_UNLOCK;
+ return (0);
+}
+
+int
+prepare_cmd(enum hdrtype *msg, void **buf, size_t *len, int argc, char **argv)
+{
+ static struct msg_command_data cmddata;
+
+ client_fill_session(&cmddata);
+
+ cmddata.argc = argc;
+ if (cmd_pack_argv(argc, argv, cmddata.argv, sizeof cmddata.argv) != 0) {
+ log_warnx("command too long");
+ return (-1);
+ }
+
+ *buf = &cmddata;
+ *len = sizeof cmddata;
+
+ *msg = MSG_COMMAND;
+ return (0);
+}
+
+int
main(int argc, char **argv)
{
struct client_ctx cctx;
- struct msg_command_data cmddata;
- struct buffer *b;
struct cmd_list *cmdlist;
struct cmd *cmd;
struct pollfd pfd;
+ enum hdrtype msg;
struct hdr hdr;
struct passwd *pw;
- char *s, *path, *label, *cause, *home, *pass = NULL;
+ struct msg_print_data printdata;
+ char *s, *path, *label, *home, *cause;
char cwd[MAXPATHLEN];
+ void *buf;
+ size_t len;
int retcode, opt, flags, unlock, cmdflags = 0;
unlock = flags = 0;
@@ -364,7 +417,7 @@ main(int argc, char **argv)
exit(1);
}
}
-
+
if (label == NULL)
label = xstrdup("default");
if (path == NULL && (path = makesockpath(label)) == NULL) {
@@ -383,36 +436,35 @@ main(int argc, char **argv)
options_set_string(&global_s_options, "default-path", "%s", cwd);
if (unlock) {
- if (argc != 0) {
- log_warnx("can't specify a command when unlocking");
+ if (prepare_unlock(&msg, &buf, &len, argc) != 0)
exit(1);
- }
- cmdlist = NULL;
- if ((pass = getpass("Password: ")) == NULL)
+ } else {
+ if (prepare_cmd(&msg, &buf, &len, argc, argv) != 0)
exit(1);
+ }
+
+ if (unlock)
cmdflags &= ~CMD_STARTSERVER;
- } else {
- if (argc == 0) {
- cmd = xmalloc(sizeof *cmd);
- cmd->entry = &cmd_new_session_entry;
- cmd->entry->init(cmd, 0);
-
- cmdlist = xmalloc(sizeof *cmdlist);
- TAILQ_INIT(cmdlist);
- TAILQ_INSERT_HEAD(cmdlist, cmd, qentry);
- } else {
- cmdlist = cmd_list_parse(argc, argv, &cause);
- if (cmdlist == NULL) {
- log_warnx("%s", cause);
- exit(1);
- }
+ else if (argc == 0)
+ cmdflags |= CMD_STARTSERVER;
+ else {
+ /*
+ * It sucks parsing the command string twice (in client and
+ * later in server) but it is necessary to get the start server
+ * flag.
+ */
+ if ((cmdlist = cmd_list_parse(argc, argv, &cause)) == NULL) {
+ log_warnx("%s", cause);
+ exit(1);
}
+ cmdflags &= ~CMD_STARTSERVER;
TAILQ_FOREACH(cmd, cmdlist, qentry) {
if (cmd->entry->flags & CMD_STARTSERVER) {
cmdflags |= CMD_STARTSERVER;
break;
}
}
+ cmd_list_free(cmdlist);
}
memset(&cctx, 0, sizeof cctx);
@@ -420,20 +472,8 @@ main(int argc, char **argv)
exit(1);
xfree(path);
- b = buffer_create(BUFSIZ);
- if (unlock) {
- cmd_send_string(b, pass);
- memset(pass, 0, strlen(pass));
- client_write_server(
- &cctx, MSG_UNLOCK, BUFFER_OUT(b), BUFFER_USED(b));
- } else {
- cmd_list_send(cmdlist, b);
- cmd_list_free(cmdlist);
- client_fill_session(&cmddata);
- client_write_server2(&cctx, MSG_COMMAND,
- &cmddata, sizeof cmddata, BUFFER_OUT(b), BUFFER_USED(b));
- }
- buffer_destroy(b);
+ client_write_server(&cctx, msg, buf, len);
+ memset(buf, 0, len);
retcode = 0;
for (;;) {
@@ -467,12 +507,12 @@ main(int argc, char **argv)
retcode = 1;
/* FALLTHROUGH */
case MSG_PRINT:
- if (hdr.size > INT_MAX - 1)
+ if (hdr.size < sizeof printdata)
fatalx("bad MSG_PRINT size");
- log_info("%.*s",
- (int) hdr.size, BUFFER_OUT(cctx.srv_in));
- if (hdr.size != 0)
- buffer_remove(cctx.srv_in, hdr.size);
+ buffer_read(cctx.srv_in, &printdata, sizeof printdata);
+
+ printdata.msg[(sizeof printdata.msg) - 1] = '\0';
+ log_info("%s", printdata.msg);
goto restart;
case MSG_READY:
retcode = client_main(&cctx);
diff --git a/usr.bin/tmux/tmux.h b/usr.bin/tmux/tmux.h
index 6dc712b1546..4013b76792f 100644
--- a/usr.bin/tmux/tmux.h
+++ b/usr.bin/tmux/tmux.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: tmux.h,v 1.54 2009/07/24 14:52:47 nicm Exp $ */
+/* $OpenBSD: tmux.h,v 1.55 2009/07/26 12:58:44 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -19,7 +19,7 @@
#ifndef TMUX_H
#define TMUX_H
-#define PROTOCOL_VERSION -14
+#define PROTOCOL_VERSION -15
#include <sys/param.h>
#include <sys/time.h>
@@ -62,6 +62,14 @@ extern char *__progname;
/* Maximum poll timeout (when attached). */
#define POLL_TIMEOUT 50
+/*
+ * Maximum sizes of strings in message data. Don't forget to bump
+ * PROTOCOL_VERSION if any of these change!
+ */
+#define COMMAND_LENGTH 2048 /* packed argv size */
+#define TERMINAL_LENGTH 128 /* length of TERM environment variable */
+#define PRINT_LENGTH 512 /* printed error/message size */
+
/* Fatal errors. */
#define fatal(msg) log_fatal("%s: %s", __func__, msg);
#define fatalx(msg) log_fatalx("%s: %s", __func__, msg);
@@ -293,17 +301,29 @@ enum hdrtype {
MSG_WAKEUP,
};
-/* Message header structure. */
+/*
+ * Message header and data.
+ *
+ * Don't forget to bump PROTOCOL_VERSION if any of these change!
+ *
+ * Changing sizeof (struct hdr) or sizeof (struct msg_identify_data) will make
+ * the tmux client hang even if the protocol version is bumped.
+ */
struct hdr {
enum hdrtype type;
size_t size;
};
+struct msg_print_data {
+ char msg[PRINT_LENGTH];
+};
+
struct msg_command_data {
pid_t pid; /* pid from $TMUX or -1 */
u_int idx; /* index from $TMUX */
- size_t namelen;
+ int argc;
+ char argv[COMMAND_LENGTH];
};
struct msg_identify_data {
@@ -312,6 +332,8 @@ struct msg_identify_data {
char cwd[MAXPATHLEN];
+ char term[TERMINAL_LENGTH];
+
#define IDENTIFY_UTF8 0x1
#define IDENTIFY_256COLOURS 0x2
#define IDENTIFY_88COLOURS 0x4
@@ -320,8 +342,6 @@ struct msg_identify_data {
u_int sx;
u_int sy;
-
- size_t termlen;
};
struct msg_resize_data {
@@ -329,6 +349,10 @@ struct msg_resize_data {
u_int sy;
};
+struct msg_unlock_data {
+ char pass[PASS_MAX];
+};
+
/* Editing keys. */
enum mode_key_cmd {
MODEKEYCMD_BACKSPACE = 0x1000,
@@ -907,8 +931,6 @@ struct cmd_entry {
void (*init)(struct cmd *, int);
int (*parse)(struct cmd *, int, char **, char **);
int (*exec)(struct cmd *, struct cmd_ctx *);
- void (*send)(struct cmd *, struct buffer *);
- void (*recv)(struct cmd *, struct buffer *);
void (*free)(struct cmd *);
size_t (*print)(struct cmd *, char *, size_t);
};
@@ -1113,14 +1135,13 @@ int paste_replace(struct paste_stack *, u_int, char *);
void clock_draw(struct screen_write_ctx *, u_int, int);
/* cmd.c */
+int cmd_pack_argv(int, char **, char *, size_t);
+int cmd_unpack_argv(char *, size_t, int, char ***);
+void cmd_free_argv(int, char **);
struct cmd *cmd_parse(int, char **, char **);
int cmd_exec(struct cmd *, struct cmd_ctx *);
-void cmd_send(struct cmd *, struct buffer *);
-struct cmd *cmd_recv(struct buffer *);
void cmd_free(struct cmd *);
size_t cmd_print(struct cmd *, char *, size_t);
-void cmd_send_string(struct buffer *, const char *);
-char *cmd_recv_string(struct buffer *);
struct session *cmd_current_session(struct cmd_ctx *);
struct client *cmd_find_client(struct cmd_ctx *, const char *);
struct session *cmd_find_session(struct cmd_ctx *, const char *);
@@ -1205,8 +1226,6 @@ extern const struct cmd_entry cmd_up_pane_entry;
/* cmd-list.c */
struct cmd_list *cmd_list_parse(int, char **, char **);
int cmd_list_exec(struct cmd_list *, struct cmd_ctx *);
-void cmd_list_send(struct cmd_list *, struct buffer *);
-struct cmd_list *cmd_list_recv(struct buffer *);
void cmd_list_free(struct cmd_list *);
size_t cmd_list_print(struct cmd_list *, char *, size_t);
@@ -1220,8 +1239,6 @@ size_t cmd_prarg(char *, size_t, const char *, char *);
#define CMD_TARGET_CLIENT_USAGE "[-t target-client]"
void cmd_target_init(struct cmd *, int);
int cmd_target_parse(struct cmd *, int, char **, char **);
-void cmd_target_send(struct cmd *, struct buffer *);
-void cmd_target_recv(struct cmd *, struct buffer *);
void cmd_target_free(struct cmd *);
size_t cmd_target_print(struct cmd *, char *, size_t);
#define CMD_SRCDST_WINDOW_USAGE "[-s src-window] [-t dst-window]"
@@ -1229,8 +1246,6 @@ size_t cmd_target_print(struct cmd *, char *, size_t);
#define CMD_SRCDST_CLIENT_USAGE "[-s src-client] [-t dst-client]"
void cmd_srcdst_init(struct cmd *, int);
int cmd_srcdst_parse(struct cmd *, int, char **, char **);
-void cmd_srcdst_send(struct cmd *, struct buffer *);
-void cmd_srcdst_recv(struct cmd *, struct buffer *);
void cmd_srcdst_free(struct cmd *);
size_t cmd_srcdst_print(struct cmd *, char *, size_t);
#define CMD_BUFFER_WINDOW_USAGE "[-b buffer-index] [-t target-window]"
@@ -1238,8 +1253,6 @@ size_t cmd_srcdst_print(struct cmd *, char *, size_t);
#define CMD_BUFFER_CLIENT_USAGE "[-b buffer-index] [-t target-client]"
void cmd_buffer_init(struct cmd *, int);
int cmd_buffer_parse(struct cmd *, int, char **, char **);
-void cmd_buffer_send(struct cmd *, struct buffer *);
-void cmd_buffer_recv(struct cmd *, struct buffer *);
void cmd_buffer_free(struct cmd *);
size_t cmd_buffer_print(struct cmd *, char *, size_t);
#define CMD_OPTION_WINDOW_USAGE "[-gu] [-t target-window] option [value]"
@@ -1247,8 +1260,6 @@ size_t cmd_buffer_print(struct cmd *, char *, size_t);
#define CMD_OPTION_CLIENT_USAGE "[-gu] [-t target-client] option [value]"
void cmd_option_init(struct cmd *, int);
int cmd_option_parse(struct cmd *, int, char **, char **);
-void cmd_option_send(struct cmd *, struct buffer *);
-void cmd_option_recv(struct cmd *, struct buffer *);
void cmd_option_free(struct cmd *);
size_t cmd_option_print(struct cmd *, char *, size_t);
#define CMD_PANE_WINDOW_USAGE "[-t target-window] [-p pane-index]"
@@ -1256,8 +1267,6 @@ size_t cmd_option_print(struct cmd *, char *, size_t);
#define CMD_PANE_CLIENT_USAGE "[-t target-client] [-p pane-index]"
void cmd_pane_init(struct cmd *, int);
int cmd_pane_parse(struct cmd *, int, char **, char **);
-void cmd_pane_send(struct cmd *, struct buffer *);
-void cmd_pane_recv(struct cmd *, struct buffer *);
void cmd_pane_free(struct cmd *);
size_t cmd_pane_print(struct cmd *, char *, size_t);
@@ -1270,8 +1279,6 @@ int client_msg_dispatch(struct client_ctx *);
/* client-fn.c */
void client_write_server(struct client_ctx *, enum hdrtype, void *, size_t);
-void client_write_server2(
- struct client_ctx *, enum hdrtype, void *, size_t, void *, size_t);
void client_fill_session(struct msg_command_data *);
/* key-bindings.c */
@@ -1303,6 +1310,7 @@ int server_msg_dispatch(struct client *);
/* server-fn.c */
const char **server_fill_environ(struct session *);
+void server_write_error(struct client *, const char *);
void server_write_client(
struct client *, enum hdrtype, const void *, size_t);
void server_write_session(