From 886d3d0994eb8e9f3e797155619619e0ef1353f8 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 8 May 2011 22:33:52 +0000 Subject: Sun May 8 22:33:51 UTC 2011 --- testing/cyrus-sasl/PKGBUILD | 53 +++++++++++++++++++++++ testing/cyrus-sasl/cyrus-sasl-2.1.23+db-5.0.patch | 24 ++++++++++ testing/cyrus-sasl/cyrus-sasl-2.1.23-gcc4.patch | 21 +++++++++ testing/cyrus-sasl/saslauthd | 50 +++++++++++++++++++++ testing/cyrus-sasl/saslauthd.conf.d | 1 + 5 files changed, 149 insertions(+) create mode 100644 testing/cyrus-sasl/PKGBUILD create mode 100644 testing/cyrus-sasl/cyrus-sasl-2.1.23+db-5.0.patch create mode 100644 testing/cyrus-sasl/cyrus-sasl-2.1.23-gcc4.patch create mode 100644 testing/cyrus-sasl/saslauthd create mode 100644 testing/cyrus-sasl/saslauthd.conf.d (limited to 'testing/cyrus-sasl') diff --git a/testing/cyrus-sasl/PKGBUILD b/testing/cyrus-sasl/PKGBUILD new file mode 100644 index 000000000..6d42f9f75 --- /dev/null +++ b/testing/cyrus-sasl/PKGBUILD @@ -0,0 +1,53 @@ +# $Id: PKGBUILD 122168 2011-05-02 15:13:37Z stephane $ +# Maintainer: Jan de Groot + +pkgname=cyrus-sasl +pkgver=2.1.23 +pkgrel=5 +pkgdesc="SASL authentication daemon" +arch=('i686' 'x86_64') +license=('custom') +url="http://asg.web.cmu.edu/cyrus/download/" +depends=('pam>=1.0.1-2' 'krb5' 'libldap' 'cyrus-sasl-plugins' 'db>=5.0') +replaces=(cyrus-sasl-mysql cyrus-sasl-pgsql) +conflicts=(cyrus-sasl-mysql cyrus-sasl-pgsql) +backup=(etc/conf.d/saslauthd) +source=(ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/${pkgname}-${pkgver}.tar.gz + saslauthd + saslauthd.conf.d + cyrus-sasl-2.1.23-gcc4.patch + cyrus-sasl-2.1.23+db-5.0.patch) +md5sums=('2eb0e48106f0e9cd8001e654f267ecbc' + '697dfb51206c398bc976ce9f4cffe72d' + '96d8a2f6189501f8044838e04d5cae7f' + '3a71688df7d5724cd55a8de17d74f34e' + '35c189c8e93ad37e3ae3c49386fdeb2c') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # Fix building with db v5.x + patch -Np1 -i ../cyrus-sasl-2.1.23+db-5.0.patch + + # Fix error: #elif with no expression + patch -Np1 -i ../cyrus-sasl-2.1.23-gcc4.patch + + ./configure --prefix=/usr --mandir=/usr/share/man \ + --with-ldap=/usr --with-saslauthd=/var/run/saslauthd \ + --disable-krb4 --with-gss_impl=mit --disable-otp + cd saslauthd + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}/saslauthd" + make DESTDIR="${pkgdir}" install + make testsaslauthd + install -m755 testsaslauthd "${pkgdir}/usr/sbin" + + install -dm766 "${pkgdir}/var/run/saslauthd" + install -Dm755 "${srcdir}/saslauthd" "${pkgdir}/etc/rc.d/saslauthd" + install -Dm644 "${srcdir}/saslauthd.conf.d" "${pkgdir}/etc/conf.d/saslauthd" + + install -Dm644 ../COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl/COPYING" +} diff --git a/testing/cyrus-sasl/cyrus-sasl-2.1.23+db-5.0.patch b/testing/cyrus-sasl/cyrus-sasl-2.1.23+db-5.0.patch new file mode 100644 index 000000000..62df3e67e --- /dev/null +++ b/testing/cyrus-sasl/cyrus-sasl-2.1.23+db-5.0.patch @@ -0,0 +1,24 @@ +diff -Naur cyrus-sasl-2.1.23.ori/sasldb/db_berkeley.c cyrus-sasl-2.1.23/sasldb/db_berkeley.c +--- cyrus-sasl-2.1.23.ori/sasldb/db_berkeley.c 2009-04-28 08:09:18.000000000 -0700 ++++ cyrus-sasl-2.1.23/sasldb/db_berkeley.c 2011-05-02 07:16:42.748675977 -0700 +@@ -100,7 +100,7 @@ + ret = db_create(mbdb, NULL, 0); + if (ret == 0 && *mbdb != NULL) + { +-#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 ++#if (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1) || DB_VERSION_MAJOR >= 5 + ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, flags, 0660); + #else + ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, flags, 0660); +diff -Naur cyrus-sasl-2.1.23.ori/utils/dbconverter-2.c cyrus-sasl-2.1.23/utils/dbconverter-2.c +--- cyrus-sasl-2.1.23.ori/utils/dbconverter-2.c 2003-02-13 11:56:17.000000000 -0800 ++++ cyrus-sasl-2.1.23/utils/dbconverter-2.c 2011-05-02 07:16:42.748675977 -0700 +@@ -214,7 +214,7 @@ + ret = db_create(mbdb, NULL, 0); + if (ret == 0 && *mbdb != NULL) + { +-#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 ++#if (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1) || DB_VERSION_MAJOR >= 5 + ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, DB_CREATE, 0664); + #else + ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, DB_CREATE, 0664); diff --git a/testing/cyrus-sasl/cyrus-sasl-2.1.23-gcc4.patch b/testing/cyrus-sasl/cyrus-sasl-2.1.23-gcc4.patch new file mode 100644 index 000000000..0d8627b1f --- /dev/null +++ b/testing/cyrus-sasl/cyrus-sasl-2.1.23-gcc4.patch @@ -0,0 +1,21 @@ +diff -Naur cyrus-sasl-2.1.23.ori/plugins/digestmd5.c cyrus-sasl-2.1.23/plugins/digestmd5.c +--- cyrus-sasl-2.1.23.ori/plugins/digestmd5.c 2009-04-28 08:09:17.000000000 -0700 ++++ cyrus-sasl-2.1.23/plugins/digestmd5.c 2011-05-02 07:56:55.375403814 -0700 +@@ -2715,7 +2715,7 @@ + "DIGEST-MD5", /* mech_name */ + #ifdef WITH_RC4 + 128, /* max_ssf */ +-#elif WITH_DES ++#elif defined(WITH_DES) + 112, + #else + 1, +@@ -4034,7 +4034,7 @@ + "DIGEST-MD5", + #ifdef WITH_RC4 /* mech_name */ + 128, /* max ssf */ +-#elif WITH_DES ++#elif defined(WITH_DES) + 112, + #else + 1, diff --git a/testing/cyrus-sasl/saslauthd b/testing/cyrus-sasl/saslauthd new file mode 100644 index 000000000..c470c801c --- /dev/null +++ b/testing/cyrus-sasl/saslauthd @@ -0,0 +1,50 @@ +#!/bin/bash + +# source application-specific settings +[ -f /etc/conf.d/saslauthd ] && . /etc/conf.d/saslauthd + +. /etc/rc.conf +. /etc/rc.d/functions + +DAEMON_NAME="saslauthd" +SASLAUTHD_BIN=/usr/sbin/saslauthd +SASLAUTHD_PID=`pidof -o %PPID $SASLAUTHD_BIN` + +case "$1" in + start) + stat_busy "Starting $DAEMON_NAME" + [ -z "$SASLAUTHD_PID" ] && $SASLAUTHD_BIN $SASLAUTHD_OPTS + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + echo `pidof -o %PPID $SASLAUTHD_BIN` > /var/run/$DAEMON_NAME.pid + fi + add_daemon $DAEMON_NAME + stat_done + ;; + + stop) + stat_busy "Stopping $DAEMON_NAME" + [ ! -z "$SASLAUTHD_PID" ] && kill $SASLAUTHD_PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + rm /var/run/$DAEMON_NAME.pid &> /dev/null + fi + rm_daemon $DAEMON_NAME + stat_done + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 +# vim: ts=2 sw=2 et ft=sh diff --git a/testing/cyrus-sasl/saslauthd.conf.d b/testing/cyrus-sasl/saslauthd.conf.d new file mode 100644 index 000000000..b42b5d0b0 --- /dev/null +++ b/testing/cyrus-sasl/saslauthd.conf.d @@ -0,0 +1 @@ +SASLAUTHD_OPTS="-m /var/run/saslauthd -a pam" -- cgit v1.2.3-54-g00ecf