]> git.ipfire.org Git - thirdparty/postfix.git/commitdiff
postfix-3.4-20190207-nonprod 20190207-nonprod
authorWietse Venema <wietse@porcupine.org>
Thu, 7 Feb 2019 05:00:00 +0000 (00:00 -0500)
committerViktor Dukhovni <postfix-users@dukhovni.org>
Fri, 8 Feb 2019 16:49:13 +0000 (11:49 -0500)
145 files changed:
postfix/.indent.pro
postfix/README_FILES/AAAREADME
postfix/README_FILES/DEBUG_README
postfix/README_FILES/MAILLOG_README [new file with mode: 0644]
postfix/RELEASE_NOTES
postfix/WISHLIST
postfix/html/DEBUG_README.html
postfix/html/MAILLOG_README.html [new file with mode: 0644]
postfix/html/anvil.8.html
postfix/html/bounce.8.html
postfix/html/cleanup.8.html
postfix/html/defer.8.html
postfix/html/discard.8.html
postfix/html/dnsblog.8.html
postfix/html/error.8.html
postfix/html/flush.8.html
postfix/html/index.html
postfix/html/lmtp.8.html
postfix/html/local.8.html
postfix/html/mailq.1.html
postfix/html/master.8.html
postfix/html/newaliases.1.html
postfix/html/oqmgr.8.html
postfix/html/pickup.8.html
postfix/html/pipe.8.html
postfix/html/postalias.1.html
postfix/html/postconf.5.html
postfix/html/postdrop.1.html
postfix/html/postlog.1.html
postfix/html/postlogd.8.html
postfix/html/postmap.1.html
postfix/html/postqueue.1.html
postfix/html/postscreen.8.html
postfix/html/postsuper.1.html
postfix/html/proxymap.8.html
postfix/html/qmgr.8.html
postfix/html/qmqpd.8.html
postfix/html/scache.8.html
postfix/html/sendmail.1.html
postfix/html/showq.8.html
postfix/html/smtp.8.html
postfix/html/smtpd.8.html
postfix/html/spawn.8.html
postfix/html/tlsmgr.8.html
postfix/html/tlsproxy.8.html
postfix/html/trace.8.html
postfix/html/trivial-rewrite.8.html
postfix/html/verify.8.html
postfix/html/virtual.8.html
postfix/makedefs
postfix/man/man1/postalias.1
postfix/man/man1/postdrop.1
postfix/man/man1/postlog.1
postfix/man/man1/postmap.1
postfix/man/man1/postqueue.1
postfix/man/man1/postsuper.1
postfix/man/man1/sendmail.1
postfix/man/man5/postconf.5
postfix/man/man8/anvil.8
postfix/man/man8/bounce.8
postfix/man/man8/cleanup.8
postfix/man/man8/discard.8
postfix/man/man8/dnsblog.8
postfix/man/man8/error.8
postfix/man/man8/flush.8
postfix/man/man8/local.8
postfix/man/man8/master.8
postfix/man/man8/oqmgr.8
postfix/man/man8/pickup.8
postfix/man/man8/pipe.8
postfix/man/man8/postlogd.8
postfix/man/man8/postscreen.8
postfix/man/man8/proxymap.8
postfix/man/man8/qmgr.8
postfix/man/man8/qmqpd.8
postfix/man/man8/scache.8
postfix/man/man8/showq.8
postfix/man/man8/smtp.8
postfix/man/man8/smtpd.8
postfix/man/man8/spawn.8
postfix/man/man8/tlsmgr.8
postfix/man/man8/tlsproxy.8
postfix/man/man8/trivial-rewrite.8
postfix/man/man8/verify.8
postfix/man/man8/virtual.8
postfix/proto/DEBUG_README.html
postfix/proto/MAILLOG_README.html [new file with mode: 0644]
postfix/proto/Makefile.in
postfix/proto/postconf.proto
postfix/src/anvil/anvil.c
postfix/src/bounce/bounce.c
postfix/src/cleanup/cleanup.c
postfix/src/cleanup/cleanup_api.c
postfix/src/cleanup/cleanup_init.c
postfix/src/discard/discard.c
postfix/src/dnsblog/dnsblog.c
postfix/src/error/error.c
postfix/src/flush/flush.c
postfix/src/global/mail_params.h
postfix/src/global/mail_version.h
postfix/src/local/local.c
postfix/src/master/dgram_server.c
postfix/src/master/event_server.c
postfix/src/master/master.c
postfix/src/master/multi_server.c
postfix/src/master/single_server.c
postfix/src/master/trigger_server.c
postfix/src/oqmgr/qmgr.c
postfix/src/pickup/pickup.c
postfix/src/pipe/pipe.c
postfix/src/postalias/postalias.c
postfix/src/postdrop/postdrop.c
postfix/src/postlog/postlog.c
postfix/src/postlogd/postlogd.c
postfix/src/postmap/postmap.c
postfix/src/postqueue/postqueue.c
postfix/src/postscreen/postscreen.c
postfix/src/postsuper/postsuper.c
postfix/src/posttls-finger/posttls-finger.c
postfix/src/proxymap/proxymap.c
postfix/src/qmgr/qmgr.c
postfix/src/qmqpd/qmqpd.c
postfix/src/scache/scache.c
postfix/src/sendmail/sendmail.c
postfix/src/showq/showq.c
postfix/src/smtp/smtp.c
postfix/src/smtp/smtp_proto.c
postfix/src/smtpd/smtpd.c
postfix/src/spawn/spawn.c
postfix/src/tls/Makefile.in
postfix/src/tls/tls_proxy.h
postfix/src/tls/tls_proxy_clnt.c
postfix/src/tls/tls_proxy_params.c [new file with mode: 0644]
postfix/src/tls/tls_proxy_params_print.c [new file with mode: 0644]
postfix/src/tls/tls_proxy_params_scan.c [new file with mode: 0644]
postfix/src/tlsmgr/tlsmgr.c
postfix/src/tlsproxy/Makefile.in
postfix/src/tlsproxy/tlsproxy.c
postfix/src/tlsproxy/tlsproxy.h
postfix/src/tlsproxy/tlsproxy_state.c
postfix/src/trivial-rewrite/resolve.c
postfix/src/trivial-rewrite/rewrite.c
postfix/src/trivial-rewrite/trivial-rewrite.c
postfix/src/verify/verify.c
postfix/src/virtual/virtual.c

index 7e977406ba34ca2865b27a006ca8f92bda957613..4ed7d00e28eb7bed2280a2b42b13d48c241ca2c7 100644 (file)
@@ -20,6 +20,7 @@
 -TBH_TABLE
 -TBINATTR
 -TBINATTR_INFO
+-Tbind_props
 -TBINHASH
 -TBINHASH_INFO
 -TBIO
 -TBOUNCE_TIME_PARAMETER
 -TCFG_PARSER
 -TCIDR_MATCH
+-Tcipher_probe_t
 -TCLEANUP_REGION
--TCLEANUP_STATE
 -TCLEANUP_STAT_DETAIL
+-TCLEANUP_STATE
 -TCLIENT_LIST
 -TCLNT_STREAM
 -TCONFIG_BOOL_FN_TABLE
 -TCRYPTO_EX_DATA
 -TCTABLE
 -TCTABLE_ENTRY
+-Td2i_X509_t
+-Tdane_digest
 -TDB_COMMON_CTX
--TDELIVERED_HDR_INFO
 -TDELIVER_ATTR
+-TDELIVERED_HDR_INFO
 -TDELIVER_REQUEST
 -TDELTA_TIME
 -TDICT
 -TEVP_PKEY
 -TEXPAND_ATTR
 -TFILE
+-Tfilter_ctx
 -TFORWARD_INFO
+-Tgeneral_name_stack_t
 -THBC_ACTION_CALL_BACKS
 -THBC_CALL_BACKS
 -THBC_CHECKS
 -THOST
 -THTABLE
 -THTABLE_INFO
+-Tiana_digest
 -TINET_ADDR_LIST
 -TINET_PROTO_INFO
 -TINSTANCE
 -TINST_SELECTION
 -TINT32_TYPE
--TINTV
 -TINT_TABLE
+-TINTV
 -TJMP_BUF_WRAPPER
 -TLDAP
--TLDAPMessage
 -TLDAP_CONN
+-TLDAPMessage
 -TLIB_DP
 -TLIB_FN
 -TLMTP_ATTR
 -TMAC_EXP_OP_INFO
 -TMAC_HEAD
 -TMAC_PARSE
+-TMAI_HOSTADDR_STR
+-TMAI_HOSTNAME_STR
 -TMAIL_ADDR_MAP_TEST
 -TMAIL_PRINT
 -TMAIL_SCAN
 -TMAIL_STREAM
 -TMAIL_VERSION
--TMAI_HOSTADDR_STR
--TMAI_HOSTNAME_STR
 -TMAI_SERVNAME_STR
 -TMAI_SERVPORT_STR
 -TMAPS
 -TMDB_val
 -TMILTER
 -TMILTER8
--TMILTERS
 -TMILTER_MACROS
 -TMILTER_MSG_CONTEXT
+-TMILTERS
 -TMIME_ENCODING
 -TMIME_INFO
 -TMIME_STACK
 -TNAME_CODE
 -TNAME_MASK
 -TNBBIO
+-Toff_t
 -TOPTIONS
 -TPCF_DBMS_INFO
 -TPCF_EVAL_CTX
 -TPCF_SERVICE_PATTERN
 -TPCF_STRING_NV
 -TPEER_NAME
+-Tpem_load_state_t
 -TPGSQL_NAME
 -TPICKUP_INFO
 -TPIPE_ATTR
 -TPIPE_STATE
 -TPLMYSQL
 -TPLPGSQL
--TPOSTMAP_KEY_STATE
 -TPOST_MAIL_FCLOSE_STATE
 -TPOST_MAIL_STATE
+-TPOSTMAP_KEY_STATE
 -TPRIVATE_STR_TABLE
 -TPSC_CALL_BACK_ENTRY
 -TPSC_CLIENT_INFO
 -TRECIPIENT
 -TRECIPIENT_LIST
 -TREC_TYPE_NAME
+-Tregex_t
+-Tregmatch_t
+-TRES_CONTEXT
 -TRESOLVE_REPLY
 -TRESPONSE
 -TREST_TABLE
--TRES_CONTEXT
 -TRWR_CONTEXT
+-Tsasl_conn_t
+-Tsasl_secret_t
 -TSCACHE
 -TSCACHE_CLNT
 -TSCACHE_MULTI
 -TSCAN_INFO
 -TSCAN_OBJ
 -TSESSION
+-Tsfsistat
 -TSHARED_PATH
+-Tsigset_t
 -TSINGLE_SERVER
 -TSINK_COMMAND
 -TSINK_STATE
+-Tsize_t
 -TSLMDB
 -TSMFICTX
+-TSM_STATE
+-TSMTP_ADDR
+-TSMTP_CMD
 -TSMTPD_CMD
 -TSMTPD_DEFER
 -TSMTPD_ENDPT_LOOKUP_INFO
 -TSMTPD_STATE
 -TSMTPD_TOKEN
 -TSMTPD_XFORWARD_ATTR
--TSMTP_ADDR
--TSMTP_CMD
 -TSMTP_ITERATOR
 -TSMTP_RESP
 -TSMTP_SASL_AUTH_CACHE
 -TSMTP_TLS_POLICY
 -TSMTP_TLS_SESS
 -TSMTP_TLS_SITE_POLICY
--TSM_STATE
+-Tsockaddr
 -TSOCKADDR_SIZE
 -TSPAWN_ATTR
+-Tssize_t
 -TSSL
+-Tssl_cipher_stack_t
+-Tssl_comp_stack_t
 -TSSL_CTX
 -TSSL_SESSION
 -TSTATE
 -TSTRING_LIST
 -TSTRING_TABLE
 -TSYS_EXITS_DETAIL
--TTLSMGR_SCACHE
--TTLSP_STATE
+-Ttime_t
+-Ttlsa_filter
 -TTLS_APPL_STATE
 -TTLS_CERTS
 -TTLS_CLIENT_INIT_PROPS
 -TTLS_CLIENT_START_PROPS
+-TTLScontext_t
 -TTLS_DANE
+-TTLSMGR_SCACHE
+-TTLS_PARAMS
 -TTLS_PKEYS
 -TTLS_PRNG_SEED_INFO
 -TTLS_PRNG_SRC
+-TTLSP_STATE
 -TTLS_ROLE
 -TTLS_SCACHE
 -TTLS_SCACHE_ENTRY
 -TTLS_TLSA
 -TTLS_USAGE
 -TTLS_VINFO
--TTLScontext_t
 -TTOK822
 -TTRANSPORT_INFO
 -TTRIGGER_SERVER
 -TWATCHDOG
 -TWATCH_FD
 -TX509
--TX509V3_CTX
 -TX509_EXTENSION
 -TX509_NAME
+-Tx509_stack_t
 -TX509_STORE_CTX
+-TX509V3_CTX
 -TXSASL_CLIENT
 -TXSASL_CLIENT_CREATE_ARGS
 -TXSASL_CLIENT_IMPL
 -TXSASL_SERVER_CREATE_ARGS
 -TXSASL_SERVER_IMPL
 -TXSASL_SERVER_IMPL_INFO
--Tbind_props
--Tcipher_probe_t
--Td2i_X509_t
--Tdane_digest
--Tfilter_ctx
--Tgeneral_name_stack_t
--Tiana_digest
--Toff_t
--Tpem_load_state_t
--Tregex_t
--Tregmatch_t
--Tsasl_conn_t
--Tsasl_secret_t
--Tsfsistat
--Tsigset_t
--Tsize_t
--Tsockaddr
--Tssize_t
--Tssl_cipher_stack_t
--Tssl_comp_stack_t
--Ttime_t
--Ttlsa_filter
--Tx509_stack_t
index 7d72787cb3e7f1bffceb097539703b1091f26e0c..07bd21ea1bd3666cfe8303b5ded320ff36345038 100644 (file)
@@ -13,6 +13,7 @@ G\bGe\ben\bne\ber\bra\bal\bl c\bco\bon\bnf\bfi\big\bgu\bur\bra\bat\bti\bio\bon\bn
   * FORWARD_SECRECY_README: TLS Forward Secrecy
   * IPV6_README: IP Version 6 Support
   * SMTPUTF8_README: SMTPUTF8 Support
+  * MAILLOG_README: Postfix logging to file or stdout
   * COMPATIBILITY_README: Backwards-Compatibility Safety Net
   * INSTALL: Installation from source code
 
index 589036fa01715d3e7d744de920fe3a66ffd1ef6a..a277d96636abc046e1d628a590cfef6b51a90c7e 100644 (file)
@@ -33,9 +33,15 @@ follows:
 
 L\bLo\boo\bok\bk f\bfo\bor\br o\bob\bbv\bvi\bio\bou\bus\bs s\bsi\big\bgn\bns\bs o\bof\bf t\btr\bro\bou\bub\bbl\ble\be
 
-Postfix logs all failed and successful deliveries to a logfile. The file is
-usually called /var/log/maillog or /var/log/mail; the exact pathname is defined
-in the /etc/syslog.conf file.
+Postfix logs all failed and successful deliveries to a logfile.
+
+  * When Postfix uses syslog logging (the default), the file is usually called
+    /var/log/maillog, /var/log/mail, or something similar; the exact pathname
+    is configured in a file called /etc/syslog.conf, /etc/rsyslog.conf, or
+    something similar.
+
+  * When Postfix uses its own logging system (see MAILLOG_README), the location
+    of the logfile is configured with the Postfix maillog_file parameter.
 
 When Postfix does not receive or deliver mail, the first order of business is
 to look for errors that prevent Postfix from working properly:
diff --git a/postfix/README_FILES/MAILLOG_README b/postfix/README_FILES/MAILLOG_README
new file mode 100644 (file)
index 0000000..5184425
--- /dev/null
@@ -0,0 +1,113 @@
+P\bPo\bos\bst\btf\bfi\bix\bx l\blo\bog\bgg\bgi\bin\bng\bg t\bto\bo f\bfi\bil\ble\be o\bor\br s\bst\btd\bdo\bou\but\bt
+
+-------------------------------------------------------------------------------
+
+O\bOv\bve\ber\brv\bvi\bie\bew\bw
+
+Postfix supports it own logging system as an alternative to syslog (which
+remains the default). This is available with Postfix version 3.4 or later.
+
+Topics covered in this document:
+
+  * Configuring logging to file
+  * Configuring logging to stdout
+  * Rotating logs
+  * Limitations
+
+C\bCo\bon\bnf\bfi\big\bgu\bur\bri\bin\bng\bg l\blo\bog\bgg\bgi\bin\bng\bg t\bto\bo f\bfi\bil\ble\be
+
+Logging to file solves a usability problem for MacOS, and eliminates multiple
+problems for systemd-based systems.
+
+ 1. Add the following line to master.cf if not already present (note: there
+    must be no whitespace at the start of the line):
+
+        postlog   unix-dgram n  -       n       -       1       postlogd
+
+    Note: the service type "u\bun\bni\bix\bx-\b-d\bdg\bgr\bra\bam\bm" was introduced with Postfix 3.4. Remove
+    the above line before backing out to an older Postfix version.
+
+ 2. Configure Postfix to write logging, to, for example, /var/log/postfix.log.
+    See also the "Logfile rotation" section below for logfile management.
+
+        # postfix stop
+        # postconf maillog_file=/var/log/postfix.log
+        # postfix start
+
+    By default, the logfile name must start with "/var" or "/dev/stdout" (the
+    list of allowed prefixes is configured with the maillog_file_prefixes
+    parameter). This safety mechanism limits the damage from a single
+    configuration mistake.
+
+C\bCo\bon\bnf\bfi\big\bgu\bur\bri\bin\bng\bg l\blo\bog\bgg\bgi\bin\bng\bg t\bto\bo s\bst\btd\bdo\bou\but\bt
+
+Logging to stdout is useful when Postfix runs in a container, as it eliminates
+a syslogd dependency.
+
+ 1. Add the following line to master.cf if not already present (note: there
+    must be no whitespace at the start of the line):
+
+        postlog   unix-dgram n  -       n       -       1       postlogd
+
+    Note: the service type "u\bun\bni\bix\bx-\b-d\bdg\bgr\bra\bam\bm" was introduced with Postfix 3.4. Remove
+    the above line before backing out to an older Postfix version.
+
+ 2. Configure main.cf with "maillog_file = /dev/stdout".
+
+ 3. Start Postfix with "p\bpo\bos\bst\btf\bfi\bix\bx s\bst\bta\bar\brt\bt-\b-f\bfg\bg".
+
+R\bRo\bot\bta\bat\bti\bin\bng\bg l\blo\bog\bgs\bs
+
+The command "p\bpo\bos\bst\btf\bfi\bix\bx l\blo\bog\bgr\bro\bot\bta\bat\bte\be" may be run by hand or by a cronjob. It logs all
+errors, and reports errors to stderr if run from a terminal. This command
+implements the following steps:
+
+  * Rename the current logfile by appending a suffix that contains the date and
+    time. This suffix is configured with the maillog_file_rotate_suffix
+    parameter (default: %Y%M%d-%H%M%S).
+
+  * Reload Postfix so that postlogd(8) immediately closes the old logfile.
+
+  * After a brief pause, compress the old logfile. The compression program is
+    configured with the maillog_file_compressor parameter (default: gzip).
+
+Notes:
+
+  * This command will not rotate a logfile with pathname under the /dev
+    directory, such as /dev/stdout.
+
+  * This command does not (yet) remove old logfiles.
+
+L\bLi\bim\bmi\bit\bta\bat\bti\bio\bon\bns\bs
+
+Background:
+
+  * Postfix consists of a number of daemon programs, and non-daemon programs
+    some of which are used for local mail submission, and some for Postfix
+    management.
+
+  * Logging to Postfix logfile or stdout requires the Postfix postlogd(8)
+    service. This ensures that simultaneous logging from different programs
+    will not get mixed up.
+
+  * All Postfix programs can log to syslog, but not all programs have
+    sufficient privileges to use the Postfix logging service, and many non-
+    daemon programs must not log to stdout as that would corrupt their output.
+
+Limitations:
+
+  * Non-daemon Postfix programs will log errors to syslogd(8) before they have
+    processed command-line options and main.cf parameters.
+
+  * If Postfix is down, the non-daemon programs postfix(1), postsuper(1),
+    postmulti(1), and postlog(1), will log directly to $maillog_file. These
+    programs expect to run with root privileges, for example during Postfix
+    start-up, reload, or shutdown.
+
+  * Other non-daemon Postfix programs will never write directly to
+    $maillog_file (also, logging to stdout would interfere with the operation
+    of some of these programs). These programs can log to postlogd(8) if they
+    are run by the super-user, or if their executable file has set-gid
+    permission. Do not set this permission on programs other than postdrop(1)
+    and postqueue(1).
+
index f73ddcb9baa97df4d6c4cb2c118c9ae419bed0f3..5037b316f136bb4b9addbf884a467aa7ea625ef9 100644 (file)
@@ -28,16 +28,15 @@ comfortable with the IPL can continue with that license.
 Incompatible changes with snapshot 20190126-nonprod
 ====================================================
 
-This introduces a new master.cf service type 'unix-dgram' that is
-used by the new postlogd(8) daemon. This type is not supported by
-older Postfix versions. Before backing out to an older version,
-edit the master.cf file and remove the postlog entry.
+This introduces a new master.cf service 'postlog' with type
+'unix-dgram' that is used by the new postlogd(8) daemon. The
+'unix-dgram' service type is not supported by older Postfix versions.
+Before backing out to an older version, edit the master.cf file and
+remove the postlog entry.
 
 Major changes with snapshot 20190126-nonprod
 ============================================
 
-[TODO: move most of this text to MAILLOG_README file]
-
 Support for logging to file or stdout, instead of using syslog.
 
 - Logging to file solves a usability problem for MacOS, and
@@ -46,69 +45,7 @@ Support for logging to file or stdout, instead of using syslog.
 - Logging to stdout is useful when Postfix runs in a container, as
   it eliminates a syslogd dependency.
 
-To enable Postfix logging to file or stdout:
---------------------------------------------
-
-Add the following line to master.cf if not already present (note:
-there must be no whitespace at the start of the line):
-    postlog   unix-dgram n  -       n       -       1       postlogd
-
-To write logs to Postfix logfile (see below for logfile rotation): 
-    # postfix stop
-    # postconf maillog_file=/var/log/postfix.log
-    # postfix start
-
-To write logs to stdout, typically while Postfix runs in a container:
-    # postconf maillog_file=/dev/stdout
-    # postfix start-fg
-
-The maillog_file parameter must contain one of the prefixes that
-are specified with the maillog_file_prefixes parameter (default:
-/var, /dev/stdout). This limits the damage from a single configuration
-mistake.
-
-To rotate a Postfix logfile with a daily cronjob:
--------------------------------------------------
-
-The command "postfix logrotate" renames the logfile by appending a
-suffix that contains the date and time, reloads Postfix so that it
-closes the old logfile, and after a brief pause compresses the old
-logfile. This command will not rotate the log if it specifies a
-pathname under the /dev directory, such as /dev/stdout.
-
-The command "postfix logrotate" does not (yet) remove old logfiles.
-
-Configuration parameters: 
-- maillog_file_compressor (gzip)
-- maillog_file_rotate_suffix (%Y%M%d-%H%M%S)
-
-See the postconf(5) manpage for detailed descriptions.
-
-Limitations of logging to Postfix logfile or stdout:
-----------------------------------------------------
-
-Background:
-
-- Logging to Postfix logfile or stdout requires the Postfix postlogd(8)
-  service. This program ensures that simultaneous logging from
-  different programs will not get mixed up.
-
-Limitations:
-
-- Non-daemon Postfix programs may log to syslogd(8) before they
-  have processed command-line options and main.cf parameters.
-
-- If Postfix is down, the non-daemon programs postfix(1), postsuper(1),
-  postmulti(1), and postlog(1), will log directly to $maillog_file.
-  These programs expect to run with root privileges, for example
-  during Postfix start-up, reload, or shutdown.
-
-- Other non-daemon Postfix programs will never write directly to
-  $maillog_file (also, logging to stdout would interfere with the
-  operation of some of these programs). These programs can log to
-  postlogd(8) if they are run by the super-user, or if their
-  executable file has set-gid permission. Do not set this permision
-  on programs other than postdrop(1) and postqueue(1).
+See MAILLOG_README for configuration examples and logfile rotation.
 
 Incompatible changes with snapshot 20190106
 ===========================================
@@ -120,14 +57,24 @@ Major changes with snapshot 20190106
 ====================================
 
 SNI support in the Postfix SMTP server, the Postfix SMTP client,
-and in the tlsproxy daemon (both server and client roles).
+and in the tlsproxy daemon (both server and client roles). See the
+postconf(5) documentation for the new tls_server_sni_maps and
+smtp_tls_servername parameters.
 
