The branch, v3-5-test has been updated
via e5f4159... Ñ3:ldap: search for account policies in objectclass
sambaDomain, not *
via 751f087... s3:Makefile: add LIBREPLACE_LIBS for talloc, tdb and
wbclient
via 9568469... Ñ3:buildsystem: fix depenencies for libreplace
from 5087e0c... s3/docs: Fix typo.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-5-test
- Log -----------------------------------------------------------------
commit e5f41591504769b5c7beb5a35bb0f95b33d27a8b
Author: Björn Jacke <[email protected]>
Date: Fri Oct 30 21:50:41 2009 +0100
Ñ3:ldap: search for account policies in objectclass sambaDomain, not *
commit 751f087f72fcfedbaeb1b9704b57fbb62d77e5e0
Author: Björn Jacke <[email protected]>
Date: Sat Oct 31 10:37:44 2009 +0100
s3:Makefile: add LIBREPLACE_LIBS for talloc, tdb and wbclient
commit 9568469c6af915b3c58accfe88b42379b3538700
Author: Björn Jacke <[email protected]>
Date: Fri Oct 30 19:54:52 2009 +0100
Ñ3:buildsystem: fix depenencies for libreplace
This problem became visible after adding the picky -z defs linker option: On
Solaris libreplace had unresolved symbols, which showed up in the libtalloc
build. PAM_WINBIND_EXTRA_LIBS and WINBIND_NSS_EXTRA_LIBS had been
workarounds
to make things work at two placeÑ. These variables have been obsoleted now.
This patch introduces LIBREPLACE_LIBS which contans the linker flags needed
for
linking anything using libreplace.
-----------------------------------------------------------------------
Summary of changes:
source3/Makefile.in | 13 ++++++-------
source3/configure.in | 8 ++++----
source3/passdb/pdb_ldap.c | 7 ++++++-
3 files changed, 16 insertions(+), 12 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source3/Makefile.in b/source3/Makefile.in
index 748bfd3..74a6c0b 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -72,14 +72,13 @@ nscd_li...@nscd_libs@
uuid_li...@uuid_libs@
libwbclie...@libwbclient_static@ @LIBWBCLIENT_SHARED@
libwbclient_li...@libwbclient_libs@
-winbind_nss_extra_li...@winbind_nss_extra_libs@
winbind_nss_pthre...@winbind_nss_pthread@
-pam_winbind_extra_li...@pam_winbind_extra_libs@
dnssd_li...@dnssd_libs@
avahi_li...@avahi_libs@
popt_li...@poptlibs@
libtall...@libtalloc_static@ @LIBTALLOC_SHARED@
libtalloc_li...@libtalloc_libs@
+libreplace_li...@libreplace_libs@
libt...@libtdb_static@ @LIBTDB_SHARED@
libtdb_li...@libtdb_libs@
libneta...@libnetapi_static@ @LIBNETAPI_SHARED@
@@ -1837,7 +1836,7 @@ $(LIBTALLOC_SYMS): $(LIBTALLOC_HEADERS)
$(LIBTALLOC_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBTALLOC_OBJ)
$(LIBTALLOC_SYMS)
@echo Linking shared library $@
- @$(SHLD_DSO) $(LIBTALLOC_OBJ) @sonamef...@`basename $...@`
+ @$(SHLD_DSO) $(LIBTALLOC_OBJ) $(LIBREPLACE_LIBS) @sonamef...@`basename
$...@`
$(LIBTALLOC_SHARED_TARGET): $(LIBTALLOC_SHARED_TARGET_SONAME)
@rm -f $@
@@ -1915,7 +1914,7 @@ $(LIBTDB_SYMS): $(LIBTDB_HEADERS)
$(LIBTDB_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBTDB_OBJ) $(LIBTDB_SYMS)
@echo Linking shared library $@
- @$(SHLD_DSO) $(LIBTDB_OBJ) \
+ @$(SHLD_DSO) $(LIBTDB_OBJ) $(LIBREPLACE_LIBS) \
@sonamef...@`basename $...@`
$(LIBTDB_SHARED_TARGET): $(LIBTDB_SHARED_TARGET_SONAME)
@@ -2011,7 +2010,7 @@ $(LIBWBCLIENT_SYMS): $(LIBWBCLIENT_HEADERS)
$(LIBWBCLIENT_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBWBCLIENT_OBJ)
$(LIBWBCLIENT_SYMS) $(LIBTALLOC)
@echo Linking shared library $@
- @$(SHLD_DSO) $(LIBWBCLIENT_OBJ) $(LIBTALLOC_LIBS) \
+ @$(SHLD_DSO) $(LIBWBCLIENT_OBJ) $(LIBTALLOC_LIBS) $(LIBREPLACE_LIBS) \
@sonamef...@`basename $...@`
$(LIBWBCLIENT_SHARED_TARGET): $(LIBWBCLIENT_SHARED_TARGET_SONAME)
@@ -2514,7 +2513,7 @@ bin/v...@exeext@: $(BINARY_PREREQS) $(VLP_OBJ) $(LIBTDB)
@WINBIND_NSS@: $(BINARY_PREREQS) $(WINBIND_NSS_OBJ)
@echo "Linking $@"
@$(SHLD) $(WINBIND_NSS_LDSHFLAGS) -o $@ $(WINBIND_NSS_OBJ) \
- $(WINBIND_NSS_EXTRA_LIBS) $(WINBIND_NSS_PTHREAD) \
+ $(LIBREPLACE_LIBS) $(WINBIND_NSS_PTHREAD) \
@sonamef...@`basename $...@`@NSSSONAMEVERSIONSUFFIX@
@WINBIND_WINS_NSS@: $(BINARY_PREREQS) $(WINBIND_WINS_NSS_OBJ) $(LIBTALLOC)
$(LIBTDB)
@@ -2531,7 +2530,7 @@ bin/winbind_krb5_locat...@shlibext@: $(BINARY_PREREQS)
$(WINBIND_KRB5_LOCATOR_OB
bin/pam_winbi...@shlibext@: $(BINARY_PREREQS) $(PAM_WINBIND_OBJ) $(LIBTALLOC)
$(LIBWBCLIENT)
@echo "Linking shared library $@"
@$(SHLD) $(LDSHFLAGS) -o $@ $(PAM_WINBIND_OBJ) -lpam @INIPARSERLIBS@ \
- $(PAM_WINBIND_EXTRA_LIBS) $(LIBTALLOC_LIBS) $(LIBWBCLIENT_LIBS)
@sonamef...@`basename $...@`
+ $(LIBREPLACE_LIBS) $(LIBTALLOC_LIBS) $(LIBWBCLIENT_LIBS)
@sonamef...@`basename $...@`
##########
# Plugins:
diff --git a/source3/configure.in b/source3/configure.in
index b75ea76..790a0f0 100644
--- a/source3/configure.in
+++ b/source3/configure.in
@@ -646,6 +646,10 @@ LIBREPLACE_DIR=`echo ${libreplacedir} | sed -e
"s;${srcdir};;" -e "s;^/;;"`
LIBREPLACE_OBJS="${LIBREPLACEOBJ}"
AC_SUBST(LIBREPLACE_OBJS)
+LIBREPLACE_LIBS="${LIBREPLACE_NETWORK_LIBS}"
+AC_SUBST(LIBREPLACE_LIBS)
+
+
# add -ldl to the global LIBS
LIBS="${LIBS} ${LIBDL} ${LIBREPLACE_NETWORK_LIBS}"
AUTH_LIBS="${AUTH_LIBS} ${CRYPT_LIBS}"
@@ -5906,8 +5910,6 @@ case "$host_os" in
NSSSONAMEVERSIONSUFFIX=".1"
WINBIND_NSS_EXTRA_OBJS="../nsswitch/winbind_nss_solaris.o \
../nsswitch/winbind_nss_linux.o"
- WINBIND_NSS_EXTRA_LIBS="${LIBREPLACE_NETWORK_LIBS}"
- PAM_WINBIND_EXTRA_LIBS="${LIBREPLACE_NETWORK_LIBS}"
;;
*hpux11*)
WINBIND_NSS_EXTRA_OBJS="../nsswitch/winbind_nss_solaris.o"
@@ -6015,9 +6017,7 @@ AC_SUBST(WINBIND_NSS)
AC_SUBST(WINBIND_WINS_NSS)
AC_SUBST(WINBIND_NSS_LDSHFLAGS)
AC_SUBST(WINBIND_NSS_EXTRA_OBJS)
-AC_SUBST(WINBIND_NSS_EXTRA_LIBS)
AC_SUBST(NSSSONAMEVERSIONSUFFIX)
-AC_SUBST(PAM_WINBIND_EXTRA_LIBS)
AC_SUBST(WINBIND_KRB5_LOCATOR)
diff --git a/source3/passdb/pdb_ldap.c b/source3/passdb/pdb_ldap.c
index c464a88..54cb03d 100644
--- a/source3/passdb/pdb_ldap.c
+++ b/source3/passdb/pdb_ldap.c
@@ -3864,6 +3864,7 @@ static NTSTATUS
ldapsam_get_account_policy_from_ldap(struct pdb_methods *methods
int count;
int rc;
char **vals = NULL;
+ char *filter;
const char *policy_attr = NULL;
struct ldapsam_privates *ldap_state =
@@ -3887,8 +3888,12 @@ static NTSTATUS
ldapsam_get_account_policy_from_ldap(struct pdb_methods *methods
attrs[0] = policy_attr;
attrs[1] = NULL;
+ filter = talloc_asprintf(NULL, "(objectClass=%s)", LDAP_OBJ_DOMINFO);
+ if (filter == NULL) {
+ return NT_STATUS_NO_MEMORY;
+ }
rc = smbldap_search(ldap_state->smbldap_state, ldap_state->domain_dn,
- LDAP_SCOPE_BASE, "(objectclass=*)", attrs, 0,
+ LDAP_SCOPE_BASE, filter, attrs, 0,
&result);
if (rc != LDAP_SUCCESS) {
--
Samba Shared Repository