2 # - make sid-milter support:
3 # http://sourceforge.net/projects/sid-milter/
4 # http://www.sendmail.net/
5 # - http://blue-labs.org/clue/bluelabs.patch-8.12.3 has been updated upstream
6 # - move compilation from install to build section, fix re-entrancy of install
9 %bcond_without ldap # without LDAP support
10 %bcond_without tls # without TLS (SSL) support
11 %bcond_with pgsql # with PostgreSQL support (bluelabs)
13 Summary: A widely used Mail Transport Agent (MTA)
14 Summary(de): sendmail-Mail-Übertragungsagent
15 Summary(es): Sendmail - agente de transporte de mail
16 Summary(fr): Agent de transport de courrier sendmail
17 Summary(ko): SMTP_AUTH¿Í TLS¸¦ Áö¿øÇÏ´Â Mail Àü¼Û ÇÁ·Î±×·¥(MTA)
18 Summary(pl): Sendmail - serwer poczty elektronicznej
19 Summary(pt_BR): Sendmail - agente de transporte de mail
20 Summary(ru): ðÏÞÔÏ×ÙÊ ÔÒÁÎÓÐÏÒÔÎÙÊ ÁÇÅÎÔ sendmail
21 Summary(tr): Elektronik posta hizmetleri sunucusu
22 Summary(uk): ðÏÛÔÏ×ÉÊ ÔÒÁÎÓÐÏÒÔÎÉÊ ÁÇÅÎÔ sendmail
27 Group: Networking/Daemons
28 Source0: ftp://ftp.sendmail.org/pub/sendmail/%{name}.%{version}.tar.gz
29 # Source0-md5: 5f29c94b42e0bb74d546b2ae84203a1e
31 Source2: %{name}.sysconfig
32 Source3: %{name}.aliases
33 # From http://doc.phpauction.org/sendmail/examples/
34 Source4: %{name}-examples.tar.bz2
35 # Source4-md5: d00d817cd456a947a7fc6c04072a7d68
36 Source5: %{name}-etc-mail-Makefile
38 Source7: %{name}-config.m4
40 Source9: %{name}.access
41 Source10: %{name}.mailertable
42 Source11: %{name}.virtusertable
43 Source12: %{name}.domaintable
44 Source13: %{name}-smtp.pamd
45 Source14: %{name}.monitrc
46 Patch0: %{name}-makemapman.patch
47 Patch1: %{name}-smrsh-paths.patch
48 Patch2: %{name}-rmail.patch
49 Patch3: %{name}-os-paths.patch
50 Patch4: %{name}-m4path.patch
51 Patch5: %{name}-redirect.patch
52 Patch6: %{name}-hprescan-dos.patch
53 Patch7: http://blue-labs.org/clue/bluelabs.patch-8.12.3
54 URL: http://www.sendmail.org/
55 BuildRequires: cyrus-sasl-devel
56 BuildRequires: db-devel >= 4.1.25
58 %{?with_ldap:BuildRequires: openldap-devel >= 2.3.0}
59 %{?with_tls:BuildRequires: openssl-devel >= 0.9.7d}
60 %{?with_pgsql:BuildRequires: postgresql-devel}
61 BuildRequires: rpmbuild(macros) >= 1.310
63 Requires(post): textutils
64 Requires(post,preun): /sbin/chkconfig
65 Requires(post,preun): rc-scripts >= 0.4.0.20
66 Requires(postun): /usr/sbin/groupdel
67 Requires(postun): /usr/sbin/userdel
68 Requires(pre): /bin/id
69 Requires(pre): /usr/bin/getgid
70 Requires(pre): /usr/sbin/groupadd
71 Requires(pre): /usr/sbin/useradd
72 Requires: db >= 4.1.25
74 Requires: pam >= 0.79.0
76 Provides: group(smmsp)
86 Obsoletes: sendmail-cf
87 Obsoletes: sendmail-doc
92 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
94 %define _sysconfdir /etc/mail
95 %define specflags -fPIC
98 The Sendmail program is a very widely used Mail Transport Agent (MTA).
99 MTAs send mail from one machine to another. Sendmail is not a client
100 program, which you use to read your e-mail. Sendmail is a
101 behind-the-scenes program which actually moves your e-mail over
102 networks or the Internet to where you want it to go.
105 Sendmail überträgt Mails zwischen Rechnern. Es implementiert eine
106 allgemeine Mail-Routing-Funktion über das Netzwerk mit Aliasing und
107 Weiterleiten von Nachrichten, automatischem Routing an
108 Netzwerk-Gateways und flexible Konfiguration. Wenn Sie E-Mails über
109 das Internet senden und empfangen möchten, brauchen Sie sendmail.
112 sendmail es un agente de transporte de correo electrónico, que mueve
113 mensajes entre máquinas. Implementa facilidades de internetwork y
114 rutado, caracterizando cambio de nombres (aliases) y envío a nuevas
115 direcciones ( forwarding ), rutado automático para gateways de la red
116 y configuración flexible. Necesitarás del sendmail si deseas enviar y
117 recibir mensajes a través de la Internet.
120 Sendmail est un agent de transport de courrier, qui est le programme
121 transférent le courrier d'une machine à l'autre. Sendmail implémente
122 une facilité générale de routage de courrier entre les réseaux, permet
123 l'\"aliasing\" et le \"forwarding\", un routage automatique sur les
124 passerelles du réseau, et une configuration flexible.
127 SendamilÀº ¸Å¿ì ³Î¸® »ç¿ëµÇ´Â Mail Àü¼Û ÇÁ·Î±×·¥ÀÌ´Ù(MTA). Mail Àü¼Û
128 ÇÁ·Î±×·¥µé(MTA)Àº ¾î¶°ÇÑ machine¿¡¼ ´Ù¸¥ machineÀ¸·Î ¸ÞÀÏÀ» º¸³»¸ç
129 SendmailÀº e-mailÀ» ÀбâÀ§ÇØ »ç¿ëÇÏ´Â client programÀº ¾Æ´Ï´Ù.
130 SendamilÀº ¿øÇÏ´Â °÷À¸·Î InternetÀ̳ª Network¸¦ ÅëÇØ e-mailÀ» º¸³»´Â
131 ¿ªÇÒÀ» ÇÏ´Â backgrond¿¡¼ ÀÛ¾÷À» ÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù.
134 Sendmail jest programem umo¿liwiaj±cym wymianê poczty elektronicznej
135 miêdzy komputerami w sieci (MTA). Zajmuje siê przekazywaniem poczty
136 elektronicznej miêdzy bramkami pocztowymi i dostarczaniem przesy³ek na
137 konta docelowe. Bardzo dobrze obs³uguje aliasy pocztowe a jego
138 dodatkowym atutem jest prosta konfiguracja. Dziêki rozbudowanym
139 mo¿liwo¶ciom konfiguracyjnym jest w stanie dostarczaæ przesy³ki za
140 po¶rednictwem protoko³ów: SMTP, ESMTP, UUCP, X.400 i innych.
142 %description -l pt_BR
143 O sendmail é um agente de transporte de correio eletrônico, que move
144 mensagens entre máquinas. Ele implementa facilidades de internetwork e
145 roteamento, caracterizando troca de nomes (aliases) e remessa a novos
146 endereços ( forwarding ), roteamento automático para gateways da rede
147 e configuração flexível.
150 Sendmail - ÜÔÏ Mail Transport Agent, ÐÒÏÇÒÁÍÍÁ ÐÅÒÅÓÙÌÁÀÝÁÑ ÐÏÞÔÕ Ó
151 ÍÁÛÉÎÙ ÎÁ ÍÁÛÉÎÕ. Sendmail ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ÓÔÁÎÄÁÒÔÎÙÅ ÓÒÅÄÓÔ×Á
152 ÍÅÖÓÅÔÅ×ÏÊ ÍÁÒÛÒÕÔÉÚÁÃÉÉ ÐÏÞÔÙ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÅÓËÕÀ
153 ÍÁÒÛÒÕÔÉÚÁÃÉÀ ÄÌÑ ÓÅÔÅ×ÙÈ ÛÌÀÚÏ× É ÇÉÂËÉÊ ÍÅÈÁÎÉÚÍ ËÏÎÆÉÇÕÒÁÃÉÉ.
156 Sendmail, bir mektubu bir makineden diðerine taþýr. Pek çok davranýþý
157 ayarlanabilir. Internet üzerinden mektup almak veya göndermek
158 istiyorsanýz bu pakete gereksiniminiz olacaktýr.
161 Sendmail - ÃÅ Mail Transport Agent, ÐÒÏÇÒÁÍÁ ÝÏ ÐÅÒÅÓÉÌÁ¤ ÐÏÛÔÕ Ú
162 ÍÁÛÉÎÉ ÎÁ ÍÁÛÉÎÕ. Sendmail ÎÁÄÁ¤ ÓÔÁÎÄÁÒÔΦ ÚÁÓÏÂÉ Í¦ÖÍÅÒÅÖÅ×ϧ
163 ÍÁÒÛÒÕÔÉÚÁæ§ ÐÏÛÔÉ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÎÕ ÍÁÒÛÒÕÔÉÚÁæÀ
164 ÄÌÑ ÍÅÒÅÖÅ×ÉÈ ÛÌÀÚ¦× ÔÁ ÇÎÕÞËÉÊ ÍÅÈÁΦÚÍ ÍÁÒÛÒÕÔÉÚÁæ§.
167 Summary: Header files and static libmilter library
168 Summary(pl): Pliki nag³ówkowe i statyczna biblioteka libmilter
169 Group: Development/Libraries
172 Header files and static libmilter library.
174 %description devel -l pl
175 Pliki nag³ówkowe i statyczna biblioteka libmilter.
186 %{?with_pgsql:%patch7 -p1}
188 sed -e 's|@@PATH@@|\.\.|' < %{SOURCE6} > cf/cf/pld.mc
190 install %{SOURCE7} config.m4
192 # Ac-specific hack - ac-i386 builder has not fully operational shm
193 %ifarch i386 i586 i686 amd64
194 %{__perl} -pi -e 's/^(smtest.*t-shm)/dnl $1/' libsm/Makefile.m4
198 echo "define(\`confCC', \`%{__cc}')" >> config.m4
199 echo "define(\`confOPTIMIZE', \`%{rpmcflags} -DUSE_VENDOR_CF_PATH=1 -DNETINET6')" >> config.m4
200 echo "APPENDDEF(\`confINCDIRS', \`-I/usr/include/sasl')" >> config.m4
201 echo "define(\`confLIBSEARCHPATH', \`/%{_lib} %{_prefix}/%{_lib}')" >> config.m4
202 echo "define(\`confLIBSEARCH', \`db resolv')" >> config.m4
204 echo "define(\`confLDOPTS', \`-s')" >> config.m4
207 echo "APPENDDEF(\`confMAPDEF', \`-DLDAPMAP')" >> config.m4
208 echo "APPENDDEF(\`confLIBS', \`-lldap -llber')" >> config.m4
211 echo "APPENDDEF(\`confENVDEF', \`-DSASL')" >> config.m4
212 echo "APPENDDEF(\`confMAPDEF', \`-DPGSQLMAP')" >> config.m4
213 echo "APPENDDEF(\`confLIBS', \`-lpq -lresolv')" >> config.m4
214 echo "APPENDDEF(\`confLIBS', \`-lsasl -lcrypto')" >> config.m4
217 echo "APPENDDEF(\`confENVDEF', \`-DSTARTTLS')" >> config.m4
218 echo "APPENDDEF(\`confENVDEF', \`-D_FFR_DEAL_WITH_ERROR_SSL')" >> config.m4
219 echo "APPENDDEF(\`confLIBS', \`-lssl -lcrypto')" >> config.m4
220 echo "APPENDDEF(\`confENVDEF', \`-D_FFR_SMTP_SSL')" >> config.m4
223 echo "APPENDDEF(\`confENVDEF', \`-DMILTER')" >> config.m4
225 cd sendmail && sh Build -f ../config.m4
226 cd ../mailstats && sh Build -f ../config.m4
227 cd ../rmail && sh Build -f ../config.m4
228 cd ../makemap && sh Build -f ../config.m4
229 cd ../praliases && sh Build -f ../config.m4
230 cd ../smrsh && sh Build -f ../config.m4
231 cd ../libmilter && sh Build -f ../config.m4
236 rm -rf $RPM_BUILD_ROOT
237 install -d $RPM_BUILD_ROOT%{_mandir}/man{1,5,8} \
238 $RPM_BUILD_ROOT/etc/{rc.d/init.d,pam.d,monit,sysconfig,sasl,smrsh} \
239 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_prefix}/lib} \
240 $RPM_BUILD_ROOT{%{_datadir}/sendmail-cf,%{_libdir}} \
241 $RPM_BUILD_ROOT/var/{log,spool/mqueue} \
242 $RPM_BUILD_ROOT{%{_sysconfdir},%{_includedir}}
244 OBJDIR=obj.$(uname -s).$(uname -r).$(arch)
248 SMINSTOPT="DESTDIR=$RPM_BUILD_ROOT SBINOWN=$IDNU SBINGRP=$IDNG \
249 UBINOWN=$IDNU UBINGRP=$IDNG MANOWN=$IDNU MANGRP=$IDNG \
250 CFOWN=$IDNU CFGRP=$IDNG MSPQOWN=$IDNU GBINGRP=$IDNG GBINOWN=$IDNU \
251 BINOWN=$IDNU BINGRP=$IDNG LIBOWN=$IDNU LIBGRP=$IDNG INCOWN=$IDNU INCGRP=$IDNG"
253 %{__make} -C $OBJDIR/sendmail install \
255 %{__make} -C $OBJDIR/mailstats install \
257 %{__make} -C $OBJDIR/praliases install \
259 %{__make} -C $OBJDIR/rmail force-install \
261 %{__make} -C $OBJDIR/makemap install \
263 %{__make} -C $OBJDIR/smrsh install \
265 %{__make} -C $OBJDIR/libmilter install \
269 ln -sf %{_sbindir}/makemap $RPM_BUILD_ROOT%{_bindir}/makemap
271 # install the cf files
273 rm -f cf/{Build,Makefile} feature/*~
274 cp -a * $RPM_BUILD_ROOT%{_datadir}/sendmail-cf
278 install cf/cf/pld.cf $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf
279 sed -e 's|@@PATH@@|%{_datadir}/sendmail-cf|' < %{SOURCE6} \
280 > $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.mc
283 install bluelabs.mc $RPM_BUILD_ROOT%{_sysconfdir}/bluelabs.mc
286 # submit.mc (submit.cf is installed automatically)
287 install cf/cf/submit.mc $RPM_BUILD_ROOT%{_sysconfdir}
289 echo "# local-host-names - include all aliases for your machine here." \
290 > $RPM_BUILD_ROOT%{_sysconfdir}/local-host-names
293 ln -sf %{_sbindir}/sendmail $RPM_BUILD_ROOT%{_prefix}/lib/sendmail
296 for f in hoststat mailq newaliases purgestat; do
297 ln -sf %{_sbindir}/sendmail $RPM_BUILD_ROOT%{_bindir}/${f}
300 for map in virtusertable access domaintable mailertable; do
301 touch $RPM_BUILD_ROOT%{_sysconfdir}/${map}
302 $RPM_BUILD_ROOT%{_sbindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
303 $RPM_BUILD_ROOT%{_sysconfdir}/${map}.db < $RPM_BUILD_ROOT%{_sysconfdir}/${map}
306 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/aliases
307 $RPM_BUILD_ROOT%{_sbindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
308 $RPM_BUILD_ROOT%{_sysconfdir}/aliases.db < %{SOURCE3}
310 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/sendmail
311 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sendmail
312 install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/Makefile
313 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sasl/Sendmail.conf
314 install %{SOURCE13} $RPM_BUILD_ROOT/etc/pam.d/smtp
315 install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/access
316 install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/mailertable
317 install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/virtusertable
318 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/domaintable
319 install %{SOURCE14} $RPM_BUILD_ROOT/etc/monit/
321 mv -f smrsh/README README.smrsh
322 mv -f cf/README README.cf
325 bzip2 -dc %{SOURCE4} | tar xf -
327 # for perl-Sendmail-Milter
328 install $OBJDIR/libsm/libsm.a $OBJDIR/libsmutil/libsmutil.a \
329 $RPM_BUILD_ROOT%{_libdir}
332 rm -rf $RPM_BUILD_ROOT
335 %groupadd -g 25 smmsp
336 %useradd -u 25 -d /var/spool/clientqueue -s /bin/false -c "Sendmail Message Submission Program" -g smmsp smmsp
341 # Convert old format to new
343 if [ -f /etc/mail/deny ] ; then
344 cat /etc/mail/deny | \
345 awk 'BEGIN{ print "# Entries from obsoleted /etc/mail/deny"} \
346 {print $1" REJECT"}' >> /etc/mail/access
347 mv -f /etc/mail/deny /etc/mail/deny.rpmorig
349 for oldfile in relay_allow ip_allow name_allow ; do
350 if [ -f /etc/mail/$oldfile ] ; then
351 cat /etc/mail/$oldfile | \
352 awk "BEGIN { print \"# Entries from obsoleted /etc/mail/$oldfile\" ;} \
353 { print $1\" RELAY\" }" >> /etc/mail/access
354 mv -f /etc/mail/$oldfile /etc/mail/$oldfile.rpmorig
359 # Oops, these files moved
361 if [ -f /etc/sendmail.cw ] ; then
362 cat /etc/sendmail.cw | \
363 awk 'BEGIN { print "# Entries from obsoleted /etc/sendmail.cw" ;} \
364 { print $1 }' >> /etc/mail/local-host-names
365 mv -f /etc/sendmail.cw /etc/sendmail.cw.rpmorig
368 # Rebuild maps (next reboot will rebuild also)
370 { /usr/bin/newaliases
371 for map in virtusertable access domaintable mailertable; do
372 if [ -f /etc/mail/${map} ] ; then
373 /usr/bin/makemap hash /etc/mail/${map} < /etc/mail/${map}
379 /sbin/chkconfig --add sendmail
380 %service sendmail restart "sendmail daemon"
383 if [ "$1" = "0" ]; then
384 %service sendmail stop
385 /sbin/chkconfig --del sendmail
389 if [ "$1" = "0" ]; then
394 # removal of compatibility links
395 %triggerpostun -- sendmail < 8.10.1
396 /sbin/chkconfig --add sendmail
399 %defattr(644,root,root,755)
400 %doc FAQ KNOWNBUGS README* op.me RELEASE_NOTES examples/
401 %attr(755,root,root) %{_sbindir}/mailstats
402 %attr(755,root,root) %{_sbindir}/praliases
403 %attr(755,root,root) %{_bindir}/hoststat
404 %attr(755,root,root) %{_bindir}/purgestat
405 %attr(755,root,root) %{_bindir}/rmail
406 %attr(755,root,root) %{_bindir}/makemap
407 %attr(755,root,root) %{_sbindir}/makemap
408 %attr(2755,root,smmsp) %{_sbindir}/sendmail
409 %attr(755,root,root) %{_bindir}/newaliases
410 %attr(755,root,root) %{_bindir}/mailq
411 %attr(755,root,root) %{_sbindir}/smrsh
412 %{_prefix}/lib/sendmail
414 %{_mandir}/man1/mailq.1*
415 %{_mandir}/man1/newaliases.1*
416 %{_mandir}/man5/aliases.5*
417 %{_mandir}/man8/mailstats.8*
418 %{_mandir}/man8/makemap.8*
419 %{_mandir}/man8/praliases.8*
420 %{_mandir}/man8/rmail.8*
421 %{_mandir}/man8/sendmail.8*
422 %{_mandir}/man8/smrsh.8*
427 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sendmail.cf
428 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sendmail.mc
429 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/submit.cf
430 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/submit.mc
431 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local-host-names
432 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/aliases
433 %{?with_pgsql:%{_sysconfdir}/bluelabs.mc}
434 %attr(644,root,mail) %ghost %{_sysconfdir}/aliases.db
435 %attr(770,root,smmsp) %dir /var/spool/clientmqueue
436 %attr(750,root,mail) %dir /var/spool/mqueue
438 %config %{_sysconfdir}/Makefile
439 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/access
440 %ghost %{_sysconfdir}/access.db
441 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/domaintable
442 %ghost %{_sysconfdir}/domaintable.db
443 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mailertable
444 %ghost %{_sysconfdir}/mailertable.db
445 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/virtusertable
446 %ghost %{_sysconfdir}/virtusertable.db
447 %config(noreplace) %{_sysconfdir}/helpfile
449 %attr(754,root,root) /etc/rc.d/init.d/sendmail
450 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/sendmail
451 %config(noreplace) %verify(not md5 mtime size) /etc/sasl/Sendmail.conf
452 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/smtp
453 %attr(750,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/monit/*.monitrc
455 %dir %{_datadir}/sendmail-cf
456 %dir %{_datadir}/sendmail-cf/cf
457 %{_datadir}/sendmail-cf/cf/pld.mc
458 %{_datadir}/sendmail-cf/feature
459 %{_datadir}/sendmail-cf/m4
460 %{_datadir}/sendmail-cf/mailer
461 %dir %{_datadir}/sendmail-cf/ostype
462 %{_datadir}/sendmail-cf/ostype/linux.m4
463 %dir %{_datadir}/sendmail-cf/sh
464 %{_datadir}/sendmail-cf/sh/makeinfo.sh
465 %{_datadir}/sendmail-cf/siteconfig
468 %defattr(644,root,root,755)
469 %{_libdir}/libmilter.a
471 %{_libdir}/libsmutil.a
472 %{_includedir}/libmilter