-Support for files that combine multiple (key, certificate, trust
+Support for files that contain multiple (key, certificate, trust
 chain) instances. This was required to implement server-side SNI
 table lookups, but it also eliminates the need for separate cert/key
 files for RSA, DSA, Elliptic Curve, and so on. The file format is
-documented in TLS_README sections [TODO] and in the postconf
-documentation for parameters [TODO].
+documented in the TLS_README sections "Server-side certificate and
+private key configuration" and "Client-side certificate and private
+key configuration", and in the postconf(5) documentation for the
+parameters smtp_tls_chain_files, smtpd_tls_chain_files,
+tlsproxy_client_chain_files, and tlsproxy_tls_chain_files.
+
+Note: the command "postfix tls" does not yet support the new
+consolidated certificate chain format.  If you switch to the new
+format, you'll need to manage your keys and certificates directly,
+rather than via postfix-tls(1).
 
 Major changes with snapshot 20180826
 ====================================
index 8d486fab0c6c7061a5b5ee0cff28b7d3c9cf3c8e..a8a3f1e3357bf4cfd071c006794be6a13238206d 100644 (file)
@@ -1,6 +1,11 @@
 Wish list:
 
-       Add maillog_file to postfix(1) exports?
+       In tlsproxy, include parameter names in the diffs between
+       expected and client properties. This requires a function
+       tls_proxy_client_init_with_names_to_string().
+
+       make tls_pre_jail_init() safe by design for use in programs
+       that implement both clients and servers.
 
        postfix rotate-log command: mv postfix.log postfix.log.$(date
        +%Y%M%d-%H%M%S) to avoid data loss if called repeatedly.
index 30a06285a98098adc50709345733a78559aac329..f0dea38d0a05bbc7fff9d02d31244302c629650b 100644 (file)
@@ -71,9 +71,20 @@ debugger</a>
 
 <h2><a name="logging">Look for obvious signs of trouble</a></h2>
 
-<p> Postfix logs all failed and successful deliveries to a logfile.
-The file is usually called /var/log/maillog or /var/log/mail; the
-exact pathname is defined in the /etc/syslog.conf file. </p>
+<p> Postfix logs all failed and successful deliveries to a logfile. </p>
+
+<ul>
+
+<li> <p> When Postfix uses syslog logging (the default), the file
+is usually called /var/log/maillog, /var/log/mail, or something
+similar; the exact pathname is configured in a file called
+/etc/syslog.conf, /etc/rsyslog.conf, or something similar. </p>
+
+<li> <p> When Postfix uses its own logging system (see <a href="MAILLOG_README.html">MAILLOG_README</a>),
+the location of the logfile is configured with the Postfix <a href="postconf.5.html#maillog_file">maillog_file</a>
+parameter. </p>
+
+</ul>
 
 <p> When Postfix does not receive or deliver mail, the first order
 of business is to look for errors that prevent Postfix from working
diff --git a/postfix/html/MAILLOG_README.html b/postfix/html/MAILLOG_README.html
new file mode 100644 (file)
index 0000000..b1f9702
--- /dev/null
@@ -0,0 +1,183 @@
+<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
+        "http://www.w3.org/TR/html4/loose.dtd">
+
+<html>
+
+<head>
+
+<title>Postfix logging to file or stdout</title>
+
+<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
+
+</head>
+
+<body>
+
+<h1><img src="postfix-logo.jpg" width="203" height="98" ALT="">Postfix
+logging to file or stdout</h1>
+
+<hr>
+
+<h2>Overview </h2>
+
+<p> Postfix supports it own logging system as an alternative to
+syslog (which remains the default). This is available with Postfix
+version 3.4 or later. </p>
+
+<p> Topics covered in this document: </p>
+
+<ul>
+
+<li><a href="#log-to-file">Configuring logging to file</a>
+
+<li><a href="#log-to-stdout">Configuring logging to stdout</a>
+
+<li><a href="#logrotate">Rotating logs </a>
+
+<li><a href="#limitations">Limitations</a>
+
+</ul>
+
+<h2> <a name="log-to-file"> Configuring logging to file </a> </h2>
+
+<p> Logging to file solves a usability problem for MacOS, and
+eliminates multiple problems for systemd-based systems. </p>
+
+<ol>
+
+<li> <p> Add the following line to <a href="master.5.html">master.cf</a> if not already present
+(note: there must be no whitespace at the start of the line): </p>
+
+<blockquote>
+<pre>
+postlog   unix-dgram n  -       n       -       1       postlogd
+</pre>
+</blockquote>
+
+<p> Note: the service type "<b>unix-dgram</b>" was introduced with 
+Postfix 3.4. Remove the above line before backing out to an older
+Postfix version. </p>
+
+<li> <p> Configure Postfix to write logging, to, for example,
+/var/log/postfix.log. See also the "<a href="#logrotate">Logfile
+rotation</a>" section below for logfile management. </p>
+
+<blockquote>
+<pre>
+# postfix stop
+# postconf <a href="postconf.5.html#maillog_file">maillog_file</a>=/var/log/postfix.log
+# postfix start
+</pre>
+</blockquote>
+
+<p> By default, the logfile name must start with "/var" or "/dev/stdout"
+(the list of allowed prefixes is configured with the <a href="postconf.5.html#maillog_file_prefixes">maillog_file_prefixes</a>
+parameter). This safety mechanism limits the damage from a single
+configuration mistake. </p>
+
+</ol>
+
+<h2> <a name="log-to-stdout"> Configuring logging to stdout </a> </h2>
+
+<p> Logging to stdout is useful when Postfix runs in a container,
+as it eliminates a syslogd dependency. </p>
+
+<ol>
+
+<li> <p> Add the following line to <a href="master.5.html">master.cf</a> if not already present (note:
+there must be no whitespace at the start of the line): </p>
+
+<blockquote>
+<pre>
+postlog   unix-dgram n  -       n       -       1       postlogd
+</pre>
+</blockquote>
+
+<p> Note: the service type "<b>unix-dgram</b>" was introduced with 
+Postfix 3.4. Remove the above line before backing out to an older
+Postfix version. </p>
+
+<li> <p> Configure <a href="postconf.5.html">main.cf</a> with "<a href="postconf.5.html#maillog_file">maillog_file</a> = /dev/stdout". </p> 
+
+<li> <p> Start Postfix with "<b>postfix start-fg</b>". </p>
+
+</ol>
+
+<h2> <a name="logrotate"> Rotating logs </a> </h2>
+
+<p> The command "<b>postfix logrotate</b>" may be run by hand or
+by a cronjob. It logs all errors, and reports errors to stderr if
+run from a terminal. This command implements the following steps:
+</p>
+
+<ul>
+
+<li> <p> Rename the current logfile by appending a suffix that
+contains the date and time. This suffix is configured with the
+<a href="postconf.5.html#maillog_file_rotate_suffix">maillog_file_rotate_suffix</a> parameter (default: %Y%M%d-%H%M%S). </p>
+
+<li> <p> Reload Postfix so that <a href="postlogd.8.html">postlogd(8)</a> immediately closes the
+old logfile. </p>
+
+<li> <p> After a brief pause, compress the old logfile. The compression
+program is configured with the <a href="postconf.5.html#maillog_file_compressor">maillog_file_compressor</a> parameter
+(default: gzip). </p>
+
+</ul>
+
+<p> Notes: </p>
+
+<ul>
+
+<li> <p> This command will not rotate a logfile with pathname under
+the /dev directory, such as /dev/stdout. </p>
+
+<li> <p> This command does not (yet) remove old logfiles. </p>
+
+</ul>
+
+<h2> <a name="limitations">Limitations</a> </h2>
+
+<p> Background: </p>
+
+<ul>
+
+<li> <p> Postfix consists of a number of daemon programs, and
+non-daemon programs some of which are used for local mail submission,
+and some for Postfix management.
+
+<li> <p> Logging to Postfix logfile or stdout requires the Postfix
+<a href="postlogd.8.html">postlogd(8)</a> service. This ensures that simultaneous logging from
+different programs will not get mixed up. </p>
+
+<li> <p> All Postfix programs can log to syslog, but not all programs
+have sufficient privileges to use the Postfix logging service, and
+many non-daemon programs must not log to stdout as that would corrupt
+their output. </p>
+
+</ul>
+
+<p> Limitations: </p>
+
+<ul>
+
+<li> <p> Non-daemon Postfix programs will log errors to syslogd(8)
+before they have processed command-line options and <a href="postconf.5.html">main.cf</a> parameters.
+
+<li> <p> If Postfix is down, the non-daemon programs <a href="postfix.1.html">postfix(1)</a>,
+<a href="postsuper.1.html">postsuper(1)</a>, <a href="postmulti.1.html">postmulti(1)</a>, and <a href="postlog.1.html">postlog(1)</a>, will log directly to
+$<a href="postconf.5.html#maillog_file">maillog_file</a>. These programs expect to run with root privileges,
+for example during Postfix start-up, reload, or shutdown.
+
+<li> <p> Other non-daemon Postfix programs will never write directly
+to $<a href="postconf.5.html#maillog_file">maillog_file</a> (also, logging to stdout would interfere with the
+operation of some of these programs). These programs can log to
+<a href="postlogd.8.html">postlogd(8)</a> if they are run by the super-user, or if their executable
+file has set-gid permission. Do not set this permission on programs
+other than <a href="postdrop.1.html">postdrop(1)</a> and <a href="postqueue.1.html">postqueue(1)</a>.
+
+</ul>
+
+</body>
+
+</html>
index d7092449d1d011a1b9d80967ac7764973282f347..c4cdc4caa0d9bef0cca028b377be25171b3ab631 100644 (file)
@@ -134,7 +134,7 @@ ANVIL(8)                                                              ANVIL(8)
        is kept.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
        Upon  exit, and every <b><a href="postconf.5.html#anvil_status_update_time">anvil_status_update_time</a></b> seconds, the server logs
        the maximal count and rate values  measured,  together  with  (service,
index 9f6a7a8b402e320bbf6334ef5f0a903181161b19..67801211a20c30d3f602b1dd00a77c96a2c0080d 100644 (file)
@@ -51,7 +51,7 @@ BOUNCE(8)                                                            BOUNCE(8)
        <a href="http://tools.ietf.org/html/rfc6533">RFC 6533</a> (Internationalized Delivery Status Notifications)
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>CONFIGURATION PARAMETERS</b>
        Changes to <a href="postconf.5.html"><b>main.cf</b></a> are picked up automatically, as <a href="bounce.8.html"><b>bounce</b>(8)</a>  processes
@@ -164,6 +164,7 @@ BOUNCE(8)                                                            BOUNCE(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index 8d766b26eb93c6d22d66542eb2a086a2c9bda829..866fe890b01b288c7afd88ba2d5299d2e057e43b 100644 (file)
@@ -61,7 +61,7 @@ CLEANUP(8)                                                          CLEANUP(8)
        <a href="http://tools.ietf.org/html/rfc5322">RFC 5322</a> (Internet Message Format)
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>BUGS</b>
        Table-driven  rewriting  rules make it hard to express <b>if then else</b> and
@@ -310,7 +310,7 @@ CLEANUP(8)                                                          CLEANUP(8)
 
        <b><a href="postconf.5.html#masquerade_exceptions">masquerade_exceptions</a> (empty)</b>
               Optional  list  of  user names that are not subjected to address
-              masquerading,  even  when  their   address   matches   $<a href="postconf.5.html#masquerade_domains">masquer</a>-
+              masquerading,  even  when  their   addresses   match   $<a href="postconf.5.html#masquerade_domains">masquer</a>-
               <a href="postconf.5.html#masquerade_domains">ade_domains</a>.
 
        <b><a href="postconf.5.html#propagate_unmatched_extensions">propagate_unmatched_extensions</a> (canonical, virtual)</b>
@@ -503,6 +503,7 @@ CLEANUP(8)                                                          CLEANUP(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 9f6a7a8b402e320bbf6334ef5f0a903181161b19..67801211a20c30d3f602b1dd00a77c96a2c0080d 100644 (file)
@@ -51,7 +51,7 @@ BOUNCE(8)                                                            BOUNCE(8)
        <a href="http://tools.ietf.org/html/rfc6533">RFC 6533</a> (Internationalized Delivery Status Notifications)
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>CONFIGURATION PARAMETERS</b>
        Changes to <a href="postconf.5.html"><b>main.cf</b></a> are picked up automatically, as <a href="bounce.8.html"><b>bounce</b>(8)</a>  processes
@@ -164,6 +164,7 @@ BOUNCE(8)                                                            BOUNCE(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index 340ca46c79b546c99cb65b1dd7becaeb1374c7ec..8523adc4a939189e275ea53d2e21489e0dc8e390 100644 (file)
@@ -36,7 +36,7 @@ DISCARD(8)                                                          DISCARD(8)
        <a href="http://tools.ietf.org/html/rfc3463">RFC 3463</a> (Enhanced Status Codes)
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
        Depending on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter, the  postmas-
        ter is notified of bounces and of other trouble.
@@ -105,6 +105,7 @@ DISCARD(8)                                                          DISCARD(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index dbc155f47691f6831e7df1f03ffb92ecb6420296..a2710dc1ef65a9c721ed88c6f9cca9583a9bae8c 100644 (file)
@@ -29,7 +29,7 @@ DNSBLOG(8)                                                          DNSBLOG(8)
        server closes the connection.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>CONFIGURATION PARAMETERS</b>
        Changes to <a href="postconf.5.html"><b>main.cf</b></a> are picked up automatically, as <a href="dnsblog.8.html"><b>dnsblog</b>(8)</a> processes
@@ -79,7 +79,8 @@ DNSBLOG(8)                                                          DNSBLOG(8)
 <b>SEE ALSO</b>
        <a href="smtpd.8.html">smtpd(8)</a>, Postfix SMTP server
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
-       syslogd(5), system logging
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
+       syslogd(8), system logging
 
 <b>LICENSE</b>
        The Secure Mailer license must be distributed with this software.
index 233246cb8e5abbfee6a67bcb45949edd3c936b63..a2096fe2ff837a127834dc4b0565458157f1a246 100644 (file)
@@ -37,7 +37,7 @@ ERROR(8)                                                              ERROR(8)
        <a href="http://tools.ietf.org/html/rfc3463">RFC 3463</a> (Enhanced Status Codes)
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
        Depending on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter, the  postmas-
        ter is notified of bounces and of other trouble.
@@ -118,6 +118,7 @@ ERROR(8)                                                              ERROR(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index cd9fe43e2a9c8ee0a788bad9f894c27dc84558ef..a14f8186760dbd621eafbe0557f413c1e3eb38c5 100644 (file)
@@ -61,7 +61,7 @@ FLUSH(8)                                                              FLUSH(8)
        can run chrooted at fixed low privilege.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>BUGS</b>
        Fast flush logfiles are truncated only after a "send" request, not when
@@ -152,6 +152,7 @@ FLUSH(8)                                                              FLUSH(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 2989177a625437eb9ecf2db2cbc0746b7a67f8c8..983ae42e9b53af5a6233f7830027d3e374502b0c 100644 (file)
@@ -48,6 +48,8 @@ configuration examples </a>
 
 <li> <a href="SMTPUTF8_README.html"> SMTPUTF8 Support </a>
 
+<li> <a href="MAILLOG_README.html"> Postfix logging to file or stdout </a>
+
 <li> <a href="COMPATIBILITY_README.html"> Backwards-Compatibility Safety Net</a>
 
 <li> <a href="INSTALL.html"> Installation from source code </a>
index 4bba215ad7d5e42a1d24f85903fb9e0eabf10bb1..ee724df5154111995ea19a62e20f23e0cac7fdff 100644 (file)
@@ -112,9 +112,9 @@ SMTP(8)                                                                SMTP(8)
        <a href="http://tools.ietf.org/html/rfc7672">RFC 7672</a> (SMTP security via opportunistic DANE TLS)
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).  Corrupted  message
-       files are marked so that the queue manager can move them to the <b>corrupt</b>
-       queue for further inspection.
+       Problems and transactions are  logged  to  <b>syslogd</b>(8)  or  <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
+       Corrupted  message  files are marked so that the queue manager can move
+       them to the <b>corrupt</b> queue for further inspection.
 
        Depending on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter, the  postmas-
        ter is notified of bounces, protocol problems, and of other trouble.
@@ -913,6 +913,7 @@ SMTP(8)                                                                SMTP(8)
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
        <a href="tlsmgr.8.html">tlsmgr(8)</a>, TLS session and PRNG management
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 973514e721ae1bd789ea825b44161708691315b3..0a2bc44eb765b128e686e7c32a6add2502eb75e4 100644 (file)
@@ -283,9 +283,9 @@ LOCAL(8)                                                              LOCAL(8)
        <a href="http://tools.ietf.org/html/rfc3463">RFC 3463</a> (Enhanced status codes)
 
 <b>DIAGNOSTICS</b>
-       Problems  and transactions are logged to <b>syslogd</b>(8).  Corrupted message
-       files are marked so that the queue manager can move them to the <b>corrupt</b>
-       queue afterwards.
+       Problems  and  transactions  are  logged  to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
+       Corrupted message files are marked so that the queue manager  can  move
+       them to the <b>corrupt</b> queue afterwards.
 
        Depending  on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter, the postmas-
        ter is notified of bounces and of other trouble.
@@ -589,6 +589,7 @@ LOCAL(8)                                                              LOCAL(8)
        <a href="aliases.5.html">aliases(5)</a>, format of alias database
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index 0d416c931e5d954ad38062a67bf1970db4b04a3a..02f20fe8913d3963b9dd36d8887fe0eb3d9987d6 100644 (file)
@@ -285,7 +285,8 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        precautions need to be taken against malicious inputs.
 
 <b>DIAGNOSTICS</b>
-       Problems are logged to <b>syslogd</b>(8) and to the standard error stream.
+       Problems  are  logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>, and to the standard
+       error stream.
 
 <b>ENVIRONMENT</b>
        <b>MAIL_CONFIG</b>
@@ -298,12 +299,12 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               Enable debugging with an external command, as specified with the
               <b><a href="postconf.5.html#debugger_command">debugger_command</a></b> configuration parameter.
 
-       <b>NAME</b>   The sender full name. This is used only with messages that  have
+       <b>NAME</b>   The  sender full name. This is used only with messages that have
               no <b>From:</b> message header. See also the <b>-F</b> option above.
 
 <b>CONFIGURATION PARAMETERS</b>
-       The  following  <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to this pro-
-       gram.  The text below provides only  a  parameter  summary.  See  <a href="postconf.5.html"><b>post-</b></a>
+       The following <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to  this  pro-
+       gram.   The  text  below  provides  only a parameter summary. See <a href="postconf.5.html"><b>post-</b></a>
        <a href="postconf.5.html"><b>conf</b>(5)</a> for more details including examples.
 
 <b>COMPATIBILITY CONTROLS</b>
@@ -314,7 +315,7 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               line endings from &lt;CR&gt;&lt;LF&gt; into UNIX format (&lt;LF&gt;).
 
 <b>TROUBLE SHOOTING CONTROLS</b>
-       The <a href="DEBUG_README.html">DEBUG_README</a> file gives examples of how to troubleshoot  a  Postfix
+       The  <a href="DEBUG_README.html">DEBUG_README</a>  file gives examples of how to troubleshoot a Postfix
        system.
 
        <b><a href="postconf.5.html#debugger_command">debugger_command</a> (empty)</b>
@@ -322,11 +323,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               invoked with the -D option.
 
        <b><a href="postconf.5.html#debug_peer_level">debug_peer_level</a> (2)</b>
-              The increment in verbose logging level when a remote  client  or
+              The  increment  in verbose logging level when a remote client or
               server matches a pattern in the <a href="postconf.5.html#debug_peer_list">debug_peer_list</a> parameter.
 
        <b><a href="postconf.5.html#debug_peer_list">debug_peer_list</a> (empty)</b>
-              Optional  list  of  remote  client or server hostname or network
+              Optional list of remote client or  server  hostname  or  network
               address  patterns  that  cause  the  verbose  logging  level  to
               increase by the amount specified in $<a href="postconf.5.html#debug_peer_level">debug_peer_level</a>.
 
@@ -340,13 +341,13 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               List of users who are authorized to view the queue.
 
        <b><a href="postconf.5.html#authorized_submit_users">authorized_submit_users</a> (<a href="DATABASE_README.html#types">static</a>:anyone)</b>
-              List  of  users who are authorized to submit mail with the <a href="sendmail.1.html"><b>send-</b></a>
+              List of users who are authorized to submit mail with  the  <a href="sendmail.1.html"><b>send-</b></a>
               <a href="sendmail.1.html"><b>mail</b>(1)</a> command (and with the privileged <a href="postdrop.1.html"><b>postdrop</b>(1)</a> helper com-
               mand).
 
 <b>RESOURCE AND RATE CONTROLS</b>
        <b><a href="postconf.5.html#bounce_size_limit">bounce_size_limit</a> (50000)</b>
-              The  maximal  amount  of original message text that is sent in a
+              The maximal amount of original message text that is  sent  in  a
               non-delivery notification.
 
        <b><a href="postconf.5.html#fork_attempts">fork_attempts</a> (5)</b>
@@ -360,11 +361,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               in the primary message headers.
 
        <b><a href="postconf.5.html#queue_run_delay">queue_run_delay</a> (300s)</b>
-              The  time  between  <a href="QSHAPE_README.html#deferred_queue">deferred  queue</a>  scans by the queue manager;
+              The time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a>  scans  by  the  queue  manager;
               prior to Postfix 2.4 the default value was 1000s.
 
 <b>FAST FLUSH CONTROLS</b>
-       The <a href="ETRN_README.html">ETRN_README</a> file describes configuration and operation details  for
+       The  <a href="ETRN_README.html">ETRN_README</a> file describes configuration and operation details for
        the Postfix "fast flush" service.
 
        <b><a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a> ($<a href="postconf.5.html#relay_domains">relay_domains</a>)</b>
@@ -372,26 +373,26 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               tion logfiles with mail that is queued to those destinations.
 
 <b>VERP CONTROLS</b>
-       The <a href="VERP_README.html">VERP_README</a> file describes configuration and operation  details  of
+       The  <a href="VERP_README.html">VERP_README</a>  file describes configuration and operation details of
        Postfix support for variable envelope return path addresses.
 
        <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a> (+=)</b>
               The two default VERP delimiter characters.
 
        <b><a href="postconf.5.html#verp_delimiter_filter">verp_delimiter_filter</a> (-=+)</b>
-              The  characters  Postfix accepts as VERP delimiter characters on
+              The characters Postfix accepts as VERP delimiter  characters  on
               the Postfix <a href="sendmail.1.html"><b>sendmail</b>(1)</a> command line and in SMTP commands.
 
 <b>MISCELLANEOUS CONTROLS</b>
        <b><a href="postconf.5.html#alias_database">alias_database</a> (see 'postconf -d' output)</b>
-              The alias databases for <a href="local.8.html"><b>local</b>(8)</a> delivery that are updated  with
+              The  alias databases for <a href="local.8.html"><b>local</b>(8)</a> delivery that are updated with
               "<b>newaliases</b>" or with "<b>sendmail -bi</b>".
 
        <b><a href="postconf.5.html#command_directory">command_directory</a> (see 'postconf -d' output)</b>
               The location of all postfix administrative commands.
 
        <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
-              The  default  location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a> con-
+              The default location of the Postfix <a href="postconf.5.html">main.cf</a> and  <a href="master.5.html">master.cf</a>  con-
               figuration files.
 
        <b><a href="postconf.5.html#daemon_directory">daemon_directory</a> (see 'postconf -d' output)</b>
@@ -402,46 +403,46 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               and <a href="postmap.1.html"><b>postmap</b>(1)</a> commands.
 
        <b><a href="postconf.5.html#delay_warning_time">delay_warning_time</a> (0h)</b>
-              The time after which the sender receives a copy of  the  message
+              The  time  after which the sender receives a copy of the message
               headers of mail that is still queued.
 
        <b><a href="postconf.5.html#import_environment">import_environment</a> (see 'postconf -d' output)</b>
-              The  list  of  environment  parameters that a privileged Postfix
-              process will  import  from  a  non-Postfix  parent  process,  or
+              The list of environment parameters  that  a  privileged  Postfix
+              process  will  import  from  a  non-Postfix  parent  process, or
               name=value environment overrides.
 
        <b><a href="postconf.5.html#mail_owner">mail_owner</a> (postfix)</b>
-              The  UNIX  system  account  that owns the Postfix queue and most
+              The UNIX system account that owns the  Postfix  queue  and  most
               Postfix daemon processes.
 
        <b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b>
               The location of the Postfix top-level queue directory.
 
        <b><a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> (empty)</b>
-              Don't rewrite message headers from remote clients  at  all  when
-              this  parameter is empty; otherwise, rewrite message headers and
+              Don't  rewrite  message  headers from remote clients at all when
+              this parameter is empty; otherwise, rewrite message headers  and
               append the specified domain name to incomplete addresses.
 
        <b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
               The syslog facility of Postfix logging.
 
        <b><a href="postconf.5.html#syslog_name">syslog_name</a> (see 'postconf -d' output)</b>
-              A prefix that  is  prepended  to  the  process  name  in  syslog
+              A  prefix  that  is  prepended  to  the  process  name in syslog
               records, so that, for example, "smtpd" becomes "prefix/smtpd".
 
        Postfix 3.2 and later:
 
        <b><a href="postconf.5.html#alternate_config_directories">alternate_config_directories</a> (empty)</b>
               A list of non-default Postfix configuration directories that may
-              be specified with "-c <a href="postconf.5.html#config_directory">config_directory</a>" on the command line  (in
-              the  case  of  <a href="sendmail.1.html"><b>sendmail</b>(1)</a>,  with  the  "-C" option), or via the
+              be  specified with "-c <a href="postconf.5.html#config_directory">config_directory</a>" on the command line (in
+              the case of <a href="sendmail.1.html"><b>sendmail</b>(1)</a>, with  the  "-C"  option),  or  via  the
               MAIL_CONFIG environment parameter.
 
        <b><a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a> (empty)</b>
-              An optional list of non-default Postfix  configuration  directo-
-              ries;  these  directories belong to additional Postfix instances
-              that share the Postfix executable files and  documentation  with
-              the  default  Postfix  instance,  and that are started, stopped,
+              An  optional  list of non-default Postfix configuration directo-
+              ries; these directories belong to additional  Postfix  instances
+              that  share  the Postfix executable files and documentation with
+              the default Postfix instance, and  that  are  started,  stopped,
               etc., together with the default Postfix instance.
 
 <b>FILES</b>
@@ -458,10 +459,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        <a href="postdrop.1.html">postdrop(1)</a>, mail posting utility
        <a href="postfix.1.html">postfix(1)</a>, mail system control
        <a href="postqueue.1.html">postqueue(1)</a>, mail queue control
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README_FILES</b>
-       Use "<b>postconf <a href="postconf.5.html#readme_directory">readme_directory</a></b>" or "<b>postconf <a href="postconf.5.html#html_directory">html_directory</a></b>" to  locate
+       Use  "<b>postconf <a href="postconf.5.html#readme_directory">readme_directory</a></b>" or "<b>postconf <a href="postconf.5.html#html_directory">html_directory</a></b>" to locate
        this information.
        <a href="DEBUG_README.html">DEBUG_README</a>, Postfix debugging howto
        <a href="ETRN_README.html">ETRN_README</a>, Postfix ETRN howto
index d00472d729786d17c0dbe300b9a09343b0859fdb..e06802898b51a409a4d769eebe8deb3cbfb6b746 100644 (file)
@@ -92,9 +92,9 @@ MASTER(8)                                                            MASTER(8)
               running processes to finish what they are doing.
 
 <b>DIAGNOSTICS</b>
-       Problems are reported to <b>syslogd</b>(8). The exit  status  is  non-zero  in
-       case  of  problems,  including  problems while initializing as a master
-       daemon process in the background.
+       Problems are reported to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.  The exit status is
+       non-zero  in case of problems, including problems while initializing as
+       a master daemon process in the background.
 
 <b>ENVIRONMENT</b>
        <b>MAIL_DEBUG</b>
@@ -198,6 +198,7 @@ MASTER(8)                                                            MASTER(8)
        <a href="verify.8.html">verify(8)</a>, address verification
        <a href="master.5.html">master(5)</a>, <a href="master.5.html">master.cf</a> configuration file syntax
        <a href="postconf.5.html">postconf(5)</a>, <a href="postconf.5.html">main.cf</a> configuration file syntax
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index 0d416c931e5d954ad38062a67bf1970db4b04a3a..02f20fe8913d3963b9dd36d8887fe0eb3d9987d6 100644 (file)
@@ -285,7 +285,8 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        precautions need to be taken against malicious inputs.
 
 <b>DIAGNOSTICS</b>
-       Problems are logged to <b>syslogd</b>(8) and to the standard error stream.
+       Problems  are  logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>, and to the standard
+       error stream.
 
 <b>ENVIRONMENT</b>
        <b>MAIL_CONFIG</b>
@@ -298,12 +299,12 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               Enable debugging with an external command, as specified with the
               <b><a href="postconf.5.html#debugger_command">debugger_command</a></b> configuration parameter.
 
-       <b>NAME</b>   The sender full name. This is used only with messages that  have
+       <b>NAME</b>   The  sender full name. This is used only with messages that have
               no <b>From:</b> message header. See also the <b>-F</b> option above.
 
 <b>CONFIGURATION PARAMETERS</b>
-       The  following  <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to this pro-
-       gram.  The text below provides only  a  parameter  summary.  See  <a href="postconf.5.html"><b>post-</b></a>
+       The following <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to  this  pro-
+       gram.   The  text  below  provides  only a parameter summary. See <a href="postconf.5.html"><b>post-</b></a>
        <a href="postconf.5.html"><b>conf</b>(5)</a> for more details including examples.
 
 <b>COMPATIBILITY CONTROLS</b>
@@ -314,7 +315,7 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               line endings from &lt;CR&gt;&lt;LF&gt; into UNIX format (&lt;LF&gt;).
 
 <b>TROUBLE SHOOTING CONTROLS</b>
-       The <a href="DEBUG_README.html">DEBUG_README</a> file gives examples of how to troubleshoot  a  Postfix
+       The  <a href="DEBUG_README.html">DEBUG_README</a>  file gives examples of how to troubleshoot a Postfix
        system.
 
        <b><a href="postconf.5.html#debugger_command">debugger_command</a> (empty)</b>
@@ -322,11 +323,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               invoked with the -D option.
 
        <b><a href="postconf.5.html#debug_peer_level">debug_peer_level</a> (2)</b>
-              The increment in verbose logging level when a remote  client  or
+              The  increment  in verbose logging level when a remote client or
               server matches a pattern in the <a href="postconf.5.html#debug_peer_list">debug_peer_list</a> parameter.
 
        <b><a href="postconf.5.html#debug_peer_list">debug_peer_list</a> (empty)</b>
-              Optional  list  of  remote  client or server hostname or network
+              Optional list of remote client or  server  hostname  or  network
               address  patterns  that  cause  the  verbose  logging  level  to
               increase by the amount specified in $<a href="postconf.5.html#debug_peer_level">debug_peer_level</a>.
 
@@ -340,13 +341,13 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               List of users who are authorized to view the queue.
 
        <b><a href="postconf.5.html#authorized_submit_users">authorized_submit_users</a> (<a href="DATABASE_README.html#types">static</a>:anyone)</b>
-              List  of  users who are authorized to submit mail with the <a href="sendmail.1.html"><b>send-</b></a>
+              List of users who are authorized to submit mail with  the  <a href="sendmail.1.html"><b>send-</b></a>
               <a href="sendmail.1.html"><b>mail</b>(1)</a> command (and with the privileged <a href="postdrop.1.html"><b>postdrop</b>(1)</a> helper com-
               mand).
 
 <b>RESOURCE AND RATE CONTROLS</b>
        <b><a href="postconf.5.html#bounce_size_limit">bounce_size_limit</a> (50000)</b>
-              The  maximal  amount  of original message text that is sent in a
+              The maximal amount of original message text that is  sent  in  a
               non-delivery notification.
 
        <b><a href="postconf.5.html#fork_attempts">fork_attempts</a> (5)</b>
@@ -360,11 +361,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               in the primary message headers.
 
        <b><a href="postconf.5.html#queue_run_delay">queue_run_delay</a> (300s)</b>
-              The  time  between  <a href="QSHAPE_README.html#deferred_queue">deferred  queue</a>  scans by the queue manager;
+              The time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a>  scans  by  the  queue  manager;
               prior to Postfix 2.4 the default value was 1000s.
 
 <b>FAST FLUSH CONTROLS</b>
-       The <a href="ETRN_README.html">ETRN_README</a> file describes configuration and operation details  for
+       The  <a href="ETRN_README.html">ETRN_README</a> file describes configuration and operation details for
        the Postfix "fast flush" service.
 
        <b><a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a> ($<a href="postconf.5.html#relay_domains">relay_domains</a>)</b>
@@ -372,26 +373,26 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               tion logfiles with mail that is queued to those destinations.
 
 <b>VERP CONTROLS</b>
-       The <a href="VERP_README.html">VERP_README</a> file describes configuration and operation  details  of
+       The  <a href="VERP_README.html">VERP_README</a>  file describes configuration and operation details of
        Postfix support for variable envelope return path addresses.
 
        <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a> (+=)</b>
               The two default VERP delimiter characters.
 
        <b><a href="postconf.5.html#verp_delimiter_filter">verp_delimiter_filter</a> (-=+)</b>
-              The  characters  Postfix accepts as VERP delimiter characters on
+              The characters Postfix accepts as VERP delimiter  characters  on
               the Postfix <a href="sendmail.1.html"><b>sendmail</b>(1)</a> command line and in SMTP commands.
 
 <b>MISCELLANEOUS CONTROLS</b>
        <b><a href="postconf.5.html#alias_database">alias_database</a> (see 'postconf -d' output)</b>
-              The alias databases for <a href="local.8.html"><b>local</b>(8)</a> delivery that are updated  with
+              The  alias databases for <a href="local.8.html"><b>local</b>(8)</a> delivery that are updated with
               "<b>newaliases</b>" or with "<b>sendmail -bi</b>".
 
        <b><a href="postconf.5.html#command_directory">command_directory</a> (see 'postconf -d' output)</b>
               The location of all postfix administrative commands.
 
        <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
-              The  default  location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a> con-
+              The default location of the Postfix <a href="postconf.5.html">main.cf</a> and  <a href="master.5.html">master.cf</a>  con-
               figuration files.
 
        <b><a href="postconf.5.html#daemon_directory">daemon_directory</a> (see 'postconf -d' output)</b>
@@ -402,46 +403,46 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               and <a href="postmap.1.html"><b>postmap</b>(1)</a> commands.
 
        <b><a href="postconf.5.html#delay_warning_time">delay_warning_time</a> (0h)</b>
-              The time after which the sender receives a copy of  the  message
+              The  time  after which the sender receives a copy of the message
               headers of mail that is still queued.
 
        <b><a href="postconf.5.html#import_environment">import_environment</a> (see 'postconf -d' output)</b>
-              The  list  of  environment  parameters that a privileged Postfix
-              process will  import  from  a  non-Postfix  parent  process,  or
+              The list of environment parameters  that  a  privileged  Postfix
+              process  will  import  from  a  non-Postfix  parent  process, or
               name=value environment overrides.
 
        <b><a href="postconf.5.html#mail_owner">mail_owner</a> (postfix)</b>
-              The  UNIX  system  account  that owns the Postfix queue and most
+              The UNIX system account that owns the  Postfix  queue  and  most
               Postfix daemon processes.
 
        <b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b>
               The location of the Postfix top-level queue directory.
 
        <b><a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> (empty)</b>
-              Don't rewrite message headers from remote clients  at  all  when
-              this  parameter is empty; otherwise, rewrite message headers and
+              Don't  rewrite  message  headers from remote clients at all when
+              this parameter is empty; otherwise, rewrite message headers  and
               append the specified domain name to incomplete addresses.
 
        <b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
               The syslog facility of Postfix logging.
 
        <b><a href="postconf.5.html#syslog_name">syslog_name</a> (see 'postconf -d' output)</b>
-              A prefix that  is  prepended  to  the  process  name  in  syslog
+              A  prefix  that  is  prepended  to  the  process  name in syslog
               records, so that, for example, "smtpd" becomes "prefix/smtpd".
 
        Postfix 3.2 and later:
 
        <b><a href="postconf.5.html#alternate_config_directories">alternate_config_directories</a> (empty)</b>
               A list of non-default Postfix configuration directories that may
-              be specified with "-c <a href="postconf.5.html#config_directory">config_directory</a>" on the command line  (in
-              the  case  of  <a href="sendmail.1.html"><b>sendmail</b>(1)</a>,  with  the  "-C" option), or via the
+              be  specified with "-c <a href="postconf.5.html#config_directory">config_directory</a>" on the command line (in
+              the case of <a href="sendmail.1.html"><b>sendmail</b>(1)</a>, with  the  "-C"  option),  or  via  the
               MAIL_CONFIG environment parameter.
 
        <b><a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a> (empty)</b>
-              An optional list of non-default Postfix  configuration  directo-
-              ries;  these  directories belong to additional Postfix instances
-              that share the Postfix executable files and  documentation  with
-              the  default  Postfix  instance,  and that are started, stopped,
+              An  optional  list of non-default Postfix configuration directo-
+              ries; these directories belong to additional  Postfix  instances
+              that  share  the Postfix executable files and documentation with
+              the default Postfix instance, and  that  are  started,  stopped,
               etc., together with the default Postfix instance.
 
 <b>FILES</b>
@@ -458,10 +459,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        <a href="postdrop.1.html">postdrop(1)</a>, mail posting utility
        <a href="postfix.1.html">postfix(1)</a>, mail system control
        <a href="postqueue.1.html">postqueue(1)</a>, mail queue control
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README_FILES</b>
-       Use "<b>postconf <a href="postconf.5.html#readme_directory">readme_directory</a></b>" or "<b>postconf <a href="postconf.5.html#html_directory">html_directory</a></b>" to  locate
+       Use  "<b>postconf <a href="postconf.5.html#readme_directory">readme_directory</a></b>" or "<b>postconf <a href="postconf.5.html#html_directory">html_directory</a></b>" to locate
        this information.
        <a href="DEBUG_README.html">DEBUG_README</a>, Postfix debugging howto
        <a href="ETRN_README.html">ETRN_README</a>, Postfix ETRN howto
index cb98749f3e082b9ad589fb684e7f71e9a0983dc6..b921cc53b4035af75985a6037aefa1b438431da1 100644 (file)
@@ -144,9 +144,9 @@ OQMGR(8)                                                              OQMGR(8)
        environment.
 
 <b>DIAGNOSTICS</b>
-       Problems  and  transactions  are  logged to the <b>syslog</b>(8) daemon.  Cor-
-       rupted message files are saved to the <b>corrupt</b> queue for further inspec-
-       tion.
+       Problems  and  transactions are logged to the <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>
+       daemon.  Corrupted message files are saved to  the  <b>corrupt</b>  queue  for
+       further inspection.
 
        Depending  on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter, the postmas-
        ter is notified of bounces and of other trouble.
@@ -300,32 +300,31 @@ OQMGR(8)                                                              OQMGR(8)
 
        <b><a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a> (0s)</b>
               The default amount of delay that is inserted between  individual
-              deliveries  to  the  same  destination;  the  resulting behavior
-              depends on the value of the corresponding per-destination recip-
-              ient limit.
+              message  deliveries  to  the  same destination and over the same
+              message delivery transport.
 
        <b>transport_destination_rate_delay ($<a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a>)</b>
               A   transport-specific   override   for   the   <a href="postconf.5.html#default_destination_rate_delay">default_destina</a>-
-              <a href="postconf.5.html#default_destination_rate_delay">tion_rate_delay</a> parameter value, where  <i>transport</i>  is  the  <a href="master.5.html">mas-
+              <a href="postconf.5.html#default_destination_rate_delay">tion_rate_delay</a>  parameter  value,  where  <i>transport</i> is the <a href="master.5.html">mas-
               ter.cf</a> name of the message delivery transport.
 
        Available in Postfix version 3.1 and later:
 
        <b><a href="postconf.5.html#default_transport_rate_delay">default_transport_rate_delay</a> (0s)</b>
-              The  default amount of delay that is inserted between individual
-              deliveries over the same message delivery transport,  regardless
-              of destination.
+              The default amount of delay that is inserted between  individual
+              message  deliveries  over  the  same message delivery transport,
+              regardless of destination.
 
        <b>transport_transport_rate_delay ($<a href="postconf.5.html#default_transport_rate_delay">default_transport_rate_delay</a>)</b>
-              A    transport-specific    override   for   the   <a href="postconf.5.html#default_transport_rate_delay">default_trans</a>-
-              <a href="postconf.5.html#default_transport_rate_delay">port_rate_delay</a> parameter value, where the initial <i>transport</i>  in
+              A   transport-specific   override   for    the    <a href="postconf.5.html#default_transport_rate_delay">default_trans</a>-
+              <a href="postconf.5.html#default_transport_rate_delay">port_rate_delay</a>  parameter value, where the initial <i>transport</i> in
               the parameter name is the <a href="master.5.html">master.cf</a> name of the message delivery
               transport.
 
 <b>SAFETY CONTROLS</b>
        <b><a href="postconf.5.html#qmgr_daemon_timeout">qmgr_daemon_timeout</a> (1000s)</b>
               How much time a Postfix queue manager process may take to handle
-              a  request before it is terminated by a built-in watchdog timer.
+              a request before it is terminated by a built-in watchdog  timer.
 
        <b><a href="postconf.5.html#qmgr_ipc_timeout">qmgr_ipc_timeout</a> (60s)</b>
               The time limit for the queue manager to send or receive informa-
@@ -334,12 +333,12 @@ OQMGR(8)                                                              OQMGR(8)
        Available in Postfix version 3.1 and later:
 
        <b><a href="postconf.5.html#address_verify_pending_request_limit">address_verify_pending_request_limit</a> (see 'postconf -d' output)</b>
-              A  safety limit that prevents address verification requests from
+              A safety limit that prevents address verification requests  from
               overwhelming the Postfix queue.
 
 <b>MISCELLANEOUS CONTROLS</b>
        <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
-              The default location of the Postfix <a href="postconf.5.html">main.cf</a> and  <a href="master.5.html">master.cf</a>  con-
+              The  default  location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a> con-
               figuration files.
 
        <b><a href="postconf.5.html#defer_transports">defer_transports</a> (empty)</b>
@@ -347,11 +346,11 @@ OQMGR(8)                                                              OQMGR(8)
               mail unless someone issues "<b>sendmail -q</b>" or equivalent.
 
        <b><a href="postconf.5.html#delay_logging_resolution_limit">delay_logging_resolution_limit</a> (2)</b>
-              The maximal number of digits after the decimal point  when  log-
+              The  maximal  number of digits after the decimal point when log-
               ging sub-second delay values.
 
        <b><a href="postconf.5.html#helpful_warnings">helpful_warnings</a> (yes)</b>
-              Log  warnings about problematic configuration settings, and pro-
+              Log warnings about problematic configuration settings, and  pro-
               vide helpful suggestions.
 
        <b><a href="postconf.5.html#process_id">process_id</a> (read-only)</b>
@@ -367,13 +366,13 @@ OQMGR(8)                                                              OQMGR(8)
               The syslog facility of Postfix logging.
 
        <b><a href="postconf.5.html#syslog_name">syslog_name</a> (see 'postconf -d' output)</b>
-              A prefix that  is  prepended  to  the  process  name  in  syslog
+              A  prefix  that  is  prepended  to  the  process  name in syslog
               records, so that, for example, "smtpd" becomes "prefix/smtpd".
 
        Available in Postfix version 3.0 and later:
 
        <b><a href="postconf.5.html#confirm_delay_cleared">confirm_delay_cleared</a> (no)</b>
-              After  sending  a "your message is delayed" notification, inform
+              After sending a "your message is delayed"  notification,  inform
               the sender when the delay clears up.
 
        Available in Postfix 3.3 and later:
@@ -395,6 +394,7 @@ OQMGR(8)                                                              OQMGR(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 7173796e8239f0071b9098aef6962acef627217b..cc6eaf08033645ad6a8ac192f560312b71442e13 100644 (file)
@@ -30,7 +30,7 @@ PICKUP(8)                                                            PICKUP(8)
        public service endpoint.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>BUGS</b>
        The  <a href="pickup.8.html"><b>pickup</b>(8)</a>  daemon  copies mail from file to the <a href="cleanup.8.html"><b>cleanup</b>(8)</a> daemon.
@@ -104,6 +104,7 @@ PICKUP(8)                                                            PICKUP(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index d58775b0c38a444de165e049252fef7c1350a01f..174bf0a0e563fb13358fc065ab1a1393e81444bc 100644 (file)
@@ -361,9 +361,9 @@ PIPE(8)                                                                PIPE(8)
        fications (Postfix 3.0 and later).  This command output is not examined
        for the presence of an enhanced status code.
 
-       Problems  and transactions are logged to <b>syslogd</b>(8).  Corrupted message
-       files are marked so that the queue manager can move them to the <b>corrupt</b>
-       queue for further inspection.
+       Problems  and  transactions  are  logged  to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
+       Corrupted message files are marked so that the queue manager  can  move
+       them to the <b>corrupt</b> queue for further inspection.
 
 <b>SECURITY</b>
        This  program needs a dual personality 1) to access the private Postfix
@@ -477,6 +477,7 @@ PIPE(8)                                                                PIPE(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index c8bcf419eda5848ad2ff895c77a74dab8d328ee6..b029057d120a1c77c1fe4cf883c4918388c8ffb1 100644 (file)
@@ -149,9 +149,9 @@ POSTALIAS(1)                                                      POSTALIAS(1)
               base.
 
 <b>DIAGNOSTICS</b>
-       Problems are logged to the standard error stream and to <b>syslogd</b>(8).  No
-       output  means  that  no  problems  were detected. Duplicate entries are
-       skipped and are flagged with a warning.
+       Problems are logged to the standard error stream and to  <b>syslogd</b>(8)  or
+       <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.  No output means that no problems were detected. Duplicate
+       entries are skipped and are flagged with a warning.
 
        <a href="postalias.1.html"><b>postalias</b>(1)</a> terminates with  zero  exit  status  in  case  of  success
        (including  successful  "<b>postalias  -q</b>"  lookup)  and  terminates  with
@@ -217,6 +217,7 @@ POSTALIAS(1)                                                      POSTALIAS(1)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="postmap.1.html">postmap(1)</a>, create/update/query lookup tables
        <a href="newaliases.1.html">newaliases(1)</a>, Sendmail compatibility interface.
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 7cb118e33eb5a2948baa9c356e7b79ed7bbe97d3..77249e445b835e1b65fe1de17e6ffc64c0498b4f 100644 (file)
@@ -6241,9 +6241,10 @@ substitutions in regular expression maps. </p>
 (default: empty)</b></DT><DD>
 
 <p> The name of an optional logfile that is written by the Postfix
-<a href="postlogd.8.html">postlogd(8)</a> service. A non-empty value disables logging to syslogd(8).
-Specify "/dev/stdout" for logging to standard output. Stdout logging
-requires that Postfix is started with "postfix start-fg".  </p>
+<a href="postlogd.8.html">postlogd(8)</a> service. A non-empty value selects logging to syslogd(8).
+Specify "/dev/stdout" to select logging to standard output. Stdout
+logging requires that Postfix is started with "postfix start-fg".
+</p>
 
 <p> Note 1: The <a href="postconf.5.html#maillog_file">maillog_file</a> parameter value must contain a prefix
 that is specified with the <a href="postconf.5.html#maillog_file_prefixes">maillog_file_prefixes</a> parameter. </p>
@@ -6261,8 +6262,8 @@ parameters and command-line options. </p>
 (default: gzip)</b></DT><DD>
 
 <p> The program to run after rotating $<a href="postconf.5.html#maillog_file">maillog_file</a> with "postfix
-logrotate". The command is run with the rotated file as its first
-argument. </p>
+logrotate". The command is run with the rotated logfile name as its
+first argument. </p>
 
 <p> This feature is available in Postfix 3.4 and later. </p>
 
index 9d73c335be2c141c25141e1b553dc16ff89f8e2e..7155559b89b2eb29d9a3740b12e26277ea0fb680 100644 (file)
@@ -38,9 +38,9 @@ POSTDROP(1)                                                        POSTDROP(1)
 
 <b>DIAGNOSTICS</b>
        Fatal errors: malformed input, I/O error, out of memory.  Problems  are
-       logged  to <b>syslogd</b>(8) and to the standard error stream.  When the input
-       is incomplete, or when the process receives a HUP, INT,  QUIT  or  TERM
-       signal, the queue file is deleted.
+       logged  to  <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a> and to the standard error stream.
+       When the input is incomplete, or when the process receives a HUP,  INT,
+       QUIT or TERM signal, the queue file is deleted.
 
 <b>ENVIRONMENT</b>
        MAIL_CONFIG
@@ -100,6 +100,7 @@ POSTDROP(1)                                                        POSTDROP(1)
 <b>SEE ALSO</b>
        <a href="sendmail.1.html">sendmail(1)</a>, compatibility interface
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index 672de9f5839cceb674c882d3d3bf5f692a2de296..cacbd6a71ce3e5ce79c5775b8a7c2c4f31fb7ef6 100644 (file)
@@ -20,30 +20,31 @@ POSTLOG(1)                                                          POSTLOG(1)
        record.  If  no <i>text</i> is specified on the command line, <a href="postlog.1.html"><b>postlog</b>(1)</a> reads
        from standard input and logs each input line as one record.
 
-       By default, logging is sent to  <b>syslogd</b>(8);  when  the  standard  error
-       stream is connected to a terminal, logging is sent there as well.
+       By default, logging is sent to  <b>syslogd</b>(8)  or  <a href="postlogd.8.html"><b>postlogd</b>(8)</a>;  when  the
+       standard error stream is connected to a terminal, logging is sent there
+       as well.
 
        The following options are implemented:
 
        <b>-c</b> <i>config</i><b>_</b><i>dir</i>
-              Read  the  <a href="postconf.5.html"><b>main.cf</b></a>  configuration  file  in  the named directory
+              Read the <a href="postconf.5.html"><b>main.cf</b></a>  configuration  file  in  the  named  directory
               instead of the default configuration directory.
 
        <b>-i</b> (obsolete)
-              Include the process ID in the logging tag. This flag is  ignored
+              Include  the process ID in the logging tag. This flag is ignored
               as of Postfix 3.4, where the PID is always included.
 
        <b>-p</b> <i>priority</i> (default: <b>info</b>)
-              Specifies  the  logging  severity:  <b>info</b>, <b>warn</b>, <b>error</b>, <b>fatal</b>, or
-              <b>panic</b>. With Postfix 3.1 and later, the program will pause for  1
-              second  after  reporting  a  <b>fatal</b> or <b>panic</b> condition, just like
+              Specifies the logging severity: <b>info</b>,  <b>warn</b>,  <b>error</b>,  <b>fatal</b>,  or
+              <b>panic</b>.  With Postfix 3.1 and later, the program will pause for 1
+              second after reporting a <b>fatal</b> or  <b>panic</b>  condition,  just  like
               other Postfix programs.
 
-       <b>-t</b> <i>tag</i> Specifies the logging tag, that is, the  identifying  name  that
-              appears  at  the beginning of each logging record. A default tag
+       <b>-t</b> <i>tag</i> Specifies  the  logging  tag, that is, the identifying name that
+              appears at the beginning of each logging record. A  default  tag
               is used when none is specified.
 
-       <b>-v</b>     Enable verbose  logging  for  debugging  purposes.  Multiple  <b>-v</b>
+       <b>-v</b>     Enable  verbose  logging  for  debugging  purposes.  Multiple <b>-v</b>
               options make the software increasingly verbose.
 
 <b>ENVIRONMENT</b>
@@ -51,32 +52,32 @@ POSTLOG(1)                                                          POSTLOG(1)
               Directory with the <a href="postconf.5.html"><b>main.cf</b></a> file.
 
 <b>CONFIGURATION PARAMETERS</b>
-       The  following  <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to this pro-
+       The following <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to  this  pro-
        gram.
 
-       The text below provides only a parameter summary. See  <a href="postconf.5.html"><b>postconf</b>(5)</a>  for
+       The  text  below provides only a parameter summary. See <a href="postconf.5.html"><b>postconf</b>(5)</a> for
        more details including examples.
 
        <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
-              The  default  location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a> con-
+              The default location of the Postfix <a href="postconf.5.html">main.cf</a> and  <a href="master.5.html">master.cf</a>  con-
               figuration files.
 
        <b><a href="postconf.5.html#import_environment">import_environment</a> (see 'postconf -d' output)</b>
-              The list of environment parameters  that  a  privileged  Postfix
-              process  will  import  from  a  non-Postfix  parent  process, or
+              The  list  of  environment  parameters that a privileged Postfix
+              process will  import  from  a  non-Postfix  parent  process,  or
               name=value environment overrides.
 
        <b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
               The syslog facility of Postfix logging.
 
        <b><a href="postconf.5.html#syslog_name">syslog_name</a> (see 'postconf -d' output)</b>
-              A prefix that  is  prepended  to  the  process  name  in  syslog
+              A  prefix  that  is  prepended  to  the  process  name in syslog
               records, so that, for example, "smtpd" becomes "prefix/smtpd".
 
        Available in Postfix 3.4 and later:
 
        <b><a href="postconf.5.html#maillog_file">maillog_file</a> (empty)</b>
-              The  name  of an optional logfile that is written by the Postfix
+              The name of an optional logfile that is written by  the  Postfix
               <a href="postlogd.8.html"><b>postlogd</b>(8)</a> service.
 
        <b><a href="postconf.5.html#postlog_service_name">postlog_service_name</a> (postlog)</b>
@@ -84,8 +85,8 @@ POSTLOG(1)                                                          POSTLOG(1)
 
 <b>SEE ALSO</b>
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
-       syslogd(8), syslog daemon
-       <a href="postlogd.8.html">postlogd(8)</a>, internal logging service
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
+       syslogd(8), system logging
 
 <b>LICENSE</b>
        The Secure Mailer license must be distributed with this software.
index d41c55488e4895424c32f321138629c9abeb61a4..ae4a26a7521354699b3f7541971e47a17a8c3cd4 100644 (file)
@@ -69,7 +69,12 @@ POSTLOGD(8)                                                        POSTLOGD(8)
 
 <b>SEE ALSO</b>
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
-       syslogd(5), system logging
+       syslogd(8), system logging
+
+<b>README_FILES</b>
+       Use "<b>postconf <a href="postconf.5.html#readme_directory">readme_directory</a></b>" or "<b>postconf <a href="postconf.5.html#html_directory">html_directory</a></b>" to  locate
+       this information.
+       <a href="MAILLOG_README.html">MAILLOG_README</a>, Postfix logging to file or stdout
 
 <b>LICENSE</b>
        The Secure Mailer license must be distributed with this software.
index 5e84454725f5b252dec6088ee91c2a28e0c50ff8..8c23225311db6c662d07af0ad90d6a548a69c2c7 100644 (file)
@@ -225,9 +225,9 @@ POSTMAP(1)                                                          POSTMAP(1)
               base.
 
 <b>DIAGNOSTICS</b>
-       Problems are logged to the standard error stream and to <b>syslogd</b>(8).  No
-       output  means  that  no  problems  were detected. Duplicate entries are
-       skipped and are flagged with a warning.
+       Problems are logged to the standard error stream and to  <b>syslogd</b>(8)  or
+       <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.  No output means that no problems were detected. Duplicate
+       entries are skipped and are flagged with a warning.
 
        <a href="postmap.1.html"><b>postmap</b>(1)</a> terminates with zero exit status in case of success (includ-
        ing  successful  "<b>postmap -q</b>" lookup) and terminates with non-zero exit
@@ -281,6 +281,7 @@ POSTMAP(1)                                                          POSTMAP(1)
        <a href="postalias.1.html">postalias(1)</a>, create/update/query alias database
        <a href="postconf.1.html">postconf(1)</a>, supported database types
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 15ad7fea29eb602b8479bae8a513d327fcdb6025..d64e6d1ec7f3a4931fa7f85eeb7121877b00c31c 100644 (file)
@@ -148,32 +148,33 @@ POSTQUEUE(1)                                                      POSTQUEUE(1)
        <a href="http://tools.ietf.org/html/rfc7159">RFC 7159</a> (JSON notation)
 
 <b>DIAGNOSTICS</b>
-       Problems are logged to <b>syslogd</b>(8) and to the standard error stream.
+       Problems are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>, and to  the  standard
+       error stream.
 
 <b>ENVIRONMENT</b>
        MAIL_CONFIG
-              Directory with the <a href="postconf.5.html"><b>main.cf</b></a> file. In order to avoid  exploitation
-              of  set-group ID privileges, a non-standard directory is allowed
+              Directory  with the <a href="postconf.5.html"><b>main.cf</b></a> file. In order to avoid exploitation
+              of set-group ID privileges, a non-standard directory is  allowed
               only if:
 
-              <b>o</b>      The name is listed in the standard <a href="postconf.5.html"><b>main.cf</b></a> file with  the
+              <b>o</b>      The  name is listed in the standard <a href="postconf.5.html"><b>main.cf</b></a> file with the
                      <b><a href="postconf.5.html#alternate_config_directories">alternate_config_directories</a></b> configuration parameter.
 
               <b>o</b>      The command is invoked by the super-user.
 
 <b>CONFIGURATION PARAMETERS</b>
-       The  following  <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to this pro-
-       gram.  The text below provides only  a  parameter  summary.  See  <a href="postconf.5.html"><b>post-</b></a>
+       The following <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to  this  pro-
+       gram.   The  text  below  provides  only a parameter summary. See <a href="postconf.5.html"><b>post-</b></a>
        <a href="postconf.5.html"><b>conf</b>(5)</a> for more details including examples.
 
        <b><a href="postconf.5.html#alternate_config_directories">alternate_config_directories</a> (empty)</b>
               A list of non-default Postfix configuration directories that may
-              be specified with "-c <a href="postconf.5.html#config_directory">config_directory</a>" on the command line  (in
-              the  case  of  <a href="sendmail.1.html"><b>sendmail</b>(1)</a>,  with  the  "-C" option), or via the
+              be  specified with "-c <a href="postconf.5.html#config_directory">config_directory</a>" on the command line (in
+              the case of <a href="sendmail.1.html"><b>sendmail</b>(1)</a>, with  the  "-C"  option),  or  via  the
               MAIL_CONFIG environment parameter.
 
        <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
-              The default location of the Postfix <a href="postconf.5.html">main.cf</a> and  <a href="master.5.html">master.cf</a>  con-
+              The  default  location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a> con-
               figuration files.
 
        <b><a href="postconf.5.html#command_directory">command_directory</a> (see 'postconf -d' output)</b>
@@ -184,8 +185,8 @@ POSTQUEUE(1)                                                      POSTQUEUE(1)
               tion logfiles with mail that is queued to those destinations.
 
        <b><a href="postconf.5.html#import_environment">import_environment</a> (see 'postconf -d' output)</b>
-              The list of environment parameters  that  a  privileged  Postfix
-              process  will  import  from  a  non-Postfix  parent  process, or
+              The  list  of  environment  parameters that a privileged Postfix
+              process will  import  from  a  non-Postfix  parent  process,  or
               name=value environment overrides.
 
        <b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b>
@@ -195,11 +196,11 @@ POSTQUEUE(1)                                                      POSTQUEUE(1)
               The syslog facility of Postfix logging.
 
        <b><a href="postconf.5.html#syslog_name">syslog_name</a> (see 'postconf -d' output)</b>
-              A prefix that  is  prepended  to  the  process  name  in  syslog
+              A  prefix  that  is  prepended  to  the  process  name in syslog
               records, so that, for example, "smtpd" becomes "prefix/smtpd".
 
        <b><a href="postconf.5.html#trigger_timeout">trigger_timeout</a> (10s)</b>
-              The  time  limit  for sending a trigger to a Postfix daemon (for
+              The time limit for sending a trigger to a  Postfix  daemon  (for
               example, the <a href="pickup.8.html"><b>pickup</b>(8)</a> or <a href="qmgr.8.html"><b>qmgr</b>(8)</a> daemon).
 
        Available in Postfix version 2.2 and later:
@@ -219,6 +220,8 @@ POSTQUEUE(1)                                                      POSTQUEUE(1)
        <a href="flush.8.html">flush(8)</a>, fast flush service
        <a href="sendmail.1.html">sendmail(1)</a>, Sendmail-compatible user interface
        <a href="postsuper.1.html">postsuper(1)</a>, privileged queue operations
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
+       syslogd(8), system logging
 
 <b>README FILES</b>
        <a href="ETRN_README.html">ETRN_README</a>, Postfix ETRN howto
index f1d8d5e9ca140f8c24e1ad4334d445996d85926f..571ba2a76623a6592f24602b7104265213303902 100644 (file)
@@ -71,7 +71,7 @@ POSTSCREEN(8)                                                    POSTSCREEN(8)
        <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a> (SMTP protocol, including multi-line 220 banners)
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>BUGS</b>
        The  <a href="postscreen.8.html"><b>postscreen</b>(8)</a>  built-in  SMTP  protocol  engine currently does not
@@ -413,6 +413,7 @@ POSTSCREEN(8)                                                    POSTSCREEN(8)
        <a href="smtpd.8.html">smtpd(8)</a>, Postfix SMTP server
        <a href="tlsproxy.8.html">tlsproxy(8)</a>, Postfix TLS proxy server
        <a href="dnsblog.8.html">dnsblog(8)</a>, DNS black/whitelist logger
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index dcafbafdd7086265b0abbf202cc219177912f483..abd540818454214c5fc9a060ab7b3a8bafecc473 100644 (file)
@@ -190,12 +190,13 @@ POSTSUPER(1)                                                      POSTSUPER(1)
               options make the software increasingly verbose.
 
 <b>DIAGNOSTICS</b>
-       Problems are reported to the standard error stream and to <b>syslogd</b>(8).
+       Problems are reported to the standard error stream and to <b>syslogd</b>(8) or
+       <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
        <a href="postsuper.1.html"><b>postsuper</b>(1)</a> reports the number of messages deleted with <b>-d</b>, the number
-       of  messages  requeued  with <b>-r</b>, and the number of messages whose queue
-       file name was fixed with <b>-s</b>. The report  is  written  to  the  standard
-       error stream and to <b>syslogd</b>(8).
+       of messages requeued with <b>-r</b>, and the number of  messages  whose  queue
+       file  name  was  fixed  with  <b>-s</b>. The report is written to the standard
+       error stream and to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>ENVIRONMENT</b>
        MAIL_CONFIG
@@ -206,25 +207,25 @@ POSTSUPER(1)                                                      POSTSUPER(1)
        cannot be placed "on hold".
 
 <b>CONFIGURATION PARAMETERS</b>
-       The following <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to  this  pro-
-       gram.   The  text  below  provides  only a parameter summary. See <a href="postconf.5.html"><b>post-</b></a>
+       The  following  <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to this pro-
+       gram.  The text below provides only  a  parameter  summary.  See  <a href="postconf.5.html"><b>post-</b></a>
        <a href="postconf.5.html"><b>conf</b>(5)</a> for more details including examples.
 
        <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
-              The default location of the Postfix <a href="postconf.5.html">main.cf</a> and  <a href="master.5.html">master.cf</a>  con-
+              The  default  location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a> con-
               figuration files.
 
        <b><a href="postconf.5.html#hash_queue_depth">hash_queue_depth</a> (1)</b>
-              The  number  of subdirectory levels for queue directories listed
+              The number of subdirectory levels for queue  directories  listed
               with the <a href="postconf.5.html#hash_queue_names">hash_queue_names</a> parameter.
 
        <b><a href="postconf.5.html#hash_queue_names">hash_queue_names</a> (deferred, defer)</b>
-              The names of queue directories that are  split  across  multiple
+              The  names  of  queue directories that are split across multiple
               subdirectory levels.
 
        <b><a href="postconf.5.html#import_environment">import_environment</a> (see 'postconf -d' output)</b>
-              The  list  of  environment  parameters that a privileged Postfix
-              process will  import  from  a  non-Postfix  parent  process,  or
+              The list of environment parameters  that  a  privileged  Postfix
+              process  will  import  from  a  non-Postfix  parent  process, or
               name=value environment overrides.
 
        <b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b>
@@ -234,7 +235,7 @@ POSTSUPER(1)                                                      POSTSUPER(1)
               The syslog facility of Postfix logging.
 
        <b><a href="postconf.5.html#syslog_name">syslog_name</a> (see 'postconf -d' output)</b>
-              A  prefix  that  is  prepended  to  the  process  name in syslog
+              A prefix that  is  prepended  to  the  process  name  in  syslog
               records, so that, for example, "smtpd" becomes "prefix/smtpd".
 
        Available in Postfix version 2.9 and later:
@@ -245,6 +246,8 @@ POSTSUPER(1)                                                      POSTSUPER(1)
 <b>SEE ALSO</b>
        <a href="sendmail.1.html">sendmail(1)</a>, Sendmail-compatible user interface
        <a href="postqueue.1.html">postqueue(1)</a>, unprivileged queue operations
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
+       syslogd(8), system logging
 
 <b>LICENSE</b>
        The Secure Mailer license must be distributed with this software.
index 8273e785013df688581895a26fbda370679eae1d..649d399f5f2accf8be75935e9ec4eb80c5294b74 100644 (file)
@@ -123,7 +123,7 @@ PROXYMAP(8)                                                        PROXYMAP(8)
        its content.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>BUGS</b>
        The  <a href="proxymap.8.html"><b>proxymap</b>(8)</a>  server provides service to multiple clients, and must
index fd4be5e7b62e85e691ed5042a50eeb270cd4f416..3497b3b1d8c866976e9818083d4738464f088e33 100644 (file)
@@ -149,10 +149,11 @@ QMGR(8)                                                                QMGR(8)
        environment.
 
 <b>DIAGNOSTICS</b>
-       Problems  and  transactions are logged to the syslog daemon.  Corrupted
-       message files are saved to the <b>corrupt</b> queue for further inspection.
+       Problems  and  transactions  are  logged  to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
+       Corrupted message files are saved to  the  <b>corrupt</b>  queue  for  further
+       inspection.
 
-       Depending on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter, the  postmas-
+       Depending  on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter, the postmas-
        ter is notified of bounces and of other trouble.
 
 <b>BUGS</b>
@@ -165,7 +166,7 @@ QMGR(8)                                                                QMGR(8)
        sistent process. Use the "<b>postfix reload</b>" command after a configuration
        change.
 
-       The  text  below provides only a parameter summary. See <a href="postconf.5.html"><b>postconf</b>(5)</a> for
+       The text below provides only a parameter summary. See  <a href="postconf.5.html"><b>postconf</b>(5)</a>  for
        more details including examples.
 
        In the text below, <i>transport</i> is the first field in a <a href="master.5.html"><b>master.cf</b></a> entry.
@@ -174,26 +175,26 @@ QMGR(8)                                                                QMGR(8)
        Available before Postfix version 2.5:
 
        <b><a href="postconf.5.html#allow_min_user">allow_min_user</a> (no)</b>
-              Allow a sender or recipient address to have  `-'  as  the  first
+              Allow  a  sender  or  recipient address to have `-' as the first
               character.
 
        Available with Postfix version 2.7 and later:
 
        <b><a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> (empty)</b>
-              When  a  <a href="postconf.5.html#content_filter">content_filter</a>  or FILTER request specifies no explicit
-              next-hop destination, use $<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> instead;  when
+              When a <a href="postconf.5.html#content_filter">content_filter</a> or FILTER request  specifies  no  explicit
+              next-hop  destination, use $<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> instead; when
               that value is empty, use the domain in the recipient address.
 
 <b>ACTIVE QUEUE CONTROLS</b>
        <b><a href="postconf.5.html#qmgr_clog_warn_time">qmgr_clog_warn_time</a> (300s)</b>
-              The  minimal  delay between warnings that a specific destination
+              The minimal delay between warnings that a  specific  destination
               is clogging up the Postfix <a href="QSHAPE_README.html#active_queue">active queue</a>.
 
        <b><a href="postconf.5.html#qmgr_message_active_limit">qmgr_message_active_limit</a> (20000)</b>
               The maximal number of messages in the <a href="QSHAPE_README.html#active_queue">active queue</a>.
 
        <b><a href="postconf.5.html#qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> (20000)</b>
-              The maximal number of recipients held in memory by  the  Postfix
+              The  maximal  number of recipients held in memory by the Postfix
               queue manager, and the maximal size of the short-term, in-memory
               "dead" destination status cache.
 
@@ -205,12 +206,12 @@ QMGR(8)                                                                QMGR(8)
               recipients.
 
        <b>transport_recipient_limit ($<a href="postconf.5.html#default_recipient_limit">default_recipient_limit</a>)</b>
-              A  transport-specific  override  for the <a href="postconf.5.html#default_recipient_limit">default_recipient_limit</a>
-              parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a>  name  of  the
+              A transport-specific override  for  the  <a href="postconf.5.html#default_recipient_limit">default_recipient_limit</a>
+              parameter  value,  where  <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the
               message delivery transport.
 
        <b><a href="postconf.5.html#default_extra_recipient_limit">default_extra_recipient_limit</a> (1000)</b>
-              The  default  value for the extra per-transport limit imposed on
+              The default value for the extra per-transport limit  imposed  on
               the number of in-memory recipients.
 
        <b>transport_extra_recipient_limit ($<a href="postconf.5.html#default_extra_recipient_limit">default_extra_recipient_limit</a>)</b>
@@ -221,12 +222,12 @@ QMGR(8)                                                                QMGR(8)
        Available in Postfix version 2.4 and later:
 
        <b><a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a> (100)</b>
-              The default per-transport limit  on  the  number  of  recipients
+              The  default  per-transport  limit  on  the number of recipients
               refilled at once.
 
        <b>transport_recipient_refill_limit ($<a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a>)</b>
-              A    transport-specific   override   for   the   <a href="postconf.5.html#default_recipient_refill_limit">default_recipi</a>-
-              <a href="postconf.5.html#default_recipient_refill_limit">ent_refill_limit</a> parameter value, where <i>transport</i>  is  the  <a href="master.5.html">mas-
+              A   transport-specific   override   for   the    <a href="postconf.5.html#default_recipient_refill_limit">default_recipi</a>-
+              <a href="postconf.5.html#default_recipient_refill_limit">ent_refill_limit</a>  parameter  value,  where <i>transport</i> is the <a href="master.5.html">mas-
               ter.cf</a> name of the message delivery transport.
 
        <b><a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a> (5s)</b>
@@ -234,8 +235,8 @@ QMGR(8)                                                                QMGR(8)
               refills.
 
        <b>transport_recipient_refill_delay ($<a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a>)</b>
-              A   transport-specific   override   for   the    <a href="postconf.5.html#default_recipient_refill_delay">default_recipi</a>-
-              <a href="postconf.5.html#default_recipient_refill_delay">ent_refill_delay</a>  parameter  value,  where <i>transport</i> is the <a href="master.5.html">mas-
+              A    transport-specific   override   for   the   <a href="postconf.5.html#default_recipient_refill_delay">default_recipi</a>-
+              <a href="postconf.5.html#default_recipient_refill_delay">ent_refill_delay</a> parameter value, where <i>transport</i>  is  the  <a href="master.5.html">mas-
               ter.cf</a> name of the message delivery transport.
 
 <b>DELIVERY CONCURRENCY CONTROLS</b>
@@ -244,12 +245,12 @@ QMGR(8)                                                                QMGR(8)
               delivery to the same destination.
 
        <b><a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a> (20)</b>
-              The  default  maximal  number of parallel deliveries to the same
+              The default maximal number of parallel deliveries  to  the  same
               destination.
 
        <b>transport_destination_concurrency_limit   ($<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concur</a>-</b>
        <b><a href="postconf.5.html#default_destination_concurrency_limit">rency_limit</a>)</b>
-              A transport-specific override for  the  default_destination_con-
+              A  transport-specific  override for the default_destination_con-
               currency_limit parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
               name of the message delivery transport.
 
@@ -257,45 +258,45 @@ QMGR(8)                                                                QMGR(8)
 
        <b>transport_initial_destination_concurrency ($<a href="postconf.5.html#initial_destination_concurrency">initial_destination_concur</a>-</b>
        <b><a href="postconf.5.html#initial_destination_concurrency">rency</a>)</b>
-              A transport-specific override for  the  initial_destination_con-
-              currency  parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name
+              A  transport-specific  override for the initial_destination_con-
+              currency parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a>  name
               of the message delivery transport.
 
        <b><a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a> (1)</b>
-              How many pseudo-cohorts  must  suffer  connection  or  handshake
-              failure  before a specific destination is considered unavailable
+              How  many  pseudo-cohorts  must  suffer  connection or handshake
+              failure before a specific destination is considered  unavailable
               (and further delivery is suspended).
 
        <b>transport_destination_concurrency_failed_cohort_limit  ($<a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_desti</a>-</b>
        <b><a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">nation_concurrency_failed_cohort_limit</a>)</b>
-              A transport-specific override for  the  <a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_con</a>-
+              A  transport-specific  override for the <a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_con</a>-
               <a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">currency_failed_cohort_limit</a> parameter value, where <i>transport</i> is
               the <a href="master.5.html">master.cf</a> name of the message delivery transport.
 
        <b><a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a> (1)</b>
-              The per-destination  amount  of  delivery  concurrency  negative
-              feedback,  after a delivery completes with a connection or hand-
+              The  per-destination  amount  of  delivery  concurrency negative
+              feedback, after a delivery completes with a connection or  hand-
               shake failure.
 
        <b>transport_destination_concurrency_negative_feedback  ($<a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destina</a>-</b>
        <b><a href="postconf.5.html#default_destination_concurrency_negative_feedback">tion_concurrency_negative_feedback</a>)</b>
-              A transport-specific override for  the  default_destination_con-
-              currency_negative_feedback  parameter  value, where <i>transport</i> is
+              A  transport-specific  override for the default_destination_con-
+              currency_negative_feedback parameter value, where  <i>transport</i>  is
               the <a href="master.5.html">master.cf</a> name of the message delivery transport.
 
        <b><a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a> (1)</b>
-              The per-destination  amount  of  delivery  concurrency  positive
+              The  per-destination  amount  of  delivery  concurrency positive
               feedback, after a delivery completes without connection or hand-
               shake failure.
 
        <b>transport_destination_concurrency_positive_feedback  ($<a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destina</a>-</b>
        <b><a href="postconf.5.html#default_destination_concurrency_positive_feedback">tion_concurrency_positive_feedback</a>)</b>
-              A transport-specific override for  the  default_destination_con-
-              currency_positive_feedback  parameter  value, where <i>transport</i> is
+              A  transport-specific  override for the default_destination_con-
+              currency_positive_feedback parameter value, where  <i>transport</i>  is
               the <a href="master.5.html">master.cf</a> name of the message delivery transport.
 
        <b><a href="postconf.5.html#destination_concurrency_feedback_debug">destination_concurrency_feedback_debug</a> (no)</b>
-              Make the queue manager's feedback algorithm verbose for  perfor-
+              Make  the queue manager's feedback algorithm verbose for perfor-
               mance analysis purposes.
 
 <b>RECIPIENT SCHEDULING CONTROLS</b>
@@ -305,25 +306,25 @@ QMGR(8)                                                                QMGR(8)
        <b>transport_destination_recipient_limit     ($<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipi</a>-</b>
        <b><a href="postconf.5.html#default_destination_recipient_limit">ent_limit</a>)</b>
               A transport-specific override for the <a href="postconf.5.html#default_destination_recipient_limit">default_destination_recip</a>-
-              <a href="postconf.5.html#default_destination_recipient_limit">ient_limit</a> parameter value, where  <i>transport</i>  is  the  <a href="master.5.html">master.cf</a>
+              <a href="postconf.5.html#default_destination_recipient_limit">ient_limit</a>  parameter  value,  where  <i>transport</i> is the <a href="master.5.html">master.cf</a>
               name of the message delivery transport.
 
 <b>MESSAGE SCHEDULING CONTROLS</b>
        <b><a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a> (5)</b>
-              How  often  the  Postfix queue manager's scheduler is allowed to
+              How often the Postfix queue manager's scheduler  is  allowed  to
               preempt delivery of one message with another.
 
        <b>transport_delivery_slot_cost ($<a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a>)</b>
               A transport-specific override for the <a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a>
-              parameter  value,  where  <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the
+              parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a>  name  of  the
               message delivery transport.
 
        <b><a href="postconf.5.html#default_minimum_delivery_slots">default_minimum_delivery_slots</a> (3)</b>
-              How many recipients a message must have in order to  invoke  the
+              How  many  recipients a message must have in order to invoke the
               Postfix queue manager's scheduling algorithm at all.
 
        <b>transport_minimum_delivery_slots ($<a href="postconf.5.html#default_minimum_delivery_slots">default_minimum_delivery_slots</a>)</b>
-              A  transport-specific  override  for  the <a href="postconf.5.html#default_minimum_delivery_slots">default_minimum_deliv</a>-
+              A transport-specific  override  for  the  <a href="postconf.5.html#default_minimum_delivery_slots">default_minimum_deliv</a>-
               <a href="postconf.5.html#default_minimum_delivery_slots">ery_slots</a> parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name
               of the message delivery transport.
 
@@ -333,16 +334,16 @@ QMGR(8)                                                                QMGR(8)
 
        <b>transport_delivery_slot_discount ($<a href="postconf.5.html#default_delivery_slot_discount">default_delivery_slot_discount</a>)</b>
               A transport-specific override for the default_delivery_slot_dis-
-              count  parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
+              count parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name  of
               the message delivery transport.
 
        <b><a href="postconf.5.html#default_delivery_slot_loan">default_delivery_slot_loan</a> (3)</b>
-              The default  value  for  transport-specific  _delivery_slot_loan
+              The  default  value  for  transport-specific _delivery_slot_loan
               settings.
 
        <b>transport_delivery_slot_loan ($<a href="postconf.5.html#default_delivery_slot_loan">default_delivery_slot_loan</a>)</b>
               A transport-specific override for the <a href="postconf.5.html#default_delivery_slot_loan">default_delivery_slot_loan</a>
-              parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a>  name  of  the
+              parameter  value,  where  <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the
               message delivery transport.
 
 <b>OTHER RESOURCE AND RATE CONTROLS</b>
@@ -354,32 +355,31 @@ QMGR(8)                                                                QMGR(8)
               The maximal time between attempts to deliver a deferred message.
 
        <b><a href="postconf.5.html#maximal_queue_lifetime">maximal_queue_lifetime</a> (5d)</b>
-              Consider  a message as undeliverable, when delivery fails with a
+              Consider a message as undeliverable, when delivery fails with  a
               temporary error, and the time in the queue has reached the <a href="postconf.5.html#maximal_queue_lifetime">maxi</a>-
               <a href="postconf.5.html#maximal_queue_lifetime">mal_queue_lifetime</a> limit.
 
        <b><a href="postconf.5.html#queue_run_delay">queue_run_delay</a> (300s)</b>
-              The  time  between  <a href="QSHAPE_README.html#deferred_queue">deferred  queue</a>  scans by the queue manager;
+              The time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a>  scans  by  the  queue  manager;
               prior to Postfix 2.4 the default value was 1000s.
 
        <b><a href="postconf.5.html#transport_retry_time">transport_retry_time</a> (60s)</b>
-              The time between attempts by the Postfix queue manager  to  con-
+              The  time  between attempts by the Postfix queue manager to con-
               tact a malfunctioning message delivery transport.
 
        Available in Postfix version 2.1 and later:
 
        <b><a href="postconf.5.html#bounce_queue_lifetime">bounce_queue_lifetime</a> (5d)</b>
-              Consider  a bounce message as undeliverable, when delivery fails
-              with a temporary error, and the time in the  queue  has  reached
+              Consider a bounce message as undeliverable, when delivery  fails
+              with  a  temporary  error, and the time in the queue has reached
               the <a href="postconf.5.html#bounce_queue_lifetime">bounce_queue_lifetime</a> limit.
 
        Available in Postfix version 2.5 and later:
 
        <b><a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a> (0s)</b>
-              The  default amount of delay that is inserted between individual
-              deliveries to  the  same  destination;  the  resulting  behavior
-              depends on the value of the corresponding per-destination recip-
-              ient limit.
+              The default amount of delay that is inserted between  individual
+              message  deliveries  to  the  same destination and over the same
+              message delivery transport.
 
        <b>transport_destination_rate_delay ($<a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a>)</b>
               A   transport-specific   override   for   the   <a href="postconf.5.html#default_destination_rate_delay">default_destina</a>-
@@ -390,8 +390,8 @@ QMGR(8)                                                                QMGR(8)
 
        <b><a href="postconf.5.html#default_transport_rate_delay">default_transport_rate_delay</a> (0s)</b>
               The default amount of delay that is inserted between  individual
-              deliveries  over the same message delivery transport, regardless
-              of destination.
+              message  deliveries  over  the  same message delivery transport,
+              regardless of destination.
 
        <b>transport_transport_rate_delay ($<a href="postconf.5.html#default_transport_rate_delay">default_transport_rate_delay</a>)</b>
               A   transport-specific   override   for    the    <a href="postconf.5.html#default_transport_rate_delay">default_trans</a>-
@@ -472,6 +472,7 @@ QMGR(8)                                                                QMGR(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index ef4120d4805238d7de30c135d5439b1c9f10a8a8..4086cec53c19860ecf943e77a635ff04c06dd53e 100644 (file)
@@ -27,7 +27,7 @@ QMQPD(8)                                                              QMQPD(8)
        chrooted at fixed low privilege.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>BUGS</b>
        The  QMQP protocol provides only one server reply per message delivery.
@@ -169,6 +169,7 @@ QMQPD(8)                                                              QMQPD(8)
        <a href="http://cr.yp.to/proto/qmqp.html">http://cr.yp.to/proto/qmqp.html</a>, QMQP protocol
        <a href="cleanup.8.html">cleanup(8)</a>, message canonicalization
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 3aa5a7471dd46de958b7bc6cc6dee02f8eebbd65..6b2512678d250d71f21b289a1a3c9eb973e1737e 100644 (file)
@@ -73,7 +73,7 @@ SCACHE(8)                                                            SCACHE(8)
        store information that is security sensitive.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>BUGS</b>
        The session cache cannot be shared among multiple machines.
@@ -138,6 +138,7 @@ SCACHE(8)                                                            SCACHE(8)
        <a href="smtp.8.html">smtp(8)</a>, SMTP client
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 0d416c931e5d954ad38062a67bf1970db4b04a3a..02f20fe8913d3963b9dd36d8887fe0eb3d9987d6 100644 (file)
@@ -285,7 +285,8 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        precautions need to be taken against malicious inputs.
 
 <b>DIAGNOSTICS</b>
-       Problems are logged to <b>syslogd</b>(8) and to the standard error stream.
+       Problems  are  logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>, and to the standard
+       error stream.
 
 <b>ENVIRONMENT</b>
        <b>MAIL_CONFIG</b>
@@ -298,12 +299,12 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               Enable debugging with an external command, as specified with the
               <b><a href="postconf.5.html#debugger_command">debugger_command</a></b> configuration parameter.
 
-       <b>NAME</b>   The sender full name. This is used only with messages that  have
+       <b>NAME</b>   The  sender full name. This is used only with messages that have
               no <b>From:</b> message header. See also the <b>-F</b> option above.
 
 <b>CONFIGURATION PARAMETERS</b>
-       The  following  <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to this pro-
-       gram.  The text below provides only  a  parameter  summary.  See  <a href="postconf.5.html"><b>post-</b></a>
+       The following <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant to  this  pro-
+       gram.   The  text  below  provides  only a parameter summary. See <a href="postconf.5.html"><b>post-</b></a>
        <a href="postconf.5.html"><b>conf</b>(5)</a> for more details including examples.
 
 <b>COMPATIBILITY CONTROLS</b>
@@ -314,7 +315,7 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               line endings from &lt;CR&gt;&lt;LF&gt; into UNIX format (&lt;LF&gt;).
 
 <b>TROUBLE SHOOTING CONTROLS</b>
-       The <a href="DEBUG_README.html">DEBUG_README</a> file gives examples of how to troubleshoot  a  Postfix
+       The  <a href="DEBUG_README.html">DEBUG_README</a>  file gives examples of how to troubleshoot a Postfix
        system.
 
        <b><a href="postconf.5.html#debugger_command">debugger_command</a> (empty)</b>
@@ -322,11 +323,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               invoked with the -D option.
 
        <b><a href="postconf.5.html#debug_peer_level">debug_peer_level</a> (2)</b>
-              The increment in verbose logging level when a remote  client  or
+              The  increment  in verbose logging level when a remote client or
               server matches a pattern in the <a href="postconf.5.html#debug_peer_list">debug_peer_list</a> parameter.
 
        <b><a href="postconf.5.html#debug_peer_list">debug_peer_list</a> (empty)</b>
-              Optional  list  of  remote  client or server hostname or network
+              Optional list of remote client or  server  hostname  or  network
               address  patterns  that  cause  the  verbose  logging  level  to
               increase by the amount specified in $<a href="postconf.5.html#debug_peer_level">debug_peer_level</a>.
 
@@ -340,13 +341,13 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               List of users who are authorized to view the queue.
 
        <b><a href="postconf.5.html#authorized_submit_users">authorized_submit_users</a> (<a href="DATABASE_README.html#types">static</a>:anyone)</b>
-              List  of  users who are authorized to submit mail with the <a href="sendmail.1.html"><b>send-</b></a>
+              List of users who are authorized to submit mail with  the  <a href="sendmail.1.html"><b>send-</b></a>
               <a href="sendmail.1.html"><b>mail</b>(1)</a> command (and with the privileged <a href="postdrop.1.html"><b>postdrop</b>(1)</a> helper com-
               mand).
 
 <b>RESOURCE AND RATE CONTROLS</b>
        <b><a href="postconf.5.html#bounce_size_limit">bounce_size_limit</a> (50000)</b>
-              The  maximal  amount  of original message text that is sent in a
+              The maximal amount of original message text that is  sent  in  a
               non-delivery notification.
 
        <b><a href="postconf.5.html#fork_attempts">fork_attempts</a> (5)</b>
@@ -360,11 +361,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               in the primary message headers.
 
        <b><a href="postconf.5.html#queue_run_delay">queue_run_delay</a> (300s)</b>
-              The  time  between  <a href="QSHAPE_README.html#deferred_queue">deferred  queue</a>  scans by the queue manager;
+              The time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a>  scans  by  the  queue  manager;
               prior to Postfix 2.4 the default value was 1000s.
 
 <b>FAST FLUSH CONTROLS</b>
-       The <a href="ETRN_README.html">ETRN_README</a> file describes configuration and operation details  for
+       The  <a href="ETRN_README.html">ETRN_README</a> file describes configuration and operation details for
        the Postfix "fast flush" service.
 
        <b><a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a> ($<a href="postconf.5.html#relay_domains">relay_domains</a>)</b>
@@ -372,26 +373,26 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               tion logfiles with mail that is queued to those destinations.
 
 <b>VERP CONTROLS</b>
-       The <a href="VERP_README.html">VERP_README</a> file describes configuration and operation  details  of
+       The  <a href="VERP_README.html">VERP_README</a>  file describes configuration and operation details of
        Postfix support for variable envelope return path addresses.
 
        <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a> (+=)</b>
               The two default VERP delimiter characters.
 
        <b><a href="postconf.5.html#verp_delimiter_filter">verp_delimiter_filter</a> (-=+)</b>
-              The  characters  Postfix accepts as VERP delimiter characters on
+              The characters Postfix accepts as VERP delimiter  characters  on
               the Postfix <a href="sendmail.1.html"><b>sendmail</b>(1)</a> command line and in SMTP commands.
 
 <b>MISCELLANEOUS CONTROLS</b>
        <b><a href="postconf.5.html#alias_database">alias_database</a> (see 'postconf -d' output)</b>
-              The alias databases for <a href="local.8.html"><b>local</b>(8)</a> delivery that are updated  with
+              The  alias databases for <a href="local.8.html"><b>local</b>(8)</a> delivery that are updated with
               "<b>newaliases</b>" or with "<b>sendmail -bi</b>".
 
        <b><a href="postconf.5.html#command_directory">command_directory</a> (see 'postconf -d' output)</b>
               The location of all postfix administrative commands.
 
        <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
-              The  default  location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a> con-
+              The default location of the Postfix <a href="postconf.5.html">main.cf</a> and  <a href="master.5.html">master.cf</a>  con-
               figuration files.
 
        <b><a href="postconf.5.html#daemon_directory">daemon_directory</a> (see 'postconf -d' output)</b>
@@ -402,46 +403,46 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               and <a href="postmap.1.html"><b>postmap</b>(1)</a> commands.
 
        <b><a href="postconf.5.html#delay_warning_time">delay_warning_time</a> (0h)</b>
-              The time after which the sender receives a copy of  the  message
+              The  time  after which the sender receives a copy of the message
               headers of mail that is still queued.
 
        <b><a href="postconf.5.html#import_environment">import_environment</a> (see 'postconf -d' output)</b>
-              The  list  of  environment  parameters that a privileged Postfix
-              process will  import  from  a  non-Postfix  parent  process,  or
+              The list of environment parameters  that  a  privileged  Postfix
+              process  will  import  from  a  non-Postfix  parent  process, or
               name=value environment overrides.
 
        <b><a href="postconf.5.html#mail_owner">mail_owner</a> (postfix)</b>
-              The  UNIX  system  account  that owns the Postfix queue and most
+              The UNIX system account that owns the  Postfix  queue  and  most
               Postfix daemon processes.
 
        <b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b>
               The location of the Postfix top-level queue directory.
 
        <b><a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> (empty)</b>
-              Don't rewrite message headers from remote clients  at  all  when
-              this  parameter is empty; otherwise, rewrite message headers and
+              Don't  rewrite  message  headers from remote clients at all when
+              this parameter is empty; otherwise, rewrite message headers  and
               append the specified domain name to incomplete addresses.
 
        <b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
               The syslog facility of Postfix logging.
 
        <b><a href="postconf.5.html#syslog_name">syslog_name</a> (see 'postconf -d' output)</b>
-              A prefix that  is  prepended  to  the  process  name  in  syslog
+              A  prefix  that  is  prepended  to  the  process  name in syslog
               records, so that, for example, "smtpd" becomes "prefix/smtpd".
 
        Postfix 3.2 and later:
 
        <b><a href="postconf.5.html#alternate_config_directories">alternate_config_directories</a> (empty)</b>
               A list of non-default Postfix configuration directories that may
-              be specified with "-c <a href="postconf.5.html#config_directory">config_directory</a>" on the command line  (in
-              the  case  of  <a href="sendmail.1.html"><b>sendmail</b>(1)</a>,  with  the  "-C" option), or via the
+              be  specified with "-c <a href="postconf.5.html#config_directory">config_directory</a>" on the command line (in
+              the case of <a href="sendmail.1.html"><b>sendmail</b>(1)</a>, with  the  "-C"  option),  or  via  the
               MAIL_CONFIG environment parameter.
 
        <b><a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a> (empty)</b>
-              An optional list of non-default Postfix  configuration  directo-
-              ries;  these  directories belong to additional Postfix instances
-              that share the Postfix executable files and  documentation  with
-              the  default  Postfix  instance,  and that are started, stopped,
+              An  optional  list of non-default Postfix configuration directo-
+              ries; these directories belong to additional  Postfix  instances
+              that  share  the Postfix executable files and documentation with
+              the default Postfix instance, and  that  are  started,  stopped,
               etc., together with the default Postfix instance.
 
 <b>FILES</b>
@@ -458,10 +459,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        <a href="postdrop.1.html">postdrop(1)</a>, mail posting utility
        <a href="postfix.1.html">postfix(1)</a>, mail system control
        <a href="postqueue.1.html">postqueue(1)</a>, mail queue control
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README_FILES</b>
-       Use "<b>postconf <a href="postconf.5.html#readme_directory">readme_directory</a></b>" or "<b>postconf <a href="postconf.5.html#html_directory">html_directory</a></b>" to  locate
+       Use  "<b>postconf <a href="postconf.5.html#readme_directory">readme_directory</a></b>" or "<b>postconf <a href="postconf.5.html#html_directory">html_directory</a></b>" to locate
        this information.
        <a href="DEBUG_README.html">DEBUG_README</a>, Postfix debugging howto
        <a href="ETRN_README.html">ETRN_README</a>, Postfix ETRN howto
index 5a5b563eac968e8e1871d972e03f4fbfbc0fa433..e95ce0f32da4fb2a02247613bd65ceb40b75fa04 100644 (file)
@@ -31,7 +31,7 @@ SHOWQ(8)                                                              SHOWQ(8)
        None. The <a href="showq.8.html"><b>showq</b>(8)</a> daemon does not interact with the outside world.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>CONFIGURATION PARAMETERS</b>
        Changes to <a href="postconf.5.html"><b>main.cf</b></a> are picked up automatically  as  <a href="showq.8.html"><b>showq</b>(8)</a>  processes
@@ -104,6 +104,7 @@ SHOWQ(8)                                                              SHOWQ(8)
        <a href="qmgr.8.html">qmgr(8)</a>, queue manager
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index 4bba215ad7d5e42a1d24f85903fb9e0eabf10bb1..ee724df5154111995ea19a62e20f23e0cac7fdff 100644 (file)
@@ -112,9 +112,9 @@ SMTP(8)                                                                SMTP(8)
        <a href="http://tools.ietf.org/html/rfc7672">RFC 7672</a> (SMTP security via opportunistic DANE TLS)
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).  Corrupted  message
-       files are marked so that the queue manager can move them to the <b>corrupt</b>
-       queue for further inspection.
+       Problems and transactions are  logged  to  <b>syslogd</b>(8)  or  <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
+       Corrupted  message  files are marked so that the queue manager can move
+       them to the <b>corrupt</b> queue for further inspection.
 
        Depending on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter, the  postmas-
        ter is notified of bounces, protocol problems, and of other trouble.
@@ -913,6 +913,7 @@ SMTP(8)                                                                SMTP(8)
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
        <a href="tlsmgr.8.html">tlsmgr(8)</a>, TLS session and PRNG management
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 367e73472dc69ceafb2851ade3aa02b738dccbe9..d019b52e01c572af15a3b67ca1ae6ae028ea2423 100644 (file)
@@ -63,7 +63,7 @@ SMTPD(8)                                                              SMTPD(8)
        <a href="http://tools.ietf.org/html/rfc7505">RFC 7505</a> ("Null MX" No Service Resource Record)
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
        Depending on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter, the  postmas-
        ter  is  notified of bounces, protocol problems, policy violations, and
@@ -1317,6 +1317,7 @@ SMTPD(8)                                                              SMTPD(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 17166a9cd220471e72d9fe038e4f4d88962b2004..51bb9045db5884066f5746a1f078c0e77ab75959 100644 (file)
@@ -51,7 +51,7 @@ SPAWN(8)                                                              SPAWN(8)
 
 <b>DIAGNOSTICS</b>
        The  <a href="spawn.8.html"><b>spawn</b>(8)</a> daemon reports abnormal child exits.  Problems are logged
-       to <b>syslogd</b>(8).
+       to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>SECURITY</b>
        This program needs root privilege in order to execute external commands
@@ -129,6 +129,7 @@ SPAWN(8)                                                              SPAWN(8)
 <b>SEE ALSO</b>
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index 1c26f4fe087b0b81ed27c40f5306f9ae39d5645a..7f3ac18737a5c8b80722df3f499ff8576a0e2fa7 100644 (file)
@@ -50,7 +50,7 @@ TLSMGR(8)                                                            TLSMGR(8)
        Postfix-owned <b><a href="postconf.5.html#data_directory">data_directory</a></b>, and a warning is logged.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to the syslog daemon.
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>BUGS</b>
        There is no automatic means to limit the number of entries in  the  TLS
@@ -160,6 +160,7 @@ TLSMGR(8)                                                            TLSMGR(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 38067f9934202ca145aee4d8dc6f46238c08467c..5b9e73d220c6d63ef1314a0566aa2d75fdf3b75d 100644 (file)
@@ -45,7 +45,7 @@ TLSPROXY(8)                                                        TLSPROXY(8)
        fixed low privilege.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>CONFIGURATION PARAMETERS</b>
        Changes to <a href="postconf.5.html"><b>main.cf</b></a> are not picked up automatically, as <a href="tlsproxy.8.html"><b>tlsproxy</b>(8)</a> pro-
@@ -296,7 +296,8 @@ TLSPROXY(8)                                                        TLSPROXY(8)
        <a href="postscreen.8.html">postscreen(8)</a>, Postfix zombie blocker
        <a href="smtpd.8.html">smtpd(8)</a>, Postfix SMTP server
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
-       syslogd(5), system logging
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
+       syslogd(8), system logging
 
 <b>LICENSE</b>
        The Secure Mailer license must be distributed with this software.
index 9f6a7a8b402e320bbf6334ef5f0a903181161b19..67801211a20c30d3f602b1dd00a77c96a2c0080d 100644 (file)
@@ -51,7 +51,7 @@ BOUNCE(8)                                                            BOUNCE(8)
        <a href="http://tools.ietf.org/html/rfc6533">RFC 6533</a> (Internationalized Delivery Status Notifications)
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>CONFIGURATION PARAMETERS</b>
        Changes to <a href="postconf.5.html"><b>main.cf</b></a> are picked up automatically, as <a href="bounce.8.html"><b>bounce</b>(8)</a>  processes
@@ -164,6 +164,7 @@ BOUNCE(8)                                                            BOUNCE(8)
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.5.html">master(5)</a>, generic daemon options
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>LICENSE</b>
index fa8c34f6b9cc593959db926e75a7b5daf0a86484..d5e2fdc1f18f1a2ffdbef9bd9e6761be3c97098e 100644 (file)
@@ -73,7 +73,7 @@ TRIVIAL-REWRITE(8)                                          TRIVIAL-REWRITE(8)
        fixed low privilege in a chrooted environment.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>CONFIGURATION PARAMETERS</b>
        On busy mail systems a long time  may  pass  before  a  <a href="postconf.5.html"><b>main.cf</b></a>  change
@@ -308,6 +308,7 @@ TRIVIAL-REWRITE(8)                                          TRIVIAL-REWRITE(8)
        <a href="transport.5.html">transport(5)</a>, transport table format
        <a href="relocated.5.html">relocated(5)</a>, format of the "user has moved" table
        <a href="master.8.html">master(8)</a>, process manager
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README FILES</b>
index 3443f458db6f7b7183f50b6af79796ab93c38d1f..f1805b01ae37a6c59be4e26f7d209fd97d7744e1 100644 (file)
@@ -58,7 +58,7 @@ VERIFY(8)                                                            VERIFY(8)
        warning is logged.
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).
+       Problems and transactions are logged to <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
 
 <b>BUGS</b>
        Address verification probe messages add additional traffic to the  mail
@@ -214,7 +214,8 @@ VERIFY(8)                                                            VERIFY(8)
        <a href="smtpd.8.html">smtpd(8)</a>, Postfix SMTP server
        <a href="cleanup.8.html">cleanup(8)</a>, enqueue Postfix message
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
-       syslogd(5), system logging
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
+       syslogd(8), system logging
 
 <b>README FILES</b>
        <a href="ADDRESS_VERIFICATION_README.html">ADDRESS_VERIFICATION_README</a>, address verification howto
index 27709b00072690bfe0b90e2428eb4cb326ad7e91..3373eb3b517b27a6e3312ec5577d54d7b59bba42 100644 (file)
@@ -125,9 +125,9 @@ VIRTUAL(8)                                                          VIRTUAL(8)
        over  disk quota. In all other cases, mail for an existing recipient is
        deferred and a warning is logged.
 
-       Problems and transactions are logged to <b>syslogd</b>(8).  Corrupted  message
-       files are marked so that the queue manager can move them to the <b>corrupt</b>
-       queue afterwards.
+       Problems and transactions are  logged  to  <b>syslogd</b>(8)  or  <a href="postlogd.8.html"><b>postlogd</b>(8)</a>.
+       Corrupted  message  files are marked so that the queue manager can move
+       them to the <b>corrupt</b> queue afterwards.
 
        Depending on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter, the  postmas-
        ter is notified of bounces and of other trouble.
@@ -283,6 +283,7 @@ VIRTUAL(8)                                                          VIRTUAL(8)
        <a href="qmgr.8.html">qmgr(8)</a>, queue manager
        <a href="bounce.8.html">bounce(8)</a>, delivery status reports
        <a href="postconf.5.html">postconf(5)</a>, configuration parameters
+       <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging
        syslogd(8), system logging
 
 <b>README_FILES</b>
index 5b16e1fb308ef978fc67b4d1a4e672aaea678d47..e276a11bacafdba5693883bc512516768c8432e2 100644 (file)
@@ -882,7 +882,7 @@ CCARGS="$CCARGS -DSNAPSHOT"
 
 # Non-production: needs thorough testing, or major changes are still
 # needed before the code stabilizes.
-#CCARGS="$CCARGS -DNONPROD"
+CCARGS="$CCARGS -DNONPROD"
 
 # Workaround: prepend Postfix include files before other include files.
 CCARGS="-I. -I../../include $CCARGS"
index ba4c605dbc3900a0d996399e0d996d568925929a..0f47fe404215a10fe63482f9d82e0a7d58d262a1 100644 (file)
@@ -155,7 +155,7 @@ The name of the alias database source file when creating a database.
 .ad
 .fi
 Problems are logged to the standard error stream and to
-\fBsyslogd\fR(8) No output means that
+\fBsyslogd\fR(8) or \fBpostlogd\fR(8). No output means that
 no problems were detected. Duplicate entries are skipped and are
 flagged with a warning.
 
@@ -221,6 +221,7 @@ postconf(1), supported database types
 postconf(5), configuration parameters
 postmap(1), create/update/query lookup tables
 newaliases(1), Sendmail compatibility interface.
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index 674b0e57c3a32b2f435a40dc386eb13b7c42630d..10f638fd16c4e0a0d7530d7f89ffd4f054ee9159 100644 (file)
@@ -40,7 +40,8 @@ it can connect to Postfix daemon processes.
 .ad
 .fi
 Fatal errors: malformed input, I/O error, out of memory. Problems
-are logged to \fBsyslogd\fR(8) and to the standard error stream.
+are logged to \fBsyslogd\fR(8) or \fBpostlogd\fR(8) and to
+the standard error stream.
 When the input is incomplete, or when the process receives a HUP,
 INT, QUIT or TERM signal, the queue file is deleted.
 .SH "ENVIRONMENT"
@@ -104,6 +105,7 @@ command (and with the privileged \fBpostdrop\fR(1) helper command).
 .nf
 sendmail(1), compatibility interface
 postconf(5), configuration parameters
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "LICENSE"
 .na
index 435c49bdc76da0dc932d529d8e4fdaa7d7222f92..87f537d18520fbaf3bc39ef80bd108cfc88136e3 100644 (file)
@@ -23,7 +23,8 @@ line as one record. If no \fItext\fR is specified on the command
 line, \fBpostlog\fR(1) reads from standard input and logs each input
 line as one record.
 
-By default, logging is sent to \fBsyslogd\fR(8); when the
+By default, logging is sent to \fBsyslogd\fR(8) or
+\fBpostlogd\fR(8); when the
 standard error stream is connected to a terminal, logging
 is sent there as well.
 
@@ -87,8 +88,8 @@ The name of the \fBpostlogd\fR(8) service entry in master.cf.
 .na
 .nf
 postconf(5), configuration parameters
-syslogd(8), syslog daemon
-postlogd(8), internal logging service
+postlogd(8), Postfix logging
+syslogd(8), system logging
 .SH "LICENSE"
 .na
 .nf
index bfb06328d794677b3d16932f5dbe5b2f15f06c49..7f08fd8afd85a3137c3d9d8a6ddcc45be44b4af6 100644 (file)
@@ -242,7 +242,7 @@ The name of the lookup table source file when rebuilding a database.
 .ad
 .fi
 Problems are logged to the standard error stream and to
-\fBsyslogd\fR(8).
+\fBsyslogd\fR(8) or \fBpostlogd\fR(8).
 No output means that no problems were detected. Duplicate entries are
 skipped and are flagged with a warning.
 
@@ -297,6 +297,7 @@ records, so that, for example, "smtpd" becomes "prefix/smtpd".
 postalias(1), create/update/query alias database
 postconf(1), supported database types
 postconf(5), configuration parameters
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index 7d70dafe3140dd71a2f118d4edf77473f10a70b3..1edc75b2de83ec574851b0e1fc4214f47a56f269 100644 (file)
@@ -151,8 +151,8 @@ RFC 7159 (JSON notation)
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems are logged to \fBsyslogd\fR(8) and to the standard error
-stream.
+Problems are logged to \fBsyslogd\fR(8) or \fBpostlogd\fR(8),
+and to the standard error stream.
 .SH "ENVIRONMENT"
 .na
 .nf
@@ -223,6 +223,8 @@ showq(8), list mail queue
 flush(8), fast flush service
 sendmail(1), Sendmail\-compatible user interface
 postsuper(1), privileged queue operations
+postlogd(8), Postfix logging
+syslogd(8), system logging
 .SH "README FILES"
 .na
 .nf
index cfae09d65ef0d9833717a9db789567e6b857a959..e165edfdd056575f04a8eebc72f81c5f2c55b10a 100644 (file)
@@ -208,12 +208,13 @@ options make the software increasingly verbose.
 .ad
 .fi
 Problems are reported to the standard error stream and to
-\fBsyslogd\fR(8).
+\fBsyslogd\fR(8) or \fBpostlogd\fR(8).
 
 \fBpostsuper\fR(1) reports the number of messages deleted with \fB\-d\fR,
 the number of messages requeued with \fB\-r\fR, and the number of
 messages whose queue file name was fixed with \fB\-s\fR. The report
-is written to the standard error stream and to \fBsyslogd\fR(8).
+is written to the standard error stream and to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH "ENVIRONMENT"
 .na
 .nf
@@ -264,6 +265,8 @@ Enable long, non\-repeating, queue IDs (queue file names).
 .nf
 sendmail(1), Sendmail\-compatible user interface
 postqueue(1), unprivileged queue operations
+postlogd(8), Postfix logging
+syslogd(8), system logging
 .SH "LICENSE"
 .na
 .nf
index 3d5d984ccc98760950bdce3b941277df9129fff7..e52861b1b736499610ab6a77c25029f5e9940c87 100644 (file)
@@ -265,8 +265,8 @@ inputs.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems are logged to \fBsyslogd\fR(8) and to the standard error
-stream.
+Problems are logged to \fBsyslogd\fR(8) or \fBpostlogd\fR(8),
+and to the standard error stream.
 .SH "ENVIRONMENT"
 .na
 .nf
@@ -441,6 +441,7 @@ postalias(1), create/update/query alias database
 postdrop(1), mail posting utility
 postfix(1), mail system control
 postqueue(1), mail queue control
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README_FILES"
 .na
index d4a153d0b3f333a55ef961315176f8dec38df2c7..4a92d179cb7e1783153b55a8269f8a51f1411ae7 100644 (file)
@@ -3750,9 +3750,9 @@ substitutions in regular expression maps.
 This feature is available in Postfix 2.3 and later.
 .SH maillog_file (default: empty)
 The name of an optional logfile that is written by the Postfix
-\fBpostlogd\fR(8) service. A non\-empty value disables logging to \fBsyslogd\fR(8).
-Specify "/dev/stdout" for logging to standard output. Stdout logging
-requires that Postfix is started with "postfix start\-fg".
+\fBpostlogd\fR(8) service. A non\-empty value selects logging to \fBsyslogd\fR(8).
+Specify "/dev/stdout" to select logging to standard output. Stdout
+logging requires that Postfix is started with "postfix start\-fg".
 .PP
 Note 1: The maillog_file parameter value must contain a prefix
 that is specified with the maillog_file_prefixes parameter.
@@ -3764,8 +3764,8 @@ parameters and command\-line options.
 This feature is available in Postfix 3.4 and later.
 .SH maillog_file_compressor (default: gzip)
 The program to run after rotating $maillog_file with "postfix
-logrotate". The command is run with the rotated file as its first
-argument.
+logrotate". The command is run with the rotated logfile name as its
+first argument.
 .PP
 This feature is available in Postfix 3.4 and later.
 .SH maillog_file_prefixes (default: /var, /dev/stdout)
index 61d632d0f2dbee260dd9314922a6e495d58b2816..89ea9a6c393da4c9c491ac477cdba397def84fa6 100644 (file)
@@ -185,7 +185,8 @@ the time unit over which state is kept.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 
 Upon exit, and every \fBanvil_status_update_time\fR
 seconds, the server logs the maximal count and rate values measured,
index 846de4ea9ffebd8b41441095887986b106406e65..a91b8a71e31882c0e39714d3a1bc72bda3f076cf 100644 (file)
@@ -54,7 +54,8 @@ RFC 6533 (Internationalized Delivery Status Notifications)
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH "CONFIGURATION PARAMETERS"
 .na
 .nf
@@ -149,6 +150,7 @@ qmgr(8), queue manager
 postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "LICENSE"
 .na
index 6215c2381a64ff8b490c65bd08676b261142b02a..d3df1f042d4262ddff9f82912f1bb7fd0183d06c 100644 (file)
@@ -64,7 +64,8 @@ RFC 5322 (Internet Message Format)
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH BUGS
 .ad
 .fi
@@ -286,7 +287,7 @@ Optional list of domains whose subdomain structure will be stripped
 off in email addresses.
 .IP "\fBmasquerade_exceptions (empty)\fR"
 Optional list of user names that are not subjected to address
-masquerading, even when their address matches $masquerade_domains.
+masquerading, even when their addresses match $masquerade_domains.
 .IP "\fBpropagate_unmatched_extensions (canonical, virtual)\fR"
 What address lookup tables copy an address extension from the lookup
 key to the lookup result.
@@ -448,6 +449,7 @@ virtual(5), virtual alias lookup table format
 postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index 109a937a1ef05fce6ec94b18d755283d36cbef2a..7823891490585713ee9af3e0340e9d8f021ac22f 100644 (file)
@@ -43,7 +43,8 @@ RFC 3463 (Enhanced Status Codes)
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 
 Depending on the setting of the \fBnotify_classes\fR parameter,
 the postmaster is notified of bounces and of other trouble.
@@ -103,6 +104,7 @@ error(8), Postfix error delivery agent
 postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "LICENSE"
 .na
index 7ad077dbf5e1e2f363bfe4c79be62e6ff3492b4b..809e4efe57e8cdaccbd77bcb556350ba537aeaf7 100644 (file)
@@ -34,7 +34,8 @@ Finally, the \fBdnsblog\fR(8) server closes the connection.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH "CONFIGURATION PARAMETERS"
 .na
 .nf
@@ -79,7 +80,8 @@ The master.cf service name of a Postfix daemon process.
 .nf
 smtpd(8), Postfix SMTP server
 postconf(5), configuration parameters
-syslogd(5), system logging
+postlogd(8), Postfix logging
+syslogd(8), system logging
 .SH "LICENSE"
 .na
 .nf
index 96d07e495384dd7565f54d5a534fe4ad6ef7e7a5..f0dae3be9db7b1e95cf516a6ab773453b79fde35 100644 (file)
@@ -44,7 +44,8 @@ RFC 3463 (Enhanced Status Codes)
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 
 Depending on the setting of the \fBnotify_classes\fR parameter,
 the postmaster is notified of bounces and of other trouble.
@@ -113,6 +114,7 @@ discard(8), Postfix discard delivery agent
 postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "LICENSE"
 .na
index ac1a13db796e4529f0f39f7e6c124beaef428732..b1fdf05da04b030a47c6a277d2722376badea219 100644 (file)
@@ -63,7 +63,8 @@ The fast flush server can run chrooted at fixed low privilege.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH BUGS
 .ad
 .fi
@@ -146,6 +147,7 @@ qmgr(8), queue manager
 postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index 7290c6e1e8966e4e6e0554baacc27bb7a639359a..43510979734c5b4e978c0a240543d385482ffb44 100644 (file)
@@ -340,7 +340,8 @@ RFC 3463 (Enhanced status codes)
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 Corrupted message files are marked so that the queue
 manager can move them to the \fBcorrupt\fR queue afterwards.
 
@@ -620,6 +621,7 @@ postalias(1), create/update alias database
 aliases(5), format of alias database
 postconf(5), configuration parameters
 master(5), generic daemon options
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "LICENSE"
 .na
index f8d0f12fe6797f2172d5c38ad27877e364632a2c..4517fa043d7d3506532abdba5adddc43323db679 100644 (file)
@@ -91,7 +91,8 @@ processes to finish what they are doing.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems are reported to \fBsyslogd\fR(8). The exit status
+Problems are reported to \fBsyslogd\fR(8) or \fBpostlogd\fR(8).
+The exit status
 is non\-zero in case of problems, including problems while
 initializing as a master daemon process in the background.
 .SH "ENVIRONMENT"
@@ -198,6 +199,7 @@ qmgr(8), queue manager
 verify(8), address verification
 master(5), master.cf configuration file syntax
 postconf(5), main.cf configuration file syntax
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "LICENSE"
 .na
index 53a44e07f5a1c599f7ade7ca5143afd7339d4631..6e4c1665ea1fda8e29370665566878f0c2307d9a 100644 (file)
@@ -147,7 +147,8 @@ privilege in a chrooted environment.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to the \fBsyslog\fR(8) daemon.
+Problems and transactions are logged to the \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8) daemon.
 Corrupted message files are saved to the \fBcorrupt\fR queue
 for further inspection.
 
@@ -301,8 +302,8 @@ bounce_queue_lifetime limit.
 Available in Postfix version 2.5 and later:
 .IP "\fBdefault_destination_rate_delay (0s)\fR"
 The default amount of delay that is inserted between individual
-deliveries to the same destination; the resulting behavior depends
-on the value of the corresponding per\-destination recipient limit.
+message deliveries to the same destination and over the same message
+delivery transport.
 .IP "\fBtransport_destination_rate_delay ($default_destination_rate_delay)\fR"
 A transport\-specific override for the default_destination_rate_delay
 parameter value, where \fItransport\fR is the master.cf name of
@@ -311,8 +312,8 @@ the message delivery transport.
 Available in Postfix version 3.1 and later:
 .IP "\fBdefault_transport_rate_delay (0s)\fR"
 The default amount of delay that is inserted between individual
-deliveries over the same message delivery transport, regardless of
-destination.
+message deliveries over the same message delivery transport,
+regardless of destination.
 .IP "\fBtransport_transport_rate_delay ($default_transport_rate_delay)\fR"
 A transport\-specific override for the default_transport_rate_delay
 parameter value, where the initial \fItransport\fR in the parameter
@@ -387,6 +388,7 @@ bounce(8), delivery status reports
 postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index 26aeb781498a95e28d70e9c49e15db80fc0320e4..d94a6a92dc70d8322ecb753bf0021bb9931d430b 100644 (file)
@@ -39,7 +39,8 @@ that is sent to its public service endpoint.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH BUGS
 .ad
 .fi
@@ -113,6 +114,7 @@ postdrop(1), mail posting agent
 postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "LICENSE"
 .na
index 9a83d42c1f65a9cccb8a00b264e77d468662ffa9..9c7bfb089231db97ef1a0eadaa577bac4e615534 100644 (file)
@@ -345,7 +345,8 @@ delivery status notifications (Postfix 3.0 and later).
 This command output is not examined for the presence of an
 enhanced status code.
 
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 Corrupted message files are marked so that the queue manager
 can move them to the \fBcorrupt\fR queue for further inspection.
 .SH "SECURITY"
@@ -456,6 +457,7 @@ bounce(8), delivery status reports
 postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "LICENSE"
 .na
index 811b7f949627413187e17383003241be58d877a4..6ec826ceede2fccbaf8bfa5da66e948a7974e811 100644 (file)
@@ -70,7 +70,17 @@ before it is terminated by a built\-in watchdog timer.
 .na
 .nf
 postconf(5), configuration parameters
-syslogd(5), system logging
+syslogd(8), system logging
+.SH "README_FILES"
+.na
+.nf
+.ad
+.fi
+Use "\fBpostconf readme_directory\fR" or
+"\fBpostconf html_directory\fR" to locate this information.
+.na
+.nf
+MAILLOG_README, Postfix logging to file or stdout
 .SH "LICENSE"
 .na
 .nf
index 7e7a255328c624daa4aeaf3bf71d40b9f54ef200..1f53e4a75ff8c654f339899d1dfd856da643523c 100644 (file)
@@ -79,7 +79,8 @@ RFC 5321 (SMTP protocol, including multi\-line 220 banners)
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH BUGS
 .ad
 .fi
@@ -415,6 +416,7 @@ The master.cf service name of a Postfix daemon process.
 smtpd(8), Postfix SMTP server
 tlsproxy(8), Postfix TLS proxy server
 dnsblog(8), DNS black/whitelist logger
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index de196638c23bc6743323a9d7715f4df686378da7..e734a2bcad1c04c4ee289f2953ab809b4aa18711 100644 (file)
@@ -136,7 +136,8 @@ does not match the provider of its content.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH BUGS
 .ad
 .fi
index 4b7d040e226a16ac6867320831c0f49da3679f6f..7f97f9bc613fe290399038f341db6ecc0494a368 100644 (file)
@@ -151,7 +151,8 @@ privilege in a chrooted environment.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to the syslog daemon.
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 Corrupted message files are saved to the \fBcorrupt\fR queue
 for further inspection.
 
@@ -365,8 +366,8 @@ bounce_queue_lifetime limit.
 Available in Postfix version 2.5 and later:
 .IP "\fBdefault_destination_rate_delay (0s)\fR"
 The default amount of delay that is inserted between individual
-deliveries to the same destination; the resulting behavior depends
-on the value of the corresponding per\-destination recipient limit.
+message deliveries to the same destination and over the same message
+delivery transport.
 .IP "\fBtransport_destination_rate_delay ($default_destination_rate_delay)\fR"
 A transport\-specific override for the default_destination_rate_delay
 parameter value, where \fItransport\fR is the master.cf name of
@@ -375,8 +376,8 @@ the message delivery transport.
 Available in Postfix version 3.1 and later:
 .IP "\fBdefault_transport_rate_delay (0s)\fR"
 The default amount of delay that is inserted between individual
-deliveries over the same message delivery transport, regardless of
-destination.
+message deliveries over the same message delivery transport,
+regardless of destination.
 .IP "\fBtransport_transport_rate_delay ($default_transport_rate_delay)\fR"
 A transport\-specific override for the default_transport_rate_delay
 parameter value, where the initial \fItransport\fR in the parameter
@@ -451,6 +452,7 @@ bounce(8), delivery status reports
 postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index 93cdddb45b166cf479fd2af0ba4e247c30be8184..c8da141a413a8bbf89f9b0a2c553938f59a526b5 100644 (file)
@@ -31,7 +31,8 @@ run chrooted at fixed low privilege.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH BUGS
 .ad
 .fi
@@ -174,6 +175,7 @@ The master.cf service name of a Postfix daemon process.
 http://cr.yp.to/proto/qmqp.html, QMQP protocol
 cleanup(8), message canonicalization
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index 771905b0d5092e18ddf3f10304c56c96f492c462..7f9fe49b7d1449835f2b18767cbc9ee4d53fa694 100644 (file)
@@ -73,7 +73,8 @@ not be used to store information that is security sensitive.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH BUGS
 .ad
 .fi
@@ -141,6 +142,7 @@ The master.cf service name of a Postfix daemon process.
 smtp(8), SMTP client
 postconf(5), configuration parameters
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index 380f28c0ac089d2b71f8feee99400701e52670a5..624ae74a4d6aef3bcd6791f51495741cecac3132 100644 (file)
@@ -38,7 +38,8 @@ outside world.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH "CONFIGURATION PARAMETERS"
 .na
 .nf
@@ -102,6 +103,7 @@ cleanup(8), canonicalize and enqueue mail
 qmgr(8), queue manager
 postconf(5), configuration parameters
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "LICENSE"
 .na
index 0b98594878268ecc650aa65892d6226590749786..a0a0c32cc55fa801dcece123a933a4f907283f43 100644 (file)
@@ -116,7 +116,8 @@ RFC 7672 (SMTP security via opportunistic DANE TLS)
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 Corrupted message files are marked so that the queue manager can
 move them to the \fBcorrupt\fR queue for further inspection.
 
@@ -796,6 +797,7 @@ postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
 tlsmgr(8), TLS session and PRNG management
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index 23e119e6b55d0f55e916028382172e3c87055e08..2505c8edda3113801187c6540c107f4a23a6e174 100644 (file)
@@ -70,7 +70,8 @@ RFC 7505 ("Null MX" No Service Resource Record)
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 
 Depending on the setting of the \fBnotify_classes\fR parameter,
 the postmaster is notified of bounces, protocol problems,
@@ -1144,6 +1145,7 @@ verify(8), address verification service
 postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index edbec5b0940b5d8f95fbb6be6da88568ef0f17a6..410ec87b72e29ad760b5ac3fd53d808776d1a930 100644 (file)
@@ -55,7 +55,7 @@ replaced by a more structural solution.
 .ad
 .fi
 The \fBspawn\fR(8) daemon reports abnormal child exits.
-Problems are logged to \fBsyslogd\fR(8).
+Problems are logged to \fBsyslogd\fR(8) or \fBpostlogd\fR(8).
 .SH "SECURITY"
 .na
 .nf
@@ -134,6 +134,7 @@ The master.cf service name of a Postfix daemon process.
 .nf
 postconf(5), configuration parameters
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "LICENSE"
 .na
index fdd38a5b084866f1ed6b8f871aac1f4a1bd8df0a..c4e594c294944705ac3f1e425e72edebe86a2d2b 100644 (file)
@@ -59,7 +59,8 @@ is logged.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to the syslog daemon.
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH BUGS
 .ad
 .fi
@@ -164,6 +165,7 @@ smtpd(8), Postfix SMTP server
 postconf(5), configuration parameters
 master(5), generic daemon options
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index 6b3b40c9bdf836c41d799d7ebfad1ddc01464585..5fc67049f90e4df14c5ad609c718b6419b9887a1 100644 (file)
@@ -57,7 +57,8 @@ can be run chrooted at fixed low privilege.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH "CONFIGURATION PARAMETERS"
 .na
 .nf
@@ -276,7 +277,8 @@ The master.cf service name of a Postfix daemon process.
 postscreen(8), Postfix zombie blocker
 smtpd(8), Postfix SMTP server
 postconf(5), configuration parameters
-syslogd(5), system logging
+postlogd(8), Postfix logging
+syslogd(8), system logging
 .SH "LICENSE"
 .na
 .nf
index c122d3b94dc7a29abb7906608591cb162abfed20..523c44c4ec1a94abfce25dbdaa089918846e6e3e 100644 (file)
@@ -81,7 +81,8 @@ It can run at a fixed low privilege in a chrooted environment.
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH "CONFIGURATION PARAMETERS"
 .na
 .nf
@@ -292,6 +293,7 @@ postconf(5), configuration parameters
 transport(5), transport table format
 relocated(5), format of the "user has moved" table
 master(8), process manager
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README FILES"
 .na
index b2e677223a3a3076695e49f5d51d700b78053693..4c1fab02781d902d27be38078dd671f98e983f34 100644 (file)
@@ -65,7 +65,8 @@ non\-Postfix directory is redirected to the Postfix\-owned
 .SH DIAGNOSTICS
 .ad
 .fi
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 .SH BUGS
 .ad
 .fi
@@ -218,7 +219,8 @@ The master.cf service name of a Postfix daemon process.
 smtpd(8), Postfix SMTP server
 cleanup(8), enqueue Postfix message
 postconf(5), configuration parameters
-syslogd(5), system logging
+postlogd(8), Postfix logging
+syslogd(8), system logging
 .SH "README FILES"
 .na
 .nf
index 99520ae88e975278bb17cf542500c492d4a667ba..8d5f637b8dfa2d925819e405abafc6df4c0dda01 100644 (file)
@@ -157,7 +157,8 @@ Mail bounces when the recipient has no mailbox or when the
 recipient is over disk quota. In all other cases, mail for
 an existing recipient is deferred and a warning is logged.
 
-Problems and transactions are logged to \fBsyslogd\fR(8).
+Problems and transactions are logged to \fBsyslogd\fR(8)
+or \fBpostlogd\fR(8).
 Corrupted message files are marked so that the queue
 manager can move them to the \fBcorrupt\fR queue afterwards.
 
@@ -303,6 +304,7 @@ The master.cf service name of a Postfix daemon process.
 qmgr(8), queue manager
 bounce(8), delivery status reports
 postconf(5), configuration parameters
+postlogd(8), Postfix logging
 syslogd(8), system logging
 .SH "README_FILES"
 .na
index 4c1877c9c42ef9f0553d3cb8b8bd1f9ad6448a3b..2a5b012ab6d19affe582adab2c54c7fa9f6d432b 100644 (file)
@@ -71,9 +71,20 @@ debugger</a>
 
 <h2><a name="logging">Look for obvious signs of trouble</a></h2>
 
-<p> Postfix logs all failed and successful deliveries to a logfile.
-The file is usually called /var/log/maillog or /var/log/mail; the
-exact pathname is defined in the /etc/syslog.conf file. </p>
+<p> Postfix logs all failed and successful deliveries to a logfile. </p>
+
+<ul>
+
+<li> <p> When Postfix uses syslog logging (the default), the file
+is usually called /var/log/maillog, /var/log/mail, or something
+similar; the exact pathname is configured in a file called
+/etc/syslog.conf, /etc/rsyslog.conf, or something similar. </p>
+
+<li> <p> When Postfix uses its own logging system (see MAILLOG_README),
+the location of the logfile is configured with the Postfix maillog_file
+parameter. </p>
+
+</ul>
 
 <p> When Postfix does not receive or deliver mail, the first order
 of business is to look for errors that prevent Postfix from working
diff --git a/postfix/proto/MAILLOG_README.html b/postfix/proto/MAILLOG_README.html
new file mode 100644 (file)
index 0000000..5fad103
--- /dev/null
@@ -0,0 +1,183 @@
+<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
+        "http://www.w3.org/TR/html4/loose.dtd">
+
+<html>
+
+<head>
+
+<title>Postfix logging to file or stdout</title>
+
+<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
+
+</head>
+
+<body>
+
+<h1><img src="postfix-logo.jpg" width="203" height="98" ALT="">Postfix
+logging to file or stdout</h1>
+
+<hr>
+
+<h2>Overview </h2>
+
+<p> Postfix supports it own logging system as an alternative to
+syslog (which remains the default). This is available with Postfix
+version 3.4 or later. </p>
+
+<p> Topics covered in this document: </p>
+
+<ul>
+
+<li><a href="#log-to-file">Configuring logging to file</a>
+
+<li><a href="#log-to-stdout">Configuring logging to stdout</a>
+
+<li><a href="#logrotate">Rotating logs </a>
+
+<li><a href="#limitations">Limitations</a>
+
+</ul>
+
+<h2> <a name="log-to-file"> Configuring logging to file </a> </h2>
+
+<p> Logging to file solves a usability problem for MacOS, and
+eliminates multiple problems for systemd-based systems. </p>
+
+<ol>
+
+<li> <p> Add the following line to master.cf if not already present
+(note: there must be no whitespace at the start of the line): </p>
+
+<blockquote>
+<pre>
+postlog   unix-dgram n  -       n       -       1       postlogd
+</pre>
+</blockquote>
+
+<p> Note: the service type "<b>unix-dgram</b>" was introduced with 
+Postfix 3.4. Remove the above line before backing out to an older
+Postfix version. </p>
+
+<li> <p> Configure Postfix to write logging, to, for example,
+/var/log/postfix.log. See also the "<a href="#logrotate">Logfile
+rotation</a>" section below for logfile management. </p>
+
+<blockquote>
+<pre>
+# postfix stop
+# postconf maillog_file=/var/log/postfix.log
+# postfix start
+</pre>
+</blockquote>
+
+<p> By default, the logfile name must start with "/var" or "/dev/stdout"
+(the list of allowed prefixes is configured with the maillog_file_prefixes
+parameter). This safety mechanism limits the damage from a single
+configuration mistake. </p>
+
+</ol>
+
+<h2> <a name="log-to-stdout"> Configuring logging to stdout </a> </h2>
+
+<p> Logging to stdout is useful when Postfix runs in a container,
+as it eliminates a syslogd dependency. </p>
+
+<ol>
+
+<li> <p> Add the following line to master.cf if not already present (note:
+there must be no whitespace at the start of the line): </p>
+
+<blockquote>
+<pre>
+postlog   unix-dgram n  -       n       -       1       postlogd
+</pre>
+</blockquote>
+
+<p> Note: the service type "<b>unix-dgram</b>" was introduced with 
+Postfix 3.4. Remove the above line before backing out to an older
+Postfix version. </p>
+
+<li> <p> Configure main.cf with "maillog_file = /dev/stdout". </p> 
+
+<li> <p> Start Postfix with "<b>postfix start-fg</b>". </p>
+
+</ol>
+
+<h2> <a name="logrotate"> Rotating logs </a> </h2>
+
+<p> The command "<b>postfix logrotate</b>" may be run by hand or
+by a cronjob. It logs all errors, and reports errors to stderr if
+run from a terminal. This command implements the following steps:
+</p>
+
+<ul>
+
+<li> <p> Rename the current logfile by appending a suffix that
+contains the date and time. This suffix is configured with the
+maillog_file_rotate_suffix parameter (default: %Y%M%d-%H%M%S). </p>
+
+<li> <p> Reload Postfix so that postlogd(8) immediately closes the
+old logfile. </p>
+
+<li> <p> After a brief pause, compress the old logfile. The compression
+program is configured with the maillog_file_compressor parameter
+(default: gzip). </p>
+
+</ul>
+
+<p> Notes: </p>
+
+<ul>
+
+<li> <p> This command will not rotate a logfile with pathname under
+the /dev directory, such as /dev/stdout. </p>
+
+<li> <p> This command does not (yet) remove old logfiles. </p>
+
+</ul>
+
+<h2> <a name="limitations">Limitations</a> </h2>
+
+<p> Background: </p>
+
+<ul>
+
+<li> <p> Postfix consists of a number of daemon programs, and
+non-daemon programs some of which are used for local mail submission,
+and some for Postfix management.
+
+<li> <p> Logging to Postfix logfile or stdout requires the Postfix
+postlogd(8) service. This ensures that simultaneous logging from
+different programs will not get mixed up. </p>
+
+<li> <p> All Postfix programs can log to syslog, but not all programs
+have sufficient privileges to use the Postfix logging service, and
+many non-daemon programs must not log to stdout as that would corrupt
+their output. </p>
+
+</ul>
+
+<p> Limitations: </p>
+
+<ul>
+
+<li> <p> Non-daemon Postfix programs will log errors to syslogd(8)
+before they have processed command-line options and main.cf parameters.
+
+<li> <p> If Postfix is down, the non-daemon programs postfix(1),
+postsuper(1), postmulti(1), and postlog(1), will log directly to
+$maillog_file. These programs expect to run with root privileges,
+for example during Postfix start-up, reload, or shutdown.
+
+<li> <p> Other non-daemon Postfix programs will never write directly
+to $maillog_file (also, logging to stdout would interfere with the
+operation of some of these programs). These programs can log to
+postlogd(8) if they are run by the super-user, or if their executable
+file has set-gid permission. Do not set this permission on programs
+other than postdrop(1) and postqueue(1).
+
+</ul>
+
+</body>
+
+</html>
index a9cc15287abeb58afa9e0d0e9647da77da92158b..d60c318dc2decbb7b62f745b04dd82d163876a50 100644 (file)
@@ -25,6 +25,7 @@ HTML  = ../html/ADDRESS_CLASS_README.html \
        ../html/LDAP_README.html \
        ../html/LINUX_README.html \
        ../html/LOCAL_RECIPIENT_README.html ../html/MAILDROP_README.html \
+       ../html/MAILLOG_README.html \
        ../html/LMDB_README.html \
        ../html/MEMCACHE_README.html \
        ../html/MILTER_README.html \
@@ -70,6 +71,7 @@ README        = ../README_FILES/ADDRESS_CLASS_README \
        ../README_FILES/LDAP_README \
        ../README_FILES/LINUX_README \
        ../README_FILES/LOCAL_RECIPIENT_README ../README_FILES/MAILDROP_README \
+       ../README_FILES/MAILLOG_README \
        ../README_FILES/LMDB_README \
        ../README_FILES/MEMCACHE_README \
        ../README_FILES/MILTER_README \
@@ -219,6 +221,9 @@ clobber:
 ../html/MAILDROP_README.html: MAILDROP_README.html
        $(DETAB) $? | $(POSTLINK) >$@
 
+../html/MAILLOG_README.html: MAILLOG_README.html
+       $(DETAB) $? | $(POSTLINK) >$@
+
 ../html/LMDB_README.html: LMDB_README.html
        $(DETAB) $? | $(POSTLINK) >$@
 
@@ -390,6 +395,9 @@ clobber:
 ../README_FILES/MAILDROP_README: MAILDROP_README.html
        $(DETAB) $? | $(HT2READ) >$@
 
+../README_FILES/MAILLOG_README: MAILLOG_README.html
+       $(DETAB) $? | $(HT2READ) >$@
+
 ../README_FILES/LMDB_README: LMDB_README.html
        $(DETAB) $? | $(HT2READ) >$@
 
index c4715573245bacf3b19b5d721a40560deac47a64..ae1b6f4bef091ffa469e50508628f1ae6176f53c 100644 (file)
@@ -17550,9 +17550,10 @@ parameter. See there for details. </p>
 %PARAM maillog_file
 
 <p> The name of an optional logfile that is written by the Postfix
-postlogd(8) service. A non-empty value disables logging to syslogd(8).
-Specify "/dev/stdout" for logging to standard output. Stdout logging
-requires that Postfix is started with "postfix start-fg".  </p>
+postlogd(8) service. A non-empty value selects logging to syslogd(8).
+Specify "/dev/stdout" to select logging to standard output. Stdout
+logging requires that Postfix is started with "postfix start-fg".
+</p>
 
 <p> Note 1: The maillog_file parameter value must contain a prefix
 that is specified with the maillog_file_prefixes parameter. </p>
@@ -17597,8 +17598,8 @@ whitespace. </p>
 %PARAM maillog_file_compressor gzip
 
 <p> The program to run after rotating $maillog_file with "postfix
-logrotate". The command is run with the rotated file as its first
-argument. </p>
+logrotate". The command is run with the rotated logfile name as its
+first argument. </p>
 
 <p> This feature is available in Postfix 3.4 and later. </p>
 
index 4625f28ba5911a613777837af127e0512de07130..d0a5b2a188da0f3fbda750a6436642d3d00f2593 100644 (file)
 /*     from many remote clients.  To reduce memory usage, reduce
 /*     the time unit over which state is kept.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /*
 /*     Upon exit, and every \fBanvil_status_update_time\fR
 /*     seconds, the server logs the maximal count and rate values measured,
index 462fe0a8ca8d4db174239d2eb9f48efb1300a98a..afbeb63045ef727ce16c541aeed4a12f17fc93b8 100644 (file)
@@ -44,7 +44,8 @@
 /*     RFC 6532 (Internationalized Message Format)
 /*     RFC 6533 (Internationalized Delivery Status Notifications)
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* CONFIGURATION PARAMETERS
 /* .ad
 /* .fi
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* LICENSE
 /* .ad
index a019c3b0e635cecd0a637de1351d68687cae9025..e93479440956352fda155f7b092a66162477891a 100644 (file)
@@ -54,7 +54,8 @@
 /*     RFC 3464 (Delivery status notifications)
 /*     RFC 5322 (Internet Message Format)
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /*     Table-driven rewriting rules make it hard to express \fBif then
 /*     else\fR and other logical relationships.
 /*     off in email addresses.
 /* .IP "\fBmasquerade_exceptions (empty)\fR"
 /*     Optional list of user names that are not subjected to address
-/*     masquerading, even when their address matches $masquerade_domains.
+/*     masquerading, even when their addresses match $masquerade_domains.
 /* .IP "\fBpropagate_unmatched_extensions (canonical, virtual)\fR"
 /*     What address lookup tables copy an address extension from the lookup
 /*     key to the lookup result.
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index a39fb75fd288942971d92edff4063e393c96d55e..4fc5e2eac5867780fab11222b5e961ed8ea6e9ad 100644 (file)
@@ -81,7 +81,8 @@
 /*     Autodetection: request SMTPUTF8 support if the message
 /*     contains an UTF8 message header, sender, or recipient.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* SEE ALSO
 /*     cleanup(8) cleanup service description.
 /*     cleanup_init(8) cleanup callable interface, initialization
 /*     IBM T.J. Watson Research
 /*     P.O. Box 704
 /*     Yorktown Heights, NY 10598, USA
+/*
+/*     Wietse Venema
+/*     Google, Inc.
+/*     111 8th Avenue
+/*     New York, NY 10011, USA
 /*--*/
 
 /* System library. */
index fbfb928c0560fa14f00df5a8a4c6d586c4cf9b5e..e411992d6d4a27a6d7b10e40de53c2d10425f830 100644 (file)
@@ -59,7 +59,8 @@
 /*     cleanup_sig() must be called in case of SIGTERM, in order
 /*     to remove an incomplete queue file.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* SEE ALSO
 /*     cleanup_api(3) cleanup callable interface, message processing
 /* LICENSE
index 2ceb4793eac71147c7cbf67fa085183a73bcba88..331f96fbda3c8fcc328f0e8f03457e00dd9ad591 100644 (file)
@@ -31,7 +31,8 @@
 /* STANDARDS
 /*     RFC 3463 (Enhanced Status Codes)
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /*
 /*     Depending on the setting of the \fBnotify_classes\fR parameter,
 /*     the postmaster is notified of bounces and of other trouble.
@@ -87,6 +88,7 @@
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* LICENSE
 /* .ad
index 8e7caaba56d6259fc2654fb31e3d745ce0f5ebc5..021be255c3214d5d96cc9fb1ebdfef4cedf3c6e4 100644 (file)
@@ -24,7 +24,8 @@
 /*     is no reply, or a negative reply that contains no SOA record.
 /*     Finally, the \fBdnsblog\fR(8) server closes the connection.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* CONFIGURATION PARAMETERS
 /* .ad
 /* .fi
@@ -65,7 +66,8 @@
 /* SEE ALSO
 /*     smtpd(8), Postfix SMTP server
 /*     postconf(5), configuration parameters
-/*     syslogd(5), system logging
+/*     postlogd(8), Postfix logging
+/*     syslogd(8), system logging
 /* LICENSE
 /* .ad
 /* .fi
index 0e65fc8e831191ca970a2a838814464fcc3841a7..61e805b0d805d8cf4ab67ef378bfd474369a7c70 100644 (file)
@@ -32,7 +32,8 @@
 /* STANDARDS
 /*     RFC 3463 (Enhanced Status Codes)
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /*
 /*     Depending on the setting of the \fBnotify_classes\fR parameter,
 /*     the postmaster is notified of bounces and of other trouble.
@@ -97,6 +98,7 @@
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* LICENSE
 /* .ad
index 820a53e2dc710fd83cb08f75e31b19cab7ac65c8..2e261bc32da97584775b20b03d528c727b14e551 100644 (file)
@@ -53,7 +53,8 @@
 /*     talk to the network, and it does not talk to local users.
 /*     The fast flush server can run chrooted at fixed low privilege.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /*     Fast flush logfiles are truncated only after a "send"
 /*     request, not when mail is actually delivered, and therefore can
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index cac8002d5d97f179f49c70b841f362bd7ea798b9..575a5b07eb1296103b36ea328cb514777a199426 100644 (file)
@@ -2706,6 +2706,7 @@ extern int var_fault_inj_code;
 #ifndef DEF_OPENSSL_PATH
 #define DEF_OPENSSL_PATH               "openssl"
 #endif
+extern char *var_openssl_path;
 
 #define VAR_MANPAGE_DIR                        "manpage_directory"
 #ifndef DEF_MANPAGE_DIR
index ade3ae960f513d7f4bd8a62fe26e4264e5589729..513dc766f8898c57ab22ca9f53ff5dd51ca1fde5 100644 (file)
@@ -20,7 +20,7 @@
   * Patches change both the patchlevel and the release date. Snapshots have no
   * patchlevel; they change the release date only.
   */
-#define MAIL_RELEASE_DATE      "20190202"
+#define MAIL_RELEASE_DATE      "20190207"
 #define MAIL_VERSION_NUMBER    "3.4"
 
 #ifdef SNAPSHOT
index 75d7866f1ec5c1076ae8dfc8f4bd62ac34ad2814..5b478d45ad808851962d9d3556ba0968bc8ec50d 100644 (file)
 /*     RFC 822 (ARPA Internet Text Messages)
 /*     RFC 3463 (Enhanced status codes)
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /*     Corrupted message files are marked so that the queue
 /*     manager can move them to the \fBcorrupt\fR queue afterwards.
 /*
 /*     aliases(5), format of alias database
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* LICENSE
 /* .ad
index c9b3ea63f9886d1601de69ff6df8f2e9e7535a0a..2ef3a5ae01419dbf6c82201f69327b877bafb359 100644 (file)
 /*     This value is taken from the global \fBmain.cf\fR configuration
 /*     file. Setting \fBvar_use_limit\fR to zero disables the idle limit.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* SEE ALSO
 /*     master(8), master process
-/*     syslogd(8) system logging
+/*     postlogd(8), Postfix logging
+/*     syslogd(8), system logging
 /* LICENSE
 /* .ad
 /* .fi
index b7b9a4ff637f1cb359701b930349a87181b3e459..0e750c0d9f4319d239ad402fb4d86df770750db2 100644 (file)
 /*     configuration file. Setting \fBvar_idle_limit\fR to zero
 /*     disables the idle limit.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* SEE ALSO
 /*     master(8), master process
-/*     syslogd(8) system logging
+/*     postlogd(8), Postfix logging
+/*     syslogd(8), system logging
 /* LICENSE
 /* .ad
 /* .fi
index 1a4173b8c2615cd0fb78c56df424da7de692f593..d9017789b72893abf9bac4920f89ab7b596b918d 100644 (file)
@@ -83,7 +83,8 @@
 /*     terminate only the master ("\fBpostfix stop\fR") and allow running
 /*     processes to finish what they are doing.
 /* DIAGNOSTICS
-/*     Problems are reported to \fBsyslogd\fR(8). The exit status
+/*     Problems are reported to \fBsyslogd\fR(8) or \fBpostlogd\fR(8).
+/*     The exit status
 /*     is non-zero in case of problems, including problems while
 /*     initializing as a master daemon process in the background.
 /* ENVIRONMENT
 /*     verify(8), address verification
 /*     master(5), master.cf configuration file syntax
 /*     postconf(5), main.cf configuration file syntax
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* LICENSE
 /* .ad
@@ -327,7 +329,7 @@ int     main(int argc, char **argv)
     /*
      * Initialize logging and exit handler.
      */
-    maillog_client_init(mail_task(var_procname), 
+    maillog_client_init(mail_task(var_procname),
                        MAILLOG_CLIENT_FLAG_LOGWRITER_FALLBACK);
 
     /*
@@ -367,7 +369,7 @@ int     main(int argc, char **argv)
            keep_stdout = 1;
            break;
        case 'D':
-            debug_me = 1;
+           debug_me = 1;
            break;
        case 's':
            keep_stdout = 1;
@@ -415,6 +417,7 @@ int     main(int argc, char **argv)
     /*
      * If started from a terminal, get rid of any tty association. This also
      * means that all errors and warnings must go to the syslog daemon.
+     * Some new world has no terminals and prefers logging to stdout.
      */
     if (master_detach)
        for (fd = 0; fd < 3; fd++) {
@@ -538,7 +541,7 @@ int     main(int argc, char **argv)
     master_config();
     master_sigsetup();
     master_flow_init();
-    maillog_client_init(mail_task(var_procname), 
+    maillog_client_init(mail_task(var_procname),
                        MAILLOG_CLIENT_FLAG_LOGWRITER_FALLBACK);
     msg_info("daemon started -- version %s, configuration %s",
             var_mail_version, var_config_dir);
@@ -578,7 +581,7 @@ int     main(int argc, char **argv)
            master_gotsighup = 0;               /* this first */
            master_vars_init();                 /* then this */
            master_refresh();                   /* then this */
-           maillog_client_init(mail_task(var_procname), 
+           maillog_client_init(mail_task(var_procname),
                                MAILLOG_CLIENT_FLAG_LOGWRITER_FALLBACK);
        }
        if (master_gotsigchld) {
index 273a07da863ac6ac66a34089c0be232d5cbe2d97..465a9e26ffd26f00894f92b9597a585701dc8b7f 100644 (file)
 /*     This value is taken from the global \fBmain.cf\fR configuration
 /*     file. Setting \fBvar_idle_limit\fR to zero disables the idle limit.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* SEE ALSO
 /*     master(8), master process
-/*     syslogd(8) system logging
+/*     postlogd(8), Postfix logging
+/*     syslogd(8), system logging
 /* LICENSE
 /* .ad
 /* .fi
index a3176734f1df77189af7f13122074322368e35df..f834d8b5d030112bcb76e8b2424f1a93fa936c14 100644 (file)
 /*     This value is taken from the global \fBmain.cf\fR configuration
 /*     file. Setting \fBvar_idle_limit\fR to zero disables the idle limit.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /* SEE ALSO
 /*     master(8), master process
-/*     syslogd(8) system logging
+/*     postlogd(8), Postfix logging
+/*     syslogd(8), system logging
 /* LICENSE
 /* .ad
 /* .fi
index efa73d12600585c7d938df7117652f2d1c82c0c1..fa6114b875b1e9796937dd8d9cd2db9156fa0e47 100644 (file)
 /*     This value is taken from the global \fBmain.cf\fR configuration
 /*     file. Setting \fBvar_use_limit\fR to zero disables the idle limit.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /*     Works with FIFO-based services only.
 /* SEE ALSO
 /*     master(8), master process
-/*     syslogd(8) system logging
+/*     postlogd(8), Postfix logging
+/*     syslogd(8), system logging
 /* LICENSE
 /* .ad
 /* .fi
index ac713c14713421e94bca6e4275eb4e346238881f..2b6b2ad83a2bb6371b34666d4ff8ff1c371c676d 100644 (file)
 /*     does not talk to the outside world, and it can be run at fixed low
 /*     privilege in a chrooted environment.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to the \fBsyslog\fR(8) daemon.
+/*     Problems and transactions are logged to the \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8) daemon.
 /*     Corrupted message files are saved to the \fBcorrupt\fR queue
 /*     for further inspection.
 /*
 /*     Available in Postfix version 2.5 and later:
 /* .IP "\fBdefault_destination_rate_delay (0s)\fR"
 /*     The default amount of delay that is inserted between individual
-/*     deliveries to the same destination; the resulting behavior depends
-/*     on the value of the corresponding per-destination recipient limit.
+/*     message deliveries to the same destination and over the same message
+/*     delivery transport.
 /* .IP "\fBtransport_destination_rate_delay ($default_destination_rate_delay)\fR"
 /*     A transport-specific override for the default_destination_rate_delay
 /*     parameter value, where \fItransport\fR is the master.cf name of
 /*     Available in Postfix version 3.1 and later:
 /* .IP "\fBdefault_transport_rate_delay (0s)\fR"
 /*     The default amount of delay that is inserted between individual
-/*     deliveries over the same message delivery transport, regardless of
-/*     destination.
+/*     message deliveries over the same message delivery transport,
+/*     regardless of destination.
 /* .IP "\fBtransport_transport_rate_delay ($default_transport_rate_delay)\fR"
 /*     A transport-specific override for the default_transport_rate_delay
 /*     parameter value, where the initial \fItransport\fR in the parameter
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index 02832a545a262b85ab5dcbe19b84c1d53144bda9..ebbe504d83c5b1ac1bbac22af2e3909bf39452e8 100644 (file)
@@ -27,7 +27,8 @@
 /*     what files it opens for reading, and does not actually touch any data
 /*     that is sent to its public service endpoint.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /*     The \fBpickup\fR(8) daemon copies mail from file to the \fBcleanup\fR(8)
 /*     daemon.  It could avoid message copying overhead by sending a file
@@ -91,6 +92,7 @@
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* LICENSE
 /* .ad
index 7167d9511ce9f4d125b0a9bbf1781eee17763dc4..79d415909fc639c989a7dc7c553ce8b482771d11 100644 (file)
 /*     This command output is not examined for the presence of an
 /*     enhanced status code.
 /*
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /*     Corrupted message files are marked so that the queue manager
 /*     can move them to the \fBcorrupt\fR queue for further inspection.
 /* SECURITY
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* LICENSE
 /* .ad
index 0cebc677fa2335edc0deec64293defeaeabd210a..c48751591f2c4a2141fa68dc5a970264c86998b9 100644 (file)
 /*     The name of the alias database source file when creating a database.
 /* DIAGNOSTICS
 /*     Problems are logged to the standard error stream and to
-/*     \fBsyslogd\fR(8) No output means that
+/*     \fBsyslogd\fR(8) or \fBpostlogd\fR(8). No output means that
 /*     no problems were detected. Duplicate entries are skipped and are
 /*     flagged with a warning.
 /*
 /*     postconf(5), configuration parameters
 /*     postmap(1), create/update/query lookup tables
 /*     newaliases(1), Sendmail compatibility interface.
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index 47b2e88b271e2183dad3b52948cd2be65e7ea8cf..5e35d1dddaac4f6f8f829092898a7b3ef3307b4b 100644 (file)
@@ -30,7 +30,8 @@
 /*     it can connect to Postfix daemon processes.
 /* DIAGNOSTICS
 /*     Fatal errors: malformed input, I/O error, out of memory. Problems
-/*     are logged to \fBsyslogd\fR(8) and to the standard error stream.
+/*     are logged to \fBsyslogd\fR(8) or \fBpostlogd\fR(8) and to
+/*     the standard error stream.
 /*     When the input is incomplete, or when the process receives a HUP,
 /*     INT, QUIT or TERM signal, the queue file is deleted.
 /* ENVIRONMENT
@@ -86,6 +87,7 @@
 /* SEE ALSO
 /*     sendmail(1), compatibility interface
 /*     postconf(5), configuration parameters
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* LICENSE
 /* .ad
index e7bb9b41eef4c371681cd251cd18967cf4d9c22b..0ad22b65f80cbd531009785cd91cae12a9e09056 100644 (file)
@@ -17,7 +17,8 @@
 /*     line, \fBpostlog\fR(1) reads from standard input and logs each input
 /*     line as one record.
 /*
-/*     By default, logging is sent to \fBsyslogd\fR(8); when the
+/*     By default, logging is sent to \fBsyslogd\fR(8) or
+/*     \fBpostlogd\fR(8); when the
 /*     standard error stream is connected to a terminal, logging
 /*     is sent there as well.
 /*
@@ -75,8 +76,8 @@
 /*     The name of the \fBpostlogd\fR(8) service entry in master.cf.
 /* SEE ALSO
 /*     postconf(5), configuration parameters
-/*     syslogd(8), syslog daemon
-/*     postlogd(8), internal logging service
+/*     postlogd(8), Postfix logging
+/*     syslogd(8), system logging
 /* LICENSE
 /* .ad
 /* .fi
index 047307f7c2f6b8fc9b8553c98b5f596e09c2a408..0d615147aef77386f110db8a5ee752724ac57b8d 100644 (file)
 /*     before it is terminated by a built-in watchdog timer.
 /* SEE ALSO
 /*     postconf(5), configuration parameters
-/*     syslogd(5), system logging
+/*     syslogd(8), system logging
+/* README_FILES
+/* .ad
+/* .fi
+/*     Use "\fBpostconf readme_directory\fR" or
+/*     "\fBpostconf html_directory\fR" to locate this information.
+/* .na
+/* .nf
+/*     MAILLOG_README, Postfix logging to file or stdout
 /* LICENSE
 /* .ad
 /* .fi
index 3b520e3bf503b10bc0fedcd86ff88a27f491993c..247242e44a6e63ee1fe2ddabfc9c45e96023f73b 100644 (file)
 /*     The name of the lookup table source file when rebuilding a database.
 /* DIAGNOSTICS
 /*     Problems are logged to the standard error stream and to
-/*     \fBsyslogd\fR(8).
+/*     \fBsyslogd\fR(8) or \fBpostlogd\fR(8).
 /*     No output means that no problems were detected. Duplicate entries are
 /*     skipped and are flagged with a warning.
 /*
 /*     postalias(1), create/update/query alias database
 /*     postconf(1), supported database types
 /*     postconf(5), configuration parameters
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index 68d5b7342e1bd50a405c127b6a44d926e732e6cb..d838808f1cefab69212a737a54fbdb87a8abe3f6 100644 (file)
 /* STANDARDS
 /*     RFC 7159 (JSON notation)
 /* DIAGNOSTICS
-/*     Problems are logged to \fBsyslogd\fR(8) and to the standard error
-/*     stream.
+/*     Problems are logged to \fBsyslogd\fR(8) or \fBpostlogd\fR(8),
+/*     and to the standard error stream.
 /* ENVIRONMENT
 /* .ad
 /* .fi
 /*     flush(8), fast flush service
 /*     sendmail(1), Sendmail-compatible user interface
 /*     postsuper(1), privileged queue operations
+/*     postlogd(8), Postfix logging
+/*     syslogd(8), system logging
 /* README FILES
 /* .ad
 /* .fi
index 60dc7155a160a3193e9eb8e13f5e174602abdcb1..7abf737a8854e7578b45fb7683414c0cf382d369 100644 (file)
@@ -67,7 +67,8 @@
 /*     RFC 3463 (Enhanced Status Codes)
 /*     RFC 5321 (SMTP protocol, including multi-line 220 banners)
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /*     The \fBpostscreen\fR(8) built-in SMTP protocol engine
 /*     currently does not announce support for AUTH, XCLIENT or
 /*     smtpd(8), Postfix SMTP server
 /*     tlsproxy(8), Postfix TLS proxy server
 /*     dnsblog(8), DNS black/whitelist logger
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index 3d356412e66ecf59429ca27508f2eca9690cb6fa..957cf8f769fbf432a31bf2b16c3d3c562a308aed 100644 (file)
 /*     options make the software increasingly verbose.
 /* DIAGNOSTICS
 /*     Problems are reported to the standard error stream and to
-/*     \fBsyslogd\fR(8).
+/*     \fBsyslogd\fR(8) or \fBpostlogd\fR(8).
 /*
 /*     \fBpostsuper\fR(1) reports the number of messages deleted with \fB-d\fR,
 /*     the number of messages requeued with \fB-r\fR, and the number of
 /*     messages whose queue file name was fixed with \fB-s\fR. The report
-/*     is written to the standard error stream and to \fBsyslogd\fR(8).
+/*     is written to the standard error stream and to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* ENVIRONMENT
 /* .ad
 /* .fi
 /* SEE ALSO
 /*     sendmail(1), Sendmail-compatible user interface
 /*     postqueue(1), unprivileged queue operations
+/*     postlogd(8), Postfix logging
+/*     syslogd(8), system logging
 /* LICENSE
 /* .ad
 /* .fi
index da825fd16c7d5bf5cd82e507f089c8d2dbd50bfa..3c5b87546ee8f410e701486cf697ec7c94893505 100644 (file)
@@ -779,6 +779,7 @@ static int starttls(STATE *state)
        ADD_EXCLUDE(cipher_exclusions, "eNULL");
 
     if (state->tlsproxy_mode) {
+       TLS_PARAMS tls_params;
 
        /*
         * Send all our wishes in one big request.
@@ -828,9 +829,10 @@ static int starttls(STATE *state)
        vstring_sprintf(port_buf, "%d", ntohs(state->port));
        tlsproxy =
            tls_proxy_open(DEF_TLSPROXY_SERVICE /* TODO */ , PROXY_OPEN_FLAGS,
-                          state->stream, state->paddr,
-                          STR(port_buf), smtp_tmout, smtp_tmout,
-                          state->addrport, &init_props, &start_props);
+                          state->stream, state->paddr, STR(port_buf),
+                          smtp_tmout, smtp_tmout, state->addrport,
+                          tls_proxy_params_from_config(&tls_params),
+                          &init_props, &start_props);
        vstring_free(port_buf);
        if (fchdir(cwd_fd) < 0)
            msg_fatal("fchdir: %m");
index 28d6c507d6e2e57041a9e7b2fae4e94bca9fb863..f405257cd2a79203fa5d6bd0f394bc2bb872ea2e 100644 (file)
 /*     type of security hole where ownership of a file or directory
 /*     does not match the provider of its content.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /*     The \fBproxymap\fR(8) server provides service to multiple clients,
 /*     and must therefore not be used for tables that have high-latency
index 6c64cd64886dba4a3dd22cb405ccea888b793572..a48043e0b5669d59daa5664838030551f04e1b1c 100644 (file)
 /*     does not talk to the outside world, and it can be run at fixed low
 /*     privilege in a chrooted environment.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to the syslog daemon.
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /*     Corrupted message files are saved to the \fBcorrupt\fR queue
 /*     for further inspection.
 /*
 /*     Available in Postfix version 2.5 and later:
 /* .IP "\fBdefault_destination_rate_delay (0s)\fR"
 /*     The default amount of delay that is inserted between individual
-/*     deliveries to the same destination; the resulting behavior depends
-/*     on the value of the corresponding per-destination recipient limit.
+/*     message deliveries to the same destination and over the same message
+/*     delivery transport.
 /* .IP "\fBtransport_destination_rate_delay ($default_destination_rate_delay)\fR"
 /*     A transport-specific override for the default_destination_rate_delay
 /*     parameter value, where \fItransport\fR is the master.cf name of
 /*     Available in Postfix version 3.1 and later:
 /* .IP "\fBdefault_transport_rate_delay (0s)\fR"
 /*     The default amount of delay that is inserted between individual
-/*     deliveries over the same message delivery transport, regardless of
-/*     destination.
+/*     message deliveries over the same message delivery transport,
+/*     regardless of destination.
 /* .IP "\fBtransport_transport_rate_delay ($default_transport_rate_delay)\fR"
 /*     A transport-specific override for the default_transport_rate_delay
 /*     parameter value, where the initial \fItransport\fR in the parameter
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index 8cbd209862749fdf3a1647b61542b254ff007843..2be6d7b8db4b395af6f97f5b6d0ded5f4766bde7 100644 (file)
@@ -21,7 +21,8 @@
 /*     clients and to DNS servers on the network. The QMQP server can be
 /*     run chrooted at fixed low privilege.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /*     The QMQP protocol provides only one server reply per message
 /*     delivery. It is therefore not possible to reject individual
 /*     http://cr.yp.to/proto/qmqp.html, QMQP protocol
 /*     cleanup(8), message canonicalization
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index ca2c30a2ddf19ede2f47e28e76671fb6171ec03b..d06cfcad1b09581410940841ce313d072ab64802 100644 (file)
@@ -63,7 +63,8 @@
 /*     The \fBscache\fR(8) server is not a trusted process. It must
 /*     not be used to store information that is security sensitive.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /*     The session cache cannot be shared among multiple machines.
 /*
 /*     smtp(8), SMTP client
 /*     postconf(5), configuration parameters
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index f4f9d8df6e214cc4bfb623b14a48c24cc6878d91..facdb1d815aff61ccf70dfb812bcfcd9ca0cae50 100644 (file)
 /*     Thus, the usual precautions need to be taken against malicious
 /*     inputs.
 /* DIAGNOSTICS
-/*     Problems are logged to \fBsyslogd\fR(8) and to the standard error
-/*     stream.
+/*     Problems are logged to \fBsyslogd\fR(8) or \fBpostlogd\fR(8),
+/*     and to the standard error stream.
 /* ENVIRONMENT
 /* .ad
 /* .fi
 /*     postdrop(1), mail posting utility
 /*     postfix(1), mail system control
 /*     postqueue(1), mail queue control
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README_FILES
 /* .ad
index 285801acbc09a4dd7c6800695a9a37fc39df88f7..95d6abf84700157d1a3f1df580d8f091eb2d631e 100644 (file)
@@ -26,7 +26,8 @@
 /*     None. The \fBshowq\fR(8) daemon does not interact with the
 /*     outside world.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* CONFIGURATION PARAMETERS
 /* .ad
 /* .fi
@@ -84,6 +85,7 @@
 /*     qmgr(8), queue manager
 /*     postconf(5), configuration parameters
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* LICENSE
 /* .ad
index 1b355ada3d8a272d2c0651bd1657b9db037d9743..f2dd520080329bfae98bb5ab6740a355a8aa7ec6 100644 (file)
 /*     RFC 6533 (Internationalized Delivery Status Notifications)
 /*     RFC 7672 (SMTP security via opportunistic DANE TLS)
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /*     Corrupted message files are marked so that the queue manager can
 /*     move them to the \fBcorrupt\fR queue for further inspection.
 /*
 /*     master(5), generic daemon options
 /*     master(8), process manager
 /*     tlsmgr(8), TLS session and PRNG management
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index e9374778bcccc80ad94a690e3e2b2535d39fb244..42e60f66cb2499979b259a757f18e900918d7bf1 100644 (file)
@@ -904,6 +904,7 @@ static int smtp_start_tls(SMTP_STATE *state)
                    | SMTP_KEY_FLAG_ADDR);
 
     if (state->tls->conn_reuse) {
+       TLS_PARAMS tls_params;
 
        /*
         * Send all our wishes in one big request.
@@ -969,6 +970,7 @@ static int smtp_start_tls(SMTP_STATE *state)
                           session->stream, STR(iter->addr),
                           STR(port_buf), var_smtp_starttls_tmout,
                           var_smtp_data2_tmout, state->service,
+                          tls_proxy_params_from_config(&tls_params),
                           &init_props, &start_props);
        vstring_free(port_buf);
 
index 664cc288491346a4dec43278955152b310d98516..cf6bac428efed64520385e9174b4e0b6b485e91b 100644 (file)
@@ -58,7 +58,8 @@
 /*     RFC 6533 (Internationalized Delivery Status Notifications)
 /*     RFC 7505 ("Null MX" No Service Resource Record)
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /*
 /*     Depending on the setting of the \fBnotify_classes\fR parameter,
 /*     the postmaster is notified of bounces, protocol problems,
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index 725612c68a57692ce8f5ecb213c6c6dbdeb1edc4..c9f5ae047925bfb77b9b423d3bffe993ea8e170d 100644 (file)
@@ -43,7 +43,7 @@
 /*     replaced by a more structural solution.
 /* DIAGNOSTICS
 /*     The \fBspawn\fR(8) daemon reports abnormal child exits.
-/*     Problems are logged to \fBsyslogd\fR(8).
+/*     Problems are logged to \fBsyslogd\fR(8) or \fBpostlogd\fR(8).
 /* SECURITY
 /* .fi
 /* .ad
 /* SEE ALSO
 /*     postconf(5), configuration parameters
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* LICENSE
 /* .ad
index 9f4a8f14497117c71f5d90f48f35cb46ea5bf820..1a43fdfb39d9687f2e4619fad55aa2ca5df71125 100644 (file)
@@ -8,7 +8,8 @@ SRCS    = tls_prng_dev.c tls_prng_egd.c tls_prng_file.c tls_fprint.c \
        tls_proxy_client_init_print.c tls_proxy_client_init_scan.c \
        tls_proxy_server_init_print.c tls_proxy_server_init_scan.c \
        tls_proxy_client_start_print.c tls_proxy_client_start_scan.c \
-       tls_proxy_server_start_print.c tls_proxy_server_start_scan.c
+       tls_proxy_server_start_print.c tls_proxy_server_start_scan.c \
+       tls_proxy_params_print.c tls_proxy_params_scan.c tls_proxy_params.c
 OBJS   = tls_prng_dev.o tls_prng_egd.o tls_prng_file.o tls_fprint.o \
        tls_prng_exch.o tls_stream.o tls_bio_ops.o tls_misc.o tls_dh.o \
        tls_rsa.o tls_verify.o tls_dane.o tls_certkey.o tls_session.o \
@@ -16,7 +17,8 @@ OBJS  = tls_prng_dev.o tls_prng_egd.o tls_prng_file.o tls_fprint.o \
        tls_level.o \
        tls_proxy_clnt.o tls_proxy_context_print.o tls_proxy_context_scan.o \
        tls_proxy_client_print.o tls_proxy_client_scan.o \
-       tls_proxy_server_print.o tls_proxy_server_scan.o
+       tls_proxy_server_print.o tls_proxy_server_scan.o \
+       tls_proxy_params_print.o tls_proxy_params_scan.o tls_proxy_params.o
 HDRS   = tls.h tls_prng.h tls_scache.h tls_mgr.h tls_proxy.h
 TESTSRC        = 
 DEFS   = -I. -I$(INC_DIR) -D$(SYSTYPE)
@@ -429,6 +431,67 @@ tls_proxy_context_scan.o: ../../include/vstring.h
 tls_proxy_context_scan.o: tls.h
 tls_proxy_context_scan.o: tls_proxy.h
 tls_proxy_context_scan.o: tls_proxy_context_scan.c
+tls_proxy_params.o: ../../include/argv.h
+tls_proxy_params.o: ../../include/attr.h
+tls_proxy_params.o: ../../include/check_arg.h
+tls_proxy_params.o: ../../include/dns.h
+tls_proxy_params.o: ../../include/htable.h
+tls_proxy_params.o: ../../include/mail_params.h
+tls_proxy_params.o: ../../include/msg.h
+tls_proxy_params.o: ../../include/myaddrinfo.h
+tls_proxy_params.o: ../../include/mymalloc.h
+tls_proxy_params.o: ../../include/name_code.h
+tls_proxy_params.o: ../../include/name_mask.h
+tls_proxy_params.o: ../../include/nvtable.h
+tls_proxy_params.o: ../../include/sock_addr.h
+tls_proxy_params.o: ../../include/sys_defs.h
+tls_proxy_params.o: ../../include/vbuf.h
+tls_proxy_params.o: ../../include/vstream.h
+tls_proxy_params.o: ../../include/vstring.h
+tls_proxy_params.o: tls.h
+tls_proxy_params.o: tls_proxy.h
+tls_proxy_params.o: tls_proxy_params.c
+tls_proxy_params_print.o: ../../include/argv.h
+tls_proxy_params_print.o: ../../include/attr.h
+tls_proxy_params_print.o: ../../include/check_arg.h
+tls_proxy_params_print.o: ../../include/dns.h
+tls_proxy_params_print.o: ../../include/htable.h
+tls_proxy_params_print.o: ../../include/mail_params.h
+tls_proxy_params_print.o: ../../include/msg.h
+tls_proxy_params_print.o: ../../include/myaddrinfo.h
+tls_proxy_params_print.o: ../../include/mymalloc.h
+tls_proxy_params_print.o: ../../include/name_code.h
+tls_proxy_params_print.o: ../../include/name_mask.h
+tls_proxy_params_print.o: ../../include/nvtable.h
+tls_proxy_params_print.o: ../../include/sock_addr.h
+tls_proxy_params_print.o: ../../include/sys_defs.h
+tls_proxy_params_print.o: ../../include/vbuf.h
+tls_proxy_params_print.o: ../../include/vstream.h
+tls_proxy_params_print.o: ../../include/vstring.h
+tls_proxy_params_print.o: tls.h
+tls_proxy_params_print.o: tls_proxy.h
+tls_proxy_params_print.o: tls_proxy_params_print.c
+tls_proxy_params_scan.o: ../../include/argv.h
+tls_proxy_params_scan.o: ../../include/argv_attr.h
+tls_proxy_params_scan.o: ../../include/attr.h
+tls_proxy_params_scan.o: ../../include/check_arg.h
+tls_proxy_params_scan.o: ../../include/dns.h
+tls_proxy_params_scan.o: ../../include/htable.h
+tls_proxy_params_scan.o: ../../include/mail_params.h
+tls_proxy_params_scan.o: ../../include/msg.h
+tls_proxy_params_scan.o: ../../include/myaddrinfo.h
+tls_proxy_params_scan.o: ../../include/mymalloc.h
+tls_proxy_params_scan.o: ../../include/name_code.h
+tls_proxy_params_scan.o: ../../include/name_mask.h
+tls_proxy_params_scan.o: ../../include/nvtable.h
+tls_proxy_params_scan.o: ../../include/sock_addr.h
+tls_proxy_params_scan.o: ../../include/sys_defs.h
+tls_proxy_params_scan.o: ../../include/vbuf.h
+tls_proxy_params_scan.o: ../../include/vstream.h
+tls_proxy_params_scan.o: ../../include/vstring.h
+tls_proxy_params_scan.o: tls.h
+tls_proxy_params_scan.o: tls_proxy.h
+tls_proxy_params_scan.o: tls_proxy_params_scan.c
 tls_proxy_server_print.o: ../../include/argv.h
 tls_proxy_server_print.o: ../../include/attr.h
 tls_proxy_server_print.o: ../../include/check_arg.h
index b60d2f71d050593fbcfd3ce83ef9c9dbf81d2490..412d58dd7108b59a10dc718544f6d3c34c014945 100644 (file)
 
 #ifdef USE_TLS
 
+ /*
+  * TLS_PARAMS structure. If this changes, update all functions in
+  * tls_proxy_params.c, tls_proxy_params_print.c, and
+  * tls_proxy_params_scan.c.
+  * 
+  * In the serialization these attributes are identified by their configuration
+  * parameter names.
+  * 
+  * TODO: add VAR_TLS_SERVER_SNI_MAPS, maybe as part of a server-only table.
+  */
+typedef struct TLS_PARAMS {
+    char   *tls_high_clist;
+    char   *tls_medium_clist;
+    char   *tls_low_clist;
+    char   *tls_export_clist;
+    char   *tls_null_clist;
+    char   *tls_eecdh_auto;
+    char   *tls_eecdh_strong;
+    char   *tls_eecdh_ultra;
+    char   *tls_bug_tweaks;
+    char   *tls_ssl_options;
+    char   *tls_dane_agility;
+    char   *tls_dane_digests;
+    char   *tls_mgr_service;
+    char   *tls_tkt_cipher;
+    char   *openssl_path;
+    int     tls_daemon_rand_bytes;
+    int     tls_append_def_CA;
+    int     tls_bc_pkey_fprint;
+    int     tls_dane_taa_dgst;
+    int     tls_preempt_clist;
+    int     tls_multi_wildcard;
+} TLS_PARAMS;
+
+#define TLS_PROXY_PARAMS(params, a1, a2, a3, a4, a5, a6, a7, a8, \
+    a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21) \
+    (((params)->a1), ((params)->a2), ((params)->a3), \
+    ((params)->a4), ((params)->a5), ((params)->a6), ((params)->a7), \
+    ((params)->a8), ((params)->a9), ((params)->a10), ((params)->a11), \
+    ((params)->a12), ((params)->a13), ((params)->a14), ((params)->a15), \
+    ((params)->a16), ((params)->a17), ((params)->a18), ((params)->a19), \
+    ((params)->a20), ((params)->a21))
+
+ /*
+  * tls_proxy_params.c, tls_proxy_params_print.c, and
+  * tls_proxy_params_scan.c.
+  */
+extern TLS_PARAMS *tls_proxy_params_from_config(TLS_PARAMS *);
+extern char *tls_proxy_params_to_string(VSTRING *, TLS_PARAMS *);
+extern char *tls_proxy_params_with_names_to_string(VSTRING *, TLS_PARAMS *);
+extern int tls_proxy_params_print(ATTR_PRINT_MASTER_FN, VSTREAM *, int, void *);
+extern void tls_proxy_params_free(TLS_PARAMS *);
+extern int tls_proxy_params_scan(ATTR_SCAN_MASTER_FN, VSTREAM *, int, void *);
+
+ /*
+  * Functions that handle TLS_XXX_INIT_PROPS and TLS_XXX_START_PROPS. These
+  * data structures are defined elsewhere, because they are also used in
+  * non-proxied requests.
+  */
 #define tls_proxy_legacy_open(service, flags, peer_stream, peer_addr, \
                                           peer_port, timeout, serverid) \
     tls_proxy_open((service), (flags), (peer_stream), (peer_addr), \
-       (peer_port), (timeout), (timeout), (serverid), (void *) 0, (void *) 0)
+       (peer_port), (timeout), (timeout), (serverid), \
+       (void *) 0, (void *) 0, (void *) 0)
 
 extern VSTREAM *tls_proxy_open(const char *, int, VSTREAM *, const char *,
                                       const char *, int, int, const char *,
-                                      void *, void *);
+                                      TLS_PARAMS *, void *, void *);
 
 #define TLS_PROXY_CLIENT_INIT_PROPS(props, a1, a2, a3, a4, a5, a6, a7, a8, \
     a9, a10, a11, a12, a13, a14) \
     (((props)->a1), ((props)->a2), ((props)->a3), \
     ((props)->a4), ((props)->a5), ((props)->a6), ((props)->a7), \
     ((props)->a8), ((props)->a9), ((props)->a10), ((props)->a11), \
-    ((props)->a12), ((props)->a13), (props)->a14)
+    ((props)->a12), ((props)->a13), ((props)->a14))
 
 #define TLS_PROXY_CLIENT_START_PROPS(props, a1, a2, a3, a4, a5, a6, a7, a8, \
     a9, a10, a11, a12, a13, a14) \
