]> git.ipfire.org Git - thirdparty/postfix.git/commitdiff
postfix-2.10-20120630
authorWietse Venema <wietse@porcupine.org>
Sat, 30 Jun 2012 05:00:00 +0000 (00:00 -0500)
committerViktor Dukhovni <viktor@dukhovni.org>
Tue, 5 Feb 2013 06:38:13 +0000 (06:38 +0000)
16 files changed:
postfix/HISTORY
postfix/WISHLIST
postfix/html/mailq.1.html
postfix/html/newaliases.1.html
postfix/html/postconf.5.html
postfix/html/sendmail.1.html
postfix/man/man1/sendmail.1
postfix/man/man5/postconf.5
postfix/proto/postconf.proto
postfix/src/global/mail_version.h
postfix/src/postscreen/postscreen_endpt.c
postfix/src/postscreen/postscreen_haproxy.c
postfix/src/sendmail/sendmail.c
postfix/src/smtpd/smtpd_haproxy.c
postfix/src/util/pass_accept.c
postfix/src/util/vstream.c

index cdc9bdd672d6581472ece2924542247ac977edbf..9426fafe081e487ec94f1d683ccce82a78a69ae2 100644 (file)
@@ -17865,3 +17865,15 @@ Apologies for any names omitted.
        Bugfix (introduced: 20120531-617): in the postscreen module
        for HAproxy sypport, a VSTREAM buffer size request was not
        LP64-clean.  File: postscreen/postscreen_haproxy.c.
+
+       Cleanup: avoid single-character reads in the postscreen
+       HAproxy module. File: postscreen/postscreen_haproxy.c.
+
+20120628
+
+       Workaround: heuristic to detect missing (ssize_t) type-cast
+       in VSTREAM buffer size requests. File: util/vstream.c.
+
+20120629
+
+       Workaround: "sendmail -bl" emulation. File: sendmail/sendmail.c.
index 8f9941d39db8bc8373750dff66bd600a2c8b4065..f1121a6fbebeb8bf8c011b0ce0b96f6a7be1241d 100644 (file)
@@ -9,16 +9,25 @@ Wish list:
        Don't forget Apple's code donation for fetching mail from
        IMAP server.
 
+       mem_pool module for frequently-allocated objects
+       such as postscreen VSTRINGS and STATE objects.
+       Operations: create, put, get, maybe destroy.
+       Call-backs: create, reset, and maybe destroy.
+
        Make "rename" the default when postmapping a DB file
        (later: use copy+rename for postmap -i, postmap -d).
 
        "no-cache" option for selected postscreen tests?
 
-       Need primitive to find out if a map has a local lock.  If
-       it doesn't (like memcache or proxied map), then postscreen
-       etc. don't need to close a cache after "postfix reload".
-       After a fork() it is OK to keep using a memcache or proxymap
-       handle, because the parent exits immediately.
+       Need a new DICT flag to indicate that a map handle supports
+       locking.  If it doesn't (as with memcache or proxymap
+       handles), then postscreen etc. don't need to close a cache
+       file after "postfix reload".  After a fork() it is OK to
+       keep using a memcache or proxymap handle, because the parent
+       exits immediately.  For this to work, the memcache client
+       needs to propagate the flag from a persistent backup map,
+       but the proxymap protocol should not propagate this to the
+       client.
 
        Different TTL values for different DNSBL sources?
 
index 619941b8f2fe87a631d5e331089f941a22962632..7dc5ccb3d3dd7dc764d315085b1d5727bf0ad41e 100644 (file)
@@ -93,85 +93,90 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        <b>-bi</b>    Initialize  alias database. See the <b>newaliases</b> com-
               mand above.
 
-       <b>-bm</b>    Read mail  from  standard  input  and  arrange  for
+       <b>-bl</b>    Go into daemon mode. To accept only  local  connec-
+              tions   as  with  Sendmail's  <b>-bl</b>  option,  specify
+              "<b><a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = loopback</b>" in the Postfix <a href="postconf.5.html"><b>main.cf</b></a>
+              configuration file.
+
+       <b>-bm</b>    Read  mail  from  standard  input  and  arrange for
               delivery.  This is the default mode of operation.
 
        <b>-bp</b>    List the mail queue. See the <b>mailq</b> command above.
 
-       <b>-bs</b>    Stand-alone  SMTP  server  mode. Read SMTP commands
-              from standard input, and write responses  to  stan-
+       <b>-bs</b>    Stand-alone SMTP server mode.  Read  SMTP  commands
+              from  standard  input, and write responses to stan-
               dard output.  In stand-alone SMTP server mode, mail
-              relaying and other access controls are disabled  by
-              default.  To  enable  them,  run the process as the
+              relaying  and other access controls are disabled by
+              default. To enable them, run  the  process  as  the
               <b><a href="postconf.5.html#mail_owner">mail_owner</a></b> user.
 
-              This mode of operation is  implemented  by  running
+              This  mode  of  operation is implemented by running
               the <a href="smtpd.8.html"><b>smtpd</b>(8)</a> daemon.
 
-       <b>-bv</b>    Do  not collect or deliver a message. Instead, send
-              an email  report  after  verifying  each  recipient
-              address.    This  is  useful  for  testing  address
+       <b>-bv</b>    Do not collect or deliver a message. Instead,  send
+              an  email  report  after  verifying  each recipient
+              address.   This  is  useful  for  testing   address
               rewriting and routing configurations.
 
-              This feature is available in  Postfix  version  2.1
+              This  feature  is  available in Postfix version 2.1
               and later.
 
        <b>-C</b> <i>config</i><b>_</b><i>file</i>
 
        <b>-C</b> <i>config</i><b>_</b><i>dir</i>
-              The  path  name  of the Postfix <a href="postconf.5.html"><b>main.cf</b></a> file, or of
-              its parent directory. This information  is  ignored
+              The path name of the Postfix <a href="postconf.5.html"><b>main.cf</b></a>  file,  or  of
+              its  parent  directory. This information is ignored
               with Postfix versions before 2.3.
 
               With all Postfix versions, you can specify a direc-
               tory  pathname  with  the  MAIL_CONFIG  environment
-              variable  to override the location of configuration
+              variable to override the location of  configuration
               files.
 
        <b>-F</b> <i>full</i><b>_</b><i>name</i>
-              Set the sender full name. This overrides  the  NAME
-              environment  variable,  and  is used only with mes-
+              Set  the  sender full name. This overrides the NAME
+              environment variable, and is used  only  with  mes-
               sages that have no <b>From:</b> message header.
 
        <b>-f</b> <i>sender</i>
               Set  the  envelope  sender  address.  This  is  the
-              address  where  delivery problems are sent to. With
+              address where delivery problems are sent  to.  With
               Postfix versions before 2.1, the <b>Errors-To:</b> message
               header overrides the error return address.
 
-       <b>-G</b>     Gateway  (relay)  submission, as opposed to initial
-              user submission.  Either do not  rewrite  addresses
-              at  all,  or  update  incomplete addresses with the
+       <b>-G</b>     Gateway (relay) submission, as opposed  to  initial
+              user  submission.   Either do not rewrite addresses
+              at all, or update  incomplete  addresses  with  the
               domain information specified with <b>remote_header_re-</b>
               <b>write_domain</b>.
 
-              This  option is ignored before Postfix version 2.3.
+              This option is ignored before Postfix version  2.3.
 
        <b>-h</b> <i>hop</i><b>_</b><i>count</i> (ignored)
-              Hop count limit. Use the <b><a href="postconf.5.html#hopcount_limit">hopcount_limit</a></b>  configura-
+              Hop  count limit. Use the <b><a href="postconf.5.html#hopcount_limit">hopcount_limit</a></b> configura-
               tion parameter instead.
 
-       <b>-I</b>     Initialize  alias database. See the <b>newaliases</b> com-
+       <b>-I</b>     Initialize alias database. See the <b>newaliases</b>  com-
               mand above.
 
-       <b>-i</b>     When reading a message from standard  input,  don't
-              treat  a line with only a <b>.</b> character as the end of
+       <b>-i</b>     When  reading  a message from standard input, don't
+              treat a line with only a <b>.</b> character as the end  of
               input.
 
        <b>-L</b> <i>label</i> (ignored)
-              The logging label. Use the  <b><a href="postconf.5.html#syslog_name">syslog_name</a></b>  configura-
+              The  logging  label. Use the <b><a href="postconf.5.html#syslog_name">syslog_name</a></b> configura-
               tion parameter instead.
 
        <b>-m</b> (ignored)
               Backwards compatibility.
 
        <b>-N</b> <i>dsn</i> (default: 'delay, failure')
-              Delivery   status   notification  control.  Specify
-              either a comma-separated list with one or  more  of
-              <b>failure</b>  (send  notification  when delivery fails),
+              Delivery  status  notification   control.   Specify
+              either  a  comma-separated list with one or more of
+              <b>failure</b> (send notification  when  delivery  fails),
               <b>delay</b> (send notification when delivery is delayed),
