]> git.pld-linux.org Git - packages/cyrus-sasl.git/blobdiff - cyrus-sasl.spec
- rebuild with new db4.5
[packages/cyrus-sasl.git] / cyrus-sasl.spec
index b6e28e770bbc1654ea54a1285778a1cca7ea5628..a485be35db03b90f4ab5d1ea6a00b2f45cb8eae6 100644 (file)
@@ -1,61 +1,94 @@
+# TODO:
+# - add ldap plugin from openldap sources
 #
-# Conditional builds:
-# x509 - build x509 pluggin
-# srp - build srp pluggin
+# Conditional build:
+%bcond_without cryptedpw       # if you keep crypted passwords in your *sql
+%bcond_without ldap            # disable LDAP support for saslauthd
+%bcond_without gssapi          # do not enable GSSAPI support for saslauthd and build gssapi plugin
+%bcond_without mysql           # don't build MySQL pluggin
+%bcond_without pgsql           # do not build PostgreSQL pluggin
+%bcond_without sqlite          # do not enable sqlite plugin
+%bcond_with    authlib         # enable courier-authlib (i wasn't able to test it)
+%bcond_with    opie            # enable opie plugin
+%bcond_with    srp             # build srp pluggin
+%bcond_with    pwcheck         # build pwcheck helper (deprecated)
+%bcond_with    x509            # build x509 plugin (no sources in package???)
 #
+%if %{without mysql} && %{without pgsql}
+%undefine with_cryptedpw
+%endif
+
 Summary:       The SASL library API for the Cyrus mail system
 Summary(pl):   Biblioteka Cyrus SASL
 Summary(pt_BR):        Implementação da API SASL
 Summary(ru):   âÉÂÌÉÏÔÅËÁ Cyrus SASL
 Summary(uk):   â¦Â̦ÏÔÅËÁ Cyrus SASL
 Name:          cyrus-sasl
-Version:       1.5.27
-Release:       14
+Version:       2.1.22
+Release:       3
 License:       distributable
 Group:         Libraries
-Source0:       ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/%{name}-%{version}.tar.gz
+Source0:       ftp://ftp.andrew.cmu.edu/pub/cyrus/%{name}-%{version}.tar.gz
+# Source0-md5: 45dde9d19193ae9dd388eb68b2027bc9
 Source1:       saslauthd.init
 Source2:       saslauthd.sysconfig
 Source3:       %{name}.pam
-Patch0:                %{name}-configdir.patch
-Patch1:                %{name}-des.patch
-Patch2:                %{name}-mysql-ldap.patch
-Patch3:                %{name}-saslauthd.patch
-#Patch4:       http://www.imasy.or.jp/~ume/ipv6/cyrus-sasl-1.5.24-ipv6-20010321.diff.gz
-Patch4:                %{name}-ipv6.patch
-Patch5:                %{name}-ac25x.patch
-Patch6:                saslauthd-man.diff
-BuildRequires: autoconf
+Patch0:                %{name}-nolibs.patch
+Patch1:                %{name}-lt.patch
+Patch2:                %{name}-split-sql.patch
+Patch3:                %{name}-opie.patch
+Patch4:                %{name}-gcc4.patch
+# Adapted from http://frost.ath.cx/software/cyrus-sasl-patches/dist/2.1.19/cyrus-sasl-2.1.19-checkpw.c+sql.c.patch
+Patch5:                %{name}-cryptedpw.patch
+Patch6:                %{name}-md5sum-passwords.patch
+URL:           http://asg.web.cmu.edu/sasl/
+BuildRequires: autoconf >= 2.54
 BuildRequires: automake
-BuildRequires: db3-devel >= 3.1.17-8
+%{?with_authlib:BuildRequires: courier-authlib-devel}
+BuildRequires: db-devel
+BuildRequires: ed
+BuildRequires: groff
+%{?with_gssapi:BuildRequires:  heimdal-devel >= 0.7}
+BuildRequires: libtool >= 1.4
+%{?with_mysql:BuildRequires:   mysql-devel}
+%{?with_ldap:BuildRequires:    openldap-devel >= 2.3.0}
+BuildRequires: openssl-devel >= 0.9.7d
+%{?with_opie:BuildRequires:    opie-devel}
 BuildRequires: pam-devel