index 3dd0aa364bb007021ab3f42c5710a468d946a646..ea02ec8f89e9403fedb7680bb5c2126d922b0ae1 100644 (file)
@@ -8,7 +8,7 @@
 /*
 /*     VSTREAM *tls_proxy_open(service, flags, peer_stream, peer_addr,
 /*                             peer_port, handshake_timeout, session_timeout,
-                               serverid, init_props, start_props)
+/*                             serverid, tls_params, init_props, start_props)
 /*     const char *service;
 /*     int     flags;
 /*     VSTREAM *peer_stream;
@@ -17,6 +17,7 @@
 /*     int     handshake_timeout;
 /*     int     session_timeout;
 /*     const char *serverid;
+/*     TLS_PARAMS *tls_params;
 /*     void    *init_props;
 /*     void    *start_props;
 /*
@@ -87,6 +88,8 @@
 /*     TLS handshake.
 /* .IP serverid
 /*     Unique service identifier.
+/* .IP tls_params
+/*     Pointer to TLS_PARAMS.
 /* .IP init_props
 /*     Pointer to TLS_CLIENT_INIT_PROPS or TLS_SERVER_INIT_PROPS.
 /* .IP start_props
@@ -150,6 +153,7 @@ VSTREAM *tls_proxy_open(const char *service, int flags,
                                int handshake_timeout,
                                int session_timeout,
                                const char *serverid,
+                               TLS_PARAMS *tls_params,
                                void *init_props,
                                void *start_props)
 {
@@ -201,6 +205,7 @@ VSTREAM *tls_proxy_open(const char *service, int flags,
     switch (flags & (TLS_PROXY_FLAG_ROLE_CLIENT | TLS_PROXY_FLAG_ROLE_SERVER)) {
     case TLS_PROXY_FLAG_ROLE_CLIENT:
        attr_print(tlsproxy_stream, ATTR_FLAG_NONE,
+                  SEND_ATTR_FUNC(tls_proxy_params_print, tls_params),
                   SEND_ATTR_FUNC(tls_proxy_client_init_print, init_props),
                   SEND_ATTR_FUNC(tls_proxy_client_start_print, start_props),
                   ATTR_TYPE_END);
@@ -208,6 +213,7 @@ VSTREAM *tls_proxy_open(const char *service, int flags,
     case TLS_PROXY_FLAG_ROLE_SERVER:
 #if 0
        attr_print(tlsproxy_stream, ATTR_FLAG_NONE,
+                  SEND_ATTR_FUNC(tls_proxy_params_print, tls_params),
                   SEND_ATTR_FUNC(tls_proxy_server_init_print, init_props),
                   SEND_ATTR_FUNC(tls_proxy_server_start_print, start_props),
                   ATTR_TYPE_END);
diff --git a/postfix/src/tls/tls_proxy_params.c b/postfix/src/tls/tls_proxy_params.c
new file mode 100644 (file)
index 0000000..2243e9e
--- /dev/null
@@ -0,0 +1,144 @@
+/*++
+/* NAME
+/*     tls_proxy_params 3
+/* SUMMARY
+/*     TLS_PARAMS structure support
+/* SYNOPSIS
+/*     #include <tls_proxy.h>
+/*
+/*     TLS_PARAMS *tls_proxy_params_from_config(params)
+/*     TLS_PARAMS *params;
+/*
+/*     char    *tls_proxy_params_to_string(buf, params)
+/*     VSTRING *buf;
+/*     TLS_PARAMS *params;
+/*
+/*     char    *tls_proxy_params_with_names_to_string(buf, params)
+/*     VSTRING *buf;
+/*     TLS_PARAMS *params;
+/* DESCRIPTION
+/*     tls_proxy_params_from_config() initializes a TLS_PARAMS
+/*     structure from configuration parameters and returns its
+/*     argument. Strings are not copied. The result must therefore
+/*     not be passed to tls_proxy_params_free().
+/*
+/*     tls_proxy_params_to_string() produces a lookup key
+/*     that is unique for the TLS_PARAMS member values.
+/*
+/*     tls_proxy_params_with_names_to_string() TODO produces a
+/*     string with "name = value\n" for each TLS_PARAMS member.
+/*     This may be useful for reporting differences between
+/*     TLS_PARAMS instances.
+/* LICENSE
+/* .ad
+/* .fi
+/*     The Secure Mailer license must be distributed with this software.
+/* AUTHOR(S)
+/*     Wietse Venema
+/*     Google, Inc.
+/*     111 8th Avenue
+/*     New York, NY 10011, USA
+/*--*/
+
+#ifdef USE_TLS
+
+/* System library. */
+
+#include <sys_defs.h>
+
+/* Utility library */
+
+#include <attr.h>
+#include <msg.h>
+
+/* Global library. */
+
+#include <mail_params.h>
+
+/* TLS library. */
+
+#include <tls.h>
+#include <tls_proxy.h>
+
+/* tls_proxy_params_from_config - initialize TLS_PARAMS from configuration */
+
+TLS_PARAMS *tls_proxy_params_from_config(TLS_PARAMS *params)
+{
+    TLS_PROXY_PARAMS(params,
+                    tls_high_clist = var_tls_high_clist,
+                    tls_medium_clist = var_tls_medium_clist,
+                    tls_low_clist = var_tls_low_clist,
+                    tls_export_clist = var_tls_export_clist,
+                    tls_null_clist = var_tls_null_clist,
+                    tls_eecdh_auto = var_tls_eecdh_auto,
+                    tls_eecdh_strong = var_tls_eecdh_strong,
+                    tls_eecdh_ultra = var_tls_eecdh_ultra,
+                    tls_bug_tweaks = var_tls_bug_tweaks,
+                    tls_ssl_options = var_tls_ssl_options,
+                    tls_dane_agility = var_tls_dane_agility,
+                    tls_dane_digests = var_tls_dane_digests,
+                    tls_mgr_service = var_tls_mgr_service,
+                    tls_tkt_cipher = var_tls_tkt_cipher,
+                    openssl_path = var_openssl_path,
+                    tls_daemon_rand_bytes = var_tls_daemon_rand_bytes,
+                    tls_append_def_CA = var_tls_append_def_CA,
+                    tls_bc_pkey_fprint = var_tls_bc_pkey_fprint,
+                    tls_dane_taa_dgst = var_tls_dane_taa_dgst,
+                    tls_preempt_clist = var_tls_preempt_clist,
+                    tls_multi_wildcard = var_tls_multi_wildcard);
+    return (params);
+}
+
+/* tls_proxy_params_to_string - serialize TLS_PARAMS to string */
+
+char   *tls_proxy_params_to_string(VSTRING *buf, TLS_PARAMS *params)
+{
+    vstring_sprintf(buf, "%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n"
+                   "%s\n%s\n%s\n%s\n%d\n%d\n%d\n%d\n%d\n%d\n",
+                   params->tls_high_clist, params->tls_medium_clist,
+                   params->tls_low_clist, params->tls_export_clist,
+                   params->tls_null_clist, params->tls_eecdh_auto,
+                   params->tls_eecdh_strong, params->tls_eecdh_ultra,
+                   params->tls_bug_tweaks, params->tls_ssl_options,
+                   params->tls_dane_agility, params->tls_dane_digests,
+                   params->tls_mgr_service, params->tls_tkt_cipher,
+                   params->openssl_path, params->tls_daemon_rand_bytes,
+                   params->tls_append_def_CA, params->tls_bc_pkey_fprint,
+                   params->tls_dane_taa_dgst, params->tls_preempt_clist,
+                   params->tls_multi_wildcard);
+    return (vstring_str(buf));
+}
+
+/* tls_proxy_params_with_names_to_string - serialize TLS_PARAMS to string */
+
+char   *tls_proxy_params_with_names_to_string(VSTRING *buf, TLS_PARAMS *params)
+{
+    vstring_sprintf(buf, "%s = %s\n%s = %s\n%s = %s\n%s = %s\n%s = %s\n"
+                   "%s = %s\n%s = %s\n%s = %s\n%s = %s\n%s = %s\n%s = %s\n"
+                   "%s = %s\n%s = %s\n%s = %s\n%s = %s\n%s = %d\n%s = %d\n"
+                   "%s = %d\n%s = %d\n%s = %d\n%s = %d\n",
+                   VAR_TLS_HIGH_CLIST, var_tls_high_clist,
+                   VAR_TLS_MEDIUM_CLIST, var_tls_medium_clist,
+                   VAR_TLS_LOW_CLIST, var_tls_low_clist,
+                   VAR_TLS_EXPORT_CLIST, var_tls_export_clist,
+                   VAR_TLS_NULL_CLIST, var_tls_null_clist,
+                   VAR_TLS_EECDH_AUTO, var_tls_eecdh_auto,
+                   VAR_TLS_EECDH_STRONG, var_tls_eecdh_strong,
+                   VAR_TLS_EECDH_ULTRA, var_tls_eecdh_ultra,
+                   VAR_TLS_BUG_TWEAKS, var_tls_bug_tweaks,
+                   VAR_TLS_SSL_OPTIONS, var_tls_ssl_options,
+                   VAR_TLS_DANE_AGILITY, var_tls_dane_agility,
+                   VAR_TLS_DANE_DIGESTS, var_tls_dane_digests,
+                   VAR_TLS_MGR_SERVICE, var_tls_mgr_service,
+                   VAR_TLS_TKT_CIPHER, var_tls_tkt_cipher,
+                   VAR_OPENSSL_PATH, var_openssl_path,
+                   VAR_TLS_DAEMON_RAND_BYTES, var_tls_daemon_rand_bytes,
+                   VAR_TLS_APPEND_DEF_CA, var_tls_append_def_CA,
+                   VAR_TLS_BC_PKEY_FPRINT, var_tls_bc_pkey_fprint,
+                   VAR_TLS_DANE_TAA_DGST, var_tls_dane_taa_dgst,
+                   VAR_TLS_PREEMPT_CLIST, var_tls_preempt_clist,
+                   VAR_TLS_MULTI_WILDCARD, var_tls_multi_wildcard);
+    return (vstring_str(buf));
+}
+
+#endif
diff --git a/postfix/src/tls/tls_proxy_params_print.c b/postfix/src/tls/tls_proxy_params_print.c
new file mode 100644 (file)
index 0000000..56f0bba
--- /dev/null
@@ -0,0 +1,108 @@
+/*++
+/* NAME
+/*     tls_proxy_params_print 3
+/* SUMMARY
+/*     write TLS_PARAMS structures to stream
+/* SYNOPSIS
+/*     #include <tls_proxy.h>
+/*
+/*     int     tls_proxy_params_print(print_fn, stream, flags, ptr)
+/*     ATTR_PRINT_MASTER_FN print_fn;
+/*     VSTREAM *stream;
+/*     int     flags;
+/*     void    *ptr;
+/* DESCRIPTION
+/*     tls_proxy_params_print() writes a TLS_PARAMS structure to
+/*     the named stream using the specified attribute print routine.
+/*     tls_proxy_params_print() is meant to be passed as a call-back to
+/*     attr_print(), thusly:
+/*
+/*     SEND_ATTR_FUNC(tls_proxy_params_print, (void *) params), ...
+/* DIAGNOSTICS
+/*     Fatal: out of memory.
+/* LICENSE
+/* .ad
+/* .fi
+/*     The Secure Mailer license must be distributed with this software.
+/* AUTHOR(S)
+/*     Wietse Venema
+/*     Google, Inc.
+/*     111 8th Avenue
+/*     New York, NY 10011, USA
+/*--*/
+
+#ifdef USE_TLS
+
+/* System library. */
+
+#include <sys_defs.h>
+
+/* Utility library */
+
+#include <attr.h>
+#include <msg.h>
+
+/* Global library. */
+
+#include <mail_params.h>
+
+/* TLS library. */
+
+#include <tls.h>
+#include <tls_proxy.h>
+
+/* tls_proxy_params_print - send TLS_PARAMS over stream */
+
+int     tls_proxy_params_print(ATTR_PRINT_MASTER_FN print_fn, VSTREAM *fp,
+                                int flags, void *ptr)
+{
+    TLS_PARAMS *params = (TLS_PARAMS *) ptr;
+    int     ret;
+
+    if (msg_verbose)
+       msg_info("begin tls_proxy_params_print");
+
+    ret = print_fn(fp, flags | ATTR_FLAG_MORE,
+                  SEND_ATTR_STR(VAR_TLS_HIGH_CLIST, params->tls_high_clist),
+                  SEND_ATTR_STR(VAR_TLS_MEDIUM_CLIST,
+                                params->tls_medium_clist),
+                  SEND_ATTR_STR(VAR_TLS_LOW_CLIST, params->tls_low_clist),
+                  SEND_ATTR_STR(VAR_TLS_EXPORT_CLIST,
+                                params->tls_export_clist),
+                  SEND_ATTR_STR(VAR_TLS_NULL_CLIST, params->tls_null_clist),
+                  SEND_ATTR_STR(VAR_TLS_EECDH_AUTO, params->tls_eecdh_auto),
+                  SEND_ATTR_STR(VAR_TLS_EECDH_STRONG,
+                                params->tls_eecdh_strong),
+                  SEND_ATTR_STR(VAR_TLS_EECDH_ULTRA,
+                                params->tls_eecdh_ultra),
+                  SEND_ATTR_STR(VAR_TLS_BUG_TWEAKS, params->tls_bug_tweaks),
+                  SEND_ATTR_STR(VAR_TLS_SSL_OPTIONS,
+                                params->tls_ssl_options),
+                  SEND_ATTR_STR(VAR_TLS_DANE_AGILITY,
+                                params->tls_dane_agility),
+                  SEND_ATTR_STR(VAR_TLS_DANE_DIGESTS,
+                                params->tls_dane_digests),
+                  SEND_ATTR_STR(VAR_TLS_MGR_SERVICE,
+                                params->tls_mgr_service),
+                  SEND_ATTR_STR(VAR_TLS_TKT_CIPHER, params->tls_tkt_cipher),
+                  SEND_ATTR_STR(VAR_OPENSSL_PATH, params->openssl_path),
+                  SEND_ATTR_INT(VAR_TLS_DAEMON_RAND_BYTES,
+                                params->tls_daemon_rand_bytes),
+                  SEND_ATTR_INT(VAR_TLS_APPEND_DEF_CA,
+                                params->tls_append_def_CA),
+                  SEND_ATTR_INT(VAR_TLS_BC_PKEY_FPRINT,
+                                params->tls_bc_pkey_fprint),
+                  SEND_ATTR_INT(VAR_TLS_DANE_TAA_DGST,
+                                params->tls_dane_taa_dgst),
+                  SEND_ATTR_INT(VAR_TLS_PREEMPT_CLIST,
+                                params->tls_preempt_clist),
+                  SEND_ATTR_INT(VAR_TLS_MULTI_WILDCARD,
+                                params->tls_multi_wildcard),
+                  ATTR_TYPE_END);
+    /* Do not flush the stream. */
+    if (msg_verbose)
+       msg_info("tls_proxy_params_print ret=%d", ret);
+    return (ret);
+}
+
+#endif
diff --git a/postfix/src/tls/tls_proxy_params_scan.c b/postfix/src/tls/tls_proxy_params_scan.c
new file mode 100644 (file)
index 0000000..eec43ec
--- /dev/null
@@ -0,0 +1,180 @@
+/*++
+/* NAME
+/*     tls_proxy_params_scan 3
+/* SUMMARY
+/*     read TLS_PARAMS structure from stream
+/* SYNOPSIS
+/*     #include <tls_proxy.h>
+/*
+/*     int     tls_proxy_params_scan(scan_fn, stream, flags, ptr)
+/*     ATTR_SCAN_MASTER_FN scan_fn;
+/*     VSTREAM *stream;
+/*     int     flags;
+/*     void    *ptr;
+/*
+/*     void    tls_proxy_params_free(params)
+/*     TLS_PARAMS *params;
+/* DESCRIPTION
+/*     tls_proxy_params_scan() reads a TLS_PARAMS structure from
+/*     the named stream using the specified attribute scan routine.
+/*     tls_proxy_params_scan() is meant to be passed as a call-back
+/*     function to attr_scan(), as shown below.
+/*
+/*     tls_proxy_params_free() destroys a TLS_PARAMS structure
+/*     that was created by tls_proxy_params_scan().
+/*
+/*     TLS_PARAMS *params = 0;
+/*     ...
+/*     ... RECV_ATTR_FUNC(tls_proxy_params_scan, (void *) &params)
+/*     ...
+/*     if (params != 0)
+/*         tls_proxy_params_free(params);
+/* DIAGNOSTICS
+/*     Fatal: out of memory.
+/* LICENSE
+/* .ad
+/* .fi
+/*     The Secure Mailer license must be distributed with this software.
+/* AUTHOR(S)
+/*     Wietse Venema
+/*     Google, Inc.
+/*     111 8th Avenue
+/*     New York, NY 10011, USA
+/*--*/
+
+#ifdef USE_TLS
+
+/* System library. */
+
+#include <sys_defs.h>
+
+/* Utility library */
+
+#include <argv_attr.h>
+#include <attr.h>
+#include <msg.h>
+#include <vstring.h>
+
+/* Global library. */
+
+#include <mail_params.h>
+
+/* TLS library. */
+
+#include <tls.h>
+#include <tls_proxy.h>
+
+#define STR(x) vstring_str(x)
+#define LEN(x) VSTRING_LEN(x)
+
+/* tls_proxy_params_free - destroy TLS_PARAMS structure */
+
+void    tls_proxy_params_free(TLS_PARAMS * params)
+{
+    myfree(params->tls_high_clist);
+    myfree(params->tls_medium_clist);
+    myfree(params->tls_low_clist);
+    myfree(params->tls_export_clist);
+    myfree(params->tls_null_clist);
+    myfree(params->tls_eecdh_auto);
+    myfree(params->tls_eecdh_strong);
+    myfree(params->tls_eecdh_ultra);
+    myfree(params->tls_bug_tweaks);
+    myfree(params->tls_ssl_options);
+    myfree(params->tls_dane_agility);
+    myfree(params->tls_dane_digests);
+    myfree(params->tls_mgr_service);
+    myfree(params->tls_tkt_cipher);
+    myfree(params->openssl_path);
+    myfree((void *) params);
+}
+
+/* tls_proxy_params_scan - receive TLS_PARAMS from stream */
+
+int     tls_proxy_params_scan(ATTR_SCAN_MASTER_FN scan_fn, VSTREAM * fp,
+                                     int flags, void *ptr)
+{
+    TLS_PARAMS *params
+    = (TLS_PARAMS *) mymalloc(sizeof(*params));
+    int     ret;
+    VSTRING *tls_high_clist = vstring_alloc(25);
+    VSTRING *tls_medium_clist = vstring_alloc(25);
+    VSTRING *tls_low_clist = vstring_alloc(25);
+    VSTRING *tls_export_clist = vstring_alloc(25);
+    VSTRING *tls_null_clist = vstring_alloc(25);
+    VSTRING *tls_eecdh_auto = vstring_alloc(25);
+    VSTRING *tls_eecdh_strong = vstring_alloc(25);
+    VSTRING *tls_eecdh_ultra = vstring_alloc(25);
+    VSTRING *tls_bug_tweaks = vstring_alloc(25);
+    VSTRING *tls_ssl_options = vstring_alloc(25);
+    VSTRING *tls_dane_agility = vstring_alloc(25);
+    VSTRING *tls_dane_digests = vstring_alloc(25);
+    VSTRING *tls_mgr_service = vstring_alloc(25);
+    VSTRING *tls_tkt_cipher = vstring_alloc(25);
+    VSTRING *openssl_path = vstring_alloc(25);
+
+    if (msg_verbose)
+       msg_info("begin tls_proxy_params_scan");
+
+    /*
+     * Note: memset() is not a portable way to initialize non-integer types.
+     */
+    memset(params, 0, sizeof(*params));
+    ret = scan_fn(fp, flags | ATTR_FLAG_MORE,
+                 RECV_ATTR_STR(VAR_TLS_HIGH_CLIST, tls_high_clist),
+                 RECV_ATTR_STR(VAR_TLS_MEDIUM_CLIST, tls_medium_clist),
+                 RECV_ATTR_STR(VAR_TLS_LOW_CLIST, tls_low_clist),
+                 RECV_ATTR_STR(VAR_TLS_EXPORT_CLIST, tls_export_clist),
+                 RECV_ATTR_STR(VAR_TLS_NULL_CLIST, tls_null_clist),
+                 RECV_ATTR_STR(VAR_TLS_EECDH_AUTO, tls_eecdh_auto),
+                 RECV_ATTR_STR(VAR_TLS_EECDH_STRONG, tls_eecdh_strong),
+                 RECV_ATTR_STR(VAR_TLS_EECDH_ULTRA, tls_eecdh_ultra),
+                 RECV_ATTR_STR(VAR_TLS_BUG_TWEAKS, tls_bug_tweaks),
+                 RECV_ATTR_STR(VAR_TLS_SSL_OPTIONS, tls_ssl_options),
+                 RECV_ATTR_STR(VAR_TLS_DANE_AGILITY, tls_dane_agility),
+                 RECV_ATTR_STR(VAR_TLS_DANE_DIGESTS, tls_dane_digests),
+                 RECV_ATTR_STR(VAR_TLS_MGR_SERVICE, tls_mgr_service),
+                 RECV_ATTR_STR(VAR_TLS_TKT_CIPHER, tls_tkt_cipher),
+                 RECV_ATTR_STR(VAR_OPENSSL_PATH, openssl_path),
+                 RECV_ATTR_INT(VAR_TLS_DAEMON_RAND_BYTES,
+                               &params->tls_daemon_rand_bytes),
+                 RECV_ATTR_INT(VAR_TLS_APPEND_DEF_CA,
+                               &params->tls_append_def_CA),
+                 RECV_ATTR_INT(VAR_TLS_BC_PKEY_FPRINT,
+                               &params->tls_bc_pkey_fprint),
+                 RECV_ATTR_INT(VAR_TLS_DANE_TAA_DGST,
+                               &params->tls_dane_taa_dgst),
+                 RECV_ATTR_INT(VAR_TLS_PREEMPT_CLIST,
+                               &params->tls_preempt_clist),
+                 RECV_ATTR_INT(VAR_TLS_MULTI_WILDCARD,
+                               &params->tls_multi_wildcard),
+                 ATTR_TYPE_END);
+    /* Always construct a well-formed structure. */
+    params->tls_high_clist = vstring_export(tls_high_clist);
+    params->tls_medium_clist = vstring_export(tls_medium_clist);
+    params->tls_low_clist = vstring_export(tls_low_clist);
+    params->tls_export_clist = vstring_export(tls_export_clist);
+    params->tls_null_clist = vstring_export(tls_null_clist);
+    params->tls_eecdh_auto = vstring_export(tls_eecdh_auto);
+    params->tls_eecdh_strong = vstring_export(tls_eecdh_strong);
+    params->tls_eecdh_ultra = vstring_export(tls_eecdh_ultra);
+    params->tls_bug_tweaks = vstring_export(tls_bug_tweaks);
+    params->tls_ssl_options = vstring_export(tls_ssl_options);
+    params->tls_dane_agility = vstring_export(tls_dane_agility);
+    params->tls_dane_digests = vstring_export(tls_dane_digests);
+    params->tls_mgr_service = vstring_export(tls_mgr_service);
+    params->tls_tkt_cipher = vstring_export(tls_tkt_cipher);
+    params->openssl_path = vstring_export(openssl_path);
+
+    ret = (ret == 21 ? 1 : -1);
+    if (ret != 1) {
+       tls_proxy_params_free(params);
+       params = 0;
+    }
+    *(TLS_PARAMS **) ptr = params;
+    if (msg_verbose)
+       msg_info("tls_proxy_params_scan ret=%d", ret);
+    return (ret);
+}
+
+#endif
index fdd3ae5f1737ffacf369ec17c0fa9ec61e20753f..db48ffbc2c12d4f7fe5886843cd89d6aef41d4e2 100644 (file)
@@ -49,7 +49,8 @@
 /*     to the Postfix-owned \fBdata_directory\fR, and a warning
 /*     is logged.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to the syslog daemon.
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /*     There is no automatic means to limit the number of entries in the
 /*     TLS session caches and/or the size of the TLS cache files.
 /*     postconf(5), configuration parameters
 /*     master(5), generic daemon options
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index b38d30c71685f33261b5d96bc0a560e1f64ec4a2..ce21c7db9d0242c8c64fb121f7d159fdbbc8c1a8 100644 (file)
@@ -81,6 +81,7 @@ tlsproxy.o: ../../include/name_mask.h
 tlsproxy.o: ../../include/nbbio.h
 tlsproxy.o: ../../include/nvtable.h
 tlsproxy.o: ../../include/sock_addr.h
+tlsproxy.o: ../../include/split_at.h
 tlsproxy.o: ../../include/sys_defs.h
 tlsproxy.o: ../../include/tls.h
 tlsproxy.o: ../../include/tls_proxy.h
index c5b101d12fd7b1af045b2633367abcfa86faacc6..3e374462f20ddbfa25aee576bf72ea16605825a6 100644 (file)
@@ -45,7 +45,8 @@
 /*     It talks to untrusted clients on the network. The process
 /*     can be run chrooted at fixed low privilege.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* CONFIGURATION PARAMETERS
 /* .ad
 /* .fi
 /*     postscreen(8), Postfix zombie blocker
 /*     smtpd(8), Postfix SMTP server
 /*     postconf(5), configuration parameters
-/*     syslogd(5), system logging
+/*     postlogd(8), Postfix logging
+/*     syslogd(8), system logging
 /* LICENSE
 /* .ad
 /* .fi
 #include <iostuff.h>
 #include <nbbio.h>
 #include <mymalloc.h>
+#include <split_at.h>
 
  /*
   * Global library.
@@ -431,6 +434,7 @@ static int ask_client_cert;
   * TLS per-client status.
   */
 static HTABLE *tlsp_client_app_cache;
