]> git.pld-linux.org Git - packages/courier-authlib.git/blobdiff - courier-authlib.spec
- package authdaemon/socket (as ghost); rel 7
[packages/courier-authlib.git] / courier-authlib.spec
index eff3388b9e91a6c0aea9f5b27a95fb77a5398b47..17cb4524faf44ae71365807ecbf48f609cb0070b 100644 (file)
@@ -1,36 +1,44 @@
 Summary:       Courier authentication library
 Summary(pl):   Biblioteka uwierzytelniania Couriera
 Name:          courier-authlib
-Version:       0.57
-Release:       1
+Version:       0.58
+Release:       7
 License:       GPL
 Group:         Networking/Daemons
 Source0:       http://dl.sourceforge.net/courier/%{name}-%{version}.tar.bz2
-# Source0-md5: af146ac84f0c3ee00006af50b4415d8a
+# Source0-md5: fb691558d611cb191ae6a83002f0195b
 Source1:       %{name}.init
 Patch0:                %{name}-build.patch
 Patch1:                %{name}-md5sum-passwords.patch
+Patch2:                %{name}-authdaemonrc.patch
 URL:           http://www.courier-mta.org/authlib/
 BuildRequires: autoconf
 BuildRequires: automake
 BuildRequires: db-devel
 BuildRequires: expect
+BuildRequires: libltdl-devel
 BuildRequires: libtool
 BuildRequires: mysql-devel
-BuildRequires: openldap-devel
+BuildRequires: openldap-devel >= 2.3.0
 BuildRequires: pam-devel
 BuildRequires: postgresql-devel
+BuildRequires: rpmbuild(macros) >= 1.304
 BuildRequires: sed >= 4.0
 BuildRequires: sysconftool
 BuildRequires: zlib-devel
+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
 Obsoletes:     sqwebmail-auth-shadow
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%define                schemadir       /usr/share/openldap/schema
+
 %description
 The Courier authentication library provides authentication services
 for other Courier applications.
@@ -39,6 +47,23 @@ for other Courier applications.
 Biblioteka uwierzytelniania Couriera dostarcza us³ugi uwierzytelniania
 dla innych aplikacji Couriera.
 
+%package libs
+Summary:       Courier authentication library
+Summary(pl):   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
+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
@@ -67,7 +92,8 @@ potrzebne w czasie dzia
 Summary:       LDAP support for the Courier authentication library
 Summary(pl):   Obs³uga LDAP dla biblioteki uwierzytelniania Couriera
 Group:         Networking/Daemons
-PreReq:                %{name} = %{version}-%{release}
+Requires(pre,postun):  sed >= 4.0
+Requires:      %{name} = %{version}-%{release}
 Obsoletes:     courier-authldap
 Obsoletes:     courier-imap-authldap
 Obsoletes:     sqwebmail-auth-ldap
@@ -86,7 +112,8 @@ LDAP.
 Summary:       MySQL support for the Courier authentication library
 Summary(pl):   Obs³uga MySQL dla biblioteki uwierzytelniania Couriera
 Group:         Networking/Daemons
-PreReq:                %{name} = %{version}-%{release}
+Requires(pre,postun):  sed >= 4.0
+Requires:      %{name} = %{version}-%{release}
 Obsoletes:     courier-authmysql
 Obsoletes:     courier-imap-authmysql
 Obsoletes:     sqwebmail-auth-mysql
@@ -105,7 +132,8 @@ MySQL.
 Summary:       PostgreSQL support for the Courier authentication library
 Summary(pl):   Obs³uga PostgreSQL dla biblioteki uwierzytelniania Couriera
 Group:         Networking/Daemons
-PreReq:                %{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,7 +152,8 @@ PostgreSQL.
 Summary:       Userdb support for the Courier authentication library
 Summary(pl):   Obs³uga userdb dla biblioteki uwierzytelniania Couriera
 Group:         Networking/Daemons
-PreReq:                %{name} = %{version}-%{release}
+Requires(pre,postun):  sed >= 4.0
+Requires:      %{name} = %{version}-%{release}
 Obsoletes:     courier-imap-userdb
 Obsoletes:     sqwebmail-auth-userdb
 
@@ -146,7 +175,8 @@ Nale
 Summary:       External authentication module that communicates via pipes
 Summary(pl):   Zewnêtrzny modu³ uwierzytelniaj±cy komunikuj±cy siê przez potoki
 Group:         Networking/Daemons
-PreReq:                %{name} = %{version}-%{release}
+Requires(pre,postun):  sed >= 4.0
+Requires:      %{name} = %{version}-%{release}
 
 %description pipe
 This package installs the authpipe module, which is a generic plugin
@@ -158,22 +188,37 @@ Pakiet ten instaluje modu
 umo¿liwiaj±c± obs³ugê ¿±dañ uwierzytelnienia przez zewnêtrzny program
 komunikuj±cy siê poprzez wiadomo¶ci wysy³ane na stdin i stdout.
 
+%package -n openldap-schema-courier
+Summary:       Courier LDAP schema
+Summary(pl):   Schemat LDAP Couriera
+Group:         Networking/Daemons
+Requires(post,postun): sed >= 4.0
+Requires:      openldap-servers
+Requires:      sed >= 4.0
+
+%description -n openldap-schema-courier
+This package contains Courier authldap.schema for openldap.
+
+%description -n openldap-schema-courier -l pl
+Ten pakiet zawiera schemat Couriera authldap.schema dla openldapa.
+
 %prep
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 
 %build
 cp /usr/share/automake/config.sub libltdl
 %{__libtoolize}
 
 # Change Makefile.am files and force recreate Makefile.in's.
-OLDDIR=`pwd`
-find -type f -a \( -name configure.in -o -name configure.ac \) | while read FILE; do
-       cd "`dirname "$FILE"`"
+OLDDIR=$(pwd)
+for FILE in {,*/}configure.{in,ac}; do
+       cd "$(dirname "$FILE")"
 
        if [ -f Makefile.am ]; then
-               sed -i -e '/_LDFLAGS=-static/d' Makefile.am
+               sed -i -e '/_[L]DFLAGS=-static/d' Makefile.am
        fi
 
        %{__aclocal}
@@ -194,104 +239,136 @@ done
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install \
+%{__make} -j1 install \
        DESTDIR=$RPM_BUILD_ROOT
 
-install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_sysconfdir}/authlib/userdb}
+install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_sysconfdir}/authlib/userdb,%{schemadir}}
 
 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-authlib
