mirror of
https://github.com/vdukhovni/postfix
synced 2025-09-03 15:45:24 +00:00
postfix-3.2-20160925
This commit is contained in:
committed by
Viktor Dukhovni
parent
83e6e62831
commit
39826a67e9
@@ -22508,3 +22508,14 @@ Apologies for any names omitted.
|
|||||||
does not forward SASL login information to other Postfix
|
does not forward SASL login information to other Postfix
|
||||||
subsystems, and it does not receive SASL login information
|
subsystems, and it does not receive SASL login information
|
||||||
in XFORWARD commands. File/smtpd/smtpd.c.
|
in XFORWARD commands. File/smtpd/smtpd.c.
|
||||||
|
|
||||||
|
20160925
|
||||||
|
|
||||||
|
Bugfix (introduced: Postfix 2.11): changed the default MySQL
|
||||||
|
option_group value to "client" to enable the reading of
|
||||||
|
"client" option group settings in the MySQL option file.
|
||||||
|
Specify an empty option_group value to get backwards-compatible
|
||||||
|
behavior. This fixes a "not found" problem with Postfix
|
||||||
|
queries that contain UTF8-encoded non-ASCII text. Based
|
||||||
|
on a fix by John Fawcett. Files: global/dict_mysql.c,
|
||||||
|
proto/mysql_table.
|
||||||
|
@@ -94,8 +94,19 @@ where_field = alias
|
|||||||
# Don't forget the leading "AND"!
|
# Don't forget the leading "AND"!
|
||||||
additional_conditions = AND status = 'paid'
|
additional_conditions = AND status = 'paid'
|
||||||
|
|
||||||
|
# For Postfix 2.11 .. 3.1. This is the default as of Postfix 3.2.
|
||||||
|
option_group = client
|
||||||
|
|
||||||
AAddddiittiioonnaall nnootteess
|
AAddddiittiioonnaall nnootteess
|
||||||
|
|
||||||
|
Postfix 3.2 and later read [[cclliieenntt]] option group settings by default. To
|
||||||
|
disable this, specify no ooppttiioonn__ffiillee and specify "ooppttiioonn__ggrroouupp ==" (i.e. an
|
||||||
|
empty value).
|
||||||
|
|
||||||
|
Postfix 3.1 and earlier don't read [[cclliieenntt]] option group settings unless a non-
|
||||||
|
empty ooppttiioonn__ffiillee or ooppttiioonn__ggrroouupp value are specified. To enable this, specify,
|
||||||
|
for example "ooppttiioonn__ggrroouupp == cclliieenntt".
|
||||||
|
|
||||||
The MySQL configuration interface setup allows for multiple mysql databases:
|
The MySQL configuration interface setup allows for multiple mysql databases:
|
||||||
you can use one for a virtual table, one for an access table, and one for an
|
you can use one for a virtual table, one for an access table, and one for an
|
||||||
aliases table if you want.
|
aliases table if you want.
|
||||||
|
@@ -16,6 +16,16 @@ specifies the release date of a stable release or snapshot release.
|
|||||||
If you upgrade from Postfix 3.0 or earlier, read RELEASE_NOTES-3.1
|
If you upgrade from Postfix 3.0 or earlier, read RELEASE_NOTES-3.1
|
||||||
before proceeding.
|
before proceeding.
|
||||||
|
|
||||||
|
Incompatible changes with snapshot 20160925
|
||||||
|
===========================================
|
||||||
|
|
||||||
|
In the Postfix MySQL database client, the default option_group value
|
||||||
|
has changed to "client", to enable reading of "client" option group
|
||||||
|
settings in the MySQL options file. This fixes a "not found" problem
|
||||||
|
with Postfix queries that contain UTF8-encoded non-ASCII text.
|
||||||
|
Specify an empty option_group value (option_group =) to get
|
||||||
|
backwards-compatible behavior.
|
||||||
|
|
||||||
Major changes with snapshot 20160625
|
Major changes with snapshot 20160625
|
||||||
====================================
|
====================================
|
||||||
|
|
||||||
|
@@ -130,10 +130,22 @@ table = mxaliases
|
|||||||
where_field = alias
|
where_field = alias
|
||||||
# Don't forget the leading "AND"!
|
# Don't forget the leading "AND"!
|
||||||
additional_conditions = AND status = 'paid'
|
additional_conditions = AND status = 'paid'
|
||||||
|
|
||||||
|
# For Postfix 2.11 .. 3.1. This is the default as of Postfix 3.2.
|
||||||
|
option_group = client
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
<h2>Additional notes</h2>
|
<h2>Additional notes</h2>
|
||||||
|
|
||||||
|
<p> Postfix 3.2 and later read <b>[client]</b> option group settings
|
||||||
|
by default. To disable this, specify no <b>option_file</b> and
|
||||||
|
specify "<b>option_group =</b>" (i.e. an empty value). </p>
|
||||||
|
|
||||||
|
<p> Postfix 3.1 and earlier don't read <b>[client]</b> option group
|
||||||
|
settings unless a non-empty <b>option_file</b> or <b>option_group</b>
|
||||||
|
value are specified. To enable this, specify, for example
|
||||||
|
"<b>option_group = client</b>". </p>
|
||||||
|
|
||||||
<p> The MySQL configuration interface setup allows for multiple
|
<p> The MySQL configuration interface setup allows for multiple
|
||||||
mysql databases: you can use one for a virtual table, one for an
|
mysql databases: you can use one for a virtual table, one for an
|
||||||
access table, and one for an aliases table if you want. </p>
|
access table, and one for an aliases table if you want. </p>
|
||||||
|
@@ -225,12 +225,24 @@ MYSQL_TABLE(5) MYSQL_TABLE(5)
|
|||||||
|
|
||||||
<b>option_file</b>
|
<b>option_file</b>
|
||||||
Read options from the given file instead of the default my.cnf
|
Read options from the given file instead of the default my.cnf
|
||||||
location.
|
location. This reads options from the <b>[client]</b> option group,
|
||||||
|
optionally followed by options from the group given with
|
||||||
|
<b>option_group</b>.
|
||||||
|
|
||||||
This parameter is available with Postfix 2.11 and later.
|
This parameter is available with Postfix 2.11 and later.
|
||||||
|
|
||||||
<b>option_group</b>
|
<b>option_group (Postfix</b> ><b>=3.2: client; Postfix</b> <<b>=3.1: empty)</b>
|
||||||
Read options from the given group.
|
Read options from the given group of the mysql options file,
|
||||||
|
after reading options from the <b>[client]</b> group.
|
||||||
|
|
||||||
|
Postfix 3.2 and later read <b>[client]</b> option group settings by
|
||||||
|
default. To disable this specify no <b>option_file</b> and specify
|
||||||
|
"<b>option_group =</b>" (i.e. an empty value).
|
||||||
|
|
||||||
|
Postfix 3.1 and earlier don't read <b>[client]</b> option group set-
|
||||||
|
tings unless a non-empty <b>option_file</b> or <b>option_group</b> value are
|
||||||
|
specified. To enable this, specify, for example, "<b>option_group =</b>
|
||||||
|
<b>client</b>".
|
||||||
|
|
||||||
This parameter is available with Postfix 2.11 and later.
|
This parameter is available with Postfix 2.11 and later.
|
||||||
|
|
||||||
|
@@ -258,11 +258,23 @@ limit to 1 ensures that lookups do not return multiple
|
|||||||
values.
|
values.
|
||||||
.IP "\fBoption_file\fR"
|
.IP "\fBoption_file\fR"
|
||||||
Read options from the given file instead of the default my.cnf
|
Read options from the given file instead of the default my.cnf
|
||||||
location.
|
location. This reads options from the \fB[client]\fR option
|
||||||
|
group, optionally followed by options from the group given
|
||||||
|
with \fBoption_group\fR.
|
||||||
.sp
|
.sp
|
||||||
This parameter is available with Postfix 2.11 and later.
|
This parameter is available with Postfix 2.11 and later.
|
||||||
.IP "\fBoption_group\fR"
|
.IP "\fBoption_group (Postfix >=3.2: client; Postfix <=3.1: empty)\fR"
|
||||||
Read options from the given group.
|
Read options from the given group of the mysql options file,
|
||||||
|
after reading options from the \fB[client]\fR group.
|
||||||
|
.sp
|
||||||
|
Postfix 3.2 and later read \fB[client]\fR option group
|
||||||
|
settings by default. To disable this specify no \fBoption_file\fR
|
||||||
|
and specify "\fBoption_group =\fR" (i.e. an empty value).
|
||||||
|
.sp
|
||||||
|
Postfix 3.1 and earlier don't read \fB[client]\fR option
|
||||||
|
group settings unless a non\-empty \fBoption_file\fR or
|
||||||
|
\fBoption_group\fR value are specified. To enable this,
|
||||||
|
specify, for example, "\fBoption_group = client\fR".
|
||||||
.sp
|
.sp
|
||||||
This parameter is available with Postfix 2.11 and later.
|
This parameter is available with Postfix 2.11 and later.
|
||||||
.IP "\fBtls_cert_file\fR"
|
.IP "\fBtls_cert_file\fR"
|
||||||
|
@@ -130,10 +130,22 @@ table = mxaliases
|
|||||||
where_field = alias
|
where_field = alias
|
||||||
# Don't forget the leading "AND"!
|
# Don't forget the leading "AND"!
|
||||||
additional_conditions = AND status = 'paid'
|
additional_conditions = AND status = 'paid'
|
||||||
|
|
||||||
|
# For Postfix 2.11 .. 3.1. This is the default as of Postfix 3.2.
|
||||||
|
option_group = client
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
<h2>Additional notes</h2>
|
<h2>Additional notes</h2>
|
||||||
|
|
||||||
|
<p> Postfix 3.2 and later read <b>[client]</b> option group settings
|
||||||
|
by default. To disable this, specify no <b>option_file</b> and
|
||||||
|
specify "<b>option_group =</b>" (i.e. an empty value). </p>
|
||||||
|
|
||||||
|
<p> Postfix 3.1 and earlier don't read <b>[client]</b> option group
|
||||||
|
settings unless a non-empty <b>option_file</b> or <b>option_group</b>
|
||||||
|
value are specified. To enable this, specify, for example
|
||||||
|
"<b>option_group = client</b>". </p>
|
||||||
|
|
||||||
<p> The MySQL configuration interface setup allows for multiple
|
<p> The MySQL configuration interface setup allows for multiple
|
||||||
mysql databases: you can use one for a virtual table, one for an
|
mysql databases: you can use one for a virtual table, one for an
|
||||||
access table, and one for an aliases table if you want. </p>
|
access table, and one for an aliases table if you want. </p>
|
||||||
|
@@ -246,11 +246,23 @@
|
|||||||
# values.
|
# values.
|
||||||
# .IP "\fBoption_file\fR"
|
# .IP "\fBoption_file\fR"
|
||||||
# Read options from the given file instead of the default my.cnf
|
# Read options from the given file instead of the default my.cnf
|
||||||
# location.
|
# location. This reads options from the \fB[client]\fR option
|
||||||
|
# group, optionally followed by options from the group given
|
||||||
|
# with \fBoption_group\fR.
|
||||||
# .sp
|
# .sp
|
||||||
# This parameter is available with Postfix 2.11 and later.
|
# This parameter is available with Postfix 2.11 and later.
|
||||||
# .IP "\fBoption_group\fR"
|
# .IP "\fBoption_group (Postfix >=3.2: client; Postfix <=3.1: empty)\fR"
|
||||||
# Read options from the given group.
|
# Read options from the given group of the mysql options file,
|
||||||
|
# after reading options from the \fB[client]\fR group.
|
||||||
|
# .sp
|
||||||
|
# Postfix 3.2 and later read \fB[client]\fR option group
|
||||||
|
# settings by default. To disable this specify no \fBoption_file\fR
|
||||||
|
# and specify "\fBoption_group =\fR" (i.e. an empty value).
|
||||||
|
# .sp
|
||||||
|
# Postfix 3.1 and earlier don't read \fB[client]\fR option
|
||||||
|
# group settings unless a non-empty \fBoption_file\fR or
|
||||||
|
# \fBoption_group\fR value are specified. To enable this,
|
||||||
|
# specify, for example, "\fBoption_group = client\fR".
|
||||||
# .sp
|
# .sp
|
||||||
# This parameter is available with Postfix 2.11 and later.
|
# This parameter is available with Postfix 2.11 and later.
|
||||||
# .IP "\fBtls_cert_file\fR"
|
# .IP "\fBtls_cert_file\fR"
|
||||||
|
@@ -565,7 +565,7 @@ static void plmysql_connect_single(DICT_MYSQL *dict_mysql, HOST *host)
|
|||||||
msg_fatal("dict_mysql: insufficient memory");
|
msg_fatal("dict_mysql: insufficient memory");
|
||||||
if (dict_mysql->option_file)
|
if (dict_mysql->option_file)
|
||||||
mysql_options(host->db, MYSQL_READ_DEFAULT_FILE, dict_mysql->option_file);
|
mysql_options(host->db, MYSQL_READ_DEFAULT_FILE, dict_mysql->option_file);
|
||||||
if (dict_mysql->option_group)
|
if (dict_mysql->option_group && dict_mysql->option_group[0])
|
||||||
mysql_options(host->db, MYSQL_READ_DEFAULT_GROUP, dict_mysql->option_group);
|
mysql_options(host->db, MYSQL_READ_DEFAULT_GROUP, dict_mysql->option_group);
|
||||||
#if defined(MYSQL_VERSION_ID) && MYSQL_VERSION_ID >= 40000
|
#if defined(MYSQL_VERSION_ID) && MYSQL_VERSION_ID >= 40000
|
||||||
if (dict_mysql->tls_key_file || dict_mysql->tls_cert_file ||
|
if (dict_mysql->tls_key_file || dict_mysql->tls_cert_file ||
|
||||||
@@ -634,7 +634,7 @@ static void mysql_parse_config(DICT_MYSQL *dict_mysql, const char *mysqlcf)
|
|||||||
dict_mysql->dbname = cfg_get_str(p, "dbname", "", 1, 0);
|
dict_mysql->dbname = cfg_get_str(p, "dbname", "", 1, 0);
|
||||||
dict_mysql->result_format = cfg_get_str(p, "result_format", "%s", 1, 0);
|
dict_mysql->result_format = cfg_get_str(p, "result_format", "%s", 1, 0);
|
||||||
dict_mysql->option_file = cfg_get_str(p, "option_file", NULL, 0, 0);
|
dict_mysql->option_file = cfg_get_str(p, "option_file", NULL, 0, 0);
|
||||||
dict_mysql->option_group = cfg_get_str(p, "option_group", NULL, 0, 0);
|
dict_mysql->option_group = cfg_get_str(p, "option_group", "client", 0, 0);
|
||||||
#if defined(MYSQL_VERSION_ID) && MYSQL_VERSION_ID >= 40000
|
#if defined(MYSQL_VERSION_ID) && MYSQL_VERSION_ID >= 40000
|
||||||
dict_mysql->tls_key_file = cfg_get_str(p, "tls_key_file", NULL, 0, 0);
|
dict_mysql->tls_key_file = cfg_get_str(p, "tls_key_file", NULL, 0, 0);
|
||||||
dict_mysql->tls_cert_file = cfg_get_str(p, "tls_cert_file", NULL, 0, 0);
|
dict_mysql->tls_cert_file = cfg_get_str(p, "tls_cert_file", NULL, 0, 0);
|
||||||
|
@@ -16,11 +16,11 @@
|
|||||||
* snapshots are called a.b-yyyymmdd, where a=major release number, b=minor
|
* snapshots are called a.b-yyyymmdd, where a=major release number, b=minor
|
||||||
* release number, c=patchlevel, and yyyymmdd is the release date:
|
* release number, c=patchlevel, and yyyymmdd is the release date:
|
||||||
* yyyy=year, mm=month, dd=day.
|
* yyyy=year, mm=month, dd=day.
|
||||||
*
|
*
|
||||||
* Patches change both the patchlevel and the release date. Snapshots have no
|
* Patches change both the patchlevel and the release date. Snapshots have no
|
||||||
* patchlevel; they change the release date only.
|
* patchlevel; they change the release date only.
|
||||||
*/
|
*/
|
||||||
#define MAIL_RELEASE_DATE "20160924"
|
#define MAIL_RELEASE_DATE "20160925"
|
||||||
#define MAIL_VERSION_NUMBER "3.2"
|
#define MAIL_VERSION_NUMBER "3.2"
|
||||||
|
|
||||||
#ifdef SNAPSHOT
|
#ifdef SNAPSHOT
|
||||||
|
Reference in New Issue
Block a user