+static char *tlsp_pre_jail_tls_param_key;
 static char *tlsp_pre_jail_client_props_key;
 
  /*
@@ -449,6 +453,7 @@ static char *tlsp_pre_jail_client_props_key;
   * SLMs.
   */
 #define STR(x) vstring_str(x)
+#define LEN(x) VSTRING_LEN(x)
 
  /*
   * The code that implements the TLS engine looks simpler than expected. That
@@ -1022,21 +1027,59 @@ static void tlsp_get_fd_event(int event, void *context)
     /* At this point, state could be a dangling pointer. */
 }
 
+/* tlsp_config_diff - report server-client config differences */
+
+static void tlsp_log_config_diff(const char *server_cfg, const char *client_cfg)
+{
+    VSTRING *diff_summary = vstring_alloc(100);
+    char   *saved_server = mystrdup(server_cfg);
+    char   *saved_client = mystrdup(client_cfg);
+    char   *server_field;
+    char   *client_field;
+    char   *server_next;
+    char   *client_next;
+
+    /*
+     * Not using argv_split(), because it would treat multiple consecutive
+     * newline characters as one.
+     */
+    for (server_field = saved_server, client_field = saved_client;
+        server_field && client_field;
+        server_field = server_next, client_field = client_next) {
+       server_next = split_at(server_field, '\n');
+       client_next = split_at(client_field, '\n');
+       if (strcmp(server_field, client_field) != 0) {
+           if (LEN(diff_summary) > 0)
+               vstring_sprintf_append(diff_summary, "; ");
+           vstring_sprintf_append(diff_summary, "server '%s' != client '%s'",
+                                  server_field, client_field);
+       }
+    }
+    msg_warn("%s", STR(diff_summary));
+
+    vstring_free(diff_summary);
+    myfree(saved_client);
+    myfree(saved_server);
+}
+
  /*
   * Macro for readability.
   */
