Extract from the RELEASE_NOTES file:
Incompatible changes with snapshot-20001210
===========================================
If this release does not work for you, you can go back to a previous
Postfix version without losing your mail, subject to the "incompatible
changes" listed for previous Postfix releases below.
When delivering to /file/name (as directed in an alias or .forward
file), the local delivery agent now logs a warning when it is unable
to create a /file/name.lock file. Mail is still delivered as before.
The "sun_mailtool_compatibility" feature is going away (a compatibility
mode that turns off kernel locks on mailbox files). It still works,
but a warning is logged. Instead of using "sun_mailtool_compatibility",
specify the mailbox locking strategy as "mailbox_delivery_lock =
dotlock".
The Postfix SMTP client now skips SMTP server replies that do not
start with "CODE SPACE" or with "CODE HYPHEN" and flags them as
protocol errors. Older Postfix SMTP clients silently treated "CODE
TEXT" as "CODE SPACE TEXT", i.e. as a valid SMTP reply.
This snapshot does not yet change default relay settings. That
change alone affects a dozen files, most of which documentation.
This may be an incompatibility with some people's expectations,
but such are my rules - between code freeze and release no major
functionality changes are allowed.
Several interfaces of libutil and libglobal routines have changed.
This may break third-party code written for Postfix. In particular,
the safe_open() routine has changed, the way the preferred locking
method is specified in the sys_defs.h file, as well as all routines
that perform file locking. When compiling third-party code written
for Postfix, the incompatibilities will be detected by the compiler
provided that #include file dependencies are properly maintained.
Major changes with snapshot-20001210
====================================
This snapshot includes bugfixes that were already released as
patches 12 and 13 for the 19991231 "stable" release:
- The queue manager could deadlock for 10 seconds when bouncing
mail under extreme load from one-to-one mass mailings.
- Local delivery performance was substandard, because the per-user
concurrency limit accidentally applied to the entire local
domain.
The mailbox locking style is now fully configurable at runtime.
The new configuration parameter is called "mailbox_delivery_lock".
Depending on the operating system type, mailboxes can be locked
with one or more of "flock", "fcntl" or "dotlock". The command
"postconf -l" shows the available locking styles. The default
mailbox locking style is system dependent. This change affects
all mailbox and all "/file/name" deliveries by the Postfix local
delivery agent.
The new "import_environment" and "export_environment" configuration
parameters now provide explicit control over what environment
variables Postfix will import, and what environment variables
Postfix will pass on to a non-Postfix process. This is better than
hard-coding my debugging environment into public releases.
The "mailbox_transport" and "fallback_transport" parameters now
understand the form "transport:nexthop", with suitable defaults
when either transport or nexthop are omitted, just like in the
Postfix transport map. This allows you to specify for example,
"mailbox_transport = lmtp:unix:/file/name".
The MYSQL client now supports server connections over UNIX-domain
sockets. Code provided by Piotr Klaban. See the file MYSQL_README
for examples of "host" syntax.
--
Postfix official release 19991231 patchlevel 11 is available.
This release folds in code changes from recent snapshot releases.
These changes track changes in RedHat Linux, fix two minor bugs in
the Postfix queue manager scheduling behavior that were spotted by
Patrik Rak, and turn off one misfeature.
- On RedHat Linux 7.0, you must install the db3-devel RPM before
you can compile the Postfix source code.
- The queue manager could schedule too many connections to the same
destination (domain name spelled in upper and lower case).
- The queue manager could schedule too few connections to the same
destination (back off even in case of successful delivery).
- The confusing site_hog_factor feature is disabled by default. It
caused unnecessary mail delivery delays on inbound mail gateways.
Quote from the RELEASE_NOTES file:
Incompatible changes with snapshot-20001121
===========================================
If this release does not work for you, you can go back to a previous
Postfix version without losing your mail, subject to the "incompatible
changes" listed for previous Postfix releases below.
Major changes with snapshot-20001121
====================================
Support for RedHat Linux 7.0. On RedHat Linux 7.0, you must install
the db3-devel RPM before you can compile the Postfix source code.
The mailbox_transport feature works again. It was broken when the
"require_home_directory" feature was added.
More general virtual domain support. Postfix now supports both
Sendmail-style virtual domains and Postfix-style virtual domains.
Details and examples are given in the revised virtual manual page.
- With Sendmail-style virtual domains, local users/aliases/mailing
lists are visible as localname@virtual.domain. This is convenient
if you want to host mailing lists under virtual domains.
- With Postfix-style virtual domains, local users/aliases/mailing
lists are not visible as localname@virtual.domain. Each virtual
domain has its own separate name space.
More general "soft bounce" feature. Specify "soft_bounce = yes"
in main.cf to prevent the SMTP server from bouncing mail while you
are testing configurations. Until this release the SMTP server was
not aware of soft bounces.
--
Postfix 19991231 patch 09 fixes a memory corruption problem, and
includes a long list of minor bugfixes and robustness improvements
that already featured in snapshot releases (or that will feature
in the next one).
- When propagating an address extension to the right-hand side
of a virtual or canonical mapping, the cleanup server could
access memory that was no longer allocated and die with signal
11. This would happen when the result address length was more
than about 100 characters. Credit to Adi Prasaja @ satunet.com
for coming up with a small reproducible demo.
This patch provides an emergency band-aid for the next wave of
MicroSoft email worms, fixes one bug, and makes external content
filtering a bit more robust.
- Feature: specify "body_checks = regexp:/etc/postfix/body_checks"
for an emergency content filter that looks at non-header lines
one line at a time (including MIME headers inside the message
body). This feature uses the same syntax as the header_checks
patterns. Details in conf/sample-filter.cf.
This feature is also available in Postfix snapshot 20000528.
- Bugfix: the masquerade_exceptions feature was case sensitive.
- Robustness: upon receipt of mail, Postfix maps MAILER-DAEMON@myorigin
sender address back into the magic null string, which prevents
mail from looping after processing by an external content filter.
- RFC 822 requires the presence of at least one destination
message header. Postfix now generates a generic "To:
undisclosed-recipients:;" message header when no destination
header is present. The header content is specified with the
new undisclosed_recipients_header parameter.
- Postfix now understands <(comment)> as SMTP MAIL FROM address,
because some broken software needs it. Postfix rejects such
illegal address forms with "strict_rfc821_envelopes = yes".
- Configuration parameters for one mysql dictionary would become
default settings for the next one. This patch was merged into
the development Postfix version a while back but apparently
that version was on a dead branch. Update by Scott Cotton.
- Some Postfix delivery agents would abort on addresses of the
form `stuff@.' which could unfortunately be generated locally.
- With local delivery, Postfix could insert > or . into the middle
of very long lines.
- SMTP sessions could time out when the remote client attempted
to deliver to a large number of rejected recipients. The SMTP
server now flushes unwritten output in-between tarpit delays,
to avoid protocol timeouts in pipelined SMTP sessions.
- Postfix would incorrectly reject domain names with adjacent `-'
characters.
-- Info from Wietse --
Patch 04 fixes one old problem that never happened, and fixes two
new problems introduced with patch 03, one of which urgent. The
problems were found as I was reorganizing the cleanup daemon code.
The too long header fix in patch 03 loses mail when a header is
found too long, and when that mail is't posted with "sendmail -t".
Actually the mail is not lost. The queue file stays in the incoming
queue, as a file with mode -rw-------.
In order to have such mail delivered, chdir into the directory
/var/spool/postfix/incoming, and look for mode -rw------- queue
files that are older than a few minutes (ls -lt|more) and chmod +x
those old mode -rw------- queue files.
DO NOT CHMOD +X ALL INCOMING QUEUE FILES because that causes Postfix
to discard messages that are still being received.
Postfix version 19991231 patchlevel 03 fixes low-priority defects
and provides workarounds for unusual conditions.
- Workaround to prevent one site with a huge backlog from blocking
all other deliveries. This is controlled by a new configuration
parameter qmgr_site_hog_factor (default: 90 percent) that limits
how much in-memory queue manager resources a site can claim.
- Workarounds for the most likely problems that will happen when
running the Postfix queue on top of NFS.
- The SMTP server did not look in the relocated table and would
report "User unknown" rather than letting the mail bounce the
way it is supposed to be.
- When requested to extract recipients from message headers, Postfix
now insists that no message header exceeds the header size limit.
This prevents Postfix from inadvertently disclosing Bcc: addresses.
This patch resolves several really old defects that were resolved
or discovered in the last couple weeks.
- Address rewriting would panic on a lone \ at the end of a line
where an address was expected. Reported by Jason Hoos.
- The local delivery agent would deliver to the user instead of
the .forward file when the .forward file was already visited
via some non-recursive path. Patch by Patrik Rak.
- Postfix now attempts to deliver all addresses in the expansion
of an alias or .forward file, even when some addresses must be
deferred. Problem reported by Andrew McNamara and others.
remove ftp.win.ne.jp from master sites -- it will not allow the port
to be fetched because it does not like the format of the "password"
sent by the ftp client
Porters: please make sure you use bsd.port.mk 1.75 or later when
updating ports. That version of the makefile adds all sums. Previous
versions of the makefile will still work for people installing ports.