Prereq: "3.11.0" diff -ur --new-file /var/tmp/postfix-3.11.0/src/global/mail_version.h ./src/global/mail_version.h --- /var/tmp/postfix-3.11.0/src/global/mail_version.h 2026-03-05 10:59:44.000000000 -0500 +++ ./src/global/mail_version.h 2026-03-10 19:08:28.000000000 -0400 @@ -20,8 +20,8 @@ * Patches change both the patchlevel and the release date. Snapshots have no * patchlevel; they change the release date only. */ -#define MAIL_RELEASE_DATE "20260305" -#define MAIL_VERSION_NUMBER "3.11.0" +#define MAIL_RELEASE_DATE "20260310" +#define MAIL_VERSION_NUMBER "3.11.1" #ifdef SNAPSHOT #define MAIL_VERSION_DATE "-" MAIL_RELEASE_DATE diff -ur --new-file /var/tmp/postfix-3.11.0/HISTORY ./HISTORY --- /var/tmp/postfix-3.11.0/HISTORY 2026-03-05 10:18:00.000000000 -0500 +++ ./HISTORY 2026-03-10 19:17:51.000000000 -0400 @@ -30583,3 +30583,33 @@ master_service_disable=inet" + "postfix start" step, to locate settings that still need to be updated. File: proto/NON_BERKELEYDB_README.html. + +20260307 + + In NON_BERKELEYDB_README, add active tests using sendmail(1) + and telnet(1). File: proto/NON_BERKELEYDB_README.html. + +20260309 + + Bugfix (defect introduced: 20260219): alias_maps errors + when default_database_type was not set in main.cf. Fix by + Michael Tokarev. File: global/mail_params.c. + + Bugfix (defect introduced: Postfix 3.3): null pointer in + nbdb_reindexd(8) because the "service_name" value was not + propagated. Report by Michael Tokarev, fix by Wietse. Files: + global/mail_params.c, global/mail_params.h + + Cleanup: during Postfix start-up, avoid a spurious error + message from nbdb_reindexd(8), when non_bdb_migration_level + disables automatic re-indexing. File: conf/postfix-script. + +20260310 + + Bugfix (defect introduced: Postfix 3.0): buffer over-read + when Postfix is configured with an enhanced status code not + followed by other text. For example, "5.7.2" without text + after the three-number code, in an access(5) table, header + or body checks, or with "$rbl_code $rbl_text" in rbl_reply_maps + or default_rbl_reply. Problem reported by Kamil Frankowicz. + File: global/dsn_split.c. diff -ur --new-file /var/tmp/postfix-3.11.0/README_FILES/NON_BERKELEYDB_README ./README_FILES/NON_BERKELEYDB_README --- /var/tmp/postfix-3.11.0/README_FILES/NON_BERKELEYDB_README 2026-03-05 10:20:48.000000000 -0500 +++ ./README_FILES/NON_BERKELEYDB_README 2026-03-10 18:59:44.000000000 -0400 @@ -265,18 +265,20 @@ | source". | | | | | -| * Disable inbound network mail, and start Postfix. | +| * Disable inbound network mail, start Postfix, and send a test message | +| using the Postfix sendmail(1) command. | | | | | | # ppoossttccoonnff mmaasstteerr__sseerrvviiccee__ddiissaabbllee == iinneett | | # ppoossttffiixx ssttaarrtt | +| # sseennddmmaaiill --bbvv ppoossttmmaasstteerr | | | | * Watch the log for warnings about files that cannot be opened, find the | | configuration file that still uses "hash" or "btree", and repeat steps 1-| | 5 above. | | | -| * Enable inbound network mail, reload Postfix, and connect to an SMTP | -| network port. | +| * Enable inbound network mail, reload Postfix, and connect to the Postfix | +| SMTP network port. | | | | | | # ppoossttccoonnff --XX mmaasstteerr__sseerrvviiccee__ddiissaabbllee | @@ -334,7 +336,14 @@ | # ppoossttffiixx nnoonn--bbddbb eennaabbllee--rreeddiirreecctt | | | | | -|Start (or reload) Postfix. | +|Start (or reload) Postfix, and send a test message using the Postfix sendmail| +|(1) command. | +| | +| | +| | +| # ppoossttffiixx ssttaarrtt (or ppoossttffiixx rreellooaadd) | +| # sseennddmmaaiill --bbvv ppoossttmmaasstteerr | +| | | | |Scan the logging for failure to open database files. For each instance of | |"hash:/path/to/source" or "btree:/path/to/source" that requires manually | @@ -361,12 +370,14 @@ | source". | | | | | -|Resume inbound mail with: | +|Resume inbound mail, reload Postfix, and connect to the Postfix SMTP network | +|port: | | | | | | | | # ppoossttccoonnff --XX mmaasstteerr__sseerrvviiccee__ddiissaabbllee | | # ppoossttffiixx rreellooaadd | +| # tteellnneett hhoossttnnaammee 2255 | | | | | |This may reveal a few more problems. Once there are no more errors with | @@ -451,7 +462,14 @@ | # ppoossttffiixx nnoonn--bbddbb eennaabbllee--rreeiinnddeexx | | | | | -|Start (or reload) Postfix. | +|Start (or reload) Postfix, and send a test message using the Postfix sendmail| +|(1) command. | +| | +| | +| | +| # ppoossttffiixx ssttaarrtt (or ppoossttffiixx rreellooaadd) | +| # sseennddmmaaiill --bbvv ppoossttmmaasstteerr | +| | | | |The nbdb_reindexd(8) daemon will log when it successfully runs a postmap(1) | |or postalias(1) command. Examples, for a system with "default_database_type =| @@ -473,13 +491,14 @@ |see the section "Addressing errors with automatic indexed file generation" | |for the most likely errors that Postfix programs may log. | | | -|Once there are no more errors from Postfix programs, resume inbound mail | -|with: | +|Once there are no more errors from Postfix programs, resume inbound mail, | +|reload Postfix, and connect to the Postfix SMTP network port: | | | | | | | | # ppoossttccoonnff --XX mmaasstteerr__sseerrvviiccee__ddiissaabbllee | | # ppoossttffiixx rreellooaadd | +| # tteellnneett hhoossttnnaammee 2255 | | | | | |This may reveal a few more problems. Once there are no more errors from | diff -ur --new-file /var/tmp/postfix-3.11.0/conf/postfix-script ./conf/postfix-script --- /var/tmp/postfix-3.11.0/conf/postfix-script 2026-02-26 16:17:35.000000000 -0500 +++ ./conf/postfix-script 2026-03-10 18:57:57.000000000 -0400 @@ -311,6 +311,7 @@ # # To avoid this, craft a one-time stand-alone re-indexing request. test -f $config_directory/check-alias-maps-migration-done && exit 0 + test "x`$command_directory/postconf -h non_bdb_migration_level`" = xenable-reindex || exit 0 BACKUP_IFS="$IFS" for map in `$command_directory/postconf -hx alias_maps` do diff -ur --new-file /var/tmp/postfix-3.11.0/html/NON_BERKELEYDB_README.html ./html/NON_BERKELEYDB_README.html --- /var/tmp/postfix-3.11.0/html/NON_BERKELEYDB_README.html 2026-03-05 10:20:48.000000000 -0500 +++ ./html/NON_BERKELEYDB_README.html 2026-03-10 18:59:44.000000000 -0400 @@ -379,11 +379,13 @@ -
Disable inbound network mail, and start Postfix.
+Disable inbound network mail, start Postfix, and +send a test message using the Postfix sendmail(1) command.
# postconf master_service_disable = inet # postfix start +# sendmail -bv postmaster
Watch the log for @@ -392,7 +394,7 @@
Enable inbound network mail, reload Postfix, and connect -to an SMTP network port.
+to the Postfix SMTP network port.# postconf -X master_service_disable @@ -474,7 +476,15 @@-
Start (or reload) Postfix.
+Start (or reload) Postfix, and send a test message using the +Postfix sendmail(1) command.
+ +++# postfix start (or postfix reload) +# sendmail -bv postmaster ++
Scan the logging for failure to open database files. For each instance of @@ -507,12 +517,14 @@ -
Resume inbound mail with:
+Resume inbound mail, reload Postfix, and connect to the Postfix +SMTP network port:
@@ -621,7 +633,15 @@ -# postconf -X master_service_disable # postfix reload +# telnet hostname 25
Start (or reload) Postfix.
+Start (or reload) Postfix, and send a test message using the +Postfix sendmail(1) command.
+ +++# postfix start (or postfix reload) +# sendmail -bv postmaster ++
The nbdb_reindexd(8) daemon will log when it successfully runs @@ -649,12 +669,14 @@ errors that Postfix programs may log.
Once there are no more errors from Postfix programs, resume -inbound mail with:
+inbound mail, reload Postfix, and connect to the Postfix SMTP network +port:diff -ur --new-file /var/tmp/postfix-3.11.0/proto/NON_BERKELEYDB_README.html ./proto/NON_BERKELEYDB_README.html --- /var/tmp/postfix-3.11.0/proto/NON_BERKELEYDB_README.html 2026-03-05 10:18:00.000000000 -0500 +++ ./proto/NON_BERKELEYDB_README.html 2026-03-10 18:55:30.000000000 -0400 @@ -379,11 +379,13 @@ -# postconf -X master_service_disable # postfix reload +# telnet hostname 25
Disable inbound network mail, and start Postfix.
+Disable inbound network mail, start Postfix, and +send a test message using the Postfix sendmail(1) command.
# postconf master_service_disable = inet # postfix start +# sendmail -bv postmaster
Watch the log for @@ -392,7 +394,7 @@
Enable inbound network mail, reload Postfix, and connect -to an SMTP network port.
+to the Postfix SMTP network port.# postconf -X master_service_disable @@ -474,7 +476,15 @@-
Start (or reload) Postfix.
+Start (or reload) Postfix, and send a test message using the +Postfix sendmail(1) command.
+ +++# postfix start (or postfix reload) +# sendmail -bv postmaster ++
Scan the logging for failure to open database files. For each instance of @@ -507,12 +517,14 @@ -
Resume inbound mail with:
+Resume inbound mail, reload Postfix, and connect to the Postfix +SMTP network port:
@@ -621,7 +633,15 @@ -# postconf -X master_service_disable # postfix reload +# telnet hostname 25
Start (or reload) Postfix.
+Start (or reload) Postfix, and send a test message using the +Postfix sendmail(1) command.
+ +++# postfix start (or postfix reload) +# sendmail -bv postmaster ++
The nbdb_reindexd(8) daemon will log when it successfully runs @@ -649,12 +669,14 @@ errors that Postfix programs may log.
Once there are no more errors from Postfix programs, resume -inbound mail with:
+inbound mail, reload Postfix, and connect to the Postfix SMTP network +port:diff -ur --new-file /var/tmp/postfix-3.11.0/proto/stop ./proto/stop --- /var/tmp/postfix-3.11.0/proto/stop 2026-03-05 10:45:05.000000000 -0500 +++ ./proto/stop 2026-03-10 19:00:10.000000000 -0400 @@ -1712,3 +1712,5 @@ Fedor Vorobev BERKELEYDB +Frankowicz +Kamil diff -ur --new-file /var/tmp/postfix-3.11.0/src/global/dsn_util.c ./src/global/dsn_util.c --- /var/tmp/postfix-3.11.0/src/global/dsn_util.c 2006-01-07 20:28:37.000000000 -0500 +++ ./src/global/dsn_util.c 2026-03-10 19:00:10.000000000 -0400 @@ -154,7 +154,7 @@ if ((len = dsn_valid(cp)) > 0) { strncpy(dp->dsn.data, cp, len); dp->dsn.data[len] = 0; - cp += len + 1; + cp += len; } else if ((len = dsn_valid(def_dsn)) > 0) { strncpy(dp->dsn.data, def_dsn, len); dp->dsn.data[len] = 0; diff -ur --new-file /var/tmp/postfix-3.11.0/src/global/mail_params.c ./src/global/mail_params.c --- /var/tmp/postfix-3.11.0/src/global/mail_params.c 2026-03-02 15:28:43.000000000 -0500 +++ ./src/global/mail_params.c 2026-03-10 18:57:57.000000000 -0400 @@ -797,6 +797,7 @@ VAR_POSTLOG_SERVICE, DEF_POSTLOG_SERVICE, &var_postlog_service, 1, 0, VAR_DNSSEC_PROBE, DEF_DNSSEC_PROBE, &var_dnssec_probe, 0, 0, VAR_KNOWN_TCP_PORTS, DEF_KNOWN_TCP_PORTS, &var_known_tcp_ports, 0, 0, + VAR_SERVNAME, DEF_SERVNAME, &var_servname, 0, 0, 0, }; static const CONFIG_BOOL_TABLE first_bool_defaults[] = { @@ -839,10 +840,10 @@ VAR_PROXY_INTERFACES, DEF_PROXY_INTERFACES, &var_proxy_interfaces, 0, 0, VAR_DOUBLE_BOUNCE, DEF_DOUBLE_BOUNCE, &var_double_bounce_sender, 1, 0, VAR_DEFAULT_PRIVS, DEF_DEFAULT_PRIVS, &var_default_privs, 1, 0, - VAR_ALIAS_DB_MAP, DEF_ALIAS_DB_MAP, &var_alias_db_map, 0, 0, VAR_MAIL_RELEASE, DEF_MAIL_RELEASE, &var_mail_release, 1, 0, VAR_DB_TYPE, DEF_DB_TYPE, &var_db_type, 1, 0, VAR_CACHE_DB_TYPE, DEF_CACHE_DB_TYPE, &var_cache_db_type, 1, 0, + VAR_ALIAS_DB_MAP, DEF_ALIAS_DB_MAP, &var_alias_db_map, 0, 0, VAR_HASH_QUEUE_NAMES, DEF_HASH_QUEUE_NAMES, &var_hash_queue_names, 1, 0, VAR_RCPT_DELIM, DEF_RCPT_DELIM, &var_rcpt_delim, 0, 0, VAR_RELAY_DOMAINS, DEF_RELAY_DOMAINS, &var_relay_domains, 0, 0, diff -ur --new-file /var/tmp/postfix-3.11.0/src/global/mail_params.h ./src/global/mail_params.h --- /var/tmp/postfix-3.11.0/src/global/mail_params.h 2026-03-02 15:28:43.000000000 -0500 +++ ./src/global/mail_params.h 2026-03-10 18:57:57.000000000 -0400 @@ -2636,6 +2636,7 @@ extern char *var_procname; #define VAR_SERVNAME "service_name" +#define DEF_SERVNAME "amnesiac" extern char *var_servname; #define VAR_PID "process_id"# postconf -X master_service_disable # postfix reload +# telnet hostname 25