diff options
Diffstat (limited to 'sys-auth/nss_ldap')
-rw-r--r-- | sys-auth/nss_ldap/ChangeLog | 8 | ||||
-rw-r--r-- | sys-auth/nss_ldap/Manifest | 5 | ||||
-rw-r--r-- | sys-auth/nss_ldap/files/nss_ldap-264-disable-automagic.patch | 109 | ||||
-rw-r--r-- | sys-auth/nss_ldap/nss_ldap-264.ebuild | 101 |
4 files changed, 221 insertions, 2 deletions
diff --git a/sys-auth/nss_ldap/ChangeLog b/sys-auth/nss_ldap/ChangeLog index d52ab00afd21..d3372f01a581 100644 --- a/sys-auth/nss_ldap/ChangeLog +++ b/sys-auth/nss_ldap/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sys-auth/nss_ldap # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-auth/nss_ldap/ChangeLog,v 1.57 2009/07/28 16:49:56 robbat2 Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-auth/nss_ldap/ChangeLog,v 1.58 2009/07/28 18:45:51 robbat2 Exp $ + +*nss_ldap-264 (28 Jul 2009) + + 28 Jul 2009; Robin H. Johnson <robbat2@gentoo.org> +nss_ldap-264.ebuild, + +files/nss_ldap-264-disable-automagic.patch: + Version bump. Bug #214750 - fix automagic deps on kerberos, ssl, sasl. 28 Jul 2009; Robin H. Johnson <robbat2@gentoo.org> -nss_ldap-239-r1.ebuild, -nss_ldap-249.ebuild, -nss_ldap-250.ebuild, diff --git a/sys-auth/nss_ldap/Manifest b/sys-auth/nss_ldap/Manifest index 4c5c99119341..fe50cb5b340d 100644 --- a/sys-auth/nss_ldap/Manifest +++ b/sys-auth/nss_ldap/Manifest @@ -4,14 +4,17 @@ AUX nss_ldap-252-reconnect-timeouts.patch 3169 RMD160 f442c89e3065db02aef6fd6023 AUX nss_ldap-254-nss_getgrent_skipmembers.patch 7921 RMD160 e9479d357c28e63f24b08fd73023322e8107a632 SHA1 c95b986c02a23a60509ae82c0e4caa155043b8c4 SHA256 4ea143c1c33c771a1868f46a349a71ba2c904a14d8ec23320fa2d500a72c9882 AUX nss_ldap-257-nss_max_group_depth.patch 3551 RMD160 8d23cd290f23808f14e1e5308280de00fb9cb9f0 SHA1 625edf664eb66bece8bc420f50c95b9ca279ea9d SHA256 66286a3d097b2ac425bd7f6078701a8f5b357ee535284d3faa4e0783b974fa37 AUX nss_ldap-257.2-gssapi-headers.patch 2343 RMD160 b99b79b7cf9a423aceb350bfcc7d692b5bfa4ead SHA1 b7a3577b4db4f1c87c55935c2f6493bc704c82c2 SHA256 1b920cfc6b5d62408fee019cdf8491a8cbc9884344775d9fb57cd8a419d32fd5 +AUX nss_ldap-264-disable-automagic.patch 4357 RMD160 b0174c8d28bb514a799dce163d4f6757104efeab SHA1 d5847f1a512f4a2c901043f01917119528d1f881 SHA256 7e8fbaa80a3174b68991d232a214af9e6f7eae7e7aaedd92d200828a8510d0e6 AUX nsswitch.ldap.diff 575 RMD160 6c429261de3f99eccfb6f613e0d8a499fa798245 SHA1 a2aada398f1db0eb162633d39992646ce513a3b6 SHA256 f3bf121d1fa4e3c0119d36ddd2445bcbbd955e2b7fe2f0fe65ebaa6d2808c43e DIST nss_ldap-258.tar.gz 274694 RMD160 ee52775b9612f780908b3c8363ab2b18e7f4ea1c SHA1 50a5128db5a4d894fba35aeb092685605fba578d SHA256 afa3bb64cd29557e775219585655721ac220de5804d95d0c307dab86f2308346 DIST nss_ldap-259.tar.gz 274878 RMD160 95b7fe2a4c28c4d8e86cf7d0d2e61e5e585b5a06 SHA1 0644d06be11b01e45d7a2a153e247b1203704d25 SHA256 8b65a32717f6173911aaea8e89b2c89ccb901f14f1063f5e49b5ab77d45f1790 DIST nss_ldap-261.tar.gz 276065 RMD160 abf3f7d100f9d2ede62397538c1fd472855ec587 SHA1 85058bfca645f88a177bcde7fb3f1bea23c6e8f1 SHA256 7e9a6e8e1f07607b63f5f61fda755778fb1257e6599ac467327b6e817de5aad7 DIST nss_ldap-262.tar.gz 274927 RMD160 db3419cf987a74bf00a84cec6c8651f3ea433dd0 SHA1 846419cc10fbcccc173744176bdd88f9607e7f28 SHA256 179cd8458ae3cc23cb726cf15afb94089482dd22559ac503e7df5fd6fc2c4cbf +DIST nss_ldap-264.tar.gz 278134 RMD160 ab8f0de0cc9023232cbb08adcb92307028d57fb5 SHA1 b06a8ac04bf1cf6a4aaeef8ae6dbb3fad097a668 SHA256 556198f2774bdb61a597da3fa8a5ecc80a3271ed9ab177760df7c4f22d6b1d25 EBUILD nss_ldap-258.ebuild 2372 RMD160 a4869b6d13e033eb35b26dfdcf2cdb71edf35826 SHA1 169f695b92bbd02500f76c117f75007e5c6e4ab8 SHA256 91491630930b3b752c40659937dcce431b315f39253812d8443c971ed8ae00a7 EBUILD nss_ldap-259.ebuild 2379 RMD160 3df6c70a17527bf60a545915c149f68bbd66724d SHA1 72e3c24e7ba468dc33f70cfcc1e6d1b9eff3fd02 SHA256 53cf4f8aabc230fb3a948d905ae4c51f6f65aabdf12e6042064853a4c3f3f620 EBUILD nss_ldap-261.ebuild 2499 RMD160 139eeb95880f741e493b019eeb6a6ece367f5e2b SHA1 fd7bbf290da758f396d9c0853f4ee60d6648a054 SHA256 1cd3978bcf73de9da6175f39d6f2f272f0d6259037e7edd97e7604cb2b411d8b EBUILD nss_ldap-262.ebuild 2499 RMD160 a3bb810de2c68961ab6120d2870104687b36e61a SHA1 8dda9cd9d3635ea89d2fb07bf08cc6c5fe0308d8 SHA256 36846bd0eeccab737c054f2f94f4e8fdb14b545993bd70c910425e0bb6f15c29 -MISC ChangeLog 15323 RMD160 eb6fb85f4c7da5258e4011c4039cbef4cf84eb06 SHA1 a2cce277fa202d211271e1d8eb7c2d9772cd67bd SHA256 85eeebcd0ef850211a236bcd17f1a90e1d116eec1a574ff0983fa3b57ed66730 +EBUILD nss_ldap-264.ebuild 2682 RMD160 72a730a33ed6d26619d49c29114f958e40db2088 SHA1 cdb2df42054833cff0473869472ec0c6d1e20679 SHA256 0f44b822126d30da14e268ea64a80839260392f9f3f0e6ffc4f7745c70e24b45 +MISC ChangeLog 15548 RMD160 0796df7599667b3006feafd4b9cfcb554132e64a SHA1 2a2ee71656a69db881c2003a5ba01a81861b7a47 SHA256 d5ae96944e1323a45f7db81f8c073118156230a0dc34cd3106489b2915fc228e MISC metadata.xml 374 RMD160 d093200b154cb3766f818bb06ab05fb29d45af0c SHA1 0e6b6cc539b9c537d3a5464884ca2ca9c1717134 SHA256 72f6eb7d9ee256d2edb0336e03b71674bf17d2828222ca8722fdb48a88304365 diff --git a/sys-auth/nss_ldap/files/nss_ldap-264-disable-automagic.patch b/sys-auth/nss_ldap/files/nss_ldap-264-disable-automagic.patch new file mode 100644 index 000000000000..7671574da4da --- /dev/null +++ b/sys-auth/nss_ldap/files/nss_ldap-264-disable-automagic.patch @@ -0,0 +1,109 @@ +Explicitly provide a way to disable Kerberos/SASL/SSL usage in nss_ldap, so +that you can build non-kerberos versions on systems with Kerberos installed +WITHOUT it linking due to presence. + +Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> + +diff -Nuar nss_ldap-264.orig/configure.in nss_ldap-264/configure.in +--- nss_ldap-264.orig/configure.in 2009-07-28 10:35:27.599965878 -0700 ++++ nss_ldap-264/configure.in 2009-07-28 10:36:00.620375469 -0700 +@@ -10,6 +10,21 @@ + AC_PROG_INSTALL + + dnl ++dnl Turn on/off SSL ++dnl ++AC_ARG_ENABLE(ssl, [ --enable-ssl enable SSL code ], [AC_DEFINE([WANT_SSL], [1], [Define if SSL is wanted])]) ++ ++dnl ++dnl Turn on/off Kerberos ++dnl ++AC_ARG_ENABLE(krb, [ --enable-krb enable Kerberos code ], [AC_DEFINE([WANT_KRB], [1], [Define if Kerberos is wanted])]) ++ ++dnl ++dnl Turn on/off SASL ++dnl ++AC_ARG_ENABLE(sasl, [ --enable-sasl enable Kerberos code ], [AC_DEFINE([WANT_SASL], [1], [Define if SASL is wanted])]) ++ ++dnl + dnl --enable-rfc2307bis is now deprecated; if this option is set, + dnl then RFC2307bis support will be enabled by default. However + dnl it can now always be enabled at runtime with the nss_schema +@@ -178,12 +193,18 @@ + AC_CHECK_HEADERS(sys/un.h) + AC_CHECK_HEADERS(libc-lock.h) + AC_CHECK_HEADERS(bits/libc-lock.h) +-AC_CHECK_HEADERS(sasl.h sasl/sasl.h) ++if test "$enable_sasl" \!= "no"; then ++ AC_CHECK_HEADERS(sasl.h sasl/sasl.h) ++fi + AC_CHECK_HEADERS(strings.h) +-AC_CHECK_HEADERS(gssldap.h) +-AC_CHECK_HEADERS(gsssasl.h) +-AC_CHECK_HEADERS(gssapi/gssapi_krb5.h gssapi/gssapi.h gssapi.h) +-AC_CHECK_HEADERS(krb5.h) ++if test "$enable_krb" \!= "no"; then ++ AC_CHECK_HEADERS(gssldap.h) ++ if test "$enable_sasl" \!= "no"; then ++ AC_CHECK_HEADERS(gsssasl.h) ++ fi ++ AC_CHECK_HEADERS(gssapi/gssapi_krb5.h gssapi/gssapi.h gssapi.h) ++ AC_CHECK_HEADERS(krb5.h) ++fi + + AC_CHECK_LIB(resolv, main) + AC_CHECK_LIB(nsl, main) +@@ -286,19 +307,25 @@ + AC_CHECK_LIB(dl, dlopen,[LIBS="-ldl $LIBS"],,$LIBS) + dnl AC_CHECK_LIB(db, main,[LIBS="-ldb $LIBS"],,$LIBS) + +-AC_CHECK_LIB(gssapi, gss_krb5_ccache_name,[LIBS="-lgssapi $LIBS" found_gssapi_lib=yes],,$LIBS) +-if test -z "$found_gssapi_lib"; then +- AC_CHECK_LIB(gssapi_krb5, gss_krb5_ccache_name,[LIBS="-lgssapi_krb5 $LIBS"],,$LIBS) ++if test "$enable_krb" \!= "no"; then ++ AC_CHECK_LIB(gssapi, gss_krb5_ccache_name,[LIBS="-lgssapi $LIBS" found_gssapi_lib=yes],,$LIBS) ++ if test -z "$found_gssapi_lib"; then ++ AC_CHECK_LIB(gssapi_krb5, gss_krb5_ccache_name,[LIBS="-lgssapi_krb5 $LIBS"],,$LIBS) ++ fi + fi + + dnl Following checks probably not strictly necessary. + dnl AC_CHECK_LIB(crypto, main,[LIBS="-lcrypto $LIBS"],,$LIBS) + dnl AC_CHECK_LIB(ssl, main,[LIBS="-lssl $LIBS"],,$LIBS) + AC_CHECK_LIB(com_err, main,[LIBS="-lcom_err $LIBS"],,$LIBS) +-dnl AC_CHECK_LIB(k5crypto, main,[LIBS="-lk5crypto $LIBS"],,$LIBS) +-AC_CHECK_LIB(krb5, main,[LIBS="-lkrb5 $LIBS"],,$LIBS) +-dnl AC_CHECK_LIB(krb4, main,[LIBS="-lkrb4 $LIBS"],,$LIBS) +-AC_CHECK_LIB(sasl2, sasl_client_init) ++if test "$enable_krb" \!= "no"; then ++ dnl AC_CHECK_LIB(k5crypto, main,[LIBS="-lk5crypto $LIBS"],,$LIBS) ++ AC_CHECK_LIB(krb5, main,[LIBS="-lkrb5 $LIBS"],,$LIBS) ++ dnl AC_CHECK_LIB(krb4, main,[LIBS="-lkrb4 $LIBS"],,$LIBS) ++fi ++if test "$enable_sasl" \!= "no"; then ++ AC_CHECK_LIB(sasl2, sasl_client_init) ++fi + + if test -z "$found_ldap_lib" -a \( $with_ldap_lib = auto -o $with_ldap_lib = umich -o $with_ldap_lib = openldap \); then + AC_CHECK_LIB(lber, main) +@@ -331,13 +358,17 @@ + AC_CHECK_LIB(pthread, main) + fi + +-AC_CHECK_LIB(gssldap, ldap_gss_bind,[LIBS="-lgssldap $LIBS"],,$LIBS) ++if test "$enable_krb" \!= "no"; then ++ AC_CHECK_LIB(gssldap, ldap_gss_bind,[LIBS="-lgssldap $LIBS"],,$LIBS) ++fi + +-AC_CHECK_FUNCS(sasl_auxprop_request) + AC_CHECK_FUNCS(ldap_init ldap_get_lderrno ldap_parse_result ldap_memfree ldap_controls_free) + AC_CHECK_FUNCS(ldap_ld_free ldap_explode_rdn ldap_set_option ldap_get_option) +-AC_CHECK_FUNCS(ldap_sasl_interactive_bind_s ldap_initialize ldap_search_ext) ++AC_CHECK_FUNCS(ldap_initialize ldap_search_ext) + AC_CHECK_FUNCS(ldap_create_control ldap_create_page_control ldap_parse_page_control) ++if test "$enable_sasl" \!= "no"; then ++ AC_CHECK_FUNCS(sasl_auxprop_request ldap_sasl_interactive_bind_s) ++fi + if test "$enable_ssl" \!= "no"; then + AC_CHECK_FUNCS(ldapssl_client_init ldap_start_tls_s ldap_pvt_tls_set_option ldap_start_tls) + fi diff --git a/sys-auth/nss_ldap/nss_ldap-264.ebuild b/sys-auth/nss_ldap/nss_ldap-264.ebuild new file mode 100644 index 000000000000..ebbbd1eb7228 --- /dev/null +++ b/sys-auth/nss_ldap/nss_ldap-264.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-auth/nss_ldap/nss_ldap-264.ebuild,v 1.1 2009/07/28 18:45:51 robbat2 Exp $ + +EAPI=2 +inherit fixheadtails eutils multilib autotools + +IUSE="debug ssl sasl kerberos" + +DESCRIPTION="NSS LDAP Module" +HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html" +SRC_URI="http://www.padl.com/download/${P}.tar.gz" + +SLOT="0" +LICENSE="LGPL-2" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" + +DEPEND=">=net-nds/openldap-2.1.30-r5 + sasl? ( dev-libs/cyrus-sasl ) + kerberos? ( virtual/krb5 ) + ssl? ( dev-libs/openssl )" +RDEPEND="${DEPEND} + !<net-fs/autofs-4.1.3" + +src_prepare() { + cd "${S}" + + epatch "${FILESDIR}"/nsswitch.ldap.diff + + # Applied by upstream + #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch + + epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch + + EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-252-reconnect-timeouts.patch + + # Applied by upstream + #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch + + EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch + + sed -i.orig \ + -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \ + "${S}"/ldap.conf || die "failed to clean up initial version marker" + + # fix head/tail stuff + ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp + + # fix build borkage + for i in Makefile.{in,am}; do + sed -i.orig \ + -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \ + "${S}"/$i + done + + epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch + + # Bug #214750, no automagic deps + epatch "${FILESDIR}"/${PN}-264-disable-automagic.patch + + # Upstream forgets the version number sometimes + #sed -i \ + # -e "/^AM_INIT_AUTOMAKE/s~2..~$PV~" \ + # "${S}"/configure.in + + eautoreconf +} + +src_configure() { + local myconf="" + use debug && myconf="${myconf} --enable-debugging" + use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi" + # --enable-schema-mapping \ + econf \ + --with-ldap-lib=openldap \ + --libdir=/$(get_libdir) \ + --enable-paged-results \ + --enable-rfc2307bis \ + $(use_enable ssl) \ + $(use_enable sasl) \ + $(use_enable kerberos krb) \ + ${myconf} || die "configure failed" +} + +src_install() { + dodir /$(get_libdir) + + emake -j1 DESTDIR="${D}" install || die "make install failed" + + insinto /etc + doins ldap.conf + + dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \ + COPYING CVSVersionInfo.txt README nsswitch.ldap certutil + docinto docs; dodoc doc/* +} + +pkg_postinst() { + elog "If you use a ldaps:// string in the 'uri' setting of" + elog "your /etc/ldap.conf, you must set 'ssl on'!" +} |