diff options
author | Jakub Bogusz | 2019-11-07 16:49:41 (GMT) |
---|---|---|
committer | Jakub Bogusz | 2019-11-07 16:49:41 (GMT) |
commit | e6c7022c837245a56deeb5025304e08b5fa14d84 (patch) | |
tree | 1f7745915837bfedcfe7cc23e2e24358cc7718df | |
parent | b758b77b16c516fa54573e9c3c1b9786a827a212 (diff) | |
download | openldap-e6c7022c837245a56deeb5025304e08b5fa14d84.zip openldap-e6c7022c837245a56deeb5025304e08b5fa14d84.tar.gz |
- updated to 2.4.48auto/th/openldap-2.4.48-1
- added slapd_for_symbols_check (glibc no longer allows to LD_PRELOAD a PIE; build slapd code as fake shared object for symbols checking)
-rw-r--r-- | openldap-slapd_for_symbols_check.patch | 31 | ||||
-rw-r--r-- | openldap.spec | 14 |
2 files changed, 40 insertions, 5 deletions
diff --git a/openldap-slapd_for_symbols_check.patch b/openldap-slapd_for_symbols_check.patch new file mode 100644 index 0000000..50c1bc7 --- /dev/null +++ b/openldap-slapd_for_symbols_check.patch @@ -0,0 +1,31 @@ +--- openldap/servers/slapd/Makefile.in.orig 2019-11-05 20:46:53.842675681 +0100 ++++ openldap/servers/slapd/Makefile.in 2019-11-06 21:15:57.588493379 +0100 +@@ -269,6 +269,10 @@ + for i in $(SLAPTOOLS); do \ + $(LN_S) slapd$(EXEEXT) $$i$(EXEEXT); done + ++slapd-shared.la: $(SLAPD_DEPENDS) @LIBSLAPI@ ++ $(LTLINK) -module -shared -avoid-version -Wl,-z,defs -o $@ $(SLAPD_OBJECTS) $(LIBS) \ ++ $(WRAP_LIBS) -rpath $(libexecdir) ++ + + sslapd: version.o + $(LTLINK) -static -o $@ $(OBJS) version.o $(LIBS) $(WRAP_LIBS) +@@ -380,6 +384,8 @@ + -$(MKDIR) $(DESTDIR)$(localstatedir)/run + $(LTINSTALL) $(INSTALLFLAGS) $(STRIP) -m 755 \ + slapd$(EXEEXT) $(DESTDIR)$(libexecdir) ++ $(LTINSTALL) $(INSTALLFLAGS) $(STRIP) -m 755 \ ++ slapd-shared.la $(DESTDIR)$(libexecdir) + @for i in $(SUBDIRS); do \ + if test -d $$i && test -f $$i/Makefile ; then \ + echo; echo " cd $$i; $(MAKE) $(MFLAGS) install"; \ +@@ -394,7 +394,7 @@ + fi; \ + done + +-all-cffiles: slapd $(SLAPD_DYNAMIC_BACKENDS) dynamic_overlays ++all-cffiles: slapd slapd-shared.la $(SLAPD_DYNAMIC_BACKENDS) dynamic_overlays + @if test $(PLAT) = NT; then \ + sysconfdir=`cygpath -w $(sysconfdir) | \ + $(SED) -e 's/\\\\/\\\\\\\\\\\\\\\\/g'`; \ diff --git a/openldap.spec b/openldap.spec index 9871b7b..4a39bc6 100644 --- a/openldap.spec +++ b/openldap.spec @@ -22,12 +22,12 @@ Summary(pt_BR.UTF-8): Clientes e servidor para LDAP Summary(ru.UTF-8): Образцы клиентов LDAP Summary(uk.UTF-8): Зразки клієнтів LDAP Name: openldap -Version: 2.4.47 -Release: 2 +Version: 2.4.48 +Release: 1 License: OpenLDAP Public License Group: Networking/Daemons Source0: ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/%{name}-%{version}.tgz -# Source0-md5: e508f97bfd778fec7799f286e5c07176 +# Source0-md5: 0729a0711fe096831dedc159e0bbe73f Source1: http://download.oracle.com/berkeley-db/db-%{db_version}.tar.gz # Source1-md5: 718082e7e35fc48478a2334b0bc4cd11 Source2: ldap.init @@ -61,6 +61,7 @@ Patch22: %{name}-am.patch Patch23: %{name}-db.patch Patch24: %{name}-default_cacert_path.patch Patch25: %{name}-system-lmdb.patch +Patch26: %{name}-slapd_for_symbols_check.patch # Patch for the evolution library Patch100: %{name}-ntlm.diff URL: http://www.openldap.org/ @@ -1253,6 +1254,7 @@ cd %{name} %if %{with system_lmdb} %patch25 -p1 %endif +%patch26 -p1 %if %{with krb5} %patch17 -p1 %endif @@ -1545,16 +1547,17 @@ cp -p include/ac/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/ac # remove headers, that are provided by -devel package for I in $RPM_BUILD_ROOT%{_includedir}/*.h; do - rm $RPM_BUILD_ROOT%{_includedir}/%{name}/$(basename $I) + %{__rm} $RPM_BUILD_ROOT%{_includedir}/%{name}/$(basename $I) done # check for undefined symbols in slapd modules for i in $RPM_BUILD_ROOT%{_libdir}/openldap/*.so ; do - if LD_PRELOAD=$RPM_BUILD_ROOT%{_libdir}/liblber-2.4.so.2:$RPM_BUILD_ROOT%{_libdir}/libldap_r-2.4.so.2:%{!?with_system_db:$RPM_BUILD_ROOT%{_libdir}/libslapd_db-4.6.so:}$RPM_BUILD_ROOT%{_sbindir}/slapd ldd -r $i 2>&1 | grep "undefined symbol"; then + if LD_PRELOAD=$RPM_BUILD_ROOT%{_libdir}/liblber-2.4.so.2:$RPM_BUILD_ROOT%{_libdir}/libldap_r-2.4.so.2:%{!?with_system_db:$RPM_BUILD_ROOT%{_libdir}/libslapd_db-4.6.so:}$RPM_BUILD_ROOT%{_sbindir}/slapd-shared.so ldd -r $i 2>&1 | grep "undefined symbol"; then echo "Undefined symbols found in" $i exit 1 fi done +%{__rm} $RPM_BUILD_ROOT%{_sbindir}/slapd-shared.so # bogus include %{__sed} -i -e '/^\.so \.\.\/Project/d' $RPM_BUILD_ROOT%{_mandir}/man5/slapo-nops.5 @@ -1987,6 +1990,7 @@ fi %{_includedir}/ldap.h %{_includedir}/ldap_*.h %{_includedir}/ldif.h +%{_includedir}/openldap.h %{_includedir}/slapi-plugin.h %{_mandir}/man3/ber_*.3* %{_mandir}/man3/lber-*.3* |