Provided by: extsmail_2.5-2_amd64 bug

NAME

       extsmail.externals — configure which external commands to robustly send e-mail via

DESCRIPTION

       extsmail.externals  is  used  to  configure extsmaild(1).  It consists of one or more group declarations.
       Each group consists of zero or more match / reject clauses followed by one or more external declarations.
       An external consists of one or more assignments of key = value pairs.

       When sending messages extsmaild(1) first searches through the externals file, in order, for a group whose
       match / reject clauses match the message in question. If a group does not contain  any  such  clauses  it
       automatically  matches all messages. Match / reject clauses currently match only against headers, and use
       standard POSiX extended regular expressions (see re_format(7) for more details).  extsmaild(1) then tries
       each external in the group, in order, to send the message successfully.

       The grammar for this file is as follows:

             group    ::= { matches* external+ }

             matches  ::= match
                        | reject
             match    ::= MATCH HEADER string
             reject   ::= REJECT HEADER string

             external ::= EXTERNAL ID { defn+ }

             defn     ::= ID = STRING
                        | ID = TIME

             TIME     ::= [0-9]+[dhms]

       Valid assignments within an external are:

       sendmail
               Defines the external shell command used to send e-mail.

       timeout
               If extsmaild(1) is executed  in  daemon  mode,  this  value  defines  the  length  of  time  that
               extsmaild(1) will retry this external before giving up and trying the next external in the group.
               Times  are specified as a number followed by d (days), h (hours), m (minutes), or s (seconds). If
               extsmaild(1) is executed in batch mode, the timeout value is ignored.

FILES

       The extsmail configuration file is searched for, in order, in the following locations:

       ~/.extsmail/externals
               Per-user configuration.

       /etc/extsmail/externals
               System-wide configuration.

EXAMPLES

       The simplest externals file sending e-mail via ssh(1) looks as follows:

             group {
                 external mymachine {
                     sendmail = "/usr/bin/ssh -q -C -l user mymachine.net /usr/sbin/sendmail -t"
                 }
             }
       where mymachine is a human-friendly name given to an external (it does not effect processing),  and  user
       is the username on the remote machine mymachine.net.

       A  more  complex example using multiple groups, message matching, and multiple external commands looks as
       follows:

             group {
                 match header "^To:.*@foo.com"

                 external foo {
                     sendmail = "/usr/bin/ssh -q -C -l user shell.foo.com /usr/sbin/sendmail -t"
                 }
             }

             group {
                 external mymachine {
                     sendmail = "/usr/bin/ssh -q -C -l user mymachine.net /usr/sbin/sendmail -t"
                 }

                 external bk {
                     sendmail = "/usr/bin/ssh -q -C -l user bk.mymachine.net /usr/sbin/sendmail -t"
                 }
             }

SEE ALSO

       extsmail(1), extsmail.conf(5), extsmaild(1)

AUTHORS

       Laurence Tratt <http://tratt.net/laurie/>

Debian                                          November 2, 2008                           EXTSMAIL.EXTERNALS(5)