elm quicklaunch - warn - explicitly handle socket length being too long

make socket too long an error. fixes warning.
This commit is contained in:
Carsten Haitzler 2018-11-07 15:22:48 +00:00
parent b8b2253f85
commit fdde914bac
1 changed files with 9 additions and 1 deletions

View File

@ -183,6 +183,7 @@ main(int argc, char **argv)
struct sigaction action;
const char *domain;
int ret = 0;
size_t len;
if (!eina_init())
{
@ -237,7 +238,14 @@ main(int argc, char **argv)
exit(-1);
}
socket_unix.sun_family = AF_UNIX;
strncpy(socket_unix.sun_path, buf, sizeof(socket_unix.sun_path));
len = strlen(buf);
if (len > sizeof(socket_unix.sun_path))
{
CRI("socket path '%s' is too long for buffer", buf);
exit(-1);
}
memcpy(socket_unix.sun_path, buf, len);
if (len < sizeof(socket_unix.sun_path)) socket_unix.sun_path[len] = 0;
socket_unix_len = LENGTH_OF_SOCKADDR_UN(&socket_unix);
if (bind(sock, (struct sockaddr *)&socket_unix, socket_unix_len) < 0)
{