From 70f046c87a1fc03c3b3132bf3b05d2e4c4495805 Mon Sep 17 00:00:00 2001 From: minus Date: Thu, 20 Aug 2015 14:49:54 +0200 Subject: [PATCH] set IPC client sockets to close on exec --- sway/ipc.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sway/ipc.c b/sway/ipc.c index a6c4eb1a..69f4a4f3 100644 --- a/sway/ipc.c +++ b/sway/ipc.c @@ -10,6 +10,7 @@ #include #include #include +#include #include "ipc.h" #include "log.h" #include "config.h" @@ -78,6 +79,12 @@ int ipc_handle_connection(int fd, uint32_t mask, void *data) { return 0; } + int flags; + if ((flags=fcntl(client_fd, F_GETFD)) == -1 || fcntl(client_fd, F_SETFD, flags|FD_CLOEXEC) == -1) { + sway_log_errno(L_INFO, "Unable to set CLOEXEC on IPC client socket"); + return 0; + } + struct ipc_client* client = malloc(sizeof(struct ipc_client)); client->payload_length = 0; client->fd = client_fd;