diff --git a/postfix/HISTORY b/postfix/HISTORY index 8a8d3cf51..c57b542c8 100644 --- a/postfix/HISTORY +++ b/postfix/HISTORY @@ -28723,19 +28723,60 @@ Apologies for any names omitted. to use SMTPUTF8, and therefore can avoid incompatibility with sites that do not support SMTPUTF8. + The encoded result looks like "=?charset?Q?gibberish?=" for + quoted-printable encoding, or "=?charset?B?gibberish?=" for + base64 encoding. Postfix uses quoted-printable for a full + name that is short or mostly ASCII, and uses base64 otherwise. + The new parameter "full_name_encoding_charset" (default: "utf-8") specifies the character set of the full name in the Postfix sendmail "-F" option, in the Postfix sendmail "NAME" environment variable, or in the GECOS field of the - UNIX password database. - - The encoded result looks like "=?charset?Q?gibberish?= for - quoted-printable encoding, or "=?charset?B?gibberish?= for - base64 encoding. Postfix uses quoted-printable for a full - name that is short or mostly ASCII, and uses base64 otherwise. + UNIX password database. The parameter value is also part + of the encoded full name, and informs a Mail User Agent how + to display the decoded gibberish. Files: mantools/postlink, proto/postconf.proto, cleanup/cleanup.c, cleanup/cleanup_init.c, cleanup/cleanup_message.c, global/ascii_header_text.c, global/ascii_header_text.h, global/mail_params.h, global/rfc2047_code.c, global/rfc2047_code.h, util/clean_ascii_cntrl_space.c, util/clean_ascii_cntrl_space.h. + +20250106 + + Cleanup: the Postfix Milter implementation now logs the + reason for a quarantine request. If a quarantine action is + requested by a Milter application, Postfix will log the + reason given by the application. If the quarantine action + is requested with the "milter_default_action" parameter + setting or with a per-Milter "default_action" property, + Postfix will log "default_action". Files: smtpd/smtp_milter.c, + cleanup/cleanup_milter.c, milter/milter8.c, milter/test-milter.c. + + Cleanup: suppress repeated logging of a Milter "quarantine", + "discard", or "shutdown" request. Files: cleanup/cleanup_milter.c, + smtpd/smtpd.c. + + Documentation: cleanup_replace_stray_cr_lf is disabled + with "receive_override_options = no_header_body_checks". + File: proto/postconf.proto. + +20250107 + + Re-worded the documentation for RFC 2047 full name encoding. + Files: HISTORY, RELEASE_NOTES, proto/postconf.proto. + + Cleanup: eliminated a bogus warning "unexpected SMFIC_UNKNOWN + response" when a Milter default action is "quarantine", the + milter is unavailable, and a remote SMTP client sends a + command that is unknown or known-but-disabled. File: + smtpd/smtpd.c. + + Cleanup: the maximum netstring reply size is now configurable + with the socketmap_max_reply_size configuration parameter. + Code by Christian Roessner. Files: util/dict_sockmap.[hc], + global/mail_params.[hc], proto/postconf.proto, + proto/socketmap_table. + + Cleanup: the netstring client sets or clears errno to improve + error messages from its callers. File: util/netstring.c. diff --git a/postfix/RELEASE_NOTES b/postfix/RELEASE_NOTES index 0a09f458c..9316a4acf 100644 --- a/postfix/RELEASE_NOTES +++ b/postfix/RELEASE_NOTES @@ -26,6 +26,26 @@ now also distributed with the more recent Eclipse Public License license of their choice. Those who are more comfortable with the IPL can continue with that license. +[Incompat 20250106] + +The logging of the Milter 'quarantine' action has changed. Instead +of logging "milter triggers HOLD action", it logs the reason given +by a Milter application, or "default_action" if a Milter application +was unavailable and the milter_default_action parameter or Milter +"default_action" property specifies "quarantine". + +[Feature 20250106] + +The Postfix Milter implementation now logs the reason for a +'quarantine' action, instead of "milter triggers HOLD action". + +- If the quarantine action was requested by a Milter application, + Postfix will log the reason given by the application. + +- If the quarantine action was requested with the "milter_default_action" + parameter setting or with a Milter "default_action" property, + Postfix will log "default_action". + [Feature 20250105] Support for automatic RFC 2047 encoding of non-ASCII "full name" @@ -33,6 +53,11 @@ information in Postfix-generated From: message headers. Encoding non-ASCII full names can avoid the need to use SMTPUTF8, and therefore can avoid incompatibility with sites that do not support SMTPUTF8. +The encoded result looks like "=?charset?Q?gibberish?=: for +quoted-printable encoding, or "=?charset?B?gibberish?=" for base64 +encoding. Postfix uses quoted-printable for a full name that is +short or mostly ASCII, and uses base64 otherwise. + Background: when a message without a From: header is submitted with the Postfix sendmail(1) command, Postfix will add a From: header and will try to use the sender's full name specified with the Postfix sendmail(1) @@ -43,7 +68,8 @@ This introduces a new configuration parameter "full_name_encoding_charset" (default: utf8) which specifies the character set of the full name information in the Postfix sendmail(1) "-F" option or "NAME" environment variable, or in the GECOS field in the UNIX password -database. +database. The parameter value is also part of the encoded full name, +and informs a Mail User Agent how to display the decoded gibberish. [Incompat 20250105] diff --git a/postfix/WISHLIST b/postfix/WISHLIST index ec31c7bea..64e2ad51f 100644 --- a/postfix/WISHLIST +++ b/postfix/WISHLIST @@ -2,7 +2,8 @@ Wish list: Things to do before the stable release: - Make the spawn_command fix conditional on compatibility_level. + For the stable releases, make the spawn_command fix conditional + on compatibility_level. make pre-release-check, HTML validator check. @@ -18,7 +19,10 @@ Wish list: relay_recipient_maps empty should default to 'no valid recipients'. Subject to compatibility level. - Make a reason available for messages placed on 'hold'. + The Milter 'quarantine' action should be reported with a + call-back function, instead of setting the Milter default + reply. However, we still need the existing 'reply' based + channel to support "milter_default_action = quarantine". In pipe_command() and spawn_command(), the child process should call initgroups() to corrrectly the access rights diff --git a/postfix/html/postconf.5.html b/postfix/html/postconf.5.html index 679f04df1..b673b46c4 100644 --- a/postfix/html/postconf.5.html +++ b/postfix/html/postconf.5.html @@ -1520,6 +1520,9 @@ signature validation by later mail system will not depend on how that mail system handles those stray characters in an implementation-dependent manner.
+Note: this feature is disabled with "receive_override_options = +no_header_body_checks".
+This feature is available in Postfix ≥ 3.9, 3.8.5, 3.7.10, 3.6.14, and 3.5.24.
@@ -3963,10 +3966,13 @@ in the UNIX password database. In the latter case, Postfix will replace the "&" character with the login name, with a lowercase ASCII first character converted to uppercase. -NOTE: Postfix does not convert between character sets; it simply -encodes the raw bytes in a full name as printable ASCII gibberish. -The full_name_encoding_charset value specifies how a mail reader -program should display the decoded gibberish.
+NOTE: Postfix does not convert between character sets. The +full_name_encoding_charset parameter specifies the character set +of the full name in the Postfix sendmail "-F" option, in the Postfix +sendmail "NAME" environment variable, or in the GECOS field of the +UNIX password database. The parameter value is also part of the +encoded full name, and informs a Mail User Agent how to display the +decoded gibberish.
Specify a valid character set name such as "utf-8" or "iso-8859-1 (specify the latter for full names that use the Latin1 encoding). @@ -19602,6 +19608,17 @@ built to support these protocols.
This feature is available in Postfix 3.0 and later.
+ + +The maximum allowed reply size from a socketmap server, not +including the netstring encapsulation.
+ +This feature is available in Postfix ≥ 3.10.
+ +