diff --git a/.cvsignore b/.cvsignore index 640697d..e6e2c5c 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -sendmail.8.12.6.tar.gz +sendmail.8.12.8.tar.gz diff --git a/sendmail-8.12.7-hesiod.patch b/sendmail-8.12.7-hesiod.patch new file mode 100644 index 0000000..ad3de30 --- /dev/null +++ b/sendmail-8.12.7-hesiod.patch @@ -0,0 +1,22 @@ +--- sendmail-8.12.7/sendmail/recipient.c ++++ sendmail-8.12.7/sendmail/recipient.c +@@ -1146,7 +1146,7 @@ + + *fuzzyp = false; + +-#if HESIOD ++#if disableHESIOD + /* DEC Hesiod getpwnam accepts numeric strings -- short circuit it */ + for (p = name; *p != '\0'; p++) + if (!isascii(*p) || !isdigit(*p)) +--- sendmail-8.12.7/libsm/mbdb.c ++++ sendmail-8.12.7/libsm/mbdb.c +@@ -315,7 +315,7 @@ + { + struct passwd *pw; + +-#ifdef HESIOD ++#ifdef disableHESIOD + /* DEC Hesiod getpwnam accepts numeric strings -- short circuit it */ + { + char *p; diff --git a/sendmail-8.12.7-manpage.patch b/sendmail-8.12.7-manpage.patch new file mode 100644 index 0000000..8a38b6b --- /dev/null +++ b/sendmail-8.12.7-manpage.patch @@ -0,0 +1,16 @@ +--- sendmail-8.12.7/sendmail/sendmail.8.manpage 2003-01-13 11:17:32.000000000 +0100 ++++ sendmail-8.12.7/sendmail/sendmail.8 2003-01-13 11:17:59.000000000 +0100 +@@ -687,13 +687,11 @@ + /var/spool/mqueue/* + temp files + .SH SEE ALSO +-binmail(1), + mail(1), + rmail(1), + syslog(3), + aliases(5), + mailaddr(7), +-rc(8) + .PP + DARPA + Internet Request For Comments diff --git a/sendmail-redhat.mc b/sendmail-redhat.mc index 53631f6..4551f91 100644 --- a/sendmail-redhat.mc +++ b/sendmail-redhat.mc @@ -1,19 +1,23 @@ -divert(-1) -dnl This is the sendmail macro config file. If you make changes to this file, -dnl you need the sendmail-cf rpm installed and then have to generate a -dnl new /etc/mail/sendmail.cf by running the following command: -dnl -dnl m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf -dnl -include(`@@PATH@@/m4/cf.m4') -VERSIONID(`linux setup for Red Hat Linux')dnl -OSTYPE(`linux') -dnl Uncomment and edit the following line if your mail needs to be sent out -dnl through an external mail server: +divert(-1)dnl +dnl # +dnl # This is the sendmail macro config file for m4. If you make changes to +dnl # /etc/mail/sendmail.mc, you will need to regenerate the +dnl # /etc/mail/sendmail.cf file by confirming that the sendmail-cf package is +dnl # installed and then performing a +dnl # +dnl # make -C /etc/mail +dnl # +include(`@@PATH@@/m4/cf.m4')dnl +VERSIONID(`setup for Red Hat Linux')dnl +OSTYPE(`linux')dnl +dnl # +dnl # Uncomment and edit the following line if your outgoing mail needs to +dnl # be sent out through an external mail server: +dnl # dnl define(`SMART_HOST',`smtp.your.provider') +dnl # define(`confDEF_USER_ID',``8:12'')dnl -undefine(`UUCP_RELAY')dnl -undefine(`BITNET_RELAY')dnl +define(`confTRUSTED_USER', `smmsp')dnl dnl define(`confAUTO_REBUILD')dnl define(`confTO_CONNECT', `1m')dnl define(`confTRY_NULL_MX_LIST',true)dnl @@ -25,12 +29,33 @@ define(`UUCP_MAILER_MAX', `2000000')dnl define(`confUSERDB_SPEC', `/etc/mail/userdb.db')dnl define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun')dnl define(`confAUTH_OPTIONS', `A')dnl +dnl # +dnl # The following allows relaying if the user authenticates, and disallows +dnl # plaintext authentication (PLAIN/LOGIN) on non-TLS links +dnl # +dnl define(`confAUTH_OPTIONS', `A p')dnl +dnl # +dnl # PLAIN is the preferred plaintext authentication method and used by +dnl # Mozilla Mail and Evolution, though Outlook Express and other MUAs do +dnl # use LOGIN. Other mechanisms should be used if the connection is not +dnl # guaranteed secure. +dnl # dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl +dnl # +dnl # Rudimentary information on creating certificates for sendmail TLS: +dnl # make -C /usr/share/ssl/certs usage +dnl # dnl define(`confCACERT_PATH',`/usr/share/ssl/certs') dnl define(`confCACERT',`/usr/share/ssl/certs/ca-bundle.crt') dnl define(`confSERVER_CERT',`/usr/share/ssl/certs/sendmail.pem') dnl define(`confSERVER_KEY',`/usr/share/ssl/certs/sendmail.pem') +dnl # +dnl # This allows sendmail to use a keyfile that is shared with OpenLDAP's +dnl # slapd, which requires the file to be readble by group ldap +dnl # +dnl define(`confDONT_BLAME_SENDMAIL',`groupreadablekeyfile')dnl +dnl # dnl define(`confTO_QUEUEWARN', `4h')dnl dnl define(`confTO_QUEUERETURN', `5d')dnl dnl define(`confQUEUE_LA', `12')dnl @@ -45,23 +70,74 @@ FEATURE(redirect)dnl FEATURE(always_add_domain)dnl FEATURE(use_cw_file)dnl FEATURE(use_ct_file)dnl -dnl The '-t' option will retry delivery if e.g. the user runs over his quota. +dnl # +dnl # The -t option will retry delivery if e.g. the user runs over his quota. +dnl # FEATURE(local_procmail,`',`procmail -t -Y -a $h -d $u')dnl FEATURE(`access_db',`hash -T -o /etc/mail/access.db')dnl FEATURE(`blacklist_recipients')dnl EXPOSED_USER(`root')dnl -dnl This changes sendmail to only listen on the loopback device 127.0.0.1 -dnl and not on any other network devices. Comment this out if you want -dnl to accept email over the network. -DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA') -dnl NOTE: binding both IPv4 and IPv6 daemon to the same port requires -dnl a kernel patch -dnl DAEMON_OPTIONS(`port=smtp,Addr=::1, Name=MTA-v6, Family=inet6') -dnl We strongly recommend to comment this one out if you want to protect -dnl yourself from spam. However, the laptop and users on computers that do -dnl not have 24x7 DNS do need this. +dnl # +dnl # The following causes sendmail to only listen on the IPv4 loopback address +dnl # 127.0.0.1 and not on any other network devices. Remove the loopback +dnl # address restriction to accept email from the internet or intranet. +dnl # +DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl +dnl # +dnl # The following causes sendmail to additionally listen to port 587 for +dnl # mail from MUAs that authenticate. Roaming users who can't reach their +dnl # preferred sendmail daemon due to port 25 being blocked or redirected find +dnl # this useful. +dnl # +dnl DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl +dnl # +dnl # The following causes sendmail to additionally listen to port 465, but +dnl # starting immediately in TLS mode upon connecting. Port 25 or 587 followed +dnl # by STARTTLS is preferred, but roaming clients using Outlook Express can't +dnl # do STARTTLS on ports other than 25. Mozilla Mail can ONLY use STARTTLS +dnl # and doesn't support the deprecated smtps; Evolution <1.1.1 uses smtps +dnl # when SSL is enabled-- STARTTLS support is available in version 1.1.1. +dnl # +dnl # For this to work your OpenSSL certificates must be configured. +dnl # +dnl DAEMON_OPTIONS(`Port=smtps, Name=TLSMTA, M=s')dnl +dnl # +dnl # The following causes sendmail to additionally listen on the IPv6 loopback +dnl # device. Remove the loopback address restriction listen to the network. +dnl # +dnl # NOTE: binding both IPv4 and IPv6 daemon to the same port requires +dnl # a kernel patch +dnl # +dnl DAEMON_OPTIONS(`port=smtp,Addr=::1, Name=MTA-v6, Family=inet6')dnl +dnl # +dnl # We strongly recommend not accepting unresolvable domains if you want to +dnl # protect yourself from spam. However, the laptop and users on computers +dnl # that do not have 24x7 DNS do need this. +dnl # FEATURE(`accept_unresolvable_domains')dnl +dnl # dnl FEATURE(`relay_based_on_MX')dnl +dnl # +dnl # Also accept email sent to "localhost.localdomain" as local email. +dnl # +LOCAL_DOMAIN(`localhost.localdomain')dnl +dnl # +dnl # The following example makes mail from this host and any additional +dnl # specified domains appear to be sent from mydomain.com +dnl # +dnl MASQUERADE_AS(`mydomain.com')dnl +dnl # +dnl # masquerade not just the headers, but the envelope as well +dnl # +dnl FEATURE(masquerade_envelope)dnl +dnl # +dnl # masquerade not just @mydomainalias.com, but @*.mydomainalias.com as well +dnl # +dnl FEATURE(masquerade_entire_domain)dnl +dnl # +dnl MASQUERADE_DOMAIN(localhost)dnl +dnl MASQUERADE_DOMAIN(localhost.localdomain)dnl +dnl MASQUERADE_DOMAIN(mydomainalias.com)dnl +dnl MASQUERADE_DOMAIN(mydomain.lan)dnl MAILER(smtp)dnl MAILER(procmail)dnl -Cwlocalhost.localdomain diff --git a/sendmail.init b/sendmail.init index 669888c..d994243 100644 --- a/sendmail.init +++ b/sendmail.init @@ -23,6 +23,8 @@ else DAEMON=no QUEUE=1h fi +[ -z "$SMQUEUE" ] && SMQUEUE="$QUEUE" +[ -z "$SMQUEUE" ] && SMQUEUE=1h # Check that networking is up. [ ${NETWORKING} = "no" ] && exit 0 @@ -46,7 +48,7 @@ start() { fi done fi - daemon /usr/sbin/sendmail -bd \ + daemon /usr/sbin/sendmail $([ "x$DAEMON" = xyes ] && echo -bd) \ $([ -n "$QUEUE" ] && echo -q$QUEUE) RETVAL=$? echo @@ -57,7 +59,7 @@ start() { touch /var/run/sm-client.pid chown smmsp:smmsp /var/run/sm-client.pid daemon --check sm-client /usr/sbin/sendmail -L sm-msp-queue -Ac \ - $([ -n "$QUEUE" ] && echo -q$QUEUE) + -q$SMQUEUE RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/sm-client diff --git a/sendmail.spec b/sendmail.spec index 678d67e..d32ecf7 100644 --- a/sendmail.spec +++ b/sendmail.spec @@ -2,8 +2,8 @@ # If you want to build this on older Red Hat Linux releases, this defines # the version number to build on. Supported should be 62 70 71 72 for # Red Hat Linux 6.2 up to 7.2 and "100" for the current rawhide version. -%define errata 100 -%define release 2a +%define errata 80 +%define release 1 %if %{errata} <= 70 %define sendmailcf usr/lib/sendmail-cf @@ -19,7 +19,7 @@ Summary: A widely used Mail Transport Agent (MTA). Name: sendmail -Version: 8.12.6 +Version: 8.12.8 %if %{errata} == 100 Release: %{release} %else @@ -43,8 +43,9 @@ Patch2: sendmail-8.11.0-redhat.patch2 Patch3: sendmail-8.12.2-makemapman.patch Patch4: sendmail-8.12.2-smrsh-paths.patch Patch5: sendmail-8.12.2-movefiles.patch -Patch6: sendmail-8.12.2-unix.patch Patch7: sendmail-8.12.5-pid.patch +Patch9: sendmail-8.12.7-hesiod.patch +Patch10: sendmail-8.12.7-manpage.patch Buildroot: %{_tmppath}/%{name}-root BuildRequires: gdbm-devel %if %{errata} > 62 @@ -58,7 +59,7 @@ BuildRequires: hesiod-devel %else BuildRequires: db3-devel %endif -BuildRequires: openldap-devel, tcp_wrappers +BuildRequires: openldap-devel, openssl-devel, tcp_wrappers %endif %if %{errata} >= 73 Prereq: /usr/sbin/alternatives @@ -68,15 +69,14 @@ Provides: %{_mandir}/man1/newaliases.1.gz %{_mandir}/man5/aliases.5.gz Prereq: chkconfig >= 1.3 %else Prereq: /sbin/chkconfig -%endif -Prereq: /usr/sbin/useradd /bin/mktemp fileutils gawk sed sh-utils -%if %{errata} < 73 Conflicts: postfix exim %endif +Prereq: /usr/sbin/useradd /bin/mktemp fileutils gawk sed sh-utils Requires: procmail %if %{errata} > 62 Requires: bash >= 2.0 %endif + %description The Sendmail program is a very widely used Mail Transport Agent (MTA). MTAs send mail from one machine to another. Sendmail is not a client @@ -128,13 +128,17 @@ fi %patch3 -p1 %patch4 -p1 %patch5 -p1 -%patch6 -p1 %patch7 -p1 +%patch9 -p1 +%patch10 -p1 %build -export RPM_OPT_FLAGS="-O1 -fno-strict-aliasing -fno-strength-reduce" +%ifarch s390 +export RPM_OPT_FLAGS="-O1" +%endif -echo "define(\`confLIBDIR', \`%{_libdir}')" >> redhat.config.m4 +sed -e 's,%%{_libdir},%{_libdir},g' \ + -e 's,%%{_lib},%{_lib},g' redhat.config.m4.in > redhat.config.m4 for i in libmilter libsmutil sendmail mailstats rmail praliases \ smrsh makemap ; do @@ -293,6 +297,10 @@ mv $RPM_BUILD_ROOT%{_mandir}/man1/newaliases.1 $RPM_BUILD_ROOT%{_mandir}/man1/ne mv $RPM_BUILD_ROOT%{_mandir}/man5/aliases.5 $RPM_BUILD_ROOT%{_mandir}/man5/aliases.sendmail.5 %endif +%if "%{_libdir}" == "/usr/lib64" +rm -fr $RPM_BUILD_ROOT/usr/lib/libmilter.a +%endif + rm -rf $RPM_BUILD_ROOT/rootfile %clean @@ -487,6 +495,62 @@ exit 0 %{_docdir}/sendmail %changelog +* Mon Feb 24 2003 Florian La Roche +- update to 8.12.8 + +* Tue Feb 11 2003 Florian La Roche +- rebuilt + +* Wed Jan 22 2003 Tim Powers +- rebuilt + +* Wed Jan 22 2003 Florian La Roche +- add a confTRUSTED_USER line into sendmail.mc, submit.mc is already ok +- add patch from sendmail.org for cf/m4/proto.m4 + +* Mon Jan 13 2003 Florian La Roche +- do not reject all numeric login names if hesiod support is + compiled in. #80060 +- remove reference to non-existing man-pages #74552 + +* Sun Jan 12 2003 Florian La Roche +- sendmail-8.12.7-etrn.patch from Jos Vos +- submit.mc: enable "use_ct_file" by default #80519 +- add _FFR_MILTER_ROOT_UNSAFE #78223 + +* Sat Jan 11 2003 Florian La Roche +- update to 8.12.7 +- hack to make lib64 version work +- downgrade s390 optims to make it compile + +* Mon Jan 6 2003 Nalin Dahyabhai +- add openssl-devel as a build-time requirement +- preprocess the config file to add the right version of %%{_lib} +- add kerberos -I and -L flags to build configuration, needed for newer + versions of libssl + +* Wed Dec 11 2002 Florian La Roche +- always have a queue run interval for sm-msp-queue #81424 +- Jos Vos suggests adding another variable for sm-client queue-run + +* Mon Dec 02 2002 Florian La Roche +- add the following changes from Adrian Havill + to our default sendmail.mc file: + - added commented-out-by-default common AUTH/SSL examples + - updated m4 example and rpm reference + - added more comment documentation + - add commented out confAUTO_REBUILD example + - improve description about MASQUERADE_AS + +* Mon Nov 18 2002 Florian La Roche +- add to submit.mc: define(`_MTA_HOST_', `[127.0.0.1]') + to deliver directly to localhost IP instead of going through DNS +- submit.mc: exchange msp and use_ct_file to better enable it +- do not undefine UUCP_RELAY and BITNET_RELAY +- sendmail.mc: use LOCAL_DOMAIN instead of "Cw" directly +- sendmail.mc: add commented out MASQUERADE_AS example +- re-enable DAEMON variable for now + * Tue Nov 12 2002 Nalin Dahyabhai - remove absolute path names from the PAM configuration, allowing it to be used by any arch on a multilib system diff --git a/sources b/sources index 5de1744..8c49581 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -73e18ea78b2386b774963c8472cbd309 sendmail.8.12.6.tar.gz +71b4ce8276536b82d4acdf6ec8be306a sendmail.8.12.8.tar.gz