# Conditional build:
# _without_ldap without LDAP support
# _without_tls without TLS (SSL) support
+# _with_pgsql without pgsql support (bluelabs)
Summary: A widely used Mail Transport Agent (MTA)
Summary(de): sendmail-Mail-Übertragungsagent
+Summary(es): Sendmail - agente de transporte de mail
Summary(fr): Agent de transport de courrier sendmail
Summary(pl): Sendmail - serwer poczty elektronicznej
+Summary(pt_BR): Sendmail - agente de transporte de mail
+Summary(ru): ðÏÞÔÏ×ÙÊ ÔÒÁÎÓÐÏÒÔÎÙÊ ÁÇÅÎÔ sendmail
Summary(tr): Elektronik posta hizmetleri sunucusu
+Summary(uk): ðÏÛÔÏ×ÉÊ ÔÒÁÎÓÐÏÒÔÎÉÊ ÁÇÅÎÔ sendmail
Name: sendmail
-Version: 8.12.1
-Release: 5
+Version: 8.12.6
+Release: 1
License: BSD
Group: Networking/Daemons
-Group(cs): Sí»ové/Démoni
-Group(da): Netværks/Dæmoner
-Group(de): Netzwerkwesen/Server
-Group(es): Red/Servidores
-Group(fr): Réseau/Serveurs
-Group(is): Net/Púkar
-Group(it): Rete/Demoni
-Group(no): Nettverks/Daemoner
-Group(pl): Sieciowe/Serwery
-Group(pt): Rede/Servidores
-Group(ru): óÅÔØ/äÅÍÏÎÙ
-Group(sl): Omre¾ni/Stre¾niki
-Group(sv): Nätverk/Demoner
-Group(uk): íÅÒÅÖÁ/äÅÍÏÎÉ
Source0: ftp://ftp.sendmail.org/pub/sendmail/%{name}.%{version}.tar.gz
Source1: %{name}.init
-Source2: http://www.informatik.uni-kiel.de/~ca/email/rules/check.tar
-Source3: aliases
-Source4: %{name}.sysconfig
+Source2: %{name}.sysconfig
+Source3: %{name}.aliases
+# From http://doc.phpauction.org/sendmail/examples/
+Source4: %{name}-examples.tar.bz2
Source5: %{name}-etc-mail-Makefile
Source6: %{name}.mc
Source7: %{name}-config.m4
Source8: %{name}.sasl
-Patch0: %{name}-makefile.patch
-Patch1: %{name}-makemapman.patch
-Patch2: %{name}-smrsh-paths.patch
-Patch3: %{name}-rmail.patch
-Patch4: %{name}-os-paths.patch
-Patch5: %{name}-m4path.patch
-Patch6: %{name}-dtelnet.patch
-Patch7: %{name}-pld.mc.patch
-Patch8: %{name}-redirect.patch
-Patch9: %{name}-hprescan-dos.patch
-BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+Source9: %{name}.access
+Source10: %{name}.mailertable
+Source11: %{name}.virtusertable
+Source12: %{name}.domaintable
+Source13: %{name}-smtp.pamd
+Patch0: %{name}-makemapman.patch
+Patch1: %{name}-smrsh-paths.patch
+Patch2: %{name}-rmail.patch
+Patch3: %{name}-os-paths.patch
+Patch4: %{name}-m4path.patch
+Patch5: %{name}-redirect.patch
+Patch6: %{name}-hprescan-dos.patch
+Patch7: http://blue-labs.org/clue/bluelabs.patch-8.12.3
BuildRequires: cyrus-sasl-devel
BuildRequires: db3-devel
%{!?_without_ldap:BuildRequires: openldap-devel}
%{!?_without_tls:BuildRequires: openssl-devel}
+%{?_with_pgsql:BuildRequires: postgresql-devel}
Requires: m4
Requires: procmail
-PreReq: /sbin/chkconfig
-PreReq: /usr/sbin/groupadd
-PreReq: /usr/sbin/useradd
-PreReq: /usr/sbin/groupdel
-PreReq: /usr/sbin/userdel
-Requires(pre): /usr/bin/getgid
Requires(pre): /bin/id
+Requires(pre): /usr/bin/getgid
+Requires(pre): /usr/sbin/groupadd
+Requires(pre): /usr/sbin/useradd
Requires(post): awk
Requires(post): textutils
+Requires(post,preun):/sbin/chkconfig
+Requires(postun): /usr/sbin/groupdel
+Requires(postun): /usr/sbin/userdel
Provides: smtpdaemon
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Obsoletes: smtpdaemon
Obsoletes: exim
Obsoletes: masqmail
Netzwerk-Gateways und flexible Konfiguration. Wenn Sie E-Mails über
das Internet senden und empfangen möchten, brauchen Sie sendmail.
+%description -l es
+sendmail es un agente de transporte de correo electrónico, que mueve
+mensajes entre máquinas. Implementa facilidades de internetwork y
+rutado, caracterizando cambio de nombres (aliases) y envío a nuevas
+direcciones ( forwarding ), rutado automático para gateways de la red
+y configuración flexible. Necesitarás del sendmail si deseas enviar y
+recibir mensajes a través de la Internet.
+
%description -l fr
Sendmail est un agent de transport de courrier, qui est le programme
transférent le courrier d'une machine à l'autre. Sendmail implémente
mo¿liwo¶ciom konfiguracyjnym jest w stanie dostarczaæ przesy³ki za
po¶rednictwem protoko³ów: SMTP, ESMTP, UUCP, X.400 i innych.
+%description -l pt_BR
+O sendmail é um agente de transporte de correio eletrônico, que move
+mensagens entre máquinas. Ele implementa facilidades de internetwork e
+roteamento, caracterizando troca de nomes (aliases) e remessa a novos
+endereços ( forwarding ), roteamento automático para gateways da rede
+e configuração flexível.
+
+%description -l ru
+Sendmail - ÜÔÏ Mail Transport Agent, ÐÒÏÇÒÁÍÍÁ ÐÅÒÅÓÙÌÁÀÝÁÑ ÐÏÞÔÕ Ó
+ÍÁÛÉÎÙ ÎÁ ÍÁÛÉÎÕ. Sendmail ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ÓÔÁÎÄÁÒÔÎÙÅ ÓÒÅÄÓÔ×Á
+ÍÅÖÓÅÔÅ×ÏÊ ÍÁÒÛÒÕÔÉÚÁÃÉÉ ÐÏÞÔÙ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÅÓËÕÀ
+ÍÁÒÛÒÕÔÉÚÁÃÉÀ ÄÌÑ ÓÅÔÅ×ÙÈ ÛÌÀÚÏ× É ÇÉÂËÉÊ ÍÅÈÁÎÉÚÍ ËÏÎÆÉÇÕÒÁÃÉÉ.
+
%description -l tr
Sendmail, bir mektubu bir makineden diðerine taþýr. Pek çok davranýþý
ayarlanabilir. Internet üzerinden mektup almak veya göndermek
istiyorsanýz bu pakete gereksiniminiz olacaktýr.
+%description -l uk
+Sendmail - ÃÅ Mail Transport Agent, ÐÒÏÇÒÁÍÁ ÝÏ ÐÅÒÅÓÉÌÁ¤ ÐÏÛÔÕ Ú
+ÍÁÛÉÎÉ ÎÁ ÍÁÛÉÎÕ. Sendmail ÎÁÄÁ¤ ÓÔÁÎÄÁÒÔΦ ÚÁÓÏÂÉ Í¦ÖÍÅÒÅÖÅ×ϧ
+ÍÁÒÛÒÕÔÉÚÁæ§ ÐÏÛÔÉ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÎÕ ÍÁÒÛÒÕÔÉÚÁæÀ
+ÄÌÑ ÍÅÒÅÖÅ×ÉÈ ÛÌÀÚ¦× ÔÁ ÇÎÕÞËÉÊ ÍÅÈÁΦÚÍ ÍÁÒÛÒÕÔÉÚÁæ§.
+
%prep
%setup -q
%patch0 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
+%if %{?_with_pgsql:1}%{!?_with_pgsql:0}
%patch7 -p1
-%patch8 -p1
-%patch9 -p1
-
-# seems to be obsoleted...
-#tar xf %{SOURCE2} -C cf
+%endif
-sed -e 's|@@PATH@@|\.\.|' < %{SOURCE6} > cf/cf/redhat.mc
+sed -e 's|@@PATH@@|\.\.|' < %{SOURCE6} > cf/cf/pld.mc
install %{SOURCE7} config.m4
%build
+echo "define(\`confCC', \`%{__cc}')" >> config.m4
+echo "define(\`confOPTIMIZE', \`%{rpmcflags} -DUSE_VENDOR_CF_PATH=1 -DNETINET6')" >> config.m4
%if %{?debug:0}%{!?debug:1}
echo "define(\`confLDOPTS', \`-s')" >> config.m4
%endif
echo "APPENDDEF(\`confMAPDEF', \`-DLDAPMAP')" >> config.m4
echo "APPENDDEF(\`confLIBS', \`-lldap -llber')" >> config.m4
%endif
+%if %{?_with_pgsql:1}%{!?_with_pgsql:0}
+echo "APPENDDEF(\`confENVDEF', \`-DSASL')" >> config.m4
+echo "APPENDDEF(\`confMAPDEF', \`-DPGSQLMAP')" >> config.m4
+echo "APPENDDEF(\`confLIBS', \`-lpq -lresolv')" >> config.m4
+echo "APPENDDEF(\`confLIBS', \`-lsasl -lcrypto')" >> config.m4
+%endif
%if %{?_without_tls:0}%{!?_without_tls:1}
echo "APPENDDEF(\`confENVDEF', \`-DSTARTTLS')" >> config.m4
echo "APPENDDEF(\`confLIBS', \`-lssl -lcrypto')" >> config.m4
%endif
-RPM_OPT_FLAGS="%{rpmcflags} -DUSE_VENDOR_CF_PATH=1 -DNETINET6"
-export RPM_OPT_FLAGS
-
cd sendmail && sh Build -f ../config.m4
cd ../mailstats && sh Build -f ../config.m4
cd ../rmail && sh Build -f ../config.m4
cd ../praliases && sh Build -f ../config.m4
cd ../smrsh && sh Build -f ../config.m4
cd ../cf/cf
-m4 redhat.mc > redhat.cf
+m4 pld.mc > pld.cf
%install
rm -rf $RPM_BUILD_ROOT
$RPM_BUILD_ROOT%{_mandir}/man{1,5,8} \
$RPM_BUILD_ROOT/var/log $RPM_BUILD_ROOT/var/spool/mqueue \
$RPM_BUILD_ROOT%{_libdir}/sendmail-cf \
+ $RPM_BUILD_ROOT/etc/pam.d \
OBJDIR=obj.$(uname -s).$(uname -r).$(arch)
cd -
# sendmail.{cf,mc}
-install cf/cf/redhat.cf $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf
+install cf/cf/pld.cf $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf
sed -e 's|@@PATH@@|%{_libdir}/sendmail-cf|' < %{SOURCE6} \
> $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.mc
+%if %{?_with_pgsql:1}%{!?_with_pgsql:0}
+install bluelabs.mc $RPM_BUILD_ROOT%{_sysconfdir}/bluelabs.mc
+%endif
+
# submit.mc (submit.cf is installed automatically)
install cf/cf/submit.mc $RPM_BUILD_ROOT%{_sysconfdir}
ln -sf ../sbin/sendmail $RPM_BUILD_ROOT%{_bindir}/${f}
done
-cat <<EOF > $RPM_BUILD_ROOT%{_sysconfdir}/access
-# Check the %{_prefix}/doc/sendmail-%{version}/README.cf file for a description
-# of the format of this file. (search for access_db in that file)
-# The %{_prefix}/doc/sendmail-%{version}/README.cf is part of the sendmail-doc
-# package.
-#
-# by default we allow relaying from localhost...
-localhost.localdomain RELAY
-localhost RELAY
-127.0.0.1 RELAY
-EOF
for map in virtusertable access domaintable mailertable ; do
touch $RPM_BUILD_ROOT%{_sysconfdir}/${map}
$RPM_BUILD_ROOT%{_bindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
$RPM_BUILD_ROOT%{_sysconfdir}/aliases.db < %{SOURCE3}
-install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/sendmail
+install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/sendmail
install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sendmail
install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/Makefile
install %{SOURCE8} $RPM_BUILD_ROOT/etc/sasl/Sendmail.conf
+install %{SOURCE13} $RPM_BUILD_ROOT/etc/pam.d/smtp
+install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/access
+install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/mailertable
+install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/virtusertable
+install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/domaintable
mv -f smrsh/README README.smrsh
mv -f cf/README README.cf
mv -f doc/op/op.me .
-gzip -9nf FAQ KNOWNBUGS README* op.me RELEASE_NOTES
+bzip2 -dc %{SOURCE4} | tar xf -
%clean
rm -rf $RPM_BUILD_ROOT
%pre
if [ -n "`/usr/bin/getgid smmsp`" ]; then
if [ "`/usr/bin/getgid smmsp`" != "25" ]; then
- echo "Warning: group smmsp haven't gid=25. Correct this before installing sendmail." 1>&2
+ echo "Error: group smmsp doesn't have gid=25. Correct this before installing sendmail." 1>&2
exit 1
fi
else
fi
if [ -n "`/bin/id -u smmsp 2>/dev/null`" ]; then
if [ "`/bin/id -u smmsp`" != "25" ]; then
- echo "Warning: user smmsp haven't uid=25. Correct this before installing sendmail." 1>&2
+ echo "Error: user smmsp doesn't have uid=25. Correct this before installing sendmail." 1>&2
exit 1
fi
else
cat /etc/mail/deny | \
awk 'BEGIN{ print "# Entries from obsoleted /etc/mail/deny"} \
{print $1" REJECT"}' >> /etc/mail/access
- cp -f /etc/mail/deny /etc/mail/deny.rpmorig
+ mv -f /etc/mail/deny /etc/mail/deny.rpmorig
fi
for oldfile in relay_allow ip_allow name_allow ; do
if [ -f /etc/mail/$oldfile ] ; then
cat /etc/mail/$oldfile | \
awk "BEGIN { print \"# Entries from obsoleted /etc/mail/$oldfile\" ;} \
{ print $1\" RELAY\" }" >> /etc/mail/access
- cp -f /etc/mail/$oldfile /etc/mail/$oldfile.rpmorig
+ mv -f /etc/mail/$oldfile /etc/mail/$oldfile.rpmorig
fi
done
cat /etc/sendmail.cw | \
awk 'BEGIN { print "# Entries from obsoleted /etc/sendmail.cw" ;} \
{ print $1 }' >> /etc/mail/local-host-names
- cp -f /etc/sendmail.cw /etc/sendmail.cw.rpmorig
+ mv -f /etc/sendmail.cw /etc/sendmail.cw.rpmorig
fi
#
# Rebuild maps (next reboot will rebuild also)
%files
%defattr(644,root,root,755)
-%doc *.gz
+%doc FAQ KNOWNBUGS README* op.me RELEASE_NOTES examples/
%attr(755,root,root) %{_sbindir}/mailstats
%attr(755,root,root) %{_sbindir}/praliases
%attr(755,root,root) %{_bindir}/hoststat
%attr(755,root,root) %{_sbindir}/smrsh
%{_libdir}/sendmail
-%{_mandir}/man8/rmail.8*
-%{_mandir}/man8/praliases.8*
+%{_mandir}/man1/mailq.1*
+%{_mandir}/man1/newaliases.1*
+%{_mandir}/man5/aliases.5*
%{_mandir}/man8/mailstats.8*
%{_mandir}/man8/makemap.8*
+%{_mandir}/man8/praliases.8*
+%{_mandir}/man8/rmail.8*
%{_mandir}/man8/sendmail.8*
-%{_mandir}/man5/aliases.5*
-%{_mandir}/man1/newaliases.1*
-%{_mandir}/man1/mailq.1*
+%{_mandir}/man8/smrsh.8*
%dir /etc/smrsh
%dir %{_sysconfdir}
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/submit.mc
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/local-host-names
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/aliases
-%ghost %{_sysconfdir}/aliases.db
-%attr(0770,root,smmsp) %dir /var/spool/clientmqueue
-%attr(0750,root,mail) %dir /var/spool/mqueue
+%{?_with_pgsql:%{_sysconfdir}/bluelabs.mc}
+%attr(644,root,mail) %ghost %{_sysconfdir}/aliases.db
+%attr(770,root,smmsp) %dir /var/spool/clientmqueue
+%attr(750,root,mail) %dir /var/spool/mqueue
%config %{_sysconfdir}/Makefile
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/access
%attr(754,root,root) /etc/rc.d/init.d/sendmail
%config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/sendmail
%config(noreplace) %verify(not md5 size mtime) /etc/sasl/Sendmail.conf
+%config(noreplace) %verify(not md5 size mtime) /etc/pam.d/smtp
%dir %{_libdir}/sendmail-cf
%dir %{_libdir}/sendmail-cf/cf