Summary(ru.UTF-8): Библиотека Cyrus SASL
Summary(uk.UTF-8): Бібліотека Cyrus SASL
Name: cyrus-sasl
-Version: 2.1.22
-Release: 16
+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
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
%{?with_gssapi:BuildRequires: heimdal-devel}
BuildRequires: libtool >= 1.4
%{?with_mysql:BuildRequires: mysql-devel}
-%{?with_ldap:BuildRequires: openldap-devel >= 2.4.6}
+%{?with_ldap:BuildRequires: openldap-devel >= 2.3.0}
BuildRequires: openssl-devel >= 0.9.7d
%{?with_opie:BuildRequires: opie-devel}
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
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
%patch10 -p1
%patch11 -p1
%patch12 -p1
+%patch13 -p1
+%patch14 -p1
+%patch15 -p0
cd doc
echo "cyrus-sasl complies with the following RFCs:" > rfc-compliance
# 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
%{__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
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
# 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}
%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
/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
-%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
%{_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