pkgsrc/mail/postfix/patches/patch-ai

216 lines
6.4 KiB
Text
Raw Normal View History

$NetBSD: patch-ai,v 1.40 2017/06/23 19:18:07 maya Exp $
1) Add shlib definitions for NetBSD 5; the build system must be
hard-coded per OS per version. Not yet reported upstream.
2) Make this pkgsrc friendly.
2004-01-23 13:03:44 +01:00
3) Add support for FreeBSD 11 & 12.
Update mail/postfix to 3.2.0. - 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. - 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. - 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. - 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. - 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.
2017-04-24 22:11:40 +02:00
--- makedefs.orig 2017-02-12 15:32:10.000000000 +0000
2012-02-27 04:01:30 +01:00
+++ makedefs
Update mail/postfix to 3.2.0. - 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. - 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. - 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. - 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. - 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.
2017-04-24 22:11:40 +02:00
@@ -284,6 +284,24 @@ case "$SYSTEM.$RELEASE" in
: ${SHLIB_ENV="LD_LIBRARY_PATH=`pwd`/lib"}
: ${PLUGIN_LD="${CC} -shared"}
;;
+ FreeBSD.11*) SYSTYPE=FREEBSD11
+ : ${CC=cc}
+ : ${SHLIB_SUFFIX=.so}
+ : ${SHLIB_CFLAGS=-fPIC}
+ : ${SHLIB_LD="${CC} -shared"' -Wl,-soname,${LIB}'}
+ : ${SHLIB_RPATH='-Wl,-rpath,${SHLIB_DIR}'}
+ : ${SHLIB_ENV="LD_LIBRARY_PATH=`pwd`/lib"}
+ : ${PLUGIN_LD="${CC} -shared"}
+ ;;
+ FreeBSD.12*) SYSTYPE=FREEBSD12
+ : ${CC=cc}
+ : ${SHLIB_SUFFIX=.so}
+ : ${SHLIB_CFLAGS=-fPIC}
+ : ${SHLIB_LD="${CC} -shared"' -Wl,-soname,${LIB}'}
+ : ${SHLIB_RPATH='-Wl,-rpath,${SHLIB_DIR}'}
+ : ${SHLIB_ENV="LD_LIBRARY_PATH=`pwd`/lib"}
+ : ${PLUGIN_LD="${CC} -shared"}
+ ;;
DragonFly.*) SYSTYPE=DRAGONFLY
;;
OpenBSD.2*) SYSTYPE=OPENBSD2
@@ -312,25 +330,7 @@ case "$SYSTEM.$RELEASE" in
;;
ekkoBSD.1*) SYSTYPE=EKKOBSD1
;;
- NetBSD.1*) SYSTYPE=NETBSD1
- ;;
- NetBSD.2*) SYSTYPE=NETBSD2
- ;;
- NetBSD.3*) SYSTYPE=NETBSD3
- ;;
- NetBSD.4*) SYSTYPE=NETBSD4
- ;;
- NetBSD.5*) SYSTYPE=NETBSD5
- ;;
- NetBSD.6*) SYSTYPE=NETBSD6
- : ${SHLIB_SUFFIX=.so}
- : ${SHLIB_CFLAGS=-fPIC}
- : ${SHLIB_LD="${CC-gcc} -shared"' -Wl,-soname,${LIB}'}
- : ${SHLIB_RPATH='-Wl,-rpath,${SHLIB_DIR}'}
- : ${SHLIB_ENV="LD_LIBRARY_PATH=`pwd`/lib"}
- : ${PLUGIN_LD="${CC-gcc} -shared"}
- ;;
- NetBSD.7*) SYSTYPE=NETBSD7
+ NetBSD*) SYSTYPE=NETBSD
: ${SHLIB_SUFFIX=.so}
: ${SHLIB_CFLAGS=-fPIC}
: ${SHLIB_LD="${CC-gcc} -shared"' -Wl,-soname,${LIB}'}
@@ -409,13 +409,6 @@ case "$SYSTEM.$RELEASE" in
esac
;;
ULTRIX.4*) SYSTYPE=ULTRIX4
- if [ -f /usr/local/lib/libdb.a ]; then
- SYSLIBS="$SYSLIBS -ldb"
- CCARGS="$CCARGS -DHAS_DB"
- if [ -d /usr/local/include/db ]; then
- CCARGS="$CCARGS -I/usr/local/include/db"
- fi
- fi
for l in syslog resolv; do
if [ -f /usr/local/lib/lib$l.a ]; then
SYSLIBS="$SYSLIBS -l$l"
@@ -457,33 +450,8 @@ case "$SYSTEM.$RELEASE" in
esac;;
# Tested with RedHat 3.03 on 20020729.
Linux.1*) SYSTYPE=LINUX1
Update postfix package to 2.10.2. Here is brief changes. 2.10.2 * TLS Interoperability workaround: turn on SHA-2 digests by force. This improves interoperability with clients and servers that deploy SHA-2 digests without the required support for TLSv1.2-style digest negotiation. * TLS Performance workaround: the Postfix SMTP server TLS session cache had become ineffective because recent OpenSSL versions enable session tickets by default, resulting in a different ticket encryption key for each smtpd(8) process. The workaround turns off session tickets. Postfix 2.11 will enable session tickets properly. * TLS Interoperability workaround: Debian Exim versions before 4.80-3 may fail to communicate with Postfix and possibly other MTAs, with the following Exim SMTP client error message: TLS error on connection to server-name [server-address] (gnutls_handshake): The Diffie-Hellman prime sent by the server is not acceptable (not long enough) See the RELEASE_NOTES file for a Postfix SMTP server configuration workaround. * Bugfix (defect introduced: 1997): memory leak while forwarding mail with the local(8) delivery agent, in code that handles a cleanup(8) server error. 2.10.1 * Workaround: down-stream maintainers fail to install the new smtpd_relay_restrictions safety net, causing breakage that could have been avoided. We now hard-code the safety net instead. 2.10.0 * Separation of relay policy (with smtpd_relay_restrictions) from spam policy (with smtpd_{client, helo, sender, recipient}_restrictions), which makes accidental open relay configuration less likely. The default is backwards compatible. * HAproxy load-balancer support for postscreen(8) and smtpd(8). The nginx proxy was already supported by Postfix 2.9 smtpd(8), using XCLIENT commands. * Support for the TLSv1 and TLSv2 protocols, as well as support to turn them off if needed for inter-operability. * Laptop-friendly configuration. By default, Postfix now uses UNIX-domain sockets instead of FIFOs, and thus avoids MTIME file system updates on an idle mail system. * Revised postconf(1) command. The "-x" option expands $name in a parameter value (both main.cf and master.cf); the "-o name=value" option overrides a main.cf parameter setting; and postconf(1) now warns about a $name that has no name=value setting. * Sendmail-style "socketmap" lookup tables.
2013-09-30 17:21:15 +02:00
- case "$CCARGS" in
- *-DNO_DB*) ;;
Update postfix to 2.11.0. Quote from release announce: The main changes in no particular order are: * Support for PKI-less TLS server certificate verification with DANE (DNS-based Authentication of Named Entities) where the CA public key or the server certificate is identified via DNSSEC lookup. This requires a DNS resolver that validates DNSSEC replies. The problem with conventional PKI is that there are literally hundreds of organizations world-wide that can provide a certificate in anyone's name. DANE limits trust to the people who control the target DNS zone and its parent zones. * Support for LMDB databases. Originally developed as part of OpenLDAP, LMDB is the first persistent Postfix database that can be shared among multiple writers such as postscreen daemons (Postfix already supported shared non-persistent memcached caches). Postfix currently requires LMDB version 0.9.11 or later. See LMDB_README for details and limitations. * A new postscreen_dnsbl_whitelist_threshold feature to allow clients to skip postscreen tests based on their DNSBL score. This can eliminate email delays due to "after 220 greeting" protocol tests, which otherwise require that a client reconnects before it can deliver mail. Some providers such as Google don't retry from the same IP address, and that can result in large email delivery delays. * The recipient_delimiter feature now supports different delimiters, for example both "+" and "-". As before, this implementation recognizes exactly one delimiter character per email address, and exactly one address extension per email address. * Advanced master.cf query/update support to access service attributes as "name = value" pairs. For example to turn off chroot on all services use "postconf -F '*/*/chroot = n'", and to change/add a "-o name=value" setting use "postconf -P smtp/inet/name = value". This was developed primarily to allow automated tools to manage Postfix systems without having to parse Postfix configuration files.
2014-02-09 06:34:13 +01:00
- *-DHAS_DB*) ;;
Update postfix package to 2.10.2. Here is brief changes. 2.10.2 * TLS Interoperability workaround: turn on SHA-2 digests by force. This improves interoperability with clients and servers that deploy SHA-2 digests without the required support for TLSv1.2-style digest negotiation. * TLS Performance workaround: the Postfix SMTP server TLS session cache had become ineffective because recent OpenSSL versions enable session tickets by default, resulting in a different ticket encryption key for each smtpd(8) process. The workaround turns off session tickets. Postfix 2.11 will enable session tickets properly. * TLS Interoperability workaround: Debian Exim versions before 4.80-3 may fail to communicate with Postfix and possibly other MTAs, with the following Exim SMTP client error message: TLS error on connection to server-name [server-address] (gnutls_handshake): The Diffie-Hellman prime sent by the server is not acceptable (not long enough) See the RELEASE_NOTES file for a Postfix SMTP server configuration workaround. * Bugfix (defect introduced: 1997): memory leak while forwarding mail with the local(8) delivery agent, in code that handles a cleanup(8) server error. 2.10.1 * Workaround: down-stream maintainers fail to install the new smtpd_relay_restrictions safety net, causing breakage that could have been avoided. We now hard-code the safety net instead. 2.10.0 * Separation of relay policy (with smtpd_relay_restrictions) from spam policy (with smtpd_{client, helo, sender, recipient}_restrictions), which makes accidental open relay configuration less likely. The default is backwards compatible. * HAproxy load-balancer support for postscreen(8) and smtpd(8). The nginx proxy was already supported by Postfix 2.9 smtpd(8), using XCLIENT commands. * Support for the TLSv1 and TLSv2 protocols, as well as support to turn them off if needed for inter-operability. * Laptop-friendly configuration. By default, Postfix now uses UNIX-domain sockets instead of FIFOs, and thus avoids MTIME file system updates on an idle mail system. * Revised postconf(1) command. The "-x" option expands $name in a parameter value (both main.cf and master.cf); the "-o name=value" option overrides a main.cf parameter setting; and postconf(1) now warns about a $name that has no name=value setting. * Sendmail-style "socketmap" lookup tables.
2013-09-30 17:21:15 +02:00
- *) SYSLIBS="-ldb";;
- esac
2004-01-23 13:03:44 +01:00
;;
Linux.2*) SYSTYPE=LINUX2
Update postfix package to 2.10.2. Here is brief changes. 2.10.2 * TLS Interoperability workaround: turn on SHA-2 digests by force. This improves interoperability with clients and servers that deploy SHA-2 digests without the required support for TLSv1.2-style digest negotiation. * TLS Performance workaround: the Postfix SMTP server TLS session cache had become ineffective because recent OpenSSL versions enable session tickets by default, resulting in a different ticket encryption key for each smtpd(8) process. The workaround turns off session tickets. Postfix 2.11 will enable session tickets properly. * TLS Interoperability workaround: Debian Exim versions before 4.80-3 may fail to communicate with Postfix and possibly other MTAs, with the following Exim SMTP client error message: TLS error on connection to server-name [server-address] (gnutls_handshake): The Diffie-Hellman prime sent by the server is not acceptable (not long enough) See the RELEASE_NOTES file for a Postfix SMTP server configuration workaround. * Bugfix (defect introduced: 1997): memory leak while forwarding mail with the local(8) delivery agent, in code that handles a cleanup(8) server error. 2.10.1 * Workaround: down-stream maintainers fail to install the new smtpd_relay_restrictions safety net, causing breakage that could have been avoided. We now hard-code the safety net instead. 2.10.0 * Separation of relay policy (with smtpd_relay_restrictions) from spam policy (with smtpd_{client, helo, sender, recipient}_restrictions), which makes accidental open relay configuration less likely. The default is backwards compatible. * HAproxy load-balancer support for postscreen(8) and smtpd(8). The nginx proxy was already supported by Postfix 2.9 smtpd(8), using XCLIENT commands. * Support for the TLSv1 and TLSv2 protocols, as well as support to turn them off if needed for inter-operability. * Laptop-friendly configuration. By default, Postfix now uses UNIX-domain sockets instead of FIFOs, and thus avoids MTIME file system updates on an idle mail system. * Revised postconf(1) command. The "-x" option expands $name in a parameter value (both main.cf and master.cf); the "-o name=value" option overrides a main.cf parameter setting; and postconf(1) now warns about a $name that has no name=value setting. * Sendmail-style "socketmap" lookup tables.
2013-09-30 17:21:15 +02:00
- case "$CCARGS" in
- *-DNO_DB*) ;;
Update postfix to 2.11.0. Quote from release announce: The main changes in no particular order are: * Support for PKI-less TLS server certificate verification with DANE (DNS-based Authentication of Named Entities) where the CA public key or the server certificate is identified via DNSSEC lookup. This requires a DNS resolver that validates DNSSEC replies. The problem with conventional PKI is that there are literally hundreds of organizations world-wide that can provide a certificate in anyone's name. DANE limits trust to the people who control the target DNS zone and its parent zones. * Support for LMDB databases. Originally developed as part of OpenLDAP, LMDB is the first persistent Postfix database that can be shared among multiple writers such as postscreen daemons (Postfix already supported shared non-persistent memcached caches). Postfix currently requires LMDB version 0.9.11 or later. See LMDB_README for details and limitations. * A new postscreen_dnsbl_whitelist_threshold feature to allow clients to skip postscreen tests based on their DNSBL score. This can eliminate email delays due to "after 220 greeting" protocol tests, which otherwise require that a client reconnects before it can deliver mail. Some providers such as Google don't retry from the same IP address, and that can result in large email delivery delays. * The recipient_delimiter feature now supports different delimiters, for example both "+" and "-". As before, this implementation recognizes exactly one delimiter character per email address, and exactly one address extension per email address. * Advanced master.cf query/update support to access service attributes as "name = value" pairs. For example to turn off chroot on all services use "postconf -F '*/*/chroot = n'", and to change/add a "-o name=value" setting use "postconf -P smtp/inet/name = value". This was developed primarily to allow automated tools to manage Postfix systems without having to parse Postfix configuration files.
2014-02-09 06:34:13 +01:00
- *-DHAS_DB*) ;;
Update postfix package to 2.10.2. Here is brief changes. 2.10.2 * TLS Interoperability workaround: turn on SHA-2 digests by force. This improves interoperability with clients and servers that deploy SHA-2 digests without the required support for TLSv1.2-style digest negotiation. * TLS Performance workaround: the Postfix SMTP server TLS session cache had become ineffective because recent OpenSSL versions enable session tickets by default, resulting in a different ticket encryption key for each smtpd(8) process. The workaround turns off session tickets. Postfix 2.11 will enable session tickets properly. * TLS Interoperability workaround: Debian Exim versions before 4.80-3 may fail to communicate with Postfix and possibly other MTAs, with the following Exim SMTP client error message: TLS error on connection to server-name [server-address] (gnutls_handshake): The Diffie-Hellman prime sent by the server is not acceptable (not long enough) See the RELEASE_NOTES file for a Postfix SMTP server configuration workaround. * Bugfix (defect introduced: 1997): memory leak while forwarding mail with the local(8) delivery agent, in code that handles a cleanup(8) server error. 2.10.1 * Workaround: down-stream maintainers fail to install the new smtpd_relay_restrictions safety net, causing breakage that could have been avoided. We now hard-code the safety net instead. 2.10.0 * Separation of relay policy (with smtpd_relay_restrictions) from spam policy (with smtpd_{client, helo, sender, recipient}_restrictions), which makes accidental open relay configuration less likely. The default is backwards compatible. * HAproxy load-balancer support for postscreen(8) and smtpd(8). The nginx proxy was already supported by Postfix 2.9 smtpd(8), using XCLIENT commands. * Support for the TLSv1 and TLSv2 protocols, as well as support to turn them off if needed for inter-operability. * Laptop-friendly configuration. By default, Postfix now uses UNIX-domain sockets instead of FIFOs, and thus avoids MTIME file system updates on an idle mail system. * Revised postconf(1) command. The "-x" option expands $name in a parameter value (both main.cf and master.cf); the "-o name=value" option overrides a main.cf parameter setting; and postconf(1) now warns about a $name that has no name=value setting. * Sendmail-style "socketmap" lookup tables.
2013-09-30 17:21:15 +02:00
- *) if [ -f /usr/include/db.h ]
- then
- : we are all set
- elif [ -f /usr/include/db/db.h ]
- then
- CCARGS="$CCARGS -I/usr/include/db"
- else
- # No, we're not going to try db1 db2 db3 etc.
- # On a properly installed system, Postfix builds
- # by including <db.h> and by linking with -ldb
- echo "No <db.h> include file found." 1>&2
- echo "Install the appropriate db*-devel package first." 1>&2
- exit 1
- fi
- SYSLIBS="-ldb"
- ;;
- esac
for name in nsl resolv $GDBM_LIBS
do
for lib in /usr/lib64 /lib64 /usr/lib /lib
@@ -544,25 +512,6 @@ EOF
Update mail/postfix to 3.0.2. Database and regexp map functionality is now split into separate packages: - postfix-cdb - postfix-ldap - postfix-lmdb - postfix-mysql - postfix-pcre - postfix-pgsql - postfix-sqlite Upstream changelog follows. Postfix 3.0.2 ------------- No delta against 2.11.6. Postfix 3.0.1 ------------- - Build error when compiling the Postfix SMTP server with SASL support but no TLS support. - The DNS "resource record to text" converter, used for xxx_dns_reply_filter pattern matching, appended a '.' to TXT record resource values. - The postscreen(8) manpage specified an incorrect Postfix version number for the postscreen_dnsbl_timeout parameter. - The postfix-install script expanded macros in parameter values when trying to detect parameter overrides, causing unnecessary main.cf updates during "postfix start" etc. - Some low-level cleanup of UTF-8 string handling with no visible change in behavior (besides better performance). Postfix 3.0.0 ------------- - SMTPUTF8 support for internationalized domain names and address localparts as defined in RFC 6530 and related documents. - Support for Postfix dynamically-linked libraries and database plugins. - An OPT-IN safety net for the selective adoption of new Postfix default settings. If you do nothing, the old Postfix default settings *should* remain in effect (complain to your downstream maintainer if that is not the case). - Support for operations on multiple lookup tables. The pipemap:{map1,map2...} database type implements a pipeline of lookup tables where the result from one lookup table becomes a query for the next table; the unionmap:{map1,map2,...} database type sends the
2015-09-07 11:47:01 +02:00
: ${PLUGIN_LD="${CC-gcc} -shared"}
Update postfix package to 2.10.2. Here is brief changes. 2.10.2 * TLS Interoperability workaround: turn on SHA-2 digests by force. This improves interoperability with clients and servers that deploy SHA-2 digests without the required support for TLSv1.2-style digest negotiation. * TLS Performance workaround: the Postfix SMTP server TLS session cache had become ineffective because recent OpenSSL versions enable session tickets by default, resulting in a different ticket encryption key for each smtpd(8) process. The workaround turns off session tickets. Postfix 2.11 will enable session tickets properly. * TLS Interoperability workaround: Debian Exim versions before 4.80-3 may fail to communicate with Postfix and possibly other MTAs, with the following Exim SMTP client error message: TLS error on connection to server-name [server-address] (gnutls_handshake): The Diffie-Hellman prime sent by the server is not acceptable (not long enough) See the RELEASE_NOTES file for a Postfix SMTP server configuration workaround. * Bugfix (defect introduced: 1997): memory leak while forwarding mail with the local(8) delivery agent, in code that handles a cleanup(8) server error. 2.10.1 * Workaround: down-stream maintainers fail to install the new smtpd_relay_restrictions safety net, causing breakage that could have been avoided. We now hard-code the safety net instead. 2.10.0 * Separation of relay policy (with smtpd_relay_restrictions) from spam policy (with smtpd_{client, helo, sender, recipient}_restrictions), which makes accidental open relay configuration less likely. The default is backwards compatible. * HAproxy load-balancer support for postscreen(8) and smtpd(8). The nginx proxy was already supported by Postfix 2.9 smtpd(8), using XCLIENT commands. * Support for the TLSv1 and TLSv2 protocols, as well as support to turn them off if needed for inter-operability. * Laptop-friendly configuration. By default, Postfix now uses UNIX-domain sockets instead of FIFOs, and thus avoids MTIME file system updates on an idle mail system. * Revised postconf(1) command. The "-x" option expands $name in a parameter value (both main.cf and master.cf); the "-o name=value" option overrides a main.cf parameter setting; and postconf(1) now warns about a $name that has no name=value setting. * Sendmail-style "socketmap" lookup tables.
2013-09-30 17:21:15 +02:00
;;
Linux.[34].*) SYSTYPE=LINUX$RELEASE_MAJOR
Update postfix package to 2.10.2. Here is brief changes. 2.10.2 * TLS Interoperability workaround: turn on SHA-2 digests by force. This improves interoperability with clients and servers that deploy SHA-2 digests without the required support for TLSv1.2-style digest negotiation. * TLS Performance workaround: the Postfix SMTP server TLS session cache had become ineffective because recent OpenSSL versions enable session tickets by default, resulting in a different ticket encryption key for each smtpd(8) process. The workaround turns off session tickets. Postfix 2.11 will enable session tickets properly. * TLS Interoperability workaround: Debian Exim versions before 4.80-3 may fail to communicate with Postfix and possibly other MTAs, with the following Exim SMTP client error message: TLS error on connection to server-name [server-address] (gnutls_handshake): The Diffie-Hellman prime sent by the server is not acceptable (not long enough) See the RELEASE_NOTES file for a Postfix SMTP server configuration workaround. * Bugfix (defect introduced: 1997): memory leak while forwarding mail with the local(8) delivery agent, in code that handles a cleanup(8) server error. 2.10.1 * Workaround: down-stream maintainers fail to install the new smtpd_relay_restrictions safety net, causing breakage that could have been avoided. We now hard-code the safety net instead. 2.10.0 * Separation of relay policy (with smtpd_relay_restrictions) from spam policy (with smtpd_{client, helo, sender, recipient}_restrictions), which makes accidental open relay configuration less likely. The default is backwards compatible. * HAproxy load-balancer support for postscreen(8) and smtpd(8). The nginx proxy was already supported by Postfix 2.9 smtpd(8), using XCLIENT commands. * Support for the TLSv1 and TLSv2 protocols, as well as support to turn them off if needed for inter-operability. * Laptop-friendly configuration. By default, Postfix now uses UNIX-domain sockets instead of FIFOs, and thus avoids MTIME file system updates on an idle mail system. * Revised postconf(1) command. The "-x" option expands $name in a parameter value (both main.cf and master.cf); the "-o name=value" option overrides a main.cf parameter setting; and postconf(1) now warns about a $name that has no name=value setting. * Sendmail-style "socketmap" lookup tables.
2013-09-30 17:21:15 +02:00
- case "$CCARGS" in
- *-DNO_DB*) ;;
Update postfix to 2.11.0. Quote from release announce: The main changes in no particular order are: * Support for PKI-less TLS server certificate verification with DANE (DNS-based Authentication of Named Entities) where the CA public key or the server certificate is identified via DNSSEC lookup. This requires a DNS resolver that validates DNSSEC replies. The problem with conventional PKI is that there are literally hundreds of organizations world-wide that can provide a certificate in anyone's name. DANE limits trust to the people who control the target DNS zone and its parent zones. * Support for LMDB databases. Originally developed as part of OpenLDAP, LMDB is the first persistent Postfix database that can be shared among multiple writers such as postscreen daemons (Postfix already supported shared non-persistent memcached caches). Postfix currently requires LMDB version 0.9.11 or later. See LMDB_README for details and limitations. * A new postscreen_dnsbl_whitelist_threshold feature to allow clients to skip postscreen tests based on their DNSBL score. This can eliminate email delays due to "after 220 greeting" protocol tests, which otherwise require that a client reconnects before it can deliver mail. Some providers such as Google don't retry from the same IP address, and that can result in large email delivery delays. * The recipient_delimiter feature now supports different delimiters, for example both "+" and "-". As before, this implementation recognizes exactly one delimiter character per email address, and exactly one address extension per email address. * Advanced master.cf query/update support to access service attributes as "name = value" pairs. For example to turn off chroot on all services use "postconf -F '*/*/chroot = n'", and to change/add a "-o name=value" setting use "postconf -P smtp/inet/name = value". This was developed primarily to allow automated tools to manage Postfix systems without having to parse Postfix configuration files.
2014-02-09 06:34:13 +01:00
- *-DHAS_DB*) ;;
Update postfix package to 2.10.2. Here is brief changes. 2.10.2 * TLS Interoperability workaround: turn on SHA-2 digests by force. This improves interoperability with clients and servers that deploy SHA-2 digests without the required support for TLSv1.2-style digest negotiation. * TLS Performance workaround: the Postfix SMTP server TLS session cache had become ineffective because recent OpenSSL versions enable session tickets by default, resulting in a different ticket encryption key for each smtpd(8) process. The workaround turns off session tickets. Postfix 2.11 will enable session tickets properly. * TLS Interoperability workaround: Debian Exim versions before 4.80-3 may fail to communicate with Postfix and possibly other MTAs, with the following Exim SMTP client error message: TLS error on connection to server-name [server-address] (gnutls_handshake): The Diffie-Hellman prime sent by the server is not acceptable (not long enough) See the RELEASE_NOTES file for a Postfix SMTP server configuration workaround. * Bugfix (defect introduced: 1997): memory leak while forwarding mail with the local(8) delivery agent, in code that handles a cleanup(8) server error. 2.10.1 * Workaround: down-stream maintainers fail to install the new smtpd_relay_restrictions safety net, causing breakage that could have been avoided. We now hard-code the safety net instead. 2.10.0 * Separation of relay policy (with smtpd_relay_restrictions) from spam policy (with smtpd_{client, helo, sender, recipient}_restrictions), which makes accidental open relay configuration less likely. The default is backwards compatible. * HAproxy load-balancer support for postscreen(8) and smtpd(8). The nginx proxy was already supported by Postfix 2.9 smtpd(8), using XCLIENT commands. * Support for the TLSv1 and TLSv2 protocols, as well as support to turn them off if needed for inter-operability. * Laptop-friendly configuration. By default, Postfix now uses UNIX-domain sockets instead of FIFOs, and thus avoids MTIME file system updates on an idle mail system. * Revised postconf(1) command. The "-x" option expands $name in a parameter value (both main.cf and master.cf); the "-o name=value" option overrides a main.cf parameter setting; and postconf(1) now warns about a $name that has no name=value setting. * Sendmail-style "socketmap" lookup tables.
2013-09-30 17:21:15 +02:00
- *) if [ -f /usr/include/db.h ]
- then
- : we are all set
- elif [ -f /usr/include/db/db.h ]
- then
- CCARGS="$CCARGS -I/usr/include/db"
- else
- # On a properly installed system, Postfix builds
- # by including <db.h> and by linking with -ldb
- echo "No <db.h> include file found." 1>&2
- echo "Install the appropriate db*-devel package first." 1>&2
- exit 1
- fi
- SYSLIBS="-ldb"
- ;;
- esac
for name in nsl resolv
do
for lib in /usr/lib64 /lib64 /usr/lib /usr/lib/* /lib /lib/*
@@ -583,24 +532,6 @@ EOF
Update postfix package to 2.10.2. Here is brief changes. 2.10.2 * TLS Interoperability workaround: turn on SHA-2 digests by force. This improves interoperability with clients and servers that deploy SHA-2 digests without the required support for TLSv1.2-style digest negotiation. * TLS Performance workaround: the Postfix SMTP server TLS session cache had become ineffective because recent OpenSSL versions enable session tickets by default, resulting in a different ticket encryption key for each smtpd(8) process. The workaround turns off session tickets. Postfix 2.11 will enable session tickets properly. * TLS Interoperability workaround: Debian Exim versions before 4.80-3 may fail to communicate with Postfix and possibly other MTAs, with the following Exim SMTP client error message: TLS error on connection to server-name [server-address] (gnutls_handshake): The Diffie-Hellman prime sent by the server is not acceptable (not long enough) See the RELEASE_NOTES file for a Postfix SMTP server configuration workaround. * Bugfix (defect introduced: 1997): memory leak while forwarding mail with the local(8) delivery agent, in code that handles a cleanup(8) server error. 2.10.1 * Workaround: down-stream maintainers fail to install the new smtpd_relay_restrictions safety net, causing breakage that could have been avoided. We now hard-code the safety net instead. 2.10.0 * Separation of relay policy (with smtpd_relay_restrictions) from spam policy (with smtpd_{client, helo, sender, recipient}_restrictions), which makes accidental open relay configuration less likely. The default is backwards compatible. * HAproxy load-balancer support for postscreen(8) and smtpd(8). The nginx proxy was already supported by Postfix 2.9 smtpd(8), using XCLIENT commands. * Support for the TLSv1 and TLSv2 protocols, as well as support to turn them off if needed for inter-operability. * Laptop-friendly configuration. By default, Postfix now uses UNIX-domain sockets instead of FIFOs, and thus avoids MTIME file system updates on an idle mail system. * Revised postconf(1) command. The "-x" option expands $name in a parameter value (both main.cf and master.cf); the "-o name=value" option overrides a main.cf parameter setting; and postconf(1) now warns about a $name that has no name=value setting. * Sendmail-style "socketmap" lookup tables.
2013-09-30 17:21:15 +02:00
;;
GNU.0*|GNU/kFreeBSD.[567]*)
Update postfix to 2.11.0. Quote from release announce: The main changes in no particular order are: * Support for PKI-less TLS server certificate verification with DANE (DNS-based Authentication of Named Entities) where the CA public key or the server certificate is identified via DNSSEC lookup. This requires a DNS resolver that validates DNSSEC replies. The problem with conventional PKI is that there are literally hundreds of organizations world-wide that can provide a certificate in anyone's name. DANE limits trust to the people who control the target DNS zone and its parent zones. * Support for LMDB databases. Originally developed as part of OpenLDAP, LMDB is the first persistent Postfix database that can be shared among multiple writers such as postscreen daemons (Postfix already supported shared non-persistent memcached caches). Postfix currently requires LMDB version 0.9.11 or later. See LMDB_README for details and limitations. * A new postscreen_dnsbl_whitelist_threshold feature to allow clients to skip postscreen tests based on their DNSBL score. This can eliminate email delays due to "after 220 greeting" protocol tests, which otherwise require that a client reconnects before it can deliver mail. Some providers such as Google don't retry from the same IP address, and that can result in large email delivery delays. * The recipient_delimiter feature now supports different delimiters, for example both "+" and "-". As before, this implementation recognizes exactly one delimiter character per email address, and exactly one address extension per email address. * Advanced master.cf query/update support to access service attributes as "name = value" pairs. For example to turn off chroot on all services use "postconf -F '*/*/chroot = n'", and to change/add a "-o name=value" setting use "postconf -P smtp/inet/name = value". This was developed primarily to allow automated tools to manage Postfix systems without having to parse Postfix configuration files.
2014-02-09 06:34:13 +01:00
SYSTYPE=GNU0
Update postfix package to 2.10.2. Here is brief changes. 2.10.2 * TLS Interoperability workaround: turn on SHA-2 digests by force. This improves interoperability with clients and servers that deploy SHA-2 digests without the required support for TLSv1.2-style digest negotiation. * TLS Performance workaround: the Postfix SMTP server TLS session cache had become ineffective because recent OpenSSL versions enable session tickets by default, resulting in a different ticket encryption key for each smtpd(8) process. The workaround turns off session tickets. Postfix 2.11 will enable session tickets properly. * TLS Interoperability workaround: Debian Exim versions before 4.80-3 may fail to communicate with Postfix and possibly other MTAs, with the following Exim SMTP client error message: TLS error on connection to server-name [server-address] (gnutls_handshake): The Diffie-Hellman prime sent by the server is not acceptable (not long enough) See the RELEASE_NOTES file for a Postfix SMTP server configuration workaround. * Bugfix (defect introduced: 1997): memory leak while forwarding mail with the local(8) delivery agent, in code that handles a cleanup(8) server error. 2.10.1 * Workaround: down-stream maintainers fail to install the new smtpd_relay_restrictions safety net, causing breakage that could have been avoided. We now hard-code the safety net instead. 2.10.0 * Separation of relay policy (with smtpd_relay_restrictions) from spam policy (with smtpd_{client, helo, sender, recipient}_restrictions), which makes accidental open relay configuration less likely. The default is backwards compatible. * HAproxy load-balancer support for postscreen(8) and smtpd(8). The nginx proxy was already supported by Postfix 2.9 smtpd(8), using XCLIENT commands. * Support for the TLSv1 and TLSv2 protocols, as well as support to turn them off if needed for inter-operability. * Laptop-friendly configuration. By default, Postfix now uses UNIX-domain sockets instead of FIFOs, and thus avoids MTIME file system updates on an idle mail system. * Revised postconf(1) command. The "-x" option expands $name in a parameter value (both main.cf and master.cf); the "-o name=value" option overrides a main.cf parameter setting; and postconf(1) now warns about a $name that has no name=value setting. * Sendmail-style "socketmap" lookup tables.
2013-09-30 17:21:15 +02:00
- case "$CCARGS" in
- *-DNO_DB*) ;;
- *) if [ -f /usr/include/db.h ]
- then
- : we are all set
- elif [ -f /usr/include/db/db.h ]
- then
- CCARGS="$CCARGS -I/usr/include/db"
- else
- # On a properly installed system, Postfix builds
- # by including <db.h> and by linking with -ldb
- echo "No <db.h> include file found." 1>&2
- echo "Install the appropriate db*-devel package first." 1>&2
- exit 1
- fi
- SYSLIBS="-ldb"
- ;;
- esac
for name in nsl resolv
do
for lib in /usr/lib64 /lib64 /usr/lib /lib
@@ -631,26 +562,14 @@ EOF
HP-UX.A.09.*) SYSTYPE=HPUX9
SYSLIBS=-ldbm
Update mail/postfix to 3.2.0. - 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. - 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. - 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. - 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. - 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.
2017-04-24 22:11:40 +02:00
CCARGS="$CCARGS -DMISSING_USLEEP -DNO_SNPRINTF"
- if [ -f /usr/lib/libdb.a ]; then
- CCARGS="$CCARGS -DHAS_DB"
- SYSLIBS="$SYSLIBS -ldb"
- fi
;;
HP-UX.B.10.*) SYSTYPE=HPUX10
CCARGS="$CCARGS `nm /usr/lib/libc.a 2>/dev/null |
(grep usleep >/dev/null || echo '-DMISSING_USLEEP')`"
Update mail/postfix to 3.2.0. - 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. - 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. - 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. - 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. - 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.
2017-04-24 22:11:40 +02:00
CCARGS="$CCARGS -DNO_SNPRINTF"
- if [ -f /usr/lib/libdb.a ]; then
- CCARGS="$CCARGS -DHAS_DB"
- SYSLIBS=-ldb
- fi
;;
HP-UX.B.11.*) SYSTYPE=HPUX11
SYSLIBS=-lnsl
- if [ -f /usr/lib/libdb.a ]; then
- CCARGS="$CCARGS -DHAS_DB"
- SYSLIBS="$SYSLIBS -ldb"
- fi
;;
ReliantUNIX-?.5.43) SYSTYPE=ReliantUnix543
RANLIB=echo
@@ -692,12 +611,12 @@ ReliantUNIX-?.5.43) SYSTYPE=ReliantUnix5
esac
: ${SHLIB_CFLAGS=-fPIC}
: ${SHLIB_SUFFIX=.dylib}
- : ${SHLIB_LD='cc -shared -Wl,-flat_namespace -Wl,-undefined,dynamic_lookup -Wl,-install_name,@rpath/${LIB}'}
+ : ${SHLIB_LD='${CC} -shared -Wl,-flat_namespace -Wl,-undefined,dynamic_lookup -Wl,-install_name,@rpath/${LIB}'}
: ${SHLIB_RPATH='-Wl,-rpath,${SHLIB_DIR}'}
# In MacOS/X 10.11.x /bin/sh unsets DYLD_LIBRARY_PATH, so we
# have export it into postfix-install indirectly!
: ${SHLIB_ENV="DYLD_LIBRARY_PATH=`pwd`/lib SHLIB_ENV_VAR=DYLD_LIBRARY_PATH SHLIB_ENV_VAL=`pwd`/lib"}
- : ${PLUGIN_LD='cc -shared -Wl,-flat_namespace -Wl,-undefined,dynamic_lookup'}
+ : ${PLUGIN_LD='${CC} -shared -Wl,-flat_namespace -Wl,-undefined,dynamic_lookup'}
;;
dcosx.1*) SYSTYPE=DCOSX1
RANLIB=echo
@@ -778,8 +697,8 @@ esac
#
case "$CCARGS" in
Update mail/postfix to 3.2.0. - 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. - 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. - 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. - 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. - 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.
2017-04-24 22:11:40 +02:00
*-DNO_EAI*) CCARGS="$CCARGS "'-DDEF_SMTPUTF8_ENABLE=\"no\"';;
- *) icu_cppflags=`(icu-config --cppflags) 2>/dev/null` && {
- icu_ldflags=`(icu-config --ldflags) 2>/dev/null` && {
+ *) icu_cppflags=`(pkg-config --cflags icu-i18n) 2>/dev/null` && {
+ icu_ldflags=`(pkg-config --libs icu-i18n) 2>/dev/null` && {
trap 'rm -f makedefs.test makedefs.test.[co]' 1 2 3 15
cat >makedefs.test.c <<'EOF'
#include <unicode/uidna.h>