Provided by: uw-mailutils_2007f~dfsg-7_amd64 bug

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                               TMAIL(1)