]> git.pld-linux.org Git - packages/cyrus-sasl.git/blobdiff - cyrus-sasl.spec
- typo in comment
[packages/cyrus-sasl.git] / cyrus-sasl.spec
index f73babaa87d5d258af3cbfb5d32c98cf64427735..072e74dbea83bdf09d17b94c6f524cbf83023863 100644 (file)
 %bcond_with    pwcheck         # build pwcheck helper (deprecated)
 %bcond_with    x509            # build x509 plugin (no sources in package???)
 #
-%if !%{with mysql} && !%{with pgsql}
+%if %{without mysql} && %{without pgsql}
 %undefine with_cryptedpw
 %endif
 
 Summary:       The SASL library API for the Cyrus mail system
-Summary(pl.UTF-8):   Biblioteka Cyrus SASL
-Summary(pt_BR.UTF-8):   Implementação da API SASL
-Summary(ru.UTF-8):   Библиотека Cyrus SASL
-Summary(uk.UTF-8):   Бібліотека Cyrus SASL
+Summary(pl.UTF-8):     Biblioteka Cyrus SASL
+Summary(pt_BR.UTF-8):  Implementação da API SASL
+Summary(ru.UTF-8):     Библиотека Cyrus SASL
+Summary(uk.UTF-8):     Бібліотека Cyrus SASL
 Name:          cyrus-sasl
-Version:       2.1.22
-Release:       5
+Version:       2.1.23
+Release:       10
 License:       distributable
 Group:         Libraries
 Source0:       ftp://ftp.andrew.cmu.edu/pub/cyrus/%{name}-%{version}.tar.gz
-# Source0-md5: 45dde9d19193ae9dd388eb68b2027bc9
+# Source0-md5: 2eb0e48106f0e9cd8001e654f267ecbc
 Source1:       saslauthd.init
 Source2:       saslauthd.sysconfig
 Source3:       %{name}.pam
+Source4:       check_saslauthd.cfg
 Patch0:                %{name}-nolibs.patch
 Patch1:                %{name}-lt.patch
 Patch2:                %{name}-split-sql.patch
@@ -43,14 +44,21 @@ Patch5:             %{name}-cryptedpw.patch
 Patch6:                %{name}-md5sum-passwords.patch
 Patch7:                %{name}-db.patch
 Patch8:                %{name}-automake_1_10.patch
+Patch9:                %{name}-digest-commas.patch
+Patch10:       %{name}-keytab.patch
+Patch11:       %{name}-sizes.patch
+Patch12:       %{name}-nagios-plugin.patch
+Patch13:       %{name}-parallel-make.patch
+Patch14:       %{name}-gssapi-detect.patch
+Patch15:               %{name}-saslauthd-httpform-urlescape.patch
 URL:           http://asg.web.cmu.edu/sasl/
 BuildRequires: autoconf >= 2.54
-BuildRequires: automake
+BuildRequires: automake >= 1:1.7
 %{?with_authlib:BuildRequires: courier-authlib-devel}
 BuildRequires: db-devel
 BuildRequires: ed
 BuildRequires: groff
-%{?with_gssapi:BuildRequires:  heimdal-devel >= 0.7}
+%{?with_gssapi:BuildRequires:  heimdal-devel}
 BuildRequires: libtool >= 1.4
 %{?with_mysql:BuildRequires:   mysql-devel}
 %{?with_ldap:BuildRequires:    openldap-devel >= 2.3.0}
@@ -61,6 +69,7 @@ BuildRequires:        pam-devel
 BuildRequires: rpmbuild(macros) >= 1.268
 %{?with_sqlite:BuildRequires:  sqlite-devel}
 Requires:      pam >= 0.79.0
+Requires:      %{name}-libs = %{version}-%{release}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _sysconfdir     /etc/sasl
@@ -102,12 +111,25 @@ Authentication and Security Layer, метод для добавления под
 Authentication and Security Layer, метод для додання підтримки
 аутентикації до протоколів, базованих на з'єднаннях.
 
