From eaa58d28dc7da9b2ef0d77f4c8e85aab55b71935 Mon Sep 17 00:00:00 2001 From: nicm Date: Mon, 16 Dec 2019 15:48:50 +0000 Subject: Instead of using large buffers in imsgs, add the data or path onto the end. --- server-client.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'server-client.c') diff --git a/server-client.c b/server-client.c index e6e4d8a9..fdedc35f 100644 --- a/server-client.c +++ b/server-client.c @@ -2024,10 +2024,10 @@ server_client_dispatch_read_data(struct client *c, struct imsg *imsg) struct msg_read_data *msg = imsg->data; size_t msglen = imsg->hdr.len - IMSG_HEADER_SIZE; struct client_file find, *cf; - void *bdata = msg->data; - size_t bsize = msg->size; + void *bdata = msg + 1; + size_t bsize = msglen - sizeof *msg; - if (msglen != sizeof *msg) + if (msglen < sizeof *msg) fatalx("bad MSG_READ_DATA size"); find.stream = msg->stream; if ((cf = RB_FIND(client_files, &c->files, &find)) == NULL) -- cgit