-#define TLSP_CLIENT_INIT(props, a1, a2, a3, a4, a5, a6, a7, a8, a9, \
+#define TLSP_CLIENT_INIT(params, props, a1, a2, a3, a4, a5, a6, a7, a8, a9, \
     a10, a11, a12, a13, a14) \
-    tlsp_client_init(TLS_CLIENT_INIT_ARGS((props), a1, a2, a3, a4, \
+    tlsp_client_init(params, TLS_CLIENT_INIT_ARGS((props), a1, a2, a3, a4, \
     a5, a6, a7, a8, a9, a10, a11, a12, a13, a14))
 
 /* tlsp_client_init - initialize a TLS client engine */
 
-static TLS_APPL_STATE *tlsp_client_init(TLS_CLIENT_INIT_PROPS *init_props)
+static TLS_APPL_STATE *tlsp_client_init(TLS_PARAMS *tls_params,
+                                         TLS_CLIENT_INIT_PROPS *init_props)
 {
     TLS_APPL_STATE *appl_state;
-    VSTRING *buf;
-    char   *key;
+    VSTRING *param_buf;
+    char   *param_key;
+    VSTRING *init_buf;
+    char   *init_key;
 
     /*
      * Use one TLS_APPL_STATE object for all requests that specify the same
@@ -1047,19 +1090,24 @@ static TLS_APPL_STATE *tlsp_client_init(TLS_CLIENT_INIT_PROPS *init_props)
      * key that corresponds to the pre-jail internal request, which uses the
      * tlsproxy_client_* settings.
      */
-    buf = vstring_alloc(100);
-    key = tls_proxy_client_init_to_string(buf, init_props);
+    param_buf = vstring_alloc(100);
+    param_key = tls_proxy_params_to_string(param_buf, tls_params);
+    init_buf = vstring_alloc(100);
+    init_key = tls_proxy_client_init_to_string(init_buf, init_props);
     if (tlsp_pre_jail_done == 0) {
-       if (tlsp_pre_jail_client_props_key != 0)
+       if (tlsp_pre_jail_tls_param_key != 0
+           || tlsp_pre_jail_client_props_key != 0)
            msg_panic("tlsp_client_init: multiple pre-jail calls");
-       tlsp_pre_jail_client_props_key = mystrdup(key);
+       tlsp_pre_jail_tls_param_key = mystrdup(param_key);
+       tlsp_pre_jail_client_props_key = mystrdup(init_key);
     }
 
     /*
      * Log a warning if a post-jail request differs from the tlsproxy_client_*
-     * settings AND the request specifies file/directory pathname arguments.
-     * Those are problematic after chroot (pathname resolution) and after
-     * dropping privileges (key files must be root read-only).
+     * or tls_mumble settings AND the request specifies file/directory
+     * pathname arguments. Pathname differences are problematic after chroot
+     * (pathname resolution) and after dropping privileges (key files must be
+     * root read-only).
      * 
      * We can eliminate this complication by adding code that opens a cert/key
      * lookup table at pre-jail time, and by reading cert/key info on-the-fly
@@ -1067,27 +1115,38 @@ static TLS_APPL_STATE *tlsp_client_init(TLS_CLIENT_INIT_PROPS *init_props)
      */
 #define NOT_EMPTY(x) ((x) && *(x))
 
-    else if ((tlsp_pre_jail_client_props_key == 0
-             || strcmp(tlsp_pre_jail_client_props_key, key) != 0)
-            && (NOT_EMPTY(init_props->chain_files)
-                || NOT_EMPTY(init_props->cert_file)
-                || NOT_EMPTY(init_props->key_file)
-                || NOT_EMPTY(init_props->dcert_file)
-                || NOT_EMPTY(init_props->dkey_file)
-                || NOT_EMPTY(init_props->eccert_file)
-                || NOT_EMPTY(init_props->eckey_file)
-                || NOT_EMPTY(init_props->CAfile)
-                || NOT_EMPTY(init_props->CApath))) {
-       msg_warn("tls_client_init request with chain_files='%s' key_file='%s' "
-             "dkey_file='%s' eckey_file='%s' differs from tlsproxy client "
-                "settings", init_props->chain_files, init_props->key_file,
-                init_props->dkey_file, init_props->eckey_file);
-       msg_warn("to avoid this warning, 1) identify the SMTP client that is "
-                "making this tls_client_init request, 2) configure a "
-                "custom tlsproxy service with tlsproxy_client_* settings "
-                "that match that SMTP client, and 3) configure that SMTP "
-                "client with a tlsproxy_service_name setting that resolves "
-                "to that custom tlsproxy service");
+    else {
+       int     log_hints = 0;
+
+       if (tlsp_pre_jail_tls_param_key != 0
+           && strcmp(tlsp_pre_jail_tls_param_key, param_key) != 0) {
+           msg_warn("request from Postfix client with unexpected settings");
+           tlsp_log_config_diff(tlsp_pre_jail_tls_param_key, param_key);
+           log_hints = 1;
+       }
+       if (tlsp_pre_jail_client_props_key != 0
+           && strcmp(tlsp_pre_jail_client_props_key, init_key) != 0
+           && (NOT_EMPTY(init_props->chain_files)
+               || NOT_EMPTY(init_props->cert_file)
+               || NOT_EMPTY(init_props->key_file)
+               || NOT_EMPTY(init_props->dcert_file)
+               || NOT_EMPTY(init_props->dkey_file)
+               || NOT_EMPTY(init_props->eccert_file)
+               || NOT_EMPTY(init_props->eckey_file)
+               || NOT_EMPTY(init_props->CAfile)
+               || NOT_EMPTY(init_props->CApath))) {
+           msg_warn("request from tlsproxy client with unexpected settings");
+           tlsp_log_config_diff(tlsp_pre_jail_client_props_key, init_key);
+           log_hints = 1;
+       }
+       if (log_hints)
+           msg_warn("to avoid this warning, 1) identify the tlsproxy "
+                    "client that is making this request, 2) configure "
+                    "a custom tlsproxy service with settings that "
+                    "match that tlsproxy client, and 3) configure "
+                    "that tlsproxy client with a tlsproxy_service_name "
+                    "setting that resolves to that custom tlsproxy "
+                    "service");
     }
 
     /*
@@ -1099,9 +1158,9 @@ static TLS_APPL_STATE *tlsp_client_init(TLS_CLIENT_INIT_PROPS *init_props)
      * suggestions.
      */
     if ((appl_state = (TLS_APPL_STATE *)
-        htable_find(tlsp_client_app_cache, key)) == 0
+        htable_find(tlsp_client_app_cache, init_key)) == 0
        && (appl_state = tls_client_init(init_props)) != 0) {
-       (void) htable_enter(tlsp_client_app_cache, key, (void *) appl_state);
+       (void) htable_enter(tlsp_client_app_cache, init_key, (void *) appl_state);
 
        /*
         * To maintain sanity, allow partial SSL_write() operations, and
@@ -1115,7 +1174,8 @@ static TLS_APPL_STATE *tlsp_client_init(TLS_CLIENT_INIT_PROPS *init_props)
                             SSL_MODE_ENABLE_PARTIAL_WRITE
                             | SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER);
     }
-    vstring_free(buf);
+    vstring_free(init_buf);
+    vstring_free(param_buf);
     return (appl_state);
 }
 
@@ -1203,16 +1263,19 @@ static void tlsp_get_request_event(int event, void *context)
     case TLS_PROXY_FLAG_ROLE_CLIENT:
        state->is_server_role = 0;
        if (attr_scan(plaintext_stream, ATTR_FLAG_STRICT,
+                     RECV_ATTR_FUNC(tls_proxy_params_scan,
+                                    (void *) &state->tls_params),
                      RECV_ATTR_FUNC(tls_proxy_client_init_scan,
                                     (void *) &state->client_init_props),
                      RECV_ATTR_FUNC(tls_proxy_client_start_scan,
                                     (void *) &state->client_start_props),
-                     ATTR_TYPE_END) != 2) {
+                     ATTR_TYPE_END) != 3) {
            msg_warn("%s: receive client TLS settings: %m", myname);
            tlsp_state_free(state);
            return;
        }
-       state->appl_state = tlsp_client_init(state->client_init_props);
+       state->appl_state = tlsp_client_init(state->tls_params,
+                                            state->client_init_props);
        ready = state->appl_state != 0;
        break;
     case TLS_PROXY_FLAG_ROLE_SERVER:
@@ -1491,7 +1554,8 @@ static void pre_jail_init(char *unused_name, char **unused_argv)
      * Initialize the TLS data before entering the chroot jail.
      */
     if (clnt_use_tls || var_tlsp_clnt_per_site[0] || var_tlsp_clnt_policy[0]) {
-       TLS_CLIENT_INIT_PROPS props;
+       TLS_PARAMS tls_params;
+       TLS_CLIENT_INIT_PROPS init_props;
 
        tls_pre_jail_init(TLS_ROLE_CLIENT);
 
@@ -1503,7 +1567,8 @@ static void pre_jail_init(char *unused_name, char **unused_argv)
         * feature that C does not have natively: named parameter lists.
         */
        tlsp_client_ctx =
-           TLSP_CLIENT_INIT(&props,
+           TLSP_CLIENT_INIT(tls_proxy_params_from_config(&tls_params),
+                            &init_props,
                             log_param = var_tlsp_clnt_logparam,
                             log_level = var_tlsp_clnt_loglevel,
                             verifydepth = var_tlsp_clnt_scert_vd,
index fe560644ec28fd260e20cdcbf83a0905159b694a..d22764047df21c1fbba611b1f293931970bc27fc 100644 (file)
@@ -39,6 +39,7 @@ typedef struct {
     TLS_APPL_STATE *appl_state;                /* libtls state */
     TLS_SESS_STATE *tls_context;       /* libtls state */
     int     ssl_last_err;              /* TLS I/O state */
+    TLS_PARAMS *tls_params;            /* globals not part of init_props */
     TLS_SERVER_INIT_PROPS *server_init_props;
     TLS_SERVER_START_PROPS *server_start_props;
     TLS_CLIENT_INIT_PROPS *client_init_props;
index d6b88f598bfa409c4b264d1f03db220f372a78cf..12d6a2d39d6013d7e780f8a94c46e36c8bb3bccc 100644 (file)
@@ -115,6 +115,7 @@ TLSP_STATE *tlsp_state_create(const char *service,
     state->remote_endpt = 0;
     state->server_id = 0;
     state->tls_context = 0;
+    state->tls_params = 0;
     state->server_init_props = 0;
     state->server_start_props = 0;
     state->client_init_props = 0;
@@ -152,6 +153,8 @@ void    tlsp_state_free(TLSP_STATE *state)
        myfree(state->server_id);
     if (state->tls_context)
        tls_free_context(state->tls_context);
+    if (state->tls_params)
+       tls_proxy_params_free(state->tls_params);
     if (state->server_init_props)
        tls_proxy_server_init_free(state->server_init_props);
     if (state->server_start_props)
index 70c3fdcaaf92c8ad89685512c7df49d7f7c222cd..4e9ea2a4d7f22577897d99c4d346672affc75d7a 100644 (file)
@@ -32,7 +32,8 @@
 /*     nexthop, internalized recipient) triple.
 /* STANDARDS
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to the syslog daemon.
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /* SEE ALSO
 /* LICENSE
index ec01f9e79ce6c1794f92d668cdbd23965070ffa1..483463c500402de80560b77635ce5440f7c49b1c 100644 (file)
@@ -43,7 +43,8 @@
 /*     completing incomplete address forms.
 /* STANDARDS
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to the syslog daemon.
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /* SEE ALSO
 /* LICENSE
index cb49e77e23b5c810131dd1130ba92ec3ac4999a8..29c55c9b3b9d5301d33344ae2014649ec4b6e82a 100644 (file)
@@ -67,7 +67,8 @@
 /*     By default, this daemon does not talk to remote or local users.
 /*     It can run at a fixed low privilege in a chrooted environment.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* CONFIGURATION PARAMETERS
 /* .ad
 /* .fi
 /*     transport(5), transport table format
 /*     relocated(5), format of the "user has moved" table
 /*     master(8), process manager
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README FILES
 /* .ad
index 0fecb9097e78567cbdcb288bb405c407a3e60bf1..ae185c0bfefc70e9ac0102bb35284db9a878dd39 100644 (file)
@@ -55,7 +55,8 @@
 /*     non-Postfix directory is redirected to the Postfix-owned
 /*     \fBdata_directory\fR, and a warning is logged.
 /* DIAGNOSTICS
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /* BUGS
 /*     Address verification probe messages add additional traffic
 /*     to the mail queue.
 /*     smtpd(8), Postfix SMTP server
 /*     cleanup(8), enqueue Postfix message
 /*     postconf(5), configuration parameters
-/*     syslogd(5), system logging
+/*     postlogd(8), Postfix logging
+/*     syslogd(8), system logging
 /* README FILES
 /* .ad
 /* .fi
index d78171347a3459b25416e538549b494cec1ef6f6..29b1b71353236f343093121b7ba4b18b883de573 100644 (file)
 /*     recipient is over disk quota. In all other cases, mail for
 /*     an existing recipient is deferred and a warning is logged.
 /*
-/*     Problems and transactions are logged to \fBsyslogd\fR(8).
+/*     Problems and transactions are logged to \fBsyslogd\fR(8)
+/*     or \fBpostlogd\fR(8).
 /*     Corrupted message files are marked so that the queue
 /*     manager can move them to the \fBcorrupt\fR queue afterwards.
 /*
 /*     qmgr(8), queue manager
 /*     bounce(8), delivery status reports
 /*     postconf(5), configuration parameters
+/*     postlogd(8), Postfix logging
 /*     syslogd(8), system logging
 /* README_FILES
 /*     Use "\fBpostconf readme_directory\fR" or