-BuildRequires: openssl-devel >= 0.9.6a
-BuildRequires: libtool >= 1.4
-%{?_with_mysql:BuildRequires: mysql-devel}
-%{?_with_ldap:BuildRequires: openldap-devel}
-URL:           http://asg.web.cmu.edu/sasl/
+%{?with_pgsql:BuildRequires:   postgresql-devel}
+BuildRequires: rpmbuild(macros) >= 1.268
+%{?with_sqlite:BuildRequires:  sqlite-devel}
+Requires:      pam >= 0.79.0
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _sysconfdir     /etc/sasl
 
+%define                specflags       -fno-strict-aliasing
+
 %description
-This is an implemention of the SASL API, useful for adding
+This is an implementation of the SASL API, useful for adding
 authentication, authorization, and security to network protocols. The
 SASL protocol itself is documented in rfc2222; the API standard is a
 work in progress.
 
+Note: remember to install appropriate plugins, or you won't have any
+authentication mechanisms available.
+
 %description -l pl
 Pakiet cyrus-sasl zawiera implementacjê biblioteki API SASL dla
 systemu poczty elektronicznej Cyrusa. Biblioteka ta jest przydatna
 tak¿e do dodawania uwierzytelniania, autoryzacji oraz zwiêkszania
-bezpieczeñstwa protoko³ów sieciowych. Sam protokó³ SASL jest opisany
-w RFC 2222; standaryzacja API jest w toku.
+bezpieczeñstwa protoko³ów sieciowych. Sam protokó³ SASL jest opisany w
+RFC 2222; standaryzacja API jest w toku.
+
+Uwaga: aby by³y dostêpne jakiekolwiek mechanizmy autoryzacji, nale¿y
+doinstalowaæ odpowiednie wtyczki.
 
 %description -l pt_BR
-Esta é uma implementação da API SASL, útil para acrescentar autenticação,
-autorização e seguança (criptografia) para protocolos de rede. O
-protocolo SASL está documentado na RFC 2222. A API "padrão" ainda está
-em desenvolvimento.
+Esta é uma implementação da API SASL, útil para acrescentar
+autenticação, autorização e seguança (criptografia) para protocolos de
+rede. O protocolo SASL está documentado na RFC 2222. A API "padrão"
+ainda está em desenvolvimento.
 
 %description -l ru
 ðÁËÅÔ cyrus-sasl ÓÏÄÅÒÖÉÔ ÒÅÁÌÉÚÁÃÉÀ Cyrus SASL. SASL - ÜÔÏ Simple
@@ -72,9 +105,9 @@ Summary:     Header files and documentation for cyrus-sasl
 Summary(pl):   Pliki nag³ówkowe i dokumentacja dla cyrus-sasl
 Summary(pt_BR):        Exemplos e arquivos para desenvolvimento com SASL
 Summary(ru):   æÁÊÌÙ ÄÌÑ ÐÒÏÇÒÁÍÍÉÒÏ×ÁÎÉÑ Ó ÂÉÂÌÉÏÔÅËÏÊ Cyrus SASL
-Summary(ru):   æÁÊÌÉ ÄÌÑ ÐÒÏÇÒÁÍÕ×ÁÎÎѠڠ¦Â̦ÏÔÅËÏÀ Cyrus SASL
+Summary(uk):   æÁÊÌÉ ÄÌÑ ÐÒÏÇÒÁÍÕ×ÁÎÎѠڠ¦Â̦ÏÔÅËÏÀ Cyrus SASL
 Group:         Development/Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{version}-%{release}
 
 %description devel
 This includes the header files and documentation needed to develop
@@ -101,7 +134,7 @@ Summary(pl):        Statyczne biblioteki cyrus-sasl
 Summary(ru):   óÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ Cyrus SASL
 Summary(uk):   óÔÁÔÉÞΦ Â¦Â̦ÏÔÅËÉ Cyrus SASL
 Group:         Development/Libraries
-Requires:      %{name}-devel = %{version}
+Requires:      %{name}-devel = %{version}-%{release}
 
 %description static
 Static cyrus-sasl libraries.
@@ -122,7 +155,7 @@ Summary:    Cram-MD5 Cyrus SASL plugin
 Summary(pl):   Wtyczka Cram-MD5 do Cyrus SASL
 Summary(pt_BR):        Mecanismo SASL CRAM-MD5
 Group:         Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{version}-%{release}
 
 %description cram-md5
 This plugin implements the SASL CRAM-MD5 mechanism. CRAM-MD5 is the
