summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOndrej Filip <feela@network.cz>2008-08-25 11:57:46 +0000
committerOndrej Filip <feela@network.cz>2008-08-25 11:57:46 +0000
commit030e3a79cb9376fa85597fdb8243299cd843ca3a (patch)
tree3b1acb8b0fa7770ef9de81999b04303bcb23751c
parent057021df0d699f9c21368ab0fa51fe821cc9a544 (diff)
Buffer overflow fix.
-rw-r--r--client/client.c2
-rw-r--r--sysdep/unix/io.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/client/client.c b/client/client.c
index d65ea066..828b9dee 100644
--- a/client/client.c
+++ b/client/client.c
@@ -254,7 +254,7 @@ server_connect(void)
die("Cannot create socket: %m");
bzero(&sa, sizeof(sa));
sa.sun_family = AF_UNIX;
- strcpy(sa.sun_path, server_path);
+ strncpy(sa.sun_path, server_path, sizeof(sa.sun_path));
if (connect(server_fd, (struct sockaddr *) &sa, SUN_LEN(&sa)) < 0)
die("Unable to connect to server control socket (%s): %m", server_path);
if (fcntl(server_fd, F_SETFL, O_NONBLOCK) < 0)
diff --git a/sysdep/unix/io.c b/sysdep/unix/io.c
index 7dcca21a..338edf43 100644
--- a/sysdep/unix/io.c
+++ b/sysdep/unix/io.c
@@ -866,7 +866,7 @@ sk_open_unix(sock *s, char *name)
goto bad;
unlink(name);
sa.sun_family = AF_UNIX;
- strcpy(sa.sun_path, name);
+ strncpy(sa.sun_path, name, sizeof(sa.sun_path));
if (bind(fd, (struct sockaddr *) &sa, SUN_LEN(&sa)) < 0)
ERR("bind");
if (listen(fd, 8))