%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: 6
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
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
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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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}
%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
%endif
%patch7 -p1
%patch8 -p1
+%patch9 -p2
+%patch10 -p1
+%patch11 -p1
+%patch12 -p1
+%patch13 -p1
+%patch14 -p1
cd doc
echo "cyrus-sasl complies with the following RFCs:" > rfc-compliance
%{?with_gssapi: --enable-gssapi --with-gss_impl=heimdal} \
--enable-login \
--enable-sample \
+ --enable-httpform \
--enable-sql \
%{?with_srp: --enable-srp} \
--enable-static \
%{__make} -C saslauthd testsaslauthd
%{__make} -C saslauthd saslcache
+%{__make} -C sample sample-client sample-server
cd doc
RFCLIST=`grep 'rfc.\+\.txt' rfc-compliance`
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 %{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
+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
%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.*.*
+%attr(755,root,root) %{_libdir}/libsasl2.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsasl2.so.2
# 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*
%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)
%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