sendmail(1M)          Maintenance Commands           sendmail(1M)



NAME
     sendmail - send mail over the internet

SYNOPSIS
     /usr/lib/sendmail [ -ba ] [ -bd ] [ -bi ] [ -bm ] [ -bp ]
          [ -bs ] [ -bt ] [ -bv ] [ -B type ] [ -C file ]
          [ -d X ] [ -F fullname ] [ -f name ] [ -h N ] [ -M id ]
          [ -n ] [ -o xvalue ] [ -p protocol ] [ -q [ time ] ]
          [ -q Xstring ] [ -r  name ] [ -t ] [ -v ] [  -X logfile
     ]
          [ address ... ]

AVAILABILITY
     SUNWcsu

DESCRIPTION
     sendmail sends a message to one or more people, routing  the
     message over whatever networks are necessary.  sendmail does
     internetwork forwarding as necessary to deliver the  message
     to the correct place.

     sendmail is not intended as a user interface routine;  other
     programs  provide user-friendly front ends; sendmail is used
     only to deliver pre-formatted messages.

     With no flags, sendmail reads its standard input  up  to  an
     EOF,  or  a  line with a single dot, and sends a copy of the
     letter found there to  all  of  the  addresses  listed.   It
     determines  the  network to use based on the syntax and con-
     tents of the addresses.

     Local addresses are looked up in the local aliases(4)  file,
     or  by using the YP name service, and aliased appropriately.
     In addition, if there is a .forward file  in  a  recipient's
     home  directory, sendmail forwards a copy of each message to
     the list of recipients that file contains.  Aliasing can  be
     prevented  by  preceding the address with a backslash.  Nor-
     mally the sender is not included in  alias  expansions,  for
     example,  if  `john'  sends to `group', and `group' includes
     `john' in  the  expansion,  then  the  letter  will  not  be
     delivered to `john'.

     sendmail will also route mail directly to other known  hosts
     in  a  local  network.   The  list of hosts to which mail is
     directly sent is maintained in the file /usr/lib/mailhosts.

     If a letter is found to be undeliverable, it is returned  to
     the  sender  with diagnostics that indicate the location and
     nature of the  failure;  or,  the  letter  is  placed  in  a
     dead.letter file in the sender's home directory.

