From: heinau@Groucho.Chemie.FU-Berlin.DE (Vera Heinau)
Subject: smail 3.1.26 veroeffentlicht
Followup-To: de.admin.mail
Reply-To: admin@groucho.chemie.fu-berlin.de
Organization: Free University of Berlin, Germany
Date: Sun, 16 Aug 1992 11:36:26 GMT

[Followup-To auf de.admin.mail gesetzt]

Hallo!

smail 3.1.26 ist nun offiziell freigegeben worden. Erhaeltlich per 
Anonymous-FTP von:

Server: FTP.FU-Berlin.DE  [130.133.4.50]
File: ~ftp/pub/unix/mail/smail/smail-3.1.26.tar.Z  (950851 Bytes)

Demnaechst sicherlich auch bei den Servern ftp.uu.net, archive.eu.net,
hp4nl.nluug.nl und sta.sub.org (bei letzterem dann auch per Anonymous-UUCP).

Die neue Version von smail enthaelt so viele Verbesserungen/Aenderungen,
dass der Patch (uncompressed) fast genauso gross waere wie das komprimierte 
tar-Archiv (820 KB). Es gibt daher keinen Patch 3.1.25 -> 3.1.26.

Hier Auszuege aus dem README-File:

- * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - 
 
CHANGES IN THE 3.1.26 RELEASE

Release 3.1.26 is a patch release to smail3.1.25.  This release is
primarily a functionality enhancement release.  A number of bugs have
been fixes as well.

The total number of changes is quite large.  As a result, people with
customizations which were not included in 3.1.26 may have a fair amount
of work to do.

