- update to 3.4.6e7b3740128
Postfix -- memory corruption vulnerabilityentered 2011-05-09
Secure alternative to widely-used Sendmail
# pkg install postfix# pkg install postfix-ldap# pkg install postfix-mongo# pkg install postfix-mysql# pkg install postfix-pgsql# pkg install postfix-sasl# pkg install postfix-sqliteinstalls postfix 3.11.7_4,1, postfix-ldap 3.11.7_4,1, postfix-mongo 3.11.7_4,1, postfix-mysql 3.11.7_4,1, postfix-pgsql 3.11.7_4,1, postfix-sasl 3.11.7_4,1, postfix-sqlite 3.11.7_4,1 from latest; from quarterly (2026Q4) postfix 3.11.7_3,1, postfix-ldap 3.11.7_3,1, postfix-mongo 3.11.7_3,1, postfix-mysql 3.11.7_3,1, postfix-pgsql 3.11.7_3,1, postfix-sasl 3.11.7_3,1, postfix-sqlite 3.11.7_3,1# cd /usr/ports/mail/postfix && make install clean# make -C /usr/ports/mail/postfix config # change options first
postfix, group mail, maildrop, postfixTo use postfix instead of sendmail: - clear sendmail queue and stop the sendmail daemons Run the following commands to enable postfix during startup: - sysrc postfix_enable="YES" - sysrc sendmail_enable="NONE" If postfix is *not* already activated in /usr/local/etc/mail/mailer.conf - mv /usr/local/etc/mail/mailer.conf /usr/local/etc/mail/mailer.conf.old - install -d /usr/local/etc/mail - install -m 0644 /usr/local/share/postfix/mailer.conf.postfix /usr/local/etc/mail/mailer.conf Disable sendmail(8) specific tasks, add the following lines to /etc/periodic.conf(.local): daily_clean_hoststat_enable="NO" daily_status_mail_rejects_enable="NO" daily_status_include_submit_mailq="NO" daily_submit_queuerun="NO" If you are using SASL, you need to make sure that postfix has access to read the sasldb file. This is accomplished by adding postfix to group mail and making the /usr/local/etc/sasldb* file(s) readable by group mail (this should be the default for new installs).
If you remove postfix permanent, adjust / remove the the following file: - /usr/local/etc/mail/mailer.conf
| FreeBSD version | amd64 | aarch64 | i386 |
|---|---|---|---|
| FreeBSD 16 | 3.11.7_4,1 | 3.11.7_3,1 | – |
| FreeBSD 15 | 3.11.7_4,1 | 3.11.7_3,1 | – |
| FreeBSD 14 | 3.11.7_4,1 | 3.11.7_3,1 | 3.11.7_4,1 |
| FreeBSD version | amd64 | aarch64 | i386 |
|---|---|---|---|
| FreeBSD 15 | 3.11.7_3,1 | 3.11.7_3,1 | – |
| FreeBSD 14 | 3.11.7_3,1 | 3.11.7_1,1 | 3.11.7_3,1 |
version as in the ports tree (latest) or the most common one (quarterly) · different version · ✗ not built · – no packages for this platform. Package sets that have not been rebuilt for 60 days are left out.
pkg audit for the packaged version 3.11.7_4,1.| PR | Summary | Status | Changed |
|---|---|---|---|
| 299271 | maintainer-feedback? mail/postfix: lmdb version issue fixed in main but not 2026Q4 | New | 2026-10-14 |
- update to 3.4.6e7b3740128
- convert pkg-message to UCL6f79463d88
- update to 3.4.5 - adopt libressl patches from OpenBSD56228e8fd2
- update to postfix-3.3.4 Changelog: 20190312 Bugfix (introduced: Postfix 2.2): reject_multi_recipient_bounce has been producing false rejects starting with the Postfix 2.2 smtpd_end_of_data_restrictons, and for the same reasons, did the same with the Postfix 3.4 BDAT command. The latter was reported by Andreas Schulze. File: smtpd/smtpd_check.c. 20190328 Bugfix (introduced: Postfix 3.0): LMTP connections over UNIX-domain sockets were cached but not reused, due to a cache lookup key mismatch. Therefore, idle cached connections could exhaust LMTP server resources, resulting in two-second pauses between email deliveries. This problem was investigated by Juliana Rodrigueiro. File: smtp/smtp_connect.c.c305034bca
devel/icu: update to 64.1 Changes: http://site.icu-project.org/download/64 ABI: https://abi-laboratory.pro/tracker/timeline/icu4c/ PR: 236325 Exp-run by: antoine Differential Revision: https://reviews.freebsd.org/D19479480c577baa
- update to 3.3.3 Changelog: 20181202 Bugfix (introduced: postfix-2.11): with posttls-finger, connections to unix-domain servers always resulted in "Failed to establish session" even after a connection was established. Jaroslav Skarva. File: posttls-finger/posttls-finger.c. 20181227 (a forgotten bugfix from 20180707) Bugfix (introduced: Postfix 3.0): with smtputf8_enable=yes, table lookups could casefold the search string when searching a lookup table that does not use fixed-string keys (regexp, pcre, tcp, etc.). Historically, Postfix would not case-fold the search string with such tables. File: util/dict_utf8.c. 20190217 Cleanup: when the master daemon runs with PID=1 (init mode), reap orhpan processes from non-Postfix code running in the same container, instead of terminating with a panic. File: master/master_spawn.c. MFH: 2019Q1b233e37f82
- add ability to overwrite OPTIONS_DEFAULT for slave ports (s/=/?=/) PR: 233608 Submitted by: HEO SeonMeyong666127294e
- fix build with libressl 2.8.2 PR: 233517 233527 Submitted by: Andrej Ebert Reported by: Herbert J. Skuhrab193a0d924
- update to 3.3.2 Changelog: 20180617 Bugfix (introduced: Postfix 2.11): minor memory leak when minting issuer certs. This affects a tiny minority of use cases. Viktor Dukhovni, based on a fix by Juan Altmayer Pizzorno for the ssl_dane library. 20180817 Workaround: postconf build did not abort if the m4 command is not installed (on a system that does have the make command, the awk command, the perl command, and the C compiler?!). 20181104 Multiple 'bit rot' fixes for OpenSSL API changes, including support to disable TLSv1.3, to avoid issuing multiple session tickets, and to allow OpenSSL >= 1.1.0 run-time micro version bumps without complaining about library version mismatches. Viktor Dukhovni. 20181106 Bugfix (introduced: 3.0): smtpd_discard_ehlo_keywords could not disable "SMTPUTF8". because the lookup table was using "EHLO_MASK_SMTPUTF8" instead. 20181110 Documentation: update documentation for Postfix versions that support disabling TLS 1.3. 20181117 Improved logging of TLS 1.3 summary information, and improved reporting of the same info in Received: message headers. Viktor Dukhovni. MFH: 2018Q419c06e9f04
Remove compatibility code for FreeBSD < 11.2 from all ports. Simplify some ports where DragonFlyBSD no longer needs to be special-cased. Submitted by: rene Reviewed by: bapt, jbeich Differential Revision: https://reviews.freebsd.org/D177248a502cb2d4
devel/icu: update to 63.1 Changes: http://site.icu-project.org/download/63 ABI: https://abi-laboratory.pro/tracker/timeline/icu4c/ PR: 232300 Exp-run by: antoine91f9922c6f
- fix build on FreeBSD 13-CURRENT PR: 232502 Submitted by: Kaid0a9b751ca
- add new port postfix-ldap-sasl (OPTIONS_SLAVE= LDAP LDAP_SASL SASL) PR: 230816 Submitted by: bz@16129aba43
devel/icu: update to 62.1 Changes: http://site.icu-project.org/download/62 ABI: https://abi-laboratory.pro/tracker/timeline/icu4c/ PR: 229359 Exp-run by: antoine (only 10.4)3beb732dad
Drop always true (and tautologic) OSVERSION conditions Approved by: portmgr blanketef5f1bb989
- update to 3.3.1 - rework MySQL patch42126eb23e
devel/icu: update to 61.1 Changes: http://site.icu-project.org/download/61 ABI: https://abi-laboratory.pro/tracker/timeline/icu4c/ PR: 227042 Exp-run by: antoine MFH: 2018Q2 (required by Firefox 61)ae60358af5
- fix build agains maraidb100 [1] Firt definition of MARIADB_VERSION_ID can be found in mariadb102 therefore we have to use MARIADB_BASE_VERSION which is defined in mariadb55 and mariadb10x PR: 226266 [1], 220224 Reported by: Zilon [1]b4f2889e27
- update to 3.3.0 - add patch for MySQL 8.x [1} - add blacklistd support [2] additional: - regenerate patch for src/util/sys_defs.h Release Notes: ftp://ftp.porcupine.org/mirrors/postfix-release/official/postfix-3.3.0.RELEASE_NOTES PR: 220224 [1], 225664 [2] Submitted by: Klaus Mayr [1], Koichiro IWAO [2]de0cd10fe2
- update to 3.3.0-RC10c875fcc47
- fix licence error after last commit Reported by: Yasuhiro KIMURA MFH: 2018Q16244f44401
- update to 3.2.5 - license is now dual (see Changelog 20180127) - make EAI optional but on by default [1] Changelog: 20171116 Bugfix (introduced: Postfix 2.1): don't log warnings that some restriction returns OK, when the access map DISCARD feature is in effect. File: smtpd/smtpd_check.c. 20171215 Bugfix (introduced: 20170611): the DB_CONFIG bugfix broke Berkeley DB configurations with a relative pathname. File: util/dict_db.c. 20171218 Workaround: reportedly, some res_query(3) implementation can return -1 with h_errno==0. Instead of terminating with a panic, the Postfix DNS client now logs a warning and sets h_errno to TRY_AGAIN. File: dns/dns_lookup.c. 20171226 Documentation patches by Sven Neuhaus. Files: proto/FORWARD_SECRECY_README.html, proto/MILTER_README.html, proto/SMTPD_ACCESS_README.html. 20180106 Cleanup: missing mailbox seek-to-end error check in the local(8) delivery agent. File: local/mailbox.c. Cleanup: incorrect mailbox seek-to-end error message in the virtual(8) delivery agent. File: virtual/mailbox.c. 20180127 Licence: in addition to the historical IBM Public License 1.0, this software is now also distributed with the more recent Eclipse Public License 2.0. Recipients can choose to take the software under the license of their choice. Those who are more comfortable with the IPL can continue with that license. File: LICENSE. PR: ports/221619 [1] Submitted by: Kubilay Kocak (koobs@) MFH: 2018Q174fd49f53e
Update to 3.2.4 Changelog: * DANE interoperability. Postfix builds with OpenSSL 1.0.0 or 1.0.1 failed to send email to some sites with "TLSA 2 X X" DNS records associated with an intermediate CA certificate. Problem report and initial fix by Erwan Legrand. * Missing dynamicmaps support in the Postfix sendmail command. This broke authorized_submit_users settings that use a dynamically-loaded map type. Problem reported by Ulrich Zehl. PR: 223804 Submitted by: zeising Approved by: maintainer timeouted31fe6b8a
mail/postfix: use ECHO_CMD instead of ECHO - When using "make -s install" the build can fail because the essential modifications to the port build are not made correctly. # make -s VECHO true # make -s VECHO_CMD echo PR: 222988 Submitted by: Franco Fichtner <franco@opnsense.org> Approved by: ohauer (maintainer timeout)854d3c9da9
devel/icu: update to 60.1 Changes: http://site.icu-project.org/download/60 ABI: https://abi-laboratory.pro/tracker/timeline/icu4c/ PR: 223373 Exp-run by: antoine99b0558e42
- update to 3.2.3 Changelog: 20170620 Bugfix (introduced: Postfix 3.2) extension propagation was broken with "recipient_delimiter = .". This change reverts a change that was trying to be too clever. Files: global/mail_adr_crunch.c, global/mail_addr_crunch.ref. 20170910 Safety: restore sanity checks for dynamically-specified width and precision in format strings (%*, %.*, and %*.*). These checks were lost with the Postfix 3.2.2 rewrite of the vbuf_print formatter. File: vbuf_print.c. 20170923 Bugfix (introduced: Postfix 3.2): panic in the postqueue command after output write error while listing the queue. This change restores a write error check that was lost with the Postfix 3.2.2 rewrite of the vbuf_print formatter. Problem reported by Andreas Schulze. File: util/vbuf_print.c.611140b50b
devel/icu: update to 59.1 - Temporarily keep C++98 working in consumers for Clang's default -std= Changes: http://site.icu-project.org/download/59 PR: 218788 Submitted by: takefu@airport.fm, dcarmich@dcarmichael.net (early version) Exp-run by: antoinea382198617
- update to 3.2.2 - adjust PORTSCOUT
Changelog:
20170221
Compatibility fix (introduced: Postfix 3.1): some Milter
applications do not recognize macros sent as {name} when
macros have single-character names. Postfix now sends such
macros without {} as it has done historically. Viktor
Dukhovni. File: milter/milter.c.
20170402
Bugfix (introduced: Postfix 3.2): restore the SMTP server
receive override options at the end of an SMTP session,
after the options may have been modified by an smtpd_milter_maps
setting of "DISABLE". Problem report by Christian R__ner,
root cause analysis by Viktor Dukhovni. File: smtpd/smtpd.c.
20170430
Safety net: append a null byte to vstring buffers, so that
C-style string operations won't scribble past the end. File:
vstring.c.
20170531
Bugfix (introduced: Postfix 3.2): after the table lookup
overhaul, the check_sender_access and check_recipient_access
features ignored the parent_domain_matches_subdomains
setting. Reported by Henrik Larsson. File: smtpd/smtpd_check.c.
20170610
Workaround (introduced: Postfix 3.0 20140718): prevent MIME
downgrade of Postfix-generated message/delivery status.
It's supposed to be 7bit, therefore quoted-printable encoding
is not expected. Problem reported by Griff. File:
bounce/bounce_notify_util.c.
20170611
Security: Berkeley DB 2 and later try to read settings from
a file DB_CONFIG in the current directory. This undocumented
feature may introduce undisclosed vulnerabilities resulting
in privilege escalation with Postfix set-gid programs
(postdrop, postqueue) before they chdir to the Postfix queue
directory, and with the postmap and postalias commands
depending on whether the user's current directory is writable
by other users. This fix does not change Postfix behavior
for Berkeley DB < 3, but reduces file create performance
for Berkeley DB 3 .. 4.6. File: util/dict_db.c.
PR: 219996
Reported by: Markus Kohlmeyer
MFH: 2017Q223e2e77576mail/postfix: Fix x25519 kex with LibreSSL PR: 216790 Obtained from: OpenBSD ports Approved by: ohauer (maintainer)eb15060f86
Update to 3.2.0.
This release ends support for legacy release Postfix 2.10.
The main changes in no particular order are:
* Elliptic curve negotiation with OpenSSL ≥ 1.0.2. This changes the default
smtpd_tls_eecdh_grade setting to "auto", and introduces a new parameter
tls_eecdh_auto_curves with the names of curves that may be negotiated.
* Stored-procedure support for MySQL databases. Contributed by John Fawcett.
See the mysql_table(5) manpage for details.
* Cidr: table support for if/endif and negation (by prepending ! to a pattern),
just like regexp: and pcre: tables. See the cidr_table(5) manpage for details.
* The postmap command and the inline: and texthash: maps now support spaces in
left-hand field of lookup table source text. Use double quotes (") around a
left-hand field that contains spaces, and use backslash (\) to protect quotes
in a left-hand field.
* Support for per-client Milter configuration (smtpd_milter_maps) that
overrides the main.cf smtpd_milters setting, and that has the same syntax. A
lookup result of "DISABLE" turns off Milter support for that client. See
MILTER_README.html for details.
* The local SMTP server IP address and port are available in the policy
delegation protocol (attribute names: server_address, server_port), in the
Milter protocol (macro names: {daemon_addr}, {daemon_port}), and in the XCLIENT
protocol (attribute names: DESTADDR, DESTPORT).
* For safety reasons, the Postfix sendmail -C option must specify an authorized
directory: the default configuration directory, a directory that is listed in
the default main.cf file with alternate_config_directories or
multi_instance_directories, otherwise the command must be invoked with root
privileges. This mitigates a recurring "jail break" problem with the PHP mail()
function.
* "PASS" and "STRIP" actions in header/body_checks. "STRIP" is similar to
"IGNORE" but also logs the action, and "PASS" disables header, body, and Milter
inspection for the remainder of the message content. Contributed by Hobbit.
* The collate.pl script by Viktor Dukhovni for grouping Postfix logfile records
into "sessions" based on queue ID and process ID information, in the
auxiliary/collate directory of the Postfix source tree.
Disabled or removed behavior:
* SMTPUTF8 support: Postfix 3.2 disables the 'transitional' compatibility
between the IDNA2003 and IDNA2008 standards for internationalized domain names
(domain names beyond the limits of US-ASCII). This makes Postfix behavior
consistent with contemporary web browsers. See RELEASE_NOTES for more.
* Postfix 3.2 removes tentative features that were implemented before the DANE
spec was finalized: support for certificate usage PKIX-EE(1), the ability to
disable digest agility, and the ability to disable support for "TLSA 2 [01]
[12]" records that specify the digest of a trust anchor. See RELEASE_NOTES for
more.
PR: 218697
Submitted by: pi
Reviewed by: flo
Approved by: maintainer timeout77fb9d40c0- update to 3.1.4 Changelog: 20161105 Bugfix (introduced: Postfix 1.1): the postsuper command did not count a successful rename operation after error recovery. 20161204 Bugfix (introduced: Postfix 3.1): cut-and-paste error in the "postfix tls deploy-server-cert" command, causing the wrong certfile and keyfile to be used. Robustness: create a new keyfile when "postfix tls new-server-cert" is invoked and main.cf specifies a non-existent keyfile. 20161206 Bugfix (introduced: Postfix 3.0): when receiving a MAIL FROM...SMTPUTF8 command while smtpd_delay_reject=no, enable SMTPUTF8 support before processing smtpd_sender_restrictions. 20161220 Bugfix (introduced: Postfix 2.1.0): the Postfix SMTP daemon did not query sender_canonical_maps when rejecting unknown senders with "smtpd_reject_unlisted_recipient = yes" or with reject_unlisted_sender. MFH: 2017Q158848f81b1
Do not use post-stage. Use post-install instead. The only reason to use post-stage is because the port needs to do "things" at a later time, like some plist manipulation. While there, fold post-install in do-install targets when they are defined. PR: 214780 Submitted by: mat Exp-run by: antoine Sponsored by: Absolight8b4093cba5
devel/icu: update to 58.1 Changes: http://site.icu-project.org/download/58 PR: 214384 Exp-run by: antoine Approved by: office (bapt)23a96f4a5f
- restore svn:keywords75590290b7
- update to 3.1.3 Changelog: 20160911 Bugfix (introduced: Postfix 3.0): the SMTP daemon did not reset a previous session's command counts before rejecting a client that exceeds request or concurrency rates. File: smtpd/smtpd.c. 20160917 Bugfix (introduced: Postfix 3.0): the unionmap did not propagate table lookup errors. Based on patch by Roel van Meer. Files: util/dict_union.c, util/dict_union_test.*. 20160925 Workaround (problem introduced: Postfix 2.11): to avoid false "not found" errors with MySQL map queries that contain UTF8-encoded text, specify "option_group = client" in Postfix MySQL configuration files. This will be the default setting with Postfix 3.2 and later.ca7e91d336
- Update devel/icu to 57.1. - Clean up the Makefile. - Follow some upstream recommendations (--with-data-packaging=archive, --disable-renaming, -DICU_NO_USER_DATA_OVERRIDE). - Patch makefiles to install static libraries with INSTALL_DATA so they aren't stripped. - Patch config/mh-bsd-gcc to sync with config/mh-linux-gcc. - Fix endianness detection in ICU. The code wanted to use BYTE_ORDER d PR: 205120 Exp-run by: antoine Approved by: portmgr (antoine)48f4591035
mail/postfix: Fix typo in LibreSSL patch - Fix DANE support with LibreSSL PR: 212223 Reported by: Markus Kohlmeyer <rootservice@gmail.com>04948a63a8
mail/postfix: Fix runtime issues with LibreSSL - Add LibreSSL checks to <> 1.1.0 OpenSSL checks - Bump portrevision PR: 212223 Submitted by: Markus Kohlmeier <rootservice@gmail.com> Reported by: Markus Kohlmeier <rootservice@gmail.com> Approved by: ohauer (via PR) MFH: 2016Q32a819e64d9
- update to 3.1.2
20160819
Bugfix (introduced: Postfix 3.0): the makedefs script ignored
readme_directory=pathname overrides. Fix by Todd C. Olson.
File: makedefs.
20160821
Bugfix (introduced: Postfix 3.0): the tls_session_ticket_cipher
documentation says aes-256-cbc, but the implementation was
using aes-128-cbc (note that Postfix SMTP server and client
processes have a limited life time).
20160828
Bitrot: fixes for incompatible OpenSSL 1.1.0 API changes.
Viktor Dukhovni. Files: posttls-finger/posttls-finger.c,
tls/tls.h, tls/tls_dane.c, tls/tls_verify.c, tls/tls_server.c,
tls/tls_client.c.1ff18ccab7USE_BDB cleanup. - USE_BDB=4x+ -> USES=bdb. - USE_BDB=yes -> USES=bdb. - USE_BDB=xx -> USES=bdb:xx. Other modernisations when I see them. PR: 209183 Sponsored by: Absolightf037e39601
- fix build with libressl-devel PR: 211502 Reported by: Helmut Ritter Obtained from: http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/mail/postfix/stable/patches/5894099eb9
- fix build on FreeBSD 12 - s/USE_OPENSSL=yes/USES=ssl/f7a7d51c2f
Bump PORTREVISION for the icu revert. This time not bumping lang/php70, but devel/php70-intl which is the one really depending on icu. PR: 205120 With hat: portmgr Sponsored by: Absolight7acca7e902
devel/icu: bump PORTREVISION on dependent portsfb8d8ab5f9
- update to 3.1.1
Changelog:
20160228
Documentation: typos in postfix-tls-script(1) manpage.
20160327
Documentation: line wrapping in postconf(1) manpage.
20160310
Bugfix (introduced: Postfix 2.6): the Milter SMFIR_CHGFROM
(replace sender) request lost the sender_bcc_maps address.
Fixed by moving some record keeping to the sender output
function. Files: cleanup/cleanup_envelope.c,
cleanup/cleanup_addr.c, cleanup/cleanup_milter.c,
cleanup/cleanup.h, regression tests.
20160410
Bugfix (introduced: Postfix 2.6): the "bad filetype"
header_checks pattern falsely rejected Content-Mumble headers
with ``name="example"; x-apple-part-url="example.com"''.
Fixed by respecting the ";" separator between content
attribute values. Reported by Cedric Knight. File:
proto/header_checks.
20160515
Portability: OpenBSD 6.0. Files: makedefs, util/sys_defs.h.
MFH: 2016Q2ca1f7a300b- remove ${PORTSDIR} from dependencyea20d6170f- update to postfix 3.1 Users updating from postfix 2.11 should read: ftp://ftp.porcupine.org/mirrors/postfix-release/official/postfix-3.0.0.RELEASE_NOTES ftp://ftp.porcupine.org/mirrors/postfix-release/official/postfix-3.1.0.RELEASE_NOTES66ba5e03a9
- s/always build in/always built in/c6c7727ccf
- add postfix SASL slave port to the tree Requested by many PR: 195662 PR: 2051623450c7e6b6
- add missing reload part into pkg-installd15a2cc7cc