tracked the Cyrus SASL 1.5.x releases, which are no longer maintained.
Adjust packages to use security/cyrus-sasl2 instead for SASL support.
This closes PR pkg/28218 and PR pkg/29736.
New features since 2.1.x:
- built-in IPv6 and TLS (we no longer use patches--beware config changes!)
- more sophisticated LDAP/MySQL/PostgreSQL support, with freeform queries
- SMTP client-side connection reuse
- by default, no longer rewrite message headers in mail from remote clients
- can use your ISP account name for mail destined outside your machine
- can selectively turn off ESMTP features in client or server
- remote SMTP client resource control (the anvil server)
- support for CDB, SDBM and NIS+ databases is now built into Postfix
- new SMTP access control features
- and more
Caution:
- You MUST stop 2.1.x and earlier versions before upgrading.
- Use the postfix upgrade program to upgrade your main.cf/master.cf.
under share/examples/rc.d. The variable name already was named
RCD_SCRIPTS_EXAMPLEDIR.
This is from ideas from Greg Woods and others.
Also bumped PKGREVISION for all packages using RCD_SCRIPTS mechanism
(as requested by wiz).
type. All platforms now support the "hash" map type as a result.
Remove the explicit dependencies on db4 and db2 on non-Linux and Linux,
respectively. Bump the PKGREVISION.
so that we'd not force dependance on specific MySQL version, and instead pick
the currently installed mysql*-client (or install the default if there
is no mysql-client package installed yet)
this makes package buildable with arbitrary MySQL version, such as 3.23.x,
4.0.x or 4.1.x
- The code to eliminate the local MTA from an MX address list did
not handle the case that the local MTA could appear with different
MX preferences in both inet_interfaces and proxy_interfaces.
- The SMTP server's kiss-of-death message "421 Timeout exceeded"
wasn't guarded by setjmp().
- The SMTP server didn't update the per-session error counter when
a client was denied access with smtpd_delay_reject=no.
- The Postfix sendmail command leaked file descriptors when it was
unable to execute the postdrop mail submission command.
- The bounce daemon sent the wrong type of bounce message when a
- Plus some portability, safety and documentation fixes.
which are the full option names used to set rpath directives for the
linker and the compiler, respectively. In places were we are invoking
the linker, use "${LINKER_RPATH_FLAG} <path>", where the space is
inserted in case the flag is a word, e.g. -rpath. The default values
of *_RPATH_FLAG are set by the compiler/*.mk files, depending on the
compiler that you use. They may be overridden on a ${OPSYS}-specific
basis by setting _OPSYS_LINKER_RPATH_FLAG and _OPSYS_COMPILER_RPATH_FLAG,
respectively. Garbage-collect _OPSYS_RPATH_NAME and _COMPILER_LD_FLAG.
into the bsd.options.mk framework. Instead of appending to
${PKG_OPTIONS_VAR}, it appends to PKG_DEFAULT_OPTIONS. This causes
the default options to be the union of PKG_DEFAULT_OPTIONS and any
old USE_* and FOO_USE_* settings.
This fixes PR pkg/26590.
<nameser8_compat.h> before <resolv.h> if it's defined.
Along with Johnny's recent buildlink3 fixes, this fixes the build
for me on Mac OS X Server 10.3.4. Should address pkg/26584.
framework and also by explicitly specifying more default values for
Postfix parameters. Also pass -I/usr/pkg/include/sasl to the compiler
when building using Cyrus SASLv2, which allows me to remove the patches
that added an unnecessary USE_SASL2_AUTH check.
for each package can be determined by invoking:
make show-var VARNAME=PKG_OPTIONS_VAR
The old options are still supported unless the variable named in
PKG_OPTIONS_VAR is set within make(1) (usually via /etc/mk.conf).
mail/postfix package -- create a new option "POSTFIX_OPTIONS" that is a
list of optional add-ons that will be built into Postfix. Currently,
it accepts any of "inet6 ldap mysql mysql4 prce sasl tls". Move the
existing POSTFIX_USE_* variables into bsd.pkg.obsolete.mk.
Also split out the optional add-ons into a separate Makefile.options
so that the main Makefile workflow is a bit easier to understand.
Lastly, collapse the pre-install target into the do-install target we run
custom code for the whole install process anyway.
Approved by martti.
* Bugfix: Misplaced myfree() caused a small memory leak.
* Removed the colon (:) from the characters XFORWARD replaces by
a question mark (IPv6 addresses looked like 2001?610?1108?5010?1
in logging).
- The postdrop mail submission command could die with SIGHUP and
abort mail submission. This was observed with mail from cron jobs.
- The MySQL client aborted with complaints about multiple attempts
to register the same lookup table. This was observed in the proxymap
daemon.
- As a workaround for agressive SMTP command pipelining clients,
the Postfix SMTP server now allows SMTP clients to overshoot the
SMTP server recipient limit without triggering the server hard
error limit, as long as the number of excess recipients stays within
a hard-coded overshoot limit of 1000. If you have such clients then
you also need to specify "smtpd_error_sleep_time = 0" or else
performance will be poor.
- The LMTP client attempted to reuse a connection after timeout,
causing protocol synchronization errors.
- The trivial-rewrite server could core dump after temporary table
lookup failure. This was not observed in Postfix 2.0.
- When mail is submitted at a high rate with the Postfix sendmail
command, the pickup daemon is keps busy long enough that it it
terminated by the watchdog timer (a feature that prevents Postfix
from locking up permanently).
- Malformed addresses in SMTP commands could result in table looks
with zero-length search strings, causing trouble with NIS lookups.
- A change in the line reading routines caused unexpected results
with lines ending in EOF. This change is undone.
- A portability problem with the test command ("test -e" is not
supported on older systems, while "test -f" does the job).
- Portability to MacOSX: Bind8 compatibility, core dumps in mailq
and postdrop, and changes in netinfo support.
- Elimination of some DNS lookup problems in third-party library
routines (typically resulting in localhost not being found).
- More agressive delivery to sites that defer a lot of mail.
- Correction of a few obscure error messages.
- Several small documentation fixes.
- Minor fixes for robustness problems that no-one has experienced.
"auxprop".
* Modify the package so that the smtpd.conf file is initially stored
with the other example files and copied over to its true location
via CONF_FILES. This allows modifying the postfix installation to
use some other SASL authenticaion method, e.g. PLAIN with saslauthd
through TLS.
* Only allow using one SASL library or the other, and prefer SASL2 to
SASL1.
- After "postfix reload", the master daemon now warns when the
inet_interfaces parameter setting has changed, and ignores the
change, instead of passing incorrect information to the smtp
server.
- After the postdrop command change with Postfix 2.0.11, the postcat
command no longer recognized "maildrop" queue files as valid.
- Mail could bounce when two messages were delivered simultaneously
to a non-existent mailbox file. The safe_open() code that prevents
race condition exploits will now try a little harder when it
actually encounters a race condition.
- Updated the IPv6 patch.
- Stricter smtpd input checks rejected invalid addresses starting with @.
- Stricter postdrop input checks broke "sendmail -bs".
- New "postcat -q" (search the queue for the named file) support
from snapshot release because I can no longer see people suffer.
- Allow <@site,@site:address> route addresses in SMTP commands.
This address form was deprecated years ago.
- "sendmail -q<time>" without -bd option now exits immediately,
instead of waiting for input and screwing up system boot sequences.
- The Postfix LMTP client used the wrong service name, causing
trouble with SASL 2.1.13.
- Turned off non-blocking write to pipe because too many systems
gave an unexpected write() result, causing partial delivery of
messages to commands like procmail.
- Ugly but harmless warnings from nqmgr after "postsuper -r" to
requeue files that already had some recipients delivered.
- The proxy_read_maps parameter did not recognize "," as separator.
- The local delibery agent now defers delivery after .forward etc.
file read error.
- The message_size_limit was applied when running "newaliases",
so that the result alias database could be truncated on systems
with very small message size limits.
The official release changes for bugfixes and portability issues only.
as samples, either by the user or by bsd.pkg.install.mk.
- Correctly handle configuration files, that is, avoid touching the conf
directory directly.
- Use OWN_DIRS to handle the spool directory.
- Run post-install through an INSTALL script.
- Sort PLIST after all these changes.
- Bump PKGREVISION to 1.
- The SMTP client did not deliver a partial last line when someone
submitted 8BITMIME mail not ending in newline via /usr/sbin/sendmail
while MIME input processing was turned off, and MIME 8bit->7bit
conversion was requested upon delivery.
- Postfix processes now abort when given a net/mask pattern with
a non-zero host portion (for example, 168.100.189.2/28), instead
of risking to become an open mail relay.
- Workaround for file system clock drift that caused Postfix to
ignore new mail (this could happen with queue file systems mounted
from a server).
Makefiles simply need to use this value often, for better or for
worse.
(2) Create a new variable FIX_RPATH that lists variables that should
be cleansed of -R or -rpath values if ${_USE_RPATH} is "no". By
default, FIX_RPATH contains LIBS, X11_LDFLAGS, and LDFLAGS, and
additional variables may be appended from package Makefiles.
Postfix 2.0 patchlevel 6 intends to protect vulnerable Sendmail
systems against exploitation of a remote buffer overflow problem
that is described in CERT advisory CA-2003-07.
- Postfix now truncates non-address information in message address
headers (comments, etc.) to 250 characters per address. This should
rarely present a problem. Reportedly, junk mail from poorly written
software can trigger the protection, but that is no great loss.
- Some little fixes to documentation.
- The SMTP server's hard and soft error limits were off by one.
With "smtpd_hard_error_limit = 1", Postfix will now disconnect
after the first error, instead of the second one.
- The proxymap server could deadlock when the mydestination parameter
setting included a proxymapped lookup table.
- Some little fixes to documentation.
- The format of maildir filenames is synchronized with the present
version of the maildir definition document. This format was already
adopted by the 20030126 snapshot release.
- The time limit on delivery to external commands was not enforced.
This was broken probably some time before the first public Postfix release.
- Duplicate elimination after virtual alias expansion works again.
This was broken with the introduction of the original recipient attribute.
- The local pickup daemon dropped incomplete records from local
submissions. This was broken somewhere in the middle of 2002.
configuration.
+ Document how to use /etc/rc.conf.d/postfix on NetBSD 1.5 and newer
to start /usr/pkg/sbin/postfix instead of /usr/sbin/postfix
+ Ensure that the postfix user and the postfix & maildrop groups exist.
Adds Darwin support, and prevents a working NetBSD postfix setup from being
broken on a "make install" of this package because the package used to
change /etc/postfix/{post-install,postfix-files,postfix-script}.
These changes are mostly from Amitai Schlair <schmonz@netbsd.org>,
with some tweaks by me. (Thanks Amitai!)
have it be automatically included by bsd.pkg.mk if USE_PKGINSTALL is set
to "YES". This enforces the requirement that bsd.pkg.install.mk be
included at the end of a package Makefile. Idea suggested by Julio M.
Merino Vidal <jmmv at menta.net>.
- Postfix 2.0 broke relocated table lookup results with mail not
rejected at the SMTP port, causing "User has moved to" text to be deleted.
- A widely used maildir filename generating algorithm was broken.
This affects all Postfix versions with maildir support. Instead of
TIME.PID_COUNT.HOST Postfix now uses TIME.DEVICE_INODE.HOST.
- Postfix 2.0 gave incorrect FILTER_README instructions for sites
that wish to disable virtual alias mapping before the content filter.
- Added MAILER-DAEMON to the list of always recognized local
addresses, since it is generated by Postfix bounces.
- Bugfix: transport_errno was not reset upon successful
transport map wildcard lookup after an earlier failure.
- Cleanup: unnecessary warnings from the proxymap client
after proxymap server disconnect.
- Cleanup: Patrik Rak found a few more chattr invocations
that were missed 20021209. Files: postfix-install,
conf/post-install.
- Cleanup: the pcre-config command can produce null outputs.
- Bugfix: the virtual(8) Makefile included $(AUXLIBS) in the
dependencies.
- Bugfix: fixed in the snapshots 20030105 but missed in the
stable release. "sendmail -bs" tried to access the proxymap
service. It should not try to open any user/domain/uce
related tables at all.
even though it seems to work now.
Why commented-out? This patch also includes a TLS patch and I don't know
if it's better/more stable/whatever compared to the existing TLS patch.
What I'd like to have is a separate patch for IPv6 and TLS. According to
the author this is available in the near future.
IMPORTANT: read the documents in /usr/pkg/share/doc/postfix/ before
upgrading from Postfix 1.1.
Hightlights:
- MIME support (including 8bit->7bit conversion and more
accurate matching of MIME headers in message bodies)
- completely rewritten RBL client code
- smarter handling of DNS lookup errors in UCE restrictions
- virtual delivery agent without transport map for every domain
- a long list of other things that are meant to improve performance
or functionality without compromising what already existed.
- The garbage in "user@garbage"@domain address forms may cause the
SMTP or LMTP client to terminate with a fatal error exit because
garbage/tcp is not an existing service. This cannot be abused
to cause the SMTP or LMTP client to send data into unauthorized
ports.
Remove `-p' from mkdir arguments, it is already part of ${MKDIR}.
While here substitute a couple of ${PREFIX} by `%D' in
`@exec ${MKDIR} ...' lines and add a couple of missing `%D' in such lines too!
* Cleanup: Mailbox-Line: message header labels should be X-Mailbox-Line: labels
* The SMTP server now disallows RCPT TO:<"">, just like it disallows RCPT TO:<>
* Replace domain.name by domain.tld in the example config files
* The Postfix sendmail command did not export the MAIL_CONFIG environment
setting to the postdrop command
- Bugfix: the new code for header address quoting sometimes did
not null terminate strings so that arbitrary garbage could appear
at the end of message headers.
- Safety: user@domain@domain is no longer accepted by the
permit_mx_backup UCE restriction (unless Postfix is configured
with "resolve_dequoted_address = no").
* add a MESSAGE file to describe how to activate postfix (pkg/13335)
Changes:
* Close user@domain@postfix-style.virtual.domain source routing relaying
loophole involving postfix-style virtual domains with @virtual.domain
catch-all patterns
* mail_addr_map() used the "wrong" @ character in addresses with multiple @.
* For address localpart quoting, now quote @ as a special character
everywhere, except when resolving addresses. Previously, the @ was nowhere
quoted as a special character, not even in SMTP commands.
* Don't allow an OK access rule lookup result for
user@domain@postfix-style.virtual.domain.
* Quote unquoted address localparts that need quoting.
* The SMTP client logged and bounced the CNAME expanded recipient address,
and thereby complicated trouble shooting.
* The SMTP and LMTP clients bounced the quoted recipient address, resulting
in too much quoting in bounce reports.
* The LDAP client used the "wrong" @ character in addresses with multiple @.
* Forwards "postqueue -r" compatibility with the additional queue file
records that are stored by snapshot 20050512.
* Specify "resolve_dequoted_address = no" to prevent Postfix from looking
inside quotes for extra @ etc. characters when resolving an address.
This behavior is technically more correct, but it opens a mail relay
loophole with "user @domain"@domain when relaying mail to a Sendmail system.
- Postfix no longer attempts to build with GDBM support
- The Postfix SMTP client forgot to quote whitespace etc. in a
sender or recipient address when DNS lookup was turned off
- Better error reporting in the postqueue command
- Violation of the defer_transports setting: the flush server could
trigger mail delivery (as if ETRN was sent) while doing some internal
housekeeping of per-destination logfiles.
- Virtual mapping was broken for addresses with embedded whitespace
in the recipient local part.
- When the super-user runs "mailq" or "postqueue -p" (list mail
queue) while the mail system is down, the postqueue command runs
the showq command directly. However, postqueue did not pass on
non-default configuration directory settings to the showq command,
so that showq would report the default mail queue instead.
- The new code avoids problems with SMTP servers that will not
receive mail with lines longer than the 1000 characters that are
allowed by the SMTP standard.
- The new code is more graceful in the handling of abnormally long
message headers. It will no longer switch from "message header"
to "message body" mode in the middle of an abnormally long message
header line.