+%package libs
+Summary:       cyrus-sasl library itself
+Summary(pl.UTF-8):     Sama biblioteka cyrus-sasl
+Group:         Libraries
+Requires(post,postun): /sbin/ldconfig
+Conflicts:     cyrus-sasl < 2.1.23-8
+
+%description libs
+cyrus-sasl library itself.
+
+%description libs -l pl.UTF-8
+Sama biblioteka cyrus-sasl.
+
 %package devel
 Summary:       Header files and documentation for cyrus-sasl
-Summary(pl.UTF-8):   Pliki nagłówkowe i dokumentacja dla cyrus-sasl
-Summary(pt_BR.UTF-8):   Exemplos e arquivos para desenvolvimento com SASL
-Summary(ru.UTF-8):   Файлы для программирования с библиотекой Cyrus SASL
-Summary(uk.UTF-8):   Файли для програмування з бібліотекою Cyrus SASL
+Summary(pl.UTF-8):     Pliki nagłówkowe i dokumentacja dla cyrus-sasl
+Summary(pt_BR.UTF-8):  Exemplos e arquivos para desenvolvimento com SASL
+Summary(ru.UTF-8):     Файлы для программирования с библиотекой Cyrus SASL
+Summary(uk.UTF-8):     Файли для програмування з бібліотекою Cyrus SASL
 Group:         Development/Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -132,9 +154,9 @@ para desenvolver aplicativos que usem SASL.
 
 %package static
 Summary:       Static cyrus-sasl libraries
-Summary(pl.UTF-8):   Statyczne biblioteki cyrus-sasl
-Summary(ru.UTF-8):   Статические библиотеки Cyrus SASL
-Summary(uk.UTF-8):   Статичні бібліотеки Cyrus SASL
+Summary(pl.UTF-8):     Statyczne biblioteki cyrus-sasl
+Summary(ru.UTF-8):     Статические библиотеки Cyrus SASL
+Summary(uk.UTF-8):     Статичні бібліотеки Cyrus SASL
 Group:         Development/Libraries
 Requires:      %{name}-devel = %{version}-%{release}
 
@@ -154,8 +176,8 @@ Cyrus SASL.
 
 %package cram-md5
 Summary:       Cram-MD5 Cyrus SASL plugin
-Summary(pl.UTF-8):   Wtyczka Cram-MD5 do Cyrus SASL
-Summary(pt_BR.UTF-8):   Mecanismo SASL CRAM-MD5
+Summary(pl.UTF-8):     Wtyczka Cram-MD5 do Cyrus SASL
+Summary(pt_BR.UTF-8):  Mecanismo SASL CRAM-MD5
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -179,8 +201,8 @@ autenticar o usuário.
 
 %package digest-md5
 Summary:       Digest-MD5 Cyrus SASL plugin
-Summary(pl.UTF-8):   Wtyczka Digest-MD5 do Cyrus SASL
-Summary(pt_BR.UTF-8):   Mecanismo SASL DIGEST-MD5
+Summary(pl.UTF-8):     Wtyczka Digest-MD5 do Cyrus SASL
+Summary(pt_BR.UTF-8):  Mecanismo SASL DIGEST-MD5
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -206,8 +228,8 @@ desenvolvida para HTTP.
 
 %package plain
 Summary:       Plain Cyrus SASL plugin
-Summary(pl.UTF-8):   Wtyczka plain do Cyrus SASL
-Summary(pt_BR.UTF-8):   Mecanismo SASL PLAIN
+Summary(pl.UTF-8):     Wtyczka plain do Cyrus SASL
+Summary(pt_BR.UTF-8):  Mecanismo SASL PLAIN
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -231,8 +253,8 @@ usuário para o servidor.
 
 %package anonymous
 Summary:       Anonymous Cyrus SASL plugin
