3 # _without_ldap - without LDAP
5 Summary: A widely used Mail Transport Agent (MTA)
6 Summary(de): sendmail-Mail-Übertragungsagent
7 Summary(fr): Agent de transport de courrier sendmail
8 Summary(pl): Sendmail - serwer poczty elektronicznej
9 Summary(tr): Elektronik posta hizmetleri sunucusu
14 Group: Networking/Daemons
15 Group(de): Netzwerkwesen/Server
16 Group(pl): Sieciowe/Serwery
18 Source0: ftp://ftp.sendmail.org/pub/sendmail/%{name}.%{version}.tar.gz
20 Source2: http://www.informatik.uni-kiel.de/~ca/email/rules/check.tar
22 Source4: %{name}.sysconfig
23 Source5: %{name}-etc-mail-Makefile
25 Source7: %{name}-config.m4
27 Patch0: %{name}-makefile.patch
28 #Patch0: %{name}-redhat.patch
29 Patch1: %{name}-makemapman.patch
30 Patch2: %{name}-smrsh-paths.patch
31 Patch3: %{name}-rmail.patch
32 Patch4: %{name}-manpath.patch
33 Patch5: %{name}-m4path.patch
34 Patch6: %{name}-dtelnet.patch
35 Patch7: %{name}-pld.mc.patch
36 Patch8: %{name}-redirect.patch
37 Patch9: %{name}-hprescan-dos.patch
38 Patch10: %{name}-aliasesDoS.patch
39 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
40 BuildRequires: cyrus-sasl-devel
41 BuildRequires: db3-devel
42 %{!?_without_ldap:BuildRequires: openldap-devel}
43 BuildRequires: pam-devel
45 Prereq: /sbin/chkconfig
52 Obsoletes: sendmail-cf
53 Obsoletes: sendmail-doc
58 %define _sysconfdir /etc/mail
61 The Sendmail program is a very widely used Mail Transport Agent (MTA).
62 MTAs send mail from one machine to another. Sendmail is not a client
63 program, which you use to read your e-mail. Sendmail is a
64 behind-the-scenes program which actually moves your e-mail over
65 networks or the Internet to where you want it to go.
68 Sendmail überträgt Mails zwischen Rechnern. Es implementiert eine
69 allgemeine Mail-Routing-Funktion über das Netzwerk mit Aliasing und
70 Weiterleiten von Nachrichten, automatischem Routing an
71 Netzwerk-Gateways und flexible Konfiguration. Wenn Sie E-Mails über
72 das Internet senden und empfangen möchten, brauchen Sie sendmail.
75 Sendmail est un agent de transport de courrier, qui est le programme
76 transférent le courrier d'une machine à l'autre. Sendmail implémente
77 une facilité générale de routage de courrier entre les réseaux, permet
78 l'\"aliasing\" et le \"forwarding\", un routage automatique sur les
79 passerelles du réseau, et une configuration flexible.
82 Sendmail jest programem umo¿liwiaj±cym wymianê poczty elektronicznej
83 miêdzy komputerami w sieci internet. Zajmuje siê przekazywaniem poczty
84 elektronicznej miêdzy bramkami pocztowymi i dostarczaniem przesy³ek na
85 konta docelowe. Bardzo dobrze obs³uguje aliasy pocztowe a jego
86 dodatkowym atutem jest prosta konfiguracja. Dziêki rozbudowanym
87 mo¿liwo¶ciom konfiguracyjnym jest w stanie dostarczaæ przesy³ki za
88 po¶rednictwem protoko³ów: SMTP, ESMTP, UUCP, X.400 i innych.
91 Sendmail, bir mektubu bir makineden diðerine taþýr. Pek çok davranýþý
92 ayarlanabilir. Internet üzerinden mektup almak veya göndermek
93 istiyorsanýz bu pakete gereksiniminiz olacaktýr.
109 # seems to be obsoleted...
110 #tar xf %{SOURCE2} -C cf
112 sed -e 's|@@PATH@@|\.\.|' < %{SOURCE6} > cf/cf/redhat.mc
114 install %{SOURCE7} config.m4
118 %if %{?debug:0}%{!?debug:1}
119 echo "define(\`confLDOPTS\', \`-s\')" >> config.m4
121 %if %{?_without_ldap:0}%{!?_without_ldap:1}
122 echo "APPENDDEF(\`confMAPDEF\', \`-DLDAPMAP\')" >> config.m4
123 echo "APPENDDEF(\`confLIBS\', \`-lldap -llber\')" >> config.m4
126 RPM_OPT_FLAGS="%{rpmcflags} \
127 -DUSE_VENDOR_CF_PATH=1 -DNETINET6 -D_FFR_TESTMODE_DROP_PRIVS"
130 cd sendmail && sh Build -f ../config.m4
131 #cd ../mailstats && sh Build -f ../config.m4
132 #cd ../rmail && sh Build -f ../config.m4
133 #cd ../makemap && sh Build -f ../config.m4
134 #cd ../praliases && sh Build -f ../config.m4
135 #cd ../smrsh && sh Build -f ../config.m4
137 #m4 redhat.mc > redhat.cf
140 rm -rf $RPM_BUILD_ROOT
141 install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig,sasl,smrsh}} \
142 $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT%{_sbindir} $RPM_BUILD_ROOT%{_libdir} \
143 $RPM_BUILD_ROOT%{_mandir}/man{1,5,8} \
144 $RPM_BUILD_ROOT/var/log $RPM_BUILD_ROOT/var/spool/mqueue \
145 $RPM_BUILD_ROOT%{_libdir}/sendmail-cf \
147 OBJDIR=obj.$(uname -s).$(uname -r).$(arch)
151 SMINSTOPT="DESTDIR=$RPM_BUILD_ROOT SBINOWN=$IDNU SBINGRP=$IDNG \
152 UBINOWN=$IDNU UBINGRP=$IDNG MANOWN=$IDNU MANGRP=$IDNG \
153 CFOWN=$IDNU CFGRP=$IDNG MSPQOWN=$IDNU GBINGRP=$IDNG \
154 BINOWN=$IDNU BINGRP=$IDNG"
155 %{__make} $SMINSTOPT install -C $OBJDIR/sendmail
156 %{__make} $SMINSTOPT install -C $OBJDIR/mailstats
157 %{__make} $SMINSTOPT install -C $OBJDIR/praliases
158 %{__make} $SMINSTOPT force-install -C $OBJDIR/rmail
159 %{__make} $SMINSTOPT install -C $OBJDIR/makemap
160 ln -sf ../sbin/makemap $RPM_BUILD_ROOT%{_bindir}/makemap
161 %{__make} $SMINSTOPT install -C $OBJDIR/smrsh
163 # install docs by hand
164 install -d $RPM_BUILD_ROOT%{_docdir}/sendmail
165 cp -ar FAQ LICENSE KNOWNBUGS README RELEASE_NOTES doc $RPM_BUILD_ROOT%{_docdir}/sendmail
166 cp smrsh/README $RPM_BUILD_ROOT%{_docdir}/sendmail/README.smrsh
167 cp cf/README $RPM_BUILD_ROOT%{_docdir}/sendmail/README.cf
169 # install the cf files
171 rm -f cf/{Build,Makefile} feature/*~
172 cp -ar * $RPM_BUILD_ROOT%{_libdir}/sendmail-cf
175 install cf/cf/redhat.cf $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf
176 sed -e 's|@@PATH@@|%{_libdir}/sendmail-cf|' < %{SOURCE6} \
177 > $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.mc
178 echo "# local-host-names - include all aliases for your machine here." \
179 > $RPM_BUILD_ROOT%{_sysconfdir}/local-host-names
181 ln -sf ../sbin/sendmail $RPM_BUILD_ROOT%{_libdir}/sendmail
184 for f in hoststat mailq newaliases purgestat ; do
185 ln -sf ../sbin/sendmail $RPM_BUILD_ROOT%{_bindir}/${f}
188 cat <<EOF > $RPM_BUILD_ROOT%{_sysconfdir}/access
189 # Check the %{_prefix}/doc/sendmail-%{version}/README.cf file for a description
190 # of the format of this file. (search for access_db in that file)
191 # The %{_prefix}/doc/sendmail-%{version}/README.cf is part of the sendmail-doc
194 # by default we allow relaying from localhost...
195 localhost.localdomain RELAY
200 for map in virtusertable access domaintable mailertable ; do
201 touch $RPM_BUILD_ROOT%{_sysconfdir}/${map}
202 $RPM_BUILD_ROOT%{_bindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
203 $RPM_BUILD_ROOT%{_sysconfdir}/${map}.db < $RPM_BUILD_ROOT%{_sysconfdir}/${map}
206 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/aliases
207 $RPM_BUILD_ROOT%{_bindir}/makemap -C $RPM_BUILD_ROOT%{_sysconfdir}/sendmail.cf hash \
208 $RPM_BUILD_ROOT%{_sysconfdir}/aliases.db < %{SOURCE3}
210 install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/sendmail
211 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sendmail
212 install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/Makefile
213 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sasl/Sendmail.conf
215 mv -f $RPM_BUILD_ROOT/usr/share/doc/sendmail/{FAQ,KNOWNBUGS,LICENSE,README,README.cf,doc/op/op.me} .
217 gzip -9nf FAQ KNOWNBUGS README README.cf op.me RELEASE_NOTES
220 rm -rf $RPM_BUILD_ROOT
224 # Convert old format to new
226 if [ -f /etc/mail/deny ] ; then
227 cat /etc/mail/deny | \
228 awk 'BEGIN{ print "# Entries from obsoleted /etc/mail/deny"} \
229 {print $1" REJECT"}' >> /etc/mail/access
230 cp /etc/mail/deny /etc/mail/deny.rpmorig
232 for oldfile in relay_allow ip_allow name_allow ; do
233 if [ -f /etc/mail/$oldfile ] ; then
234 cat /etc/mail/$oldfile | \
235 awk "BEGIN { print \"# Entries from obsoleted /etc/mail/$oldfile\" ;} \
236 { print $1\" RELAY\" }" >> /etc/mail/access
237 cp /etc/mail/$oldfile /etc/mail/$oldfile.rpmorig
242 # Oops, these files moved
244 if [ -f /etc/sendmail.cw ] ; then
245 cat /etc/sendmail.cw | \
246 awk 'BEGIN { print "# Entries from obsoleted /etc/sendmail.cw" ;} \
247 { print $1 }' >> /etc/mail/local-host-names
248 cp /etc/sendmail.cw /etc/sendmail.cw.rpmorig
251 # Rebuild maps (next reboot will rebuild also)
253 { /usr/bin/newaliases
254 for map in virtusertable access domaintable mailertable; do
255 if [ -f /etc/mail/${map} ] ; then
256 /usr/bin/makemap hash /etc/mail/${map} < /etc/mail/${map}
262 /sbin/chkconfig --add sendmail
263 if [ -f /var/lock/subsys/sendmail ]; then
264 /etc/rc.d/init.d/sendmail restart >&2
266 echo "Run \"/etc/rc.d/init.d/sendmail start\" to start sendmail daemon." >&2
270 if [ "$1" = "0" ]; then
271 if [ -f /var/lock/subsys/sendmail ]; then
272 /etc/rc.d/init.d/sendmail stop >&2
274 /sbin/chkconfig --del sendmail
277 # removal of compatibility links
278 %triggerpostun -- sendmail < 8.10.1
279 /sbin/chkconfig --add sendmail
282 %defattr(644,root,root,755)
284 %attr(755,root,root) %{_sbindir}/mailstats
285 %attr(755,root,root) %{_sbindir}/praliases
286 %attr(755,root,root) %{_bindir}/hoststat
287 %attr(755,root,root) %{_bindir}/purgestat
288 %attr(755,root,root) %{_bindir}/rmail
289 %attr(755,root,root) %{_bindir}/makemap
290 %attr(755,root,root) %{_sbindir}/makemap
291 %attr(6755,root,mail) %{_sbindir}/sendmail
292 %attr(755,root,root) %{_bindir}/newaliases
293 %attr(755,root,root) %{_bindir}/mailq
294 %attr(755,root,root) %{_sbindir}/smrsh
297 %{_mandir}/man8/rmail.8*
298 %{_mandir}/man8/praliases.8*
299 %{_mandir}/man8/mailstats.8*
300 %{_mandir}/man8/makemap.8*
301 %{_mandir}/man8/sendmail.8*
302 %{_mandir}/man5/aliases.5*
303 %{_mandir}/man1/newaliases.1*
304 %{_mandir}/man1/mailq.1*
307 # XXX can't do noreplace here or new sendmail will not deliver.
308 %config(noreplace) %{_sysconfdir}/sendmail.cf
309 %config(noreplace) %{_sysconfdir}/sendmail.mc
310 %config(noreplace) %{_sysconfdir}/local-host-names
311 %config(noreplace) %{_sysconfdir}/aliases
312 %attr(0644,root,mail) %ghost %{_sysconfdir}/aliases.db
313 %attr(0770,root,mail) %dir /var/spool/mqueue
317 %config %{_sysconfdir}/Makefile
318 %ghost %{_sysconfdir}/virtusertable.db
319 %config(noreplace) %{_sysconfdir}/virtusertable
320 %ghost %{_sysconfdir}/access.db
321 %config(noreplace) %{_sysconfdir}/access
322 %ghost %{_sysconfdir}/domaintable.db
323 %config(noreplace) %{_sysconfdir}/domaintable
324 %ghost %{_sysconfdir}/mailertable.db
325 %config(noreplace) %{_sysconfdir}/mailertable
326 %config(noreplace) %{_sysconfdir}/helpfile
328 %attr(754,root,root) /etc/rc.d/init.d/sendmail
329 %config(noreplace) /etc/sysconfig/sendmail
330 %config(noreplace) /etc/sasl/Sendmail.conf
332 %dir %{_libdir}/sendmail-cf
333 %dir %{_libdir}/sendmail-cf/cf
334 %{_libdir}/sendmail-cf/cf/pld.mc
335 %{_libdir}/sendmail-cf/feature
336 %{_libdir}/sendmail-cf/m4
337 %{_libdir}/sendmail-cf/mailer
338 %dir %{_libdir}/sendmail-cf/ostype
339 %{_libdir}/sendmail-cf/ostype/linux.m4
340 %dir %{_libdir}/sendmail-cf/sh
341 %{_libdir}/sendmail-cf/sh/makeinfo.sh
342 %{_libdir}/sendmail-cf/siteconfig