Postfix snapshot 20060123 available

[email protected] (Wietse Venema) Mon, 23 Jan 2006 16:36:13 -0500 (EST)
Newsgroups gmane.mail.postfix.announce
Message-ID <20060123213613.92D69BC1A3__23352.5722790093$1138052719$gmane$org@spike.porcupine.org>
In preparation for the upcoming Postfix 2.3 release, development
is gradually changing from adding new code to revising the code
that already exists.

- Postfix now preserves upper/lower case information while mapping
addresses with canonical, virtual, relocated or generic maps; this
happens even with $number substitution in regular expression maps.
This required a global restructuring of how Postfix folds table
search strings to lowercase.

- Some obscure behavior was removed from the smtp_tls_per_site
without a change in the user interface.  This revision was needed
after a restructuring of Postfix internals, in preparation for a
more general TLS policy mechanism that is still under development.

Available from ftp://ftp.porcupine.org/mirrors/postfix-release/experimental/

   420364 Jan 23 14:50 postfix-2.3-20060123.HISTORY
    26500 Jan 23 15:39 postfix-2.3-20060123.RELEASE_NOTES
  2587973 Jan 23 15:47 postfix-2.3-20060123.tar.gz
      280 Jan 23 15:48 postfix-2.3-20060123.tar.gz.sig

And soon from the mirrors listed at http://www.postfix.org/download.html

	Wietse

RELEASE_NOTES:
==============

    Incompatibility with snapshot 20060123
    ======================================

    Postfix now preserves uppercase information while mapping addresses
    with canonical, virtual, relocated or generic maps; this happens
    even with lookups from regular expression maps. However, the local(8)
    and virtual(8) delivery agents still fold addresses to lower case.

    By default, Postfix now folds the search string to lowercase only
    with tables that have fixed-case lookup fields such as btree:,
    hash:, dbm:, ldap:, or *sql:. The search string is no longer case
    folded with tables whose lookup fields can match both upper or lower
    case, such as regexp:, pcre:, or cidr:.

    For safety reasons, Postfix no longer allows $number substitution
    in regexp: or pcre: transport tables or per-sender relayhost tables.

    For safety reasons, daemons that don't need privileges now insist
    that they are configured as unprivileged in master.cf.

    Major changes with snapshot 20060123
    ====================================

    Postfix now does a better job at preserving upper/lower case
    information while transforming addresses.  The table lookup code
    was revised, and is now more careful about when it folds search
    strings to lower case.  As a side effect, Postfix now also does a
    better job at being case insensitive where it should, for example
    while searching per-host TLS policies or SASL passwords.

    Some obscure behavior was eliminated from the smtp_tls_per_site
    feature, without changes to the user interface. some Postfix internals
    had to be re-structured in preparation for a more general TLS policy
    mechanism; this required that smtp_tls_per_site be re-implemented
    from scratch.

    Postfix 2.3 is expected to provide a new per-site TLS policy mechanism
    that eliminates DNS spoofing attacks more effectively; the legacy
    smtp_tls_per_site feature will be kept intact for a few releases
    so that sites can upgrade Postfix without being forced to use a
    different TLS policy mechanism.

HISTORY file:
=============

20060112

	Fudge: when translating recipient DSN codes into sender DSN
	codes, map sender address problems that have no DSN code
	to *.1.7 (Bad sender's mailbox address syntax) instead of
	*.1.0 (Other address status) because that loses the distinction
	between sender and recipient. File: smtpd/smtpd_dsn_fix.c.

20060113

	Cleanup: preserve upper case information of address localpart
	or extension when mapping one address to another with
	non-regexp/pcre tables.  Files: global/mail_addr_find.c,
	global/maps_find.c.

20060115

	Bugfix: don't ignore the per-site policy when SSL library
	initialization fails. Introduced after adopting the TLS
	patch. File: smtp/smtp_session.c.

20060117

	Safety: daemon processes that need no privileges now insist
	that they are configured to run without privileges.  Files:
	master/single_server.c, master/multi_server.c,
	master/trigger_server.c.

	Cleanup: preserve upper case information of address localpart
	or extension when mapping addresses via regexp/pcre tables.
	This requires that Postfix does not case fold the search
	string when searching regexp or pcre tables, so that $number
	substitutions produce the expected result.

	In order to get a consistent handling of table operations,
	the search string case folding logic was moved from the
	application to the individual lookup table modules; the
	application specifies its case folding preference when it
	opens a table, and the table folds the search or update
	string as needed.

	Files: everything that opens a map or multiple maps (to
	specify the case folding preference), and everything that
	contained ad-hoc code to lowercase search strings (which
	is no longer needed).

	Bugfix: as a side effect of this revision of all code that
	opens tables, the postmap/postalias -n/-N options are no
	longer silently ignored when the -q (query) and -d (delete)
	options are specified.  Files: postmap/postmap.c,
	postalias/postalias.c.

	Cleanup: smtp_sasl_passwd_maps lookup keys are folded to
	lowercase before searching tables such as btree:, dbm: or
	hash: that have fixed-case fields. File: smtp/smtp_sasl_glue.c.

	Bugfix: per-sender relayhost maps were not locked for shared
	access.

20060119

	Cleanup: don't look up parent domain substrings in regexp/pcre
	like tables while searching a hostname in a domain/namaddr_list.
	File: util/match_ops.c.

20060120

	Cleanup: multiple boolean variables were replaced by a
	single TLS enforcement level (none, may, encrypt, verify).
	With Victor Duchovni. Files: smtp_session.c, smtp_proto.c,
	smtp.h.

	Cleanup: the SMTP per-site policy table was re-implemented
	in terms of enforcement levels instead of multiple boolean
	variables. This greatly simplified the code and led to the
	elimination of non-intuitive behavior as documented next.
	With Victor Duchovni. Files: smtp_session.c, smtp.h.

	Bugfix: a per-site MUST_NOPEERMATCH policy could not override
	a main.cf MUST (with peer match) policy.

	Bugfix: a combined TLS per-site (host, next-hop) policy of
	(NONE, MAY) would change the strongest main.cf MUST policy
	into NONE, while it changed all weaker main.cf policies
	into MAY.  The result is now NONE for all main.cf policy
	settings.

20060123

	Feature: recipient_count attribute in SMTPD policy protocol.
	This is available only in the DATA and END-OF-MESSAGE stage.
	Based on code by Guo Black. Files: smtpd_check.c.

	Cleanup: renamed MUMBLE_NUM to MUMBLE_INT to make type
	discrepancies more explicit.

	Bugfix: change 20051208 broke when a connection could not
	be established. File: util/auto_clnt.c.