-Summary(pl.UTF-8):   Wtyczka anonymous do Cyrus SASL
-Summary(pt_BR.UTF-8):   Mecanismo SASL ANONYMOUS
+Summary(pl.UTF-8):     Wtyczka anonymous do Cyrus SASL
+Summary(pt_BR.UTF-8):  Mecanismo SASL ANONYMOUS
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -250,8 +272,8 @@ autenticação anônima.
 
 %package gssapi
 Summary:       GSSAPI Cyrus SASL plugin
-Summary(pl.UTF-8):   Wtyczka GSSAPI do Cyrus SASL
-Summary(pt_BR.UTF-8):   Mecanismo SASL GSSAPI
+Summary(pl.UTF-8):     Wtyczka GSSAPI do Cyrus SASL
+Summary(pt_BR.UTF-8):  Mecanismo SASL GSSAPI
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -269,7 +291,7 @@ autenticação Kerberos/GSSAPI.
 
 %package login
 Summary:       Unsupported Login Cyrus SASL plugin
-Summary(pl.UTF-8):   Nie wspierana wtyczka Login do Cyrus SASL
+Summary(pl.UTF-8):     Nie wspierana wtyczka Login do Cyrus SASL
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -282,8 +304,8 @@ SASL.
 
 %package srp
 Summary:       SRP Cyrus SASL plugin
-Summary(pl.UTF-8):   Wtyczka SRP do Cyrus SASL
-Summary(pt_BR.UTF-8):   Mecanismo SASL SRP
+Summary(pl.UTF-8):     Wtyczka SRP do Cyrus SASL
+Summary(pt_BR.UTF-8):  Mecanismo SASL SRP
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -308,8 +330,8 @@ confidencialidade.
 
 %package otp
 Summary:       OTP Cyrus SASL plugin
-Summary(pl.UTF-8):   Wtyczka OTP do Cyrus SASL
-Summary(pt_BR.UTF-8):   Mecanismo SASL OTP
+Summary(pl.UTF-8):     Wtyczka OTP do Cyrus SASL
+Summary(pt_BR.UTF-8):  Mecanismo SASL OTP
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -322,8 +344,8 @@ SASL.
 
 %package opie
 Summary:       OPIE Cyrus SASL plugin
-Summary(pl.UTF-8):   Wtyczka OPIE do Cyrus SASL
-Summary(pt_BR.UTF-8):   Mecanismo SASL OPIE
+Summary(pl.UTF-8):     Wtyczka OPIE do Cyrus SASL
+Summary(pt_BR.UTF-8):  Mecanismo SASL OPIE
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -336,7 +358,7 @@ SASL.
 
 %package x509
 Summary:       x509 Cyrus SASL plugin
-Summary(pl.UTF-8):   Wtyczka x509 do Cyrus SASL
+Summary(pl.UTF-8):     Wtyczka x509 do Cyrus SASL
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -348,7 +370,7 @@ Wtyczka x509 do Cyrus SASL.
 
 %package saslauthd
 Summary:       Cyrus SASL authd
-Summary(pl.UTF-8):   Demon authd do Cyrus SASL
+Summary(pl.UTF-8):     Demon authd do Cyrus SASL
 Group:         Daemons
 Requires(post,preun):  /sbin/chkconfig
 Requires:      %{name} = %{version}-%{release}
@@ -363,7 +385,7 @@ Demon authd do Cyrus SASL.
 
 %package pwcheck
 Summary:       Cyrus SASL pwcheck helper
-Summary(pl.UTF-8):   Program pomocniczy pwcheck do Cyrus SASL
+Summary(pl.UTF-8):     Program pomocniczy pwcheck do Cyrus SASL
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -375,7 +397,7 @@ Program pomocniczy pwcheck do Cyrus SASL.
 
 %package sasldb
 Summary:       Cyrus SASL sasldb plugin
-Summary(pl.UTF-8):   Wtyczka sasldb do Cyrus SASL
+Summary(pl.UTF-8):     Wtyczka sasldb do Cyrus SASL
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -387,7 +409,7 @@ Wtyczka sasldb do Cyrus SASL.
 
 %package mysql
 Summary:       Cyrus SASL MySQL plugin
