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: 5327e065cb0c1919122c8cecbeddbc28
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 BuildRequires: cyrus-sasl-devel
55 BuildRequires: db-devel >= 4.1.25
57 %{?with_ldap:BuildRequires: openldap-devel >= 2.3.0}
58 %{?with_tls:BuildRequires: openssl-devel >= 0.9.7d}
59 %{?with_pgsql:BuildRequires: postgresql-devel}
60 BuildRequires: rpmbuild(macros) >= 1.310
62 Requires(post): textutils
63 Requires(post,preun): /sbin/chkconfig
64 Requires(post,preun): rc-scripts >= 0.4.0.20
65 Requires(postun): /usr/sbin/groupdel
66 Requires(postun): /usr/sbin/userdel
67 Requires(pre): /bin/id
68 Requires(pre): /usr/bin/getgid
69 Requires(pre): /usr/sbin/groupadd
70 Requires(pre): /usr/sbin/useradd
71 Requires: db >= 4.1.25
73 Requires: pam >= 0.79.0
75 Provides: group(smmsp)
85 Obsoletes: sendmail-cf
86 Obsoletes: sendmail-doc
91 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
93 %define _sysconfdir /etc/mail
94 %define specflags -fPIC
97 The Sendmail program is a very widely used Mail Transport Agent (MTA).
98 MTAs send mail from one machine to another. Sendmail is not a client
99 program, which you use to read your e-mail. Sendmail is a
100 behind-the-scenes program which actually moves your e-mail over
101 networks or the Internet to where you want it to go.
104 Sendmail überträgt Mails zwischen Rechnern. Es implementiert eine
105 allgemeine Mail-Routing-Funktion über das Netzwerk mit Aliasing und
106 Weiterleiten von Nachrichten, automatischem Routing an
107 Netzwerk-Gateways und flexible Konfiguration. Wenn Sie E-Mails über
108 das Internet senden und empfangen möchten, brauchen Sie sendmail.
111 sendmail es un agente de transporte de correo electrónico, que mueve
112 mensajes entre máquinas. Implementa facilidades de internetwork y
113 rutado, caracterizando cambio de nombres (aliases) y envío a nuevas
114 direcciones ( forwarding ), rutado automático para gateways de la red
115 y configuración flexible. Necesitarás del sendmail si deseas enviar y
116 recibir mensajes a través de la Internet.
119 Sendmail est un agent de transport de courrier, qui est le programme
120 transférent le courrier d'une machine à l'autre. Sendmail implémente
121 une facilité générale de routage de courrier entre les réseaux, permet
122 l'\"aliasing\" et le \"forwarding\", un routage automatique sur les
123 passerelles du réseau, et une configuration flexible.
126 SendamilÀº ¸Å¿ì ³Î¸® »ç¿ëµÇ´Â Mail Àü¼Û ÇÁ·Î±×·¥ÀÌ´Ù(MTA). Mail Àü¼Û
127 ÇÁ·Î±×·¥µé(MTA)Àº ¾î¶°ÇÑ machine¿¡¼ ´Ù¸¥ machineÀ¸·Î ¸ÞÀÏÀ» º¸³»¸ç
128 SendmailÀº e-mailÀ» ÀбâÀ§ÇØ »ç¿ëÇÏ´Â client programÀº ¾Æ´Ï´Ù.
129 SendamilÀº ¿øÇÏ´Â °÷À¸·Î InternetÀ̳ª Network¸¦ ÅëÇØ e-mailÀ» º¸³»´Â
130 ¿ªÇÒÀ» ÇÏ´Â backgrond¿¡¼ ÀÛ¾÷À» ÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù.
133 Sendmail jest programem umo¿liwiaj±cym wymianê poczty elektronicznej
134 miêdzy komputerami w sieci (MTA). Zajmuje siê przekazywaniem poczty
135 elektronicznej miêdzy bramkami pocztowymi i dostarczaniem przesy³ek na
136 konta docelowe. Bardzo dobrze obs³uguje aliasy pocztowe a jego
137 dodatkowym atutem jest prosta konfiguracja. Dziêki rozbudowanym
138 mo¿liwo¶ciom konfiguracyjnym jest w stanie dostarczaæ przesy³ki za
139 po¶rednictwem protoko³ów: SMTP, ESMTP, UUCP, X.400 i innych.
141 %description -l pt_BR
142 O sendmail é um agente de transporte de correio eletrônico, que move
143 mensagens entre máquinas. Ele implementa facilidades de internetwork e
144 roteamento, caracterizando troca de nomes (aliases) e remessa a novos
145 endereços ( forwarding ), roteamento automático para gateways da rede
146 e configuração flexível.
149 Sendmail - ÜÔÏ Mail Transport Agent, ÐÒÏÇÒÁÍÍÁ ÐÅÒÅÓÙÌÁÀÝÁÑ ÐÏÞÔÕ Ó
150 ÍÁÛÉÎÙ ÎÁ ÍÁÛÉÎÕ. Sendmail ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ÓÔÁÎÄÁÒÔÎÙÅ ÓÒÅÄÓÔ×Á
151 ÍÅÖÓÅÔÅ×ÏÊ ÍÁÒÛÒÕÔÉÚÁÃÉÉ ÐÏÞÔÙ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÅÓËÕÀ
152 ÍÁÒÛÒÕÔÉÚÁÃÉÀ ÄÌÑ ÓÅÔÅ×ÙÈ ÛÌÀÚÏ× É ÇÉÂËÉÊ ÍÅÈÁÎÉÚÍ ËÏÎÆÉÇÕÒÁÃÉÉ.
155 Sendmail, bir mektubu bir makineden diðerine taþýr. Pek çok davranýþý
156 ayarlanabilir. Internet üzerinden mektup almak veya göndermek
157 istiyorsanýz bu pakete gereksiniminiz olacaktýr.
160 Sendmail - ÃÅ Mail Transport Agent, ÐÒÏÇÒÁÍÁ ÝÏ ÐÅÒÅÓÉÌÁ¤ ÐÏÛÔÕ Ú
161 ÍÁÛÉÎÉ ÎÁ ÍÁÛÉÎÕ. Sendmail ÎÁÄÁ¤ ÓÔÁÎÄÁÒÔΦ ÚÁÓÏÂÉ Í¦ÖÍÅÒÅÖÅ×ϧ
162 ÍÁÒÛÒÕÔÉÚÁæ§ ÐÏÛÔÉ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÎÕ ÍÁÒÛÒÕÔÉÚÁæÀ
163 ÄÌÑ ÍÅÒÅÖÅ×ÉÈ ÛÌÀÚ¦× ÔÁ ÇÎÕÞËÉÊ ÍÅÈÁΦÚÍ ÍÁÒÛÒÕÔÉÚÁæ§.
166 Summary: Header files and static libmilter library
167 Summary(pl): Pliki nag³ówkowe i statyczna biblioteka libmilter
168 Group: Development/Libraries
171 Header files and static libmilter library.
173 %description devel -l pl
174 Pliki nag³ówkowe i statyczna biblioteka libmilter.
185 %{?with_pgsql:%patch7 -p1}
187 sed -e 's|@@PATH@@|\.\.|' < %{SOURCE6} > cf/cf/pld.mc
189 install %{SOURCE7} config.m4
191 # Ac-specific hack - ac-i386 builder has not fully operational shm
192 %ifarch i386 i586 i686 amd64
193 %{__perl} -pi -e 's/^(smtest.*t-shm)/dnl $1/' libsm/Makefile.m4
197 echo "define(\`confCC', \`%{__cc}')" >> config.m4
198 echo "define(\`confOPTIMIZE', \`%{rpmcflags} -DUSE_VENDOR_CF_PATH=1 -DNETINET6')" >> config.m4
199 echo "APPENDDEF(\`confINCDIRS', \`-I/usr/include/sasl')" >> config.m4
200 echo "define(\`confLIBSEARCHPATH', \`/%{_lib} %{_prefix}/%{_lib}')" >> config.m4
201 echo "define(\`confLIBSEARCH', \`db resolv')" >> config.m4
203 echo "define(\`confLDOPTS', \`-s')" >> config.m4
206 echo "APPENDDEF(\`confMAPDEF', \`-DLDAPMAP')" >> config.m4
207 echo "APPENDDEF(\`confLIBS', \`-lldap -llber')" >> config.m4
210 echo "APPENDDEF(\`confENVDEF', \`-DSASL')" >> config.m4
211 echo "APPENDDEF(\`confMAPDEF', \`-DPGSQLMAP')" >> config.m4
212 echo "APPENDDEF(\`confLIBS', \`-lpq -lresolv')" >> config.m4
213 echo "APPENDDEF(\`confLIBS', \`-lsasl -lcrypto')" >> config.m4
216 echo "APPENDDEF(\`confENVDEF', \`-DSTARTTLS')" >> config.m4
217 echo "APPENDDEF(\`confENVDEF', \`-D_FFR_DEAL_WITH_ERROR_SSL')" >> config.m4
218 echo "APPENDDEF(\`confLIBS', \`-lssl -lcrypto')" >> config.m4
219 echo "APPENDDEF(\`confENVDEF', \`-D_FFR_SMTP_SSL')" >> config.m4
222 echo "APPENDDEF(\`confENVDEF', \`-DMILTER')" >> config.m4
224 cd sendmail && sh Build -f ../config.m4
225 cd ../mailstats && sh Build -f ../config.m4
226 cd ../rmail && sh Build -f ../config.m4
227 cd ../makemap && sh Build -f ../config.m4
228 cd ../praliases && sh Build -f ../config.m4
229 cd ../smrsh && sh Build -f ../config.m4
230 cd ../libmilter && sh Build -f ../config.m4
235 rm -rf $RPM_BUILD_ROOT
236 install -d $RPM_BUILD_ROOT%{_mandir}/man{1,5,8} \
237 $RPM_BUILD_ROOT/etc/{rc.d/init.d,pam.d,monit,sysconfig,sasl,smrsh} \
238 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_prefix}/lib} \
239 $RPM_BUILD_ROOT{%{_datadir}/sendmail-cf,%{_libdir}} \
240 $RPM_BUILD_ROOT/var/{log,spool/mqueue} \
241 $RPM_BUILD_ROOT{%{_sysconfdir},%{_includedir}}
243 OBJDIR=obj.$(uname -s).$(uname -r).$(arch)
247 SMINSTOPT="DESTDIR=$RPM_BUILD_ROOT SBINOWN=$IDNU SBINGRP=$IDNG \
248 UBINOWN=$IDNU UBINGRP=$IDNG MANOWN=$IDNU MANGRP=$IDNG \
249 CFOWN=$IDNU CFGRP=$IDNG MSPQOWN=$IDNU GBINGRP=$IDNG GBINOWN=$IDNU \
250 BINOWN=$IDNU BINGRP=$IDNG LIBOWN=$IDNU LIBGRP=$IDNG INCOWN=$IDNU INCGRP=$IDNG"
252 %{__make} -C $OBJDIR/sendmail install \
254 %{__make} -C $OBJDIR/mailstats install \
256 %{__make} -C $OBJDIR/praliases install \
258 %{__make} -C $OBJDIR/rmail force-install \
260 %{__make} -C $OBJDIR/makemap install \
262 %{__make} -C $OBJDIR/smrsh install \
264 %{__make} -C $OBJDIR/libmilter install \
268 ln -sf %{_sbindir}/makemap $RPM_BUILD_ROOT%{_bindir}/makemap
270 # install the cf files
272 rm -f cf/{Build,Makefile} feature/*~
273 cp -ar * $RPM_BUILD_ROOT%{_datadir}/sendmail-cf
277 install cf/cf/pld.cf $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf
278 sed -e 's|@@PATH@@|%{_datadir}/sendmail-cf|' < %{SOURCE6} \
279 > $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.mc
282 install bluelabs.mc $RPM_BUILD_ROOT%{_sysconfdir}/bluelabs.mc
285 # submit.mc (submit.cf is installed automatically)
286 install cf/cf/submit.mc $RPM_BUILD_ROOT%{_sysconfdir}
288 echo "# local-host-names - include all aliases for your machine here." \
289 > $RPM_BUILD_ROOT%{_sysconfdir}/local-host-names
292 ln -sf %{_sbindir}/sendmail $RPM_BUILD_ROOT%{_prefix}/lib/sendmail
295 for f in hoststat mailq newaliases purgestat; do
296 ln -sf %{_sbindir}/sendmail $RPM_BUILD_ROOT%{_bindir}/${f}
299 for map in virtusertable access domaintable mailertable; do
300 touch $RPM_BUILD_ROOT%{_sysconfdir}/${map}
301 $RPM_BUILD_ROOT%{_sbindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
302 $RPM_BUILD_ROOT%{_sysconfdir}/${map}.db < $RPM_BUILD_ROOT%{_sysconfdir}/${map}
305 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/aliases
306 $RPM_BUILD_ROOT%{_sbindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
307 $RPM_BUILD_ROOT%{_sysconfdir}/aliases.db < %{SOURCE3}
309 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/sendmail
310 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sendmail
311 install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/Makefile
312 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sasl/Sendmail.conf
313 install %{SOURCE13} $RPM_BUILD_ROOT/etc/pam.d/smtp
314 install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/access
315 install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/mailertable
316 install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/virtusertable
317 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/domaintable
318 install %{SOURCE14} $RPM_BUILD_ROOT/etc/monit/
320 mv -f smrsh/README README.smrsh
321 mv -f cf/README README.cf
324 bzip2 -dc %{SOURCE4} | tar xf -
326 # for perl-Sendmail-Milter
327 install $OBJDIR/libsm/libsm.a $OBJDIR/libsmutil/libsmutil.a \
328 $RPM_BUILD_ROOT%{_libdir}
331 rm -rf $RPM_BUILD_ROOT
334 %groupadd -g 25 smmsp
335 %useradd -u 25 -d /var/spool/clientqueue -s /bin/false -c "Sendmail Message Submission Program" -g smmsp smmsp
340 # Convert old format to new
342 if [ -f /etc/mail/deny ] ; then
343 cat /etc/mail/deny | \
344 awk 'BEGIN{ print "# Entries from obsoleted /etc/mail/deny"} \
345 {print $1" REJECT"}' >> /etc/mail/access
346 mv -f /etc/mail/deny /etc/mail/deny.rpmorig
348 for oldfile in relay_allow ip_allow name_allow ; do
349 if [ -f /etc/mail/$oldfile ] ; then
350 cat /etc/mail/$oldfile | \
351 awk "BEGIN { print \"# Entries from obsoleted /etc/mail/$oldfile\" ;} \
352 { print $1\" RELAY\" }" >> /etc/mail/access
353 mv -f /etc/mail/$oldfile /etc/mail/$oldfile.rpmorig
358 # Oops, these files moved
360 if [ -f /etc/sendmail.cw ] ; then
361 cat /etc/sendmail.cw | \
362 awk 'BEGIN { print "# Entries from obsoleted /etc/sendmail.cw" ;} \
363 { print $1 }' >> /etc/mail/local-host-names
364 mv -f /etc/sendmail.cw /etc/sendmail.cw.rpmorig
367 # Rebuild maps (next reboot will rebuild also)
369 { /usr/bin/newaliases
370 for map in virtusertable access domaintable mailertable; do
371 if [ -f /etc/mail/${map} ] ; then
372 /usr/bin/makemap hash /etc/mail/${map} < /etc/mail/${map}
378 /sbin/chkconfig --add sendmail
379 %service sendmail restart "sendmail daemon"
382 if [ "$1" = "0" ]; then
383 %service sendmail stop
384 /sbin/chkconfig --del sendmail
388 if [ "$1" = "0" ]; then
393 # removal of compatibility links
394 %triggerpostun -- sendmail < 8.10.1
395 /sbin/chkconfig --add sendmail
398 %defattr(644,root,root,755)
399 %doc FAQ KNOWNBUGS README* op.me RELEASE_NOTES examples/
400 %attr(755,root,root) %{_sbindir}/mailstats
401 %attr(755,root,root) %{_sbindir}/praliases
402 %attr(755,root,root) %{_bindir}/hoststat
403 %attr(755,root,root) %{_bindir}/purgestat
404 %attr(755,root,root) %{_bindir}/rmail
405 %attr(755,root,root) %{_bindir}/makemap
406 %attr(755,root,root) %{_sbindir}/makemap
407 %attr(2755,root,smmsp) %{_sbindir}/sendmail
408 %attr(755,root,root) %{_bindir}/newaliases
409 %attr(755,root,root) %{_bindir}/mailq
410 %attr(755,root,root) %{_sbindir}/smrsh
411 %{_prefix}/lib/sendmail
413 %{_mandir}/man1/mailq.1*
414 %{_mandir}/man1/newaliases.1*
415 %{_mandir}/man5/aliases.5*
416 %{_mandir}/man8/mailstats.8*
417 %{_mandir}/man8/makemap.8*
418 %{_mandir}/man8/praliases.8*
419 %{_mandir}/man8/rmail.8*
420 %{_mandir}/man8/sendmail.8*
421 %{_mandir}/man8/smrsh.8*
426 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sendmail.cf
427 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sendmail.mc
428 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/submit.cf
429 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/submit.mc
430 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local-host-names
431 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/aliases
432 %{?with_pgsql:%{_sysconfdir}/bluelabs.mc}
433 %attr(644,root,mail) %ghost %{_sysconfdir}/aliases.db
434 %attr(770,root,smmsp) %dir /var/spool/clientmqueue
435 %attr(750,root,mail) %dir /var/spool/mqueue
437 %config %{_sysconfdir}/Makefile
438 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/access
439 %ghost %{_sysconfdir}/access.db
440 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/domaintable
441 %ghost %{_sysconfdir}/domaintable.db
442 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mailertable
443 %ghost %{_sysconfdir}/mailertable.db
444 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/virtusertable
445 %ghost %{_sysconfdir}/virtusertable.db
446 %config(noreplace) %{_sysconfdir}/helpfile
448 %attr(754,root,root) /etc/rc.d/init.d/sendmail
449 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/sendmail
450 %config(noreplace) %verify(not md5 mtime size) /etc/sasl/Sendmail.conf
451 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/smtp
452 %attr(750,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/monit/*.monitrc
454 %dir %{_datadir}/sendmail-cf
455 %dir %{_datadir}/sendmail-cf/cf
456 %{_datadir}/sendmail-cf/cf/pld.mc
457 %{_datadir}/sendmail-cf/feature
458 %{_datadir}/sendmail-cf/m4
459 %{_datadir}/sendmail-cf/mailer
460 %dir %{_datadir}/sendmail-cf/ostype
461 %{_datadir}/sendmail-cf/ostype/linux.m4
462 %dir %{_datadir}/sendmail-cf/sh
463 %{_datadir}/sendmail-cf/sh/makeinfo.sh
464 %{_datadir}/sendmail-cf/siteconfig
467 %defattr(644,root,root,755)
468 %{_libdir}/libmilter.a
470 %{_libdir}/libsmutil.a
471 %{_includedir}/libmilter