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-%{version}
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 -
247 gzip -9nf FAQ KNOWNBUGS README* op.me RELEASE_NOTES
250 rm -rf $RPM_BUILD_ROOT
253 if [ -n "`/usr/bin/getgid smmsp`" ]; then
254 if [ "`/usr/bin/getgid smmsp`" != "25" ]; then
255 echo "Warning: group smmsp haven't gid=25. Correct this before installing sendmail." 1>&2
259 /usr/sbin/groupadd -g 25 -r -f smmsp
261 if [ -n "`/bin/id -u smmsp 2>/dev/null`" ]; then
262 if [ "`/bin/id -u smmsp`" != "25" ]; then
263 echo "Warning: user smmsp haven't uid=25. Correct this before installing sendmail." 1>&2
267 /usr/sbin/useradd -u 25 -r -d /var/spool/clientqueue -s /bin/false -c "Sendmail Message Submission Program" -g smmsp smmsp 1>&2
272 # Convert old format to new
274 if [ -f /etc/mail/deny ] ; then
275 cat /etc/mail/deny | \
276 awk 'BEGIN{ print "# Entries from obsoleted /etc/mail/deny"} \
277 {print $1" REJECT"}' >> /etc/mail/access
278 mv -f /etc/mail/deny /etc/mail/deny.rpmorig
280 for oldfile in relay_allow ip_allow name_allow ; do
281 if [ -f /etc/mail/$oldfile ] ; then
282 cat /etc/mail/$oldfile | \
283 awk "BEGIN { print \"# Entries from obsoleted /etc/mail/$oldfile\" ;} \
284 { print $1\" RELAY\" }" >> /etc/mail/access
285 mv -f /etc/mail/$oldfile /etc/mail/$oldfile.rpmorig
290 # Oops, these files moved
292 if [ -f /etc/sendmail.cw ] ; then
293 cat /etc/sendmail.cw | \
294 awk 'BEGIN { print "# Entries from obsoleted /etc/sendmail.cw" ;} \
295 { print $1 }' >> /etc/mail/local-host-names
296 mv -f /etc/sendmail.cw /etc/sendmail.cw.rpmorig
299 # Rebuild maps (next reboot will rebuild also)
301 { /usr/bin/newaliases
302 for map in virtusertable access domaintable mailertable; do
303 if [ -f /etc/mail/${map} ] ; then
304 /usr/bin/makemap hash /etc/mail/${map} < /etc/mail/${map}
310 /sbin/chkconfig --add sendmail
311 if [ -f /var/lock/subsys/sendmail ]; then
312 /etc/rc.d/init.d/sendmail restart >&2
314 echo "Run \"/etc/rc.d/init.d/sendmail start\" to start sendmail daemon." >&2
318 if [ "$1" = "0" ]; then
319 if [ -f /var/lock/subsys/sendmail ]; then
320 /etc/rc.d/init.d/sendmail stop >&2
322 /sbin/chkconfig --del sendmail
326 if [ "$1" = "0" ]; then
327 /usr/sbin/userdel smmsp 2>/dev/null
328 /usr/sbin/groupdel smmsp 2>/dev/null
331 # removal of compatibility links
332 %triggerpostun -- sendmail < 8.10.1
333 /sbin/chkconfig --add sendmail
336 %defattr(644,root,root,755)
338 %attr(755,root,root) %{_sbindir}/mailstats
339 %attr(755,root,root) %{_sbindir}/praliases
340 %attr(755,root,root) %{_bindir}/hoststat
341 %attr(755,root,root) %{_bindir}/purgestat
342 %attr(755,root,root) %{_bindir}/rmail
343 %attr(755,root,root) %{_bindir}/makemap
344 %attr(755,root,root) %{_sbindir}/makemap
345 %attr(2755,root,smmsp) %{_sbindir}/sendmail
346 %attr(755,root,root) %{_bindir}/newaliases
347 %attr(755,root,root) %{_bindir}/mailq
348 %attr(755,root,root) %{_sbindir}/smrsh
351 %{_mandir}/man8/rmail.8*
352 %{_mandir}/man8/praliases.8*
353 %{_mandir}/man8/mailstats.8*
354 %{_mandir}/man8/makemap.8*
355 %{_mandir}/man8/sendmail.8*
356 %{_mandir}/man5/aliases.5*
357 %{_mandir}/man1/newaliases.1*
358 %{_mandir}/man1/mailq.1*
363 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sendmail.cf
364 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sendmail.mc
365 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/submit.cf
366 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/submit.mc
367 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/local-host-names
368 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/aliases
369 %{?_with_pgsql:%attr(644,root,root) /etc/mail/bluelabs.mc}
370 %attr(644,root,mail) %ghost %{_sysconfdir}/aliases.db
371 %attr(770,root,smmsp) %dir /var/spool/clientmqueue
372 %attr(750,root,mail) %dir /var/spool/mqueue
373 %attr(755,root,root) %dir /etc/pam.d
375 %config %{_sysconfdir}/Makefile
376 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/access
377 %ghost %{_sysconfdir}/access.db
378 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/domaintable
379 %ghost %{_sysconfdir}/domaintable.db
380 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/mailertable
381 %ghost %{_sysconfdir}/mailertable.db
382 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/virtusertable
383 %ghost %{_sysconfdir}/virtusertable.db
384 %config(noreplace) %{_sysconfdir}/helpfile
386 %attr(754,root,root) /etc/rc.d/init.d/sendmail
387 %config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/sendmail
388 %config(noreplace) %verify(not md5 size mtime) /etc/sasl/Sendmail.conf
389 %config(noreplace) %verify(not md5 size mtime) /etc/pam.d/smtp
391 %dir %{_libdir}/sendmail-cf
392 %dir %{_libdir}/sendmail-cf/cf
393 %{_libdir}/sendmail-cf/cf/pld.mc
394 %{_libdir}/sendmail-cf/feature
395 %{_libdir}/sendmail-cf/m4
396 %{_libdir}/sendmail-cf/mailer
397 %dir %{_libdir}/sendmail-cf/ostype
398 %{_libdir}/sendmail-cf/ostype/linux.m4
399 %dir %{_libdir}/sendmail-cf/sh
400 %{_libdir}/sendmail-cf/sh/makeinfo.sh
401 %{_libdir}/sendmail-cf/siteconfig