Hello community,
here is the log from the commit of package evoldap2-client
checked in at Fri Oct 24 18:32:21 CEST 2008.
--------
--- evoldap2-client/evoldap2-client.changes 2008-10-03 07:25:45.000000000 +0200
+++ /mounts/work_src_done/STABLE/evoldap2-client/evoldap2-client.changes 2008-10-24 17:28:54.953262000 +0200
@@ -2 +2 @@
-Fri Oct 3 07:35:12 CEST 2008 - sragavan@novell.com
+Fri Oct 24 09:51:27 IST 2008 - msuman@suse.de
@@ -4 +4,3 @@
-- Fix AutoReqProv off to avoid conflict with libldap. BNC #431589
+- Update the package to depend on openldap2-client in SUSE Head.
+- Use correct prefixes for all installation directories, which fixes
+ the build failures in evolution-data-server and evolution.
@@ -7 +9 @@
-Mon Sep 29 22:43:10 CEST 2008 - ro@suse.de
+Thu Oct 23 12:59:08 CEST 2008 - rhafer@suse.de
@@ -9 +11,6 @@
-- fix filelists to finally build
+- the helper function to create various LDAP controls returned
+ wrong error codes under certain circumstances
+ (bnc#429064, ITS#5762)
+- Fixed referral chasing in chain-overlay (bnc#438088, ITS#5742)
+- Fixed back-config integration of overlays with private instances
+ of databases (translucent, chain, ...) (bnc#438094, ITS#5736)
@@ -12 +19 @@
-Mon Sep 29 16:02:44 CEST 2008 - ro@suse.de
+Mon Oct 13 11:33:57 CEST 2008 - rhafer@suse.de
@@ -14 +21 @@
-- added directories to filelist
+- Added missing #include to slapo-collect
@@ -17 +24 @@
-Mon Sep 29 12:30:07 CEST 2008 - sragavan@novell.com
+Sun Oct 12 23:51:09 CEST 2008 - rhafer@suse.de
@@ -19 +26,26 @@
-- Make it package to /usr/lib/evoldap
+- Update to 2.4.12. Most important changes:
+ * Fixed libldap ldap_utf8_strchar arguments (ITS#5720)
+ * Fixed libldap TLS_CRLFILE (ITS#5677)
+ * Fixed librewrite memory handling (ITS#5691)
+ * Fixed slapd attribute leak (ITS#5683)
+ * Fixed slapd config backend with index greater than sibs (ITS#5684)
+ * Fixed slapd custom attribute inheritance (ITS#5642)
+ * Fixed slapd firstComponentMatch normalization (ITS#5634)
+ * Fixed slapd connection events enabled twice (ITS#5725)
+ * Fixed slapd memory handling (ITS#5691)
+ * Fixed slapd objectClass canonicalization (ITS#5681)
+ * Fixed slapd objectClass termination (ITS#5682)
+ * Fixed slapd overlay control registration (ITS#5649)
+ * Fixed slapd runqueue checking (ITS#5726)
+ * Fixed slapd sortvals comparison (ITS#5578)
+ * Fixed slapd syncrepl contextCSN detection (ITS#5675)
+ * Fixed slapd syncrepl error logging (ITS#5618)
+ * Fixed slapd syncrepl runqueue interval (ITS#5719)
+ * Fixed slapd-bdb entry return if attr not present (ITS#5650)
+ * Fixed slapd-bdb/hdb release search entries earlier (ITS#5728,ITS#5730)
+ * Fixed slapd-bdb/hdb subtree search with empty suffix (ITS#5729)
+ * Fixed slapo-memberof internal operations DN (ITS#5622)
+ * Fixed slapo-pcache attrset crash (ITS#5665)
+ * Fixed slapo-pcache caching with invalid schema (ITS#5680)
+ * Fixed slapo-ppolicy control return on password modify exop (ITS#5711)
+- removed obsolete patches
@@ -22 +54 @@
-Tue Sep 12 09:18:05 CEST 2008 - sragavan@novell.com
+Mon Oct 6 10:49:23 CEST 2008 - rhafer@suse.de
@@ -24 +56,48 @@
-- Make Evoldap package from Openldap and added evolution specific ntlm-bind Patch
+- remove some problematic test-cases, that cause a lot of
+ unreproducable buildfailures
+- check for exisitence of /etc/openldap/slapd.conf in init-script
+ assume back-config usage if it isn't present (bnc#428168)
+
+-------------------------------------------------------------------
+Wed Sep 24 10:58:09 CEST 2008 - rhafer@suse.de
+
+- Mark Schema and SuSEfirewall files as %config
+- openldap2-back-perl requires perl
+- Give more meaningful error messages when index configuration
+ fails (bnc#429150)
+
+-------------------------------------------------------------------
+Fri Sep 19 17:52:55 CEST 2008 - rhafer@suse.de
+
+- Reduced debug-level during "make test" to reduce required disk
+ space and buildtime
+
+-------------------------------------------------------------------
+Thu Sep 18 13:02:21 CEST 2008 - rhafer@suse.de
+
+- Fixed init-script dependencies (bnc#426214)
+
+-------------------------------------------------------------------
+Fri Sep 12 10:09:28 CEST 2008 - rhafer@suse.de
+
+- Backported fix for a crash in back-config when adding entries with
+ a too large index (ITS#5684)
+- Backported fix for a crash when adding an invalid olcBdbConfig
+ Entry to back-config (ITS#5698)
+
+-------------------------------------------------------------------
+Tue Sep 9 17:22:18 CEST 2008 - rhafer@suse.de
+
+- Removed getaddrinfo workaround. Recent glibc doesn't need it
+ anymore (bnc#288879, ITS#5251)
+- Server requires libldap of the same version.
+
+-------------------------------------------------------------------
+Mon Sep 8 16:07:47 CEST 2008 - rhafer@suse.de
+
+- Import back-config support for deleting databases from CVS HEAD
+
+-------------------------------------------------------------------
+Tue Sep 2 09:18:05 CEST 2008 - rhafer@suse.de
+
+- Dropped evolution specific ntlm-bind Patch (Fate#303480)
calling whatdependson for head-i586
Old:
----
openldap-2.4.11.tar.bz2
slapd_getaddrinfo_dupl.dif
slapd-overlay_register_control.dif
New:
----
check-build.sh
libldap_ctrl_lderrno.dif
openldap-2.4.12.tar.bz2
pre_checkin.sh
slapd-bconfig-del-db.dif
slapd-bdb-stop-checkpoint.dif
slapd-privdb-config-its5736.dif
slapo-chain-dangling-its5742.dif
slapo-collect-include.dif
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ evoldap2-client.spec ++++++
--- /var/tmp/diff_new_pack.owk547/_old 2008-10-24 18:30:27.000000000 +0200
+++ /var/tmp/diff_new_pack.owk547/_new 2008-10-24 18:30:27.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package evoldap2-client (Version 2.4.11)
+# spec file for package evoldap2-client (Version 2.4.12)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -26,23 +26,14 @@
%if %sles_version == 10
BuildRequires: -db-devel -pwdutils libdb-4_5-devel
%endif
+Version: 2.4.12
+Release: 1
Url: http://www.openldap.org
License: BSD 3-Clause
-%if "%{name}" == "openldap2"
-Group: Productivity/Networking/LDAP/Clients
-Provides: ldap2 openldap2-back-ldap openldap2-back-monitor
-Obsoletes: openldap2-back-ldap openldap2-back-monitor
-Conflicts: openldap
-PreReq: %insserv_prereq %fillup_prereq /usr/sbin/useradd /usr/sbin/groupadd /usr/bin/grep
-Summary: NTLM patched OpenLDAP library for Evolution
-%else
Group: Productivity/Networking/LDAP/Clients
-Conflicts: evoldap-client
+Conflicts: openldap-client
Summary: NTLM patched OpenLDAP library for Evolution
-%endif
AutoReqProv: off
-Version: 2.4.11
-Release: 3
Source: openldap-%{version}.tar.bz2
Source1: openldap-rc.tgz
Source2: addonschema.tar.gz
@@ -58,9 +49,10 @@
Patch5: openldap-ntlm.diff
Patch6: libldap-gethostbyname_r.dif
Patch7: pie-compile.dif
-Patch8: slapd_getaddrinfo_dupl.dif
Patch9: openldap2-add-gnu-source.diff
-Patch10: slapd-overlay_register_control.dif
+Patch11: slapd-bconfig-del-db.dif
+Patch13: slapd-bdb-stop-checkpoint.dif
+Patch14: slapo-collect-include.dif
Patch100: openldap-2.3.37.dif
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -72,47 +64,6 @@
-%if "%{name}" == "openldap2"
-
-%package -n openldap2-back-perl
-License: BSD 3-Clause
-Summary: OpenLDAP Perl Back-End
-Requires: openldap2 = %{version}
-AutoReqProv: off
-Group: Productivity/Networking/LDAP/Servers
-
-%description -n openldap2-back-perl
-The OpenLDAP Perl back-end allows you to execute Perl code specific to
-different LDAP operations.
-
-
-
-Authors:
---------
- The OpenLDAP Project
-
-%package -n openldap2-back-meta
-License: BSD 3-Clause
-Summary: OpenLDAP Meta Back-End
-Requires: openldap2 = %{version}
-AutoReqProv: off
-Group: Productivity/Networking/LDAP/Servers
-Provides: openldap2:/usr/share/man/man5/slapd-meta.5.gz
-
-%description -n openldap2-back-meta
-The OpenLDAP Meta back-end is able to perform basic LDAP proxying with
-respect to a set of remote LDAP servers. The information contained in
-these servers can be presented as belonging to a single Directory
-Information Tree (DIT).
-
-
-
-Authors:
---------
- The OpenLDAP Project
-
-%else
-
%package -n evoldap2-devel
License: BSD 3-Clause
Summary: Libraries, Header Files and Documentation for NTLM patched OpenLDAP
@@ -138,8 +89,6 @@
-%endif
-
%prep
%setup -q -n openldap-%{version} -a1 -a2 -b100
%patch
@@ -152,9 +101,10 @@
%if %suse_version > 920
%patch7
%endif
-%patch8 -p1
%patch9 -p1
-%patch10
+%patch11
+%patch13
+%patch14 -p1
cp %{SOURCE5} .
cd ../openldap-2.3.37
%patch100
@@ -164,13 +114,17 @@
libtoolize --force
autoreconf
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -DLDAP_DEPRECATED -DLDAP_CONNECTIONLESS -DSLAP_CONFIG_DELETE"
-./configure --prefix=/usr/lib/evoldap \
- --exec-prefix=/usr/lib/evoldap \
- --sysconfdir=%{_sysconfdir} \
+./configure --prefix=%{_libdir}/evoldap \
+ --exec-prefix=%{_libdir}/evoldap \
+ --sysconfdir=%{_libdir}/evoldap/etc \
--localstatedir=/var/run/slapd \
- --libexecdir=/usr/lib/evoldap \
+ --libexecdir=%{_libdir}/evoldap/lib \
--libdir=%{_libdir}/evoldap/lib \
- --mandir=%{_mandir}/evoldap \
+ --mandir=%{_libdir}/evoldap/man \
+ --bindir=%{_libdir}/evoldap/bin \
+ --sbindir=%{_libdir}/evoldap/sbin \
+ --datadir=%{_libdir}/evoldap/share \
+ --includedir=%{_libdir}/evoldap/include \
--enable-wrappers \
--enable-aclgroups \
--enable-spasswd \
@@ -181,44 +135,11 @@
--with-cyrus-sasl \
--enable-crypt \
--enable-ipv6=yes \
-%if "%{name}" == "openldap2"
- --enable-aci \
- --enable-bdb \
- --enable-hdb \
- --enable-ldbm \
- --enable-rewrite \
- --enable-ldap=yes \
- --enable-meta=mod \
- --enable-monitor=yes \
- --enable-perl=mod \
- --enable-slp \
- --enable-overlays=yes \
-%else
--disable-slapd \
-%endif
--enable-lmpasswd \
--with-yielding-select
make depend
make %{?jobs:-j%jobs}
-%if "%{name}" == "openldap2"
-# build a static slapcat binary from the OpenLDAP 2.3 release
-# to be able to update existing databases
-cd ../openldap-2.3.37
-%{?suse_update_config:%{suse_update_config -f build}}
-libtoolize --force
-#aclocal -I build
-autoreconf
-export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -DLDAP_DEPRECATED"
-./configure --prefix=/usr/lib/evoldap --exec-prefix=/usr/lib/evoldap --sysconfdir=/opt/evoldap/etc \
- --localstatedir=/var/run/slapd --libexecdir=/usr/lib/evoldap \
- --libdir=%{_libdir}/evoldap --mandir=%{_mandir}/evoldap --enable-aci \
- --enable-hdb --enable-bdb --enable-ldbm --enable-crypt \
- --enable-ipv6=no \
- --enable-ldap --enable-monitor --enable-meta --enable-rewrite \
- --enable-dynamic=no --enable-shared=no
-make depend
-make %{?jobs:-j%jobs}
-%endif
%check
# calculate the base port to be use in the test-suite
@@ -229,142 +150,124 @@
fi
export SLAPD_BASEPORT
%ifnarch %arm alpha
+rm -f tests/scripts/test019-syncreplication-cascade
+rm -f tests/scripts/test023-refint
rm -f tests/scripts/test022-ppolicy
-make test
+rm -f tests/scripts/test033-glue-syncrepl
+rm -f tests/scripts/test036-meta-concurrency
+rm -f tests/scripts/test039-glue-ldap-concurrency
+rm -f tests/scripts/test043-delta-syncrepl
+rm -f tests/scripts/test045-syncreplication-proxied
+rm -f tests/scripts/test048-syncrepl-multiproxy
+rm -f tests/scripts/test050-syncrepl-multimaster
+make SLAPD_DEBUG=0 test
%endif
%install
mkdir -p $RPM_BUILD_ROOT/etc/init.d
-mkdir -p $RPM_BUILD_ROOT/usr/sbin
+mkdir -p $RPM_BUILD_ROOT/%{_libdir}/evoldap/sbin
make DESTDIR=$RPM_BUILD_ROOT install
install -m 755 rc.ldap $RPM_BUILD_ROOT/etc/init.d/ldap
-ln -sf ../../etc/init.d/ldap $RPM_BUILD_ROOT/usr/sbin/rcldap
-mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/openldap/slapd.d
-mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/sasl2
-install -m 644 %{SOURCE4} $RPM_BUILD_ROOT/%{_sysconfdir}/sasl2/slapd.conf
+ln -sf ../../etc/init.d/ldap $RPM_BUILD_ROOT/%{_libdir}/evoldap/sbin/rcldap
+mkdir -p $RPM_BUILD_ROOT/%{_libdir}/evoldap/etc/openldap/slapd.d
+mkdir -p $RPM_BUILD_ROOT/%{_libdir}/evoldap/etc/sasl2
+install -m 644 %{SOURCE4} $RPM_BUILD_ROOT/%{_libdir}/evoldap/etc/sasl2/slapd.conf
install -m 755 -d $RPM_BUILD_ROOT/var/lib/ldap
chmod a+x $RPM_BUILD_ROOT/%{_libdir}/evoldap/lib/liblber.so*
chmod a+x $RPM_BUILD_ROOT/%{_libdir}/evoldap/lib/libldap_r.so*
chmod a+x $RPM_BUILD_ROOT/%{_libdir}/evoldap/lib/libldap.so*
-%if "%{name}" == "openldap2"
-mkdir -p $RPM_BUILD_ROOT/var/adm/fillup-templates
-install -m 644 sysconfig.openldap $RPM_BUILD_ROOT/var/adm/fillup-templates/sysconfig.openldap
-install -m 644 *.schema $RPM_BUILD_ROOT/etc/openldap/schema
-install -m 644 %{SOURCE3} $RPM_BUILD_ROOT/var/lib/ldap/DB_CONFIG
-install -m 644 $RPM_BUILD_ROOT/etc/openldap/DB_CONFIG.example $RPM_BUILD_ROOT/var/lib/ldap/DB_CONFIG.example
-install -d $RPM_BUILD_ROOT/etc/sysconfig/SuSEfirewall2.d/services/
-install -m 644 SuSEfirewall2.openldap $RPM_BUILD_ROOT/etc/sysconfig/SuSEfirewall2.d/services/openldap
-rm -f `find doc/guide ! -name *.html -a ! -name *.gif -a ! -name *.png -a ! -type d`
-rm -rf doc/guide/release
-rm -f $RPM_BUILD_ROOT/etc/openldap/DB_CONFIG.example
-rm -f $RPM_BUILD_ROOT/var/run/slapd/openldap-data/DB_CONFIG.example
-# install 2.3 slapcat
-install -m 755 ../openldap-2.3.37/servers/slapd/slapcat $RPM_BUILD_ROOT/usr/sbin/openldap-2.3-slapcat
-%endif
-rm -f $RPM_BUILD_ROOT/usr/lib/openldap/modules/*.a
-rm -f $RPM_BUILD_ROOT/%{_mandir}/evoldap/man5/slapd-dnssrv.5
-rm -f $RPM_BUILD_ROOT/%{_mandir}/evoldap/man5/slapd-null.5
-rm -f $RPM_BUILD_ROOT/%{_mandir}/evoldap/man5/slapd-passwd.5
-rm -f $RPM_BUILD_ROOT/%{_mandir}/evoldap/man5/slapd-shell.5
-rm -f $RPM_BUILD_ROOT/%{_mandir}/evoldap/man5/slapd-sock.5
-rm -f $RPM_BUILD_ROOT/%{_mandir}/evoldap/man5/slapd-sql.5
-rm -f $RPM_BUILD_ROOT/%{_mandir}/evoldapevoldap//man5/slapd-tcl.5
+rm -f $RPM_BUILD_ROOT/%{_libdir}/evoldap/lib/openldap/modules/*.a
+rm -f $RPM_BUILD_ROOT/%{_libdir}/evoldap/man/man5/slapd-dnssrv.5
+rm -f $RPM_BUILD_ROOT/%{_libdir}/evoldap/man/man5/slapd-ndb.5
+rm -f $RPM_BUILD_ROOT/%{_libdir}/evoldap/man/man5/slapd-null.5
+rm -f $RPM_BUILD_ROOT/%{_libdir}/evoldap/man/man5/slapd-passwd.5
+rm -f $RPM_BUILD_ROOT/%{_libdir}/evoldap/man/man5/slapd-shell.5
+rm -f $RPM_BUILD_ROOT/%{_libdir}/evoldap/man/man5/slapd-sock.5
+rm -f $RPM_BUILD_ROOT/%{_libdir}/evoldap/man/man5/slapd-sql.5
+rm -f $RPM_BUILD_ROOT/%{_libdir}/evoldap/man/man5/slapd-tcl.5
# Remove *.la files, libtool does not handle this correct
rm -f $RPM_BUILD_ROOT%{_libdir}/evoldap/lib/lib*.la
-rm -f $RPM_BUILD_ROOT/etc/openldap/ldap.conf
-rm -f $RPM_BUILD_ROOT/etc/openldap/ldap.conf.default
#put filelists into files
cat >openldap2.filelist < openldap2-client.filelist < libldap.filelist < openldap2-devel.filelist < openldap2-back-perl.filelist < openldap2-back-meta.filelist < /dev/null || :
-/usr/sbin/useradd -r -o -g ldap -u 76 -s /bin/bash -c "User for OpenLDAP" -d \
- /var/lib/ldap ldap 2> /dev/null || :
-# try to figure out if a db update is needed
-if [ ${1:-0} -gt 1 ] && [ -f /usr/lib/openldap/slapd ] &&
- /usr/bin/strings /usr/lib/openldap/slapd | \
- grep "slapd 2.3" 2>&1 > /dev/null;
-then
- # create a backup of the schema shipped with 2.3
- # at least core.schema changed between 2.3 and 2.4
- TEMPDIR=`mktemp -d /etc/openldap/schema.backup.XXXXXX`
- echo "Schema backup created in $TEMPDIR"
- cp -p --remove-destination /etc/openldap/schema/* $TEMPDIR
- echo $TEMPDIR > /etc/openldap/UPDATE_NEEDED ;
-fi
-
-%post
-if [ ${1:-0} -gt 1 ] && [ -f %{_libdir}/sasl2/slapd.conf ] ; then
- cp /etc/sasl2/slapd.conf /etc/sasl2/slapd.conf.rpmnew
- cp %{_libdir}/sasl2/slapd.conf /etc/sasl2/slapd.conf
-fi
-%{fillup_and_insserv -n openldap ldap}
-%{remove_and_set -n openldap OPENLDAP_RUN_DB_RECOVER}
-# convert database if needed
-if [ -f /etc/openldap/UPDATE_NEEDED ] ; then
- read SCHEMA_BACKUP < /etc/openldap/UPDATE_NEEDED
- SLAPD_CONF=/etc/openldap/slapd.conf
- sed -e "s;/etc/openldap/schema/;$SCHEMA_BACKUP/;g" \
- < $SLAPD_CONF > $SCHEMA_BACKUP/slapd.conf.update
- LOGFILE="slaptool.log"
- BACKENDS=`grep ^database $SLAPD_CONF | awk '{print $2}'`
- DIRECTORIES=(`grep ^directory $SLAPD_CONF | awk '{print $2}'`)
- MSG=""
- db_num=0
- dir_num=0
- for i in $BACKENDS; do
- db_num=$((db_num+1));
- if [ "x$i" = "xbdb" ]; then
- db_dir=${DIRECTORIES[$dir_num]};
- if [ -f $db_dir/id2entry.bdb ] ; then
- rm $db_dir/__db* ;
- mkdir $db_dir/db_bak ;
- echo "Dumping database to: $db_dir/ldapbak.ldif.$db_num" ;
- /usr/sbin/openldap-2.3-slapcat -T c \
- -f $SCHEMA_BACKUP/slapd.conf.update \
- -n $db_num -l $db_dir/ldapbak.ldif.$db_num ;
- mv $db_dir/*.bdb $db_dir/db_bak/ ;
- mv $db_dir/log.* $db_dir/db_bak/ ;
- rm -f $db_dir/__db* ;
- fi
- dir_num=$((dir_num+1));
- fi
- done
- db_num=0
- dir_num=0
- for i in $BACKENDS; do
- db_num=$((db_num+1));
- if [ "x$i" = "xbdb" ] || [ "x$i" = "xhdb" ] ; then
- db_dir=${DIRECTORIES[$dir_num]};
- if [ -s $db_dir/ldapbak.ldif.$db_num ] ; then
- if [ `wc -l $db_dir/ldapbak.ldif.$db_num | awk '{print $1}'` -lt 1000000 ]; then
- echo "Restoring $i database in $db_dir" ;
- slapadd -q -n $db_num -f $SLAPD_CONF -l $db_dir/ldapbak.ldif.$db_num 2>> $db_dir/$LOGFILE ;
- if [ $? -ne 0 ]; then
- MSG="$MSG\nFailed to restore database in $db_dir";
- MSG="$MSG\nPlease restore manually from the LDIF dump $db_dir/ldapbak.ldif.$db_num\n";
- else
- rm -f $db_dir/ldapbak.ldif.$db_num
- rm -rf $db_dir/db_bak/
- fi
- else
- MSG="$MSG\nPlease restore the database in $db_dir manually by using";
- MSG="$MSG\nslapadd with the LDIF dump $db_dir/ldapbak.ldif.$db_num\n";
- fi
- fi
- dir_num=$((dir_num+1));
- fi
- done
- if [ "$MSG" ] ; then
- echo -e "$MSG";
- else
- rm -f /etc/openldap/UPDATE_NEEDED ;
- fi
-fi
-
-%preun
-%stop_on_removal ldap
-
-%postun
-%restart_on_update ldap
-%insserv_cleanup
-
-%files -f openldap2.filelist
-%defattr(-,root,root)
-
-%files -n openldap2-back-perl -f openldap2-back-perl.filelist
-%defattr(-,root,root)
-
-%files -n openldap2-back-meta -f openldap2-back-meta.filelist
-%defattr(-,root,root)
-%else
%post -n libevoldap-2_4-2 -p /sbin/ldconfig
@@ -486,11 +285,17 @@
%files -f openldap2-client.filelist
%defattr(-,root,root)
+%dir %{_libdir}/evoldap/bin
+%dir %{_libdir}/evoldap/etc
+%dir %{_libdir}/evoldap/man
+%dir %{_libdir}/evoldap/man/man?
%files -n libevoldap-2_4-2 -f libldap.filelist
%defattr(-,root,root)
+%dir %{_libdir}/evoldap
+%dir %{_libdir}/evoldap/lib
%files -n evoldap2-devel -f openldap2-devel.filelist
%defattr(-,root,root)
-%endif
+%dir %{_libdir}/evoldap/include
++++++ check-build.sh ++++++
#!/bin/bash
# Copyright (c) 2003 SuSE Linux AG, Germany. All rights reserved.
#
# Authors: Thorsten Kukuk
#
# this script use the following variable(s):
#
# - $BUILD_DIST
#
case $BUILD_BASENAME in
*axp*|*i386|*i686|*ia64|*ppc|*ppc64|*s390|*s390x|*x86_64)
grep "Linux version 2.[0-5].[0-9][0-9]" /proc/version > /dev/null
if [ $? -ne 1 ]; then
echo "FATAL: kernel too old, need kernel >= 2.6.4 for this package"
exit 1
fi
grep "Linux version 2.6.[0-3]-" /proc/version > /dev/null
if [ $? -eq 0 ]; then
echo "FATAL: kernel too old, need kernel >= 2.6.4 for this package"
exit 1
fi
;;
*)
;;
esac
exit 0
++++++ libldap_ctrl_lderrno.dif ++++++
Index: libraries/libldap/pagectrl.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/libraries/libldap/pagectrl.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- libraries/libldap/pagectrl.c 9 Jan 2008 12:28:09 -0000 1.10
+++ libraries/libldap/pagectrl.c 21 Oct 2008 14:17:41 -0000 1.11
@@ -71,6 +71,7 @@
value->bv_val = NULL;
value->bv_len = 0;
+ ld->ld_errno = LDAP_SUCCESS;
if ( cookie == NULL ) {
cookie = &null_cookie;
Index: libraries/libldap/sortctrl.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/libraries/libldap/sortctrl.c,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- libraries/libldap/sortctrl.c 7 Jan 2008 23:20:04 -0000 1.24
+++ libraries/libldap/sortctrl.c 21 Oct 2008 14:17:41 -0000 1.25
@@ -304,6 +304,7 @@
value->bv_val = NULL;
value->bv_len = 0;
+ ld->ld_errno = LDAP_SUCCESS;
ber = ldap_alloc_ber_with_options( ld );
if ( ber == NULL) {
Index: libraries/libldap/vlvctrl.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/libraries/libldap/vlvctrl.c,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- libraries/libldap/vlvctrl.c 7 Jan 2008 23:20:05 -0000 1.25
+++ libraries/libldap/vlvctrl.c 21 Oct 2008 14:17:41 -0000 1.26
@@ -101,6 +101,7 @@
value->bv_val = NULL;
value->bv_len = 0;
+ ld->ld_errno = LDAP_SUCCESS;
ber = ldap_alloc_ber_with_options( ld );
if ( ber == NULL ) {
Index: libraries/libldap/stctrl.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/libraries/libldap/stctrl.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- libraries/libldap/stctrl.c 7 Jan 2008 23:20:04 -0000 1.4
+++ libraries/libldap/stctrl.c 21 Oct 2008 14:17:41 -0000 1.5
@@ -60,6 +60,7 @@
}
assert( LDAP_VALID( ld ) );
+ ld->ld_errno = LDAP_SUCCESS;
/* check sizes according to I.D. */
if ( sessionSourceIp == NULL ) {
++++++ openldap-2.4.11.tar.bz2 -> openldap-2.4.12.tar.bz2 ++++++
++++ 25338 lines of diff (skipped)
++++++ openldap2.dif ++++++
--- /var/tmp/diff_new_pack.owk547/_old 2008-10-24 18:30:34.000000000 +0200
+++ /var/tmp/diff_new_pack.owk547/_new 2008-10-24 18:30:34.000000000 +0200
@@ -48,21 +48,3 @@
" attr \"%s\" normalization failed (%d: %s)",
fname, lineno,
a->acl_attrs[ 0 ].an_name.bv_val, rc, text );
-Index: libraries/libldap/result.c
-===================================================================
---- libraries/libldap/result.c.orig
-+++ libraries/libldap/result.c
-@@ -639,10 +639,12 @@ retry_ber:
- if ( LDAP_IS_UDP(ld) && isv2 ) {
- ber_scanf(ber, "x{");
- }
--nextresp2:
- #endif
- }
-
-+#ifdef LDAP_CONNECTIONLESS
-+nextresp2:
-+#endif
- /* the message type */
- tag = ber_peek_tag( ber, &len );
- if ( tag == LBER_ERROR ) {
++++++ openldap-rc.tgz ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/rc.ldap new/rc.ldap
--- old/rc.ldap 2008-08-18 09:48:00.000000000 +0200
+++ new/rc.ldap 2008-10-06 10:46:28.000000000 +0200
@@ -10,8 +10,8 @@
#
### BEGIN INIT INFO
# Provides: ldap
-# Required-Start: $remote_fs
-# Required-Stop: $remote_fs
+# Required-Start: $network $remote_fs
+# Required-Stop: $network $remote_fs
# Default-Start: 3 5
# Description: OpenLDAP Server (slapd)
### END INIT INFO
@@ -173,6 +173,11 @@
chown -R $OPENLDAP_USER /etc/openldap/slapd.d 2>/dev/null
chgrp -R $OPENLDAP_GROUP /etc/openldap/slapd.d 2>/dev/null
chown_database_dirs_bconfig "/etc/openldap/slapd.d"
+ # assume back-config usage if slapd.conf is not present but slapd.d is
+ elif [ ! -f /etc/openldap/slapd.conf -a /etc/openldap/slapd.d ]; then
+ chown -R $OPENLDAP_USER /etc/openldap/slapd.d 2>/dev/null
+ chgrp -R $OPENLDAP_GROUP /etc/openldap/slapd.d 2>/dev/null
+ chown_database_dirs_bconfig "/etc/openldap/slapd.d"
else
chown_database_dirs "/etc/openldap/slapd.conf"
chgrp $OPENLDAP_GROUP /etc/openldap/slapd.conf 2>/dev/null
++++++ pre_checkin.sh ++++++
#!/bin/bash
echo -n "Generating openldap2-client "
cp openldap2.changes openldap2-client.changes
cp openldap2.spec openldap2-client.spec
perl -pi -e "s/^Name:.*openldap2$/Name: openldap2-client/g" openldap2-client.spec
echo "Done."
++++++ slapd-bconfig-del-db.dif ++++++
Index: servers/slapd/bconfig.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/bconfig.c,v
retrieving revision 1.342
retrieving revision 1.344
diff -u -r1.342 -r1.344
--- servers/slapd/bconfig.c 4 Sep 2008 11:56:31 -0000 1.342
+++ servers/slapd/bconfig.c 4 Sep 2008 15:12:07 -0000 1.344
@@ -5245,15 +5245,28 @@
if ( last )
rs->sr_matched = last->ce_entry->e_name.bv_val;
rs->sr_err = LDAP_NO_SUCH_OBJECT;
- } else if ( ce->ce_kids ) {
+ } else if ( ce->ce_kids ) {
rs->sr_err = LDAP_UNWILLING_TO_PERFORM;
- } else if ( ce->ce_type == Cft_Overlay ){
+ } else if ( ce->ce_type == Cft_Overlay || ce->ce_type == Cft_Database ){
char *iptr;
int count, ixold, rc;
ldap_pvt_thread_pool_pause( &connection_pool );
-
- overlay_remove( ce->ce_be, (slap_overinst *)ce->ce_bi );
+
+ if ( ce->ce_type == Cft_Overlay ){
+ overlay_remove( ce->ce_be, (slap_overinst *)ce->ce_bi );
+ } else { /* Cft_Database*/
+ if ( ce->ce_be == frontendDB || ce->ce_be == op->o_bd ){
+ rs->sr_err = LDAP_UNWILLING_TO_PERFORM;
+ rs->sr_text = "Cannot delete config or frontend database";
+ ldap_pvt_thread_pool_resume( &connection_pool );
+ goto out;
+ }
+ if ( ce->ce_be->bd_info->bi_db_close ) {
+ ce->ce_be->bd_info->bi_db_close( ce->ce_be, NULL );
+ }
+ backend_destroy_one( ce->ce_be, 1);
+ }
/* remove CfEntryInfo from the siblings list */
if ( ce->ce_parent->ce_kids == ce ) {
@@ -5315,6 +5328,7 @@
#else
rs->sr_err = LDAP_UNWILLING_TO_PERFORM;
#endif /* SLAP_CONFIG_DELETE */
+out:
send_ldap_result( op, rs );
return rs->sr_err;
}
++++++ slapd-bdb-stop-checkpoint.dif ++++++
Index: servers/slapd/back-bdb/init.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-bdb/init.c,v
retrieving revision 1.293
retrieving revision 1.294
diff -u -r1.293 -r1.294
--- servers/slapd/back-bdb/init.c 27 Aug 2008 20:28:16 -0000 1.293
+++ servers/slapd/back-bdb/init.c 12 Sep 2008 07:53:40 -0000 1.294
@@ -640,6 +640,17 @@
{
struct bdb_info *bdb = (struct bdb_info *) be->be_private;
+ /* stop and remove checkpoint task */
+ if ( bdb->bi_txn_cp_task ) {
+ struct re_s *re = bdb->bi_txn_cp_task;
+ bdb->bi_txn_cp_task = NULL;
+ ldap_pvt_thread_mutex_lock( &slapd_rq.rq_mutex );
+ if ( ldap_pvt_runqueue_isrunning( &slapd_rq, re ) )
+ ldap_pvt_runqueue_stoptask( &slapd_rq, re );
+ ldap_pvt_runqueue_remove( &slapd_rq, re );
+ ldap_pvt_thread_mutex_unlock( &slapd_rq.rq_mutex );
+ }
+
/* monitor handling */
(void)bdb_monitor_db_destroy( be );
++++++ slapd-privdb-config-its5736.dif ++++++
Index: servers/slapd/overlays/translucent.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/overlays/translucent.c,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -r1.54 -r1.55
--- servers/slapd/overlays/translucent.c 6 Oct 2008 23:59:52 -0000 1.54
+++ servers/slapd/overlays/translucent.c 12 Oct 2008 18:20:47 -0000 1.55
@@ -95,14 +95,6 @@
{ NULL, NULL, 0, 0, 0, ARG_IGNORED }
};
-static ConfigTable transdummy[] = {
- { "", "", 0, 0, 0, ARG_IGNORED,
- NULL, "( OLcfgGlAt:13 NAME 'olcDatabase' "
- "DESC 'The backend type for a database instance' "
- "SUP olcBackend SINGLE-VALUE X-ORDERED 'SIBLINGS' )", NULL, NULL },
- { NULL, NULL, 0, 0, 0, ARG_IGNORED }
-};
-
static ConfigOCs translucentocs[] = {
{ "( OLcfgOvOc:14.1 "
"NAME 'olcTranslucentConfig' "
@@ -115,7 +107,7 @@
{ "( OLcfgOvOc:14.2 "
"NAME 'olcTranslucentDatabase' "
"DESC 'Translucent target database configuration' "
- "AUXILIARY )", Cft_Misc, transdummy, translucent_ldadd },
+ "AUXILIARY )", Cft_Misc, olcDatabaseDummy, translucent_ldadd },
{ NULL, 0, NULL }
};
/* for translucent_init() */
Index: servers/slapd/overlays/pcache.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/overlays/pcache.c,v
retrieving revision 1.153
retrieving revision 1.154
diff -u -r1.153 -r1.154
--- servers/slapd/overlays/pcache.c 4 Sep 2008 05:43:19 -0000 1.153
+++ servers/slapd/overlays/pcache.c 12 Oct 2008 18:20:47 -0000 1.154
@@ -2655,15 +2655,6 @@
{ NULL, NULL, 0, 0, 0, ARG_IGNORED }
};
-/* Need to no-op this keyword for dynamic config */
-static ConfigTable pcdummy[] = {
- { "", "", 0, 0, 0, ARG_IGNORED,
- NULL, "( OLcfgGlAt:13 NAME 'olcDatabase' "
- "DESC 'The backend type for a database instance' "
- "SUP olcBackend SINGLE-VALUE X-ORDERED 'SIBLINGS' )", NULL, NULL },
- { NULL, NULL, 0, 0, 0, ARG_IGNORED }
-};
-
static ConfigOCs pcocs[] = {
{ "( OLcfgOvOc:2.1 "
"NAME 'olcPcacheConfig' "
@@ -2675,7 +2666,7 @@
{ "( OLcfgOvOc:2.2 "
"NAME 'olcPcacheDatabase' "
"DESC 'Cache database configuration' "
- "AUXILIARY )", Cft_Misc, pcdummy, pc_ldadd },
+ "AUXILIARY )", Cft_Misc, olcDatabaseDummy, pc_ldadd },
{ NULL, 0, NULL }
};
@@ -3995,11 +3986,6 @@
code = config_register_schema( pccfg, pcocs );
if ( code ) return code;
- {
- const char *text;
- code = slap_str2ad( "olcDatabase", &pcdummy[0].ad, &text );
- if ( code ) return code;
- }
return overlay_register( &pcache );
}
Index: servers/slapd/back-monitor/database.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-monitor/database.c,v
retrieving revision 1.97
retrieving revision 1.98
diff -u -r1.97 -r1.98
--- servers/slapd/back-monitor/database.c 26 May 2008 18:53:16 -0000 1.97
+++ servers/slapd/back-monitor/database.c 12 Oct 2008 18:20:46 -0000 1.98
@@ -160,12 +160,12 @@
"monitor_subsys_database_init: "
"missing suffix for %s\n",
rdnval, 0, 0 );
- return -1;
- }
- attr_merge( e, slap_schema.si_ad_namingContexts,
+ } else {
+ attr_merge( e, slap_schema.si_ad_namingContexts,
be->be_suffix, be->be_nsuffix );
- attr_merge( e_database, slap_schema.si_ad_namingContexts,
+ attr_merge( e_database, slap_schema.si_ad_namingContexts,
be->be_suffix, be->be_nsuffix );
+ }
}
(void)init_readOnly( mi, e, be->be_restrictops );
Index: servers/slapd/back-ldap/chain.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-ldap/chain.c,v
retrieving revision 1.69
retrieving revision 1.70
diff -u -r1.69 -r1.70
--- servers/slapd/back-ldap/chain.c 7 Jan 2008 23:20:11 -0000 1.69
+++ servers/slapd/back-ldap/chain.c 12 Oct 2008 18:20:46 -0000 1.70
@@ -63,6 +63,7 @@
LDAP_CH_RES,
LDAP_CH_ERR
} ldap_chain_status_t;
+
static BackendInfo *lback;
typedef struct ldap_chain_t {
@@ -1096,7 +1097,7 @@
"NAME 'olcChainDatabase' "
"DESC 'Chain remote server configuration' "
"AUXILIARY )",
- Cft_Misc, chaincfg, chain_ldadd },
+ Cft_Misc, olcDatabaseDummy, chain_ldadd },
{ NULL, 0, NULL }
};
@@ -1187,6 +1188,8 @@
}
}
+ ca->ca_private = on;
+
done:;
if ( rc != LDAP_SUCCESS ) {
(void)ldap_chain_db_destroy_one( ca->be, NULL );
@@ -1510,17 +1513,11 @@
ldap_chain_t *lc = NULL;
if ( lback == NULL ) {
- static BackendInfo lback2;
-
lback = backend_info( "ldap" );
if ( lback == NULL ) {
return 1;
}
-
- lback2 = *lback;
- lback2.bi_type = ldapchain.on_bi.bi_type;
- lback = &lback2;
}
lc = ch_malloc( sizeof( ldap_chain_t ) );
@@ -2062,7 +2059,8 @@
int
chain_initialize( void )
{
- int rc;
+ int rc;
+ const char *text;
/* Make sure we don't exceed the bits reserved for userland */
config_check_userland( CH_LAST );
Index: servers/slapd/config.h
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/config.h,v
retrieving revision 1.50
retrieving revision 1.51
diff -u -r1.50 -r1.51
--- servers/slapd/config.h 18 Feb 2008 22:11:12 -0000 1.50
+++ servers/slapd/config.h 12 Oct 2008 18:20:46 -0000 1.51
@@ -201,6 +201,8 @@
extern slap_verbmasks *slap_ldap_response_code;
extern int slap_ldap_response_code_register( struct berval *bv, int err );
+extern ConfigTable olcDatabaseDummy[];
+
LDAP_END_DECL
#endif /* CONFIG_H */
Index: servers/slapd/bconfig.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/bconfig.c,v
retrieving revision 1.348
retrieving revision 1.350
diff -u -r1.348 -r1.350
--- servers/slapd/bconfig.c 29 Sep 2008 20:08:29 -0000 1.348
+++ servers/slapd/bconfig.c 12 Oct 2008 18:20:46 -0000 1.350
@@ -696,6 +696,15 @@
NULL, NULL, NULL, NULL }
};
+/* Need to no-op this keyword for dynamic config */
+ConfigTable olcDatabaseDummy[] = {
+ { "", "", 0, 0, 0, ARG_IGNORED,
+ NULL, "( OLcfgGlAt:13 NAME 'olcDatabase' "
+ "DESC 'The backend type for a database instance' "
+ "SUP olcBackend SINGLE-VALUE X-ORDERED 'SIBLINGS' )", NULL, NULL },
+ { NULL, NULL, 0, 0, 0, ARG_IGNORED }
+};
+
/* Routines to check if a child can be added to this type */
static ConfigLDAPadd cfAddSchema, cfAddInclude, cfAddDatabase,
cfAddBackend, cfAddModule, cfAddOverlay;
@@ -3253,7 +3262,7 @@
ConfigArgs *ca;
Entry *frontend;
Entry *config;
- int got_frontend;
+ int got_frontend;
int got_config;
} setup_cookie;
@@ -3262,15 +3271,18 @@
{
if ( rs->sr_type == REP_SEARCH ) {
setup_cookie *sc = op->o_callback->sc_private;
+ struct berval pdn;
sc->cfb->cb_got_ldif = 1;
/* Does the frontend exist? */
if ( !sc->got_frontend ) {
if ( !strncmp( rs->sr_entry->e_nname.bv_val,
- "olcDatabase", STRLENOF( "olcDatabase" ))) {
+ "olcDatabase", STRLENOF( "olcDatabase" )))
+ {
if ( strncmp( rs->sr_entry->e_nname.bv_val +
STRLENOF( "olcDatabase" ), "={-1}frontend",
- STRLENOF( "={-1}frontend" ))) {
+ STRLENOF( "={-1}frontend" )))
+ {
struct berval rdn;
int i = op->o_noop;
sc->ca->be = frontendDB;
@@ -3293,13 +3305,19 @@
}
}
}
+
+ dnParent( &rs->sr_entry->e_nname, &pdn );
+
/* Does the configDB exist? */
if ( sc->got_frontend && !sc->got_config &&
!strncmp( rs->sr_entry->e_nname.bv_val,
- "olcDatabase", STRLENOF( "olcDatabase" ))) {
+ "olcDatabase", STRLENOF( "olcDatabase" )) &&
+ dn_match( &config_rdn, &pdn ) )
+ {
if ( strncmp( rs->sr_entry->e_nname.bv_val +
STRLENOF( "olcDatabase" ), "={0}config",
- STRLENOF( "={0}config" ))) {
+ STRLENOF( "={0}config" )))
+ {
struct berval rdn;
int i = op->o_noop;
sc->ca->be = LDAP_STAILQ_FIRST( &backendDB );
@@ -6466,6 +6484,9 @@
i = config_register_schema( ct, cf_ocs );
if ( i ) return i;
+ i = slap_str2ad( "olcDatabase", &olcDatabaseDummy[0].ad, &text );
+ if ( i ) return i;
+
/* setup olcRootPW to be base64-encoded when written in LDIF form;
* basically, we don't care if it fails */
i = slap_str2ad( "olcRootPW", &ad, &text );
++++++ slapo-chain-dangling-its5742.dif ++++++
Index: servers/slapd/result.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/result.c,v
retrieving revision 1.316
retrieving revision 1.317
diff -u -r1.316 -r1.317
--- servers/slapd/result.c 13 Oct 2008 08:18:15 -0000 1.316
+++ servers/slapd/result.c 16 Oct 2008 22:03:17 -0000 1.317
@@ -1273,6 +1273,7 @@
BerElement *ber = (BerElement *) &berbuf;
int rc = 0;
int bytes;
+ char *edn = rs->sr_entry ? rs->sr_entry->e_name.bv_val : "(null)";
AttributeDescription *ad_ref = slap_schema.si_ad_ref;
AttributeDescription *ad_entry = slap_schema.si_ad_entry;
@@ -1287,7 +1288,7 @@
Debug( LDAP_DEBUG_TRACE,
"=> send_search_reference: dn=\"%s\"\n",
- rs->sr_entry ? rs->sr_entry->e_name.bv_val : "(null)", 0, 0 );
+ edn, 0, 0 );
if ( rs->sr_entry && ! access_allowed( op, rs->sr_entry,
ad_entry, NULL, ACL_READ, NULL ) )
@@ -1313,7 +1314,7 @@
if( op->o_domain_scope ) {
Debug( LDAP_DEBUG_ANY,
"send_search_reference: domainScope control in (%s)\n",
- rs->sr_entry->e_dn, 0, 0 );
+ edn, 0, 0 );
rc = 0;
goto rel;
}
@@ -1321,7 +1322,7 @@
if( rs->sr_ref == NULL ) {
Debug( LDAP_DEBUG_ANY,
"send_search_reference: null ref in (%s)\n",
- rs->sr_entry ? rs->sr_entry->e_dn : "(null)", 0, 0 );
+ edn, 0, 0 );
rc = 1;
goto rel;
}
@@ -1371,6 +1372,7 @@
rc = 0;
if ( rs->sr_flags & REP_ENTRY_MUSTRELEASE ) {
+ assert( rs->sr_entry != NULL );
be_entry_release_rw( op, rs->sr_entry, 0 );
rs->sr_flags ^= REP_ENTRY_MUSTRELEASE;
rs->sr_entry = NULL;
@@ -1520,8 +1522,8 @@
LDAPControl c;
Operation myop;
- Debug( LDAP_DEBUG_ANY, "slap_read_controls: (%s) %s\n",
- oid->bv_val, e->e_dn, 0 );
+ Debug( LDAP_DEBUG_ANY, "%s slap_read_controls: (%s) %s\n",
+ op->o_log_prefix, oid->bv_val, e->e_dn );
rs->sr_entry = e;
rs->sr_attrs = ( oid == &slap_pre_read_bv ) ?
Index: servers/slapd/back-ldap/chain.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-ldap/chain.c,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -r1.70 -r1.71
--- servers/slapd/back-ldap/chain.c 12 Oct 2008 18:20:46 -0000 1.70
+++ servers/slapd/back-ldap/chain.c 16 Oct 2008 22:06:12 -0000 1.71
@@ -597,6 +597,8 @@
struct berval odn = op->o_req_dn,
ondn = op->o_req_ndn;
slap_response *save_response = op->o_callback->sc_response;
+ Entry *save_entry = rs->sr_entry;
+ slap_mask_t save_flags = rs->sr_flags;
int rc = LDAP_OTHER,
first_rc = -1;
@@ -761,7 +763,8 @@
op->o_req_ndn = ondn;
op->o_callback->sc_response = save_response;
rs->sr_type = REP_SEARCHREF;
- rs->sr_entry = NULL;
+ rs->sr_entry = save_entry;
+ rs->sr_flags = save_flags;
if ( rc != LDAP_SUCCESS ) {
/* couldn't chase any of the referrals */
Index: tests/scripts/test032-chain
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/tests/scripts/test032-chain,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- tests/scripts/test032-chain 7 Jan 2008 23:20:17 -0000 1.13
+++ tests/scripts/test032-chain 16 Oct 2008 22:07:15 -0000 1.14
@@ -128,7 +128,7 @@
exit 1
fi
- echo "Reading the referral entry "ou=Other,$BASEDN" as anonymous on port $P..."
+ echo "Reading the referral entry \"ou=Other,$BASEDN\" as anonymous on port $P..."
$LDAPSEARCH -h $LOCALHOST -p $P -b "ou=Other,$BASEDN" -S "" \
> $SEARCHOUT 2>&1
@@ -304,6 +304,31 @@
exit $RC
fi
+# ITS#57??
+$LDAPADD -h $LOCALHOST -p $PORT1 \
+ -D "$MANAGERDN" -w secret \
+ >> $TESTOUT 2>&1 \
+ << EOMODS
+dn: ou=Can't Contact,dc=example,dc=com
+changetype: add
+objectclass: referral
+objectclass: extensibleobject
+ou: Can't Contact
+# invalid URI to test broken connectivity handling (search only)
+ref: ${URI3}ou=Can't%20Contact,dc=example,dc=com
+EOMODS
+
+echo "Reading the referral entry \"ou=Can't Contact,$BASEDN\" as anonymous on port $PORT1..."
+$LDAPSEARCH -h $LOCALHOST -p $PORT1 -b "$BASEDN" -S "" "(cn=Can't Contact)" \
+ > $SEARCHOUT 2>&1
+
+RC=$?
+if test $RC != 0 ; then
+ echo "ldapsearch failed ($RC)!"
+ test $KILLSERVERS != no && kill -HUP $KILLPIDS
+ exit $RC
+fi
+
test $KILLSERVERS != no && kill -HUP $KILLPIDS
echo ">>>>> Test succeeded"
++++++ slapo-collect-include.dif ++++++
Index: openldap-2.4.12/servers/slapd/overlays/collect.c
===================================================================
--- openldap-2.4.12.orig/servers/slapd/overlays/collect.c
+++ openldap-2.4.12/servers/slapd/overlays/collect.c
@@ -30,6 +30,7 @@
#include "slap.h"
#include "config.h"
+#include "lutil.h"
/* This is a cheap hack to implement a collective attribute.
*
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org