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 BuildRequires: cyrus-sasl-devel
45 BuildRequires: db3-devel
46 %{!?_without_ldap:BuildRequires: openldap-devel}
47 %{!?_without_tls:BuildRequires: openssl-devel}
48 %{?_with_pgsql:BuildRequires: postgresql-devel}
51 Requires(pre): /bin/id
52 Requires(pre): /usr/bin/getgid
53 Requires(pre): /usr/sbin/groupadd
54 Requires(pre): /usr/sbin/useradd
56 Requires(post): textutils
57 Requires(post,preun):/sbin/chkconfig
58 Requires(postun): /usr/sbin/groupdel
59 Requires(postun): /usr/sbin/userdel
61 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
68 Obsoletes: sendmail-cf
69 Obsoletes: sendmail-doc
73 %define _sysconfdir /etc/mail
76 The Sendmail program is a very widely used Mail Transport Agent (MTA).
77 MTAs send mail from one machine to another. Sendmail is not a client
78 program, which you use to read your e-mail. Sendmail is a
79 behind-the-scenes program which actually moves your e-mail over
80 networks or the Internet to where you want it to go.
83 Sendmail überträgt Mails zwischen Rechnern. Es implementiert eine
84 allgemeine Mail-Routing-Funktion über das Netzwerk mit Aliasing und
85 Weiterleiten von Nachrichten, automatischem Routing an
86 Netzwerk-Gateways und flexible Konfiguration. Wenn Sie E-Mails über
87 das Internet senden und empfangen möchten, brauchen Sie sendmail.
90 sendmail es un agente de transporte de correo electrónico, que mueve
91 mensajes entre máquinas. Implementa facilidades de internetwork y
92 rutado, caracterizando cambio de nombres (aliases) y envío a nuevas
93 direcciones ( forwarding ), rutado automático para gateways de la red
94 y configuración flexible. Necesitarás del sendmail si deseas enviar y
95 recibir mensajes a través de la Internet.
98 Sendmail est un agent de transport de courrier, qui est le programme
99 transférent le courrier d'une machine à l'autre. Sendmail implémente
100 une facilité générale de routage de courrier entre les réseaux, permet
101 l'\"aliasing\" et le \"forwarding\", un routage automatique sur les
102 passerelles du réseau, et une configuration flexible.
105 Sendmail jest programem umo¿liwiaj±cym wymianê poczty elektronicznej
106 miêdzy komputerami w sieci (MTA). Zajmuje siê przekazywaniem poczty
107 elektronicznej miêdzy bramkami pocztowymi i dostarczaniem przesy³ek na
108 konta docelowe. Bardzo dobrze obs³uguje aliasy pocztowe a jego
109 dodatkowym atutem jest prosta konfiguracja. Dziêki rozbudowanym
110 mo¿liwo¶ciom konfiguracyjnym jest w stanie dostarczaæ przesy³ki za
111 po¶rednictwem protoko³ów: SMTP, ESMTP, UUCP, X.400 i innych.
113 %description -l pt_BR
114 O sendmail é um agente de transporte de correio eletrônico, que move
115 mensagens entre máquinas. Ele implementa facilidades de internetwork e
116 roteamento, caracterizando troca de nomes (aliases) e remessa a novos
117 endereços ( forwarding ), roteamento automático para gateways da rede
118 e configuração flexível.
121 Sendmail - ÜÔÏ Mail Transport Agent, ÐÒÏÇÒÁÍÍÁ ÐÅÒÅÓÙÌÁÀÝÁÑ ÐÏÞÔÕ Ó
122 ÍÁÛÉÎÙ ÎÁ ÍÁÛÉÎÕ. Sendmail ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ÓÔÁÎÄÁÒÔÎÙÅ ÓÒÅÄÓÔ×Á
123 ÍÅÖÓÅÔÅ×ÏÊ ÍÁÒÛÒÕÔÉÚÁÃÉÉ ÐÏÞÔÙ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÅÓËÕÀ
124 ÍÁÒÛÒÕÔÉÚÁÃÉÀ ÄÌÑ ÓÅÔÅ×ÙÈ ÛÌÀÚÏ× É ÇÉÂËÉÊ ÍÅÈÁÎÉÚÍ ËÏÎÆÉÇÕÒÁÃÉÉ.
127 Sendmail, bir mektubu bir makineden diðerine taþýr. Pek çok davranýþý
128 ayarlanabilir. Internet üzerinden mektup almak veya göndermek
129 istiyorsanýz bu pakete gereksiniminiz olacaktýr.
132 Sendmail - ÃÅ Mail Transport Agent, ÐÒÏÇÒÁÍÁ ÝÏ ÐÅÒÅÓÉÌÁ¤ ÐÏÛÔÕ Ú
133 ÍÁÛÉÎÉ ÎÁ ÍÁÛÉÎÕ. Sendmail ÎÁÄÁ¤ ÓÔÁÎÄÁÒÔΦ ÚÁÓÏÂÉ Í¦ÖÍÅÒÅÖÅ×ϧ
134 ÍÁÒÛÒÕÔÉÚÁæ§ ÐÏÛÔÉ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÎÕ ÍÁÒÛÒÕÔÉÚÁæÀ
135 ÄÌÑ ÍÅÒÅÖÅ×ÉÈ ÛÌÀÚ¦× ÔÁ ÇÎÕÞËÉÊ ÍÅÈÁΦÚÍ ÍÁÒÛÒÕÔÉÚÁæ§.
146 %if %{?_with_pgsql:1}%{!?_with_pgsql:0}
150 sed -e 's|@@PATH@@|\.\.|' < %{SOURCE6} > cf/cf/pld.mc
152 install %{SOURCE7} config.m4
155 echo "define(\`confCC', \`%{__cc}')" >> config.m4
156 echo "define(\`confOPTIMIZE', \`%{rpmcflags} -DUSE_VENDOR_CF_PATH=1 -DNETINET6')" >> config.m4
157 echo "define(\`confLIBSEARCH', \`db')" >> config.m4
158 %if %{?debug:0}%{!?debug:1}
159 echo "define(\`confLDOPTS', \`-s')" >> config.m4
161 %if %{?_without_ldap:0}%{!?_without_ldap:1}
162 echo "APPENDDEF(\`confMAPDEF', \`-DLDAPMAP')" >> config.m4
163 echo "APPENDDEF(\`confLIBS', \`-lldap -llber')" >> config.m4
165 %if %{?_with_pgsql:1}%{!?_with_pgsql:0}
166 echo "APPENDDEF(\`confENVDEF', \`-DSASL')" >> config.m4
167 echo "APPENDDEF(\`confMAPDEF', \`-DPGSQLMAP')" >> config.m4
168 echo "APPENDDEF(\`confLIBS', \`-lpq -lresolv')" >> config.m4
169 echo "APPENDDEF(\`confLIBS', \`-lsasl -lcrypto')" >> config.m4
171 %if %{?_without_tls:0}%{!?_without_tls:1}
172 echo "APPENDDEF(\`confENVDEF', \`-DSTARTTLS')" >> config.m4
173 echo "APPENDDEF(\`confLIBS', \`-lssl -lcrypto')" >> config.m4
176 cd sendmail && sh Build -f ../config.m4
177 cd ../mailstats && sh Build -f ../config.m4
178 cd ../rmail && sh Build -f ../config.m4
179 cd ../makemap && sh Build -f ../config.m4
180 cd ../praliases && sh Build -f ../config.m4
181 cd ../smrsh && sh Build -f ../config.m4
186 rm -rf $RPM_BUILD_ROOT
187 install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig,sasl,smrsh}} \
188 $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT%{_sbindir} $RPM_BUILD_ROOT%{_libdir} \
189 $RPM_BUILD_ROOT%{_mandir}/man{1,5,8} \
190 $RPM_BUILD_ROOT/var/log $RPM_BUILD_ROOT/var/spool/mqueue \
191 $RPM_BUILD_ROOT%{_libdir}/sendmail-cf \
192 $RPM_BUILD_ROOT/etc/pam.d \
194 OBJDIR=obj.$(uname -s).$(uname -r).$(arch)
198 SMINSTOPT="DESTDIR=$RPM_BUILD_ROOT SBINOWN=$IDNU SBINGRP=$IDNG \
199 UBINOWN=$IDNU UBINGRP=$IDNG MANOWN=$IDNU MANGRP=$IDNG \
200 CFOWN=$IDNU CFGRP=$IDNG MSPQOWN=$IDNU GBINGRP=$IDNG GBINOWN=$IDNU \
201 BINOWN=$IDNU BINGRP=$IDNG"
202 %{__make} $SMINSTOPT install -C $OBJDIR/sendmail
203 %{__make} $SMINSTOPT install -C $OBJDIR/mailstats
204 %{__make} $SMINSTOPT install -C $OBJDIR/praliases
205 %{__make} $SMINSTOPT force-install -C $OBJDIR/rmail
206 %{__make} $SMINSTOPT install -C $OBJDIR/makemap
207 ln -sf /usr/sbin/makemap $RPM_BUILD_ROOT%{_bindir}/makemap
208 %{__make} $SMINSTOPT install -C $OBJDIR/smrsh
210 # install the cf files
212 rm -f cf/{Build,Makefile} feature/*~
213 cp -ar * $RPM_BUILD_ROOT%{_libdir}/sendmail-cf
217 install cf/cf/pld.cf $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf
218 sed -e 's|@@PATH@@|%{_libdir}/sendmail-cf|' < %{SOURCE6} \
219 > $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.mc
221 %if %{?_with_pgsql:1}%{!?_with_pgsql:0}
222 install bluelabs.mc $RPM_BUILD_ROOT%{_sysconfdir}/bluelabs.mc
225 # submit.mc (submit.cf is installed automatically)
226 install cf/cf/submit.mc $RPM_BUILD_ROOT%{_sysconfdir}
228 echo "# local-host-names - include all aliases for your machine here." \
229 > $RPM_BUILD_ROOT%{_sysconfdir}/local-host-names
231 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT%{_libdir}/sendmail
234 for f in hoststat mailq newaliases purgestat ; do
235 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT%{_bindir}/${f}
238 for map in virtusertable access domaintable mailertable ; do
239 touch $RPM_BUILD_ROOT%{_sysconfdir}/${map}
240 $RPM_BUILD_ROOT%{_sbindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
241 $RPM_BUILD_ROOT%{_sysconfdir}/${map}.db < $RPM_BUILD_ROOT%{_sysconfdir}/${map}
244 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/aliases
245 $RPM_BUILD_ROOT%{_sbindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
246 $RPM_BUILD_ROOT%{_sysconfdir}/aliases.db < %{SOURCE3}
248 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/sendmail
249 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sendmail
250 install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/Makefile
251 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sasl/Sendmail.conf
252 install %{SOURCE13} $RPM_BUILD_ROOT/etc/pam.d/smtp
253 install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/access
254 install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/mailertable
255 install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/virtusertable
256 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/domaintable
258 mv -f smrsh/README README.smrsh
259 mv -f cf/README README.cf
262 bzip2 -dc %{SOURCE4} | tar xf -
265 rm -rf $RPM_BUILD_ROOT
268 if [ -n "`/usr/bin/getgid smmsp`" ]; then
269 if [ "`/usr/bin/getgid smmsp`" != "25" ]; then
270 echo "Error: group smmsp doesn't have gid=25. Correct this before installing sendmail." 1>&2
274 /usr/sbin/groupadd -g 25 -r -f smmsp
276 if [ -n "`/bin/id -u smmsp 2>/dev/null`" ]; then
277 if [ "`/bin/id -u smmsp`" != "25" ]; then
278 echo "Error: user smmsp doesn't have uid=25. Correct this before installing sendmail." 1>&2
282 /usr/sbin/useradd -u 25 -r -d /var/spool/clientqueue -s /bin/false -c "Sendmail Message Submission Program" -g smmsp smmsp 1>&2
287 # Convert old format to new
289 if [ -f /etc/mail/deny ] ; then
290 cat /etc/mail/deny | \
291 awk 'BEGIN{ print "# Entries from obsoleted /etc/mail/deny"} \
292 {print $1" REJECT"}' >> /etc/mail/access
293 mv -f /etc/mail/deny /etc/mail/deny.rpmorig
295 for oldfile in relay_allow ip_allow name_allow ; do
296 if [ -f /etc/mail/$oldfile ] ; then
297 cat /etc/mail/$oldfile | \
298 awk "BEGIN { print \"# Entries from obsoleted /etc/mail/$oldfile\" ;} \
299 { print $1\" RELAY\" }" >> /etc/mail/access
300 mv -f /etc/mail/$oldfile /etc/mail/$oldfile.rpmorig
305 # Oops, these files moved
307 if [ -f /etc/sendmail.cw ] ; then
308 cat /etc/sendmail.cw | \
309 awk 'BEGIN { print "# Entries from obsoleted /etc/sendmail.cw" ;} \
310 { print $1 }' >> /etc/mail/local-host-names
311 mv -f /etc/sendmail.cw /etc/sendmail.cw.rpmorig
314 # Rebuild maps (next reboot will rebuild also)
316 { /usr/bin/newaliases
317 for map in virtusertable access domaintable mailertable; do
318 if [ -f /etc/mail/${map} ] ; then
319 /usr/bin/makemap hash /etc/mail/${map} < /etc/mail/${map}
325 /sbin/chkconfig --add sendmail
326 if [ -f /var/lock/subsys/sendmail ]; then
327 /etc/rc.d/init.d/sendmail restart >&2
329 echo "Run \"/etc/rc.d/init.d/sendmail start\" to start sendmail daemon." >&2
333 if [ "$1" = "0" ]; then
334 if [ -f /var/lock/subsys/sendmail ]; then
335 /etc/rc.d/init.d/sendmail stop >&2
337 /sbin/chkconfig --del sendmail
341 if [ "$1" = "0" ]; then
342 /usr/sbin/userdel smmsp 2>/dev/null
343 /usr/sbin/groupdel smmsp 2>/dev/null
346 # removal of compatibility links
347 %triggerpostun -- sendmail < 8.10.1
348 /sbin/chkconfig --add sendmail
351 %defattr(644,root,root,755)
352 %doc FAQ KNOWNBUGS README* op.me RELEASE_NOTES examples/
353 %attr(755,root,root) %{_sbindir}/mailstats
354 %attr(755,root,root) %{_sbindir}/praliases
355 %attr(755,root,root) %{_bindir}/hoststat
356 %attr(755,root,root) %{_bindir}/purgestat
357 %attr(755,root,root) %{_bindir}/rmail
358 %attr(755,root,root) %{_bindir}/makemap
359 %attr(755,root,root) %{_sbindir}/makemap
360 %attr(2755,root,smmsp) %{_sbindir}/sendmail
361 %attr(755,root,root) %{_bindir}/newaliases
362 %attr(755,root,root) %{_bindir}/mailq
363 %attr(755,root,root) %{_sbindir}/smrsh
366 %{_mandir}/man1/mailq.1*
367 %{_mandir}/man1/newaliases.1*
368 %{_mandir}/man5/aliases.5*
369 %{_mandir}/man8/mailstats.8*
370 %{_mandir}/man8/makemap.8*
371 %{_mandir}/man8/praliases.8*
372 %{_mandir}/man8/rmail.8*
373 %{_mandir}/man8/sendmail.8*
374 %{_mandir}/man8/smrsh.8*
379 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sendmail.cf
380 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sendmail.mc
381 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/submit.cf
382 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/submit.mc
383 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/local-host-names
384 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/aliases
385 %{?_with_pgsql:%{_sysconfdir}/bluelabs.mc}
386 %attr(644,root,mail) %ghost %{_sysconfdir}/aliases.db
387 %attr(770,root,smmsp) %dir /var/spool/clientmqueue
388 %attr(750,root,mail) %dir /var/spool/mqueue
390 %config %{_sysconfdir}/Makefile
391 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/access
392 %ghost %{_sysconfdir}/access.db
393 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/domaintable
394 %ghost %{_sysconfdir}/domaintable.db
395 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/mailertable
396 %ghost %{_sysconfdir}/mailertable.db
397 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/virtusertable
398 %ghost %{_sysconfdir}/virtusertable.db
399 %config(noreplace) %{_sysconfdir}/helpfile
401 %attr(754,root,root) /etc/rc.d/init.d/sendmail
402 %config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/sendmail
403 %config(noreplace) %verify(not md5 size mtime) /etc/sasl/Sendmail.conf
404 %config(noreplace) %verify(not md5 size mtime) /etc/pam.d/smtp
406 %dir %{_libdir}/sendmail-cf
407 %dir %{_libdir}/sendmail-cf/cf
408 %{_libdir}/sendmail-cf/cf/pld.mc
409 %{_libdir}/sendmail-cf/feature
410 %{_libdir}/sendmail-cf/m4
411 %{_libdir}/sendmail-cf/mailer
412 %dir %{_libdir}/sendmail-cf/ostype
413 %{_libdir}/sendmail-cf/ostype/linux.m4
414 %dir %{_libdir}/sendmail-cf/sh
415 %{_libdir}/sendmail-cf/sh/makeinfo.sh
416 %{_libdir}/sendmail-cf/siteconfig