From aece36cd22aa50015d1eb737b2b31a0b7087e813 Mon Sep 17 00:00:00 2001 From: Eric Engestrom Date: Sun, 1 May 2016 13:39:24 +0100 Subject: common: fix potential buffer overflow --- common/ipc-client.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'common/ipc-client.c') diff --git a/common/ipc-client.c b/common/ipc-client.c index 93f2963c..997a87d1 100644 --- a/common/ipc-client.c +++ b/common/ipc-client.c @@ -32,7 +32,8 @@ int ipc_open_socket(const char *socket_path) { sway_abort("Unable to open Unix socket"); } addr.sun_family = AF_UNIX; - strcpy(addr.sun_path, socket_path); + strncpy(addr.sun_path, socket_path, sizeof(addr.sun_path)); + addr.sun_path[sizeof(addr.sun_path) - 1] = 0; int l = sizeof(addr.sun_family) + strlen(addr.sun_path); if (connect(socketfd, (struct sockaddr *)&addr, l) == -1) { sway_abort("Unable to connect to %s", socket_path); -- cgit v1.2.3-54-g00ecf