-              or  <b>success</b>  (send notification when the message is
-              delivered); or specify <b>never</b> (don't send any  noti-
+              or <b>success</b> (send notification when the  message  is
+              delivered);  or specify <b>never</b> (don't send any noti-
               fications at all).
 
               This feature is available in Postfix 2.3 and later.
@@ -180,77 +185,77 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               Backwards compatibility.
 
        <b>-oA</b><i>alias</i><b>_</b><i>database</i>
-              Non-default alias  database.  Specify  <i>pathname</i>  or
+              Non-default  alias  database.  Specify  <i>pathname</i> or
               <i>type</i>:<i>pathname</i>. See <a href="postalias.1.html"><b>postalias</b>(1)</a> for details.
 
        <b>-O</b> <i>option=value</i> (ignored)
-              Set  the  named <i>option</i> to <i>value</i>. Use the equivalent
+              Set the named <i>option</i> to <i>value</i>. Use  the  equivalent
               configuration parameter in <a href="postconf.5.html"><b>main.cf</b></a> instead.
 
        <b>-o7</b> (ignored)
 
        <b>-o8</b> (ignored)
               To send 8-bit or binary content, use an appropriate
-              MIME  encapsulation  and specify the appropriate <b>-B</b>
+              MIME encapsulation and specify the  appropriate  <b>-B</b>
               command-line option.
 
-       <b>-oi</b>    When reading a message from standard  input,  don't
-              treat  a line with only a <b>.</b> character as the end of
+       <b>-oi</b>    When  reading  a message from standard input, don't
+              treat a line with only a <b>.</b> character as the end  of
               input.
 
        <b>-om</b> (ignored)
-              The sender is  never  eliminated  from  alias  etc.
+              The  sender  is  never  eliminated  from alias etc.
               expansions.
 
        <b>-o</b> <i>x value</i> (ignored)
-              Set  option <i>x</i> to <i>value</i>. Use the equivalent configu-
+              Set option <i>x</i> to <i>value</i>. Use the equivalent  configu-
               ration parameter in <a href="postconf.5.html"><b>main.cf</b></a> instead.
 
        <b>-r</b> <i>sender</i>
               Set  the  envelope  sender  address.  This  is  the
-              address  where  delivery problems are sent to. With
+              address where delivery problems are sent  to.  With
               Postfix versions before 2.1, the <b>Errors-To:</b> message
               header overrides the error return address.
 
        <b>-R</b> <i>return</i><b>_</b><i>limit</i> (ignored)
-              Limit   the   size   of   bounced   mail.  Use  the
-              <b><a href="postconf.5.html#bounce_size_limit">bounce_size_limit</a></b> configuration parameter  instead.
+              Limit  the  size   of   bounced   mail.   Use   the
+              <b><a href="postconf.5.html#bounce_size_limit">bounce_size_limit</a></b>  configuration parameter instead.
 
-       <b>-q</b>     Attempt  to deliver all queued mail. This is imple-
+       <b>-q</b>     Attempt to deliver all queued mail. This is  imple-
               mented by executing the <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command.
 
               Warning:  flushing  undeliverable  mail  frequently
-              will  result  in  poor  delivery performance of all
+              will result in poor  delivery  performance  of  all
               other mail.
 
        <b>-q</b><i>interval</i> (ignored)
-              The  interval   between   queue   runs.   Use   the
+              The   interval   between   queue   runs.   Use  the
               <b><a href="postconf.5.html#queue_run_delay">queue_run_delay</a></b> configuration parameter instead.
 
        <b>-qI</b><i>queueid</i>
               Schedule immediate delivery of mail with the speci-
-              fied queue ID.  This option is implemented by  exe-
-              cuting  the  <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command, and is available
+              fied  queue ID.  This option is implemented by exe-
+              cuting the <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command, and  is  available
               with Postfix version 2.4 and later.
 
        <b>-qR</b><i>site</i>
-              Schedule immediate delivery of  all  mail  that  is
+              Schedule  immediate  delivery  of  all mail that is
               queued for the named <i>site</i>. This option accepts only
-              <i>site</i> names that are eligible for the  "fast  flush"
-              service,   and  is  implemented  by  executing  the
+              <i>site</i>  names  that are eligible for the "fast flush"
+              service,  and  is  implemented  by  executing   the
               <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command.  See <a href="flush.8.html"><b>flush</b>(8)</a> for more infor-
               mation about the "fast flush" service.
 
        <b>-qS</b><i>site</i>
-              This  command  is  not  implemented. Use the slower
+              This command is not  implemented.  Use  the  slower
               "<b>sendmail -q</b>" command instead.
 
-       <b>-t</b>     Extract recipients from message headers. These  are
-              added  to  any  recipients specified on the command
+       <b>-t</b>     Extract  recipients from message headers. These are
+              added to any recipients specified  on  the  command
               line.
 
-              With Postfix versions prior  to  2.1,  this  option
-              requires  that no recipient addresses are specified
+              With  Postfix  versions  prior  to 2.1, this option
+              requires that no recipient addresses are  specified
               on the command line.
 
        <b>-U</b> (ignored)
@@ -263,41 +268,41 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               This feature is available in Postfix 2.3 and later.
 
        <b>-XV</b> (Postfix 2.2 and earlier: <b>-V</b>)
-              Variable Envelope Return Path.  Given  an  envelope
-              sender  address  of the form <i>owner-listname</i>@<i>origin</i>,
-              each recipient <i>user</i>@<i>domain</i>  receives  mail  with  a
+              Variable  Envelope  Return  Path. Given an envelope
+              sender address of the  form  <i>owner-listname</i>@<i>origin</i>,
+              each  recipient  <i>user</i>@<i>domain</i>  receives  mail with a
               personalized envelope sender address.
 
-              By   default,   the  personalized  envelope  sender
-              address is  <i>owner-listname</i><b>+</b><i>user</i><b>=</b><i>domain</i>@<i>origin</i>.  The
-              default  <b>+</b>  and  <b>=</b> characters are configurable with
-              the <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>  configuration  parame-
+              By  default,  the  personalized   envelope   sender
+              address  is  <i>owner-listname</i><b>+</b><i>user</i><b>=</b><i>domain</i>@<i>origin</i>. The
+              default <b>+</b> and <b>=</b> characters  are  configurable  with
+              the  <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>  configuration parame-
               ter.
 
        <b>-XV</b><i>xy</i> (Postfix 2.2 and earlier: <b>-V</b><i>xy</i>)
-              As  <b>-XV</b>,  but  uses  <i>x</i>  and <i>y</i> as the VERP delimiter
-              characters, instead  of  the  characters  specified
-              with   the   <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>  configuration
+              As <b>-XV</b>, but uses <i>x</i> and  <i>y</i>  as  the  VERP  delimiter
+              characters,  instead  of  the  characters specified
+              with  the   <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>   configuration
               parameter.
 
-       <b>-v</b>     Send an email report of the first delivery  attempt
-              (Postfix  versions  2.1  and  later). Mail delivery
-              always happens in the background. When multiple  <b>-v</b>
+       <b>-v</b>     Send  an email report of the first delivery attempt
+              (Postfix versions 2.1  and  later).  Mail  delivery
+              always  happens in the background. When multiple <b>-v</b>
               options  are  given,  enable  verbose  logging  for
               debugging purposes.
 
        <b>-X</b> <i>log</i><b>_</b><i>file</i> (ignored)
-              Log mailer traffic.  Use  the  <b><a href="postconf.5.html#debug_peer_list">debug_peer_list</a></b>  and
-              <b><a href="postconf.5.html#debug_peer_level">debug_peer_level</a></b>  configuration parameters instead.
+              Log  mailer  traffic.  Use  the <b><a href="postconf.5.html#debug_peer_list">debug_peer_list</a></b> and
+              <b><a href="postconf.5.html#debug_peer_level">debug_peer_level</a></b> configuration parameters  instead.
 
 <b>SECURITY</b>
-       By design, this program is not  set-user  (or  group)  id.
-       However,  it  must  handle  data  from untrusted, possibly
-       remote, users.  Thus, the usual  precautions  need  to  be
+       By  design,  this  program  is not set-user (or group) id.
+       However, it must  handle  data  from  untrusted,  possibly
+       remote,  users.   Thus,  the  usual precautions need to be
        taken against malicious inputs.
 
 <b>DIAGNOSTICS</b>
-       Problems  are  logged  to  <b>syslogd</b>(8)  and to the standard
+       Problems are logged to  <b>syslogd</b>(8)  and  to  the  standard
        error stream.
 
 <b>ENVIRONMENT</b>
@@ -309,29 +314,29 @@ SENDMAIL(1)                                                        SENDMAIL(1)
 
        <b>MAIL_DEBUG</b> (value does not matter)
               Enable debugging with an external command, as spec-
-              ified   with   the  <b><a href="postconf.5.html#debugger_command">debugger_command</a></b>  configuration
+              ified  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  mes-
-              sages  that  have no <b>From:</b> message header. See also
+       <b>NAME</b>   The  sender  full name. This is used only with mes-
+              sages 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
+       The  following  <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant
        to this program.  The text below provides only a parameter
-       summary. See <a href="postconf.5.html"><b>postconf</b>(5)</a> for more details including  exam-
+       summary.  See <a href="postconf.5.html"><b>postconf</b>(5)</a> for more details including exam-
        ples.
 
 <b>COMPATIBILITY CONTROLS</b>
        Available with Postfix 2.9 and later:
 
        <b><a href="postconf.5.html#sendmail_fix_line_endings">sendmail_fix_line_endings</a> (always)</b>
-              Controls  how the Postfix sendmail command converts
-              email message line endings from &lt;CR&gt;&lt;LF&gt; into  UNIX
+              Controls how the Postfix sendmail command  converts
+              email  message 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 trouble
+       The <a href="DEBUG_README.html">DEBUG_README</a> file gives examples  of  how  to  trouble
        shoot a Postfix system.
 
        <b><a href="postconf.5.html#debugger_command">debugger_command</a> (empty)</b>
@@ -339,29 +344,29 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               mon program is 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 server matches a  pattern  in  the
+              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 address patterns that cause the  verbose
-              logging  level  to increase by the amount specified
+              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>.
 
 <b>ACCESS CONTROLS</b>
        Available in Postfix version 2.2 and later:
 
        <b><a href="postconf.5.html#authorized_flush_users">authorized_flush_users</a> (<a href="DATABASE_README.html#types">static</a>:anyone)</b>
-              List of users  who  are  authorized  to  flush  the
+              List  of  users  who  are  authorized  to flush the
               queue.
 
        <b><a href="postconf.5.html#authorized_mailq_users">authorized_mailq_users</a> (<a href="DATABASE_README.html#types">static</a>:anyone)</b>
               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>sendmail</b>(1)</a> command (and with the privi-
+              List  of  users  who  are authorized to submit mail
+              with the <a href="sendmail.1.html"><b>sendmail</b>(1)</a> command (and with  the  privi-
               leged <a href="postdrop.1.html"><b>postdrop</b>(1)</a> helper command).
 
 <b>RESOURCE AND RATE CONTROLS</b>
@@ -370,7 +375,7 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               sent in a non-delivery notification.
 
        <b><a href="postconf.5.html#fork_attempts">fork_attempts</a> (5)</b>
-              The  maximal  number  of attempts to fork() a child
+              The maximal number of attempts to  fork()  a  child
               process.
 
        <b><a href="postconf.5.html#fork_delay">fork_delay</a> (1s)</b>
@@ -378,11 +383,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               process.
 
        <b><a href="postconf.5.html#hopcount_limit">hopcount_limit</a> (50)</b>
-              The  maximal  number  of Received:  message headers
+              The maximal number of  Received:   message  headers
               that is allowed 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
+              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.
 
@@ -392,37 +397,37 @@ SENDMAIL(1)                                                        SENDMAIL(1)
 
        <b><a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a> ($<a href="postconf.5.html#relay_domains">relay_domains</a>)</b>
               Optional list of destinations that are eligible for
-              per-destination logfiles with mail that  is  queued
+              per-destination  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 Postfix support for  variable  envelope  return
+       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 Postfix <a href="sendmail.1.html"><b>sendmail</b>(1)</a> command  line
+              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
+              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  com-
+              The  location  of  all  postfix administrative com-
               mands.
 
        <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
+              The default location of  the  Postfix  <a href="postconf.5.html">main.cf</a>  and
               <a href="master.5.html">master.cf</a> configuration files.
 
        <b><a href="postconf.5.html#daemon_directory">daemon_directory</a> (see 'postconf -d' output)</b>
-              The directory with  Postfix  support  programs  and
+              The  directory  with  Postfix  support programs and
               daemon programs.
 
        <b><a href="postconf.5.html#default_database_type">default_database_type</a> (see 'postconf -d' output)</b>
@@ -430,16 +435,16 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               <a href="postalias.1.html"><b>postalias</b>(1)</a> 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  the  mes-
+              The  time  after which the sender receives the mes-
               sage headers of mail that is still queued.
 
        <b><a href="postconf.5.html#enable_errors_to">enable_errors_to</a> (no)</b>
-              Report  mail  delivery errors to the address speci-
-              fied  with  the  non-standard  Errors-To:   message
-              header,  instead  of  the  envelope  sender address
-              (this feature is removed with Postfix version  2.2,
-              is  turned off by default with Postfix version 2.1,
-              and is always turned on  with  older  Postfix  ver-
+              Report mail delivery errors to the  address  speci-
+              fied   with  the  non-standard  Errors-To:  message
+              header, instead  of  the  envelope  sender  address
+              (this  feature is removed with Postfix version 2.2,
+              is turned off by default with Postfix version  2.1,
+              and  is  always  turned  on with older Postfix ver-
               sions).
 
        <b><a href="postconf.5.html#mail_owner">mail_owner</a> (postfix)</b>
@@ -447,21 +452,21 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               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  direc-
+              The  location of the Postfix top-level queue direc-
               tory.
 
        <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
+              Don't rewrite message headers from  remote  clients
               at all when this parameter is empty; otherwise, re-
-              write  message  headers  and  append  the specified
+              write 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>
-              The mail system  name  that  is  prepended  to  the
-              process  name  in  syslog  records, so that "smtpd"
+              The  mail  system  name  that  is  prepended to the
+              process name in syslog  records,  so  that  "smtpd"
               becomes, for example, "postfix/smtpd".
 
 <b>FILES</b>
@@ -486,7 +491,7 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        <a href="VERP_README.html">VERP_README</a>, Postfix VERP howto
 
 <b>LICENSE</b>
-       The  Secure  Mailer  license must be distributed with this
+       The Secure Mailer license must be  distributed  with  this
        software.
 
 <b>AUTHOR(S)</b>
index 619941b8f2fe87a631d5e331089f941a22962632..7dc5ccb3d3dd7dc764d315085b1d5727bf0ad41e 100644 (file)
@@ -93,85 +93,90 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        <b>-bi</b>    Initialize  alias database. See the <b>newaliases</b> com-
               mand above.
 
-       <b>-bm</b>    Read mail  from  standard  input  and  arrange  for
+       <b>-bl</b>    Go into daemon mode. To accept only  local  connec-
+              tions   as  with  Sendmail's  <b>-bl</b>  option,  specify
+              "<b><a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = loopback</b>" in the Postfix <a href="postconf.5.html"><b>main.cf</b></a>
+              configuration file.
+
+       <b>-bm</b>    Read  mail  from  standard  input  and  arrange for
               delivery.  This is the default mode of operation.
 
        <b>-bp</b>    List the mail queue. See the <b>mailq</b> command above.
 
-       <b>-bs</b>    Stand-alone  SMTP  server  mode. Read SMTP commands
-              from standard input, and write responses  to  stan-
+       <b>-bs</b>    Stand-alone SMTP server mode.  Read  SMTP  commands
+              from  standard  input, and write responses to stan-
               dard output.  In stand-alone SMTP server mode, mail
-              relaying and other access controls are disabled  by
-              default.  To  enable  them,  run the process as the
+              relaying  and other access controls are disabled by
+              default. To enable them, run  the  process  as  the
               <b><a href="postconf.5.html#mail_owner">mail_owner</a></b> user.
 
-              This mode of operation is  implemented  by  running
+              This  mode  of  operation is implemented by running
               the <a href="smtpd.8.html"><b>smtpd</b>(8)</a> daemon.
 
-       <b>-bv</b>    Do  not collect or deliver a message. Instead, send
-              an email  report  after  verifying  each  recipient
-              address.    This  is  useful  for  testing  address
+       <b>-bv</b>    Do not collect or deliver a message. Instead,  send
+              an  email  report  after  verifying  each recipient
+              address.   This  is  useful  for  testing   address
               rewriting and routing configurations.
 
-              This feature is available in  Postfix  version  2.1
+              This  feature  is  available in Postfix version 2.1
               and later.
 
        <b>-C</b> <i>config</i><b>_</b><i>file</i>
 
        <b>-C</b> <i>config</i><b>_</b><i>dir</i>
-              The  path  name  of the Postfix <a href="postconf.5.html"><b>main.cf</b></a> file, or of
-              its parent directory. This information  is  ignored
+              The path name of the Postfix <a href="postconf.5.html"><b>main.cf</b></a>  file,  or  of
+              its  parent  directory. This information is ignored
               with Postfix versions before 2.3.
 
               With all Postfix versions, you can specify a direc-
               tory  pathname  with  the  MAIL_CONFIG  environment
-              variable  to override the location of configuration
+              variable to override the location of  configuration
               files.
 
        <b>-F</b> <i>full</i><b>_</b><i>name</i>
-              Set the sender full name. This overrides  the  NAME
-              environment  variable,  and  is used only with mes-
+              Set  the  sender full name. This overrides the NAME
+              environment variable, and is used  only  with  mes-
               sages that have no <b>From:</b> message header.
 
        <b>-f</b> <i>sender</i>
               Set  the  envelope  sender  address.  This  is  the
-              address  where  delivery problems are sent to. With
+              address where delivery problems are sent  to.  With
               Postfix versions before 2.1, the <b>Errors-To:</b> message
               header overrides the error return address.
 
-       <b>-G</b>     Gateway  (relay)  submission, as opposed to initial
-              user submission.  Either do not  rewrite  addresses
-              at  all,  or  update  incomplete addresses with the
+       <b>-G</b>     Gateway (relay) submission, as opposed  to  initial
+              user  submission.   Either do not rewrite addresses
+              at all, or update  incomplete  addresses  with  the
               domain information specified with <b>remote_header_re-</b>
               <b>write_domain</b>.
 
-              This  option is ignored before Postfix version 2.3.
+              This option is ignored before Postfix version  2.3.
 
        <b>-h</b> <i>hop</i><b>_</b><i>count</i> (ignored)
-              Hop count limit. Use the <b><a href="postconf.5.html#hopcount_limit">hopcount_limit</a></b>  configura-
+              Hop  count limit. Use the <b><a href="postconf.5.html#hopcount_limit">hopcount_limit</a></b> configura-
               tion parameter instead.
 
-       <b>-I</b>     Initialize  alias database. See the <b>newaliases</b> com-
+       <b>-I</b>     Initialize alias database. See the <b>newaliases</b>  com-
               mand above.
 
-       <b>-i</b>     When reading a message from standard  input,  don't
-              treat  a line with only a <b>.</b> character as the end of
+       <b>-i</b>     When  reading  a message from standard input, don't
+              treat a line with only a <b>.</b> character as the end  of
               input.
 
        <b>-L</b> <i>label</i> (ignored)
-              The logging label. Use the  <b><a href="postconf.5.html#syslog_name">syslog_name</a></b>  configura-
+              The  logging  label. Use the <b><a href="postconf.5.html#syslog_name">syslog_name</a></b> configura-
               tion parameter instead.
 
        <b>-m</b> (ignored)
               Backwards compatibility.
 
        <b>-N</b> <i>dsn</i> (default: 'delay, failure')
-              Delivery   status   notification  control.  Specify
-              either a comma-separated list with one or  more  of
-              <b>failure</b>  (send  notification  when delivery fails),
+              Delivery  status  notification   control.   Specify
+              either  a  comma-separated list with one or more of
+              <b>failure</b> (send notification  when  delivery  fails),
               <b>delay</b> (send notification when delivery is delayed),
-              or  <b>success</b>  (send notification when the message is
-              delivered); or specify <b>never</b> (don't send any  noti-
+              or <b>success</b> (send notification when the  message  is
+              delivered);  or specify <b>never</b> (don't send any noti-
               fications at all).
 
               This feature is available in Postfix 2.3 and later.
@@ -180,77 +185,77 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               Backwards compatibility.
 
        <b>-oA</b><i>alias</i><b>_</b><i>database</i>
-              Non-default alias  database.  Specify  <i>pathname</i>  or
+              Non-default  alias  database.  Specify  <i>pathname</i> or
               <i>type</i>:<i>pathname</i>. See <a href="postalias.1.html"><b>postalias</b>(1)</a> for details.
 
        <b>-O</b> <i>option=value</i> (ignored)
-              Set  the  named <i>option</i> to <i>value</i>. Use the equivalent
+              Set the named <i>option</i> to <i>value</i>. Use  the  equivalent
               configuration parameter in <a href="postconf.5.html"><b>main.cf</b></a> instead.
 
        <b>-o7</b> (ignored)
 
        <b>-o8</b> (ignored)
               To send 8-bit or binary content, use an appropriate
-              MIME  encapsulation  and specify the appropriate <b>-B</b>
+              MIME encapsulation and specify the  appropriate  <b>-B</b>
               command-line option.
 
-       <b>-oi</b>    When reading a message from standard  input,  don't
-              treat  a line with only a <b>.</b> character as the end of
+       <b>-oi</b>    When  reading  a message from standard input, don't
+              treat a line with only a <b>.</b> character as the end  of
               input.
 
        <b>-om</b> (ignored)
-              The sender is  never  eliminated  from  alias  etc.
+              The  sender  is  never  eliminated  from alias etc.
               expansions.
 
        <b>-o</b> <i>x value</i> (ignored)
-              Set  option <i>x</i> to <i>value</i>. Use the equivalent configu-
+              Set option <i>x</i> to <i>value</i>. Use the equivalent  configu-
               ration parameter in <a href="postconf.5.html"><b>main.cf</b></a> instead.
 
        <b>-r</b> <i>sender</i>
               Set  the  envelope  sender  address.  This  is  the
-              address  where  delivery problems are sent to. With
+              address where delivery problems are sent  to.  With
               Postfix versions before 2.1, the <b>Errors-To:</b> message
               header overrides the error return address.
 
        <b>-R</b> <i>return</i><b>_</b><i>limit</i> (ignored)
-              Limit   the   size   of   bounced   mail.  Use  the
-              <b><a href="postconf.5.html#bounce_size_limit">bounce_size_limit</a></b> configuration parameter  instead.
+              Limit  the  size   of   bounced   mail.   Use   the
+              <b><a href="postconf.5.html#bounce_size_limit">bounce_size_limit</a></b>  configuration parameter instead.
 
-       <b>-q</b>     Attempt  to deliver all queued mail. This is imple-
+       <b>-q</b>     Attempt to deliver all queued mail. This is  imple-
               mented by executing the <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command.
 
               Warning:  flushing  undeliverable  mail  frequently
-              will  result  in  poor  delivery performance of all
+              will result in poor  delivery  performance  of  all
               other mail.
 
        <b>-q</b><i>interval</i> (ignored)
-              The  interval   between   queue   runs.   Use   the
+              The   interval   between   queue   runs.   Use  the
               <b><a href="postconf.5.html#queue_run_delay">queue_run_delay</a></b> configuration parameter instead.
 
        <b>-qI</b><i>queueid</i>
               Schedule immediate delivery of mail with the speci-
-              fied queue ID.  This option is implemented by  exe-
-              cuting  the  <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command, and is available
+              fied  queue ID.  This option is implemented by exe-
+              cuting the <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command, and  is  available
               with Postfix version 2.4 and later.
 
        <b>-qR</b><i>site</i>
-              Schedule immediate delivery of  all  mail  that  is
+              Schedule  immediate  delivery  of  all mail that is
               queued for the named <i>site</i>. This option accepts only
-              <i>site</i> names that are eligible for the  "fast  flush"
-              service,   and  is  implemented  by  executing  the
+              <i>site</i>  names  that are eligible for the "fast flush"
+              service,  and  is  implemented  by  executing   the
               <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command.  See <a href="flush.8.html"><b>flush</b>(8)</a> for more infor-
               mation about the "fast flush" service.
 
        <b>-qS</b><i>site</i>
-              This  command  is  not  implemented. Use the slower
+              This command is not  implemented.  Use  the  slower
               "<b>sendmail -q</b>" command instead.
 
-       <b>-t</b>     Extract recipients from message headers. These  are
-              added  to  any  recipients specified on the command
+       <b>-t</b>     Extract  recipients from message headers. These are
+              added to any recipients specified  on  the  command
               line.
 
-              With Postfix versions prior  to  2.1,  this  option
-              requires  that no recipient addresses are specified
+              With  Postfix  versions  prior  to 2.1, this option
+              requires that no recipient addresses are  specified
               on the command line.
 
        <b>-U</b> (ignored)
@@ -263,41 +268,41 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               This feature is available in Postfix 2.3 and later.
 
        <b>-XV</b> (Postfix 2.2 and earlier: <b>-V</b>)
-              Variable Envelope Return Path.  Given  an  envelope
-              sender  address  of the form <i>owner-listname</i>@<i>origin</i>,
-              each recipient <i>user</i>@<i>domain</i>  receives  mail  with  a
+              Variable  Envelope  Return  Path. Given an envelope
+              sender address of the  form  <i>owner-listname</i>@<i>origin</i>,
+              each  recipient  <i>user</i>@<i>domain</i>  receives  mail with a
               personalized envelope sender address.
 
-              By   default,   the  personalized  envelope  sender
-              address is  <i>owner-listname</i><b>+</b><i>user</i><b>=</b><i>domain</i>@<i>origin</i>.  The
-              default  <b>+</b>  and  <b>=</b> characters are configurable with
-              the <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>  configuration  parame-
+              By  default,  the  personalized   envelope   sender
+              address  is  <i>owner-listname</i><b>+</b><i>user</i><b>=</b><i>domain</i>@<i>origin</i>. The
+              default <b>+</b> and <b>=</b> characters  are  configurable  with
+              the  <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>  configuration parame-
               ter.
 
        <b>-XV</b><i>xy</i> (Postfix 2.2 and earlier: <b>-V</b><i>xy</i>)
-              As  <b>-XV</b>,  but  uses  <i>x</i>  and <i>y</i> as the VERP delimiter
-              characters, instead  of  the  characters  specified
-              with   the   <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>  configuration
+              As <b>-XV</b>, but uses <i>x</i> and  <i>y</i>  as  the  VERP  delimiter
+              characters,  instead  of  the  characters specified
+              with  the   <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>   configuration
               parameter.
 
-       <b>-v</b>     Send an email report of the first delivery  attempt
-              (Postfix  versions  2.1  and  later). Mail delivery
-              always happens in the background. When multiple  <b>-v</b>
+       <b>-v</b>     Send  an email report of the first delivery attempt
+              (Postfix versions 2.1  and  later).  Mail  delivery
+              always  happens in the background. When multiple <b>-v</b>
               options  are  given,  enable  verbose  logging  for
               debugging purposes.
 
        <b>-X</b> <i>log</i><b>_</b><i>file</i> (ignored)
-              Log mailer traffic.  Use  the  <b><a href="postconf.5.html#debug_peer_list">debug_peer_list</a></b>  and
-              <b><a href="postconf.5.html#debug_peer_level">debug_peer_level</a></b>  configuration parameters instead.
+              Log  mailer  traffic.  Use  the <b><a href="postconf.5.html#debug_peer_list">debug_peer_list</a></b> and
+              <b><a href="postconf.5.html#debug_peer_level">debug_peer_level</a></b> configuration parameters  instead.
 
 <b>SECURITY</b>
-       By design, this program is not  set-user  (or  group)  id.
-       However,  it  must  handle  data  from untrusted, possibly
-       remote, users.  Thus, the usual  precautions  need  to  be
+       By  design,  this  program  is not set-user (or group) id.
+       However, it must  handle  data  from  untrusted,  possibly
+       remote,  users.   Thus,  the  usual precautions need to be
        taken against malicious inputs.
 
 <b>DIAGNOSTICS</b>
-       Problems  are  logged  to  <b>syslogd</b>(8)  and to the standard
+       Problems are logged to  <b>syslogd</b>(8)  and  to  the  standard
        error stream.
 
 <b>ENVIRONMENT</b>
@@ -309,29 +314,29 @@ SENDMAIL(1)                                                        SENDMAIL(1)
 
        <b>MAIL_DEBUG</b> (value does not matter)
               Enable debugging with an external command, as spec-
-              ified   with   the  <b><a href="postconf.5.html#debugger_command">debugger_command</a></b>  configuration
+              ified  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  mes-
-              sages  that  have no <b>From:</b> message header. See also
+       <b>NAME</b>   The  sender  full name. This is used only with mes-
+              sages 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
+       The  following  <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant
        to this program.  The text below provides only a parameter
-       summary. See <a href="postconf.5.html"><b>postconf</b>(5)</a> for more details including  exam-
+       summary.  See <a href="postconf.5.html"><b>postconf</b>(5)</a> for more details including exam-
        ples.
 
 <b>COMPATIBILITY CONTROLS</b>
        Available with Postfix 2.9 and later:
 
        <b><a href="postconf.5.html#sendmail_fix_line_endings">sendmail_fix_line_endings</a> (always)</b>
-              Controls  how the Postfix sendmail command converts
-              email message line endings from &lt;CR&gt;&lt;LF&gt; into  UNIX
+              Controls how the Postfix sendmail command  converts
+              email  message 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 trouble
+       The <a href="DEBUG_README.html">DEBUG_README</a> file gives examples  of  how  to  trouble
        shoot a Postfix system.
 
        <b><a href="postconf.5.html#debugger_command">debugger_command</a> (empty)</b>
@@ -339,29 +344,29 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               mon program is 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 server matches a  pattern  in  the
+              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 address patterns that cause the  verbose
-              logging  level  to increase by the amount specified
+              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>.
 
 <b>ACCESS CONTROLS</b>
        Available in Postfix version 2.2 and later:
 
        <b><a href="postconf.5.html#authorized_flush_users">authorized_flush_users</a> (<a href="DATABASE_README.html#types">static</a>:anyone)</b>
-              List of users  who  are  authorized  to  flush  the
+              List  of  users  who  are  authorized  to flush the
               queue.
 
        <b><a href="postconf.5.html#authorized_mailq_users">authorized_mailq_users</a> (<a href="DATABASE_README.html#types">static</a>:anyone)</b>
               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>sendmail</b>(1)</a> command (and with the privi-
+              List  of  users  who  are authorized to submit mail
+              with the <a href="sendmail.1.html"><b>sendmail</b>(1)</a> command (and with  the  privi-
               leged <a href="postdrop.1.html"><b>postdrop</b>(1)</a> helper command).
 
 <b>RESOURCE AND RATE CONTROLS</b>
@@ -370,7 +375,7 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               sent in a non-delivery notification.
 
        <b><a href="postconf.5.html#fork_attempts">fork_attempts</a> (5)</b>
-              The  maximal  number  of attempts to fork() a child
+              The maximal number of attempts to  fork()  a  child
               process.
 
        <b><a href="postconf.5.html#fork_delay">fork_delay</a> (1s)</b>
@@ -378,11 +383,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               process.
 
        <b><a href="postconf.5.html#hopcount_limit">hopcount_limit</a> (50)</b>
-              The  maximal  number  of Received:  message headers
+              The maximal number of  Received:   message  headers
               that is allowed 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
+              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.
 
@@ -392,37 +397,37 @@ SENDMAIL(1)                                                        SENDMAIL(1)
 
        <b><a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a> ($<a href="postconf.5.html#relay_domains">relay_domains</a>)</b>
               Optional list of destinations that are eligible for
-              per-destination logfiles with mail that  is  queued
+              per-destination  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 Postfix support for  variable  envelope  return
+       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 Postfix <a href="sendmail.1.html"><b>sendmail</b>(1)</a> command  line
+              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
+              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  com-
+              The  location  of  all  postfix administrative com-
               mands.
 
        <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
+              The default location of  the  Postfix  <a href="postconf.5.html">main.cf</a>  and
               <a href="master.5.html">master.cf</a> configuration files.
 
        <b><a href="postconf.5.html#daemon_directory">daemon_directory</a> (see 'postconf -d' output)</b>
-              The directory with  Postfix  support  programs  and
+              The  directory  with  Postfix  support programs and
               daemon programs.
 
        <b><a href="postconf.5.html#default_database_type">default_database_type</a> (see 'postconf -d' output)</b>
@@ -430,16 +435,16 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               <a href="postalias.1.html"><b>postalias</b>(1)</a> 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  the  mes-
+              The  time  after which the sender receives the mes-
               sage headers of mail that is still queued.
 
        <b><a href="postconf.5.html#enable_errors_to">enable_errors_to</a> (no)</b>
-              Report  mail  delivery errors to the address speci-
-              fied  with  the  non-standard  Errors-To:   message
-              header,  instead  of  the  envelope  sender address
-              (this feature is removed with Postfix version  2.2,
-              is  turned off by default with Postfix version 2.1,
-              and is always turned on  with  older  Postfix  ver-
+              Report mail delivery errors to the  address  speci-
+              fied   with  the  non-standard  Errors-To:  message
+              header, instead  of  the  envelope  sender  address
+              (this  feature is removed with Postfix version 2.2,
+              is turned off by default with Postfix version  2.1,
+              and  is  always  turned  on with older Postfix ver-
               sions).
 
        <b><a href="postconf.5.html#mail_owner">mail_owner</a> (postfix)</b>
@@ -447,21 +452,21 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               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  direc-
+              The  location of the Postfix top-level queue direc-
               tory.
 
        <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
+              Don't rewrite message headers from  remote  clients
               at all when this parameter is empty; otherwise, re-
-              write  message  headers  and  append  the specified
+              write 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>
-              The mail system  name  that  is  prepended  to  the
-              process  name  in  syslog  records, so that "smtpd"
+              The  mail  system  name  that  is  prepended to the
+              process name in syslog  records,  so  that  "smtpd"
               becomes, for example, "postfix/smtpd".
 
 <b>FILES</b>
@@ -486,7 +491,7 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        <a href="VERP_README.html">VERP_README</a>, Postfix VERP howto
 
 <b>LICENSE</b>
-       The  Secure  Mailer  license must be distributed with this
+       The Secure Mailer license must be  distributed  with  this
        software.
 
 <b>AUTHOR(S)</b>
index 072b7be32f2bc41766282162bab3ed04c52ea163..edf9e3d156f792ec44fa63b42ed23678f33a8caf 100644 (file)
@@ -12969,8 +12969,8 @@ feature is available in Postfix 2.1 and later.
 
 <dt><b><a name="reject_invalid_helo_hostname">reject_invalid_helo_hostname</a></b> (with Postfix &lt; 2.3: reject_invalid_hostname)</dt>
 
-<dd>Reject the request when the HELO or EHLO hostname syntax is
-invalid. Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce
+<dd>Reject the request when the HELO or EHLO hostname is malformed.
+Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce
 this restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can simply
 skip <a href="postconf.5.html#reject_invalid_helo_hostname">reject_invalid_helo_hostname</a> by not sending HELO or EHLO).
 <br> The <a href="postconf.5.html#invalid_hostname_reject_code">invalid_hostname_reject_code</a> specifies the response code
index 619941b8f2fe87a631d5e331089f941a22962632..7dc5ccb3d3dd7dc764d315085b1d5727bf0ad41e 100644 (file)
@@ -93,85 +93,90 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        <b>-bi</b>    Initialize  alias database. See the <b>newaliases</b> com-
               mand above.
 
-       <b>-bm</b>    Read mail  from  standard  input  and  arrange  for
+       <b>-bl</b>    Go into daemon mode. To accept only  local  connec-
+              tions   as  with  Sendmail's  <b>-bl</b>  option,  specify
+              "<b><a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = loopback</b>" in the Postfix <a href="postconf.5.html"><b>main.cf</b></a>
+              configuration file.
+
+       <b>-bm</b>    Read  mail  from  standard  input  and  arrange for
               delivery.  This is the default mode of operation.
 
        <b>-bp</b>    List the mail queue. See the <b>mailq</b> command above.
 
-       <b>-bs</b>    Stand-alone  SMTP  server  mode. Read SMTP commands
-              from standard input, and write responses  to  stan-
+       <b>-bs</b>    Stand-alone SMTP server mode.  Read  SMTP  commands
+              from  standard  input, and write responses to stan-
               dard output.  In stand-alone SMTP server mode, mail
-              relaying and other access controls are disabled  by
-              default.  To  enable  them,  run the process as the
+              relaying  and other access controls are disabled by
+              default. To enable them, run  the  process  as  the
               <b><a href="postconf.5.html#mail_owner">mail_owner</a></b> user.
 
-              This mode of operation is  implemented  by  running
+              This  mode  of  operation is implemented by running
               the <a href="smtpd.8.html"><b>smtpd</b>(8)</a> daemon.
 
-       <b>-bv</b>    Do  not collect or deliver a message. Instead, send
-              an email  report  after  verifying  each  recipient
-              address.    This  is  useful  for  testing  address
+       <b>-bv</b>    Do not collect or deliver a message. Instead,  send
+              an  email  report  after  verifying  each recipient
+              address.   This  is  useful  for  testing   address
               rewriting and routing configurations.
 
-              This feature is available in  Postfix  version  2.1
+              This  feature  is  available in Postfix version 2.1
               and later.
 
        <b>-C</b> <i>config</i><b>_</b><i>file</i>
 
        <b>-C</b> <i>config</i><b>_</b><i>dir</i>
-              The  path  name  of the Postfix <a href="postconf.5.html"><b>main.cf</b></a> file, or of
-              its parent directory. This information  is  ignored
+              The path name of the Postfix <a href="postconf.5.html"><b>main.cf</b></a>  file,  or  of
+              its  parent  directory. This information is ignored
               with Postfix versions before 2.3.
 
               With all Postfix versions, you can specify a direc-
               tory  pathname  with  the  MAIL_CONFIG  environment
-              variable  to override the location of configuration
+              variable to override the location of  configuration
               files.
 
        <b>-F</b> <i>full</i><b>_</b><i>name</i>
-              Set the sender full name. This overrides  the  NAME
-              environment  variable,  and  is used only with mes-
+              Set  the  sender full name. This overrides the NAME
+              environment variable, and is used  only  with  mes-
               sages that have no <b>From:</b> message header.
 
        <b>-f</b> <i>sender</i>
               Set  the  envelope  sender  address.  This  is  the
-              address  where  delivery problems are sent to. With
+              address where delivery problems are sent  to.  With
               Postfix versions before 2.1, the <b>Errors-To:</b> message
               header overrides the error return address.
 
-       <b>-G</b>     Gateway  (relay)  submission, as opposed to initial
-              user submission.  Either do not  rewrite  addresses
-              at  all,  or  update  incomplete addresses with the
+       <b>-G</b>     Gateway (relay) submission, as opposed  to  initial
+              user  submission.   Either do not rewrite addresses
+              at all, or update  incomplete  addresses  with  the
               domain information specified with <b>remote_header_re-</b>
               <b>write_domain</b>.
 
-              This  option is ignored before Postfix version 2.3.
+              This option is ignored before Postfix version  2.3.
 
        <b>-h</b> <i>hop</i><b>_</b><i>count</i> (ignored)
-              Hop count limit. Use the <b><a href="postconf.5.html#hopcount_limit">hopcount_limit</a></b>  configura-
+              Hop  count limit. Use the <b><a href="postconf.5.html#hopcount_limit">hopcount_limit</a></b> configura-
               tion parameter instead.
 
-       <b>-I</b>     Initialize  alias database. See the <b>newaliases</b> com-
+       <b>-I</b>     Initialize alias database. See the <b>newaliases</b>  com-
               mand above.
 
-       <b>-i</b>     When reading a message from standard  input,  don't
-              treat  a line with only a <b>.</b> character as the end of
+       <b>-i</b>     When  reading  a message from standard input, don't
+              treat a line with only a <b>.</b> character as the end  of
               input.
 
        <b>-L</b> <i>label</i> (ignored)
-              The logging label. Use the  <b><a href="postconf.5.html#syslog_name">syslog_name</a></b>  configura-
+              The  logging  label. Use the <b><a href="postconf.5.html#syslog_name">syslog_name</a></b> configura-
               tion parameter instead.
 
        <b>-m</b> (ignored)
               Backwards compatibility.
 
        <b>-N</b> <i>dsn</i> (default: 'delay, failure')
-              Delivery   status   notification  control.  Specify
-              either a comma-separated list with one or  more  of
-              <b>failure</b>  (send  notification  when delivery fails),
+              Delivery  status  notification   control.   Specify
+              either  a  comma-separated list with one or more of
+              <b>failure</b> (send notification  when  delivery  fails),
               <b>delay</b> (send notification when delivery is delayed),
-              or  <b>success</b>  (send notification when the message is
-              delivered); or specify <b>never</b> (don't send any  noti-
+              or <b>success</b> (send notification when the  message  is
+              delivered);  or specify <b>never</b> (don't send any noti-
               fications at all).
 
               This feature is available in Postfix 2.3 and later.
@@ -180,77 +185,77 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               Backwards compatibility.
 
        <b>-oA</b><i>alias</i><b>_</b><i>database</i>
-              Non-default alias  database.  Specify  <i>pathname</i>  or
+              Non-default  alias  database.  Specify  <i>pathname</i> or
               <i>type</i>:<i>pathname</i>. See <a href="postalias.1.html"><b>postalias</b>(1)</a> for details.
 
        <b>-O</b> <i>option=value</i> (ignored)
-              Set  the  named <i>option</i> to <i>value</i>. Use the equivalent
+              Set the named <i>option</i> to <i>value</i>. Use  the  equivalent
               configuration parameter in <a href="postconf.5.html"><b>main.cf</b></a> instead.
 
        <b>-o7</b> (ignored)
 
        <b>-o8</b> (ignored)
               To send 8-bit or binary content, use an appropriate
-              MIME  encapsulation  and specify the appropriate <b>-B</b>
+              MIME encapsulation and specify the  appropriate  <b>-B</b>
               command-line option.
 
-       <b>-oi</b>    When reading a message from standard  input,  don't
-              treat  a line with only a <b>.</b> character as the end of
+       <b>-oi</b>    When  reading  a message from standard input, don't
+              treat a line with only a <b>.</b> character as the end  of
               input.
 
        <b>-om</b> (ignored)
-              The sender is  never  eliminated  from  alias  etc.
+              The  sender  is  never  eliminated  from alias etc.
               expansions.
 
        <b>-o</b> <i>x value</i> (ignored)
-              Set  option <i>x</i> to <i>value</i>. Use the equivalent configu-
+              Set option <i>x</i> to <i>value</i>. Use the equivalent  configu-
               ration parameter in <a href="postconf.5.html"><b>main.cf</b></a> instead.
 
        <b>-r</b> <i>sender</i>
               Set  the  envelope  sender  address.  This  is  the
-              address  where  delivery problems are sent to. With
+              address where delivery problems are sent  to.  With
               Postfix versions before 2.1, the <b>Errors-To:</b> message
               header overrides the error return address.
 
        <b>-R</b> <i>return</i><b>_</b><i>limit</i> (ignored)
-              Limit   the   size   of   bounced   mail.  Use  the
-              <b><a href="postconf.5.html#bounce_size_limit">bounce_size_limit</a></b> configuration parameter  instead.
+              Limit  the  size   of   bounced   mail.   Use   the
+              <b><a href="postconf.5.html#bounce_size_limit">bounce_size_limit</a></b>  configuration parameter instead.
 
-       <b>-q</b>     Attempt  to deliver all queued mail. This is imple-
+       <b>-q</b>     Attempt to deliver all queued mail. This is  imple-
               mented by executing the <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command.
 
               Warning:  flushing  undeliverable  mail  frequently
-              will  result  in  poor  delivery performance of all
+              will result in poor  delivery  performance  of  all
               other mail.
 
        <b>-q</b><i>interval</i> (ignored)
-              The  interval   between   queue   runs.   Use   the
+              The   interval   between   queue   runs.   Use  the
               <b><a href="postconf.5.html#queue_run_delay">queue_run_delay</a></b> configuration parameter instead.
 
        <b>-qI</b><i>queueid</i>
               Schedule immediate delivery of mail with the speci-
-              fied queue ID.  This option is implemented by  exe-
-              cuting  the  <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command, and is available
+              fied  queue ID.  This option is implemented by exe-
+              cuting the <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command, and  is  available
               with Postfix version 2.4 and later.
 
        <b>-qR</b><i>site</i>
-              Schedule immediate delivery of  all  mail  that  is
+              Schedule  immediate  delivery  of  all mail that is
               queued for the named <i>site</i>. This option accepts only
-              <i>site</i> names that are eligible for the  "fast  flush"
-              service,   and  is  implemented  by  executing  the
+              <i>site</i>  names  that are eligible for the "fast flush"
+              service,  and  is  implemented  by  executing   the
               <a href="postqueue.1.html"><b>postqueue</b>(1)</a> command.  See <a href="flush.8.html"><b>flush</b>(8)</a> for more infor-
               mation about the "fast flush" service.
 
        <b>-qS</b><i>site</i>
-              This  command  is  not  implemented. Use the slower
+              This command is not  implemented.  Use  the  slower
               "<b>sendmail -q</b>" command instead.
 
-       <b>-t</b>     Extract recipients from message headers. These  are
-              added  to  any  recipients specified on the command
+       <b>-t</b>     Extract  recipients from message headers. These are
+              added to any recipients specified  on  the  command
               line.
 
-              With Postfix versions prior  to  2.1,  this  option
-              requires  that no recipient addresses are specified
+              With  Postfix  versions  prior  to 2.1, this option
+              requires that no recipient addresses are  specified
               on the command line.
 
        <b>-U</b> (ignored)
@@ -263,41 +268,41 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               This feature is available in Postfix 2.3 and later.
 
        <b>-XV</b> (Postfix 2.2 and earlier: <b>-V</b>)
-              Variable Envelope Return Path.  Given  an  envelope
-              sender  address  of the form <i>owner-listname</i>@<i>origin</i>,
-              each recipient <i>user</i>@<i>domain</i>  receives  mail  with  a
+              Variable  Envelope  Return  Path. Given an envelope
+              sender address of the  form  <i>owner-listname</i>@<i>origin</i>,
+              each  recipient  <i>user</i>@<i>domain</i>  receives  mail with a
               personalized envelope sender address.
 
-              By   default,   the  personalized  envelope  sender
-              address is  <i>owner-listname</i><b>+</b><i>user</i><b>=</b><i>domain</i>@<i>origin</i>.  The
-              default  <b>+</b>  and  <b>=</b> characters are configurable with
-              the <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>  configuration  parame-
+              By  default,  the  personalized   envelope   sender
+              address  is  <i>owner-listname</i><b>+</b><i>user</i><b>=</b><i>domain</i>@<i>origin</i>. The
+              default <b>+</b> and <b>=</b> characters  are  configurable  with
+              the  <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>  configuration parame-
               ter.
 
        <b>-XV</b><i>xy</i> (Postfix 2.2 and earlier: <b>-V</b><i>xy</i>)
-              As  <b>-XV</b>,  but  uses  <i>x</i>  and <i>y</i> as the VERP delimiter
-              characters, instead  of  the  characters  specified
-              with   the   <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>  configuration
+              As <b>-XV</b>, but uses <i>x</i> and  <i>y</i>  as  the  VERP  delimiter
+              characters,  instead  of  the  characters specified
+              with  the   <b><a href="postconf.5.html#default_verp_delimiters">default_verp_delimiters</a></b>   configuration
               parameter.
 
-       <b>-v</b>     Send an email report of the first delivery  attempt
-              (Postfix  versions  2.1  and  later). Mail delivery
-              always happens in the background. When multiple  <b>-v</b>
+       <b>-v</b>     Send  an email report of the first delivery attempt
+              (Postfix versions 2.1  and  later).  Mail  delivery
+              always  happens in the background. When multiple <b>-v</b>
               options  are  given,  enable  verbose  logging  for
               debugging purposes.
 
        <b>-X</b> <i>log</i><b>_</b><i>file</i> (ignored)
-              Log mailer traffic.  Use  the  <b><a href="postconf.5.html#debug_peer_list">debug_peer_list</a></b>  and
-              <b><a href="postconf.5.html#debug_peer_level">debug_peer_level</a></b>  configuration parameters instead.
+              Log  mailer  traffic.  Use  the <b><a href="postconf.5.html#debug_peer_list">debug_peer_list</a></b> and
+              <b><a href="postconf.5.html#debug_peer_level">debug_peer_level</a></b> configuration parameters  instead.
 
 <b>SECURITY</b>
-       By design, this program is not  set-user  (or  group)  id.
-       However,  it  must  handle  data  from untrusted, possibly
-       remote, users.  Thus, the usual  precautions  need  to  be
+       By  design,  this  program  is not set-user (or group) id.
+       However, it must  handle  data  from  untrusted,  possibly
+       remote,  users.   Thus,  the  usual precautions need to be
        taken against malicious inputs.
 
 <b>DIAGNOSTICS</b>
-       Problems  are  logged  to  <b>syslogd</b>(8)  and to the standard
+       Problems are logged to  <b>syslogd</b>(8)  and  to  the  standard
        error stream.
 
 <b>ENVIRONMENT</b>
@@ -309,29 +314,29 @@ SENDMAIL(1)                                                        SENDMAIL(1)
 
        <b>MAIL_DEBUG</b> (value does not matter)
               Enable debugging with an external command, as spec-
-              ified   with   the  <b><a href="postconf.5.html#debugger_command">debugger_command</a></b>  configuration
+              ified  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  mes-
-              sages  that  have no <b>From:</b> message header. See also
+       <b>NAME</b>   The  sender  full name. This is used only with mes-
+              sages 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
+       The  following  <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant
        to this program.  The text below provides only a parameter
-       summary. See <a href="postconf.5.html"><b>postconf</b>(5)</a> for more details including  exam-
+       summary.  See <a href="postconf.5.html"><b>postconf</b>(5)</a> for more details including exam-
        ples.
 
 <b>COMPATIBILITY CONTROLS</b>
        Available with Postfix 2.9 and later:
 
        <b><a href="postconf.5.html#sendmail_fix_line_endings">sendmail_fix_line_endings</a> (always)</b>
-              Controls  how the Postfix sendmail command converts
-              email message line endings from &lt;CR&gt;&lt;LF&gt; into  UNIX
+              Controls how the Postfix sendmail command  converts
+              email  message 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 trouble
+       The <a href="DEBUG_README.html">DEBUG_README</a> file gives examples  of  how  to  trouble
        shoot a Postfix system.
 
        <b><a href="postconf.5.html#debugger_command">debugger_command</a> (empty)</b>
@@ -339,29 +344,29 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               mon program is 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 server matches a  pattern  in  the
+              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 address patterns that cause the  verbose
-              logging  level  to increase by the amount specified
+              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>.
 
 <b>ACCESS CONTROLS</b>
        Available in Postfix version 2.2 and later:
 
        <b><a href="postconf.5.html#authorized_flush_users">authorized_flush_users</a> (<a href="DATABASE_README.html#types">static</a>:anyone)</b>
-              List of users  who  are  authorized  to  flush  the
+              List  of  users  who  are  authorized  to flush the
               queue.
 
        <b><a href="postconf.5.html#authorized_mailq_users">authorized_mailq_users</a> (<a href="DATABASE_README.html#types">static</a>:anyone)</b>
               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>sendmail</b>(1)</a> command (and with the privi-
+              List  of  users  who  are authorized to submit mail
+              with the <a href="sendmail.1.html"><b>sendmail</b>(1)</a> command (and with  the  privi-
               leged <a href="postdrop.1.html"><b>postdrop</b>(1)</a> helper command).
 
 <b>RESOURCE AND RATE CONTROLS</b>
@@ -370,7 +375,7 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               sent in a non-delivery notification.
 
        <b><a href="postconf.5.html#fork_attempts">fork_attempts</a> (5)</b>
-              The  maximal  number  of attempts to fork() a child
+              The maximal number of attempts to  fork()  a  child
               process.
 
        <b><a href="postconf.5.html#fork_delay">fork_delay</a> (1s)</b>
@@ -378,11 +383,11 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               process.
 
        <b><a href="postconf.5.html#hopcount_limit">hopcount_limit</a> (50)</b>
-              The  maximal  number  of Received:  message headers
+              The maximal number of  Received:   message  headers
               that is allowed 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
+              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.
 
@@ -392,37 +397,37 @@ SENDMAIL(1)                                                        SENDMAIL(1)
 
        <b><a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a> ($<a href="postconf.5.html#relay_domains">relay_domains</a>)</b>
               Optional list of destinations that are eligible for
-              per-destination logfiles with mail that  is  queued
+              per-destination  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 Postfix support for  variable  envelope  return
+       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 Postfix <a href="sendmail.1.html"><b>sendmail</b>(1)</a> command  line
+              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
+              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  com-
+              The  location  of  all  postfix administrative com-
               mands.
 
        <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
+              The default location of  the  Postfix  <a href="postconf.5.html">main.cf</a>  and
               <a href="master.5.html">master.cf</a> configuration files.
 
        <b><a href="postconf.5.html#daemon_directory">daemon_directory</a> (see 'postconf -d' output)</b>
-              The directory with  Postfix  support  programs  and
+              The  directory  with  Postfix  support programs and
               daemon programs.
 
        <b><a href="postconf.5.html#default_database_type">default_database_type</a> (see 'postconf -d' output)</b>
@@ -430,16 +435,16 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               <a href="postalias.1.html"><b>postalias</b>(1)</a> 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  the  mes-
+              The  time  after which the sender receives the mes-
               sage headers of mail that is still queued.
 
        <b><a href="postconf.5.html#enable_errors_to">enable_errors_to</a> (no)</b>
-              Report  mail  delivery errors to the address speci-
-              fied  with  the  non-standard  Errors-To:   message
-              header,  instead  of  the  envelope  sender address
-              (this feature is removed with Postfix version  2.2,
-              is  turned off by default with Postfix version 2.1,
-              and is always turned on  with  older  Postfix  ver-
+              Report mail delivery errors to the  address  speci-
+              fied   with  the  non-standard  Errors-To:  message
+              header, instead  of  the  envelope  sender  address
+              (this  feature is removed with Postfix version 2.2,
+              is turned off by default with Postfix version  2.1,
+              and  is  always  turned  on with older Postfix ver-
               sions).
 
        <b><a href="postconf.5.html#mail_owner">mail_owner</a> (postfix)</b>
@@ -447,21 +452,21 @@ SENDMAIL(1)                                                        SENDMAIL(1)
               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  direc-
+              The  location of the Postfix top-level queue direc-
               tory.
 
        <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
+              Don't rewrite message headers from  remote  clients
               at all when this parameter is empty; otherwise, re-
-              write  message  headers  and  append  the specified
+              write 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>
-              The mail system  name  that  is  prepended  to  the
-              process  name  in  syslog  records, so that "smtpd"
+              The  mail  system  name  that  is  prepended to the
+              process name in syslog  records,  so  that  "smtpd"
               becomes, for example, "postfix/smtpd".
 
 <b>FILES</b>
@@ -486,7 +491,7 @@ SENDMAIL(1)                                                        SENDMAIL(1)
        <a href="VERP_README.html">VERP_README</a>, Postfix VERP howto
 
 <b>LICENSE</b>
-       The  Secure  Mailer  license must be distributed with this
+       The Secure Mailer license must be  distributed  with  this
        software.
 
 <b>AUTHOR(S)</b>
index 1c6e3ebd9f1033f0af31b4b217212bf033d391d4..ae11e70e6975ca6ee4bb5ccb856b21327ed9cca7 100644 (file)
@@ -82,6 +82,11 @@ Postfix has no persistent host status database.
 .IP \fB-bi\fR
 Initialize alias database. See the \fBnewaliases\fR
 command above.
+.IP \fB-bl\fR
+Go into daemon mode. To accept only local connections as
+with Sendmail\'s \fB-bl\fR option, specify "\fBinet_interfaces
+= loopback\fR" in the Postfix \fBmain.cf\fR configuration
+file.
 .IP \fB-bm\fR
 Read mail from standard input and arrange for delivery.
 This is the default mode of operation.
index ab0b7e31a165afb684b790b729735f24672f1394..b8a6c2089a0c667d812e363944412fcf6eec75eb 100644 (file)
@@ -8158,8 +8158,8 @@ restriction (without "smtpd_helo_required = yes", a client can
 simply skip check_helo_ns_access by not sending HELO or EHLO). This
 feature is available in Postfix 2.1 and later.
 .IP "\fBreject_invalid_helo_hostname\fR (with Postfix < 2.3: reject_invalid_hostname)"
-Reject the request when the HELO or EHLO hostname syntax is
-invalid. Note: specify "smtpd_helo_required = yes" to fully enforce
+Reject the request when the HELO or EHLO hostname is malformed.
+Note: specify "smtpd_helo_required = yes" to fully enforce
 this restriction (without "smtpd_helo_required = yes", a client can simply
 skip reject_invalid_helo_hostname by not sending HELO or EHLO).
 .br
index 416ed5b4ac818fc570eefc7be69666a1752597dc..18c12fafc662ab4eac7e2973ce65140bd7d23218 100644 (file)
@@ -5432,8 +5432,8 @@ feature is available in Postfix 2.1 and later.
 
 <dt><b><a name="reject_invalid_helo_hostname">reject_invalid_helo_hostname</a></b> (with Postfix &lt; 2.3: reject_invalid_hostname)</dt>
 
-<dd>Reject the request when the HELO or EHLO hostname syntax is
-invalid. Note: specify "smtpd_helo_required = yes" to fully enforce
+<dd>Reject the request when the HELO or EHLO hostname is malformed.
+Note: specify "smtpd_helo_required = yes" to fully enforce
 this restriction (without "smtpd_helo_required = yes", a client can simply
 skip reject_invalid_helo_hostname by not sending HELO or EHLO).
 <br> The invalid_hostname_reject_code specifies the response code
index a287560b61aff6baaab0d7e84fb41d10d6f62839..4479ab0e41f43ebe853e8183455c317f8e16c539 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      "20120627"
+#define MAIL_RELEASE_DATE      "20120630"
 #define MAIL_VERSION_NUMBER    "2.10"
 
 #ifdef SNAPSHOT
index 44f332e777dc9db76699f049440198dc888fc315..c49f42530383f14b89d155accefffbcafece1d26 100644 (file)
@@ -6,11 +6,11 @@
 /* SYNOPSIS
 /*     #include <postscreen.h>
 /*
-/*     void    psc_endpt_lookup(smtp_client_stream,
-/*                     void *lookup_done(status, smtp_client_stream,
+/*     void    psc_endpt_lookup(smtp_client_stream, lookup_done)
+/*     VSTREAM *smtp_client_stream;
+/*     void    (*lookup_done)(status, smtp_client_stream,
 /*                             smtp_client_addr, smtp_client_port,
-/*                             smtp_server_addr, smtp_server_port))
-/*     VSTRING *smtp_client_stream;
+/*                             smtp_server_addr, smtp_server_port)
 /*     int     status;
 /*     MAI_HOSTADDR_STR *smtp_client_addr;
 /*     MAI_SERVPORT_STR *smtp_client_port;
 /*     MAI_SERVPORT_STR *smtp_server_port;
 /* DESCRIPTION
 /*     psc_endpt_lookup() looks up remote and local connection
-/*     endpoint information through local system calls or through
-/*     a remote proxy protocol. The lookup_done() call-back routine
-/*     passes the result status, address and port information. The
-/*     result status is -1 in case of error, 0 in case of success.
-/*     This function (and its supporting routines) logs a warning
-/*     in case of error, and never communicates with a remote SMTP
-/*     client.
+/*     endpoint information, either through local system calls,
+/*     or through an adapter for an up-stream proxy protocol.
+/*
+/*     The following summarizes what the postscreen(8) server
+/*     expects from a proxy protocol adapter routine.
+/* .IP \(bu
+/*     Accept the same arguments as psc_endpt_lookup().
+/* .IP \(bu
+/*     Validate protocol, address and port syntax. Permit only
+/*     protocols that are configured with the main.cf:inet_protocols
+/*     setting.
+/* .IP \(bu
+/*     Convert IPv4-in-IPv6 address syntax to IPv4 syntax when
+/*     both IPv6 and IPv4 support are enabled with main.cf:inet_protocols.
+/* .IP \(bu
+/*     Log a clear warning message that explains why a request
+/*     fails.
+/* .IP \(bu
+/*     Never talk to the remote SMTP client.
+/* .PP
+/*     Arguments:
+/* .IP client_stream
+/*     A brand-new stream that is connected to the remote client.
+/* .IP lookup
+/*     Call-back routine that reports the result status, address
+/*     and port information. The result status is -1 in case of
+/*     error, 0 in case of success.
 /* LICENSE
 /* .ad
 /* .fi
index 0bc7fd890dd8d9c52d36a449a716cd2c69969d93..60fcbcab5820afaa29b750822f3032ae539c604f 100644 (file)
@@ -6,11 +6,11 @@
 /* SYNOPSIS
 /*     #include <postscreen_haproxy.h>
 /*
-/*     void    psc_endpt_haproxy_lookup(smtp_client_stream,
-/*                     void *lookup_done(status, smtp_client_stream,
-/*                             smtp_client_addr, smtp_client_port,
-/*                             smtp_server_addr, smtp_server_port))
+/*     void    psc_endpt_haproxy_lookup(smtp_client_stream, lookup_done)
 /*     VSTRING *smtp_client_stream;
+/*     void    (*lookup_done)(status, smtp_client_stream,
+/*                             smtp_client_addr, smtp_client_port,
+/*                             smtp_server_addr, smtp_server_port)
 /*     int     status;
 /*     MAI_HOSTADDR_STR *smtp_client_addr;
 /*     MAI_SERVPORT_STR *smtp_client_port;
 /*     psc_endpt_haproxy_lookup() looks up connection endpoint
 /*     information via the haproxy protocol.  Arguments and results
 /*     conform to the postscreen_endpt(3) API.
-/*
-/*     The following summarizes what the Postfix SMTP server expects
-/*     from an up-stream proxy adapter.
-/* .IP \(bu
-/*     Validate address and port syntax. Permit only protocols
-/*     that are configured with the main.cf:inet_protocols
-/*     setting.
-/* .IP \(bu
-/*     Convert IPv4-in-IPv6 address syntax to IPv4 form, when both
-/*     IPv4 and IPv6 support are enabled with main.cf:inet_protocols.
 /* LICENSE
 /* .ad
 /* .fi
@@ -91,9 +81,16 @@ static void psc_endpt_haproxy_event(int event, char *context)
     int     last_char = 0;
     const char *err;
     VSTRING *escape_buf;
+    char    read_buf[HAPROXY_MAX_LEN];
+    ssize_t read_len;
+    char   *cp;
 
     /*
-     * Basic event processing.
+     * We must not read(2) past the <CR><LF> that terminates the haproxy
+     * line. For efficiency reasons we read the entire haproxy line in one
+     * read(2) call when we know that the line is unfragmented. In the rare
+     * case that the line is fragmented, we fall back and read(2) it one
+     * character at a time.
      */
     switch (event) {
     case EVENT_TIME:
@@ -101,20 +98,35 @@ static void psc_endpt_haproxy_event(int event, char *context)
        status = -1;
        break;
     case EVENT_READ:
-       if ((last_char = VSTREAM_GETC(state->stream)) == VSTREAM_EOF) {
-           if (vstream_ferror(state->stream))
-               msg_warn("haproxy read: %m");
-           else
-               msg_warn("haproxy read: lost connection");
-           status = -1;
-           break;
+       /* Determine the initial VSTREAM read(2) buffer size. */
+       if (VSTRING_LEN(state->buffer) == 0) {
+           if ((read_len = recv(vstream_fileno(state->stream),
+                             read_buf, sizeof(read_buf) - 1, MSG_PEEK)) > 0
+               && ((cp = memchr(read_buf, '\n', read_len)) != 0)) {
+               read_len = cp - read_buf + 1;
+           } else {
+               read_len = 1;
+           }
+           vstream_control(state->stream, VSTREAM_CTL_BUFSIZE, read_len,
+                           VSTREAM_CTL_END);
        }
-       if (VSTRING_LEN(state->buffer) >= HAPROXY_MAX_LEN) {
-           msg_warn("haproxy read: line too long");
-           status = -1;
-           break;
-       }
-       VSTRING_ADDCH(state->buffer, last_char);
+       /* Drain the VSTREAM buffer, otherwise this pseudo-thread will hang. */
+       do {
+           if ((last_char = VSTREAM_GETC(state->stream)) == VSTREAM_EOF) {
+               if (vstream_ferror(state->stream))
+                   msg_warn("haproxy read: %m");
+               else
+                   msg_warn("haproxy read: lost connection");
+               status = -1;
+               break;
+           }
+           if (VSTRING_LEN(state->buffer) >= HAPROXY_MAX_LEN) {
+               msg_warn("haproxy read: line too long");
+               status = -1;
+               break;
+           }
+           VSTRING_ADDCH(state->buffer, last_char);
+       } while (vstream_peek(state->stream) > 0);
        break;
     }
 
@@ -174,18 +186,6 @@ void    psc_endpt_haproxy_lookup(VSTREAM *stream,
     state->notify = notify;
     state->buffer = vstring_alloc(100);
 
-    /*
-     * We don't assume that the haproxy line will be unfragmented. Therefore,
-     * we use read(2) instead of recv(..., MSG_PEEK).
-     * 
-     * We must not read(2) past the <CR><LF> that terminates the haproxy line.
-     * Therefore we force one-character read(2) calls.
-     * 
-     * We want to (eventually) build this on top of a reusable line read
-     * routine, once we have figured out an easy-to-use and efficient API.
-     */
-    vstream_control(stream, VSTREAM_CTL_BUFSIZE, 1, VSTREAM_CTL_END);
-
     /*
      * Read the haproxy line.
      */
index 05406b81b9fc9bef8eb999301855101d12f902f4..d0bc76dee4f5ccf194c665e66a70fc1eb5f49f12 100644 (file)
 /* .IP \fB-bi\fR
 /*     Initialize alias database. See the \fBnewaliases\fR
 /*     command above.
+/* .IP \fB-bl\fR
+/*     Go into daemon mode. To accept only local connections as
+/*     with Sendmail\'s \fB-bl\fR option, specify "\fBinet_interfaces
+/*     = loopback\fR" in the Postfix \fBmain.cf\fR configuration
+/*     file.
 /* .IP \fB-bm\fR
 /*     Read mail from standard input and arrange for delivery.
 /*     This is the default mode of operation.
@@ -1182,6 +1187,7 @@ int     main(int argc, char **argv)
            default:
                msg_fatal_status(EX_USAGE, "unsupported: -%c%c", c, *optarg);
            case 'd':                           /* daemon mode */
+           case 'l':                           /* daemon mode */
                if (mode == SM_MODE_FLUSHQ)
                    msg_warn("ignoring -q option in daemon mode");
                mode = SM_MODE_DAEMON;
index d104d9dca799406aeca34a1670d8463cc937a596..599e3ed42604e9b7da53d0773628b7d3f39d5a5e 100644 (file)
 /*     The following summarizes what the Postfix SMTP server expects
 /*     from an up-stream proxy adapter.
 /* .IP \(bu
-/*     Validate address and port syntax. Permit only protocols
-/*     that are configured with the main.cf:inet_protocols
+/*     Validate protocol, address and port syntax. Permit only
+/*     protocols that are configured with the main.cf:inet_protocols
 /*     setting.
 /* .IP \(bu
-/*     Convert IPv4-in-IPv6 address syntax to IPv4 syntax, when
-/*     both IPv4 and IPv6 support are enabled with main.cf:inet_protocols.
+/*     Convert IPv4-in-IPv6 address syntax to IPv4 syntax when
+/*     both IPv6 and IPv4 support are enabled with main.cf:inet_protocols.
 /* .IP \(bu
 /*     Update the following session context fields: addr, port,
 /*     rfc_addr, addr_family, dest_addr. The addr_family field
 /*     mystrdup(). In case of error, leave unassigned string fields
 /*     at their initial zero value.
 /* .IP \(bu
-/*     Log warnings in case of data format error.
+/*     Log a clear warning message that explains why a request
+/*     fails.
+/* .IP \(bu
+/*     Never talk to the remote SMTP client.
 /* .PP
 /*     Arguments:
 /* .IP state
@@ -113,7 +116,7 @@ int     smtpd_peer_from_haproxy(SMTPD_STATE *state)
     case 0:
        if (smtp_get(state->buffer, state->client, HAPROXY_MAX_LEN,
                     SMTP_GET_FLAG_NONE) != '\n') {
-           msg_warn("haproxy line > %d characters", HAPROXY_MAX_LEN);
+           msg_warn("haproxy read: line > %d characters", HAPROXY_MAX_LEN);
            return (-1);
        }
        if ((proxy_err = haproxy_srvr_parse(STR(state->buffer),
index 3e15049869788b3cd4341a33fd35f820677a9a6a..d06926f8e6be2992d97cb8248c7ce793394c7226 100644 (file)
@@ -73,7 +73,7 @@ int     pass_accept(int listen_fd)
     }
 }
 
-/* pass_accept_attr - accept attribute list and descriptor */
+/* pass_accept_attr - accept descriptor and attribute list */
 
 int     pass_accept_attr(int listen_fd, HTABLE **attr)
 {
index ee718b4571d560b71e7581836e402af5c9dd02e9..38eb02246aa974424aea1ce96472a75b97d435bc 100644 (file)
@@ -1478,8 +1478,9 @@ void    vstream_control(VSTREAM *stream, int name,...)
             */
        case VSTREAM_CTL_BUFSIZE:
            req_bufsize = va_arg(ap, ssize_t);
-           if (req_bufsize < 0)
-               msg_panic("VSTREAM_CTL_BUFSIZE with negative size: %ld",
+           /* Heuristic to detect missing (ssize_t) type cast on LP64 hosts. */
+           if (req_bufsize < 0 || req_bufsize > INT_MAX)
+               msg_panic("unreasonable VSTREAM_CTL_BUFSIZE request: %ld",
                          (long) req_bufsize);
            if (req_bufsize > 0 && stream != VSTREAM_ERR)
                stream->req_bufsize = req_bufsize;