Important enhancements in this release:

 *  Greatly enhanced expansion strings, with conditionals and file
    lookups.  The original version of this code was written by
    Chip Salzenberg.

 *  Per-transport-configurable header insertion and removal based
    on the new expansion code.  In addition, the "From:" header can
    now be configured, including the ability to use a file to find
    a long form for local users (e.g, to get ronald.s.karr).  The
    configurable header insertion/removal support can be used to
    support the Content-Length field, by adding the following
    generic attributes to the local transport:

	remove_header="Content-Length",
	append_header="Content-Length: $body_size"

    Of some value with SVR4, you can also add a Content-Type
    header field, if no Content-Type field already exists, with:

	append_header="${if !header:Content-Type Content-Type: text}"

 *  The default Received: header now contains the "from" and "with"
    keywords, where such information is available.  Information is
    determined from the HELO line in SMTP, the From_ line in regular
    uucp mail, or it can be set using the -oMr and -oMs options, for
    compatibility with sendmail.

 *  Smail can now limit connections to the SMTP server, as long as
    a standalone smail SMTP daemon is used, rather than using inetd
    to start smtpd per connection attempt.  Two levels are provided:
    a maximum number of connections that yield immediate message
    delivery, and a maximum number of allowed connections.  This can
    greatly help the maximum load that smail places on a server,
    while allowing fast delivery if the server has light mail
    activity.  This code was contributed by Chip Salzenberg.

 *  Smail now tracks host accessibility for SMTP delivery.  If a host
    is down, then mail to that host will be deferred immediately
    (rather than waiting for a connection timeout) until a definable
    time period expires.  In addition, mail that is undeliverable for
    a definable time period will be bounced, rather than hanging around
    in the smail queues forever.  The parameters for retry times and
    message timeouts are configurable on a per-host or per-domain
    basis.  Several implementations of these capabilities were
    submitted, including implementations by Syd Weinstein and Dan Danz.
    I decided on a version by Chip Salzenberg, which included per-host
    configurability, and which (eventually) supported the host
    accessibility tracking.

 *  Interactive SMTP receive processes can now timeout.  By default,
    SMTP command receipt times out after 5 minutes, and receipt of a
    message after a DATA statement times out after 2 hours.  This was
    added after an urgent, but gentle, request of Heiko Schlichting,
    who had 100 receiver processes hanging around waiting forever for
    SMTP input.  The specific timeouts can be modified in the run-time
    config file by setting smtp_receive_command_timeout (default 5m)
    and smtp_receive_message_timeout (default 2h).

 *  Support was added for JANET reverse-order domain lookups in the
    bind router.  Contact Philip Hazel <ph10@cus.cam.ac.uk> for
    complete support.  The smail3 release contains only that code
    that needs to be within the smail binary itself.

 *  Added support for NeXT netinfo databases (from Dan Danz).

 *  The DNS can now be queried within the tcpsmtp transport, without
    involving the bind router driver.  In previous releases, MX
    records could be used only if addresses were resolved by the
    bind router.  Now, under configuration control, the tcpsmtp
    transport driver can locate MX records itself, such as for
    mail routed by a local paths file or by a queryprogram router.
    This support was added, at my request, by Chip Salzenberg.

 *  Added a -oX flag to smail that sets the TCP port number used to
    listen for SMTP connections.  This is helpful in testing, because
    this (along with the "service" attribute to the tcpsmtp driver)
    can be used to setup a test network that operates independently
    of an existing SMTP network.  This can be used to make sure that
    smail works on your network before replacing an existing mailer.

 *  The smail installation process now attempts to preserve replaced
    binaries from your original operating system in .SAV files.  Thus,
    your existing /bin/rmail and /usr/lib/sendmail will not be
    removed, even if smail is reinstalled several times.  Previous
    releases would (sometimes) keep one backup version (with a .O
    suffix), which would then be removed on the next install.  The
    new process makes a .SAV backup file, if one does not exist
    already, allowing a one-time backup copy on the first installation
    of smail.  .SAV backup files are made only for files that are
    considered likely to provided in the base operating system.

 *  The uuwho utility now uses searches for domain information, if
    a full hostname match is not found.  For example, the command:

	uuwho mitsu.veritas.com

    will find the entry for .veritas.com, which does exist while
    no entry for mitsu.veritas.com exists.  This was added by
    Chip Salzenberg.

 *  By "popular demand" :include: in mailing list and alias files
    can now be followed by white-space.  This is for compatibility
    with sendmail.  Comments are NOT allowed after :include:.  For
    example, the following line:

	:include: /list-directory/mailing-list

    would previously have resulted in errors, but will now result
    in inclusion of addresses in the file /list-directory/mailing-list.

 *  The -bi option from sendmail is now supported, and newaliases is
    now yet another link to smail.  This support was added to allow
    existing YP makefiles (which call /usr/lib/sendmail to rebuild
    the YP mail.aliases dbm file) to use smail3 replacing sendmail.
    The original version of this enhancement was submitted by
    Bruce Jerrick.

 *  The sdbm library is now integrated in the smail release.  Systems
    that do not have a native ndbm library now use the sdbm functions
    to provide multiple DBM-like files.  Native dbm (not ndbm)
    libraries can be used only if they support the dbmclose() function.
    This was added by Chip Salzenberg, who was planning to use this
    in association with his host status monitoring code, but later
    realized the error of his ways.  But, the changes were left in
    because they seemed reasonable.

 *  The comsat daemon is now supported in the appendfile driver, and
    is enabled, by default, in the "local" transport.

 *  Mail which results in all recipients being eliminated (such as
    through duplicate elimination or sender elimination within a
    mailing list), will generate a bounce message.