@@ -133,8 +166,8 @@ authenticate the user.
 %description cram-md5 -l pl
 Wtyczka dodaj±ca obs³ugê mechanizmu CRAM-MD5 do Cyrus SASL. CRAM-MD5
 jest obowi±zkowym do zaimplementowania mechanizmem uwierzytelniania
-dla wielu protoko³ów; do uwierzytelnienia u¿ytkownika u¿ywa MD5 wraz
-systemem challenge/response.
+dla wielu protoko³ów; do uwierzytelnienia u¿ytkownika u¿ywa MD5 wraz z
+systemem challenge/response.
 
 %description cram-md5 -l pt_BR
 Este plugin implementa o mecanismo SASL CRAM-MD5. CRAM-MD5 é o
@@ -147,7 +180,7 @@ Summary:    Digest-MD5 Cyrus SASL plugin
 Summary(pl):   Wtyczka Digest-MD5 do Cyrus SASL
 Summary(pt_BR):        Mecanismo SASL DIGEST-MD5
 Group:         Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{version}-%{release}
 
 %description digest-md5
 This plugin implements the latest draft of the SASL DIGEST-MD5
@@ -163,10 +196,10 @@ wszystkich nowych protoko
 Digest-MD5 zaprojektowanym dla HTTP.
 
 %description digest-md5 -l pt_BR
-Este plugin implementa a última versão da especificação do
-mecanismo SASL DIGEST-MD5. Embora ainda não esteja finalizado,
-DIGEST-MD5 provavelmente será o novo sistema de autenticação obrigatório
-para protocolos novos. Ele é baseado na autenticação md5 digest
+Este plugin implementa a última versão da especificação do mecanismo
+SASL DIGEST-MD5. Embora ainda não esteja finalizado, DIGEST-MD5
+provavelmente será o novo sistema de autenticação obrigatório para
+protocolos novos. Ele é baseado na autenticação md5 digest
 desenvolvida para HTTP.
 
 %package plain
@@ -174,7 +207,7 @@ Summary:    Plain Cyrus SASL plugin
 Summary(pl):   Wtyczka plain do Cyrus SASL
 Summary(pt_BR):        Mecanismo SASL PLAIN
 Group:         Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{version}-%{release}
 
 %description plain
 This plugin implements the SASL PLAIN mechanism. Although insecure,
@@ -189,35 +222,54 @@ nowe mechanizmu bezpiecze
 który udostêpnia serwerowi kopiê has³a u¿ytkownika.
 
 %description plain -l pt_BR
-Este plugin implementa o mecanismo SASL PLAIN. Embora inseguro,
-este mecanismo é útil durante transições para novos mecanismos de
-segurança, pois é o único esquema que fornece uma cópia da senha
-do usuário para o servidor.
+Este plugin implementa o mecanismo SASL PLAIN. Embora inseguro, este
+mecanismo é útil durante transições para novos mecanismos de
+segurança, pois é o único esquema que fornece uma cópia da senha do
+usuário para o servidor.
 
 %package anonymous
 Summary:       Anonymous Cyrus SASL plugin
 Summary(pl):   Wtyczka anonymous do Cyrus SASL
 Summary(pt_BR):        Mecanismo SASL ANONYMOUS
 Group:         Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{version}-%{release}
 
 %description anonymous
-This plugin implements the SASL ANONYMOUS mechanism,
-used for anonymous authentication.
+This plugin implements the SASL ANONYMOUS mechanism, used for
+anonymous authentication.
 
 %description anonymous -l pl
 Wtyczka dodaj±ca obs³ugê mechanizmu ANONYMOUS do Cyrus SASL. S³u¿y do
 anonimowego uwierzytelniania.
 
 %description anonymous -l pt_BR
