From a2e47cfaeab42178be5b8118b9397fd05cb8b976 Mon Sep 17 00:00:00 2001 From: Markus Ullmann Date: Fri, 16 Feb 2007 20:55:55 +0000 Subject: [PATCH] Fix liblber wrt bug #164626 and drop unneeded version Package-Manager: portage-2.1.2-r8 --- net-nds/openldap/ChangeLog | 7 +- net-nds/openldap/Manifest | 46 +- .../openldap/files/digest-openldap-2.3.27-r3 | 3 - net-nds/openldap/openldap-2.2.28-r7.ebuild | 6 +- net-nds/openldap/openldap-2.3.27-r3.ebuild | 557 ------------------ net-nds/openldap/openldap-2.3.30-r2.ebuild | 6 +- net-nds/openldap/openldap-2.3.33.ebuild | 6 +- 7 files changed, 34 insertions(+), 597 deletions(-) delete mode 100644 net-nds/openldap/files/digest-openldap-2.3.27-r3 delete mode 100644 net-nds/openldap/openldap-2.3.27-r3.ebuild diff --git a/net-nds/openldap/ChangeLog b/net-nds/openldap/ChangeLog index 91f6f8375333..479b2eeddd80 100644 --- a/net-nds/openldap/ChangeLog +++ b/net-nds/openldap/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for net-nds/openldap # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-nds/openldap/ChangeLog,v 1.257 2007/01/20 10:44:39 jokey Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-nds/openldap/ChangeLog,v 1.258 2007/02/16 20:55:55 jokey Exp $ + + 16 Feb 2007; Markus Ullmann openldap-2.2.28-r7.ebuild, + -openldap-2.3.27-r3.ebuild, openldap-2.3.30-r2.ebuild, + openldap-2.3.33.ebuild: + Fix liblber wrt bug #164626 and drop unneeded version 20 Jan 2007; Markus Ullmann openldap-2.1.30-r10.ebuild: Fix a patch call diff --git a/net-nds/openldap/Manifest b/net-nds/openldap/Manifest index 9515b41d7d4d..9d7acdebc9d1 100644 --- a/net-nds/openldap/Manifest +++ b/net-nds/openldap/Manifest @@ -35,7 +35,6 @@ RMD160 9f3a06bcab2e4ce8e66783af506d26595bbbdcd2 files/slurpd-initd 494 SHA256 b23e010f701620ec34c39cd215891c7c0afc773341392a1e762e84166d9863ff files/slurpd-initd 494 DIST openldap-2.1.30.tgz 2044673 RMD160 431aa798c6197530c17611b931f0169d7a53e831 SHA1 c036f88abbafc16cb64c4e00ccc1c65563864755 SHA256 7fcefd45dfc82038cf0875e36b86a67d3af44b6a734e0127bae9ff2582ae8b25 DIST openldap-2.2.28.tgz 2630427 RMD160 ca3f5aff42e6afc6b7c0a62beb8c13d4ff43d44c SHA1 0b3a3b9b61f6f033685218957fb84ba1d58887de SHA256 05c75b719305578dec799f05eaddae6b77eb51857abc6284e47b6abc4317dfba -DIST openldap-2.3.27.tgz 3757519 RMD160 8c25c39689daa515f14e88611490ae6d8df0911c SHA1 c2b6ac3ec89d0f58d079592946d045dba45edafe SHA256 6ddf211d65aa62bb2165a612f96545d5dc8baf01d269e0f7945ebe066c282ed7 DIST openldap-2.3.30.tgz 3763533 RMD160 4cafe33efcc1cf3baedc73a89f115a659407a710 SHA1 99dd73df2bdf3ac303b2a81ee2c689a2ee09e13a SHA256 3b27a5666dbe4584612be443bfa636238a48f3c16a4dc8f43d59171e8697687b DIST openldap-2.3.33.tgz 3787010 RMD160 b06c7a566d2b2673b479343efa32e8f852541f43 SHA1 594421dc510adb0bc80262b17fff20c113472609 SHA256 c0f14356b77858d52ab47306fd908d7e99159956c3fabb48ca6d8fb127372c4f DIST openldap-compatversions-patchset-1.0.tar.bz2 10547 RMD160 7d6200e26fe8818934a94b4cf192f8e53df5dc2c SHA1 eb6dfb169023e88f08ee93baabcf9293bc29e5f5 SHA256 8b0a7b0c16601405a623012f84f9edba698cb708aea953da3d2f51da26d35c26 @@ -43,26 +42,22 @@ EBUILD openldap-2.1.30-r10.ebuild 7959 RMD160 512a700af709c151054b35acbe68dd944e MD5 7047f729262c001c72f98738917efad8 openldap-2.1.30-r10.ebuild 7959 RMD160 512a700af709c151054b35acbe68dd944e6937b3 openldap-2.1.30-r10.ebuild 7959 SHA256 c8e7d36475d325066a95e52d1a7072d195dc85a2cb38902f42d7648d6e1c2b86 openldap-2.1.30-r10.ebuild 7959 -EBUILD openldap-2.2.28-r7.ebuild 11816 RMD160 0f8268292e6291f8cad4c04e0d033f737ba887c7 SHA1 e09a9ffa6ff61c06e0ce3f43b4723acf70e5255c SHA256 88b353db74dd6bb09262e5347d44a52bb1b5243059f95e9b2d4632f91ec6d705 -MD5 745aa78f028ee9876eff575b9a4c57fd openldap-2.2.28-r7.ebuild 11816 -RMD160 0f8268292e6291f8cad4c04e0d033f737ba887c7 openldap-2.2.28-r7.ebuild 11816 -SHA256 88b353db74dd6bb09262e5347d44a52bb1b5243059f95e9b2d4632f91ec6d705 openldap-2.2.28-r7.ebuild 11816 -EBUILD openldap-2.3.27-r3.ebuild 17913 RMD160 4ef009d1299514bdda6667694e176632f084f51a SHA1 793d6fe1bf3f185cff1bfd40157e02231733cc73 SHA256 5939ae06f7bcbcb692d25d06cc0ecab477ae9f5ad031b447e36bc5146341c1b2 -MD5 e85cfe3479b0b0f669d58e42c3887d99 openldap-2.3.27-r3.ebuild 17913 -RMD160 4ef009d1299514bdda6667694e176632f084f51a openldap-2.3.27-r3.ebuild 17913 -SHA256 5939ae06f7bcbcb692d25d06cc0ecab477ae9f5ad031b447e36bc5146341c1b2 openldap-2.3.27-r3.ebuild 17913 -EBUILD openldap-2.3.30-r2.ebuild 16349 RMD160 a4950514eca668567861f7b73ea79dc0a90175e3 SHA1 bc46981126380c8352acf2ef5c662b5b4ad04cb7 SHA256 2fbac07ac4630f81f574daf95c8e917e8c7ec5d4bd2794b9e8b7ffb3e32b3e34 -MD5 1456ee2c2ff41d9058d90b5cb605de6b openldap-2.3.30-r2.ebuild 16349 -RMD160 a4950514eca668567861f7b73ea79dc0a90175e3 openldap-2.3.30-r2.ebuild 16349 -SHA256 2fbac07ac4630f81f574daf95c8e917e8c7ec5d4bd2794b9e8b7ffb3e32b3e34 openldap-2.3.30-r2.ebuild 16349 -EBUILD openldap-2.3.33.ebuild 16348 RMD160 3b969e1ad9478f9155264d83621a57aea1d46629 SHA1 2479f74b8f5350f9aad286fb528af416146e978e SHA256 1afe2b02b62b57fb5fceb394f6d9270aacade051c83c4625e7f02db7102fbc83 -MD5 a042e1533f0c2d89150f6295c55b2c04 openldap-2.3.33.ebuild 16348 -RMD160 3b969e1ad9478f9155264d83621a57aea1d46629 openldap-2.3.33.ebuild 16348 -SHA256 1afe2b02b62b57fb5fceb394f6d9270aacade051c83c4625e7f02db7102fbc83 openldap-2.3.33.ebuild 16348 -MISC ChangeLog 45767 RMD160 82af6dc58e8473d77f7084dca5ef5355c10a512c SHA1 246e854ff8f681032c53a0b85fb208bfcd8295a0 SHA256 4e435c62ac036140795df8aa0de1de19265775e3966ec415a0711b894297338e -MD5 a4d080267bd3ff401262f4c9cc6e7459 ChangeLog 45767 -RMD160 82af6dc58e8473d77f7084dca5ef5355c10a512c ChangeLog 45767 -SHA256 4e435c62ac036140795df8aa0de1de19265775e3966ec415a0711b894297338e ChangeLog 45767 +EBUILD openldap-2.2.28-r7.ebuild 11822 RMD160 9ac18b128cbe7071cf978ed0cd007f9efaebc0fc SHA1 5d986ee8f6796143ae73e4e5d0c724f4ea21cb35 SHA256 e34b9bc86ebba150dc0e3efe4683521d1c401c47071d2201261576a971804b7c +MD5 4a152c367b4d24500803167848e30a6d openldap-2.2.28-r7.ebuild 11822 +RMD160 9ac18b128cbe7071cf978ed0cd007f9efaebc0fc openldap-2.2.28-r7.ebuild 11822 +SHA256 e34b9bc86ebba150dc0e3efe4683521d1c401c47071d2201261576a971804b7c openldap-2.2.28-r7.ebuild 11822 +EBUILD openldap-2.3.30-r2.ebuild 16355 RMD160 c48b061fd1d6dfd1475f6bd038983ff276faf5cc SHA1 a6e4ee27391dc25b6670e8445ccd7257caaf2761 SHA256 bad99f0a60f9c8a666533cf95ae098658216d59a5ad3d736cdd3c57ac3aca56d +MD5 533ce6d364b41297af03b9fd2aa1cc09 openldap-2.3.30-r2.ebuild 16355 +RMD160 c48b061fd1d6dfd1475f6bd038983ff276faf5cc openldap-2.3.30-r2.ebuild 16355 +SHA256 bad99f0a60f9c8a666533cf95ae098658216d59a5ad3d736cdd3c57ac3aca56d openldap-2.3.30-r2.ebuild 16355 +EBUILD openldap-2.3.33.ebuild 16354 RMD160 d976b3d739d72d377d70608b4723c46cf136f071 SHA1 634022738a3599b3741f468da416d158d318fdf1 SHA256 3aae7bfa23b8bbd2bff53a5e102231450fd6bf57d43a79794f1c079038fc8a1a +MD5 6f4a67aee02b0f07948aecd2c54818cb openldap-2.3.33.ebuild 16354 +RMD160 d976b3d739d72d377d70608b4723c46cf136f071 openldap-2.3.33.ebuild 16354 +SHA256 3aae7bfa23b8bbd2bff53a5e102231450fd6bf57d43a79794f1c079038fc8a1a openldap-2.3.33.ebuild 16354 +MISC ChangeLog 45983 RMD160 41f63555900f539b9c09f3da178af494536d82f6 SHA1 68361b72e9de6c18af8595484e862d7a53d4aca6 SHA256 08824f4d17fc9b594f178e13d9f1af26601d7ba339207e87a5ae62e8b5035752 +MD5 589fbadda997edd61c9c4aea5e7d3b3a ChangeLog 45983 +RMD160 41f63555900f539b9c09f3da178af494536d82f6 ChangeLog 45983 +SHA256 08824f4d17fc9b594f178e13d9f1af26601d7ba339207e87a5ae62e8b5035752 ChangeLog 45983 MISC metadata.xml 240 RMD160 3dfef965b1bac3faa4abfec78fb98b0ed5a9ddaf SHA1 21c64f9ef102b6649bccfca61f06d7b328ef1727 SHA256 fecb6db825d33099fa9f18392db0b7a5ab89a4895ac6ca0f8a2313f348dfaaa6 MD5 9a8efd7efb44b06913bf1d906d493407 metadata.xml 240 RMD160 3dfef965b1bac3faa4abfec78fb98b0ed5a9ddaf metadata.xml 240 @@ -73,9 +68,6 @@ SHA256 22157a2b77e4b40a650a1faee88db3b59f58ea060115487496746bb915cb7dfa files/di MD5 fc44e4ed11cbd528c735267ab7adcee7 files/digest-openldap-2.2.28-r7 551 RMD160 eb854940e823e0f9f0040834856f7a40db575312 files/digest-openldap-2.2.28-r7 551 SHA256 61bde84c81976ceb65369263a2ed306e0ce296f57b832a15dad2d5f57fd5fc22 files/digest-openldap-2.2.28-r7 551 -MD5 11da1511848af420c24e05af22af0d36 files/digest-openldap-2.3.27-r3 241 -RMD160 6d2cb0114f4d36e4ab6901507bc8d2c075392344 files/digest-openldap-2.3.27-r3 241 -SHA256 5647879ba591b3ec35a04e87326cf4526f35239aa4c30434e4dc4b055fba7154 files/digest-openldap-2.3.27-r3 241 MD5 e912b83e7dba93d81b8fad6d2df489b1 files/digest-openldap-2.3.30-r2 241 RMD160 a308c1e798233f0f862c0d5556f2543075738d0b files/digest-openldap-2.3.30-r2 241 SHA256 eecda55d0b9bcbce0abc0a292f082d4d9979c1133ef593b43f7ad11eeadf0933 files/digest-openldap-2.3.30-r2 241 @@ -85,7 +77,7 @@ SHA256 6947a1a2ab466ec8d914b8f3d58cd8d8f2135962ffb23a840686bb48f7082081 files/di -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.1 (GNU/Linux) -iD8DBQFFsfKgz974XjDVpbkRAkG6AKCEO3CbdWLpxp361AXHHvOWAlRJfACeJa18 -f2GcJMjvgy+d+pL+FN5xvys= -=d196 +iD8DBQFF1hoSz974XjDVpbkRAveIAJ9NMw9ImmeikZuv3nmkiO7sLQyIIgCgykkG +LRx70/U9nUFwK0n4XcZ+1xY= +=cE5V -----END PGP SIGNATURE----- diff --git a/net-nds/openldap/files/digest-openldap-2.3.27-r3 b/net-nds/openldap/files/digest-openldap-2.3.27-r3 deleted file mode 100644 index 3b74e66a0d3f..000000000000 --- a/net-nds/openldap/files/digest-openldap-2.3.27-r3 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 0fbae4e9279aaa586adcd9f19b66a5ed openldap-2.3.27.tgz 3757519 -RMD160 8c25c39689daa515f14e88611490ae6d8df0911c openldap-2.3.27.tgz 3757519 -SHA256 6ddf211d65aa62bb2165a612f96545d5dc8baf01d269e0f7945ebe066c282ed7 openldap-2.3.27.tgz 3757519 diff --git a/net-nds/openldap/openldap-2.2.28-r7.ebuild b/net-nds/openldap/openldap-2.2.28-r7.ebuild index 525e9ee8780a..b4ac2bda2ce8 100644 --- a/net-nds/openldap/openldap-2.2.28-r7.ebuild +++ b/net-nds/openldap/openldap-2.2.28-r7.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-nds/openldap/openldap-2.2.28-r7.ebuild,v 1.12 2007/01/16 23:59:56 jokey Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-nds/openldap/openldap-2.2.28-r7.ebuild,v 1.13 2007/02/16 20:55:55 jokey Exp $ WANT_AUTOMAKE="1.9" WANT_AUTOCONF="2.5" @@ -300,7 +300,7 @@ src_install() { pkg_preinst() { # keep old libs if needed - for each in lber.so.2.0.130 libldap.so.2.0.130 libldap_r.so.2.0.130 ; do + for each in liblber.so.2.0.130 libldap.so.2.0.130 libldap_r.so.2.0.130 ; do preserve_old_lib "${ROOT}usr/$(get_libdir)/${each}" done } @@ -333,7 +333,7 @@ pkg_postinst() { einfo "An example file for tuning BDB backends with openldap is:" einfo "/usr/share/doc/${P}/DB_CONFIG.fast.example.gz" - for each in lber.so.2.0.130 libldap.so.2.0.130 libldap_r.so.2.0.130 ; do + for each in liblber.so.2.0.130 libldap.so.2.0.130 libldap_r.so.2.0.130 ; do preserve_old_lib_notify "${ROOT}usr/$(get_libdir)/${each}" done } diff --git a/net-nds/openldap/openldap-2.3.27-r3.ebuild b/net-nds/openldap/openldap-2.3.27-r3.ebuild deleted file mode 100644 index e7db95c25726..000000000000 --- a/net-nds/openldap/openldap-2.3.27-r3.ebuild +++ /dev/null @@ -1,557 +0,0 @@ -# Copyright 1999-2006 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-nds/openldap/openldap-2.3.27-r3.ebuild,v 1.10 2006/12/23 16:10:26 jokey Exp $ - -inherit autotools eutils flag-o-matic multilib toolchain-funcs versionator - -DESCRIPTION="LDAP suite of application and development tools" -HOMEPAGE="http://www.OpenLDAP.org/" -SRC_URI="mirror://openldap/openldap-release/${P}.tgz" - -LICENSE="OPENLDAP" -SLOT="0" -KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd" -IUSE="berkdb crypt debug gdbm ipv6 kerberos minimal odbc overlays perl readline -samba sasl slp smbkrb5passwd ssl tcpd selinux" - -# note that the 'samba' USE flag pulling in OpenSSL is NOT an error. OpenLDAP -# uses OpenSSL for LanMan/NTLM hashing (which is used in some enviroments, like -# mine at work)! -# Robin H. Johnson March 8, 2004 - -RDEPEND_BERKDB=">=sys-libs/db-4.2.52_p2-r1" -RDEPEND="sys-libs/ncurses - tcpd? ( sys-apps/tcp-wrappers ) - ssl? ( dev-libs/openssl ) - readline? ( sys-libs/readline ) - sasl? ( dev-libs/cyrus-sasl ) - !minimal? ( - odbc? ( dev-db/unixODBC ) - slp? ( net-libs/openslp ) - perl? ( dev-lang/perl ) - samba? ( dev-libs/openssl ) - kerberos? ( virtual/krb5 ) - berkdb? ( ${RDEPEND_BERKDB} ) - !berkdb? ( - gdbm? ( sys-libs/gdbm ) - !gdbm? ( ${RDEPEND_BERKDB} ) - ) - smbkrb5passwd? ( - dev-libs/openssl - app-crypt/heimdal - ) - ) - selinux? ( sec-policy/selinux-openldap )" - -DEPEND="${RDEPEND} - >=sys-devel/libtool-1.5.18-r1 - >=sys-apps/sed-4" - -# for tracking versions -OPENLDAP_VERSIONTAG=".version-tag" -OPENLDAP_DEFAULTDIR_VERSIONTAG="/var/lib/openldap-data" - -openldap_upgrade_howto() { - eerror - eerror "A (possible old) installation of OpenLDAP was detected," - eerror "installation will not proceed for now." - eerror - eerror "As major version upgrades can corrupt your database," - eerror "you need to dump your database and re-create it afterwards." - eerror "" - d="$(date -u +%s)" - l="/root/ldapdump.${d}" - i="${l}.raw" - eerror " 1. /etc/init.d/slurpd stop ; /etc/init.d/slapd stop" - eerror " 2. slapcat -l ${i}" - eerror " 3. egrep -v '^entryCSN:' <${i} >${l}" - eerror " 4. mv /var/lib/openldap-data/ /var/lib/openldap-data-backup/" - eerror " 5. emerge --update \=net-nds/${PF}" - eerror " 6. etc-update, and ensure that you apply the changes" - eerror " 7. slapadd -l ${l}" - eerror " 8. chown ldap:ldap /var/lib/openldap-data/*" - eerror " 9. /etc/init.d/slapd start" - eerror "10. check that your data is intact." - eerror "11. set up the new replication system." - eerror - die "You need to upgrade your database first" -} - -openldap_find_versiontags() { - # scan for all datadirs - openldap_datadirs="" - if [ -f ${ROOT}/etc/openldap/slapd.conf ]; then - openldap_datadirs="$(awk '{if($1 == "directory") print $2 }' ${ROOT}/etc/openldap/slapd.conf)" - fi - openldap_datadirs="${openldap_datadirs} ${OPENLDAP_DEFAULTDIR_VERSIONTAG}" - - einfo - einfo "Scanning datadir(s) from slapd.conf and" - einfo "the default installdir for Versiontags" - einfo "(${OPENLDAP_DEFAULTDIR_VERSIONTAG} may appear twice)" - einfo - - # scan datadirs if we have a version tag - openldap_found_tag=0 - for each in ${openldap_datadirs}; do - CURRENT_TAGDIR=${ROOT}`echo ${each} | sed "s:\/::"` - CURRENT_TAG=${CURRENT_TAGDIR}/${OPENLDAP_VERSIONTAG} - if [ -d ${CURRENT_TAGDIR} ] && [ ${openldap_found_tag} == 0 ] ; then - einfo "- Checking ${each}..." - if [ -r ${CURRENT_TAG} ] ; then - # yey, we have one :) - einfo " Found Versiontag in ${each}" - source ${CURRENT_TAG} - if [ "${OLDPF}" == "" ] ; then - eerror "Invalid Versiontag found in ${CURRENT_TAGDIR}" - eerror "Please delete it" - eerror - die "Please kill the invalid versiontag in ${CURRENT_TAGDIR}" - fi - - OLD_MAJOR=`get_version_component_range 2-3 ${OLDPF}` - - # are we on the same branch? - if [ "${OLD_MAJOR}" != "${PV:0:3}" ] ; then - ewarn " Versiontag doesn't match current major release!" - if [[ `ls -a ${CURRENT_TAGDIR} | wc -l` -gt 5 ]] ; then - eerror " Versiontag says other major and you (probably) have datafiles!" - echo - openldap_upgrade_howto - else - einfo " No real problem, seems there's no database." - fi - else - einfo " Versiontag is fine here :)" - fi - else - einfo " Non-tagged dir ${each}" - if [[ `ls -a ${each} | wc -l` > 5 ]] ; then - einfo " EEK! Non-empty non-tagged datadir, counting `ls -a ${each} | wc -l` files" - echo - - eerror - eerror "Your OpenLDAP Installation has a non tagged datadir that" - eerror "possibly contains a database at ${CURRENT_TAGDIR}" - eerror - eerror "Please export data if any entered and empty or remove" - eerror "the directory, installation has been stopped so you" - eerror "can take required action" - eerror - eerror "For a HOWTO on exporting the data, see instructions in the ebuild" - eerror - die "Please move the datadir ${CURRENT_TAGDIR} away" - fi - fi - einfo - fi - done - - echo - einfo - einfo "All datadirs are fine, proceeding with merge now..." - einfo - -} - -pkg_setup() { - if has_version "<=dev-lang/perl-5.8.8_rc1" && built_with_use dev-lang/perl minimal ; then - die "You must have a complete (USE='-minimal') Perl install to use the perl backend!" - fi - - if use minimal && has_version "net-nds/openldap" && built_with_use net-nds/openldap minimal ; then - einfo - einfo "Skipping scan for previous datadirs as requested by minimal useflag" - einfo - else - openldap_find_versiontags - fi - -} - -pkg_preinst() { - enewgroup ldap 439 - enewuser ldap 439 -1 /usr/$(get_libdir)/openldap ldap -} - -src_unpack() { - unpack ${A} - - # According to MDK, the link order needs to be changed so that - # on systems w/ MD5 passwords the system crypt library is used - # (the net result is that "passwd" can be used to change ldap passwords w/ - # proper pam support) - sed -i -e 's/$(SECURITY_LIBS) $(LDIF_LIBS) $(LUTIL_LIBS)/$(LUTIL_LIBS) $(SECURITY_LIBS) $(LDIF_LIBS)/' \ - ${S}/servers/slapd/Makefile.in - - # supersedes old fix for bug #31202 - EPATCH_OPTS="-p1 -d ${S}" epatch ${FILESDIR}/${PN}-2.2.14-perlthreadsfix.patch - - # ensure correct SLAPI path by default - sed -i -e 's,\(#define LDAPI_SOCK\).*,\1 "/var/run/openldap/slapd.sock",' \ - ${S}/include/ldap_defaults.h - - EPATCH_OPTS="-p0 -d ${S}" - - # ximian connector 1.4.7 ntlm patch - epatch ${FILESDIR}/${PN}-2.2.6-ntlm.patch - - # bug #132263 - if use overlays ; then - epatch ${FILESDIR}/${PN}-2.3.21-ppolicy.patch - fi - - # CVE-2006-5779, bug #154349 - EPATCH_OPTS="-p0 -d ${S}" epatch ${FILESDIR}/${PN}-2.3.27-CVE-2006-5779.patch - - # fix up stuff for newer autoconf that simulates autoconf-2.13, but doesn't - # do it perfectly. - cd ${S}/build - ln -s shtool install - ln -s shtool install.sh - einfo "Making sure upstream build strip does not do stripping too early" - sed -i.orig \ - -e '/^STRIP/s,-s,,g' \ - top.mk || die "Failed to block stripping" - - # bug #116045 - # patch contrib modules - if ! use minimal ; then - cd ${S}/contrib - epatch ${FILESDIR}/${PN}-2.3.24-contrib-smbk5pwd.patch - fi -} - -src_compile() { - local myconf - - # HDB is only available with BerkDB - myconf_berkdb='--enable-bdb --enable-ldbm-api=berkeley --enable-hdb=mod' - myconf_gdbm='--disable-bdb --enable-ldbm-api=gdbm --disable-hdb' - - use debug && myconf="${myconf} --enable-debug" # there is no disable-debug - - # enable slapd/slurpd servers if not doing a minimal build - if ! use minimal ; then - myconf="${myconf} --enable-slapd --enable-slurpd" - # base backend stuff - myconf="${myconf} --enable-ldbm" - if use berkdb ; then - einfo "Using Berkeley DB for local backend" - myconf="${myconf} ${myconf_berkdb}" - elif use gdbm ; then - einfo "Using GDBM for local backend" - myconf="${myconf} ${myconf_gdbm}" - else - ewarn "Neither gdbm or berkdb USE flags present, falling back to" - ewarn "Berkeley DB for local backend" - myconf="${myconf} ${myconf_berkdb}" - fi - # extra backend stuff - myconf="${myconf} --enable-passwd=mod --enable-phonetic=mod" - myconf="${myconf} --enable-dnssrv=mod --enable-ldap" - myconf="${myconf} --enable-meta=mod --enable-monitor=mod" - myconf="${myconf} --enable-null=mod --enable-shell=mod" - myconf="${myconf} --enable-relay=mod" - myconf="${myconf} `use_enable perl perl mod`" - myconf="${myconf} `use_enable odbc sql mod`" - # slapd options - myconf="${myconf} `use_enable crypt` `use_enable slp`" - myconf="${myconf} --enable-rewrite --enable-rlookups" - myconf="${myconf} --enable-aci --enable-modules" - myconf="${myconf} --enable-cleartext --enable-slapi" - myconf="${myconf} `use_with samba lmpasswd`" - # slapd overlay options - myconf="${myconf} --enable-dyngroup --enable-proxycache" - myconf="${myconf} `use_enable overlays overlays mod`" - else - myconf="${myconf} --disable-slapd --disable-slurpd" - myconf="${myconf} --disable-bdb --disable-ldbm" - myconf="${myconf} --disable-hdb --disable-monitor" - myconf="${myconf} --disable-slurpd --disable-overlays" - myconf="${myconf} --disable-relay" - fi - - # basic functionality stuff - myconf="${myconf} --enable-syslog --enable-dynamic" - myconf="${myconf} --enable-local --enable-proctitle" - - myconf="${myconf} `use_enable ipv6` `use_enable readline`" - myconf="${myconf} `use_with sasl cyrus-sasl` `use_enable sasl spasswd`" - myconf="${myconf} `use_enable tcpd wrappers` `use_with ssl tls`" - - if [ $(get_libdir) != "lib" ] ; then - append-ldflags -L/usr/$(get_libdir) - fi - - STRIP=/bin/true \ - econf \ - --enable-static \ - --enable-shared \ - --libexecdir=/usr/$(get_libdir)/openldap \ - ${myconf} || die "configure failed" - - make depend || die "make depend failed" - make || die "make failed" - - # openldap/contrib - tc-export CC - if ! use minimal ; then - # dsaschema - einfo "Building contributed dsaschema" - cd ${S}/contrib/slapd-modules/dsaschema - ${CC} -shared -I../../../include ${CFLAGS} -fPIC \ - -Wall -o libdsaschema-plugin.so dsaschema.c || \ - die "failed to compile dsaschema module" - # kerberos passwd - if use kerberos ; then - einfo "Building contributed pw-kerberos" - cd ${S}/contrib/slapd-modules/passwd/ && \ - ${CC} -shared -I../../../include ${CFLAGS} -fPIC \ - -DHAVE_KRB5 -o pw-kerberos.so kerberos.c || \ - die "failed to compile kerberos password module" - fi - # netscape mta-md5 password - einfo "Building contributed pw-netscape" - cd ${S}/contrib/slapd-modules/passwd/ && \ - ${CC} -shared -I../../../include ${CFLAGS} -fPIC \ - -o pw-netscape.so netscape.c || \ - die "failed to compile netscape password module" - # smbk5pwd overlay - # Note: this modules builds, but may not work with - # Gentoo's MIT-Kerberos. It was designed for Heimdal - # Kerberos. - if use smbkrb5passwd ; then - einfo "Building contributed smbk5pwd" - local mydef - local mykrb5inc - mydef="-DDO_SAMBA -DDO_KRB5" - mykrb5inc="-I/usr/include/heimdal/" - cd ${S}/contrib/slapd-modules/smbk5pwd && \ - libexecdir="/usr/$(get_libdir)/openldap" \ - DEFS="${mydef}" KRB5_INC="${mykrb5inc}" emake || \ - die "failed to compile smbk5pwd module" - fi - # addrdnvalues - einfo "Building contributed addrdnvalues" - cd ${S}/contrib/slapi-plugins/addrdnvalues/ && \ - ${CC} -shared -I../../../include ${CFLAGS} -fPIC \ - -o libaddrdnvalues-plugin.so addrdnvalues.c || \ - die "failed to compile addrdnvalues plugin" - fi -} - -src_test() { - einfo - einfo "Doing tests" - einfo - cd tests ; make tests || die "make tests failed" -} - -src_install() { - make DESTDIR="${D}" install || die "make install failed" - - dodoc ANNOUNCEMENT CHANGES COPYRIGHT README LICENSE ${FILESDIR}/DB_CONFIG.fast.example - docinto rfc ; dodoc doc/rfc/*.txt - - # openldap modules go here - # TODO: write some code to populate slapd.conf with moduleload statements - keepdir /usr/$(get_libdir)/openldap/openldap/ - - # make state directories - local dirlist="data" - if ! use minimal; then - dirlist="${dirlist} slurp ldbm" - fi - for x in ${dirlist}; do - keepdir /var/lib/openldap-${x} - fowners ldap:ldap /var/lib/openldap-${x} - fperms 0700 /var/lib/openldap-${x} - done - - echo "OLDPF='${PF}'" >${D}${OPENLDAP_DEFAULTDIR_VERSIONTAG}/${OPENLDAP_VERSIONTAG} - echo "# do NOT delete this. it is used" >>${D}${OPENLDAP_DEFAULTDIR_VERSIONTAG}/${OPENLDAP_VERSIONTAG} - echo "# to track versions for upgrading." >>${D}${OPENLDAP_DEFAULTDIR_VERSIONTAG}/${OPENLDAP_VERSIONTAG} - - # manually remove /var/tmp references in .la - # because it is packaged with an ancient libtool - for x in ${D}/usr/$(get_libdir)/lib*.la; do - sed -i -e "s:-L${S}[/]*libraries::" ${x} - done - - # change slapd.pid location in configuration file - keepdir /var/run/openldap - fowners ldap:ldap /var/run/openldap - fperms 0755 /var/run/openldap - - if ! use minimal; then - # config modifications - for f in /etc/openldap/slapd.conf /etc/openldap/slapd.conf.default; do - sed -e "s:/var/lib/run/slapd.:/var/run/openldap/slapd.:" -i ${D}/${f} - sed -e "/database\tbdb$/acheckpoint 32 30 # " -i ${D}/${f} - fowners root:ldap ${f} - fperms 0640 ${f} - done - # install our own init scripts - exeinto /etc/init.d - newexe ${FILESDIR}/2.0/slapd slapd - newexe ${FILESDIR}/2.0/slurpd slurpd - if [ $(get_libdir) != lib ]; then - sed -e "s,/usr/lib/,/usr/$(get_libdir)/," -i ${D}/etc/init.d/{slapd,slurpd} - fi - insinto /etc/conf.d - newins ${FILESDIR}/2.0/slapd.conf slapd - # install contributed modules - docinto / - if [ -e ${S}/contrib/slapd-modules/dsaschema/libdsaschema-plugin.so ]; - then - cd ${S}/contrib/slapd-modules/dsaschema/ - newdoc README README.contrib.dsaschema - exeinto /usr/$(get_libdir)/openldap/openldap - doexe libdsaschema-plugin.so || \ - die "failed to install dsaschema module" - fi - if [ -e ${S}/contrib/slapd-modules/passwd/pw-kerberos.so ]; then - cd ${S}/contrib/slapd-modules/passwd/ - newdoc README README.contrib.passwd - exeinto /usr/$(get_libdir)/openldap/openldap - doexe pw-kerberos.so || \ - die "failed to install kerberos passwd module" - fi - if [ -e ${S}/contrib/slapd-modules/passwd/pw-netscape.so ]; then - cd ${S}/contrib/slapd-modules/passwd/ - newdoc README README.contrib.passwd - exeinto /usr/$(get_libdir)/openldap/openldap - doexe ${S}/contrib/slapd-modules/passwd/pw-netscape.so || \ - die "failed to install Netscape MTA-MD5 passwd module" - fi - if [ -e ${S}/contrib/slapd-modules/smbk5pwd/.libs/smbk5pwd.so ]; then - cd ${S}/contrib/slapd-modules/smbk5pwd - newdoc README.contrib.smbk5pwd - libexecdir="/usr/$(get_libdir)/openldap" \ - DESTDIR="${D}" make install-mod || \ - die "failed to install smbk5pwd overlay module" - fi - if [ -e ${S}/contrib/slapd-tools/statslog ]; then - cd ${S}/contrib/slapd-tools - exeinto /usr/bin - newexe statslog ldapstatslog || \ - die "failed to install ldapstatslog script" - fi - if [ -e ${S}/contrib/slapi-plugins/addrdnvalues/libaddrdnvalues-plugin.so ]; - then - cd ${S}/contrib/slapi-plugins/addrdnvalues - newdoc README README.contrib.addrdnvalues - exeinto /usr/$(get_libdir)/openldap/openldap - doexe libaddrdnvalues-plugin.so || \ - die "failed to install addrdnvalues plugin" - fi - - fi - - # install MDK's ssl cert script - if use ssl || use samba; then - dodir /etc/openldap/ssl - exeinto /etc/openldap/ssl - doexe ${FILESDIR}/gencert.sh - fi - - # keep old libs if any - # from 2.1 - for each in ${ROOT}usr/$(get_libdir)/liblber.so.2.0.1* ; do - preserve_old_lib ${each} - done - for each in ${ROOT}usr/$(get_libdir)/libldap.so.2.0.1* ; do - preserve_old_lib ${each} - done - for each in ${ROOT}usr/$(get_libdir)/libldap_r.so.2.0.1* ; do - preserve_old_lib ${each} - done - # from 2.2 - for each in ${ROOT}usr/$(get_libdir)/liblber-2.2* ; do - preserve_old_lib ${each} - done - for each in ${ROOT}usr/$(get_libdir)/libldap-2.2* ; do - preserve_old_lib ${each} - done - for each in ${ROOT}usr/$(get_libdir)/libldap_r-2.2* ; do - preserve_old_lib ${each} - done -} - -pkg_postinst() { - # keep old libs if any - # from 2.1 - for each in ${ROOT}usr/$(get_libdir)/liblber.so.2.0.1* ; do - preserve_old_lib_notify ${each} - done - for each in ${ROOT}usr/$(get_libdir)/libldap.so.2.0.1* ; do - preserve_old_lib_notify ${each} - done - for each in ${ROOT}usr/$(get_libdir)/libldap_r.so.2.0.1* ; do - preserve_old_lib_notify ${each} - done - # from 2.2 - for each in ${ROOT}usr/$(get_libdir)/liblber-2.2* ; do - preserve_old_lib_notify ${each} - done - for each in ${ROOT}usr/$(get_libdir)/libldap-2.2* ; do - preserve_old_lib_notify ${each} - done - for each in ${ROOT}usr/$(get_libdir)/libldap_r-2.2* ; do - preserve_old_lib_notify ${each} - done - - if use ssl; then - # make a self-signed ssl cert (if there isn't one there already) - if [ ! -e /etc/openldap/ssl/ldap.pem ] - then - cd /etc/openldap/ssl - yes "" | sh gencert.sh - chmod 640 ldap.pem - chown root:ldap ldap.pem - else - einfo - einfo "An LDAP cert already appears to exist, no creating" - einfo - fi - fi - - # Since moving to running openldap as user ldap there are some - # permissions problems with directories and files. - # Let's make sure these permissions are correct. - chown ldap:ldap /var/run/openldap - chmod 0755 /var/run/openldap - chown root:ldap /etc/openldap/slapd.conf{,.default} - chmod 0640 /etc/openldap/slapd.conf{,.default} - chown ldap:ldap /var/lib/openldap-{data,ldbm,slurp} - - if use ssl; then - ewarn - ewarn "Self-signed SSL certificates are treated harshly by OpenLDAP 2.[12]" - ewarn "add 'TLS_REQCERT never' if you want to use them." - ewarn - fi - - # Reference inclusion bug #77330 - echo - einfo - einfo "Getting started using OpenLDAP? There is some documentation available:" - einfo "Gentoo Guide to OpenLDAP Authentication" - einfo "(http://www.gentoo.org/doc/en/ldap-howto.xml)" - einfo - - # note to bug #110412 - echo - einfo - einfo "An example file for tuning BDB backends with openldap is:" - einfo "/usr/share/doc/${P}/DB_CONFIG.fast.example.gz" - einfo - - if has_version "