Some other changes:

 *  The sender_okay flag (for configuring removal of the sender
    from aliasing and mailing list expansion) can now be configured
    from the EDITME file.

 *  Pathalias was updated to match the most recent release available
    on uunet.

 *  The compile process now echoes the results of variable substitition.
    The previous release would generate lines such as:

	. ./defs.sh; $CC $CFLAGS $INCLUDES -c foo.c

    now, compiles will generate something like:

	gcc -O -I/usr/include -c foo.c

    make -n will still yield annoyingly small amounts of real information.

 *  A sufficiently high debugging level will now enable debugging in
    the resolver library.

 *  Included some minor revisions to the bind router by Syd
    Weinstein, to fetch A records as a second pass after fetching
    MX records.  Apparently, there are differences in what different
    servers return in a request for MX records (some return A
    records, too, some don't).

 *  Sytems that require an alternate set of #include files to compile
    programs that use TCP/IP and sockets can define those #include
    files in the conf/os files or in the EDITME file.  See
    conf/os/template for details.

 *  Added some AUX support contributed by Robert B. Denny, which can
    be found in samples/AUX-support.  Most of the changes relate to
    printing documentation.  Some sample configuration files are
    also included.

 *  Smail now uses SO_REUSEADDR and some appropriate descriptor closes,
    to allow the smtp/queue-run daemon to be restarted cleanly even
    if a receiver process has been forked.  Previous releases could get
    errors in the bind() call indicating an address already in use.

 *  A new attribute was added to the gethostbyname router
    (only_local_domain) that disables matching of hosts outside of
    the local domain.  This was addedy by Dan Danz.

 *  Man pages were previously installed with mode 555.  They are now
    installed with mode 444.

 *  Added a NOTES directory containing messages that I have sent or
    received that illustrate various points of interest.

 *  Building of uuwho databases now differentiates between a #N line
    introducing a hostname, and a #NOTE, or #North America line
    introducing a random comment.  Recent map entries caused
    extra, bogus, entries to be added to uuwho databases.

 *  "A" records are now used in the order returned by DNS resolver
    lookups.  Previously releases would reverse the A records, due
    to the way these records were being added to a list, internally.
    The RFCs require that A records be used in order, since they may
    be sorted by network preference.

 *  The local-* transports for local-form delivery to remote hosts
    now does proper hop-count checking.  These transports use the
    new local_xform attribute which does local-form transformations
    without indicating that delivery is actually local.
    

Some bug fixes:

 *  Mail to systems with no MX records, but an A record, will now be
    handled correctly by the bind router.  I have regular posted a
    patch for this to various newsgroups and mailing lists, but did
    not include the fix in an earlier official patch release.

 *  Fixed some minor problems with bounce-message generation.  Bounce
    messages are generated by reinvoking smail and sending the
    bounce messages as a batched SMTP script.  The sender was
    specified as <>, in accordance with RFC822, which smail considered
    a remote address.  However, treating this as mail from a remote
    system was inappropriate, so an alternate sender token <+>, is
    now used to indicate a locally-generated bounce message.

 *  Nul-terminated some generated strings that were not consistently
    nul terminated.

 *  Fixed some problems resulting from routers that resolve to the
    local host, requiring further routing of the remainder address.

 *  Fixed some problems in the trusted-code logic that was running
    into problems with the SMTP interaction generated by MH.

 *  Errors in .forward files now generate bounces to real-<username>
    rather than to the postmaster.

 *  NEWS_SPOOL_DIR was not being stored in the defs.h file, yielding
    incorrect behavior from uuwho.

 *  Fixed some problems with interactions between the -t and -f options.

 *  Fixed some problems with varargs usage in log.c.

 *  Include <vfork.h> for Suns, to avoid a problem interacting with
    -O on Sun4's that could generate core dumps.

 *  Fixed some segmentaion violations caused by bogus @foo addresses.

 *  Fixed most (all?) places where smail was using a value immediately
    after it was freed.  This allows smail to work, unmodified, with
    the SVR3 -lmalloc library, or other versions of malloc that don't
    leave data from the last free unmodified.

 *  get_sender_addr(), which generates the sender address in various
    important contexts, was returning the same data between multiple
    calls, when it should have been returning different data.

- * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - 


Tschuess, Vera

-- 
 |~|    Vera Heinau     (+49 30 8382677)  |  Freie Universitaet Berlin 
 / \    heinau@Harpo.Chemie.FU-Berlin.DE  |  heinau@methan.chemie.fu-berlin.de
/FUB\   Institut fuer Kristallographie    |  Institut fuer Organische Chemie
`---'   D-1000 Berlin 33, Takustr. 6      |  D-1000 Berlin 33, Takustr. 3
Xref: sparky de.admin.archiv:486 de.org.eunet:7