-Este plugin implementa o mecanismo SASL ANONYMOUS, usado
-para autenticação anônima.
+Este plugin implementa o mecanismo SASL ANONYMOUS, usado para
+autenticação anônima.
+
+%package gssapi
+Summary:       GSSAPI Cyrus SASL plugin
+Summary(pl):   Wtyczka GSSAPI do Cyrus SASL
+Summary(pt_BR):        Mecanismo SASL GSSAPI
+Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description gssapi
+This plugin implements the SASL GSSAPI mechanism, used for
+GSSAPI/Kerberos5 authentication.
+
+%description gssapi -l pl
+Wtyczka dodaj±ca obs³ugê mechanizmu SASL GSSAPI, u¿ywanego do
+uwierzytelniania z u¿yciem GSSAPI/Kerberos5.
+
+%description gssapi -l pt_BR
+Este plugin implementa o mecanismo SASL GSSAPI, usado para
+autenticação Kerberos/GSSAPI.
 
 %package login
 Summary:       Unsupported Login Cyrus SASL plugin
 Summary(pl):   Nie wspierana wtyczka Login do Cyrus SASL
 Group:         Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{version}-%{release}
 
 %description login
 Unsupported LOGIN Cyrus SASL plugin.
@@ -231,14 +283,13 @@ Summary:  SRP Cyrus SASL plugin
 Summary(pl):   Wtyczka SRP do Cyrus SASL
 Summary(pt_BR):        Mecanismo SASL SRP
 Group:         Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{version}-%{release}
 
 %description srp
-This plugin implements the SASL SRP mechanism, based on the
-Secure Remote Password protocol. This mechanism performs mutual
-authentication and can provide a security layer with replay
-detection, integrity protection and/or condifentiality
-protection.
+This plugin implements the SASL SRP mechanism, based on the Secure
+Remote Password protocol. This mechanism performs mutual
+authentication and can provide a security layer with replay detection,
+integrity protection and/or condifentiality protection.
 
 %description srp -l pl
 Wtyczka dodaj±ca obs³ugê mechanizmu SRP do Cyrus SASL. Bazuje na
@@ -247,16 +298,45 @@ uwierzytelnienia i mo
 powtarzania, zabezpieczeniem integralno¶ci i/lub poufno¶ci.
 
 %description srp -l pt_BR
-Este plugin implementa o mecanismo SASL SRP, baseado no protocolo SRP (Secure
-Remote Password). Este mecanismo oferece autenticação mútua (do cliente e do
-servidor) e pode prover uma camada de segurança com detecção de ataques de
-replay, garantia de integridade e/ou confidencialidade.
+Este plugin implementa o mecanismo SASL SRP, baseado no protocolo SRP
+(Secure Remote Password). Este mecanismo oferece autenticação mútua
+(do cliente e do servidor) e pode prover uma camada de segurança com
+detecção de ataques de replay, garantia de integridade e/ou
+confidencialidade.
+
+%package otp
+Summary:       OTP Cyrus SASL plugin
+Summary(pl):   Wtyczka OTP do Cyrus SASL
+Summary(pt_BR):        Mecanismo SASL OTP
+Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description otp
+This plugin implements the SASL OTP (One Time Password) mechanism.
+
+%description otp -l pl
+Wtyczka dodaj±ca obs³ugê mechanizmu OTP (has³a jednorazowe) do Cyrus
+SASL.
+
+%package opie
+Summary:       OPIE Cyrus SASL plugin
+Summary(pl):   Wtyczka OPIE do Cyrus SASL
+Summary(pt_BR):        Mecanismo SASL OPIE
+Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description opie
+This plugin implements the SASL OPIE (One Time Password) mechanism.
+
+%description opie -l pl
+Wtyczka dodaj±ca obs³ugê mechanizmu OPIE (has³a jednorazowe) do Cyrus
+SASL.
 
 %package x509
 Summary:       x509 Cyrus SASL plugin
 Summary(pl):   Wtyczka x509 do Cyrus SASL
 Group:         Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{version}-%{release}
 
 %description x509
 x509 Cyrus SASL plugin.
@@ -267,9 +347,11 @@ Wtyczka x509 do Cyrus SASL.
 %package saslauthd
 Summary:       Cyrus SASL authd
 Summary(pl):   Demon authd do Cyrus SASL
-Group:         Libraries
-Requires:      %{name} = %{version}
-Prereq:                /sbin/chkconfig
+Group:         Daemons
+Requires(post,preun):  /sbin/chkconfig
+Requires:      %{name} = %{version}-%{release}
+Requires:      /sbin/chkconfig
+Requires:      rc-scripts
 
 %description saslauthd
 Cyrus SASL authd.