OPTIONS
     -ba            Go into ARPANET mode.  All input  lines  must
                    end  with a RETURN-LINEFEED, and all messages
                    will be generated with a  RETURN-LINEFEED  at
                    the end.  Also, the From: and Sender:  fields
                    are examined for the name of the sender.

     -bd            Run as a daemon, waiting  for  incoming  SMTP
                    connections.

     -bi            Initialize the aliases(4) database.

     -bm            Deliver mail in the usual way (default).

     -bp            Print a summary of the mail queue.

     -bs            Use the SMTP protocol  as  described  in  RFC
                    821.  This flag implies all the operations of
                    the -ba flag that are compatible with SMTP.

     -bt            Run in address test mode.   This  mode  reads
                    addresses  and shows the steps in parsing; it
                    is used for debugging configuration tables.

     -bv            Verify names only - do not try to collect  or
                    deliver  a  message.  Verify mode is normally
                    used for validating users or mailing lists.

     -B type        indicate body type (7BIT or 8BITMIME)

     -C file        Use alternate configuration file.

     -d X           Set debugging value to X.

     -F fullname    Set the full name of the sender.

     -f name        Sets the name of the "from" person (that  is,
                    the sender of the mail).  -f can only be used
                    by "trusted" users (who  are  listed  in  the
                    configuration file).

     -h N           Set the hop count to N.   The  hop  count  is
                    incremented every time the mail is processed.
                    When it reaches a limit, the mail is returned
                    with  an  error  message,  the  victim  of an
                    aliasing loop.

     -M id          Attempt to deliver the  queued  message  with
                    message-id  id.  This option is supported for
                    backward compatibility and the -qI option  is
                    preferred.

     -n             Do not do aliasing.

     -o xvalue      Set option x to the  specified  value.   Pro-
                    cessing Options are described below.

     -p protocol    Set  the  sending  protocol.   Programs   are
                    encouraged  to  set this.  The protocol field
                    can be in form protocol:host to set both  the
                    sending  protocol  and the sending host.  For
                    example:

                         -pUUCP:uunet

                    sets the sending protocol  to  UUCP  and  the
                    sending  host  to uunet.  (Some existing pro-
                    grams use -oM to set the r and s macros; this
                    is equivalent to using -p).

     -q[time]       Process saved messages in the queue at  given
                    intervals.   If  time is omitted, process the
                    queue  once.   time  is  given  as  a  tagged
                    number,   with   s  being  seconds,  m  being
                    minutes, h being hours, d being days,  and  w
                    being  weeks.   For example, -q1h30m or -q90m
                    would both set the timeout to one hour thirty
                    minutes.

     -q Xstring     Run the queue  once,  limiting  the  jobs  to
                    those matching Xstring.  The key letter X can
                    be:

                    I    to limit based on queue identifier  (see
                         -M option).
                    R    to limit  based  on  recipient  (see  -R
                         option).
                    S    to limit based on sender.

                    A particular queued job is accepted if one of
                    the   corresponding  addresses  contains  the
                    indicated string.

     -r name        An alternate and  obsolete  form  of  the  -f
                    flag.

     -R string      Go through the  queue  of  pending  mail  and
                    attempt  to  deliver any message with a reci-
                    pient containing the specified string.   This
                    is useful for clearing out mail directed to a
                    machine which has been down for awhile.  This
                    option  is supported for backward compatibil-
                    ity and the -qR option is preferred.

     -t             Read message for recipients.  To:,  Cc:,  and
                    Bcc:   lines  will  be  scanned for people to
                    send to.   The  Bcc:  line  will  be  deleted
                    before  transmission.   Any  addresses in the
                    argument list will be suppressed.

     -v             Go into verbose mode.  Alias expansions  will
                    be announced, etc.

     -X logfile     Log all traffic in and out of sendmail in the
                    indicated  logfile for debugging mailer prob-
                    lems.  This  produces  a  lot  of  data  very
                    quickly and should be used sparingly.

  Processing Options
     There are a number of "random" options that can be set  from
     a  configuration  file.   Options  are represented by single
     characters.  The syntax of this line is:

                    Oovalue

     This sets option o to be value.  Depending  on  the  option,
     value may be
                    +o a string
                    +o an integer
                    +o a boolean (with legal values t, T, f, or F;
                      the default is TRUE)
                    +o a time interval.

     The options supported are:

     aN             If set, wait up to N  minutes  for  an  "@:@"
                    entry  to  exist  in  the aliases(4) database
                    before starting up.  If it does not appear in
                    N  minutes,  rebuild  the  database (if the D
                    option is also set) or issue a warning.

     Afile          Specify possible alias file(s).

     bN/M           Insist on at  least  N  blocks  free  on  the
                    filesystem  that holds the queue files before
                    accepting email via SMTP. If there is  insuf-
                    ficient  space  sendmail gives a 452 response
                    to the MAIL command.  This invites the sender
                    to try again later.  The optional M is a max-
                    imum message size  advertised  in  the  ESMTP
                    EHLO  response.   It  is  currently otherwise
                    unused.

     Bc             Set the blank substitution  character  to  c.
                    Unquoted  spaces in addresses are replaced by
                    this character.  Defaults to SPACE (i.e.,  no
                    change is made).

     c              If an outgoing  mailer  is  marked  as  being
                    expensive, don't connect immediately.

     CN             Checkpoints the queue every  N  (default  10)
                    addresses  sent.  If your system crashes dur-
                    ing delivery to a large list,  this  prevents
                    retransmission  to  any  but the last N reci-
                    pients.

     dx             Deliver in mode x.  Legal modes are:

                    i         Deliver   interactively   (synchro-
                              nously)
                    b         Deliver  in  background  (asynchro-
                              nously)
                    q         Just  queue  the  message  (deliver
                              during queue run)



                    Defaults to b if no option is specified, i if
                    it  is specified but given no argument (i.e.,
                    Od is equivalent to Odi).

     D              If set, rebuild the  /etc/mail/aliases  data-
                    base  if  necessary  and  possible.   If this
                    option  is  not  set,  sendmail  will   never
                    rebuild  the  aliases  database unless expli-
                    citly requested using -bi,  or  newaliases(1)
                    is invoked.

     ex             Dispose of errors using mode x.   The  values
                    for x are:

                    p         Print error messages (default)
                    q         No messages, just give exit status
                    m         Mail back errors
                    w         Write back errors (mail if user not
                              logged in)
                    e         Mail back errors and give zero exit
                              stat always


     Efile/message  Prepend error  messages  with  the  indicated
                    message.   If  it  begins with a slash, it is
                    assumed to be the pathname of a file contain-
                    ing  a  message (this is the recommended set-
                    ting).  Otherwise, it is a  literal  message.
                    The  error file might contain the name, email
                    address,  and/or  phone  number  of  a  local
                    postmaster who could provide assistance in to
                    end users.  If the option is missing or null,
                    or if it names a file which does not exist or
                    which is not readable, no message is printed.

     f              Save Unix-style From lines at  the  front  of
                    headers.  Normally they are assumed redundant
                    and discarded.

     Fmode          The file mode for queue files.

     gn             Set the default group ID for mailers  to  run
                    in  to n.  Defaults to 1.  The value can also
                    be given as a symbolic group name.

     hN             The maximum hop count.   Messages  that  have
                    been  processed more than N times are assumed
                    to be in a loop and are  rejected.   Defaults
                    to 25.

     Hfile          Specify the help file for SMTP.

     i              Ignore dots in incoming  messages.   This  is
                    always  disabled  (that  is,  dots are always
                    accepted) when reading SMTP mail.

     I              Insist that the name  server  be  running  to
                    resolve  host  names.  If this is not set and
                    the  name  server   is   not   running,   the
                    /etc/hosts  file  (see hosts(4)) will be con-
                    sidered complete.  In general, you do want to
                    set  this option if your /etc/hosts file does
                    not include all hosts known to you or if  you
                    are using the MX (mail forwarding) feature of
                    the name server.  The name server will  still
                    be  consulted even if this option is not set,
                    but sendmail will  feel  free  to  resort  to
                    reading  /etc/hosts if the name server is not
                    available.  Thus, you should never  set  this
                    option if you do not run the name server.

     j              If set, send error messages  in  MIME  format
                    (see RFC1341 and RFC1344 for details).

     Jpath          Set the path for searching for  users'  .for-
                    ward  files.   The  default  is  $z/.forward.
                    Some  sites  that  use  the  automounter  may
                    prefer  to  change this to /var/forward/$u to
                    search a file with the same name as the  user
                    in a system directory.  It can also be set to
                    a sequence  of  paths  separated  by  colons;
                    sendmail  stops  at  the  first  file  it can
                    successfully and safely open.   For  example,
                    /var/forward/$u:$z/.forward will search first
                    in  /var/forward/  username   and   then   in
                    ~username/.forward  (but  only  if  the first
                    file does not exist).

     kN             The maximum number of open  connections  that
                    will  be  cached  at  a time.  The default is
                    one.  This delays closing the current connec-
                    tion until either this invocation of sendmail
                    needs to connect to another host or  it  ter-
                    minates.   Setting it to zero defaults to the
                    old behavior, that is, connections are closed
                    immediately.

     Ktimeout       The maximum amount of time a  cached  connec-
                    tion   will  be  permitted  to  idle  without
                    activity.  If this time is exceeded, the con-
                    nection  is  immediately  closed.  This value
                    should  be  small  (on  the  order   of   ten
                    minutes).  Before sendmail uses a cached con-
                    nection, it always sends a  NOOP  (no  opera-
                    tion)  command  to  check  the connection; if
                    this fails, it reopens the connection.   This
                    keeps  your end from failing if the other end
                    times out.  The point of this option is to be
                    a  good  network  neighbor and avoid using up
                    excessive resources on the  other  end.   The
                    default is five minutes.

     l              If there is an Errors-To:  header, send error
                    messages to the addresses listed there.  They
                    normally go to the envelope sender.   Use  of
                    this  option  causes  sendmail to violate RFC
                    1123.

     Ln             Set the default log level to n.  Defaults  to
                    9.

     m              Send to me too, even if  I  am  in  an  alias
                    expansion.

     Mxvalue        Set the macro x to value.  This  is  intended
                    only for use from the command line.

     n              Validate the RHS of aliases  when  rebuilding
                    the aliases(4) database.

     o              Assume that the headers may be in old format,
                    i.e.,  spaces  delimit  names.  This actually
                    turns on an adaptive algorithm:  if any reci-
                    pient  address contains a comma, parenthesis,
                    or angle bracket, it  will  be  assumed  that
                    commas  already  exist.   If this flag is not
                    on, only commas delimit names.   Headers  are
                    always output with commas between the names.

     Ooptions       Set server SMTP  options.   The  options  are
                    key=value pairs.  Known keys are:

                    Port      Name/number   of   listening   port
                              (defaults to smtp)
                    Addr      Address mask (defaults INADDR_ANY)
                    Family    Address family (defaults to INET)
                    Listen    Size of listen queue  (defaults  to
                              10)

                    The Address mask may be a numeric address  in
                    dot notation or a network name.

     popt,opt,...   Set  the  privacy  options.   ``Privacy''  is
                    really  a  misnomer; many of these are just a
                    way of insisting on stricter adherence to the
                    SMTP  protocol.   The options can be selected
                    from:

                    public              Allow open access
                    needmailhelo        Insist on  HELO  or  EHLO
                                        command before MAIL
                    needexpnhelo        Insist on  HELO  or  EHLO
                                        command before EXPN
                    noexpn              Disallow EXPN entirely
                    needvrfyhelo        Insist on  HELO  or  EHLO
                                        command before VRFY
                    novrfy              Disallow VRFY entirely
                    restrictmailq       Restrict mailq command
                    restrictqrun        Restrict -q command  line
                                        flag
                    goaway              Disallow essentially  all
                                        SMTP status queries
                    authwarnings        Put     X-Authentication-
                                        Warning:  headers in mes-
                                        sages

                    The goaway pseudo-flag sets all flags  except
                    restrictmailq  and restrictqrun.  If mailq is
                    restricted, only people in the same group  as
                    the  queue directory can print the queue.  If
                    queue runs are restricted, only root and  the
                    owner  of  the  queue  directory  can run the
                    queue.  Authentication Warnings add  warnings
                    about  various  conditions  that may indicate
                    attempts to spoof the mail  system,  such  as
                    using an non-standard queue directory.

     Ppostmaster    If set, copies of error messages will be sent
                    to  the named postmaster.  Only the header of
                    the  failed  message  is  sent.   Since  most
                    errors  are  user  problems, this is probably
                    not a good idea on large sites, and  arguably
                    contains all sorts of privacy violations, but
                    it seems to be popular with certain operating
                    systems vendors.

     qfactor        Use factor as the multiplier in the map func-
                    tion  to  decide  when  to just queue up jobs
                    rather than run them.  This value is  divided
                    by  the  difference  between the current load
                    average and the load average  limit  (x flag)
                    to  determine  the  maximum  message priority
                    that will be sent.  Defaults to 600000.

     Qdir           Use the named dir as the queue directory.

     r timeouts     Timeout  reads  after  time  interval.    The
                    timeouts  argument is a list of keyword=value
                    pairs.  The  recognized  timeouts  and  their
                    default  values,  and  their  minimum  values
                    specified in RFC 1123 section 5.3.2 are:

                    initial             wait for initial greeting
                                        message [5m, 5m]
                    helo                reply  to  HELO  or  EHLO
                                        command [5m, none]
                    mail                reply  to  MAIL   command
                                        [10m, 5m]
                    rcpt                reply  to  RCPT   command
                                        [1h, 5m]
                    datainit            reply  to  DATA   command
                                        [5m, 2m]
                    datablock           data block read [1h, 3m]
                    datafinal           reply to final  ``.''  in
                                        data [1h, 10m]
                    rset                reply  to  RSET   command
                                        [5m, none]
                    quit                reply  to  QUIT   command
                                        [2m, none]
                    misc                reply to  NOOP  and  VERB
                                        commands [2m, none]
                    command             command read [1h, 5m]
                    ident               IDENT  protocol   timeout
                                        [30s, none]

                    All but command apply  to  client  SMTP.  For
                    backward  compatibility,  a  timeout  with no
                    keyword= part will  set  all  of  the  longer
                    values.

     s              Be  super-safe  when  running  things,  i.e.,
                    always  instantiate  the  queue file, even if
                    you are going to attempt immediate  delivery.
                    sendmail  always  instantiates the queue file
                    before returning control the client under any
                    circumstances.

     Sfile          Log statistics in the named file.

     ttzinfo        Set the local time zone info to tzinfo -  for
                    example,  "PST8PDT  ."   Actually, if this is
                    not  set,  the  TZ  environment  variable  is
                    cleared  (so  the system default is used); if
                    set but null, the user's TZ variable is used,
                    and  if  set  and non-null the TZ variable is
                    set to this value.

     Trtime/wtime   Set the queue timeout to rtime.   After  this
                    interval,  messages  that  have not been suc-
                    cessfully  sent  will  be  returned  to   the
                    sender.   Defaults  to  five  days (5d).  The
                    optional wtime is  the  time  after  which  a
                    warning message is sent.  If it is missing or
                    zero then no warning messages are sent.

     un             Set the default  userid  for  mailers  to  n.
                    Mailers  without  the  S  flag  in the mailer
                    definition will run as this  user.   Defaults
                    to  1.  The value can also be given as a sym-
                    bolic user name.

     v              Run in verbose mode.  If this is  set,  send-
                    mail  adjusts  options  c  (don't  connect to
                    expensive mailers) and d (delivery  mode)  so
                    that  all  mail  is delivered completely in a
                    single job so that you  can  see  the  entire
                    delivery  process.   Option v should never be
                    set in the configuration file; it is intended
                    for command line use only.

     Vfallbackhost  If specified, the fallbackhost  acts  like  a
                    very  low priority MX on every host.  This is
                    intended to be used by sites with  poor  net-
                    work connectivity.

     w              If  you  are  the  "best"  (that  is,  lowest
                    preference)  MX  for a given host, you should
                    normally detect this situation and treat that
                    condition  specially,  by forwarding the mail
                    to a UUCP feed,  treating  it  as  local,  or
                    whatever.   However,  in  some cases (such as
                    Internet firewalls) you may want  to  try  to
                    connect  directly  to  that host as though it
                    had no  MX  records  at  all.   Setting  this
                    option  causes  sendmail  to  try  this.  The
                    downside is that errors in your configuration
                    are  likely to be diagnosed as "host unknown"
                    or "message timed out" instead  of  something
                    more  meaningful.   This  option is disrecom-
                    mended.

     xLA            When the system load average exceeds LA, just
                    queue  messages  (i.e.,  don't  try  to  send
                    them).  Defaults to 8.

     XLA            When the  system  load  average  exceeds  LA,
                    refuse  incoming  SMTP connections.  Defaults
                    to 12.

     yfact          The indicated factor (fact) is added  to  the
                    priority  (thus  lowering the priority of the
                    job) for each  recipient,  i.e.,  this  value
                    penalizes  jobs  with  large numbers of reci-
                    pients.  Defaults to 30000.

     Y              If set, deliver each job that is run from the
                    queue in a separate process.  Use this option
                    if you are short of memory, since the default
                    tends  to  consume  considerable  amounts  of
                    memory while the queue is being processed.

     zfact          The indicated factor (fact) or is  multiplied
                    by  the message class (determined by the Pre-
                    cedence: field in the user header and  the  P
                    lines  in  the  configuration  file) and sub-
                    tracted from the  priority.   Thus,  messages
                    with  a  higher  Priority:  will  be favored.
                    Defaults to 1800.

     Zfact          The fact or is added to  the  priority  every
                    time  a  job is processed.  Thus, each time a
                    job  is  processed,  its  priority  will   be
                    decreased  by  the  indicated value.  In most
                    environments this should be  positive,  since
                    hosts  that  are  down are all too often down
                    for a long time.  Defaults to 90000.

     7              Strip input to seven bits  for  compatibility
                    with  old  systems.  This shouldn't be neces-
                    sary.

     All options can be specified on the command line  using  the
     -o flag,  but  most  will  cause  sendmail to relinquish its
     setuid permissions.  The options that will  not  cause  this
     are  b,  d, e, E, i, L, m, o, p, r, s, v, C, and 7.  Also, M
     (define macro) when defining the r or s macros is also  con-
     sidered "safe ."

     If the first character of the user name is a  vertical  bar,
     the  rest  of the user name is used as the name of a program
     to pipe the mail to.  It may be necessary to quote the  name
     of  the  user  to  keep sendmail from suppressing the blanks
     from between arguments.

     sendmail returns an exit status describing what it did.  The
     codes are defined in /usr/include/sysexits.h.

          EX_OK               Successful   completion   on    all
                              addresses.

          EX_NOUSER           User name not recognized.

          EX_UNAVAILABLE      Catchall. Necessary resources  were
                              not available.

          EX_SYNTAX           Syntax error in address.

          EX_SOFTWARE         Internal software error,  including
                              bad arguments.

          X_OSERR             Temporary operating  system  error,
                              such as "cannot fork".

          EX_NOHOST           Host name not recognized.

          EX_TEMPFAIL         Message could not be  sent  immedi-
                              ately, but was queued.

     If invoked as newaliases, sendmail rebuilds the alias  data-
     base.   If invoked as mailq, sendmail prints the contents of
     the mail queue.

FILES
     dead.letter         unmailable text

     /etc/mail/sendmail.cf
                         defines environment for sendmail

     /var/spool/mqueue/* temp files and queued mail

     ~/.forward          list of recipients for  forwarding  mes-
                         sages

SEE ALSO
     biff(1B),  mail(1),  mailx(1),   newaliases(1),   aliases(4)
     hosts(4)

     Su, Zaw-Sing, and Jon Postel, The Domain  Naming  Convention
     for Internet User Applications, RFC 819, Network Information
     Center, SRI International, Menlo Park, Calif., August 1982.

     Postel, Jon, Simple Mail Transfer Protocol, RFC 821, Network
     Information  Center,  SRI International, Menlo Park, Calif.,
     August 1982.

     Crocker, Dave, Standard  for  the  Format  of  ARPA-Internet
     TextMessages,  RFC  822,  Network  Information  Center,  SRI
     International, Menlo Park, Calif., August 1982.
1
Hosted by www.Geocities.ws