summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--dispatch.c5
-rw-r--r--local.c5
2 files changed, 4 insertions, 6 deletions
diff --git a/dispatch.c b/dispatch.c
index d762105..c2e2d50 100644
--- a/dispatch.c
+++ b/dispatch.c
@@ -58,8 +58,7 @@ static void eventRemove(size_t i) {
 }
 
 static ssize_t sendfd(int sock, int fd) {
-	size_t len = CMSG_SPACE(sizeof(int));
-	char buf[len];
+	char buf[CMSG_SPACE(sizeof(int))];
 
 	char x = 0;
 	struct iovec iov = { .iov_base = &x, .iov_len = 1 };
@@ -67,7 +66,7 @@ static ssize_t sendfd(int sock, int fd) {
 		.msg_iov = &iov,
 		.msg_iovlen = 1,
 		.msg_control = buf,
-		.msg_controllen = len,
+		.msg_controllen = sizeof(buf),
 	};
 
 	struct cmsghdr *cmsg = CMSG_FIRSTHDR(&msg);
diff --git a/local.c b/local.c
index 6ef452b..c147259 100644
--- a/local.c
+++ b/local.c
@@ -165,8 +165,7 @@ size_t localUnix(int fds[], size_t cap, const char *path) {
 }
 
 static int recvfd(int sock) {
-	size_t len = CMSG_SPACE(sizeof(int));
-	char buf[len];
+	char buf[CMSG_SPACE(sizeof(int))];
 
 	char x;
 	struct iovec iov = { .iov_base = &x, .iov_len = 1 };
@@ -174,7 +173,7 @@ static int recvfd(int sock) {
 		.msg_iov = &iov,
 		.msg_iovlen = 1,
 		.msg_control = buf,
-		.msg_controllen = len,
+		.msg_controllen = sizeof(buf),
 	};
 	if (0 > recvmsg(sock, &msg, 0)) return -1;