summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArthur de Jong <arthur@arthurdejong.org>2012-01-17 19:38:19 +0000
committerArthur de Jong <arthur@arthurdejong.org>2012-01-17 19:38:19 +0000
commit7e2b652b25e5f1cedd51d8a84143c98149190c4a (patch)
tree1c4a26bdc3aeff6ee7db2eca15db7b41ae0cdf59
parentf54f6ac6c8cb50172f94b716e9b750ddaab27473 (diff)
pass the correct size of named socket address (fixes FreeBSD issue, fixes r1295)
git-svn-id: http://arthurdejong.org/svn/nss-pam-ldapd/nss-pam-ldapd@1596 ef36b2f9-881f-0410-afb5-c4e39611909c
-rw-r--r--common/nslcd-prot.c2
-rw-r--r--nslcd/nslcd.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/common/nslcd-prot.c b/common/nslcd-prot.c
index f2d6adf..61708d4 100644
--- a/common/nslcd-prot.c
+++ b/common/nslcd-prot.c
@@ -66,7 +66,7 @@ TFILE *nslcd_client_open()
strncpy(addr.sun_path,NSLCD_SOCKET,sizeof(addr.sun_path));
addr.sun_path[sizeof(addr.sun_path)-1]='\0';
/* connect to the socket */
- if (connect(sock,(struct sockaddr *)&addr,(socklen_t)(sizeof(addr.sun_family)+strlen(addr.sun_path)))<0)
+ if (connect(sock,(struct sockaddr *)&addr,SUN_LEN(&addr))<0)
{
(void)close(sock);
return NULL;
diff --git a/nslcd/nslcd.c b/nslcd/nslcd.c
index 4f4d7b9..871d294 100644
--- a/nslcd/nslcd.c
+++ b/nslcd/nslcd.c
@@ -314,7 +314,7 @@ static int create_socket(const char *filename)
strncpy(addr.sun_path,filename,sizeof(addr.sun_path));
addr.sun_path[sizeof(addr.sun_path)-1]='\0';
/* bind to the named socket */
- if (bind(sock,(struct sockaddr *)&addr,(sizeof(addr.sun_family)+strlen(addr.sun_path))))
+ if (bind(sock,(struct sockaddr *)&addr,SUN_LEN(&addr)))
{
log_log(LOG_ERR,"bind() to %s failed: %s",filename,strerror(errno));
if (close(sock))