summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Gallagher <sgallagh@redhat.com>2010-06-14 10:05:04 -0400
committerStephen Gallagher <sgallagh@redhat.com>2010-06-14 16:54:42 -0400
commit75392c5a8a896f0c300b3bc837859616b27daeb6 (patch)
treeb5b7ad5955525419d7f2022784d5b70a47dde3ce
parent0b2d2bebfe41f86dab5c6ed0828d3e91389b08e4 (diff)
downloadsssd_unused-75392c5a8a896f0c300b3bc837859616b27daeb6.tar.gz
sssd_unused-75392c5a8a896f0c300b3bc837859616b27daeb6.tar.xz
sssd_unused-75392c5a8a896f0c300b3bc837859616b27daeb6.zip
Properly null-terminate socket path
https://fedorahosted.org/sssd/ticket/540
-rw-r--r--src/responder/common/responder_common.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/responder/common/responder_common.c b/src/responder/common/responder_common.c
index e39063b4..22b39126 100644
--- a/src/responder/common/responder_common.c
+++ b/src/responder/common/responder_common.c
@@ -467,7 +467,8 @@ static int set_unix_socket(struct resp_ctx *rctx)
memset(&addr, 0, sizeof(addr));
addr.sun_family = AF_UNIX;
- strncpy(addr.sun_path, rctx->sock_name, sizeof(addr.sun_path));
+ strncpy(addr.sun_path, rctx->sock_name, sizeof(addr.sun_path)-1);
+ addr.sun_path[sizeof(addr.sun_path)-1] = '\0';
/* make sure we have no old sockets around */
unlink(rctx->sock_name);
@@ -504,7 +505,8 @@ static int set_unix_socket(struct resp_ctx *rctx)
memset(&addr, 0, sizeof(addr));
addr.sun_family = AF_UNIX;
- strncpy(addr.sun_path, rctx->priv_sock_name, sizeof(addr.sun_path));
+ strncpy(addr.sun_path, rctx->priv_sock_name, sizeof(addr.sun_path)-1);
+ addr.sun_path[sizeof(addr.sun_path)-1] = '\0';
unlink(rctx->priv_sock_name);