summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTuan Van <langthang@gentoo.org>2004-10-26 22:34:12 +0000
committerTuan Van <langthang@gentoo.org>2004-10-26 22:34:12 +0000
commit5f74e86834d99a77a3872c465d92d7b37fa21d43 (patch)
tree7c0d21a3a55e2cd322820e959808f9525c2a4184 /dev-libs/cyrus-sasl
parentadd ~ia64 (diff)
downloadhistorical-5f74e86834d99a77a3872c465d92d7b37fa21d43.tar.gz
historical-5f74e86834d99a77a3872c465d92d7b37fa21d43.tar.bz2
historical-5f74e86834d99a77a3872c465d92d7b37fa21d43.zip
version bump.
Diffstat (limited to 'dev-libs/cyrus-sasl')
-rw-r--r--dev-libs/cyrus-sasl/ChangeLog8
-rw-r--r--dev-libs/cyrus-sasl/Manifest77
-rw-r--r--dev-libs/cyrus-sasl/cyrus-sasl-2.1.20.ebuild222
-rw-r--r--dev-libs/cyrus-sasl/files/cyrus-sasl-2.1.20-configdir.patch235
-rw-r--r--dev-libs/cyrus-sasl/files/digest-cyrus-sasl-2.1.201
5 files changed, 510 insertions, 33 deletions
diff --git a/dev-libs/cyrus-sasl/ChangeLog b/dev-libs/cyrus-sasl/ChangeLog
index be7489f82c93..85429e5db883 100644
--- a/dev-libs/cyrus-sasl/ChangeLog
+++ b/dev-libs/cyrus-sasl/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-libs/cyrus-sasl
# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/cyrus-sasl/ChangeLog,v 1.99 2004/10/19 08:27:12 absinthe Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/cyrus-sasl/ChangeLog,v 1.100 2004/10/26 22:34:12 langthang Exp $
+
+*cyrus-sasl-2.1.20 (26 Oct 2004)
+
+ 26 Oct 2004; Tuan Van <langthang@gentoo.org>
+ +files/cyrus-sasl-2.1.20-configdir.patch, +cyrus-sasl-2.1.20.ebuild:
+ version bump.
19 Oct 2004; Dylan Carlson <absinthe@gentoo.org>
cyrus-sasl-2.1.19-r1.ebuild:
diff --git a/dev-libs/cyrus-sasl/Manifest b/dev-libs/cyrus-sasl/Manifest
index 9b0a4dccd673..dfd18708fd93 100644
--- a/dev-libs/cyrus-sasl/Manifest
+++ b/dev-libs/cyrus-sasl/Manifest
@@ -1,43 +1,56 @@
-MD5 9f9a9f52c9719371f1902a01ee6ac780 ChangeLog 18038
-MD5 fca787b36b2303a6d2e8b93aa4dfe018 cyrus-sasl-1.5.27-r5.ebuild 2672
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
MD5 0c36a223623cafbd54654c586cc4792e cyrus-sasl-1.5.27-r6.ebuild 2745
-MD5 7249a88df4e8bf01818b639cd5eddf5e cyrus-sasl-2.1.14.ebuild 3899
-MD5 118563c3516cf8075300c454145fe383 cyrus-sasl-2.1.17.ebuild 4234
-MD5 b61513de5e687711b55cba7fb5f33b7b cyrus-sasl-2.1.18.ebuild 4222
-MD5 5721b86fd871bdfab77231abc6e02f68 metadata.xml 161
MD5 04ab88578310e66a55032b38819541a1 cyrus-sasl-2.1.18-r2.ebuild 5427
MD5 8914d9b1401d4f9d61c1d206f08a9957 cyrus-sasl-2.1.19-r1.ebuild 7160
-MD5 b398dd3696347604a52a40bf1a77291b files/2.1.14-db4.patch 2032
-MD5 a445d25ebbdf18b372340d4643736941 files/2.1.14-kerberos.patch 1148
-MD5 72c9252fd0ccb3fc369c60ec233f4218 files/2.1.14-mysql.patch 730
-MD5 4c6ffed2ba584f75a0c948250f7a11b7 files/cyrus-sasl-1.5.21-des.patch 242
+MD5 b61513de5e687711b55cba7fb5f33b7b cyrus-sasl-2.1.18.ebuild 4222
+MD5 fca787b36b2303a6d2e8b93aa4dfe018 cyrus-sasl-1.5.27-r5.ebuild 2672
+MD5 118563c3516cf8075300c454145fe383 cyrus-sasl-2.1.17.ebuild 4234
+MD5 7249a88df4e8bf01818b639cd5eddf5e cyrus-sasl-2.1.14.ebuild 3899
+MD5 3c9c7e794696a05423eee86cf0c833ef ChangeLog 18209
+MD5 5721b86fd871bdfab77231abc6e02f68 metadata.xml 161
+MD5 c74314b1f01dd31196a0ca19d9854e09 cyrus-sasl-2.1.20.ebuild 7284
MD5 5d8f83e453b4f7dff5eeee74335de870 files/cyrus-sasl-1.5.24-rpath.patch 448
-MD5 5f96ab675ae2ff1da8e0ee4503340df5 files/cyrus-sasl-1.5.27-scram.patch 480
-MD5 397ec1b24d4efe6efafa4782ba0f3493 files/cyrus-sasl-2.1.17-configdir.patch 8095
-MD5 b9ab0670db5b9b5a74de379c18e5370d files/cyrus-sasl-2.1.17-pgsql-include.patch 617
+MD5 4144a6962acfd7983cc292259375149d files/cyrus-sasl-2.1.20-configdir.patch 8231
MD5 13c15e58d2fa734adeb718e4e3dea757 files/cyrus-sasl-2.1.18-db4.patch 1604
-MD5 75aaabf38cf470bae9a928a334c3cb59 files/cyrus-sasl-configdir.patch 8510
-MD5 228579b200f0a570f9c02d222f400672 files/cyrus-sasl-gcc32.patch 426
-MD5 692a355142b7cfb937cd8a3a655c0310 files/cyrus-sasl-heimdal-deps.patch 624
-MD5 9a317f7aa562936a829574f63aefce15 files/cyrus-sasl-saslauthd.patch 4938
+MD5 fcf540108971d5aaa0bbfba381971ca7 files/digest-cyrus-sasl-2.1.18-r2 70
+MD5 d6d8b3c7c3a2aacf656f970a043d3158 files/digest-cyrus-sasl-2.1.19-r1 70
+MD5 4a80034f8ee3149c898aab4492d9cff8 files/cyrus-sasl-2.1.18-sasl-path-fix.patch 529
MD5 6690c1dc7a0e2c6219719eea1b367ab5 files/digest-cyrus-sasl-1.5.27-r5 69
MD5 6690c1dc7a0e2c6219719eea1b367ab5 files/digest-cyrus-sasl-1.5.27-r6 69
-MD5 6ba386a4eb5f9addf367d41093ba369e files/digest-cyrus-sasl-2.1.14 70
-MD5 960ffd4d83e165ccaa68cf43937ff63d files/digest-cyrus-sasl-2.1.17 70
-MD5 fcf540108971d5aaa0bbfba381971ca7 files/digest-cyrus-sasl-2.1.18 70
-MD5 ba1fb0a42418f5a5bcf2577fb27a136e files/pwcheck.rc6 540
-MD5 a46ddb41677b9b08046d193d9db8a4bb files/saslauthd.conf 890
-MD5 7b24e99c21a5924543fe82cd82a1d741 files/saslauthd.pam 223
-MD5 c38995773eff23cf7f05b23fe7fba6d3 files/saslauthd.rc6 525
MD5 fc0d11e115e65597419803dad9727aa8 files/saslauthd2.conf 752
-MD5 5d79108b7b67bd3af315e3142023fef5 files/saslauthd2.rc6 527
-MD5 cb4a5c5160219818e04196847ba9f7a1 files/cyrus-sasl-2.1.17-db4.patch 1451
-MD5 e8b9357dba2bde4dac0b1cf38d5942eb files/cyrus-sasl-2.1.18-cvs-1.172.patch 5056
MD5 d6cb936d23646d9e5312d63d08f6f563 files/cyrus-sasl-2.1.18-pam_mysql.patch 1388
-MD5 4a80034f8ee3149c898aab4492d9cff8 files/cyrus-sasl-2.1.18-sasl-path-fix.patch 529
-MD5 fcf540108971d5aaa0bbfba381971ca7 files/digest-cyrus-sasl-2.1.18-r2 70
-MD5 4144a6962acfd7983cc292259375149d files/cyrus-sasl-2.1.19-configdir.patch 8231
-MD5 4a80034f8ee3149c898aab4492d9cff8 files/cyrus-sasl-2.1.19-sasl-path-fix.patch 529
+MD5 5f96ab675ae2ff1da8e0ee4503340df5 files/cyrus-sasl-1.5.27-scram.patch 480
+MD5 4c6ffed2ba584f75a0c948250f7a11b7 files/cyrus-sasl-1.5.21-des.patch 242
+MD5 72c9252fd0ccb3fc369c60ec233f4218 files/2.1.14-mysql.patch 730
+MD5 a445d25ebbdf18b372340d4643736941 files/2.1.14-kerberos.patch 1148
+MD5 b9ab0670db5b9b5a74de379c18e5370d files/cyrus-sasl-2.1.17-pgsql-include.patch 617
MD5 52645b3330ddad9ce06f2a0eebb8d345 files/saslauthd-2.1.19.conf 906
-MD5 d6d8b3c7c3a2aacf656f970a043d3158 files/digest-cyrus-sasl-2.1.19-r1 70
+MD5 cb4a5c5160219818e04196847ba9f7a1 files/cyrus-sasl-2.1.17-db4.patch 1451
+MD5 7b24e99c21a5924543fe82cd82a1d741 files/saslauthd.pam 223
+MD5 c38995773eff23cf7f05b23fe7fba6d3 files/saslauthd.rc6 525
+MD5 4144a6962acfd7983cc292259375149d files/cyrus-sasl-2.1.19-configdir.patch 8231
MD5 bc046561db59ed3f4d0cc417b099c2f9 files/java.README.gentoo 934
+MD5 228579b200f0a570f9c02d222f400672 files/cyrus-sasl-gcc32.patch 426
+MD5 ba1fb0a42418f5a5bcf2577fb27a136e files/pwcheck.rc6 540
+MD5 4a80034f8ee3149c898aab4492d9cff8 files/cyrus-sasl-2.1.19-sasl-path-fix.patch 529
+MD5 5d79108b7b67bd3af315e3142023fef5 files/saslauthd2.rc6 527
+MD5 a46ddb41677b9b08046d193d9db8a4bb files/saslauthd.conf 890
+MD5 9a317f7aa562936a829574f63aefce15 files/cyrus-sasl-saslauthd.patch 4938
+MD5 b398dd3696347604a52a40bf1a77291b files/2.1.14-db4.patch 2032
+MD5 75aaabf38cf470bae9a928a334c3cb59 files/cyrus-sasl-configdir.patch 8510
+MD5 692a355142b7cfb937cd8a3a655c0310 files/cyrus-sasl-heimdal-deps.patch 624
+MD5 397ec1b24d4efe6efafa4782ba0f3493 files/cyrus-sasl-2.1.17-configdir.patch 8095
+MD5 e8b9357dba2bde4dac0b1cf38d5942eb files/cyrus-sasl-2.1.18-cvs-1.172.patch 5056
+MD5 6ba386a4eb5f9addf367d41093ba369e files/digest-cyrus-sasl-2.1.14 70
+MD5 960ffd4d83e165ccaa68cf43937ff63d files/digest-cyrus-sasl-2.1.17 70
+MD5 fcf540108971d5aaa0bbfba381971ca7 files/digest-cyrus-sasl-2.1.18 70
+MD5 c355c365d74408c00cdaa25beea6d4f7 files/digest-cyrus-sasl-2.1.20 70
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.2.6 (GNU/Linux)
+
+iD8DBQFBftcK5FrxP71izLARAj+LAJoDiF/+Rei1XvydUXzb4uO8/vR4QgCfT8bN
+aneEpBz9tMWkR1BP9WvO8/Y=
+=mExA
+-----END PGP SIGNATURE-----
diff --git a/dev-libs/cyrus-sasl/cyrus-sasl-2.1.20.ebuild b/dev-libs/cyrus-sasl/cyrus-sasl-2.1.20.ebuild
new file mode 100644
index 000000000000..456acc578d50
--- /dev/null
+++ b/dev-libs/cyrus-sasl/cyrus-sasl-2.1.20.ebuild
@@ -0,0 +1,222 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/cyrus-sasl/cyrus-sasl-2.1.20.ebuild,v 1.1 2004/10/26 22:34:12 langthang Exp $
+
+inherit eutils gnuconfig flag-o-matic java-pkg
+
+DESCRIPTION="The Cyrus SASL (Simple Authentication and Security Layer)"
+HOMEPAGE="http://asg.web.cmu.edu/sasl/"
+SRC_URI="ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/${P}.tar.gz"
+
+LICENSE="as-is"
+SLOT="2"
+KEYWORDS="~x86 ~ppc ~sparc ~mips ~alpha ~arm ~hppa ~amd64 ~ia64 ~s390 ~ppc64"
+IUSE="berkdb gdbm ldap mysql postgres kerberos static ssl java pam authdaemond"
+
+RDEPEND="virtual/libc
+ berkdb? ( >=sys-libs/db-3.2 )
+ gdbm? ( >=sys-libs/gdbm-1.8.0 )
+ ldap? ( >=net-nds/openldap-2.0.25 )
+ mysql? ( >=dev-db/mysql-3.23.51 )
+ postgres? ( >=dev-db/postgresql-7.2 )
+ pam? ( >=sys-libs/pam-0.75 )
+ ssl? ( >=dev-libs/openssl-0.9.6d )
+ kerberos? ( virtual/krb5 )
+ authdaemond? ( >=net-mail/courier-imap-3.0.7 )
+ java? ( virtual/jdk )"
+DEPEND="${RDEPEND}
+ >=sys-apps/sed-4
+ >=sys-devel/autoconf-2.58
+ sys-devel/automake
+ sys-devel/libtool"
+
+pkg_setup() {
+ if use gdbm && use berkdb; then
+ echo
+ ewarn "You have both \"gdbm\" and \"berkdb\" in your USE flags."
+ ewarn "Will default to GNU DB as your SASLdb database backend."
+ ewarn "If you want to build with Berkeley DB support; hit Control-C now."
+ ewarn "Change your USE flag -gdbm and emerge again."
+ echo
+ has_version ">=sys-apps/portage-2.0.50" && (
+ einfo "It would be best practice to add the set of USE flags that you use for this"
+ einfo "package to the file: /etc/portage/package.use. Example:"
+ einfo "\`echo \"dev-libs/cyrus-sasl -gdbm berkdb\" >> /etc/portage/package.use\`"
+ einfo "to build cyrus-sasl with Berkeley database as your SASLdb backend."
+ )
+ echo
+ ewarn "Waiting 10 seconds before starting..."
+ ewarn "(Control-C to abort)..."
+ epause 10
+ fi
+
+ echo
+ einfo "This version include a "-r" option for saslauthd to instruct it to reassemble"
+ einfo "realm and username into a username of "user@realm" form."
+ echo
+ einfo "If you are still using postfix->sasl->saslauthd->pam->mysql for"
+ einfo "authentication, please edit /etc/conf.d/saslauthd to read:"
+ einfo "SASLAUTHD_OPTS=\"\${SASLAUTH_MECH} -a pam -r\""
+ einfo "Don't forget to restart the service: \`/etc/init.d/saslauthd restart\`."
+ echo
+ einfo "Pause 10 seconds before continuing."
+ epause 10
+}
+
+src_unpack() {
+ unpack ${A} && cd "${S}"
+
+
+ # Fix default port name for rimap auth mechanism.
+ sed -e '/define DEFAULT_REMOTE_SERVICE/s:imap:imap2:' \
+ -i saslauthd/auth_rimap.c || die "sed failed"
+
+ # DB4 detection and versioned symbols.
+ # Fixed upstream.
+ # epatch "${FILESDIR}/cyrus-sasl-2.1.18-db4.patch" || die "patch failed"
+
+ # Add configdir support.
+ epatch "${FILESDIR}/${P}-configdir.patch" || die "patch failed"
+
+ # Fix include path for newer PostgreSQL versions.
+ epatch "${FILESDIR}/cyrus-sasl-2.1.17-pgsql-include.patch" || die "patch failed"
+
+ # Add setuid/setgid check for SASL_PATH
+ # Fixed upstream.
+ # epatch "${FILESDIR}/${P}-sasl-path-fix.patch" || die "patch failed"
+
+ # Recreate configure.
+ export WANT_AUTOCONF="2.5"
+ rm -rf configure config.h.in autom4te.cache
+ ebegin "Recreating configure"
+ aclocal -I cmulocal -I config && autoheader && autoconf || \
+ die "recreate configure failed"
+ eend $?
+
+}
+
+src_compile() {
+ local myconf="--enable-login --enable-ntlm --disable-krb4 --disable-otp"
+ myconf="${myconf} `use_enable static`"
+ myconf="${myconf} `use_with ssl openssl`"
+ myconf="${myconf} `use_with pam`"
+ myconf="${myconf} `use_with ldap`"
+ myconf="${myconf} `use_enable kerberos gssapi`"
+ myconf="${myconf} `use_with mysql` `use_enable mysql`"
+ myconf="${myconf} `use_with postgres pgsql` `use_enable postgres`"
+ myconf="${myconf} `use_enable java` `use_with java javahome ${JAVA_HOME}`"
+ # bug #56523. add authdaemond support.
+ myconf="${myconf} `use_with authdaemond`"
+
+ # fix for bug #59634. langthang 20040810.
+ if ! use ssl; then
+ myconf="${myconf} --without-des"
+ fi
+
+ if use mysql || use postgres ; then
+ myconf="${myconf} --enable-sql"
+ else
+ myconf="${myconf} --disable-sql"
+ fi
+
+ # default to GDBM if both 'gdbm' and 'berkdb' present.
+ if use gdbm; then
+ einfo "build with GNU DB as database backend for your SASLdb."
+ myconf="${myconf} --with-dblib=gdbm"
+ elif use berkdb ; then
+ einfo "build with Berkeley DB as database backend for your SASLdb."
+ myconf="${myconf} --with-dblib=berkeley"
+ else
+ einfo "build without SASLdb support"
+ myconf="${myconf} --with-dblib=none"
+ fi
+
+ # Compaq-sdk checks for -D_REENTRANT and -pthread takes care the cpp stuff.
+ use alpha && append-flags -D_REENTRANT -pthread
+
+ # Detect mips systems properly.
+ gnuconfig_update
+
+ econf \
+ --with-saslauthd=/var/lib/sasl2 \
+ --with-pwcheck=/var/lib/sasl2 \
+ --with-configdir=/etc/sasl2 \
+ --with-plugindir=/usr/lib/sasl2 \
+ --with-dbpath=/etc/sasl2/sasldb2 \
+ ${myconf} || die "econf failed"
+
+ # Parallel build doesn't work.
+ # Parallel build doesn't like distcc?
+ if has distcc $FEATURES; then
+ einfo "You have \"distcc\" enabled"
+ einfo "build with MAKEOPTS=-j1"
+ emake -j1 || die "compile problem"
+ else
+ einfo "build with MAKEOPTS=$MAKEOPTS"
+ emake || die "compile problem"
+ fi
+
+ # Bug #60769. Default location for java classes breaks OpenOffice.
+ # Thanks to axxo@gentoo.org for the solution.
+ cd "${S}"
+ if use java; then
+ jar -cvf ${PN}.jar -C java $(find java -name "*.class")
+ fi
+
+ # Bug #58768. Add testsaslauthd.
+ cd "${S}/saslauthd"
+ emake testsaslauthd || die "failed to make"
+}
+
+src_install () {
+ #einstall
+ make DESTDIR=${D} install || die "failed to install."
+ keepdir /var/lib/sasl2 /etc/sasl2
+
+ # Bug #60769. Default location for java classes breaks OpenOffice.
+ if use java; then
+ java-pkg_dojar ${PN}.jar
+ #hackish, don't wanna dig though makefile
+ rm -rf ${D}/usr/lib/java
+ docinto java
+ dodoc ${S}/java/README ${FILESDIR}/java.README.gentoo ${S}/java/doc/*
+ mkdir ${D}/usr/share/doc/${PF}/java/Test/ \
+ || die "failed to create ${D}/usr/share/doc/${PF}/java/Test/"
+ cp ${S}/java/Test/*.java ${D}/usr/share/doc/${PF}/java/Test/ \
+ || die "failed to copy java files to ${D}/usr/share/doc/${PF}/java/Test/"
+ fi
+
+ # Generate an empty sasldb2 with correct permissions.
+ LD_OLD="${LD_LIBRARY_PATH}"
+ export LD_LIBRARY_PATH="${D}/usr/lib" SASL_PATH="${D}/usr/lib/sasl2"
+ echo "p" | "${D}/usr/sbin/saslpasswd2" -f "${D}/etc/sasl2/sasldb2" -p login
+ "${D}/usr/sbin/saslpasswd2" -f "${D}/etc/sasl2/sasldb2" -d login
+ export LD_LIBRARY_PATH="${LD_OLD}"
+ chown root:mail "${D}/etc/sasl2/sasldb2"
+ chmod 0640 "${D}/etc/sasl2/sasldb2"
+
+ docinto ""
+ dodoc AUTHORS COPYING ChangeLog NEWS README doc/TODO doc/*.txt
+ newdoc pwcheck/README README.pwcheck
+ dohtml doc/*.html
+
+ docinto examples
+ dodoc sample/{*.[ch],Makefile}
+
+ docinto saslauthd
+ dodoc saslauthd/{AUTHORS,COPYING,ChangeLog,LDAP_SASLAUTHD,NEWS,README}
+
+ if use pam ; then
+ insinto /etc/pam.d
+ newins "${FILESDIR}/saslauthd.pam" saslauthd
+ fi
+
+ exeinto /etc/init.d
+ newexe "${FILESDIR}/pwcheck.rc6" pwcheck
+ newexe "${FILESDIR}/saslauthd2.rc6" saslauthd
+ insinto /etc/conf.d
+ newins "${FILESDIR}/saslauthd-${PV}.conf" saslauthd
+ exeinto ${ROOT}/usr/sbin
+ newexe "${S}/saslauthd/testsaslauthd" testsaslauthd || \
+ die "failed to install testsaslauthd."
+}
diff --git a/dev-libs/cyrus-sasl/files/cyrus-sasl-2.1.20-configdir.patch b/dev-libs/cyrus-sasl/files/cyrus-sasl-2.1.20-configdir.patch
new file mode 100644
index 000000000000..80510f70a595
--- /dev/null
+++ b/dev-libs/cyrus-sasl/files/cyrus-sasl-2.1.20-configdir.patch
@@ -0,0 +1,235 @@
+diff -urN cyrus-sasl-2.1.17.orig/configure.in cyrus-sasl-2.1.17/configure.in
+--- cyrus-sasl-2.1.17.orig/configure.in Tue May 9 19:52:53 2000
++++ cyrus-sasl-2.1.17/configure.in Thu Jun 1 13:48:11 2000
+@@ -710,6 +710,13 @@
+ AC_DEFINE_UNQUOTED(PLUGINDIR, "$plugindir", [Runtime plugin location])
+ AC_SUBST(plugindir)
+
++AC_ARG_WITH(configdir, [ --with-configdir=DIR set the directory where config files will
++ be found [/etc/sasl] ],
++ configdir=$withval,
++ configdir=/etc/sasl)
++AC_DEFINE_UNQUOTED(CONFIGDIR, "$configdir", [Runtime config file location])
++AC_SUBST(configdir)
++
+ dnl look for rc4 libraries. we accept the CMU one or one from openSSL
+ AC_ARG_WITH(rc4, [ --with-rc4 use internal rc4 routines [yes] ],
+ with_rc4=$withval,
+@@ -1006,6 +1013,7 @@
+ #endif
+
+ #define SASL_PATH_ENV_VAR "SASL_PATH"
++#define SASL_CONF_PATH_ENV_VAR "SASL_CONF_PATH"
+
+ #include <stdlib.h>
+ #include <sys/types.h>
+diff -urN cyrus-sasl-2.1.17.orig/include/sasl.h cyrus-sasl-2.1.17/include/sasl.h
+--- cyrus-sasl-2.1.17.orig/include/sasl.h Tue May 9 19:52:53 2000
++++ cyrus-sasl-2.1.17/include/sasl.h Thu Jun 1 13:04:48 2000
+@@ -25,6 +25,7 @@
+ *
+ * Server only Callbacks:
+ * sasl_authorize_t user authorization policy callback
++ * sasl_getconfpath_t get path to search for config file
+ * sasl_server_userdb_checkpass check password and auxprops in userdb
+ * sasl_server_userdb_setpass set password in userdb
+ * sasl_server_canon_user canonicalize username routine
+@@ -439,6 +440,24 @@
+ const char *file, sasl_verify_type_t type);
+ #define SASL_CB_VERIFYFILE 4
+
++/* getconfpath callback -- this allows applications to specify the
++ * colon-separated path to search for config files (by default,
++ * taken from the SASL_CONF_PATH environment variable).
++ * inputs:
++ * context -- getconfpath context from the callback record
++ * outputs:
++ * path -- colon seperated path (allocated on the heap; the
++ * library will free it using the sasl_free_t *
++ * passed to sasl_set_callback, or the standard free()
++ * library call).
++ * returns:
++ * SASL_OK -- no error
++ * SASL_FAIL -- error
++ */
++typedef int sasl_getconfpath_t(void *context,
++ char **path);
++
++#define SASL_CB_GETCONFPATH 5
+
+ /* client/user interaction callbacks:
+ */
+diff -urN cyrus-sasl-2.1.17.orig/lib/common.c cyrus-sasl-2.1.17/lib/common.c
+--- cyrus-sasl-2.1.17.orig/lib/common.c Fri May 5 14:41:42 2000
++++ cyrus-sasl-2.1.17/lib/common.c Thu Jun 1 12:53:19 2000
+@@ -1047,6 +1047,20 @@
+ }
+
+ static int
++_sasl_getconfpath(void *context __attribute__((unused)),
++ char ** path_dest)
++{
++ char *path;
++
++ if (! path_dest)
++ return SASL_BADPARAM;
++ path = getenv(SASL_CONF_PATH_ENV_VAR);
++ if (! path)
++ path = CONFIGDIR;
++ return _sasl_strdup(path, path_dest, NULL);
++}
++
++static int
+ _sasl_verifyfile(void *context __attribute__((unused)),
+ char *file __attribute__((unused)),
+ int type __attribute__((unused)))
+@@ -1154,6 +1168,10 @@
+ *pproc = (int (*)()) &_sasl_getpath;
+ *pcontext = NULL;
+ return SASL_OK;
++ case SASL_CB_GETCONFPATH:
++ *pproc = (int (*)()) &_sasl_getconfpath;
++ *pcontext = NULL;
++ return SASL_OK;
+ case SASL_CB_AUTHNAME:
+ *pproc = (int (*)()) &_sasl_getsimple;
+ *pcontext = conn;
+@@ -1498,6 +1516,30 @@
+
+ return &default_getpath_cb;
+ }
++
++const sasl_callback_t *
++_sasl_find_getconfpath_callback(const sasl_callback_t *callbacks)
++{
++ static const sasl_callback_t default_getconfpath_cb = {
++ SASL_CB_GETCONFPATH,
++ &_sasl_getconfpath,
++ NULL
++ };
++
++ if (callbacks)
++ while (callbacks->id != SASL_CB_LIST_END)
++ {
++ if (callbacks->id == SASL_CB_GETCONFPATH)
++ {
++ return callbacks;
++ } else {
++ ++callbacks;
++ }
++ }
++
++ return &default_getconfpath_cb;
++}
++
+
+ const sasl_callback_t *
+ _sasl_find_verifyfile_callback(const sasl_callback_t *callbacks)
+diff -urN cyrus-sasl-2.1.17.orig/lib/saslint.h cyrus-sasl-2.1.17/lib/saslint.h
+--- cyrus-sasl-2.1.17.orig/lib/saslint.h Wed Mar 29 06:45:21 2000
++++ cyrus-sasl-2.1.17/lib/saslint.h Thu Jun 1 12:56:37 2000
+@@ -360,6 +360,9 @@
+ _sasl_find_getpath_callback(const sasl_callback_t *callbacks);
+
+ extern const sasl_callback_t *
++_sasl_find_getconfpath_callback(const sasl_callback_t *callbacks);
++
++extern const sasl_callback_t *
+ _sasl_find_verifyfile_callback(const sasl_callback_t *callbacks);
+
+ extern int _sasl_common_init(sasl_global_callbacks_t *global_callbacks);
+diff -urN cyrus-sasl-2.1.17.orig/lib/server.c cyrus-sasl-2.1.17/lib/server.c
+--- cyrus-sasl-2.1.17.orig/lib/server.c Tue May 9 19:52:53 2000
++++ cyrus-sasl-2.1.17/lib/server.c Thu Jun 1 12:59:03 2000
+@@ -462,7 +462,7 @@
+ size_t path_len;
+ char *config_filename=NULL;
+ size_t len;
+- const sasl_callback_t *getpath_cb=NULL;
++ const sasl_callback_t *getconfpath_cb=NULL;
+
+ /* If appname was not provided, behave as if there is no config file
+ (see also sasl_config_init() */
+@@ -471,12 +471,12 @@
+ }
+
+ /* get the path to the plugins; for now the config file will reside there */
+- getpath_cb=_sasl_find_getpath_callback( global_callbacks.callbacks );
+- if (getpath_cb==NULL) return SASL_BADPARAM;
++ getconfpath_cb=_sasl_find_getconfpath_callback( global_callbacks.callbacks );
++ if (getconfpath_cb==NULL) return SASL_BADPARAM;
+
+- /* getpath_cb->proc MUST be a sasl_getpath_t; if only c had a type
++ /* getconfpath_cb->proc MUST be a sasl_getconfpath_t; if only c had a type
+ system */
+- result = ((sasl_getpath_t *)(getpath_cb->proc))(getpath_cb->context,
++ result = ((sasl_getconfpath_t *)(getconfpath_cb->proc))(getconfpath_cb->context,
+ &path_to_config);
+ if (result!=SASL_OK) goto done;
+ if (path_to_config == NULL) path_to_config = "";
+diff -urN cyrus-sasl-2.1.17.orig/man/sasl_getconfpath_t.3 cyrus-sasl-2.1.17/man/sasl_getconfpath_t.3
+--- cyrus-sasl-2.1.17.orig/man/sasl_getconfpath_t.3 Thu Jan 1 01:00:00 1970
++++ cyrus-sasl-2.1.17/man/sasl_getconfpath_t.3 Thu Jun 1 13:54:07 2000
+@@ -0,0 +1,47 @@
++.\" Hey Emacs! This file is -*- nroff -*- source.
++.\"
++.\" This manpage is Copyright (C) 1999 Tim Martin
++.\"
++.\" Permission is granted to make and distribute verbatim copies of this
++.\" manual provided the copyright notice and this permission notice are
++.\" preserved on all copies.
++.\"
++.\" Permission is granted to copy and distribute modified versions of this
++.\" manual under the conditions for verbatim copying, provided that the
++.\" entire resulting derived work is distributed under the terms of a
++.\" permission notice identical to this one
++.\"
++.\" Formatted or processed versions of this manual, if unaccompanied by
++.\" the source, must acknowledge the copyright and authors of this work.
++.\"
++.\"
++.TH sasl_getpath_t "26 March 2000" SASL "SASL man pages"
++.SH NAME
++sasl_getconfpath_t \- The SASL callback to indicate location of the config files
++
++
++.SH SYNOPSIS
++.nf
++.B #include <sasl.h>
++
++.sp
++.BI "int sasl_getconfpath_t(void " *context ", "
++.BI " char ** " path ")";
++
++.fi
++.SH DESCRIPTION
++
++.B sasl_getconfpath_t
++is used if the application wishes to use a different location for the SASL cofiguration files. If this callback is not used SASL will either use the location in the enviornment variable SASL_CONF_PATH or /etc/sasl by default.
++.PP
++
++.SH "RETURN VALUE"
++
++SASL callback functions should return SASL return codes. See sasl.h for a complete list. SASL_OK indicates success.
++
++.SH "CONFORMING TO"
++RFC 2222
++.SH "SEE ALSO"
++.BR other sasl stuff
++.BR
++.BR
+\ No newline at end of file
+diff -urN cyrus-sasl-2.1.17.orig/win32/include/config.h cyrus-sasl-2.1.17/win32/include/config.h
+--- cyrus-sasl-2.1.17.orig/win32/include/config.h Tue May 9 19:52:53 2000
++++ cyrus-sasl-2.1.17/win32/include/config.h Thu Jun 1 13:07:47 2000
+@@ -91,7 +91,9 @@
+ #define HAVE_MEMCPY 1
+
+ #define SASL_PATH_ENV_VAR "SASL_PATH"
++#define SASL_CONF_PATH_ENV_VAR "SASL_CONF_PATH"
+ #define PLUGINDIR "C:\\CMU\\bin\\sasl2"
++#define CONFIGDIR "C:\\CMU\\config\\sasl2"
+
+ /* Windows calls these functions something else
+ */
+
diff --git a/dev-libs/cyrus-sasl/files/digest-cyrus-sasl-2.1.20 b/dev-libs/cyrus-sasl/files/digest-cyrus-sasl-2.1.20
new file mode 100644
index 000000000000..517d47fb2f8d
--- /dev/null
+++ b/dev-libs/cyrus-sasl/files/digest-cyrus-sasl-2.1.20
@@ -0,0 +1 @@
+MD5 268ead27f4ac39bcfe17d9e38e0f2977 cyrus-sasl-2.1.20.tar.gz 1775163