@@ -281,7 +363,7 @@ Demon authd do Cyrus SASL.
 Summary:       Cyrus SASL pwcheck helper
 Summary(pl):   Program pomocniczy pwcheck do Cyrus SASL
 Group:         Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{version}-%{release}
 
 %description pwcheck
 Cyrus SASL pwcheck helper.
@@ -289,130 +371,275 @@ Cyrus SASL pwcheck helper.
 %description pwcheck -l pl
 Program pomocniczy pwcheck do Cyrus SASL.
 
+%package sasldb
+Summary:       Cyrus SASL sasldb plugin
+Summary(pl):   Wtyczka sasldb do Cyrus SASL
+Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description sasldb
+Cyrus SASL sasldb plugin.
+
+%description sasldb -l pl
+Wtyczka sasldb do Cyrus SASL.
+
+%package mysql
+Summary:       Cyrus SASL MySQL plugin
+Summary(pl):   Wtyczka MySQL do Cyrus SASL
+Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description mysql
+Cyrus SASL MySQL plugin.
+
+%description mysql -l pl
+Wtyczka MySQL do Cyrus SASL.
+
+%package pgsql
+Summary:       Cyrus SASL PostgreSQL plugin
+Summary(pl):   Wtyczka PostgreSQL do Cyrus SASL
+Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description pgsql
+Cyrus SASL PostgreSQL plugin.
+
+%description pgsql -l pl
+Wtyczka PostgreSQL do Cyrus SASL.
+
+%package sqlite
+Summary:       Cyrus SQLite PostgreSQL plugin
+Summary(pl):   Wtyczka SQLite do Cyrus SASL
+Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description sqlite
+Cyrus SASL SQLite plugin.
+
+%description sqlite -l pl
+Wtyczka SQLite do Cyrus SASL.
+
 %prep
-%setup  -q
+%setup -q
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
+%if %{with cryptedpw}
 %patch5 -p1
-%patch6 -p0
+%patch6 -p1
+%endif
+
+cd doc
+echo "cyrus-sasl complies with the following RFCs:" > rfc-compliance
+ls rfc*.txt >> rfc-compliance
+rm -f rfc*.txt
+cd ..
+
+rm -rf autom4te.cache saslauthd/autom4te.cache
+# acinclude.m4 contains only old libtool.m4
+rm -f acinclude.m4 libtool config/libtool.m4 saslauthd/acinclude.m4
 
 %build
-rm -f config/missing
 %{__libtoolize}
-aclocal -I cmulocal
-autoheader
-automake -a
+%{__aclocal} -I cmulocal -I config
+%{__autoheader}
+%{__automake}
 %{__autoconf}
-LDFLAGS="%{rpmldflags} -ldl"; export LDFLAGS
+
+cd saslauthd
+%{__libtoolize}
+%{__aclocal} -I ../cmulocal -I ../config -I config
+%{__autoheader}
+%{__automake}
+%{__autoconf}
+cd ..
+
 %configure \
-       --enable-static \
+       %{?with_cryptedpw: LDFLAGS=-lcrypt} \
+       --disable-krb4 \
+       %{!?with_gssapi: --disable-gssapi} \
+       %{?with_gssapi: --enable-gssapi --with-gss_impl=heimdal} \
        --enable-login \
-       %{?_with_srp:--enable-srp} \
-       %{?_with_x509:--enable-x509} \
-       %{?_with_mysql: --with-mysql=%{_prefix}} \
-       %{?_with_ldap: --with-ldap=%{_prefix}} \
-       %{?_with_pwcheck: --with-pwcheck=/var/lib/sasl} \
-       --with-saslauthd=/var/lib/sasl \
-       --with-pam \
+       --enable-sample \
+       --enable-sql \
+       %{?with_srp: --enable-srp} \
+       --enable-static \
+       --with-plugindir=%{_libdir}/sasl2 \
+       --with-configdir=%{_sysconfdir} \
        --with-dblib=berkeley \
