Man Linux: Main Page and Category List

NAME

       tmail - Mail Delivery Module

SYNOPSIS

       tmail   [-b   format]   [-D]   [-f   from_name]   [-I  inbox_specifier]
       user[+folder] ...

DESCRIPTION

       tmail delivers mail to a user's INBOX or a  designated  folder.   tmail
       may   be   configured   as   a   drop-in  replacement  for  binmail(1),
       mail.local(1) or any program intended for use for mail  delivery  by  a
       mail delivery program such as sendmail(8).

       tmail  is intended to be used for direct delivery by the mailer daemon;
       dmail(1) is the preferred tool  for  user  applications,  e.g.  a  mail
       delivery  filter  such  as  procmail(1).   If  tmail is used for a user
       application, then the calling program must be aware of the restrictions
       noted below.

       When  tmail  exits,  it  returns  exit status values to enable the mail
       delivery  program  to  determine  whether  a  message   was   delivered
       successfully  or  had  a  temporary  (requeue  for  later  delivery) or
       permanent (return to sender) failure.

       If the +folder extension is included in the user argument,  tmail  will
       attempt  to  deliver  to the designated folder.  If the folder does not
       exist or the extension is not included, the message is delivered to the
       user's  INBOX.   If delivery is to INBOX and no INBOX currently exists,
       tmail will create a new INBOX, using the -I or -b  flag  if  specified.
       tmail recognizes the format of an existing INBOX or folder, and appends
       the new message in that format.

       The -b flag specifies a format  to  create  INBOX  if  INBOX  does  not
       already exist.  This flag requires privileges, and can not be used with
       -I.  The argument is a format name such as mix, mbx, etc.

       The -D  flag  specifies  debugging;  this  enables  additional  message
       telemetry.

       The  -f  or  -r  flag is used by the mail delivery program to specify a
       Return-Path.  The header
          Return-Path: <from_name>
       is prepended to the message before delivery.

       The -I flag is  used  by  the  mail  delivery  program  to  specify  an
       alternative  INBOX name.  This flag requires privileges, and can not be
       used with -b.  This affects the  location  and  format  of  INBOX.   If
       specified, it should be in one of three forms:

       The  first form of argument to -I is the string "INBOX", which means to
       write to the system default inbox  using  the  system  default  mailbox
       format.  These system defaults are defined when the c-client library is
       built.

       The second  form  of  argument  to  -I  is  a  delivery  specification,
       consisting  of  "#driver.", a c-client mailbox format driver name, "/",
       and a file name.   This  will  write  to  the  specified  file  in  the
       specified  format.   For  example, #driver.mbx/INBOX will write to file
       "INBOX"   in    the    home    directory    in    mbx    format;    and
       #driver.unix/mail/incoming  will write to file "incoming" in the user's
       "mail" subdirectory in unix (default UNIX) format.

       The third form of argument to -I is any  other  name.   Normally,  this
       will  write  to  the specified file on the user's home directory in the
       specified format.  However, certain names are special.  These are:

         value       equivalant to
         -----       -------------
         INBOX.MTX   #driver.mtx/INBOX.MTX
         mbox        #driver.unix/mbox
         mail.txt    #driver.tenex/mail.txt

       If -I is not specified, the default action is -I INBOX.

       If multiple recipients are specified on the command line, tmail  spawns
       one  child  process per recipient to perform actual delivery.  This way
       of calling tmail is not recommended; see below under RESTRICTIONS.

INSTALLATION

       If tmail is to be  used  for  mail  delivery  from  the  mail  delivery
       program, it must be installed setuid root.

       If  sendmail  is  the  mail  delivery  program,  tmail  is invoked from
       sendmail.cf.  Look for the "Mlocal" line, and substitute the path  name
       for  the  tmail binary in place of /bin/mail, /usr/lib/mail.local, etc.
       You should also add the flag to invoke tmail with CRLF style  newlines;
       this is usually done with E=\r\n in the Mlocal line.

       Here is an example of an Mlocal line in sendmail version 8:

       Mlocal, P=/usr/local/etc/tmail, F=lsDFMAw5:/|@qPrn+,
         S=10/30, R=20/40, E=\r\n, T=DNS/RFC822/X-Unix,
         A=tmail $u

       If tmail is to be called with the -I flag, it must be invoked with both
       real and effective UID root.  Many sendmail configurations  invoke  the
       local  mailer  as  the sending user when that user is local, which will
       prevent -b or -I from working.

SECURITY CONSIDERATIONS

       If tmail is invoked by an ordinary user, the Received: header line will
       indicate the name or UID of the user that invoked it.

       Ordinary  users  are  not  permitted  to  use  the  -b or -I flag since
       otherwise a user could create any file on another user's directory.

       tmail can deliver mail to home directories.  In addition, tmail can  be
       used  to  deliver  mail to other mail folders in a home directory or an
       inferior directory of a home directory.

RESTRICTIONS

       The calling program should invoke tmail with CRLF  newlines,  otherwise
       tmail will complain in syslog.

       Absolute  pathnames  and  ~user  specifications  are  not  permitted in
       +folder extensions.

       Ordinary users are not permitted to use the -I flag.

       IMAP4 namespace names are not yet supported in +folder extensions.

       It is not possible to use tmail to deliver to mh(1) format mailboxes.

       If delivery to multiple users is specified and delivery to  any  single
       user fails, the entire delivery will be reported as having failed, even
       though delivery to other users may have succeeded.  If  tmail  is  used
       for  mail delivery from sendmail(8), a separate tmail invocation should
       be done for each user.  Otherwise a delivery failure for a single  user
       in  a message going to multiple users will cause multiple deliveries to
       all the other users every time sendmail(8), retries.

AUTHOR

       Mark Crispin, MRC@CAC.Washington.EDU

SEE ALSO

       binmail(1)
       sendmail(8)

                              September 27, 2007