X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=courier-authlib.spec;h=7f3b5229ca954fca6891206d548883ac3fc45730;hb=da136754115413c036d3ddd572fb4a5486cb9d93;hp=bba6013df6176413d8b24bb199cba34a048ca5da;hpb=3149c8fe4699fdc51cbb3326c773d1c9f5809f0e;p=packages%2Fcourier-authlib.git diff --git a/courier-authlib.spec b/courier-authlib.spec index bba6013..7f3b522 100644 --- a/courier-authlib.spec +++ b/courier-authlib.spec @@ -1,34 +1,41 @@ +# +# Conditional build: +%bcond_without ldap # do not include LDAP support + Summary: Courier authentication library -Summary(pl): Biblioteka uwierzytelniania Couriera +Summary(pl.UTF-8): Biblioteka uwierzytelniania Couriera Name: courier-authlib -Version: 0.57 -Release: 3.1 -License: GPL +Version: 0.65.0 +Release: 4 +License: GPL v3 with OpenSSL exception Group: Networking/Daemons -Source0: http://dl.sourceforge.net/courier/%{name}-%{version}.tar.bz2 -# Source0-md5: af146ac84f0c3ee00006af50b4415d8a +Source0: http://downloads.sourceforge.net/courier/%{name}-%{version}.tar.bz2 +# Source0-md5: e9287e33b0e70ea3745517b4d719948d Source1: %{name}.init -Patch0: %{name}-build.patch -Patch1: %{name}-md5sum-passwords.patch -Patch2: %{name}-authdaemonrc.patch +Patch0: %{name}-md5sum-passwords.patch +Patch1: %{name}-authdaemonrc.patch +Patch2: %{name}-nostatic.patch +Patch3: %{name}-ltdl.patch URL: http://www.courier-mta.org/authlib/ -BuildRequires: autoconf +BuildRequires: autoconf >= 2.63 BuildRequires: automake BuildRequires: db-devel BuildRequires: expect -BuildRequires: libtool -BuildRequires: libltdl-devel +BuildRequires: libltdl-devel >= 2:2 +BuildRequires: libtool >= 2:2 BuildRequires: mysql-devel -BuildRequires: openldap-devel +%{?with_ldap:BuildRequires: openldap-devel >= 2.3.0} BuildRequires: pam-devel BuildRequires: postgresql-devel -BuildRequires: sed >= 4.0 +BuildRequires: rpmbuild(macros) >= 1.304 +BuildRequires: sqlite3-devel BuildRequires: sysconftool BuildRequires: zlib-devel -Requires: rc-scripts -Requires: /sbin/chkconfig +Requires(post,postun): /sbin/ldconfig Requires(post,preun): /sbin/chkconfig -Requires(post): /sbin/ldconfig +Requires: %{name}-libs = %{version}-%{release} +Requires: /sbin/chkconfig +Requires: rc-scripts Obsoletes: sqwebmail-auth-cram Obsoletes: sqwebmail-auth-pam Obsoletes: sqwebmail-auth-pwd @@ -41,19 +48,37 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) The Courier authentication library provides authentication services for other Courier applications. -%description -l pl -Biblioteka uwierzytelniania Couriera dostarcza us³ugi uwierzytelniania +%description -l pl.UTF-8 +Biblioteka uwierzytelniania Couriera dostarcza usługi uwierzytelniania +dla innych aplikacji Couriera. + +%package libs +Summary: Courier authentication library +Summary(pl.UTF-8): Biblioteka uwierzytelniania Couriera +Group: Libraries +Requires(post,postun): /sbin/ldconfig + +%description libs +The Courier authentication library provides authentication services +for other Courier applications. + +This package contains libcourierauth.so which client programs link +against. + +%description libs -l pl.UTF-8 +Biblioteka uwierzytelniania Couriera dostarcza usługi uwierzytelniania dla innych aplikacji Couriera. %package devel Summary: Development files for the Courier authentication library -Summary(pl): Pliki programistyczne dla biblioteki uwierzytelniania Couriera +Summary(pl.UTF-8): Pliki programistyczne dla biblioteki uwierzytelniania Couriera Group: Development/Libraries Requires: %{name} = %{version}-%{release} -Requires: %{name}-authldap = %{version}-%{release} +%{?with_ldap:Requires: %{name}-authldap = %{version}-%{release}} Requires: %{name}-authmysql = %{version}-%{release} Requires: %{name}-authpgsql = %{version}-%{release} -Requires: %{name}-userdb = %{version}-%{release} +Requires: %{name}-authpipe = %{version}-%{release} +Requires: %{name}-authuserdb = %{version}-%{release} %description devel This package contains the development files needed to compile Courier @@ -62,19 +87,19 @@ order to build the rest of the Courier packages. After they are built and installed this package can be removed. Files in this package are not needed at runtime. -%description devel -l pl +%description devel -l pl.UTF-8 Ten pakiet zawiera pliki programistyczne potrzebne do kompilacji -pakietów Couriera u¿ywaj±cych biblioteki uwierzytelniania. Nale¿y go -zainstalowaæ aby zbudowaæ resztê pakietów Couriera. Po ich zbudowaniu -i zainstalowaniu ten pakiet mo¿na usun±æ. Pliki z tego pakietu nie s± -potrzebne w czasie dzia³ania programów. +pakietów Couriera używających biblioteki uwierzytelniania. Należy go +zainstalować aby zbudować resztę pakietów Couriera. Po ich zbudowaniu +i zainstalowaniu ten pakiet można usunąć. Pliki z tego pakietu nie są +potrzebne w czasie działania programów. %package authldap Summary: LDAP support for the Courier authentication library -Summary(pl): Obs³uga LDAP dla biblioteki uwierzytelniania Couriera +Summary(pl.UTF-8): Obsługa LDAP dla biblioteki uwierzytelniania Couriera Group: Networking/Daemons -Requires: %{name} = %{version}-%{release} Requires(pre,postun): sed >= 4.0 +Requires: %{name} = %{version}-%{release} Obsoletes: courier-authldap Obsoletes: courier-imap-authldap Obsoletes: sqwebmail-auth-ldap @@ -84,17 +109,17 @@ This package installs LDAP support for the Courier authentication library. Install this package in order to be able to authenticate using LDAP. -%description authldap -l pl -Ten pakiet dodaje obs³ugê LDAP do biblioteki uwierzytelniania -Couriera. Nale¿y go zainstalowaæ aby móc uwierzytelniaæ siê z u¿yciem +%description authldap -l pl.UTF-8 +Ten pakiet dodaje obsługę LDAP do biblioteki uwierzytelniania +Couriera. Należy go zainstalować aby móc uwierzytelniać się z użyciem LDAP. %package authmysql Summary: MySQL support for the Courier authentication library -Summary(pl): Obs³uga MySQL dla biblioteki uwierzytelniania Couriera +Summary(pl.UTF-8): Obsługa MySQL dla biblioteki uwierzytelniania Couriera Group: Networking/Daemons -Requires: %{name} = %{version}-%{release} Requires(pre,postun): sed >= 4.0 +Requires: %{name} = %{version}-%{release} Obsoletes: courier-authmysql Obsoletes: courier-imap-authmysql Obsoletes: sqwebmail-auth-mysql @@ -104,17 +129,17 @@ This package installs MySQL support for the Courier authentication library. Install this package in order to be able to authenticate using MySQL. -%description authmysql -l pl -Ten pakiet dodaje obs³ugê MySQL do biblioteki uwierzytelniania -Couriera. Nale¿y go zainstalowaæ aby móc uwierzytelniaæ siê z u¿yciem +%description authmysql -l pl.UTF-8 +Ten pakiet dodaje obsługę MySQL do biblioteki uwierzytelniania +Couriera. Należy go zainstalować aby móc uwierzytelniać się z użyciem MySQL. %package authpgsql Summary: PostgreSQL support for the Courier authentication library -Summary(pl): Obs³uga PostgreSQL dla biblioteki uwierzytelniania Couriera +Summary(pl.UTF-8): Obsługa PostgreSQL dla biblioteki uwierzytelniania Couriera Group: Networking/Daemons -Requires: %{name} = %{version}-%{release} Requires(pre,postun): sed >= 4.0 +Requires: %{name} = %{version}-%{release} Obsoletes: courier-authpgsql Obsoletes: courier-imap-authpgsql Obsoletes: sqwebmail-auth-pgsql @@ -124,63 +149,85 @@ This package installs PostgreSQL support for the Courier authentication library. Install this package in order to be able to authenticate using PostgreSQL. -%description authpgsql -l pl -Ten pakiet dodaje obs³ugê PostgreSQL do biblioteki uwierzytelniania -Couriera. Nale¿y go zainstalowaæ aby móc uwierzytelniaæ siê z u¿yciem +%description authpgsql -l pl.UTF-8 +Ten pakiet dodaje obsługę PostgreSQL do biblioteki uwierzytelniania +Couriera. Należy go zainstalować aby móc uwierzytelniać się z użyciem PostgreSQL. -%package userdb -Summary: Userdb support for the Courier authentication library -Summary(pl): Obs³uga userdb dla biblioteki uwierzytelniania Couriera +%package authpipe +Summary: External authentication module that communicates via pipes +Summary(pl.UTF-8): Zewnętrzny moduł uwierzytelniający komunikujący się przez potoki Group: Networking/Daemons +Requires(pre,postun): sed >= 4.0 Requires: %{name} = %{version}-%{release} +Obsoletes: courier-authlib-authpipe + +%description authpipe +This package installs the authpipe module, which is a generic plugin +that enables authentication requests to be serviced by an external +program, then communicates through messages on stdin and stdout. + +%description authpipe -l pl.UTF-8 +Pakiet ten instaluje moduł authpipe, który jest ogólną wtyczką +umożliwiającą obsługę żądań uwierzytelnienia przez zewnętrzny program +komunikujący się poprzez wiadomości wysyłane na stdin i stdout. + +%package authsqlite +Summary: SQLite support for the Courier authentication library +Summary(pl.UTF-8): Obsługa SQLite dla biblioteki uwierzytelniania Couriera +Group: Networking/Daemons +Requires(pre,postun): sed >= 4.0 +Requires: %{name} = %{version}-%{release} + +%description authsqlite +This package installs SQLite support for the Courier authentication +library. Install this package in order to be able to authenticate +using SQLite. + +%description authsqlite -l pl.UTF-8 +Ten pakiet dodaje obsługę SQLite do biblioteki uwierzytelniania +Couriera. Należy go zainstalować aby móc uwierzytelniać się z użyciem +SQLite. + +%package authuserdb +Summary: Userdb support for the Courier authentication library +Summary(pl.UTF-8): Obsługa userdb dla biblioteki uwierzytelniania Couriera +Group: Networking/Daemons Requires(pre,postun): sed >= 4.0 +Requires: %{name} = %{version}-%{release} +Obsoletes: courier-authlib-userdb Obsoletes: courier-imap-userdb Obsoletes: sqwebmail-auth-userdb -%description userdb +%description authuserdb This package installs the userdb support for the Courier authentication library. Userdb is a simple way to manage virtual mail accounts using a GDBM-based database file. Install this package in order to be able to authenticate with userdb. -%description userdb -l pl -Ten pakiet dodaje obs³ugê userdb do biblioteki uwierzytelniania -Couriera. Userdb to prosty sposób zarz±dzania wirtualnymi kontami -pocztowymi przy u¿yciu pliku bazy danych opartej na GDBM. - -Nale¿y go zainstalowaæ aby móc uwierzytelniaæ siê z u¿yciem userdb. - -%package pipe -Summary: External authentication module that communicates via pipes -Summary(pl): Zewnêtrzny modu³ uwierzytelniaj±cy komunikuj±cy siê przez potoki -Group: Networking/Daemons -Requires: %{name} = %{version}-%{release} -Requires(pre,postun): sed >= 4.0 - -%description pipe -This package installs the authpipe module, which is a generic plugin -that enables authentication requests to be serviced by an external -program, then communicates through messages on stdin and stdout. +%description authuserdb -l pl.UTF-8 +Ten pakiet dodaje obsługę userdb do biblioteki uwierzytelniania +Couriera. Userdb to prosty sposób zarządzania wirtualnymi kontami +pocztowymi przy użyciu pliku bazy danych opartej na GDBM. -%description pipe -l pl -Pakiet ten instaluje modu³ authpipe, który jest ogóln± wtyczk± -umo¿liwiaj±c± obs³ugê ¿±dañ uwierzytelnienia przez zewnêtrzny program -komunikuj±cy siê poprzez wiadomo¶ci wysy³ane na stdin i stdout. +Należy go zainstalować aby móc uwierzytelniać się z użyciem userdb. %package -n openldap-schema-courier Summary: Courier LDAP schema -Summary(pl): Schemat LDAP Couriera +Summary(pl.UTF-8): Schemat LDAP Couriera Group: Networking/Daemons Requires(post,postun): sed >= 4.0 -Requires: sed >= 4.0 Requires: openldap-servers +Requires: sed >= 4.0 +%if "%{_rpmversion}" >= "5" +BuildArch: noarch +%endif %description -n openldap-schema-courier This package contains Courier authldap.schema for openldap. -%description -n openldap-schema-courier -l pl +%description -n openldap-schema-courier -l pl.UTF-8 Ten pakiet zawiera schemat Couriera authldap.schema dla openldapa. %prep @@ -188,34 +235,38 @@ Ten pakiet zawiera schemat Couriera authldap.schema dla openldapa. %patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 %build -cp /usr/share/automake/config.sub libltdl -%{__libtoolize} - # Change Makefile.am files and force recreate Makefile.in's. -OLDDIR=$(pwd) -for FILE in {,*/}configure.{in,ac}; do - cd "$(dirname "$FILE")" +OLDDIR=`pwd` +find -type f -a \( -name configure.in -o -name configure.ac \) | while read FILE; do + cd "`dirname "$FILE"`" if [ -f Makefile.am ]; then sed -i -e '/_[L]DFLAGS=-static/d' Makefile.am fi + %{__libtoolize} %{__aclocal} %{__autoconf} - %{__autoheader} + if grep -q AC_CONFIG_HEADER configure.in; then + %{__autoheader} + fi %{__automake} cd "$OLDDIR" done %configure \ + --disable-ltdl-install \ + %{!?with_ldap:--without-authldap} \ --with-db=db \ --with-mailuser=daemon \ --with-mailgroup=daemon -%{__make} +%{__make} -j1 \ + LDFLAGS="%{rpmldflags} -lcrypt" %install rm -rf $RPM_BUILD_ROOT @@ -223,193 +274,166 @@ rm -rf $RPM_BUILD_ROOT %{__make} -j1 install \ DESTDIR=$RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_sysconfdir}/authlib/userdb,%{schemadir}} +install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_sysconfdir}/authlib/userdb,%{schemadir},%{_bindir}} -install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-authlib -install authldap.schema $RPM_BUILD_ROOT%{schemadir}/courier.schema +install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-authlib +cp -p authldap.schema $RPM_BUILD_ROOT%{schemadir}/courier.schema +install -p makedat/makedat $RPM_BUILD_ROOT%{_bindir}/makedat # make config files ./sysconftool $RPM_BUILD_ROOT%{_sysconfdir}/authlib/*.dist -rm -f $RPM_BUILD_ROOT%{_sysconfdir}/authlib/*.dist +%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/authlib/*.dist + +touch $RPM_BUILD_ROOT%{_localstatedir}/spool/authdaemon/socket # remove static library - for now -rm -f $RPM_BUILD_ROOT%{_libdir}/courier-authlib/*.a +%{__rm} $RPM_BUILD_ROOT%{_libdir}/courier-authlib/*.a %clean rm -rf $RPM_BUILD_ROOT %post -/sbin/ldconfig %{_libexecdir}/courier-authlib +/sbin/ldconfig %{_libdir}/courier-authlib /sbin/chkconfig --add courier-authlib -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart -else - echo "Run \"/etc/rc.d/init.d/courier-authlib start\" to start authlib daemon" -fi +%service courier-authlib restart "authlib daemon" %preun if [ "$1" = "0" ]; then /sbin/chkconfig --del courier-authlib -fi - -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib stop + %service courier-authlib stop fi %postun -/sbin/ldconfig %{_libexecdir}/courier-authlib +/sbin/ldconfig %{_libdir}/courier-authlib + +%post libs +/sbin/ldconfig %{_libdir}/courier-authlib + +%postun libs +/sbin/ldconfig %{_libdir}/courier-authlib %post authldap if [ "$1" = 1 ]; then # add to authmodulelist list if package is first installed - sed -i -e '/^authmodulelist=/{/\bauthldap\b/!s/"$/ authldap"/}' /etc/authlib/authdaemonrc -fi -/sbin/ldconfig %{_libexecdir}/courier-authlib -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart + %{__sed} -i -e '/^authmodulelist=/{/\bauthldap\b/!s/"$/ authldap"/}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart %postun authldap if [ "$1" = 0 ]; then # remove from authmodulelist if package is removed - sed -i -e '/^authmodulelist=/{s/ \?\bauthldap\b \?//}' /etc/authlib/authdaemonrc -fi -/sbin/ldconfig %{_libexecdir}/courier-authlib -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart + %{__sed} -i -e '/^authmodulelist=/{s/ \?\bauthldap\b \?//}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart %post authmysql if [ "$1" = 1 ]; then # add to authmodulelist list if package is first installed - sed -i -e '/^authmodulelist=/{/\bauthmysql\b/!s/"$/ authmysql"/}' /etc/authlib/authdaemonrc -fi -/sbin/ldconfig %{_libexecdir}/courier-authlib -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart + %{__sed} -i -e '/^authmodulelist=/{/\bauthmysql\b/!s/"$/ authmysql"/}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart %postun authmysql if [ "$1" = 0 ]; then # remove from authmodulelist if package is removed - sed -i -e '/^authmodulelist=/{s/ \?\bauthmysql\b \?//}' /etc/authlib/authdaemonrc -fi -/sbin/ldconfig %{_libexecdir}/courier-authlib -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart + %{__sed} -i -e '/^authmodulelist=/{s/ \?\bauthmysql\b \?//}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart %post authpgsql if [ "$1" = 1 ]; then # add to authmodulelist list if package is first installed - sed -i -e '/^authmodulelist=/{/\bauthpgsql\b/!s/"$/ authpgsql"/}' /etc/authlib/authdaemonrc -fi -/sbin/ldconfig %{_libexecdir}/courier-authlib -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart + %{__sed} -i -e '/^authmodulelist=/{/\bauthpgsql\b/!s/"$/ authpgsql"/}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart %postun authpgsql if [ "$1" = 0 ]; then # remove from authmodulelist if package is removed - sed -i -e '/^authmodulelist=/{s/ \?\bauthpgsql\b \?//}' /etc/authlib/authdaemonrc -fi -/sbin/ldconfig %{_libexecdir}/courier-authlib -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart + %{__sed} -i -e '/^authmodulelist=/{s/ \?\bauthpgsql\b \?//}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart -%post userdb +%post authpipe if [ "$1" = 1 ]; then # add to authmodulelist list if package is first installed - sed -i -e '/^authmodulelist=/{/\buserdb\b/!s/"$/ userdb"/}' /etc/authlib/authdaemonrc -fi -/sbin/ldconfig %{_libexecdir}/courier-authlib -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart + %{__sed} -i -e '/^authmodulelist=/{/\bpipe\b/!s/"$/ pipe"/}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart -%postun userdb +%postun authpipe if [ "$1" = 0 ]; then # remove from authmodulelist if package is removed - sed -i -e '/^authmodulelist=/{s/ \?\buserdb\b \?//}' /etc/authlib/authdaemonrc -fi -/sbin/ldconfig %{_libexecdir}/courier-authlib -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart + %{__sed} -i -e '/^authmodulelist=/{s/ \?\bpipe\b \?//}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart -%post pipe +%post authsqlite if [ "$1" = 1 ]; then # add to authmodulelist list if package is first installed - sed -i -e '/^authmodulelist=/{/\bpipe\b/!s/"$/ pipe"/}' /etc/authlib/authdaemonrc -fi -/sbin/ldconfig %{_libexecdir}/courier-authlib -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart + %{__sed} -i -e '/^authmodulelist=/{/\bauthsqlite\b/!s/"$/ authsqlite"/}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart -%postun pipe +%postun authsqlite if [ "$1" = 0 ]; then # remove from authmodulelist if package is removed - sed -i -e '/^authmodulelist=/{s/ \?\bpipe\b \?//}' /etc/authlib/authdaemonrc -fi -/sbin/ldconfig %{_libexecdir}/courier-authlib -if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart + %{__sed} -i -e '/^authmodulelist=/{s/ \?\bauthsqlite\b \?//}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart -%post -n openldap-schema-courier -if ! grep -q %{schemadir}/courier.schema /etc/openldap/slapd.conf; then - sed -i -e ' - /^include.*local.schema/{ - i\ -include %{schemadir}/courier.schema - } - - # enable dependant schemas: nis.schema, cosine.schema - /^#include.*\(nis\|cosine\)\.schema/{ - s/^#// - } - ' /etc/openldap/slapd.conf +%post authuserdb +if [ "$1" = 1 ]; then + # add to authmodulelist list if package is first installed + %{__sed} -i -e '/^authmodulelist=/{/\buserdb\b/!s/"$/ userdb"/}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart -if [ -f /var/lock/subsys/ldap ]; then - /etc/rc.d/init.d/ldap restart >&2 +%postun authuserdb +if [ "$1" = 0 ]; then + # remove from authmodulelist if package is removed + %{__sed} -i -e '/^authmodulelist=/{s/ \?\buserdb\b \?//}' /etc/authlib/authdaemonrc fi +/sbin/ldconfig %{_libdir}/courier-authlib +%service -q courier-authlib restart + +%post -n openldap-schema-courier +%openldap_schema_register %{schemadir}/courier.schema -d misc,nis,cosine +%service -q ldap restart %postun -n openldap-schema-courier if [ "$1" = "0" ]; then - if grep -q %{schemadir}/courier.schema /etc/openldap/slapd.conf; then - sed -i -e ' - /^include.*\/usr\/share\/openldap\/schema\/courier.schema/d - - # for symmetry it would be nice if we disable enabled schemas in post, - # but we really can not do that, it would break something else. - ' /etc/openldap/slapd.conf - fi - - if [ -f /var/lock/subsys/ldap ]; then - /etc/rc.d/init.d/ldap restart >&2 || : - fi + %openldap_schema_unregister %{schemadir}/courier.schema + %service -q ldap restart fi %triggerin -- courier < 0.48 if [ -f /etc/courier/authdaemonrc ]; then . /etc/courier/authdaemonrc - sed -i s/^authmodulelist=.*/"authmodulelist=\"`echo $authmodulelist \ + %{__sed} -i s/^authmodulelist=.*/"authmodulelist=\"`echo $authmodulelist \ | sed s/'authcram'/''/ | sed s/' '/' '/`\""/ /etc/authlib/authdaemonrc - sed -i s/^authmodulelistorig=.*/"authmodulelistorig=\"`echo $authmodulelistorig\ + %{__sed} -i s/^authmodulelistorig=.*/"authmodulelistorig=\"`echo $authmodulelistorig\ | sed s/'authcram'/''/ | sed s/' '/' '/`\""/ /etc/authlib/authdaemonrc - sed -i s/^daemons=.*/"daemons=$daemons"/ /etc/authlib/authdaemonrc + %{__sed} -i s/^daemons=.*/"daemons=$daemons"/ /etc/authlib/authdaemonrc fi if [ -f /var/lock/subsys/courier ]; then if [ -f /var/spool/courier/authdaemon/pid ]; then kill `cat /var/spool/courier/authdaemon/pid` rm -f /var/spool/courier/authdaemon/* - /etc/rc.d/init.d/courier-authlib start + /sbin/service courier-authlib start fi fi @@ -417,17 +441,17 @@ fi if [ -f /etc/courier-imap/authdaemonrc ]; then . /etc/courier-imap/authdaemonrc - sed -i s/^authmodulelist=.*/"authmodulelist=\"`echo $authmodulelist \ + %{__sed} -i s/^authmodulelist=.*/"authmodulelist=\"`echo $authmodulelist \ | sed s/'authcram'/''/ | sed s/' '/' '/`\""/ /etc/authlib/authdaemonrc - sed -i s/^authmodulelistorig=.*/"authmodulelistorig=\"`echo $authmodulelistorig\ + %{__sed} -i s/^authmodulelistorig=.*/"authmodulelistorig=\"`echo $authmodulelistorig\ | sed s/'authcram'/''/ | sed s/' '/' '/`\""/ /etc/authlib/authdaemonrc - sed -i s/^daemons=.*/"daemons=$daemons"/ /etc/authlib/authdaemonrc + %{__sed} -i s/^daemons=.*/"daemons=$daemons"/ /etc/authlib/authdaemonrc fi if [ -f /var/lock/subsys/courier-imap ]; then if [ -f /var/lib/authdaemon/pid ]; then kill `cat /var/lib/authdaemon/pid` rm -f /var/lib/authdaemon/* - /etc/rc.d/init.d/courier-authlib start + /sbin/service courier-authlib start fi fi @@ -435,17 +459,17 @@ fi if [ -f /etc/sqwebmail/authdaemonrc ]; then . /etc/sqwebmail/authdaemonrc - sed -i s/^authmodulelist=.*/"authmodulelist=\"`echo $authmodulelist \ + %{__sed} -i s/^authmodulelist=.*/"authmodulelist=\"`echo $authmodulelist \ | sed s/'authcram'/''/ | sed s/' '/' '/`\""/ /etc/authlib/authdaemonrc - sed -i s/^authmodulelistorig=.*/"authmodulelistorig=\"`echo $authmodulelistorig\ + %{__sed} -i s/^authmodulelistorig=.*/"authmodulelistorig=\"`echo $authmodulelistorig\ | sed s/'authcram'/''/ | sed s/' '/' '/`\""/ /etc/authlib/authdaemonrc - sed -i s/^daemons=.*/"daemons=$daemons"/ /etc/authlib/authdaemonrc + %{__sed} -i s/^daemons=.*/"daemons=$daemons"/ /etc/authlib/authdaemonrc fi if [ -f /var/lock/subsys/sqwebmail ]; then if [ -f /var/spool/sqwebmail/authdaemon/pid ]; then kill `cat /var/spool/sqwebmail/authdaemon/pid` rm -f /var/spool/sqwebmail/authdaemon/* - /etc/rc.d/init.d/courier-authlib start + /sbin/service courier-authlib start fi fi @@ -453,84 +477,66 @@ fi if [ -f /etc/courier/authldaprc ]; then mv -f /etc/authlib/authldaprc /etc/authlib/authldaprc.new cp -f /etc/courier/authldaprc /etc/authlib/authldaprc - if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart - fi + %service -q courier-authlib restart fi %triggerin -n %{name}-authldap -- courier-imap-authldap < 4.0.0 if [ -f /etc/courier-imap/authldaprc ]; then mv -f /etc/authlib/authldaprc /etc/authlib/authldaprc.new cp -f /etc/courier-imap/authldaprc /etc/authlib/authldaprc - if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart - fi + %service -q courier-authlib restart fi %triggerin -n %{name}-authldap -- sqwebmail-auth-ldap < 5.0.0 if [ -f /etc/sqwebmail/authldaprc ]; then mv -f /etc/authlib/authldaprc /etc/authlib/authldaprc.new cp -f /etc/sqwebmail/authldaprc /etc/authlib/authldaprc - if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart - fi + %service -q courier-authlib restart fi %triggerin -n %{name}-authmysql -- courier-authmysql < 0.48 if [ -f /etc/courier/authmysqlrc ]; then mv -f /etc/authlib/authmysqlrc /etc/authlib/authmysqlrc.new cp -f /etc/courier/authmysqlrc /etc/authlib/authmysqlrc - if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart - fi + %service -q courier-authlib restart fi %triggerin -n %{name}-authmysql -- courier-imap-authmysql < 4.0.0 if [ -f /etc/courier-imap/authmysqlrc ]; then mv -f /etc/authlib/authmysqlrc /etc/authlib/authmysqlrc.new cp -f /etc/courier-imap/authmysqlrc /etc/authlib/authmysqlrc - if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart - fi + %service -q courier-authlib restart fi %triggerin -n %{name}-authmysql -- sqwebmail-auth-mysql < 5.0.0 if [ -f /etc/sqwebmail/authmysqlrc ]; then mv -f /etc/authlib/authmysqlrc /etc/authlib/authmysqlrc.new cp -f /etc/sqwebmail/authmysqlrc /etc/authlib/authmysqlrc - if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart - fi + %service -q courier-authlib restart fi %triggerin -n %{name}-authpgsql -- courier-authpgsql < 0.48 if [ -f /etc/courier/authpgsqlrc ]; then mv -f /etc/authlib/authpgsqlrc /etc/authlib/authpgsqlrc.new cp -f /etc/courier/authpgsqlrc /etc/authlib/authpgsqlrc - if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart - fi + %service -q courier-authlib restart fi %triggerin -n %{name}-authpgsql -- courier-imap-authpgsql < 4.0.0 if [ -f /etc/courier-imap/authpgsqlrc ]; then mv -f /etc/authlib/authpgsqlrc /etc/authlib/authpgsqlrc.new cp -f /etc/courier-imap/authpgsqlrc /etc/authlib/authpgsqlrc - if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart - fi + %service -q courier-authlib restart fi %triggerin -n %{name}-authpgsql -- sqwebmail-auth-pgsql < 5.0.0 if [ -f /etc/sqwebmail/authpgsqlrc ]; then mv -f /etc/authlib/authpgsqlrc /etc/authlib/authpgsqlrc.new cp -f /etc/sqwebmail/authpgsqlrc /etc/authlib/authpgsqlrc - if [ -f /var/lock/subsys/courier-authlib ]; then - /etc/rc.d/init.d/courier-authlib restart - fi + %service -q courier-authlib restart fi -%triggerin -n %{name}-userdb -- courier < 0.48 +%triggerin -n %{name}-authuserdb -- courier < 0.48 if [ -d /etc/courier/userdb ]; then mv -f /etc/courier/userdb/* /etc/authlib/userdb makeuserdb @@ -540,7 +546,7 @@ if [ -f /etc/courier/userdb ]; then makeuserdb fi -%triggerin -n %{name}-userdb -- courier-imap-userdb < 4.0.0 +%triggerin -n %{name}-authuserdb -- courier-imap-userdb < 4.0.0 if [ -d /etc/courier-imap/userdb ]; then mv -f /etc/courier-imap/userdb/* /etc/authlib/userdb makeuserdb @@ -550,7 +556,7 @@ if [ -f /etc/courier-imap/userdb ]; then makeuserdb fi -%triggerin -n %{name}-userdb -- sqwebmail-auth-userdb < 5.0.0 +%triggerin -n %{name}-authuserdb -- sqwebmail-auth-userdb < 5.0.0 if [ -d /etc/sqwebmail/userdb ]; then mv -f /etc/sqwebmail/userdb/* /etc/authlib/userdb makeuserdb @@ -564,61 +570,93 @@ fi %defattr(644,root,root,755) # COPYING contains only note %doc AUTHORS COPYING ChangeLog NEWS README README*html README.authmysql.myownquery authldap.schema +%attr(755,root,root) %{_bindir}/makedat %dir %{_sysconfdir}/authlib -%dir %{_libexecdir}/courier-authlib %attr(754,root,root) /etc/rc.d/init.d/courier-authlib %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/authlib/authdaemonrc %attr(755,root,root) %{_libexecdir}/courier-authlib/authdaemond %attr(755,root,root) %{_libexecdir}/courier-authlib/authsystem.passwd %attr(755,root,root) %{_libexecdir}/courier-authlib/makedatprog -%attr(755,root,root) %{_libexecdir}/courier-authlib/libauthcustom.so.*.*.* -%attr(755,root,root) %{_libexecdir}/courier-authlib/libauthpam.so.*.*.* -%attr(755,root,root) %{_libexecdir}/courier-authlib/libcourierauth.so.*.*.* -%attr(755,root,root) %{_libexecdir}/courier-authlib/libcourierauthcommon.so.*.*.* -%attr(755,root,root) %{_libexecdir}/courier-authlib/libcourierauthsasl.so.*.*.* -%attr(755,root,root) %{_libexecdir}/courier-authlib/libcourierauthsaslclient.so.*.*.* -%{_libexecdir}/courier-authlib/libauthcustom.la -%{_libexecdir}/courier-authlib/libauthpam.la -%{_libexecdir}/courier-authlib/libcourierauth.la -%{_libexecdir}/courier-authlib/libcourierauthcommon.la -%{_libexecdir}/courier-authlib/libcourierauthsasl.la -%{_libexecdir}/courier-authlib/libcourierauthsaslclient.la +%attr(755,root,root) %{_libdir}/courier-authlib/libauthcustom.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libauthcustom.so.0 +%attr(755,root,root) %{_libdir}/courier-authlib/libauthpam.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libauthpam.so.0 +%attr(755,root,root) %{_libdir}/courier-authlib/libcourierauthcommon.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libcourierauthcommon.so.0 +%attr(755,root,root) %{_libdir}/courier-authlib/libcourierauthsasl.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libcourierauthsasl.so.0 +%attr(755,root,root) %{_libdir}/courier-authlib/libcourierauthsaslclient.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libcourierauthsaslclient.so.0 +%{_libdir}/courier-authlib/libauthcustom.la +%{_libdir}/courier-authlib/libauthpam.la +%{_libdir}/courier-authlib/libcourierauth.la +%{_libdir}/courier-authlib/libcourierauthcommon.la +%{_libdir}/courier-authlib/libcourierauthsasl.la +%{_libdir}/courier-authlib/libcourierauthsaslclient.la %attr(770,root,daemon) %dir %{_localstatedir}/spool/authdaemon +%attr(777,root,root) %ghost %{_localstatedir}/spool/authdaemon/socket %attr(755,root,root) %{_sbindir}/authdaemond %attr(755,root,root) %{_sbindir}/authenumerate %attr(755,root,root) %{_sbindir}/authpasswd %attr(755,root,root) %{_sbindir}/authtest %attr(755,root,root) %{_sbindir}/courierlogger -%{_mandir}/man1/* +%{_mandir}/man1/authpasswd.1* +%{_mandir}/man1/authtest.1* +%{_mandir}/man1/courierlogger.1* + +%files libs +%defattr(644,root,root,755) +%dir %{_libdir}/courier-authlib +%attr(755,root,root) %{_libdir}/courier-authlib/libcourierauth.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libcourierauth.so.0 %files devel %defattr(644,root,root,755) %doc authlib.html auth_*.html %attr(755,root,root) %{_bindir}/courierauthconfig -%{_includedir}/* -%{_mandir}/man3/* -%attr(755,root,root) %{_libexecdir}/courier-authlib/*.so +%{_includedir}/courier_auth_config.h +%{_includedir}/courierauth*.h +%{_mandir}/man3/auth_*.3* +%{_mandir}/man3/authlib.3* +%if %{with ldap} %files authldap %defattr(644,root,root,755) %doc authldap.schema README.ldap %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/authlib/authldaprc -%attr(755,root,root) %{_libexecdir}/courier-authlib/libauthldap.so.*.*.* -%{_libexecdir}/courier-authlib/libauthldap.la +%attr(755,root,root) %{_libdir}/courier-authlib/libauthldap.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libauthldap.so.0 +%{_libdir}/courier-authlib/libauthldap.la +%endif %files authmysql %defattr(644,root,root,755) %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/authlib/authmysqlrc -%attr(755,root,root) %{_libexecdir}/courier-authlib/libauthmysql.so.*.*.* -%{_libexecdir}/courier-authlib/libauthmysql.la +%attr(755,root,root) %{_libdir}/courier-authlib/libauthmysql.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libauthmysql.so.0 +%{_libdir}/courier-authlib/libauthmysql.la %files authpgsql %defattr(644,root,root,755) %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/authlib/authpgsqlrc -%attr(755,root,root) %{_libexecdir}/courier-authlib/libauthpgsql.so.*.*.* -%{_libexecdir}/courier-authlib/libauthpgsql.la +%attr(755,root,root) %{_libdir}/courier-authlib/libauthpgsql.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libauthpgsql.so.0 +%{_libdir}/courier-authlib/libauthpgsql.la + +%files authpipe +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/courier-authlib/libauthpipe.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libauthpipe.so.0 +%{_libdir}/courier-authlib/libauthpipe.la + +%files authsqlite +%defattr(644,root,root,755) +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/authlib/authsqliterc +%attr(755,root,root) %{_libdir}/courier-authlib/libauthsqlite.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libauthsqlite.so.0 +%{_libdir}/courier-authlib/libauthsqlite.la -%files userdb +%files authuserdb %defattr(644,root,root,755) %attr(700,root,root) %dir %{_sysconfdir}/authlib/userdb %attr(755,root,root) %{_sbindir}/makeuserdb @@ -626,16 +664,15 @@ fi %attr(755,root,root) %{_sbindir}/userdb %attr(755,root,root) %{_sbindir}/userdb-test-cram-md5 %attr(755,root,root) %{_sbindir}/userdbpw -%attr(755,root,root) %{_sbindir}/vchkpw2userdb -%attr(755,root,root) %{_libexecdir}/courier-authlib/libauthuserdb.so.*.*.* -%{_libexecdir}/courier-authlib/libauthuserdb.la -%{_mandir}/man8/*userdb* - -%files pipe -%defattr(644,root,root,755) -%attr(755,root,root) %{_libexecdir}/courier-authlib/libauthpipe.so.*.*.* -%{_libexecdir}/courier-authlib/libauthpipe.la - +%attr(755,root,root) %{_libdir}/courier-authlib/libauthuserdb.so +%attr(755,root,root) %ghost %{_libdir}/courier-authlib/libauthuserdb.so.0 +%{_libdir}/courier-authlib/libauthuserdb.la +%{_mandir}/man8/makeuserdb.8* +%{_mandir}/man8/userdb.8* +%{_mandir}/man8/userdbpw.8* + +%if %{with ldap} %files -n openldap-schema-courier %defattr(644,root,root,755) -%{schemadir}/*.schema +%{schemadir}/courier.schema +%endif