-       --with-dbpath=/var/lib/sasl/sasl.db \
-       --with-configdir=%{_sysconfdir}
+       --with-dbpath=/var/lib/sasl2/sasl.db \
+       %{?with_authlib:--with-authdaemond=/var/spool/authdaemon/socket} \
+       %{?with_ldap: --with-ldap=%{_prefix}} \
+       %{?with_mysql: --with-mysql=%{_prefix}} \
+       %{?with_pgsql: --with-pgsql=%{_prefix}} \
+       %{?with_sqlite: --with-sqlite=%{_prefix}} \
+       %{?with_opie: --with-opie=%{_prefix}} \
+       --with-pam \
+       %{?with_pwcheck: --with-pwcheck=/var/lib/sasl2} \
+       --with-saslauthd=/var/lib/sasl2
 %{__make}
 
+%{__make} -C saslauthd testsaslauthd
+%{__make} -C saslauthd saslcache
+
+cd doc
+RFCLIST=`grep 'rfc.\+\.txt' rfc-compliance`
+for i in $RFCLIST; do
+       RFCDIR=../RFC/text/`echo $i | sed -e 's:^rfc::' -e 's:..\.txt$::' `00
+       echo -e ',s:'$i':'$RFCDIR/$i'\n,w\nq' | ed index.html
+done
+
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{/var/lib/sasl,%{_sysconfdir},/etc/{rc.d/init.d,sysconfig,pam.d}}
+install -d $RPM_BUILD_ROOT{%{_bindir},/var/lib/sasl2,%{_sysconfdir},/etc/{rc.d/init.d,sysconfig}} \
+               $RPM_BUILD_ROOT%{_mandir}/man8
 
-%{__make} install DESTDIR=$RPM_BUILD_ROOT
+%{__make} install \
+       sasldir=%{_libdir}/sasl2 \
+       DESTDIR=$RPM_BUILD_ROOT
 
