diff --git a/hyprctl/main.cpp b/hyprctl/main.cpp index 7c939a4c..87c332fb 100644 --- a/hyprctl/main.cpp +++ b/hyprctl/main.cpp @@ -80,7 +80,7 @@ void request(std::string arg, int minArgs = 0) { std::string socketPath = "/tmp/hypr/" + instanceSigStr + "/.socket.sock"; - strcpy(serverAddress.sun_path, socketPath.c_str()); + strncpy(serverAddress.sun_path, socketPath.c_str(), 107); if (connect(SERVERSOCKET, (sockaddr*)&serverAddress, SUN_LEN(&serverAddress)) < 0) { std::cout << "Couldn't connect to " << socketPath << ". (3)"; @@ -143,7 +143,7 @@ void requestHyprpaper(std::string arg) { std::string socketPath = "/tmp/hypr/" + instanceSigStr + "/.hyprpaper.sock"; - strcpy(serverAddress.sun_path, socketPath.c_str()); + strncpy(serverAddress.sun_path, socketPath.c_str(), 107); if (connect(SERVERSOCKET, (sockaddr*)&serverAddress, SUN_LEN(&serverAddress)) < 0) { std::cout << "Couldn't connect to " << socketPath << ". (3)"; diff --git a/src/managers/EventManager.cpp b/src/managers/EventManager.cpp index 3fd63fcb..dd4959b8 100644 --- a/src/managers/EventManager.cpp +++ b/src/managers/EventManager.cpp @@ -67,7 +67,7 @@ void CEventManager::startThread() { sockaddr_un SERVERADDRESS = {.sun_family = AF_UNIX}; std::string socketPath = "/tmp/hypr/" + g_pCompositor->m_szInstanceSignature + "/.socket2.sock"; - strcpy(SERVERADDRESS.sun_path, socketPath.c_str()); + strncpy(SERVERADDRESS.sun_path, socketPath.c_str(), 107); bind(SOCKET, (sockaddr*)&SERVERADDRESS, SUN_LEN(&SERVERADDRESS));