From 8b04d28a5ba0137a985b72b3f512581dea835493 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 24 Jul 2020 11:19:17 +0200 Subject: [PATCH] createUnixDomainSocket(): Fix off-by-one error in copying the socket path Reported by Kane York. (cherry picked from commit 2292814049256980c6e809ab364ebe0da3c9d76a) --- src/nix-daemon/nix-daemon.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nix-daemon/nix-daemon.cc b/src/nix-daemon/nix-daemon.cc index cd18489b0..7a5cb9a37 100644 --- a/src/nix-daemon/nix-daemon.cc +++ b/src/nix-daemon/nix-daemon.cc @@ -967,7 +967,7 @@ static void daemonLoop(char * * argv) struct sockaddr_un addr; addr.sun_family = AF_UNIX; - if (socketPathRel.size() >= sizeof(addr.sun_path)) + if (socketPathRel.size() + 1 >= sizeof(addr.sun_path)) throw Error(format("socket path '%1%' is too long") % socketPathRel); strcpy(addr.sun_path, socketPathRel.c_str());