-touch $RPM_BUILD_ROOT/var/lib/sasl/sasl.db
+rm -rf $RPM_BUILD_ROOT%{_mandir}/cat*
+rm -f $RPM_BUILD_ROOT%{_libdir}/sasl2/*.{la,a}
 
+install utils/*.8 $RPM_BUILD_ROOT%{_mandir}/man8
+install saslauthd/saslauthd.mdoc $RPM_BUILD_ROOT%{_mandir}/man8/saslauthd.8
+
+ln -sf libsasl2.so $RPM_BUILD_ROOT%{_libdir}/libsasl.so
+
+touch $RPM_BUILD_ROOT/var/lib/sasl2/sasl.db
+
+# create empty config
+touch $RPM_BUILD_ROOT%{_sysconfdir}/saslauthd.conf
 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/saslauthd
 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/saslauthd
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/cyrus
+install %{SOURCE3} ./cyrus.pam
+
+install saslauthd/{testsaslauthd,saslcache} $RPM_BUILD_ROOT%{_sbindir}
+
+# sample programs for testing sasl
+libtool --mode=install cp sample/client $RPM_BUILD_ROOT%{_bindir}/sasl-sample-client
+libtool --mode=install cp sample/server $RPM_BUILD_ROOT%{_bindir}/sasl-sample-server
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%post   -p /sbin/ldconfig
+%post  -p /sbin/ldconfig
 %postun -p /sbin/ldconfig
 
 %post saslauthd
 /sbin/chkconfig --add saslauthd
-if [ -f /var/lock/subsys/saslauthd ]; then
-       /etc/rc.d/init.d/saslauthd restart 1>&2
-else
-       echo "Run \"/etc/rc.d/init.d/saslauthd start\" to start saslauthd."
-fi
+%service saslauthd restart
 
 %preun saslauthd
 if [ "$1" = "0" ]; then
-       if [ -f /var/lock/subsys/saslauthd ]; then
-               /etc/rc.d/init.d/saslauthd stop 1>&2
-       fi
+       %service saslauthd stop
        /sbin/chkconfig --del saslauthd
 fi
 
 %files
 %defattr(644,root,root,755)
-%doc COPYING testing.txt NEWS TODO README doc/*.txt doc/*.html
+%doc AUTHORS COPYING ChangeLog NEWS README
+%doc doc/{ONEWS,TODO,*.txt,*.html,*.fig,rfc-compliance}
 %dir %{_sysconfdir}
-%dir %{_libdir}/sasl
-%dir /var/lib/sasl
+%dir %{_libdir}/sasl2
+%dir /var/lib/sasl2
 %attr(755,root,root) %{_libdir}/lib*.so.*.*
-%attr(755,root,root) %{_sbindir}/sasldblistusers
-%attr(755,root,root) %{_sbindir}/saslpasswd
-
-%attr(640,root,mail) %ghost %config(noreplace) %verify(not mtime md5 size) /var/lib/sasl/sasl.db
-%{_mandir}/man[18]/*
+# sample programs to subpackage instead?
+%attr(755,root,root) %{_bindir}/sasl-sample-client
+%attr(755,root,root) %{_bindir}/sasl-sample-server
+%attr(755,root,root) %{_sbindir}/pluginviewer
+%attr(755,root,root) %{_sbindir}/sasldblistusers2
+%attr(755,root,root) %{_sbindir}/saslpasswd2
+
+%attr(640,root,mail) %ghost %config(noreplace) %verify(not md5 mtime size) /var/lib/sasl2/sasl.db
+%{_mandir}/man8/pluginviewer.8*
+%{_mandir}/man8/sasldblistusers2.8*
+%{_mandir}/man8/saslpasswd2.8*
 
 %files devel
 %defattr(644,root,root,755)
-%{_includedir}/*.h
+%{_includedir}/sasl
 %attr(755,root,root) %{_libdir}/lib*.so
-%attr(755,root,root) %{_libdir}/lib*.la
+%{_libdir}/lib*.la
+%{_mandir}/man3/*
 
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/lib*.a
-%{_libdir}/sasl/lib*.a
+
+%files anonymous
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/sasl2/libanonymous.so*
+
+%if %{with gssapi}
+%files gssapi
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/sasl2/libgssapiv2.so*
+%endif
 
 %files cram-md5
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/sasl/libcrammd5.so*
+%attr(755,root,root) %{_libdir}/sasl2/libcrammd5.so*
 
 %files digest-md5
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/sasl/libdigestmd5.so*
+%attr(755,root,root) %{_libdir}/sasl2/libdigestmd5.so*
+
+%files login
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/sasl2/liblogin.so*
+
+%files otp
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/sasl2/libotp.so*
+
+%if %{with opie}
+%files opie
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/sasl2/libopie.so*
+%endif
 
 %files plain
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/sasl/libplain.so*
+%attr(755,root,root) %{_libdir}/sasl2/libplain.so*
 
-%files anonymous
+%files sasldb
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/sasl/libanonymous.so*
+%attr(755,root,root) %{_libdir}/sasl2/libsasldb.so*
 
-%files login
+%if %{with mysql}
+%files mysql
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/sasl2/libmysql.so*
+%endif
+
+%if %{with pgsql}
+%files pgsql
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/sasl/liblogin.so*
+%attr(755,root,root) %{_libdir}/sasl2/libpgsql.so*
+%endif
+
+%if %{with sqlite}
+%files sqlite
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/sasl2/libsqlite.so*
+%endif
 
-%if %{?_with_srp:1}%{?!_with_srp:0}
+%if %{with srp}
 %files srp
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/sasl/libsrp.so*
+%attr(755,root,root) %{_libdir}/sasl2/libsrp.so*
 %endif
 
-%if %{?_with_x509:1}%{?!_with_x509:0}
+%if %{with x509}
 %files x509
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/sasl/libx509.so*
+%attr(755,root,root) %{_libdir}/sasl2/libx509.so*
 %endif
 
-%if %{?_with_pwcheck:1}%{?!_with_pwcheck:0}
+%if %{with pwcheck}
 %files pwcheck
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_sbindir}/pwcheck
@@ -420,7 +647,12 @@ fi
 
 %files saslauthd
 %defattr(644,root,root,755)
+%doc cyrus.pam
+%doc saslauthd/{AUTHORS,LDAP_SASLAUTHD}
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/saslauthd.conf
+%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/saslauthd
 %attr(755,root,root) %{_sbindir}/saslauthd
+%attr(755,root,root) %{_sbindir}/testsaslauthd
+%attr(755,root,root) %{_sbindir}/saslcache
 %attr(754,root,root) /etc/rc.d/init.d/saslauthd
-%config(noreplace) %verify(not mtime md5 size) /etc/sysconfig/saslauthd
-%config(noreplace) %verify(not mtime md5 size) /etc/pam.d/cyrus
+%{_mandir}/man8/saslauthd.8*
This page took 0.119382 seconds and 4 git commands to generate.