3 # _without_ldap without LDAP support
4 # _without_tls without TLS (SSL) support
5 # _with_pgsql without pgsql support (bluelabs)
7 Summary: A widely used Mail Transport Agent (MTA)
8 Summary(de): sendmail-Mail-Übertragungsagent
9 Summary(es): Sendmail - agente de transporte de mail
10 Summary(fr): Agent de transport de courrier sendmail
11 Summary(pl): Sendmail - serwer poczty elektronicznej
12 Summary(pt_BR): Sendmail - agente de transporte de mail
13 Summary(ru): ðÏÞÔÏ×ÙÊ ÔÒÁÎÓÐÏÒÔÎÙÊ ÁÇÅÎÔ sendmail
14 Summary(tr): Elektronik posta hizmetleri sunucusu
15 Summary(uk): ðÏÛÔÏ×ÉÊ ÔÒÁÎÓÐÏÒÔÎÉÊ ÁÇÅÎÔ sendmail
20 Group: Networking/Daemons
21 Source0: ftp://ftp.sendmail.org/pub/sendmail/%{name}.%{version}.tar.gz
23 Source2: %{name}.sysconfig
24 Source3: %{name}.aliases
25 # From http://doc.phpauction.org/sendmail/examples/
26 Source4: %{name}-examples.tar.bz2
27 Source5: %{name}-etc-mail-Makefile
29 Source7: %{name}-config.m4
31 Source9: %{name}.access
32 Source10: %{name}.mailertable
33 Source11: %{name}.virtusertable
34 Source12: %{name}.domaintable
35 Source13: %{name}-smtp.pamd
36 Patch0: %{name}-makemapman.patch
37 Patch1: %{name}-smrsh-paths.patch
38 Patch2: %{name}-rmail.patch
39 Patch3: %{name}-os-paths.patch
40 Patch4: %{name}-m4path.patch
41 Patch5: %{name}-redirect.patch
42 Patch6: %{name}-hprescan-dos.patch
43 Patch7: http://blue-labs.org/clue/bluelabs.patch-8.12.3
44 Patch8: smrsh-20020924.patch
45 BuildRequires: cyrus-sasl-devel
46 BuildRequires: db3-devel
47 %{!?_without_ldap:BuildRequires: openldap-devel}
48 %{!?_without_tls:BuildRequires: openssl-devel}
49 %{?_with_pgsql:BuildRequires: postgresql-devel}
52 Requires(pre): /bin/id
53 Requires(pre): /usr/bin/getgid
54 Requires(pre): /usr/sbin/groupadd
55 Requires(pre): /usr/sbin/useradd
57 Requires(post): textutils
58 Requires(post,preun):/sbin/chkconfig
59 Requires(postun): /usr/sbin/groupdel
60 Requires(postun): /usr/sbin/userdel
62 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
69 Obsoletes: sendmail-cf
70 Obsoletes: sendmail-doc
74 %define _sysconfdir /etc/mail
77 The Sendmail program is a very widely used Mail Transport Agent (MTA).
78 MTAs send mail from one machine to another. Sendmail is not a client
79 program, which you use to read your e-mail. Sendmail is a
80 behind-the-scenes program which actually moves your e-mail over
81 networks or the Internet to where you want it to go.
84 Sendmail überträgt Mails zwischen Rechnern. Es implementiert eine
85 allgemeine Mail-Routing-Funktion über das Netzwerk mit Aliasing und
86 Weiterleiten von Nachrichten, automatischem Routing an
87 Netzwerk-Gateways und flexible Konfiguration. Wenn Sie E-Mails über
88 das Internet senden und empfangen möchten, brauchen Sie sendmail.
91 sendmail es un agente de transporte de correo electrónico, que mueve
92 mensajes entre máquinas. Implementa facilidades de internetwork y
93 rutado, caracterizando cambio de nombres (aliases) y envío a nuevas
94 direcciones ( forwarding ), rutado automático para gateways de la red
95 y configuración flexible. Necesitarás del sendmail si deseas enviar y
96 recibir mensajes a través de la Internet.
99 Sendmail est un agent de transport de courrier, qui est le programme
100 transférent le courrier d'une machine à l'autre. Sendmail implémente
101 une facilité générale de routage de courrier entre les réseaux, permet
102 l'\"aliasing\" et le \"forwarding\", un routage automatique sur les
103 passerelles du réseau, et une configuration flexible.
106 Sendmail jest programem umo¿liwiaj±cym wymianê poczty elektronicznej
107 miêdzy komputerami w sieci (MTA). Zajmuje siê przekazywaniem poczty
108 elektronicznej miêdzy bramkami pocztowymi i dostarczaniem przesy³ek na
109 konta docelowe. Bardzo dobrze obs³uguje aliasy pocztowe a jego
110 dodatkowym atutem jest prosta konfiguracja. Dziêki rozbudowanym
111 mo¿liwo¶ciom konfiguracyjnym jest w stanie dostarczaæ przesy³ki za
112 po¶rednictwem protoko³ów: SMTP, ESMTP, UUCP, X.400 i innych.
114 %description -l pt_BR
115 O sendmail é um agente de transporte de correio eletrônico, que move
116 mensagens entre máquinas. Ele implementa facilidades de internetwork e
117 roteamento, caracterizando troca de nomes (aliases) e remessa a novos
118 endereços ( forwarding ), roteamento automático para gateways da rede
119 e configuração flexível.
122 Sendmail - ÜÔÏ Mail Transport Agent, ÐÒÏÇÒÁÍÍÁ ÐÅÒÅÓÙÌÁÀÝÁÑ ÐÏÞÔÕ Ó
123 ÍÁÛÉÎÙ ÎÁ ÍÁÛÉÎÕ. Sendmail ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ÓÔÁÎÄÁÒÔÎÙÅ ÓÒÅÄÓÔ×Á
124 ÍÅÖÓÅÔÅ×ÏÊ ÍÁÒÛÒÕÔÉÚÁÃÉÉ ÐÏÞÔÙ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÅÓËÕÀ
125 ÍÁÒÛÒÕÔÉÚÁÃÉÀ ÄÌÑ ÓÅÔÅ×ÙÈ ÛÌÀÚÏ× É ÇÉÂËÉÊ ÍÅÈÁÎÉÚÍ ËÏÎÆÉÇÕÒÁÃÉÉ.
128 Sendmail, bir mektubu bir makineden diðerine taþýr. Pek çok davranýþý
129 ayarlanabilir. Internet üzerinden mektup almak veya göndermek
130 istiyorsanýz bu pakete gereksiniminiz olacaktýr.
133 Sendmail - ÃÅ Mail Transport Agent, ÐÒÏÇÒÁÍÁ ÝÏ ÐÅÒÅÓÉÌÁ¤ ÐÏÛÔÕ Ú
134 ÍÁÛÉÎÉ ÎÁ ÍÁÛÉÎÕ. Sendmail ÎÁÄÁ¤ ÓÔÁÎÄÁÒÔΦ ÚÁÓÏÂÉ Í¦ÖÍÅÒÅÖÅ×ϧ
135 ÍÁÒÛÒÕÔÉÚÁæ§ ÐÏÛÔÉ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÎÕ ÍÁÒÛÒÕÔÉÚÁæÀ
136 ÄÌÑ ÍÅÒÅÖÅ×ÉÈ ÛÌÀÚ¦× ÔÁ ÇÎÕÞËÉÊ ÍÅÈÁΦÚÍ ÍÁÒÛÒÕÔÉÚÁæ§.
147 %if %{?_with_pgsql:1}%{!?_with_pgsql:0}
152 sed -e 's|@@PATH@@|\.\.|' < %{SOURCE6} > cf/cf/pld.mc
154 install %{SOURCE7} config.m4
157 echo "define(\`confCC', \`%{__cc}')" >> config.m4
158 echo "define(\`confOPTIMIZE', \`%{rpmcflags} -DUSE_VENDOR_CF_PATH=1 -DNETINET6')" >> config.m4
159 echo "define(\`confLIBSEARCH', \`db')" >> config.m4
160 %if %{?debug:0}%{!?debug:1}
161 echo "define(\`confLDOPTS', \`-s')" >> config.m4
163 %if %{?_without_ldap:0}%{!?_without_ldap:1}
164 echo "APPENDDEF(\`confMAPDEF', \`-DLDAPMAP')" >> config.m4
165 echo "APPENDDEF(\`confLIBS', \`-lldap -llber')" >> config.m4
167 %if %{?_with_pgsql:1}%{!?_with_pgsql:0}
168 echo "APPENDDEF(\`confENVDEF', \`-DSASL')" >> config.m4
169 echo "APPENDDEF(\`confMAPDEF', \`-DPGSQLMAP')" >> config.m4
170 echo "APPENDDEF(\`confLIBS', \`-lpq -lresolv')" >> config.m4
171 echo "APPENDDEF(\`confLIBS', \`-lsasl -lcrypto')" >> config.m4
173 %if %{?_without_tls:0}%{!?_without_tls:1}
174 echo "APPENDDEF(\`confENVDEF', \`-DSTARTTLS')" >> config.m4
175 echo "APPENDDEF(\`confLIBS', \`-lssl -lcrypto')" >> config.m4
178 cd sendmail && sh Build -f ../config.m4
179 cd ../mailstats && sh Build -f ../config.m4
180 cd ../rmail && sh Build -f ../config.m4
181 cd ../makemap && sh Build -f ../config.m4
182 cd ../praliases && sh Build -f ../config.m4
183 cd ../smrsh && sh Build -f ../config.m4
188 rm -rf $RPM_BUILD_ROOT
189 install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig,sasl,smrsh}} \
190 $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT%{_sbindir} $RPM_BUILD_ROOT%{_libdir} \
191 $RPM_BUILD_ROOT%{_mandir}/man{1,5,8} \
192 $RPM_BUILD_ROOT/var/log $RPM_BUILD_ROOT/var/spool/mqueue \
193 $RPM_BUILD_ROOT%{_libdir}/sendmail-cf \
194 $RPM_BUILD_ROOT/etc/pam.d \
196 OBJDIR=obj.$(uname -s).$(uname -r).$(arch)
200 SMINSTOPT="DESTDIR=$RPM_BUILD_ROOT SBINOWN=$IDNU SBINGRP=$IDNG \
201 UBINOWN=$IDNU UBINGRP=$IDNG MANOWN=$IDNU MANGRP=$IDNG \
202 CFOWN=$IDNU CFGRP=$IDNG MSPQOWN=$IDNU GBINGRP=$IDNG GBINOWN=$IDNU \
203 BINOWN=$IDNU BINGRP=$IDNG"
204 %{__make} $SMINSTOPT install -C $OBJDIR/sendmail
205 %{__make} $SMINSTOPT install -C $OBJDIR/mailstats
206 %{__make} $SMINSTOPT install -C $OBJDIR/praliases
207 %{__make} $SMINSTOPT force-install -C $OBJDIR/rmail
208 %{__make} $SMINSTOPT install -C $OBJDIR/makemap
209 ln -sf /usr/sbin/makemap $RPM_BUILD_ROOT%{_bindir}/makemap
210 %{__make} $SMINSTOPT install -C $OBJDIR/smrsh
212 # install the cf files
214 rm -f cf/{Build,Makefile} feature/*~
215 cp -ar * $RPM_BUILD_ROOT%{_libdir}/sendmail-cf
219 install cf/cf/pld.cf $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf
220 sed -e 's|@@PATH@@|%{_libdir}/sendmail-cf|' < %{SOURCE6} \
221 > $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.mc
223 %if %{?_with_pgsql:1}%{!?_with_pgsql:0}
224 install bluelabs.mc $RPM_BUILD_ROOT%{_sysconfdir}/bluelabs.mc
227 # submit.mc (submit.cf is installed automatically)
228 install cf/cf/submit.mc $RPM_BUILD_ROOT%{_sysconfdir}
230 echo "# local-host-names - include all aliases for your machine here." \
231 > $RPM_BUILD_ROOT%{_sysconfdir}/local-host-names
233 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT%{_libdir}/sendmail
236 for f in hoststat mailq newaliases purgestat ; do
237 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT%{_bindir}/${f}
240 for map in virtusertable access domaintable mailertable ; do
241 touch $RPM_BUILD_ROOT%{_sysconfdir}/${map}
242 $RPM_BUILD_ROOT%{_sbindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
243 $RPM_BUILD_ROOT%{_sysconfdir}/${map}.db < $RPM_BUILD_ROOT%{_sysconfdir}/${map}
246 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/aliases
247 $RPM_BUILD_ROOT%{_sbindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
248 $RPM_BUILD_ROOT%{_sysconfdir}/aliases.db < %{SOURCE3}
250 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/sendmail
251 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sendmail
252 install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/Makefile
253 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sasl/Sendmail.conf
254 install %{SOURCE13} $RPM_BUILD_ROOT/etc/pam.d/smtp
255 install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/access
256 install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/mailertable
257 install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/virtusertable
258 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/domaintable
260 mv -f smrsh/README README.smrsh
261 mv -f cf/README README.cf
264 bzip2 -dc %{SOURCE4} | tar xf -
267 rm -rf $RPM_BUILD_ROOT
270 if [ -n "`/usr/bin/getgid smmsp`" ]; then
271 if [ "`/usr/bin/getgid smmsp`" != "25" ]; then
272 echo "Error: group smmsp doesn't have gid=25. Correct this before installing sendmail." 1>&2
276 /usr/sbin/groupadd -g 25 -r -f smmsp
278 if [ -n "`/bin/id -u smmsp 2>/dev/null`" ]; then
279 if [ "`/bin/id -u smmsp`" != "25" ]; then
280 echo "Error: user smmsp doesn't have uid=25. Correct this before installing sendmail." 1>&2
284 /usr/sbin/useradd -u 25 -r -d /var/spool/clientqueue -s /bin/false -c "Sendmail Message Submission Program" -g smmsp smmsp 1>&2
289 # Convert old format to new
291 if [ -f /etc/mail/deny ] ; then
292 cat /etc/mail/deny | \
293 awk 'BEGIN{ print "# Entries from obsoleted /etc/mail/deny"} \
294 {print $1" REJECT"}' >> /etc/mail/access
295 mv -f /etc/mail/deny /etc/mail/deny.rpmorig
297 for oldfile in relay_allow ip_allow name_allow ; do
298 if [ -f /etc/mail/$oldfile ] ; then
299 cat /etc/mail/$oldfile | \
300 awk "BEGIN { print \"# Entries from obsoleted /etc/mail/$oldfile\" ;} \
301 { print $1\" RELAY\" }" >> /etc/mail/access
302 mv -f /etc/mail/$oldfile /etc/mail/$oldfile.rpmorig
307 # Oops, these files moved
309 if [ -f /etc/sendmail.cw ] ; then
310 cat /etc/sendmail.cw | \
311 awk 'BEGIN { print "# Entries from obsoleted /etc/sendmail.cw" ;} \
312 { print $1 }' >> /etc/mail/local-host-names
313 mv -f /etc/sendmail.cw /etc/sendmail.cw.rpmorig
316 # Rebuild maps (next reboot will rebuild also)
318 { /usr/bin/newaliases
319 for map in virtusertable access domaintable mailertable; do
320 if [ -f /etc/mail/${map} ] ; then
321 /usr/bin/makemap hash /etc/mail/${map} < /etc/mail/${map}
327 /sbin/chkconfig --add sendmail
328 if [ -f /var/lock/subsys/sendmail ]; then
329 /etc/rc.d/init.d/sendmail restart >&2
331 echo "Run \"/etc/rc.d/init.d/sendmail start\" to start sendmail daemon." >&2
335 if [ "$1" = "0" ]; then
336 if [ -f /var/lock/subsys/sendmail ]; then
337 /etc/rc.d/init.d/sendmail stop >&2
339 /sbin/chkconfig --del sendmail
343 if [ "$1" = "0" ]; then
344 /usr/sbin/userdel smmsp 2>/dev/null
345 /usr/sbin/groupdel smmsp 2>/dev/null
348 # removal of compatibility links
349 %triggerpostun -- sendmail < 8.10.1
350 /sbin/chkconfig --add sendmail
353 %defattr(644,root,root,755)
354 %doc FAQ KNOWNBUGS README* op.me RELEASE_NOTES examples/
355 %attr(755,root,root) %{_sbindir}/mailstats
356 %attr(755,root,root) %{_sbindir}/praliases
357 %attr(755,root,root) %{_bindir}/hoststat
358 %attr(755,root,root) %{_bindir}/purgestat
359 %attr(755,root,root) %{_bindir}/rmail
360 %attr(755,root,root) %{_bindir}/makemap
361 %attr(755,root,root) %{_sbindir}/makemap
362 %attr(2755,root,smmsp) %{_sbindir}/sendmail
363 %attr(755,root,root) %{_bindir}/newaliases
364 %attr(755,root,root) %{_bindir}/mailq
365 %attr(755,root,root) %{_sbindir}/smrsh
368 %{_mandir}/man1/mailq.1*
369 %{_mandir}/man1/newaliases.1*
370 %{_mandir}/man5/aliases.5*
371 %{_mandir}/man8/mailstats.8*
372 %{_mandir}/man8/makemap.8*
373 %{_mandir}/man8/praliases.8*
374 %{_mandir}/man8/rmail.8*
375 %{_mandir}/man8/sendmail.8*
376 %{_mandir}/man8/smrsh.8*
381 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sendmail.cf
382 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sendmail.mc
383 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/submit.cf
384 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/submit.mc
385 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/local-host-names
386 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/aliases
387 %{?_with_pgsql:%{_sysconfdir}/bluelabs.mc}
388 %attr(644,root,mail) %ghost %{_sysconfdir}/aliases.db
389 %attr(770,root,smmsp) %dir /var/spool/clientmqueue
390 %attr(750,root,mail) %dir /var/spool/mqueue
392 %config %{_sysconfdir}/Makefile
393 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/access
394 %ghost %{_sysconfdir}/access.db
395 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/domaintable
396 %ghost %{_sysconfdir}/domaintable.db
397 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/mailertable
398 %ghost %{_sysconfdir}/mailertable.db
399 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/virtusertable
400 %ghost %{_sysconfdir}/virtusertable.db
401 %config(noreplace) %{_sysconfdir}/helpfile
403 %attr(754,root,root) /etc/rc.d/init.d/sendmail
404 %config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/sendmail
405 %config(noreplace) %verify(not md5 size mtime) /etc/sasl/Sendmail.conf
406 %config(noreplace) %verify(not md5 size mtime) /etc/pam.d/smtp
408 %dir %{_libdir}/sendmail-cf
409 %dir %{_libdir}/sendmail-cf/cf
410 %{_libdir}/sendmail-cf/cf/pld.mc
411 %{_libdir}/sendmail-cf/feature
412 %{_libdir}/sendmail-cf/m4
413 %{_libdir}/sendmail-cf/mailer
414 %dir %{_libdir}/sendmail-cf/ostype
415 %{_libdir}/sendmail-cf/ostype/linux.m4
416 %dir %{_libdir}/sendmail-cf/sh
417 %{_libdir}/sendmail-cf/sh/makeinfo.sh
418 %{_libdir}/sendmail-cf/siteconfig