+install authldap.schema $RPM_BUILD_ROOT%{schemadir}/courier.schema
 
 # make config files
 ./sysconftool $RPM_BUILD_ROOT%{_sysconfdir}/authlib/*.dist
 rm -f $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
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+
 %post
 /sbin/ldconfig %{_libexecdir}/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
 
-%post authldap
+%post libs
 /sbin/ldconfig %{_libexecdir}/courier-authlib
-if [ -f /var/lock/subsys/courier-authlib ]; then
-       /etc/rc.d/init.d/courier-authlib restart
+
+%postun libs
+/sbin/ldconfig %{_libexecdir}/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
+%service -q courier-authlib restart
 
 %postun authldap
-/sbin/ldconfig %{_libexecdir}/courier-authlib
-if [ -f /var/lock/subsys/courier-authlib ]; then
-       /etc/rc.d/init.d/courier-authlib restart
+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
+%service -q courier-authlib restart
 
 %post authmysql
-/sbin/ldconfig %{_libexecdir}/courier-authlib
-if [ -f /var/lock/subsys/courier-authlib ]; then
-       /etc/rc.d/init.d/courier-authlib restart
+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
+%service -q courier-authlib restart
 
 %postun authmysql
-/sbin/ldconfig %{_libexecdir}/courier-authlib
-if [ -f /var/lock/subsys/courier-authlib ]; then
-       /etc/rc.d/init.d/courier-authlib restart
+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
+%service -q courier-authlib restart
 
 %post authpgsql
-/sbin/ldconfig %{_libexecdir}/courier-authlib
-if [ -f /var/lock/subsys/courier-authlib ]; then
-       /etc/rc.d/init.d/courier-authlib restart
+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
+%service -q courier-authlib restart
 
 %postun authpgsql
-/sbin/ldconfig %{_libexecdir}/courier-authlib
-if [ -f /var/lock/subsys/courier-authlib ]; then
-       /etc/rc.d/init.d/courier-authlib restart
+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
+%service -q courier-authlib restart
 
 %post userdb
-/sbin/ldconfig %{_libexecdir}/courier-authlib
-if [ -f /var/lock/subsys/courier-authlib ]; then
-       /etc/rc.d/init.d/courier-authlib restart
+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
+%service -q courier-authlib restart
 
 %postun userdb
-/sbin/ldconfig %{_libexecdir}/courier-authlib
-if [ -f /var/lock/subsys/courier-authlib ]; then
-       /etc/rc.d/init.d/courier-authlib restart
+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
+%service -q courier-authlib restart
 
 %post pipe
-/sbin/ldconfig %{_libexecdir}/courier-authlib
-if [ -f /var/lock/subsys/courier-authlib ]; then
-       /etc/rc.d/init.d/courier-authlib restart
+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
+%service -q courier-authlib restart
 
 %postun pipe
+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
+%service -q courier-authlib restart
+
+%post -n openldap-schema-courier
+%openldap_schema_register %{schemadir}/courier.schema -d nis,cosine
+%service -q ldap restart
+
+%postun -n openldap-schema-courier
+if [ "$1" = "0" ]; then
+       %openldap_schema_unregister %{schemadir}/courier.schema
+       %service -q ldap restart
 fi
 
 %triggerin -- courier < 0.48
@@ -308,7 +385,7 @@ 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
 
@@ -326,7 +403,7 @@ 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
 
@@ -344,7 +421,7 @@ 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
 
@@ -352,81 +429,63 @@ 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
@@ -464,7 +523,6 @@ fi
 # COPYING contains only note
 %doc AUTHORS COPYING ChangeLog NEWS README README*html README.authmysql.myownquery authldap.schema
 %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
@@ -472,7 +530,6 @@ fi
 %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.*.*.*
@@ -483,6 +540,7 @@ fi
 %{_libexecdir}/courier-authlib/libcourierauthsasl.la
 %{_libexecdir}/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
@@ -490,13 +548,18 @@ fi
 %attr(755,root,root) %{_sbindir}/courierlogger
 %{_mandir}/man1/*
 
+%files libs
+%defattr(644,root,root,755)
+%dir %{_libexecdir}/courier-authlib
+%attr(755,root,root) %{_libexecdir}/courier-authlib/libcourierauth.so.*.*.*
+
 %files devel
 %defattr(644,root,root,755)
 %doc authlib.html auth_*.html
 %attr(755,root,root) %{_bindir}/courierauthconfig
 %{_includedir}/*
 %{_mandir}/man3/*
-%{_libexecdir}/courier-authlib/*.so
+%attr(755,root,root) %{_libexecdir}/courier-authlib/*.so
 
 %files authldap
 %defattr(644,root,root,755)
@@ -534,3 +597,7 @@ fi
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libexecdir}/courier-authlib/libauthpipe.so.*.*.*
 %{_libexecdir}/courier-authlib/libauthpipe.la
+
+%files -n openldap-schema-courier
+%defattr(644,root,root,755)
+%{schemadir}/*.schema
This page took 0.081016 seconds and 4 git commands to generate.