Postfix manual - sendmail(1)

    SENDMAIL(1)                                                        SENDMAIL(1)

    NAME
           sendmail - Postfix to Sendmail compatibility interface

    SYNOPSIS
           sendmail [option ...] [recipient ...]

           mailq
           sendmail -bp

           newaliases
           sendmail -I

    DESCRIPTION
           The Postfix sendmail(1) command implements the Postfix to Sendmail com-
           patibility interface.  For the  sake  of  compatibility  with  existing
           applications,  some  Sendmail  command-line  options are recognized but
           silently ignored.

           By default, Postfix sendmail(1) reads a  message  from  standard  input
           until  EOF  or  until  it  reads  a  line  with only a . character, and
           arranges for delivery.  Postfix sendmail(1) relies on  the  postdrop(1)
           command to create a queue file in the maildrop directory.

           Specific  command aliases are provided for other common modes of opera-
           tion:

           mailq  List the mail queue. Each entry shows the queue file ID, message
                  size,  arrival  time, sender, and the recipients that still need
                  to be delivered.  If mail could not be delivered upon  the  last
                  attempt, the reason for failure is shown. The queue ID string is
                  followed by an optional status character:

                  *      The message is in the active queue, i.e. the  message  is
                         selected for delivery.

                  !      The  message is in the hold queue, i.e. no further deliv-
                         ery attempt will be made until  the  mail  is  taken  off
                         hold.

                  This   mode   of  operation  is  implemented  by  executing  the
                  postqueue(1) command.

           newaliases
                  Initialize the alias database.  If no input  file  is  specified
                  (with  the  -oA  option,  see  below), the program processes the
                  file(s) specified with the alias_database configuration  parame-
                  ter.   If  no alias database type is specified, the program uses
                  the type specified with the default_database_type  configuration
                  parameter.  This mode of operation is implemented by running the
                  postalias(1) command.

                  Note: it may take a minute or so before an alias database update
                  becomes  visible.  Use the "postfix reload" command to eliminate
                  this delay.

           These and other features can be selected by specifying the  appropriate
           combination  of  command-line  options. Some features are controlled by
           parameters in the main.cf configuration file.

           The following options are recognized:

           -Am (ignored)

           -Ac (ignored)
                  Postfix sendmail uses the same configuration file regardless  of
                  whether or not a message is an initial submission.

           -B body_type
                  The message body MIME type: 7BIT or 8BITMIME.

           -bd    Go  into  daemon  mode. This mode of operation is implemented by
                  executing the "postfix start" command.

           -bh (ignored)

           -bH (ignored)
                  Postfix has no persistent host status database.

           -bi    Initialize alias database. See the newaliases command above.

           -bl    Go into daemon mode. To accept only local  connections  as  with
                  Sendmail's  -bl  option, specify "inet_interfaces = loopback" in
                  the Postfix main.cf configuration file.

           -bm    Read mail from standard input and arrange for delivery.  This is
                  the default mode of operation.

           -bp    List the mail queue. See the mailq command above.

           -bs    Stand-alone  SMTP  server mode. Read SMTP commands from standard
                  input, and write responses to standard 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
                  mail_owner user.

                  This  mode  of  operation is implemented by running the smtpd(8)
                  daemon.

           -bv    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 and later.

           -C config_file

           -C config_dir
                  The path name of the Postfix main.cf  file,  or  of  its  parent
                  directory.  This  information  is  ignored with Postfix versions
                  before 2.3.

                  With Postfix version 3.2 and later, a non-default directory must
                  be  authorized  in  the default main.cf file, through the alter-
                  nate_config_directories  or  multi_instance_directories  parame-
                  ters.

                  With  all Postfix versions, you can specify a directory pathname
                  with the MAIL_CONFIG environment variable to override the  loca-
                  tion of configuration files.

           -F full_name
                  Set  the  sender  full name. This overrides the NAME environment
                  variable, and is used only with messages that have no From: mes-
                  sage header.

           -f sender
                  Set  the  envelope  sender  address.  This  is the address where
                  delivery problems are sent to. With Postfix versions before 2.1,
                  the   Errors-To:  message  header  overrides  the  error  return
                  address.

           -G     Gateway (relay) submission, as opposed to initial  user  submis-
                  sion.   Either do not rewrite addresses at all, or update incom-
                  plete addresses  with  the  domain  information  specified  with
                  remote_header_rewrite_domain.

                  This option is ignored before Postfix version 2.3.

           -h hop_count (ignored)
                  Hop  count limit. Use the hopcount_limit configuration parameter
                  instead.

           -I     Initialize alias database. See the newaliases command above.

           -i     When reading a message from standard input, don't treat  a  line
                  with only a . character as the end of input.

           -L label (ignored)
                  The  logging  label. Use the syslog_name configuration parameter
                  instead.

           -m (ignored)
                  Backwards compatibility.

           -N dsn (default: 'delay, failure')
                  Delivery  status  notification   control.   Specify   either   a
                  comma-separated list with one or more of failure (send notifica-
                  tion when delivery fails), delay (send notification when  deliv-
                  ery  is delayed), or success (send notification when the message
                  is delivered); or specify never (don't send any notifications at
                  all).

                  This feature is available in Postfix 2.3 and later.

           -n (ignored)
                  Backwards compatibility.

           -oAalias_database
                  Non-default  alias  database. Specify pathname or type:pathname.
                  See postalias(1) for details.

           -O option=value (ignored)
                  Set the named option to value. Use the equivalent  configuration
                  parameter in main.cf instead.

           -o7 (ignored)

           -o8 (ignored)
                  To  send 8-bit or binary content, use an appropriate MIME encap-
                  sulation and specify the appropriate -B command-line option.

           -oi    When reading a message from standard input, don't treat  a  line
                  with only a . character as the end of input.

           -om (ignored)
                  The sender is never eliminated from alias etc. expansions.

           -o x value (ignored)
                  Set  option x to value. Use the equivalent configuration parame-
                  ter in main.cf instead.

           -r sender
                  Set the envelope sender  address.  This  is  the  address  where
                  delivery problems are sent to. With Postfix versions before 2.1,
                  the  Errors-To:  message  header  overrides  the  error   return
                  address.

           -R return
                  Delivery  status notification control.  Specify "hdrs" to return
                  only the header when a message bounces, "full" to return a  full
                  copy (the default behavior).

                  The -R option specifies an upper bound; Postfix will return only
                  the header, when a full copy would exceed the  bounce_size_limit
                  setting.

                  This option is ignored before Postfix version 2.10.

           -q     Attempt  to deliver all queued mail. This is implemented by exe-
                  cuting the postqueue(1) command.

                  Warning: flushing undeliverable mail frequently will  result  in
                  poor delivery performance of all other mail.

           -qinterval (ignored)
                  The interval between queue runs. Use the queue_run_delay config-
                  uration parameter instead.

           -qIqueueid
                  Schedule immediate delivery of mail with the specified queue ID.
                  This  option  is  implemented by executing the postqueue(1) com-
                  mand, and is available with Postfix version 2.4 and later.

           -qRsite
                  Schedule immediate delivery of all mail that is queued  for  the
                  named  site. This option accepts only site names that are eligi-
                  ble for the "fast flush" service, and is implemented by  execut-
                  ing the postqueue(1) command.  See flush(8) for more information
                  about the "fast flush" service.

           -qSsite
                  This command is not implemented. Use the  slower  "sendmail  -q"
                  command instead.

           -t     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 on the command line.

           -U (ignored)
                  Initial user submission.

           -V envid
                  Specify the envelope ID for notification by servers that support
                  DSN.

                  This feature is available in Postfix 2.3 and later.

           -XV (Postfix 2.2 and earlier: -V)
                  Variable Envelope Return Path. Given an envelope sender  address
                  of  the  form  owner-listname@origin, each recipient user@domain
                  receives mail with a personalized envelope sender address.

                  By  default,  the  personalized  envelope  sender   address   is
                  owner-listname+user=domain@origin.  The  default + and = charac-
                  ters are configurable with the default_verp_delimiters  configu-
                  ration parameter.

           -XVxy (Postfix 2.2 and earlier: -Vxy)
                  As  -XV,  but  uses  x  and  y as the VERP delimiter characters,
                  instead of the characters specified with the default_verp_delim-
                  iters configuration parameter.

           -v     Send an email report of the first delivery attempt (Postfix ver-
                  sions 2.1 and later). Mail delivery always happens in the  back-
                  ground.  When multiple -v options are given, enable verbose log-
                  ging for debugging purposes.

           -X log_file (ignored)
                  Log mailer traffic. Use the debug_peer_list and debug_peer_level
                  configuration parameters instead.

    SECURITY
           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.

    DIAGNOSTICS
           Problems  are  logged to syslogd(8) or postlogd(8), and to the standard
           error stream.

    ENVIRONMENT
           MAIL_CONFIG
                  Directory with Postfix configuration files.

           MAIL_VERBOSE (value does not matter)
                  Enable verbose logging for debugging purposes.

           MAIL_DEBUG (value does not matter)
                  Enable debugging with an external command, as specified with the
                  debugger_command configuration parameter.

           NAME   The  sender full name. This is used only with messages that have
                  no From: message header. See also the -F option above.

    CONFIGURATION PARAMETERS
           The following main.cf parameters are especially relevant to  this  pro-
           gram.   The  text  below  provides  only a parameter summary. See post-
           conf(5) for more details including examples.

    COMPATIBILITY CONTROLS
           Available with Postfix 2.9 and later:

           sendmail_fix_line_endings (always)
                  Controls how the Postfix sendmail command converts email message
                  line endings from <CR><LF> into UNIX format (<LF>).

    TROUBLE SHOOTING CONTROLS
           The  DEBUG_README  file gives examples of how to troubleshoot a Postfix
           system.

           debugger_command (empty)
                  The external command to execute when a Postfix daemon program is
                  invoked with the -D option.

           debug_peer_level (2)
                  The  increment  in verbose logging level when a remote client or
                  server matches a pattern in the debug_peer_list parameter.

           debug_peer_list (empty)
                  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 $debug_peer_level.

    ACCESS CONTROLS
           Available in Postfix version 2.2 and later:

           authorized_flush_users (static:anyone)
                  List of users who are authorized to flush the queue.

           authorized_mailq_users (static:anyone)
                  List of users who are authorized to view the queue.

           authorized_submit_users (static:anyone)
                  List of users who are authorized to submit mail with  the  send-
                  mail(1) command (and with the privileged postdrop(1) helper com-
                  mand).

    RESOURCE AND RATE CONTROLS
           bounce_size_limit (50000)
                  The maximal amount of original message text that is  sent  in  a
                  non-delivery notification.

           fork_attempts (5)
                  The maximal number of attempts to fork() a child process.

           fork_delay (1s)
                  The delay between attempts to fork() a child process.

           hopcount_limit (50)
                  The maximal number of Received:  message headers that is allowed
                  in the primary message headers.

           queue_run_delay (300s)
                  The time between deferred queue  scans  by  the  queue  manager;
                  prior to Postfix 2.4 the default value was 1000s.

    FAST FLUSH CONTROLS
           The  ETRN_README file describes configuration and operation details for
           the Postfix "fast flush" service.

           fast_flush_domains ($relay_domains)
                  Optional list of destinations that are eligible for per-destina-
                  tion logfiles with mail that is queued to those destinations.

    VERP CONTROLS
           The  VERP_README  file describes configuration and operation details of
           Postfix support for variable envelope return path addresses.

           default_verp_delimiters (+=)
                  The two default VERP delimiter characters.

           verp_delimiter_filter (-=+)
                  The characters Postfix accepts as VERP delimiter  characters  on
                  the Postfix sendmail(1) command line and in SMTP commands.

    MISCELLANEOUS CONTROLS
           alias_database (see 'postconf -d' output)
                  The  alias databases for local(8) delivery that are updated with
                  "newaliases" or with "sendmail -bi".

           command_directory (see 'postconf -d' output)
                  The location of all postfix administrative commands.

           config_directory (see 'postconf -d' output)
                  The default location of the Postfix main.cf and  master.cf  con-
                  figuration files.

           daemon_directory (see 'postconf -d' output)
                  The directory with Postfix support programs and daemon programs.

           default_database_type (see 'postconf -d' output)
                  The default database type for use in newaliases(1), postalias(1)
                  and postmap(1) commands.

           delay_warning_time (0h)
                  The  time  after which the sender receives a copy of the message
                  headers of mail that is still queued.

           import_environment (see 'postconf -d' output)
                  The list of environment parameters  that  a  privileged  Postfix
                  process  will  import  from  a  non-Postfix  parent  process, or
                  name=value environment overrides.

           mail_owner (postfix)
                  The UNIX system account that owns the  Postfix  queue  and  most
                  Postfix daemon processes.

           queue_directory (see 'postconf -d' output)
                  The location of the Postfix top-level queue directory.

           remote_header_rewrite_domain (empty)
                  Don't  rewrite  message  headers from remote clients at all when
                  this parameter is empty; otherwise, rewrite message headers  and
                  append the specified domain name to incomplete addresses.

           syslog_facility (mail)
                  The syslog facility of Postfix logging.

           syslog_name (see 'postconf -d' output)
                  A  prefix  that  is  prepended  to  the  process  name in syslog
                  records, so that, for example, "smtpd" becomes "prefix/smtpd".

           Postfix 3.2 and later:

           alternate_config_directories (empty)
                  A list of non-default Postfix configuration directories that may
                  be  specified with "-c config_directory" on the command line (in
                  the case of sendmail(1), with  the  "-C"  option),  or  via  the
                  MAIL_CONFIG environment parameter.

           multi_instance_directories (empty)
                  An  optional  list of non-default Postfix configuration directo-
                  ries; these directories belong to additional  Postfix  instances
                  that  share  the Postfix executable files and documentation with
                  the default Postfix instance, and  that  are  started,  stopped,
                  etc., together with the default Postfix instance.

    FILES
           /var/spool/postfix, mail queue
           /etc/postfix, configuration files

    SEE ALSO
           pickup(8), mail pickup daemon
           qmgr(8), queue manager
           smtpd(8), SMTP server
           flush(8), fast flush service
           postsuper(1), queue maintenance
           postalias(1), create/update/query alias database
           postdrop(1), mail posting utility
           postfix(1), mail system control
           postqueue(1), mail queue control
           postlogd(8), Postfix logging
           syslogd(8), system logging

    README_FILES
           Use  "postconf readme_directory" or "postconf html_directory" to locate
           this information.
           DEBUG_README, Postfix debugging howto
           ETRN_README, Postfix ETRN howto
           VERP_README, Postfix VERP howto

    LICENSE
           The Secure Mailer license must be distributed with this software.

    AUTHOR(S)
           Wietse Venema
           IBM T.J. Watson Research
           P.O. Box 704
           Yorktown Heights, NY 10598, USA

           Wietse Venema
           Google, Inc.
           111 8th Avenue
           New York, NY 10011, USA

                                                                       SENDMAIL(1)