diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/remote.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/remote.cc b/src/remote.cc index 7a8f0d02..63a7fecf 100644 --- a/src/remote.cc +++ b/src/remote.cc @@ -614,7 +614,10 @@ static sockaddr_un session_addr(StringView session) { sockaddr_un addr; addr.sun_family = AF_UNIX; - strcpy(addr.sun_path, session_path(session).c_str()); + String path = session_path(session); + if (path.length() + 1 > sizeof addr.sun_path) + throw runtime_error{format("socket path too long: '{}'", path)}; + strcpy(addr.sun_path, path.c_str()); return addr; } |
