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(fr): Agent de transport de courrier sendmail
10 Summary(pl): Sendmail - serwer poczty elektronicznej
11 Summary(ru): ðÏÞÔÏ×ÙÊ ÔÒÁÎÓÐÏÒÔÎÙÊ ÁÇÅÎÔ sendmail
12 Summary(tr): Elektronik posta hizmetleri sunucusu
13 Summary(uk): ðÏÛÔÏ×ÉÊ ÔÒÁÎÓÐÏÒÔÎÉÊ ÁÇÅÎÔ sendmail
18 Group: Networking/Daemons
19 Source0: ftp://ftp.sendmail.org/pub/sendmail/%{name}.%{version}.tar.gz
21 Source2: %{name}.sysconfig
22 Source3: %{name}.aliases
23 # From http://doc.phpauction.org/sendmail/examples/
24 Source4: %{name}-examples.tar.bz2
25 Source5: %{name}-etc-mail-Makefile
27 Source7: %{name}-config.m4
29 Source9: %{name}.access
30 Source10: %{name}.mailertable
31 Source11: %{name}.virtusertable
32 Source12: %{name}.domaintable
33 Source13: %{name}-smtp.pamd
34 Patch0: %{name}-makemapman.patch
35 Patch1: %{name}-smrsh-paths.patch
36 Patch2: %{name}-rmail.patch
37 Patch3: %{name}-os-paths.patch
38 Patch4: %{name}-m4path.patch
39 Patch5: %{name}-redirect.patch
40 Patch6: %{name}-hprescan-dos.patch
41 Patch7: http://blue-labs.org/clue/bluelabs.patch-8.12.3
42 BuildRequires: cyrus-sasl-devel
43 BuildRequires: db3-devel
44 %{!?_without_ldap:BuildRequires: openldap-devel}
45 %{!?_without_tls:BuildRequires: openssl-devel}
46 %{?_with_pgsql:BuildRequires: postgresql-devel}
49 PreReq: /sbin/chkconfig
50 Requires(pre): /bin/id
51 Requires(pre): /usr/bin/getgid
52 Requires(pre): /usr/sbin/groupadd
53 Requires(pre): /usr/sbin/useradd
55 Requires(post): textutils
56 Requires(postun): /usr/sbin/groupdel
57 Requires(postun): /usr/sbin/userdel
59 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
66 Obsoletes: sendmail-cf
67 Obsoletes: sendmail-doc
71 %define _sysconfdir /etc/mail
74 The Sendmail program is a very widely used Mail Transport Agent (MTA).
75 MTAs send mail from one machine to another. Sendmail is not a client
76 program, which you use to read your e-mail. Sendmail is a
77 behind-the-scenes program which actually moves your e-mail over
78 networks or the Internet to where you want it to go.
81 Sendmail überträgt Mails zwischen Rechnern. Es implementiert eine
82 allgemeine Mail-Routing-Funktion über das Netzwerk mit Aliasing und
83 Weiterleiten von Nachrichten, automatischem Routing an
84 Netzwerk-Gateways und flexible Konfiguration. Wenn Sie E-Mails über
85 das Internet senden und empfangen möchten, brauchen Sie sendmail.
88 Sendmail est un agent de transport de courrier, qui est le programme
89 transférent le courrier d'une machine à l'autre. Sendmail implémente
90 une facilité générale de routage de courrier entre les réseaux, permet
91 l'\"aliasing\" et le \"forwarding\", un routage automatique sur les
92 passerelles du réseau, et une configuration flexible.
95 Sendmail jest programem umo¿liwiaj±cym wymianê poczty elektronicznej
96 miêdzy komputerami w sieci (MTA). Zajmuje siê przekazywaniem poczty
97 elektronicznej miêdzy bramkami pocztowymi i dostarczaniem przesy³ek na
98 konta docelowe. Bardzo dobrze obs³uguje aliasy pocztowe a jego
99 dodatkowym atutem jest prosta konfiguracja. Dziêki rozbudowanym
100 mo¿liwo¶ciom konfiguracyjnym jest w stanie dostarczaæ przesy³ki za
101 po¶rednictwem protoko³ów: SMTP, ESMTP, UUCP, X.400 i innych.
104 Sendmail - ÜÔÏ Mail Transport Agent, ÐÒÏÇÒÁÍÍÁ ÐÅÒÅÓÙÌÁÀÝÁÑ ÐÏÞÔÕ Ó
105 ÍÁÛÉÎÙ ÎÁ ÍÁÛÉÎÕ. Sendmail ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ÓÔÁÎÄÁÒÔÎÙÅ ÓÒÅÄÓÔ×Á
106 ÍÅÖÓÅÔÅ×ÏÊ ÍÁÒÛÒÕÔÉÚÁÃÉÉ ÐÏÞÔÙ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÅÓËÕÀ
107 ÍÁÒÛÒÕÔÉÚÁÃÉÀ ÄÌÑ ÓÅÔÅ×ÙÈ ÛÌÀÚÏ× É ÇÉÂËÉÊ ÍÅÈÁÎÉÚÍ ËÏÎÆÉÇÕÒÁÃÉÉ.
110 Sendmail, bir mektubu bir makineden diðerine taþýr. Pek çok davranýþý
111 ayarlanabilir. Internet üzerinden mektup almak veya göndermek
112 istiyorsanýz bu pakete gereksiniminiz olacaktýr.
115 Sendmail - ÃÅ Mail Transport Agent, ÐÒÏÇÒÁÍÁ ÝÏ ÐÅÒÅÓÉÌÁ¤ ÐÏÛÔÕ Ú
116 ÍÁÛÉÎÉ ÎÁ ÍÁÛÉÎÕ. Sendmail ÎÁÄÁ¤ ÓÔÁÎÄÁÒÔΦ ÚÁÓÏÂÉ Í¦ÖÍÅÒÅÖÅ×ϧ
117 ÍÁÒÛÒÕÔÉÚÁæ§ ÐÏÛÔÉ, aliasing, forwarding, Á×ÔÏÍÁÔÉÞÎÕ ÍÁÒÛÒÕÔÉÚÁæÀ
118 ÄÌÑ ÍÅÒÅÖÅ×ÉÈ ÛÌÀÚ¦× ÔÁ ÇÎÕÞËÉÊ ÍÅÈÁΦÚÍ ÍÁÒÛÒÕÔÉÚÁæ§.
129 %if %{?_with_pgsql:1}%{!?_with_pgsql:0}
133 sed -e 's|@@PATH@@|\.\.|' < %{SOURCE6} > cf/cf/pld.mc
135 install %{SOURCE7} config.m4
138 echo "define(\`confCC', \`%{__cc}')" >> config.m4
139 echo "define(\`confOPTIMIZE', \`%{rpmcflags} -DUSE_VENDOR_CF_PATH=1 -DNETINET6')" >> config.m4
140 %if %{?debug:0}%{!?debug:1}
141 echo "define(\`confLDOPTS', \`-s')" >> config.m4
143 %if %{?_without_ldap:0}%{!?_without_ldap:1}
144 echo "APPENDDEF(\`confMAPDEF', \`-DLDAPMAP')" >> config.m4
145 echo "APPENDDEF(\`confLIBS', \`-lldap -llber')" >> config.m4
147 %if %{?_with_pgsql:1}%{!?_with_pgsql:0}
148 echo "APPENDDEF(\`confENVDEF', \`-DSASL')" >> config.m4
149 echo "APPENDDEF(\`confMAPDEF', \`-DPGSQLMAP')" >> config.m4
150 echo "APPENDDEF(\`confLIBS', \`-lpq -lresolv')" >> config.m4
151 echo "APPENDDEF(\`confLIBS', \`-lsasl -lcrypto')" >> config.m4
153 %if %{?_without_tls:0}%{!?_without_tls:1}
154 echo "APPENDDEF(\`confENVDEF', \`-DSTARTTLS')" >> config.m4
155 echo "APPENDDEF(\`confLIBS', \`-lssl -lcrypto')" >> config.m4
158 cd sendmail && sh Build -f ../config.m4
159 cd ../mailstats && sh Build -f ../config.m4
160 cd ../rmail && sh Build -f ../config.m4
161 cd ../makemap && sh Build -f ../config.m4
162 cd ../praliases && sh Build -f ../config.m4
163 cd ../smrsh && sh Build -f ../config.m4
168 rm -rf $RPM_BUILD_ROOT
169 install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig,sasl,smrsh}} \
170 $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT%{_sbindir} $RPM_BUILD_ROOT%{_libdir} \
171 $RPM_BUILD_ROOT%{_mandir}/man{1,5,8} \
172 $RPM_BUILD_ROOT/var/log $RPM_BUILD_ROOT/var/spool/mqueue \
173 $RPM_BUILD_ROOT%{_libdir}/sendmail-cf \
174 $RPM_BUILD_ROOT/etc/pam.d \
176 OBJDIR=obj.$(uname -s).$(uname -r).$(arch)
180 SMINSTOPT="DESTDIR=$RPM_BUILD_ROOT SBINOWN=$IDNU SBINGRP=$IDNG \
181 UBINOWN=$IDNU UBINGRP=$IDNG MANOWN=$IDNU MANGRP=$IDNG \
182 CFOWN=$IDNU CFGRP=$IDNG MSPQOWN=$IDNU GBINGRP=$IDNG GBINOWN=$IDNU \
183 BINOWN=$IDNU BINGRP=$IDNG"
184 %{__make} $SMINSTOPT install -C $OBJDIR/sendmail
185 %{__make} $SMINSTOPT install -C $OBJDIR/mailstats
186 %{__make} $SMINSTOPT install -C $OBJDIR/praliases
187 %{__make} $SMINSTOPT force-install -C $OBJDIR/rmail
188 %{__make} $SMINSTOPT install -C $OBJDIR/makemap
189 ln -sf ../sbin/makemap $RPM_BUILD_ROOT%{_bindir}/makemap
190 %{__make} $SMINSTOPT install -C $OBJDIR/smrsh
192 # install the cf files
194 rm -f cf/{Build,Makefile} feature/*~
195 cp -ar * $RPM_BUILD_ROOT%{_libdir}/sendmail-cf
199 install cf/cf/pld.cf $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf
200 sed -e 's|@@PATH@@|%{_libdir}/sendmail-cf|' < %{SOURCE6} \
201 > $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.mc
203 %if %{?_with_pgsql:1}%{!?_with_pgsql:0}
204 install bluelabs.mc $RPM_BUILD_ROOT%{_sysconfdir}/bluelabs.mc
207 # submit.mc (submit.cf is installed automatically)
208 install cf/cf/submit.mc $RPM_BUILD_ROOT%{_sysconfdir}
210 echo "# local-host-names - include all aliases for your machine here." \
211 > $RPM_BUILD_ROOT%{_sysconfdir}/local-host-names
213 ln -sf ../sbin/sendmail $RPM_BUILD_ROOT%{_libdir}/sendmail
216 for f in hoststat mailq newaliases purgestat ; do
217 ln -sf ../sbin/sendmail $RPM_BUILD_ROOT%{_bindir}/${f}
221 for map in virtusertable access domaintable mailertable ; do
222 touch $RPM_BUILD_ROOT%{_sysconfdir}/${map}
223 $RPM_BUILD_ROOT%{_bindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
224 $RPM_BUILD_ROOT%{_sysconfdir}/${map}.db < $RPM_BUILD_ROOT%{_sysconfdir}/${map}
227 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/aliases
228 $RPM_BUILD_ROOT%{_bindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
229 $RPM_BUILD_ROOT%{_sysconfdir}/aliases.db < %{SOURCE3}
231 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/sendmail
232 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sendmail
233 install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/Makefile
234 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sasl/Sendmail.conf
235 install %{SOURCE13} $RPM_BUILD_ROOT/etc/pam.d/smtp
236 install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/access
237 install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/mailertable
238 install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/virtusertable
239 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/domaintable
241 mv -f smrsh/README README.smrsh
242 mv -f cf/README README.cf
245 bzip2 -dc %{SOURCE4} | tar xf -
248 rm -rf $RPM_BUILD_ROOT
251 if [ -n "`/usr/bin/getgid smmsp`" ]; then
252 if [ "`/usr/bin/getgid smmsp`" != "25" ]; then
253 echo "Warning: group smmsp haven't gid=25. Correct this before installing sendmail." 1>&2
257 /usr/sbin/groupadd -g 25 -r -f smmsp
259 if [ -n "`/bin/id -u smmsp 2>/dev/null`" ]; then
260 if [ "`/bin/id -u smmsp`" != "25" ]; then
261 echo "Warning: user smmsp haven't uid=25. Correct this before installing sendmail." 1>&2
265 /usr/sbin/useradd -u 25 -r -d /var/spool/clientqueue -s /bin/false -c "Sendmail Message Submission Program" -g smmsp smmsp 1>&2
270 # Convert old format to new
272 if [ -f /etc/mail/deny ] ; then
273 cat /etc/mail/deny | \
274 awk 'BEGIN{ print "# Entries from obsoleted /etc/mail/deny"} \
275 {print $1" REJECT"}' >> /etc/mail/access
276 mv -f /etc/mail/deny /etc/mail/deny.rpmorig
278 for oldfile in relay_allow ip_allow name_allow ; do
279 if [ -f /etc/mail/$oldfile ] ; then
280 cat /etc/mail/$oldfile | \
281 awk "BEGIN { print \"# Entries from obsoleted /etc/mail/$oldfile\" ;} \
282 { print $1\" RELAY\" }" >> /etc/mail/access
283 mv -f /etc/mail/$oldfile /etc/mail/$oldfile.rpmorig
288 # Oops, these files moved
290 if [ -f /etc/sendmail.cw ] ; then
291 cat /etc/sendmail.cw | \
292 awk 'BEGIN { print "# Entries from obsoleted /etc/sendmail.cw" ;} \
293 { print $1 }' >> /etc/mail/local-host-names
294 mv -f /etc/sendmail.cw /etc/sendmail.cw.rpmorig
297 # Rebuild maps (next reboot will rebuild also)
299 { /usr/bin/newaliases
300 for map in virtusertable access domaintable mailertable; do
301 if [ -f /etc/mail/${map} ] ; then
302 /usr/bin/makemap hash /etc/mail/${map} < /etc/mail/${map}
308 /sbin/chkconfig --add sendmail
309 if [ -f /var/lock/subsys/sendmail ]; then
310 /etc/rc.d/init.d/sendmail restart >&2
312 echo "Run \"/etc/rc.d/init.d/sendmail start\" to start sendmail daemon." >&2
316 if [ "$1" = "0" ]; then
317 if [ -f /var/lock/subsys/sendmail ]; then
318 /etc/rc.d/init.d/sendmail stop >&2
320 /sbin/chkconfig --del sendmail
324 if [ "$1" = "0" ]; then
325 /usr/sbin/userdel smmsp 2>/dev/null
326 /usr/sbin/groupdel smmsp 2>/dev/null
329 # removal of compatibility links
330 %triggerpostun -- sendmail < 8.10.1
331 /sbin/chkconfig --add sendmail
334 %defattr(644,root,root,755)
335 %doc FAQ KNOWNBUGS README* op.me RELEASE_NOTES examples/
336 %attr(755,root,root) %{_sbindir}/mailstats
337 %attr(755,root,root) %{_sbindir}/praliases
338 %attr(755,root,root) %{_bindir}/hoststat
339 %attr(755,root,root) %{_bindir}/purgestat
340 %attr(755,root,root) %{_bindir}/rmail
341 %attr(755,root,root) %{_bindir}/makemap
342 %attr(755,root,root) %{_sbindir}/makemap
343 %attr(2755,root,smmsp) %{_sbindir}/sendmail
344 %attr(755,root,root) %{_bindir}/newaliases
345 %attr(755,root,root) %{_bindir}/mailq
346 %attr(755,root,root) %{_sbindir}/smrsh
349 %{_mandir}/man8/rmail.8*
350 %{_mandir}/man8/praliases.8*
351 %{_mandir}/man8/mailstats.8*
352 %{_mandir}/man8/makemap.8*
353 %{_mandir}/man8/sendmail.8*
354 %{_mandir}/man5/aliases.5*
355 %{_mandir}/man1/newaliases.1*
356 %{_mandir}/man1/mailq.1*
361 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sendmail.cf
362 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sendmail.mc
363 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/submit.cf
364 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/submit.mc
365 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/local-host-names
366 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/aliases
367 %{?_with_pgsql:%attr(644,root,root) /etc/mail/bluelabs.mc}
368 %attr(644,root,mail) %ghost %{_sysconfdir}/aliases.db
369 %attr(770,root,smmsp) %dir /var/spool/clientmqueue
370 %attr(750,root,mail) %dir /var/spool/mqueue
372 %config %{_sysconfdir}/Makefile
373 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/access
374 %ghost %{_sysconfdir}/access.db
375 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/domaintable
376 %ghost %{_sysconfdir}/domaintable.db
377 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/mailertable
378 %ghost %{_sysconfdir}/mailertable.db
379 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/virtusertable
380 %ghost %{_sysconfdir}/virtusertable.db
381 %config(noreplace) %{_sysconfdir}/helpfile
383 %attr(754,root,root) /etc/rc.d/init.d/sendmail
384 %config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/sendmail
385 %config(noreplace) %verify(not md5 size mtime) /etc/sasl/Sendmail.conf
386 %config(noreplace) %verify(not md5 size mtime) /etc/pam.d/smtp
388 %dir %{_libdir}/sendmail-cf
389 %dir %{_libdir}/sendmail-cf/cf
390 %{_libdir}/sendmail-cf/cf/pld.mc
391 %{_libdir}/sendmail-cf/feature
392 %{_libdir}/sendmail-cf/m4
393 %{_libdir}/sendmail-cf/mailer
394 %dir %{_libdir}/sendmail-cf/ostype
395 %{_libdir}/sendmail-cf/ostype/linux.m4
396 %dir %{_libdir}/sendmail-cf/sh
397 %{_libdir}/sendmail-cf/sh/makeinfo.sh
398 %{_libdir}/sendmail-cf/siteconfig