diff options
author | Jerry Jelinek <jerry.jelinek@joyent.com> | 2016-08-19 11:37:34 +0000 |
---|---|---|
committer | Jerry Jelinek <jerry.jelinek@joyent.com> | 2016-08-19 11:37:34 +0000 |
commit | 33736cadb4f8ed87b0c2c0a7be9a00c649f87673 (patch) | |
tree | c57d1afe92cc26425eb49815935fc3515054231a | |
parent | 1cafe04f396b886fcb0351313e1e18897f0882aa (diff) | |
parent | d420209d9c807f782c1d31f5683be74798142198 (diff) | |
download | illumos-joyent-33736cadb4f8ed87b0c2c0a7be9a00c649f87673.tar.gz |
[illumos-gate merge]
commit d420209d9c807f782c1d31f5683be74798142198
7233 dir_is_empty should open directory with CLOEXEC
commit 1033d75249caf2f4829363492fba5ce7044cd11f
7287 smb pam module not picking up libsmb from proto area
-rw-r--r-- | usr/src/lib/libzfs/common/libzfs_mount.c | 12 | ||||
-rw-r--r-- | usr/src/lib/pam_modules/smb/Makefile.com | 5 | ||||
-rw-r--r-- | usr/src/lib/pam_modules/smb/amd64/Makefile | 3 | ||||
-rw-r--r-- | usr/src/lib/pam_modules/smb/i386/Makefile | 3 | ||||
-rw-r--r-- | usr/src/lib/pam_modules/smb/sparc/Makefile | 3 | ||||
-rw-r--r-- | usr/src/lib/pam_modules/smb/sparcv9/Makefile | 3 |
6 files changed, 20 insertions, 9 deletions
diff --git a/usr/src/lib/libzfs/common/libzfs_mount.c b/usr/src/lib/libzfs/common/libzfs_mount.c index f74860ba67..bc4dbf9c3d 100644 --- a/usr/src/lib/libzfs/common/libzfs_mount.c +++ b/usr/src/lib/libzfs/common/libzfs_mount.c @@ -22,7 +22,7 @@ /* * Copyright 2015 Nexenta Systems, Inc. All rights reserved. * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright (c) 2014 by Delphix. All rights reserved. + * Copyright (c) 2014, 2015 by Delphix. All rights reserved. * Copyright 2016 Igor Kozhukhov <ikozhukhov@gmail.com> */ @@ -65,6 +65,7 @@ #include <dirent.h> #include <dlfcn.h> #include <errno.h> +#include <fcntl.h> #include <libgen.h> #include <libintl.h> #include <stdio.h> @@ -180,9 +181,16 @@ dir_is_empty(const char *dirname) { DIR *dirp; struct dirent64 *dp; + int dirfd; - if ((dirp = opendir(dirname)) == NULL) + if ((dirfd = openat(AT_FDCWD, dirname, + O_RDONLY | O_NDELAY | O_LARGEFILE | O_CLOEXEC, 0)) < 0) { return (B_TRUE); + } + + if ((dirp = fdopendir(dirfd)) == NULL) { + return (B_TRUE); + } while ((dp = readdir64(dirp)) != NULL) { diff --git a/usr/src/lib/pam_modules/smb/Makefile.com b/usr/src/lib/pam_modules/smb/Makefile.com index 8afe5b8232..518564ca79 100644 --- a/usr/src/lib/pam_modules/smb/Makefile.com +++ b/usr/src/lib/pam_modules/smb/Makefile.com @@ -23,7 +23,7 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Copyright 2016 RackTop Systems. # LIBRARY= pam_smb_passwd.a @@ -32,8 +32,7 @@ OBJECTS= smb_passwd.o include ../../Makefile.pam_modules -LDLIBS += -lpam -lc -LDLIBS += -L$(ROOT)/usr/lib/smbsrv -lsmb +LDLIBS += -lsmb -lpam -lc all: $(LIBS) diff --git a/usr/src/lib/pam_modules/smb/amd64/Makefile b/usr/src/lib/pam_modules/smb/amd64/Makefile index 8b0fed8b9f..d2d77bfc78 100644 --- a/usr/src/lib/pam_modules/smb/amd64/Makefile +++ b/usr/src/lib/pam_modules/smb/amd64/Makefile @@ -23,12 +23,13 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Copyright 2016 RackTop Systems. # include ../Makefile.com include ../../../Makefile.lib.64 +LDLIBS += -L$(ROOT)/usr/lib/smbsrv/$(MACH64) DYNFLAGS += -R/usr/lib/smbsrv/$(MACH64) DYNFLAGS += $(ROOT)/usr/lib/$(MACH64)/passwdutil.so.1 diff --git a/usr/src/lib/pam_modules/smb/i386/Makefile b/usr/src/lib/pam_modules/smb/i386/Makefile index 5be2ca90df..fefb0fc549 100644 --- a/usr/src/lib/pam_modules/smb/i386/Makefile +++ b/usr/src/lib/pam_modules/smb/i386/Makefile @@ -23,11 +23,12 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Copyright 2016 RackTop Systems. # include ../Makefile.com +LDLIBS += -L$(ROOT)/usr/lib/smbsrv DYNFLAGS += -R/usr/lib/smbsrv DYNFLAGS += $(ROOT)/usr/lib/passwdutil.so.1 diff --git a/usr/src/lib/pam_modules/smb/sparc/Makefile b/usr/src/lib/pam_modules/smb/sparc/Makefile index 5be2ca90df..fefb0fc549 100644 --- a/usr/src/lib/pam_modules/smb/sparc/Makefile +++ b/usr/src/lib/pam_modules/smb/sparc/Makefile @@ -23,11 +23,12 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Copyright 2016 RackTop Systems. # include ../Makefile.com +LDLIBS += -L$(ROOT)/usr/lib/smbsrv DYNFLAGS += -R/usr/lib/smbsrv DYNFLAGS += $(ROOT)/usr/lib/passwdutil.so.1 diff --git a/usr/src/lib/pam_modules/smb/sparcv9/Makefile b/usr/src/lib/pam_modules/smb/sparcv9/Makefile index 8b0fed8b9f..d2d77bfc78 100644 --- a/usr/src/lib/pam_modules/smb/sparcv9/Makefile +++ b/usr/src/lib/pam_modules/smb/sparcv9/Makefile @@ -23,12 +23,13 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Copyright 2016 RackTop Systems. # include ../Makefile.com include ../../../Makefile.lib.64 +LDLIBS += -L$(ROOT)/usr/lib/smbsrv/$(MACH64) DYNFLAGS += -R/usr/lib/smbsrv/$(MACH64) DYNFLAGS += $(ROOT)/usr/lib/$(MACH64)/passwdutil.so.1 |