-Summary(pl.UTF-8):   Wtyczka MySQL do Cyrus SASL
+Summary(pl.UTF-8):     Wtyczka MySQL do Cyrus SASL
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -399,7 +421,7 @@ Wtyczka MySQL do Cyrus SASL.
 
 %package pgsql
 Summary:       Cyrus SASL PostgreSQL plugin
-Summary(pl.UTF-8):   Wtyczka PostgreSQL do Cyrus SASL
+Summary(pl.UTF-8):     Wtyczka PostgreSQL do Cyrus SASL
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -411,7 +433,7 @@ Wtyczka PostgreSQL do Cyrus SASL.
 
 %package sqlite
 Summary:       Cyrus SQLite PostgreSQL plugin
-Summary(pl.UTF-8):   Wtyczka SQLite do Cyrus SASL
+Summary(pl.UTF-8):     Wtyczka SQLite do Cyrus SASL
 Group:         Libraries
 Requires:      %{name} = %{version}-%{release}
 
@@ -421,6 +443,18 @@ Cyrus SASL SQLite plugin.
 %description sqlite -l pl.UTF-8
 Wtyczka SQLite do Cyrus SASL.
 
+%package -n nagios-plugin-check_saslauthd
+Summary:       Nagios plugin to check health of saslauthd
+Summary(pl.UTF-8):     Wtyczka Nagiosa do sprawdzania działania saslauthd
+Group:         Networking
+Requires:      nagios-core
+
+%description -n nagios-plugin-check_saslauthd
+Nagios plugin to check health of saslauthd.
+
+%description -n nagios-plugin-check_saslauthd -l pl.UTF-8
+Wtyczka Nagiosa do sprawdzania działania saslauthd.
+
 %prep
 %setup -q
 %patch0 -p1
@@ -434,6 +468,13 @@ Wtyczka SQLite do Cyrus SASL.
 %endif
 %patch7 -p1
 %patch8 -p1
+%patch9 -p2
+%patch10 -p1
+%patch11 -p1
+%patch12 -p1
+%patch13 -p1
+%patch14 -p1
+%patch15 -p0
 
 cd doc
 echo "cyrus-sasl complies with the following RFCs:" > rfc-compliance
@@ -445,6 +486,14 @@ 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
 
+# update to our paths
+sed -i -e '
+       s,/usr/local/etc/saslauthd.conf,%{_sysconfdir}/saslauthd.conf,g
+       s,/etc/saslauthd.conf,%{_sysconfdir}/saslauthd.conf,g
+       s,/var/run/saslauthd/mux,/var/lib/sasl2/mux,g
+       s,/var/state/saslauthd,/var/lib/sasl2,g
+' saslauthd/saslauthd.8 saslauthd/saslauthd.mdoc saslauthd/LDAP_SASLAUTHD doc/sysadmin.html
+
 %build
 %{__libtoolize}
 %{__aclocal} -I cmulocal -I config
@@ -467,6 +516,7 @@ cd ..
        %{?with_gssapi: --enable-gssapi --with-gss_impl=heimdal} \
        --enable-login \
        --enable-sample \
+       --enable-httpform \
        --enable-sql \
        %{?with_srp: --enable-srp} \
        --enable-static \
@@ -487,9 +537,10 @@ cd ..
 
 %{__make} -C saslauthd testsaslauthd
 %{__make} -C saslauthd saslcache
+%{__make} -C sample sample-client sample-server
 
 cd doc
