3 # - make sid-milter support:
4 # http://sourceforge.net/projects/sid-milter/
5 # http://www.sendmail.net/
8 %bcond_without ldap # without LDAP support
9 %bcond_without tls # without TLS (SSL) support
10 %bcond_with db3 # use db3 instead of db package
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: 2809fbf9c8b067947b650d0128928d05
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 %{?with_db3:BuildRequires: db3-devel}
56 %{!?with_db3:BuildRequires: db-devel >= 4.1.25}
58 %{?with_ldap:BuildRequires: openldap-devel}
59 %{?with_tls:BuildRequires: openssl-devel >= 0.9.7d}
60 %{?with_pgsql:BuildRequires: postgresql-devel}
61 BuildRequires: rpmbuild(macros) >= 1.159
62 Requires(pre): /bin/id
63 Requires(pre): /usr/bin/getgid
64 Requires(pre): /usr/sbin/groupadd
65 Requires(pre): /usr/sbin/useradd
67 Requires(post): textutils
68 Requires(post,preun):/sbin/chkconfig
69 Requires(postun): /usr/sbin/groupdel
70 Requires(postun): /usr/sbin/userdel
71 %{!?with_db3:Requires: db >= 4.1.25}
74 Requires: pam >= 0.77.3
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
96 The Sendmail program is a very widely used Mail Transport Agent (MTA).
97 MTAs send mail from one machine to another. Sendmail is not a client
98 program, which you use to read your e-mail. Sendmail is a
99 behind-the-scenes program which actually moves your e-mail over
100 networks or the Internet to where you want it to go.
103 Sendmail überträgt Mails zwischen Rechnern. Es implementiert eine
104 allgemeine Mail-Routing-Funktion über das Netzwerk mit Aliasing und
105 Weiterleiten von Nachrichten, automatischem Routing an
106 Netzwerk-Gateways und flexible Konfiguration. Wenn Sie E-Mails über
107 das Internet senden und empfangen möchten, brauchen Sie sendmail.
110 sendmail es un agente de transporte de correo electrónico, que mueve
111 mensajes entre máquinas. Implementa facilidades de internetwork y
112 rutado, caracterizando cambio de nombres (aliases) y envío a nuevas
113 direcciones ( forwarding ), rutado automático para gateways de la red
114 y configuración flexible. Necesitarás del sendmail si deseas enviar y
115 recibir mensajes a través de la Internet.
118 Sendmail est un agent de transport de courrier, qui est le programme
119 transférent le courrier d'une machine à l'autre. Sendmail implémente
120 une facilité générale de routage de courrier entre les réseaux, permet
121 l'\"aliasing\" et le \"forwarding\", un routage automatique sur les
122 passerelles du réseau, et une configuration flexible.
125 SendamilÀº ¸Å¿ì ³Î¸® »ç¿ëµÇ´Â Mail Àü¼Û ÇÁ·Î±×·¥ÀÌ´Ù(MTA). Mail Àü¼Û
126 ÇÁ·Î±×·¥µé(MTA)Àº ¾î¶°ÇÑ machine¿¡¼ ´Ù¸¥ machineÀ¸·Î ¸ÞÀÏÀ» º¸³»¸ç
127 SendmailÀº e-mailÀ» ÀбâÀ§ÇØ »ç¿ëÇÏ´Â client programÀº ¾Æ´Ï´Ù.
128 SendamilÀº ¿øÇÏ´Â °÷À¸·Î InternetÀ̳ª Network¸¦ ÅëÇØ e-mailÀ» º¸³»´Â
129 ¿ªÇÒÀ» ÇÏ´Â backgrond¿¡¼ ÀÛ¾÷À» ÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù.
132 Sendmail jest programem umo¿liwiaj±cym wymianê poczty elektronicznej
133 miêdzy komputerami w sieci (MTA). Zajmuje siê przekazywaniem poczty
134 elektronicznej miêdzy bramkami pocztowymi i dostarczaniem przesy³ek na
135 konta docelowe. Bardzo dobrze obs³uguje aliasy pocztowe a jego
136 dodatkowym atutem jest prosta konfiguracja. Dziêki rozbudowanym
137 mo¿liwo¶ciom konfiguracyjnym jest w stanie dostarczaæ przesy³ki za
138 po¶rednictwem protoko³ów: SMTP, ESMTP, UUCP, X.400 i innych.
140 %description -l pt_BR
141 O sendmail é um agente de transporte de correio eletrônico, que move
142 mensagens entre máquinas. Ele implementa facilidades de internetwork e
143 roteamento, caracterizando troca de nomes (aliases) e remessa a novos
144 endereços ( forwarding ), roteamento automático para gateways da rede
145 e configuração flexível.
148 Sendmail - ÜÔÏ Mail Transport Agent, ÐÒÏÇÒÁÍÍÁ ÐÅÒÅÓÙÌÁÀÝÁÑ ÐÏÞÔÕ Ó
149 ÍÁÛÉÎÙ ÎÁ ÍÁÛÉÎÕ. Sendmail ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ÓÔÁÎÄÁÒÔÎÙÅ ÓÒÅÄÓÔ×Á
150 ÍÅÖÓÅÔÅ×ÏÊ ÍÁÒÛÒÕÔÉÚÁÃÉÉ ÐÏÞÔÙ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÅÓËÕÀ
151 ÍÁÒÛÒÕÔÉÚÁÃÉÀ ÄÌÑ ÓÅÔÅ×ÙÈ ÛÌÀÚÏ× É ÇÉÂËÉÊ ÍÅÈÁÎÉÚÍ ËÏÎÆÉÇÕÒÁÃÉÉ.
154 Sendmail, bir mektubu bir makineden diðerine taþýr. Pek çok davranýþý
155 ayarlanabilir. Internet üzerinden mektup almak veya göndermek
156 istiyorsanýz bu pakete gereksiniminiz olacaktýr.
159 Sendmail - ÃÅ Mail Transport Agent, ÐÒÏÇÒÁÍÁ ÝÏ ÐÅÒÅÓÉÌÁ¤ ÐÏÛÔÕ Ú
160 ÍÁÛÉÎÉ ÎÁ ÍÁÛÉÎÕ. Sendmail ÎÁÄÁ¤ ÓÔÁÎÄÁÒÔΦ ÚÁÓÏÂÉ Í¦ÖÍÅÒÅÖÅ×ϧ
161 ÍÁÒÛÒÕÔÉÚÁæ§ ÐÏÛÔÉ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÎÕ ÍÁÒÛÒÕÔÉÚÁæÀ
162 ÄÌÑ ÍÅÒÅÖÅ×ÉÈ ÛÌÀÚ¦× ÔÁ ÇÎÕÞËÉÊ ÍÅÈÁΦÚÍ ÍÁÒÛÒÕÔÉÚÁæ§.
165 Summary: Header files and static libmilter library
166 Summary(pl): Pliki nag³ówkowe i statyczna biblioteka libmilter
167 Group: Development/Libraries
170 Header files and static libmilter library.
172 %description devel -l pl
173 Pliki nag³ówkowe i statyczna biblioteka libmilter.
184 %{?with_pgsql:%patch7 -p1}
186 sed -e 's|@@PATH@@|\.\.|' < %{SOURCE6} > cf/cf/pld.mc
188 install %{SOURCE7} config.m4
190 # Ac-specific hack - ac-i386 builder has not fully operational shm
192 %{__perl} -pi -e 's/^(smtest.*t-shm)/dnl $1/' libsm/Makefile.m4
196 echo "define(\`confCC', \`%{__cc}')" >> config.m4
197 echo "define(\`confOPTIMIZE', \`%{rpmcflags} -DUSE_VENDOR_CF_PATH=1 -DNETINET6')" >> config.m4
198 echo "APPENDDEF(\`confINCDIRS', \`-I/usr/include/sasl')" >> config.m4
199 echo "define(\`confLIBSEARCHPATH', \`/%{_lib} /usr/%{_lib}')" >> config.m4
200 echo "define(\`confLIBSEARCH', \`db resolv')" >> config.m4
202 echo "define(\`confLDOPTS', \`-s')" >> config.m4
205 echo "APPENDDEF(\`confMAPDEF', \`-DLDAPMAP')" >> config.m4
206 echo "APPENDDEF(\`confLIBS', \`-lldap -llber')" >> config.m4
209 echo "APPENDDEF(\`confENVDEF', \`-DSASL')" >> config.m4
210 echo "APPENDDEF(\`confMAPDEF', \`-DPGSQLMAP')" >> config.m4
211 echo "APPENDDEF(\`confLIBS', \`-lpq -lresolv')" >> config.m4
212 echo "APPENDDEF(\`confLIBS', \`-lsasl -lcrypto')" >> config.m4
215 echo "APPENDDEF(\`confENVDEF', \`-DSTARTTLS')" >> config.m4
216 echo "APPENDDEF(\`confENVDEF', \`-D_FFR_DEAL_WITH_ERROR_SSL')" >> config.m4
217 echo "APPENDDEF(\`confLIBS', \`-lssl -lcrypto')" >> config.m4
218 echo "APPENDDEF(\`confENVDEF', \`-D_FFR_SMTP_SSL')" >> config.m4
221 echo "APPENDDEF(\`confENVDEF', \`-DMILTER')" >> config.m4
223 cd sendmail && sh Build -f ../config.m4
224 cd ../mailstats && sh Build -f ../config.m4
225 cd ../rmail && sh Build -f ../config.m4
226 cd ../makemap && sh Build -f ../config.m4
227 cd ../praliases && sh Build -f ../config.m4
228 cd ../smrsh && sh Build -f ../config.m4
229 cd ../libmilter && sh Build -f ../config.m4
234 rm -rf $RPM_BUILD_ROOT
235 install -d $RPM_BUILD_ROOT%{_mandir}/man{1,5,8} \
236 $RPM_BUILD_ROOT/etc/{rc.d/init.d,pam.d,monit,sysconfig,sasl,smrsh} \
237 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_prefix}/lib} \
238 $RPM_BUILD_ROOT{%{_datadir}/sendmail-cf,%{_libdir}} \
239 $RPM_BUILD_ROOT/var/{log,spool/mqueue} \
240 $RPM_BUILD_ROOT{%{_sysconfdir},%{_includedir}}
242 OBJDIR=obj.$(uname -s).$(uname -r).$(arch)
246 SMINSTOPT="DESTDIR=$RPM_BUILD_ROOT SBINOWN=$IDNU SBINGRP=$IDNG \
247 UBINOWN=$IDNU UBINGRP=$IDNG MANOWN=$IDNU MANGRP=$IDNG \
248 CFOWN=$IDNU CFGRP=$IDNG MSPQOWN=$IDNU GBINGRP=$IDNG GBINOWN=$IDNU \
249 BINOWN=$IDNU BINGRP=$IDNG LIBOWN=$IDNU LIBGRP=$IDNG INCOWN=$IDNU INCGRP=$IDNG"
251 %{__make} -C $OBJDIR/sendmail install \
253 %{__make} -C $OBJDIR/mailstats install \
255 %{__make} -C $OBJDIR/praliases install \
257 %{__make} -C $OBJDIR/rmail force-install \
259 %{__make} -C $OBJDIR/makemap install \
261 %{__make} -C $OBJDIR/smrsh install \
263 %{__make} -C $OBJDIR/libmilter install \
267 ln -sf %{_sbindir}/makemap $RPM_BUILD_ROOT%{_bindir}/makemap
269 # install the cf files
271 rm -f cf/{Build,Makefile} feature/*~
272 cp -ar * $RPM_BUILD_ROOT%{_datadir}/sendmail-cf
276 install cf/cf/pld.cf $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf
277 sed -e 's|@@PATH@@|%{_datadir}/sendmail-cf|' < %{SOURCE6} \
278 > $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.mc
281 install bluelabs.mc $RPM_BUILD_ROOT%{_sysconfdir}/bluelabs.mc
284 # submit.mc (submit.cf is installed automatically)
285 install cf/cf/submit.mc $RPM_BUILD_ROOT%{_sysconfdir}
287 echo "# local-host-names - include all aliases for your machine here." \
288 > $RPM_BUILD_ROOT%{_sysconfdir}/local-host-names
290 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT%{_prefix}/lib/sendmail
293 for f in hoststat mailq newaliases purgestat ; do
294 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT%{_bindir}/${f}
297 for map in virtusertable access domaintable mailertable ; do
298 touch $RPM_BUILD_ROOT%{_sysconfdir}/${map}
299 $RPM_BUILD_ROOT%{_sbindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
300 $RPM_BUILD_ROOT%{_sysconfdir}/${map}.db < $RPM_BUILD_ROOT%{_sysconfdir}/${map}
303 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/aliases
304 $RPM_BUILD_ROOT%{_sbindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
305 $RPM_BUILD_ROOT%{_sysconfdir}/aliases.db < %{SOURCE3}
307 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/sendmail
308 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sendmail
309 install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/Makefile
310 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sasl/Sendmail.conf
311 install %{SOURCE13} $RPM_BUILD_ROOT/etc/pam.d/smtp
312 install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/access
313 install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/mailertable
314 install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/virtusertable
315 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/domaintable
316 install %{SOURCE14} $RPM_BUILD_ROOT/etc/monit/
318 mv -f smrsh/README README.smrsh
319 mv -f cf/README README.cf
323 bzip2 -dc %{SOURCE4} | tar xf -
326 rm -rf $RPM_BUILD_ROOT
329 if [ -n "`/usr/bin/getgid smmsp`" ]; then
330 if [ "`/usr/bin/getgid smmsp`" != "25" ]; then
331 echo "Error: group smmsp doesn't have gid=25. Correct this before installing sendmail." 1>&2
335 /usr/sbin/groupadd -g 25 smmsp 1>&2
337 if [ -n "`/bin/id -u smmsp 2>/dev/null`" ]; then
338 if [ "`/bin/id -u smmsp`" != "25" ]; then
339 echo "Error: user smmsp doesn't have uid=25. Correct this before installing sendmail." 1>&2
343 /usr/sbin/useradd -u 25 -d /var/spool/clientqueue -s /bin/false \
344 -c "Sendmail Message Submission Program" -g smmsp smmsp 1>&2
350 # Convert old format to new
352 if [ -f /etc/mail/deny ] ; then
353 cat /etc/mail/deny | \
354 awk 'BEGIN{ print "# Entries from obsoleted /etc/mail/deny"} \
355 {print $1" REJECT"}' >> /etc/mail/access
356 mv -f /etc/mail/deny /etc/mail/deny.rpmorig
358 for oldfile in relay_allow ip_allow name_allow ; do
359 if [ -f /etc/mail/$oldfile ] ; then
360 cat /etc/mail/$oldfile | \
361 awk "BEGIN { print \"# Entries from obsoleted /etc/mail/$oldfile\" ;} \
362 { print $1\" RELAY\" }" >> /etc/mail/access
363 mv -f /etc/mail/$oldfile /etc/mail/$oldfile.rpmorig
368 # Oops, these files moved
370 if [ -f /etc/sendmail.cw ] ; then
371 cat /etc/sendmail.cw | \
372 awk 'BEGIN { print "# Entries from obsoleted /etc/sendmail.cw" ;} \
373 { print $1 }' >> /etc/mail/local-host-names
374 mv -f /etc/sendmail.cw /etc/sendmail.cw.rpmorig
377 # Rebuild maps (next reboot will rebuild also)
379 { /usr/bin/newaliases
380 for map in virtusertable access domaintable mailertable; do
381 if [ -f /etc/mail/${map} ] ; then
382 /usr/bin/makemap hash /etc/mail/${map} < /etc/mail/${map}
388 /sbin/chkconfig --add sendmail
389 if [ -f /var/lock/subsys/sendmail ]; then
390 /etc/rc.d/init.d/sendmail restart >&2
392 echo "Run \"/etc/rc.d/init.d/sendmail start\" to start sendmail daemon." >&2
396 if [ "$1" = "0" ]; then
397 if [ -f /var/lock/subsys/sendmail ]; then
398 /etc/rc.d/init.d/sendmail stop >&2
400 /sbin/chkconfig --del sendmail
404 if [ "$1" = "0" ]; then
409 # removal of compatibility links
410 %triggerpostun -- sendmail < 8.10.1
411 /sbin/chkconfig --add sendmail
414 %defattr(644,root,root,755)
415 %doc FAQ KNOWNBUGS README* op.me RELEASE_NOTES examples/
416 %attr(755,root,root) %{_sbindir}/mailstats
417 %attr(755,root,root) %{_sbindir}/praliases
418 %attr(755,root,root) %{_bindir}/hoststat
419 %attr(755,root,root) %{_bindir}/purgestat
420 %attr(755,root,root) %{_bindir}/rmail
421 %attr(755,root,root) %{_bindir}/makemap
422 %attr(755,root,root) %{_sbindir}/makemap
423 %attr(2755,root,smmsp) %{_sbindir}/sendmail
424 %attr(755,root,root) %{_bindir}/newaliases
425 %attr(755,root,root) %{_bindir}/mailq
426 %attr(755,root,root) %{_sbindir}/smrsh
427 %{_prefix}/lib/sendmail
429 %{_mandir}/man1/mailq.1*
430 %{_mandir}/man1/newaliases.1*
431 %{_mandir}/man5/aliases.5*
432 %{_mandir}/man8/mailstats.8*
433 %{_mandir}/man8/makemap.8*
434 %{_mandir}/man8/praliases.8*
435 %{_mandir}/man8/rmail.8*
436 %{_mandir}/man8/sendmail.8*
437 %{_mandir}/man8/smrsh.8*
442 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sendmail.cf
443 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sendmail.mc
444 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/submit.cf
445 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/submit.mc
446 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/local-host-names
447 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/aliases
448 %{?with_pgsql:%{_sysconfdir}/bluelabs.mc}
449 %attr(644,root,mail) %ghost %{_sysconfdir}/aliases.db
450 %attr(770,root,smmsp) %dir /var/spool/clientmqueue
451 %attr(750,root,mail) %dir /var/spool/mqueue
453 %config %{_sysconfdir}/Makefile
454 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/access
455 %ghost %{_sysconfdir}/access.db
456 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/domaintable
457 %ghost %{_sysconfdir}/domaintable.db
458 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/mailertable
459 %ghost %{_sysconfdir}/mailertable.db
460 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/virtusertable
461 %ghost %{_sysconfdir}/virtusertable.db
462 %config(noreplace) %{_sysconfdir}/helpfile
464 %attr(754,root,root) /etc/rc.d/init.d/sendmail
465 %config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/sendmail
466 %config(noreplace) %verify(not md5 size mtime) /etc/sasl/Sendmail.conf
467 %config(noreplace) %verify(not md5 size mtime) /etc/pam.d/smtp
468 %attr(750,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/monit/*.monitrc
470 %dir %{_datadir}/sendmail-cf
471 %dir %{_datadir}/sendmail-cf/cf
472 %{_datadir}/sendmail-cf/cf/pld.mc
473 %{_datadir}/sendmail-cf/feature
474 %{_datadir}/sendmail-cf/m4
475 %{_datadir}/sendmail-cf/mailer
476 %dir %{_datadir}/sendmail-cf/ostype
477 %{_datadir}/sendmail-cf/ostype/linux.m4
478 %dir %{_datadir}/sendmail-cf/sh
479 %{_datadir}/sendmail-cf/sh/makeinfo.sh
480 %{_datadir}/sendmail-cf/siteconfig
483 %defattr(644,root,root,755)
484 %{_libdir}/libmilter.a
485 %{_includedir}/libmilter