X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=cyrus-sasl.spec;h=7730c64764bf8dabc0596ab3d348ff8d0c300d45;hb=ecccfc827170a5a98308da6875dc414c29701537;hp=e239695d340908f2408069cccafa552528606c39;hpb=33b4b2e77a586c01cccf34f34953fdd1ef4464fc;p=packages%2Fcyrus-sasl.git diff --git a/cyrus-sasl.spec b/cyrus-sasl.spec index e239695..7730c64 100644 --- a/cyrus-sasl.spec +++ b/cyrus-sasl.spec @@ -1,20 +1,19 @@ -# TODO: -# - add ldap plugin from openldap sources # # 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_without mysql # don't build MySQL plugin +%bcond_without ntlm # do not build NTLM plugin +%bcond_without pgsql # do not build PostgreSQL plugin +%bcond_without sqlite # do not enable sqlite 2 plugin +%bcond_without sqlite3 # do not enable sqlite 3 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 opie # OTP plugin using opie library instead of internal code +%bcond_with srp # build srp plugin %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 @@ -24,15 +23,16 @@ 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: 11 +Version: 2.1.26 +Release: 8 License: distributable Group: Libraries -Source0: ftp://ftp.andrew.cmu.edu/pub/cyrus/%{name}-%{version}.tar.gz -# Source0-md5: 45dde9d19193ae9dd388eb68b2027bc9 +Source0: ftp://ftp.cyrusimap.org/cyrus-sasl/%{name}-%{version}.tar.gz +# Source0-md5: a7f4e5e559a0e37b3ffc438c9456e425 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 @@ -42,18 +42,31 @@ Patch4: %{name}-gcc4.patch 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 +Patch8: %{name}-keytab.patch +Patch9: %{name}-sizes.patch +Patch10: %{name}-nagios-plugin.patch +Patch11: %{name}-parallel-make.patch +Patch12: %{name}-gssapi-detect.patch +Patch13: %{name}-saslauthd-httpform-urlescape.patch +Patch14: %{name}-ac-libs.patch +Patch15: %{name}-pam.patch +Patch16: %{name}-gssapi_ext.patch +Patch17: 0032-revert_1.103_revision_to_unbreak_GSSAPI.patch +Patch18: 0033-fix_segfault_in_GSSAPI.patch +Patch19: 0034-fix_dovecot_authentication.patch +Patch20: %{name}-auxprop.patch +Patch21: 0030-dont_use_la_files_for_opening_plugins.patch +Patch22: %{name}-stddef.patch +Patch23: http://sourceforge.net/projects/miscellaneouspa/files/glibc217/cyrus-sasl-2.1.26-glibc217-crypt.diff +Patch24: cyrus-sasl-2.1.27-openssl-1.1.0.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: krb5-devel} +%{?with_gssapi:BuildRequires: heimdal-devel} BuildRequires: libtool >= 1.4 %{?with_mysql:BuildRequires: mysql-devel} %{?with_ldap:BuildRequires: openldap-devel >= 2.3.0} @@ -63,7 +76,10 @@ BuildRequires: pam-devel %{?with_pgsql:BuildRequires: postgresql-devel} BuildRequires: rpmbuild(macros) >= 1.268 %{?with_sqlite:BuildRequires: sqlite-devel} +%{?with_sqlite3:BuildRequires: sqlite3-devel >= 3} Requires: pam >= 0.79.0 +Requires: %{name}-libs = %{version}-%{release} +Obsoletes: cyrus-sasl-x509 < %{version} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _sysconfdir /etc/sasl @@ -105,6 +121,19 @@ 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 @@ -155,6 +184,25 @@ Statyczne biblioteki cyrus-sasl. Статичні бібліотеки, необхідні для розробки програм, що використовують Cyrus SASL. +%package anonymous +Summary: Anonymous Cyrus SASL plugin +Summary(pl.UTF-8): Wtyczka anonymous do Cyrus SASL +Summary(pt_BR.UTF-8): Mecanismo SASL ANONYMOUS +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description anonymous +This plugin implements the SASL ANONYMOUS mechanism, used for +anonymous authentication. + +%description anonymous -l pl.UTF-8 +Wtyczka dodająca obsługę mechanizmu ANONYMOUS do Cyrus SASL. Służy do +anonimowego uwierzytelniania. + +%description anonymous -l pt_BR.UTF-8 +Este plugin implementa o mecanismo SASL ANONYMOUS, usado para +autenticação anônima. + %package cram-md5 Summary: Cram-MD5 Cyrus SASL plugin Summary(pl.UTF-8): Wtyczka Cram-MD5 do Cyrus SASL @@ -207,50 +255,6 @@ 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 -Summary: Plain Cyrus SASL plugin -Summary(pl.UTF-8): Wtyczka plain do Cyrus SASL -Summary(pt_BR.UTF-8): Mecanismo SASL PLAIN -Group: Libraries -Requires: %{name} = %{version}-%{release} - -%description plain -This plugin implements the SASL PLAIN mechanism. Although insecure, -PLAIN is useful for transitioning to new security mechanisms, as this -is the only mechanism which gives the server a copy of the user's -password. - -%description plain -l pl.UTF-8 -Wtyczka dodająca obsługę mechanizmu PLAIN do Cyrus SASL. Pomimo tego, -że nie jest bezpieczny, PLAIN jest przydatny przy przechodzeniu na -nowe mechanizmu bezpieczeństwa, jako że jest to jedyny mechanizm, -który udostępnia serwerowi kopię hasła użytkownika. - -%description plain -l pt_BR.UTF-8 -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.UTF-8): Wtyczka anonymous do Cyrus SASL -Summary(pt_BR.UTF-8): Mecanismo SASL ANONYMOUS -Group: Libraries -Requires: %{name} = %{version}-%{release} - -%description anonymous -This plugin implements the SASL ANONYMOUS mechanism, used for -anonymous authentication. - -%description anonymous -l pl.UTF-8 -Wtyczka dodająca obsługę mechanizmu ANONYMOUS do Cyrus SASL. Służy do -anonimowego uwierzytelniania. - -%description anonymous -l pt_BR.UTF-8 -Este plugin implementa o mecanismo SASL ANONYMOUS, usado para -autenticação anônima. - %package gssapi Summary: GSSAPI Cyrus SASL plugin Summary(pl.UTF-8): Wtyczka GSSAPI do Cyrus SASL @@ -283,31 +287,29 @@ Unsupported LOGIN Cyrus SASL plugin. Wtyczka dodająca obsługę nie wspieranego mechanizmu LOGIN do Cyrus 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 +%package mysql +Summary: Cyrus SASL MySQL plugin +Summary(pl.UTF-8): Wtyczka MySQL do Cyrus SASL Group: Libraries 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. +%description mysql +Cyrus SASL MySQL plugin. -%description srp -l pl.UTF-8 -Wtyczka dodająca obsługę mechanizmu SRP do Cyrus SASL. Bazuje na -protokole Secure Remote Password. Ten mechanizm dokonuje wzajemnego -uwierzytelnienia i może dodawać warstwę bezpieczeństwa z wykrywaniem -powtarzania, zabezpieczeniem integralności i/lub poufności. +%description mysql -l pl.UTF-8 +Wtyczka MySQL do Cyrus SASL. -%description srp -l pt_BR.UTF-8 -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 ntlm +Summary: Cyrus SASL NTLM plugin +Summary(pl.UTF-8): Wtyczka NTLM do Cyrus SASL +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description ntlm +Cyrus SASL NTLM plugin. + +%description ntlm -l pl.UTF-8 +Wtyczka NTLM do Cyrus SASL. %package otp Summary: OTP Cyrus SASL plugin @@ -315,6 +317,7 @@ Summary(pl.UTF-8): Wtyczka OTP do Cyrus SASL Summary(pt_BR.UTF-8): Mecanismo SASL OTP Group: Libraries Requires: %{name} = %{version}-%{release} +Obsoletes: cyrus-sasl-opie < %{version} %description otp This plugin implements the SASL OTP (One Time Password) mechanism. @@ -323,58 +326,42 @@ This plugin implements the SASL OTP (One Time Password) mechanism. Wtyczka dodająca obsługę mechanizmu OTP (hasła jednorazowe) do Cyrus 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 +%package pgsql +Summary: Cyrus SASL PostgreSQL plugin +Summary(pl.UTF-8): Wtyczka PostgreSQL do Cyrus SASL Group: Libraries Requires: %{name} = %{version}-%{release} -%description opie -This plugin implements the SASL OPIE (One Time Password) mechanism. +%description pgsql +Cyrus SASL PostgreSQL plugin. -%description opie -l pl.UTF-8 -Wtyczka dodająca obsługę mechanizmu OPIE (hasła jednorazowe) do Cyrus -SASL. +%description pgsql -l pl.UTF-8 +Wtyczka PostgreSQL do Cyrus SASL. -%package x509 -Summary: x509 Cyrus SASL plugin -Summary(pl.UTF-8): Wtyczka x509 do Cyrus SASL +%package plain +Summary: Plain Cyrus SASL plugin +Summary(pl.UTF-8): Wtyczka plain do Cyrus SASL +Summary(pt_BR.UTF-8): Mecanismo SASL PLAIN Group: Libraries Requires: %{name} = %{version}-%{release} -%description x509 -x509 Cyrus SASL plugin. - -%description x509 -l pl.UTF-8 -Wtyczka x509 do Cyrus SASL. - -%package saslauthd -Summary: Cyrus SASL authd -Summary(pl.UTF-8): Demon authd do Cyrus SASL -Group: Daemons -Requires(post,preun): /sbin/chkconfig -Requires: %{name} = %{version}-%{release} -Requires: /sbin/chkconfig -Requires: rc-scripts - -%description saslauthd -Cyrus SASL authd. - -%description saslauthd -l pl.UTF-8 -Demon authd do Cyrus SASL. - -%package pwcheck -Summary: Cyrus SASL pwcheck helper -Summary(pl.UTF-8): Program pomocniczy pwcheck do Cyrus SASL -Group: Libraries -Requires: %{name} = %{version}-%{release} +%description plain +This plugin implements the SASL PLAIN mechanism. Although insecure, +PLAIN is useful for transitioning to new security mechanisms, as this +is the only mechanism which gives the server a copy of the user's +password. -%description pwcheck -Cyrus SASL pwcheck helper. +%description plain -l pl.UTF-8 +Wtyczka dodająca obsługę mechanizmu PLAIN do Cyrus SASL. Pomimo tego, +że nie jest bezpieczny, PLAIN jest przydatny przy przechodzeniu na +nowe mechanizmu bezpieczeństwa, jako że jest to jedyny mechanizm, +który udostępnia serwerowi kopię hasła użytkownika. -%description pwcheck -l pl.UTF-8 -Program pomocniczy pwcheck do Cyrus SASL. +%description plain -l pt_BR.UTF-8 +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 sasldb Summary: Cyrus SASL sasldb plugin @@ -388,41 +375,138 @@ Cyrus SASL sasldb plugin. %description sasldb -l pl.UTF-8 Wtyczka sasldb do Cyrus SASL. -%package mysql -Summary: Cyrus SASL MySQL plugin -Summary(pl.UTF-8): Wtyczka MySQL do Cyrus SASL +%package ldapdb +Summary: Cyrus SASL LDAPDB plugin +Summary(pl.UTF-8): Wtyczka LDAPDB do Cyrus SASL Group: Libraries Requires: %{name} = %{version}-%{release} -%description mysql -Cyrus SASL MySQL plugin. +%description ldapdb +Cyrus SASL ldapdb plugin. -%description mysql -l pl.UTF-8 -Wtyczka MySQL do Cyrus SASL. +%description ldapdb -l pl.UTF-8 +Wtyczka ldapdb do Cyrus SASL. -%package pgsql -Summary: Cyrus SASL PostgreSQL plugin -Summary(pl.UTF-8): Wtyczka PostgreSQL do Cyrus SASL +%package passdss +Summary: PASSDSS Cyrus SASL plugin +Summary(pl.UTF-8): Wtyczka PASSDSS do Cyrus SASL +Summary(pt_BR.UTF-8): Mecanismo SASL PASSDSS Group: Libraries Requires: %{name} = %{version}-%{release} -%description pgsql -Cyrus SASL PostgreSQL plugin. +%description passdss +This plugin implements the PASSDSS 3DES mechanism. -%description pgsql -l pl.UTF-8 -Wtyczka PostgreSQL do Cyrus SASL. +%description passdss -l pl.UTF-8 +Wtyczka dodająca obsługę mechanizmu PASSDSS 3DES do Cyrus SASL. + +%description passdss -l pt_BR.UTF-8 +Este plugin implementa o mecanismo SASL PASSDSS 3DES. + +%package scram +Summary: SCRAM Cyrus SASL plugin +Summary(pl.UTF-8): Wtyczka SCRAM do Cyrus SASL +Summary(pt_BR.UTF-8): Mecanismo SASL SCRAM +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description scram +This plugin implements the SASL SCRAM-MD5 mechanism. + +%description scram -l pl.UTF-8 +Wtyczka dodająca obsługę mechanizmu SCRAM do Cyrus SASL. + +%description scram -l pt_BR.UTF-8 +Este plugin implementa o mecanismo SASL SCRAM. %package sqlite -Summary: Cyrus SQLite PostgreSQL plugin -Summary(pl.UTF-8): Wtyczka SQLite do Cyrus SASL +Summary: Cyrus SQLite 2 PostgreSQL plugin +Summary(pl.UTF-8): Wtyczka SQLite 2 do Cyrus SASL Group: Libraries Requires: %{name} = %{version}-%{release} %description sqlite -Cyrus SASL SQLite plugin. +Cyrus SASL SQLite 2 plugin. %description sqlite -l pl.UTF-8 -Wtyczka SQLite do Cyrus SASL. +Wtyczka SQLite 2 do Cyrus SASL. + +%package sqlite3 +Summary: Cyrus SQLite 3 PostgreSQL plugin +Summary(pl.UTF-8): Wtyczka SQLite 3 do Cyrus SASL +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description sqlite3 +Cyrus SASL SQLite 3 plugin. + +%description sqlite3 -l pl.UTF-8 +Wtyczka SQLite 3 do Cyrus 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 +Group: Libraries +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. + +%description srp -l pl.UTF-8 +Wtyczka dodająca obsługę mechanizmu SRP do Cyrus SASL. Bazuje na +protokole Secure Remote Password. Ten mechanizm dokonuje wzajemnego +uwierzytelnienia i może dodawać warstwę bezpieczeństwa z wykrywaniem +powtarzania, zabezpieczeniem integralności i/lub poufności. + +%description srp -l pt_BR.UTF-8 +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 pwcheck +Summary: Cyrus SASL pwcheck helper +Summary(pl.UTF-8): Program pomocniczy pwcheck do Cyrus SASL +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description pwcheck +Cyrus SASL pwcheck helper. + +%description pwcheck -l pl.UTF-8 +Program pomocniczy pwcheck do Cyrus SASL. + +%package saslauthd +Summary: Cyrus SASL authd +Summary(pl.UTF-8): Demon authd do Cyrus SASL +Group: Daemons +Requires(post,preun): /sbin/chkconfig +Requires: %{name} = %{version}-%{release} +Requires: /sbin/chkconfig +Requires: rc-scripts + +%description saslauthd +Cyrus SASL authd. + +%description saslauthd -l pl.UTF-8 +Demon authd 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 @@ -437,9 +521,22 @@ Wtyczka SQLite do Cyrus SASL. %endif %patch7 -p1 %patch8 -p1 -%patch9 -p2 +%patch9 -p1 %patch10 -p1 %patch11 -p1 +%patch12 -p1 +%patch13 -p0 +%patch14 -p1 +%patch15 -p1 +%patch16 -p1 +%patch17 -p1 +%patch18 -p1 +%patch19 -p1 +%patch20 -p1 +%patch21 -p1 +%patch22 -p1 +%patch23 -p1 +%patch24 -p1 cd doc echo "cyrus-sasl complies with the following RFCs:" > rfc-compliance @@ -447,55 +544,66 @@ 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 +# old version +%{__rm} config/libtool.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 %{__autoheader} -%{__automake} %{__autoconf} - +%{__automake} cd saslauthd -%{__libtoolize} -%{__aclocal} -I ../cmulocal -I ../config -I config +%{__aclocal} -I ../cmulocal -I ../config %{__autoheader} -%{__automake} %{__autoconf} +%{__automake} cd .. - %configure \ %{?with_cryptedpw: LDFLAGS=-lcrypt} \ --disable-krb4 \ - %{!?with_gssapi: --disable-gssapi} \ - %{?with_gssapi: --enable-gssapi --with-gss_impl=mit} \ + %{!?with_gssapi:--disable-gssapi} \ + %{?with_gssapi:--enable-gssapi --with-gss_impl=heimdal} \ --enable-login \ --enable-sample \ + --enable-httpform \ --enable-sql \ - %{?with_srp: --enable-srp} \ + --enable-passdss \ + %{?with_srp:--enable-srp} \ --enable-static \ --with-plugindir=%{_libdir}/sasl2 \ --with-configdir=%{_sysconfdir} \ --with-dblib=berkeley \ --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_ldap:--with-ldap=%{_prefix}} \ + %{?with_ldap:--enable-ldapdb} \ + %{?with_mysql:--with-mysql=%{_prefix}} \ + %{?with_ntlm:--enable-ntlm} \ + %{?with_pgsql:--with-pgsql=%{_prefix}} \ + %{?with_sqlite:--with-sqlite=%{_prefix}} \ + %{?with_sqlite3:--with-sqlite3=%{_prefix}} \ + %{?with_opie:--with-opie=%{_prefix}} \ --with-pam \ - %{?with_pwcheck: --with-pwcheck=/var/lib/sasl2} \ + %{?with_pwcheck:--with-pwcheck=/var/lib/sasl2} \ --with-saslauthd=/var/lib/sasl2 + %{__make} %{__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 @@ -510,11 +618,10 @@ install -d $RPM_BUILD_ROOT{%{_bindir},/var/lib/sasl2,%{_sysconfdir},/etc/{rc.d/i sasldir=%{_libdir}/sasl2 \ DESTDIR=$RPM_BUILD_ROOT -rm -rf $RPM_BUILD_ROOT%{_mandir}/cat* -rm -f $RPM_BUILD_ROOT%{_libdir}/sasl2/*.{la,a} +%{__rm} $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 @@ -522,21 +629,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 @@ -548,36 +661,48 @@ 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.3 + %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/* +%{_pkgconfigdir}/libsasl2.pc +%{_mandir}/man3/sasl*.3* %files static %defattr(644,root,root,755) -%{_libdir}/lib*.a +%{_libdir}/libsasl2.a %files anonymous %defattr(644,root,root,755) @@ -586,6 +711,7 @@ fi %if %{with gssapi} %files gssapi %defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/sasl2/libgs2.so* %attr(755,root,root) %{_libdir}/sasl2/libgssapiv2.so* %endif @@ -601,14 +727,26 @@ fi %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/sasl2/liblogin.so* +%if %{with mysql} +%files mysql +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/sasl2/libmysql.so* +%endif + +%if %{with ntlm} +%files ntlm +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/sasl2/libntlm.so* +%endif + %files otp %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/sasl2/libotp.so* -%if %{with opie} -%files opie +%if %{with pgsql} +%files pgsql %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/sasl2/libopie.so* +%attr(755,root,root) %{_libdir}/sasl2/libpgsql.so* %endif %files plain @@ -619,17 +757,19 @@ fi %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/sasl2/libsasldb.so* -%if %{with mysql} -%files mysql +%if %{with ldap} +%files ldapdb %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/sasl2/libmysql.so* +%attr(755,root,root) %{_libdir}/sasl2/libldapdb.so* %endif -%if %{with pgsql} -%files pgsql +%files passdss %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/sasl2/libpgsql.so* -%endif +%attr(755,root,root) %{_libdir}/sasl2/libpassdss.so* + +%files scram +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/sasl2/libscram.so* %if %{with sqlite} %files sqlite @@ -637,16 +777,16 @@ fi %attr(755,root,root) %{_libdir}/sasl2/libsqlite.so* %endif -%if %{with srp} -%files srp +%if %{with sqlite3} +%files sqlite3 %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/sasl2/libsrp.so* +%attr(755,root,root) %{_libdir}/sasl2/libsqlite3.so* %endif -%if %{with x509} -%files x509 +%if %{with srp} +%files srp %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/sasl2/libx509.so* +%attr(755,root,root) %{_libdir}/sasl2/libsrp.so* %endif %if %{with pwcheck} @@ -665,4 +805,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