-RFCLIST=`grep 'rfc.\+\.txt' rfc-compliance`
+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
@@ -507,8 +558,8 @@ install -d $RPM_BUILD_ROOT{%{_bindir},/var/lib/sasl2,%{_sysconfdir},/etc/{rc.d/i
 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
+cp -a utils/*.8 $RPM_BUILD_ROOT%{_mandir}/man8
+cp -a saslauthd/saslauthd.mdoc $RPM_BUILD_ROOT%{_mandir}/man8/saslauthd.8
 
 ln -sf libsasl2.so $RPM_BUILD_ROOT%{_libdir}/libsasl.so
 
@@ -516,21 +567,27 @@ 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} ./cyrus.pam
+install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/saslauthd
+cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/saslauthd
+cp -a %{SOURCE3} cyrus.pam
 
-install saslauthd/{testsaslauthd,saslcache} $RPM_BUILD_ROOT%{_sbindir}
+install -p 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
+libtool --mode=install cp sample/sample-client $RPM_BUILD_ROOT%{_bindir}/sasl-sample-client
+libtool --mode=install cp sample/sample-server $RPM_BUILD_ROOT%{_bindir}/sasl-sample-server
+
+# package for ghost
+touch $RPM_BUILD_ROOT/var/lib/sasl2/{cache.flock,cache.mmap,mux,mux.accept,saslauthd.pid}
+
+install -d $RPM_BUILD_ROOT/etc/nagios/plugins
+%{__sed} -e 's,@plugindir@,%{_libdir}/nagios/plugins,' %{SOURCE4} > $RPM_BUILD_ROOT/etc/nagios/plugins/check_saslauthd.cfg
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%post  -p /sbin/ldconfig
-%postun -p /sbin/ldconfig
+%post  libs -p /sbin/ldconfig
+%postun libs -p /sbin/ldconfig
 
 %post saslauthd
 /sbin/chkconfig --add saslauthd
@@ -542,36 +599,47 @@ if [ "$1" = "0" ]; then
        /sbin/chkconfig --del saslauthd
 fi
 
+%triggerin saslauthd -- pam
+# restart saslauthd if pam is upgraded
+# (saslauth is linked with old libpam but tries to open modules linked with new libpam)
+if [ "$2" != 1 ]; then
+       %service -q saslauthd restart
+fi
+
 %files
 %defattr(644,root,root,755)
 %doc AUTHORS COPYING ChangeLog NEWS README
 %doc doc/{ONEWS,TODO,*.txt,*.html,*.fig,rfc-compliance}
 %dir %{_sysconfdir}
 %dir %{_libdir}/sasl2
-%dir /var/lib/sasl2
-%attr(755,root,root) %{_libdir}/lib*.so.*.*
 # 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
-
+%dir /var/lib/sasl2
 %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 libs
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libsasl2.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsasl2.so.2
+
 %files devel
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libsasl2.so
+%attr(755,root,root) %{_libdir}/libsasl.so
+%{_libdir}/libsasl2.la
 %{_includedir}/sasl
-%attr(755,root,root) %{_libdir}/lib*.so
-%{_libdir}/lib*.la
-%{_mandir}/man3/*
+%{_mandir}/man3/sasl*.3*
 
 %files static
 %defattr(644,root,root,755)
-%{_libdir}/lib*.a
+%{_libdir}/libsasl2.a
 
 %files anonymous
 %defattr(644,root,root,755)
@@ -659,4 +727,14 @@ fi
 %attr(755,root,root) %{_sbindir}/testsaslauthd
 %attr(755,root,root) %{_sbindir}/saslcache
 %attr(754,root,root) /etc/rc.d/init.d/saslauthd
+%ghost /var/lib/sasl2/cache.flock
+%ghost /var/lib/sasl2/cache.mmap
+%ghost /var/lib/sasl2/mux
+%ghost /var/lib/sasl2/mux.accept
+%ghost /var/lib/sasl2/saslauthd.pid
 %{_mandir}/man8/saslauthd.8*
+
+%files -n nagios-plugin-check_saslauthd
+%defattr(644,root,root,755)
+%config(noreplace) %verify(not md5 mtime size) /etc/nagios/plugins/check_saslauthd.cfg
+%attr(755,root,root) %{_libdir}/nagios/plugins/check_saslauthd
This page took 0.279186 seconds and 4 git commands to generate.