more updates for DSN
[unix-history] / usr / src / usr.sbin / sendmail / RELEASE_NOTES
index 951f2a1..eda6f3c 100644 (file)
@@ -1,3 +1,741 @@
+                       SENDMAIL RELEASE NOTES
+            @(#)RELEASE_NOTES  8.6.11.1 (Berkeley) %G%
+
+This listing shows the version of the sendmail binary, the version
+of the sendmail configuration files, the date of release, and a
+summary of the changes in that release.
+
+8.6.11/8.6.11  95/03/08
+       The ``possible attack'' message would be logged more often
+               than necessary if you are using Pine as a user agent.
+       The wrong host would be reported in the ``possible attack''
+               message when attempted from IDENT.
+       In some cases the syslog buffer could be overflowed when
+               reporting the ``possible attack'' message.  This can
+               cause denial of service attacks.  Truncate the message
+               to 80 characters to prevent this problem.
+       When reading the IDENT response a loop is needed around the
+               read from the network to ensure that you don't get
+               partial lines.
+       Password entries without any shell listed (that is, a null
+               shell) wouldn't match as "ok".  Problem noted by
+               Rob McMahon.
+       When running BIND 4.9.x a problem could occur because the
+               _res.options field is initialized differently than it
+               was historically -- this requires that sendmail call
+               res_init before it tweaks any bits.
+       Fix an incompatibility in openxscript() between the file open mode
+               and the stdio mode passed to fdopen.  This caused UnixWare
+               2.0 to have conniptions.  Fix from Martin Sohnius of
+               Novell Labs Europe.
+       Fix problem with static linking of local getopt routine when
+               using GNU's ld command.  Fix from John Kennedy of
+               Cal State Chico.
+       It was possible to turn off privacy flags.  Problem noted by
+               *Hobbit*.
+       Be more paranoid about writing files.  Suggestions by *Hobbit*
+               and Liudvikas Bukys.
+       MAKEMAP: fixes for 64 bit machines (DEC Alphas in particular)
+               from Spider Boardman.
+       CONFIG: No changes (version number only, to keep it in sync
+               with the binaries).
+
+8.6.10/8.6.10  95/02/10
+       SECURITY: Diagnose bogus values to some command line flags that
+               could allow trash to get into headers and qf files.
+       Validate the name of the user returned by the IDENT protocol.
+               Some systems that really dislike IDENT send intentionally
+               bogus information.  Problem pointed out by Michael Bushnell
+               of the Free Software Foundation.  Has some security
+               implications.
+       Fix a problem causing error messages about DNS problems when
+               the host name contained a percent sign to act oddly
+               because it was passed as a printf-style format string.
+               In some cases this could cause core dumps.
+       Avoid possible buffer overrun in returntosender() if error
+               message is quite ling.  From Fletcher Mattox of the
+               University of Texas.
+       Fix a problem that would silently drop "too many hops" error
+               messages if and only if you were sending to an alias.
+               From Jon Giltner of the University of Colorado and
+               Dan Harton of Oak Ridge National Laboratory.
+       Fix a bug that caused core dumps on some systems if -d11.2 was
+               set and e->e_message was null.  Fix from Bruce Nagel of
+               Data General.
+       Fix problem that can still cause df files to be left around
+               after "hop count exceeded" messages.  Fix from Andrew
+               Chang and Shau-Ping Lo of SunSoft.
+       Fix a problem that can cause buffer overflows on very long
+               user names (as might occur if you piped to a program
+               with a lot of arguments).
+       Avoid returning an error and re-queueing if the host signature
+               is null; this can occur on addresses like ``user@.''.
+               Problem noted by Wesley Craig and the University of
+               Michigan.
+       Avoid possible calls to malloc(0) if MCI caching is turned
+               off.  Bug fix from Pierre David of the Laboratoire
+               Parallelisme, Reseaux, Systemes et Modelisation (PRiSM),
+               Universite de Versailles - St Quentin, and Jacky
+               Thibault.
+       Make a local copy of the line being sent via senttolist() -- in
+               some cases, buffers could get trashed by map lookups
+               causing it to do unexpected things.  This also simplifies
+               some of the map code.
+       CONFIG: No changes (version number only, to keep it in sync
+               with the binaries).
+
+8.6.9/8.6.9    94/04/19
+       Do all mail delivery completely disconnected from any terminal.
+               This provides consistency with daemon delivery and
+               may have some security implications.
+       Make sure that malloc doesn't get called with zero size,
+               since that fails on some systems.  Reported by Ed
+               Hill of the University of Iowa.
+       Fix multi-line values for $e (SMTP greeting message).  Reported
+               by Mike O'Connor of Ford Motor Company.
+       Avoid syserr if no NIS domain name is defined, but the map it
+               is trying to open is optional.  From Win Bent of USC.
+       Changes for picky compilers from Ed Gould of Digital Equipment.
+       Hesiod support for UDB from Todd Miller of the University of
+               Colorado.  Use "hesiod" as the service name in the U
+               option.
+       Fix a problem that failed to set the "authentic" host name (that
+               is, the one derived from the socket info) if you called
+               sendmail -bs from inetd.  Based on code contributed by
+               Todd Miller (this problem was also reported by Guy Helmer
+               of Dakota State University).  This also fixes a related
+               problem reported by Liudvikas Bukys of the University of
+               Rochester.
+       Parameterize "nroff -h" in all the Makefiles so people with
+               variant versions can use them easily.  Suggested by
+               Peter Collinson of Hillside Systems.
+       SMTP "MAIL" commands with multiple ESMTP parameters required two
+               spaces between parameters instead of one.  Reported by
+               Valdis Kletnieks of Virginia Tech.
+       Reduce the number of system calls during message collection by
+               using global timeouts around the collect() loop.  This
+               code was contributed by Eric Wassenaar.
+       If the initial hostname name gathering results in a name
+               without a dot (usually caused by NIS misconfiguration)
+               and BIND is compiled in, directly access DNS to get
+               the canonical name.  This should make life easier for
+               Solaris systems.  If it still can't be resolved, and
+               if the name server is listed as "required", try again
+               in 30 seconds.  If that also fails, exit immediately to
+               avoid bogus "config error: mail loops back to myself"
+               messages.
+       Improve the "MAIL DELETED BECAUSE OF LACK OF DISK SPACE" error
+               message to explain how much space was available and
+               sound a bit less threatening.  Suggested by Stan Janet
+               of the National Institute of Standards and Technology.
+       If mail is delivered to an alias that has an owner, deliver any
+               requested return-receipt immediately, and strip the
+               Return-Receipt-To: header from the subsequent message.
+               This prevents a certain class of denial of service
+               attack, arguably gives more reasonable semantics, and
+               moves things more towards what will probably become a
+               network standard.  Suggested by Christopher Davis of
+               Kapor Enterprises.
+       Add a "noreceipts" privacy flag to turn off all return receipts
+               without recompiling.
+       Avoid printing ESMTP parameters as part of the error message
+               if there are errors during parsing.  This change is
+               purely cosmetic.
+       Avoid sending out error messages during the collect phase of
+               SMTP; there is an MVS mailer from UCLA that gets
+               confused by this.  Of course, I think it's their bug....
+       Check for the $j macro getting undefined, losing a dot, or getting
+               lost from $=w in the daemon before accepting a connection;
+               if it is, it dumps state, prints a LOG_ALERT message,
+               and drops core for debugging.  This is an attempt to
+               track down a bug that I thought was long since gone.
+               If you see this, please forward the log fragment to
+               sendmail@CS.Berkeley.EDU.
+       Change OLD_NEWDB from a #ifdef to a #if so it can be turned off
+               with -DOLD_NEWDB=0 on the command line.  From Christophe
+               Wolfhugel.
+       Instead of trying to truncate the listen queue for the server
+               SMTP port when the load average is too high, just close
+               the port completely and reopen it later as needed.
+               This ensures that the other end gets a quick "connection
+               refused" response, and that the connection can be
+               recovered later.  In particular, some socket emulations
+               seem to get confused if you tweak the listen queue
+               size around and can never start listening to connections
+               again.  The down side is that someone could start up
+               another daemon process in the interim, so you could
+               have multiple daemons all not listening to connections;
+               this could in turn cause the sendmail.pid file to be
+               incorrect.  A better approach might be to accept the
+               connection and give a 421 code, but that could break
+               other mailers in mysterious ways and have paging behaviour
+               implications.
+       Fix a glitch in TCP-level debugging that caused flag 16.101 to
+               set debugging on the wrong socket.  From Eric Wassenaar.
+       When creating a df* temporary file, be sure you truncate any
+               existing data in the file -- otherwise system crashes
+               and the like could result in extra data being sent.
+       DOC: Replace the CHANGES-R5-R8 readme file with a paper in the
+               doc directory.  This includes some additional
+               information.
+       CONFIG: change UUCP rules to never add $U! or $k! on the front
+               of recipient envelope addresses.  This should have been
+               handled by the $&h trick, but broke if people were
+               mixing domainized and UUCP addresses.  They should
+               probably have converted all the way over to uucp-uudom
+               instead of uucp-{new,old}, but the failure mode was to
+               loop the mail, which was bad news.
+       Portability fixes:
+               Newer BSDI systems (several people).
+               Older BSDI systems from Christophe Wolfhugel.
+               Intergraph CLIX, from Paul Southworth of CICNet.
+               UnixWare, from Evan Champion.
+               NetBSD from Adam Glass.
+               Solaris from Quentin Campbell of the University of
+                       Newcastle upon Tyne.
+               IRIX from Dean Cookson and Bill Driscoll of Mitre
+                       Corporation.
+               NCR 3000 from Kevin Darcy of Chrysler Corporation.
+               SunOS (it has setsid() and setvbuf() calls) from
+                       Jonathan Kamens of OpenVision Technologies.
+               HP-UX from Tor Lillqvist.
+       New Files:
+               src/Makefile.CLIX
+               src/Makefile.NCR3000
+               doc/changes/Makefile
+               doc/changes/changes.me
+               doc/changes/changes.ps
+
+8.6.8/8.6.6    94/03/21
+       SECURITY: it was possible to read any file as root using the
+               E (error message) option.  Reported by Richard Jones;
+               fixed by Michael Corrigan and Christophe Wolfhugel.
+
+8.6.7/8.6.6    94/03/14
+       SECURITY: it was possible to get root access by using wierd
+               values to the -d flag.  Thanks to Alain Durand of
+               INRIA for forwarding me the notice from the bugtraq
+               list.
+
+8.6.6/8.6.6    94/03/13
+       SECURITY: the ability to give files away on System V-based
+               systems proved dangerous -- don't run as the owner
+               of a :include: file on a system that allows giveaways.
+               Unfortunately, this also applies to determining a
+               valid shell.
+       IMPORTANT: Previous versions weren't expiring old connections
+               in the connection cache for a long time under some
+               circumstances.  This could result in resource exhaustion,
+               both at your end and at the other end.  This checks the
+               connections for timeouts much more frequently.  From
+               Doug Anderson of NCSC.
+       Fix a glitch that snuck in that caused programs to be run as
+               the sender instead of the recipient if the mail was
+               from a local user to another local user.  From
+               Motonori Nakamura of Kyoto University.
+       Fix "wildcard" on /etc/shell matching -- instead of looking
+               for "*", look for "/SENDMAIL/ANY/SHELL/".  From
+               Bryan Costales of ICSI.
+       Change the method used to declare the "statfs" availability;
+               instead of HASSTATFS and/or HASUSTAT with a ton of
+               tweaking in conf.c, there is a single #define called
+               SFS_TYPE which takes on one of six values (SFS_NONE
+               for no statfs availability, SFS_USTAT for the ustat(2)
+               syscall, SFS_4ARGS for a four argument statfs(2) call,
+               and SFS_VFS, SFS_MOUNT, or SFS_STATFS for a two argument
+               statfs(2) call with the declarations in <sys/vfs.h>,
+               <sys/mount.h>, or <sys/statfs.h> respectively).
+       Fix glitch in NetInfo support that could return garbage if
+               there was no "/locations/sendmail" property.  From
+               David Meyer of the University of Virginia.
+       Change HASFLOCK from defined/not-defined to a 0/1 definition
+               to allow Linux to turn it off even though it is a
+               BSD-like system.
+       Allow setting of "ident" timeout to zero to turn off the ident
+               protocol entirely.
+       Make 7-bit stripping local to a connection (instead of to a
+               mailer); this allows you to specify that SMTP is a
+               7-bit channel, but revert to 8-bit should it advertise
+               that it supports 8BITMIME.  You still have to specify
+               mailer flag 7 to get this stripping at all.
+       Improve makesendmail script so it handles more cases automatically.
+       Tighten up restrictions on taking ownership of :include: files
+               to avoid problems on systems that allow you to give away
+               files.
+       Fix a problem that made it impossible to rebuild the alias
+               file if it was on a read-only file system.  From
+               Harry Edmon of the University of Washington.
+       Improve MX randomization function.  From John Gardiner Myers
+               of CMU.
+       Fix a minor glitch causing a bogus message to be printed (used
+               %s instead of %d in a printf string for the line number)
+               when a bad queue file was read.  From Harry Edmon.
+       Allow $s to remain NULL on locally generated mail.  I'm not
+               sure this is necessary, but a lot of people have complained
+               about it, and there is a legitimate question as to whether
+               "localhost" is legal as an 822-style domain.
+       Fix a problem with very short line lengths (mailer L= flag) in
+               headers.  This causes a leading space to be added onto
+               continuation lines (including in the body!), and also
+               tries to wrap headers containing addresses (From:, To:,
+               etc) intelligently at the shorter line lengths.  Problem
+               Reported by Lars-Johan Liman of SUNET Operations Center.
+       Log the real user name when logging syserrs, since these can have
+               security implications.  Suggested by several people.
+       Fix address logging of cached connections -- it used to always
+               log the numeric address as zero.  This is a somewhat
+               bogus implementation in that it does an extra system
+               call, but it should be an inexpensive one.  Fix from
+               Motonori Nakamura.
+       Tighten up handling of short syslog buffers even more -- there
+               were cases where the outgoing relay= name was too long
+               to share a line with delay= and mailer= logging.
+       Limit the overhead on split envelopes to one open file descriptor
+               per envelope -- previously the overhead was three
+               descriptors.  This was in response to a problem reported
+               by P{r (Pell) Emanuelsson.
+       Fixes to better handle the case of unexpected connection closes;
+               this redirects the output to the transcript so the info
+               is not lost.  From Eric Wassenaar.
+       Fix potential string overrun if you macro evaluate a string that
+               has a naked $ at the end.  Problem noted by James Matheson
+               <jmrm@eng.cam.ac.uk>.
+       Make default error number on $#error messages 553 (``Requested
+               action not taken: mailbox name not allowed'') instead of
+               501 (``Syntax error in parameters or arguments'') to
+               avoid bogus "protocol error" messages.
+       Strip off any existing trailing dot on names during $[ ... $]
+               lookup.  This prevents it from ending up with two dots
+               on the end of dot terminated names.  From Wesley Craig
+               of the University of Michigan and Bryan Costales of ICSI.
+       Clean up file class reading so that the debugging information is
+               more informative.  It hadn't been using setclass, so you
+               didn't see the class items being added.
+       Avoid core dump if you are running a version of sendmail where
+               NIS is compiled in, and you specify an NIS map, but
+               NIS is not running.  Fix from John Oleynick of
+               Rutgers.
+       Diagnose bizarre case where res_search returns a failure value,
+               but sets h_errno to a success value.
+       Make sure that "too many hops" messages are considered important
+               enough to send an error to the Postmaster (that is, the
+               address specified in the P option).  This fix should
+               help problems that cause the df file to be left around
+               sometimes -- unfortunately, I can't seem to reproduce
+               the problem myself.
+       Avoid core dump (null pointer reference) on EXPN command; this
+               only occurred if your log level was set to 10 or higher
+               and the target account was an alias or had a .forward file.
+               Problem noted by Janne Himanka.
+       Avoid "denial of service" attacks by someone who is flooding your
+               SMTP port with bad commands by shutting the connection
+               after 25 bad commands are issued.  From Kyle Jones of
+               UUNET.
+       Fix core dump on error messages with very long "to" buffers;
+               fmtmsg overflows the message buffer.  Fixed by trimming
+               the to address to 203 characters.  Problem reported by
+               John Oleynick.
+       Fix configuration for HASFLOCK -- there were some spots where
+               a #ifndef was incorrectly #ifdef.  Pointed out by
+               George Baltz of the University of Maryland.
+       Fix a typo in savemail() that could cause the error message To:
+               lists to be incorrect in some places.  From Motonori
+               Nakamura.
+       Fix a glitch that can cause duplicate error messages on split
+               envelopes where an address on one of the lists has a
+               name server failure.  Fix from Voradesh Yenbut of the
+               University of Washington.
+       Fix possible bogus pointer reference on ESMTP parameters that
+               don't have an ``=value'' part.
+       CNAME loops caused an error message to be generated, but also
+               re-queued the message.  Changed to just re-queue the
+               message (it's really hard to just bounce it because
+               of the wierd way the name server works in the presence
+               of CNAME loops).  Problem noted by James M.R.Matheson
+               of Cambridge University.
+       Avoid giving ``warning: foo owned process doing -bs'' messages
+               if they use ``MAIL FROM:<foo>'' where foo is their true
+               user name.  Suggested by Andreas Stolcke of ICSI.
+       Change the NAMED_BIND compile flag to be a 0/1 flag so you can
+               override it easily in the Makefile -- that is, you can
+               turn it off using -DNAMED_BIND=0.
+       If a gethostbyname(...) of an address with a trailing dot fails,
+               try it without the trailing dot.  This is because if
+               you have a version of gethostbyname() that falls back
+               to NIS or the /etc/hosts file it will fail to find
+               perfectly reasonable names that just don't happen to
+               be dot terminated in the hosts file.  You don't want to
+               strip the dot first though because we're trying to ensure
+               that country names that match one of your subdomains get
+               a chance.
+       PRALIASES: fix bogus output on non-null-terminated strings.
+               From Bill Gianopoulos of Raytheon.
+       CONFIG: Avoid rewriting anything that matches $w to be $j.
+               This was in code intended to only catch the self-literal
+               address (that is, [1.2.3.4], where 1.2.3.4 is your
+               IP address), but the code was broken.  However, it will
+               still do this if $M is defined; this is necessary to
+               get client configurations to work (sigh).  Note that this
+               means that $M overrides :mailname entries in the user
+               database!  Problem noted by Paul Southworth.
+       CONFIG: Fix definition of Solaris help file location.  From
+               Steve Cliffe <steve@gorgon.cs.uow.edu.au>.
+       CONFIG: Fix bug that broke news.group.USENET mappings.
+       CONFIG: Allow declaration of SMTP_MAILER_MAX, FAX_MAILER_MAX,
+               and USENET_MAILER_MAX to tweak the maximum message
+               size for various mailers.
+       CONFIG: Change definition of USENET_MAILER_ARGS to include argv[0]
+               instead of assuming that it is "inews" for consistency
+               with other mailers.  From Michael Corrigan of UC San Diego.
+       CONFIG: When mail is forwarded to a LOCAL_RELAY or a MAIL_HUB,
+               qualify the address in the SMTP envelope as user@{relay|hub}
+               instead of user@$j.  From Bill Wisner of The Well.
+       CONFIG: Fix route-addr syntax in nullrelay configuration set.
+       CONFIG: Don't turn off case mapping of user names in the local
+               mailer for IRIX.  This was different than most every other
+               system.
+       CONFIG: Avoid infinite loops on certainly list:; syntaxes in
+               envelope.  Noted by Thierry Besancon
+               <besancon@excalibur.ens.fr>.
+       CONFIG: Don't include -z by default on uux line -- most systems
+               don't want it set by default.  Pointed out by Philippe
+               Michel of Thomson CSF.
+       CONFIG: Fix some bugs with mailertables -- for example, if your
+               host name was foo.bar.ray.com and you matched against
+               ".ray.com", the old implementation bound %1 to "bar"
+               instead of "foo.bar".  Also, allow "." in the mailertable
+               to match anything -- essentially, take over SMART_HOST.
+               This also moves matching of explicit local host names
+               before the mailertable so they don't have to be special
+               cased in the mailertable data.  Reported by Bill
+               Gianopoulos of Raytheon; the fix for the %1 binding
+               problem was contributed by Nicholas Comanos of the
+               University of Sydney.
+       CONFIG: Don't include "root" in class $=L (users to deliver
+               locally, even if a hub or relay exists) by default.
+               This is because of the known bug where definition of
+               both a LOCAL_RELAY and a MAIL_HUB causes $=L to ignore
+               both and deliver into the local mailbox.
+       CONFIG: Move up bitdomain and uudomain handling so that they
+               are done before .UUCP class matching; uudomain was
+               reported as ineffective before.  This also frees up
+               diversion 8 for future use.  Problem reported by Kimmo
+               Suominen.
+       CONFIG: Don't try to convert dotted IP address (e.g., [1.2.3.4])
+               into host names.  As pointed out by Jonathan Kamens,
+               these are often used because either the forward or reverse
+               mapping is broken; this translation makes it broken again.
+       DOC: Clarify $@ and $: in the Install & Op Guide.  From Kimmo
+               Suominen.
+       Portability fixes:
+               Unicos from David L. Kensiski of Sterling Sofware.
+               DomainOS from Don Lewis of Silicon Systems.
+               GNU m4 1.0.3 from Karst Koymans of Utrecht University.
+               Convex from Kimmo Suominen <kim@tac.nyc.ny.us>.
+               NetBSD from Adam Glass <glass@sun-lamp.cs.berkeley.edu>.
+               BSD/386 from Tony Sanders of BSDI.
+               Apollo from Eric Wassenaar.
+               DGUX from Doug Anderson.
+               Sequent DYNIX/ptx 2.0 from Tim Wright of Sequent.
+       NEW FILES:
+               src/Makefile.DomainOS
+               src/Makefile.PTX
+               src/Makefile.SunOS.5.1
+               src/Makefile.SunOS.5.2
+               src/Makefile.SunOS.5.x
+               src/mailq.1
+               cf/ostype/domainos.m4
+               doc/op/Makefile
+               doc/intro/Makefile
+               doc/usenix/Makefile
+
+8.6.5/8.6.5    94/01/13
+       Security fix:  /.forward could be owned by anyone (the test
+               to allow root to own any file was backwards).  From
+               Bob Campbell at U.C. Berkeley.
+       Security fix: group ids were not completely set when programs
+               were invoked.  This caused programs to have group
+               permissions they should not have had (usually group
+               daemon instead of their own group).  In particular,
+               Perl scripts would refuse to run.
+       Security: check to make sure files that are written are not
+               symbolic links (at least under some circumstances).
+               Although this does not respond to a specific known
+               attack, it's just a good idea.  Suggested by
+               Christian Wettergren.
+       Security fix: if a user had an NFS mounted home directory on
+               a system with a restricted shell listed in their
+               /etc/passwd entry, they could still execute any
+               program by putting that in their .forward file.
+               This fix prevents that by insisting that their shell
+               appear in /etc/shells before allowing a .forward to
+               execute a program or write a file.  You can disable
+               this by putting "*" in /etc/shells.  It also won't
+               permit world-writable :include: files to reference
+               programs or files (there's no way to disable this).
+               These behaviours are only one level deep -- for
+               example, it is legal for a world-writable :include:
+               file to reference an alias that writes a file, on
+               the assumption that the alias file is well controlled.
+       Security fix: root was not treated suspiciously enough when
+               looking into subdirectories.  This would potentially
+               allow a cracker to examine files that were publically
+               readable but in a non-publically searchable directory.
+       Fix a problem that causes an error on QUIT on a cached
+               connection to create problems on the current job.
+               These are typically unrelated, so errors occur in
+               the wrong place.
+       Reset CurrentLA in sendall() -- this makes sendmail queue
+               runs more responsive to load average, and fixes a
+               problem that ignored the load average in locally
+               generated mail.  From Eric Wassenaar.
+       Fix possible core dump on aliases with null LHS.  From
+               John Orthoefer of BB&N.
+       Revert to using flock() whenever possible -- there are just
+               too many bugs in fcntl() locking, particularly over
+               NFS, that cause sendmail to fail in perverse ways.
+       Fix a bug that causes the connection cache to get confused
+               when sending error messages.  This resulted in
+               "unexpected close" messages.  It should fix itself
+               on the following queue run.  Problem noted by
+               Liudvikas Bukys of the University of Rochester.
+       Include $k in $=k as documented in the Install & Op Guide.
+               This seems odd, but it was documented....  From
+               Michael Corrigan of UCSD.
+       Fix problem that caused :include:s from alias files to be
+               forced to be owned by root instead of daemon
+               (actually DefUid).  From Tim Irvin.
+       Diagnose unrecognized I option values -- from Mortin Forssen
+               of the Chalmers University of Technology.
+       Make "error" mailer work consistently when there is no error
+               code associated with it -- previously it returned OK
+               even though there was a real problem.  Now it assumes
+               EX_UNAVAILABLE.
+       Fix bug that caused the last header line of messages that had
+               no body and which were terminated with EOF instead of
+               "." to be discarded.  Problem noted by Liudvikas Bukys.
+       Fix core dump on SMTP mail to programs that failed -- it tried
+               to go to a "next MX host" when none existed, causing
+               a core dump.  From der Mouse at McGill University.
+       Change IDENTPROTO from a defined/not defined to a 0/1 switch;
+               this makes it easier to turn it off (using
+               -DIDENTPROTO=0 in the Makefile).  From der Mouse.
+       Fix YP_MASTER_NAME store to use the unupdated result of
+               gethostname() (instead of myhostname(), which tries
+               to fully qualify the name) to be consistent with
+               SunOS.  If your hostname is unqualified, this fixes
+               transfers to slave servers.  Bug noted by Keith
+               McMillan of Ameritech Services, Inc.
+       Fix Ultrix problem: gethostbyname() can return a very large
+               (> 500) h_length field, which causes the sockaddr
+               to be trashed.  Use the size of the sockaddr instead.
+               Fix from Bob Manson of Ohio State.
+       Don't assume "-a." on host lookups if NAMED_BIND is not
+               defined -- this confuses gethostbyname on hosts
+               file lookups, which doesn't understand the trailing
+               dot convention.
+       Log SMTP server subprocesses that die with a signal instead
+               of from a clean exit.
+       If you don't have option "I" set, don't assume that a DNS
+               "host unknown" message is authoritative -- it
+               might still be found in /etc/hosts.
+       Fix a problem that would cause Deferred: messages to be sent
+               as the subject of an error message, even though the
+               actual cause of a message was more severe than that.
+               Problem noted by Chris Seabrook of OSSI.
+       Fix race condition in DBM alias file locking.  From Kyle
+               Jones of UUNET.
+       Limit delivery syslog line length to avoid bugs in some
+               versions of syslog(3).  This adds a new compile time
+               variable SYSLOG_BUFSIZE.  From Jay Plett of Princeton
+               University, which is in turn derived from IDA.
+       Fix quotes inside of comments in addresses -- previously
+               it insisted that they be balanced, but the 822 spec
+               says that they should be ignored.
+       Dump open file state to syslog upon receiving SIGUSR1 (for
+               debugging).  This also evaluates ruleset 89, if set
+               (with the null input), and logs the result.  This
+               should be used sparingly, since the rewrite process
+               is not reentrant.
+       Change -qI, -qR, and -qS flags to be case-insensitive as
+               documented in the Bat Book.
+       If the mailer returned EX_IOERR or EX_OSERR, sendmail did not
+               return an error message and did not requeue the message.
+               Fix based on code from Roland Dirlewanger of
+               Reseau Regional Aquarel, Bordeaux, France.
+       Fix a problem that caused a seg fault if you got a 421 error
+               code during some parts of connection initialization.
+               I've only seen this when talking to buggy mailers on
+               the other end, but it shouldn't give a seg fault in
+               any case.  From Amir Plivatsky.
+       Fix core dump caused by a ruleset call that returns null.
+               Fix from Bryan Costales of ICSI.
+       Full-Name: field was being ignored.  Fix from Motonori Nakamura
+               of Kyoto University.
+       Fix a possible problem with very long input lines in setproctitle.
+               From P{r Emanuelsson.
+       Avoid putting "This is a warning message" out on return receipts.
+               Suggested by Douglas Anderson.
+       Detect loops caused by recursive ruleset calls.  Suggested by
+               Bryan Costales.
+       Initialize non-alias maps during alias rebuilds -- they may be
+               needed for parsing.  Problem noted by Douglas Anderson.
+       Log sender address even if no message was collected in SMTP
+               (e.g., if all RCPTs failed).  Suggested by Motonori
+               Nakamura.
+       Don't reflect the owner-list contents into the envelope sender
+               address if the value contains ", :, /, or | (to avoid
+               illegal addresses appearing there).
+       Efficiency hack for toktype macro -- from Craig Partridge of
+               BB&N.
+       Clean up DNS error printing so that a host name is always
+               included.
+       Remember to set $i during queue runs.  Reported by Stephen
+               Campbell of Dartmouth University.
+       If ${HOSTALIASES} is set, use it during canonification so that
+               headers are properly mapped.  Reported by Anne Bennett
+               of Concordia University.
+       Avoid printing misleading error message if SMTP mailer (not
+               using [IPC]) should die on a core dump.
+       Avoid incorrect diagnosis of "file 1 closed" when it is caused
+               by the other end closing the connection.  From
+               Dave Morrison of Oracle.
+       Improve several of the error messages printed by "mailq"
+               to include a host name or other useful information.
+       Add NetInfo preliminary support for NeXT systems.  From Vince
+               DeMarco.
+       Fix a glitch that sometimes caused :include:s that pointed to
+               NFS filesystems that were down to give an "aliasing/
+               forwarding loop broken" message instead of queueing
+               the message for retry.  Noted by William C Fenner of
+               the NRL Connection Machine Facility.
+       Fix a problem that could cause a core dump if the input sequence
+               had (or somehow acquired) a \231 character.
+       Make sure that route-addrs always have <angle brackets> around
+               them in non-SMTP envelopes (SMTP envelopes already do
+               this properly).
+       Avoid wierd headers on unbalanced punctuation of the form:
+               ``Joe User <user)'' -- this caused reference to the
+               null macro.  Fix from Rick McCarty of IO.COM.
+       Fix a problem that caused an alias "user: user@local.host" to
+               not have the QNOTREMOTE bit set; this caused configs
+               to act as if FEATURE(notsticky) was defined even when
+               it was not.  The effect of the problem was to make it
+               very hard to to set up satellite sites that had a few
+               local accounts, with everything else forwarded to a
+               corporate hub.  Reported by Detlef Drewanz of the
+               University of Rostock and Mark Frost of NCD.
+       Change queuing to not call rulesets 3, {1 or 2}, 4 on header
+               addresses.  This is more efficient (fewer name server
+               calls) and fixes certain unusual configurations, such
+               as those that have ruleset 4 do something that is
+               non-idempotent unless a mailer-specific ruleset did
+               something else.  Problem reported by Brian J. Coan
+               of the Institute for Global Communications.
+       Fix the "obsolete argument" routine in main to better understand
+               new arguments.  For example, if you used ``sendmail
+               -C config -v -q'' it would choke on the -q because
+               the -C would stop looking for old-format arguments.
+       Fix the code that was intended to allow two users to forward their
+               mail to the same program and have them appear unique.
+       Portability fixes for:
+               SCO UNIX from Murray Kucherawy.
+               SCO Open Server 3.2v4 from Philippe Brand.
+               System V Release 4 from Rick Ellis and others.
+               OSF/1 from Steve Campbell.
+               DG/UX from Ben Mesander of the USGS and Bryan Curnutt
+                       of Stoner Associates.
+               Motorola SysV88 from Kevin Johnson of Motorola.
+               Solaris 2.3 from Casper H.S. Dik of the University
+                       of Amsterdam and John Caruso of University
+                       of Maryland.
+               FreeBSD from Ollivier Robert.
+               NetBSD from Adam Glass.
+               TitanOS from Kate Hedstrom of Rutgers University.
+               Irix from Bryan Curnutt.
+               Dynix from Jim Davis of the University of Arizona.
+               RISC/os.
+               Linux from John Kennedy of California State University
+                       at Chico.
+               Solaris 2.x from Tony Boner of the U.S. Air Force.
+               NEXTSTEP 3.x from Vince DeMarco.
+               HP-UX from various people.  NOTA BENE:  the location
+                       of the config file has moved to /usr/lib
+                       to match the HP-UX version of sendmail.
+       CONFIG: Don't do any recipient rewriting on relay mailer;
+               since this is intended only for internal use, the
+               usual RFC 821/822/1123 rules can be relaxed.  The
+               main point of this is to avoid munging (ugh) UUCP
+               addresses when relaying internally.
+       CONFIG: fix typo in mailer/uucp.m4 that mutilates list:;
+               syntax addresses delivered via UUCP.  Solution
+               provided by Peter Wemm.
+       CONFIG: fix thumb-fumble in default UUCP relaying in ruleset
+               zero; it caused double @ signs in addresses.  From
+               Irving Reid of the University of Toronto.
+       CONFIG: Portability fixes for SCO Unix 3.2 with TCP/IP 1.2.1
+               from Markku Toijala of ICL Personal Systems Oy.
+       CONFIG: Add trailing "." on pseudo-domains for consistency;
+               this fixes a problem (noted by Al Whaley of Sunnyside)
+               that made it hard to recognize your own pseudodomain
+               names.
+       CONFIG: catch "@host" syntax errors (i.e., null local-parts)
+               rather than letting them get "local configuration
+               error"s.  Problem noted by John Gardiner Myers.
+       CONFIG: add uucp-uudom mailer variant, based on code posted
+               by Spider Boardman <spider@Orb.Nashua.NH.US>; this
+               has uucp-dom semantics but old UUCP syntax.  This
+               also permits "uucp-old" as an alias for "uucp" and
+               "uucp-new" as a synonym for "suucp" for consistency.
+       CONFIG: add POP mailer support (from Kimmo Suominen
+               <kim@grendel.lut.fi>).
+       CONFIG: drop CSNET_RELAY support -- CSNET is long gone.
+       CONFIG: fix bug caused with domain literal addresses (e.g.,
+               ``[128.32.131.12]'') when FEATURE(allmasquerade)
+               was set; it would get an additional @masquerade.host
+               added to the address.  Problem noted by Peter Wan
+               of Georgia Tech.
+       CONFIG: make sure that the local UUCP name is in $=w.  From
+               Jim Murray of Stratus.
+       CONFIG: changes to UUCP rewriting to simulate IDA-style "V"
+               mailer flag.  Briefly, if you are sending to host
+               "foo", then it rewrites "foo!...!baz" to "...!baz",
+               "foo!baz" remains "foo!baz", and anything else has
+               the local name prepended.
+       CONFIG: portability fixes for HP-UX.
+       DOC: several minor problems fixed in the Install & Op Guide.
+       MAKEMAP: fix core dump problem on lines that are too long or
+               which lack newline.  From Mark Delany.
+       MAILSTATS: print sums of columns (total messages & kbytes
+               in and out of the system).  From Tom Ferrin of UC
+               San Francisco Computer Graphics Lab.
+       SIGNIFICANT USER- OR SYSAD-VISIBLE CHANGES:
+               On HP-UX, /etc/sendmail.cf has been moved to
+                       /usr/lib/sendmail.cf to match HP sendmail.
+               Permissions have been tightened up on world-writable
+                       :include: files and accounts that have shells
+                       that are not listed in /etc/shells.  This may
+                       cause some .forward files that have worked
+                       before to start failing.
+               SIGUSR1 dumps some state to the log.
+       NEW FILES:
+               src/Makefile.DGUX
+               src/Makefile.Dynix
+               src/Makefile.FreeBSD
+               src/Makefile.Mach386
+               src/Makefile.NetBSD
+               src/Makefile.RISCos
+               src/Makefile.SCO
+               src/Makefile.SVR4
+               src/Makefile.Titan
+               cf/mailer/pop.m4
+               cf/ostype/bsdi1.0.m4
+               cf/ostype/dgux.m4
+               cf/ostype/dynix3.2.m4
+               cf/ostype/sco3.2.m4
+               makemap/Makefile.dist
+               praliases/Makefile.dist
+
 8.6.4/8.6.4    93/10/31
        Repair core-dump problem (write to read-only memory segment)
                if you fall back to the return-to-Postmaster case in
 8.6.4/8.6.4    93/10/31
        Repair core-dump problem (write to read-only memory segment)
                if you fall back to the return-to-Postmaster case in