cat1/condredirect.0.html100644 0 0 2543 6244431464 13471 0ustar rootroot
       condredirect - perhaps redirect mail to another address


SYNOPSIS

       in .qmail: |condredirect newaddress program [ arg ...  ]


DESCRIPTION

       condredirect  feeds  each new mail message to program with
       the given arguments.  If  program  exits  0,  condredirect
       forwards  the  mail  message to newaddress, and then exits
       99, so further commands in .qmail are ignored.

       If program exits 111, condredirect exits 111, so  delivery
       will be retried later.

       If  program  exits anything else (or does not exist), con-
       dredirect exits 0, so the rest of .qmail will be processed
       as usual.

       Note  that it is not safe for program to fork a child that
       reads the message in the background.


SEE ALSO

       dot-qmail(5), qmail-command(8), qmail-queue(8)





























cat1/condredirect.0.html.html100644 0 0 3446 6244431465 14440 0ustar rootroot
dot-qmail(5)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-command.0.html">qmail-command(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-queue.0.html">qmail-queue(8)</A></STRONG>



























cat1/condredirect.0.html.html.html100644 0 0 4246 6244431466 15403 0ustar rootroot
dot-qmail(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;, &lt;STRONG&gt;&lt;A HREF="../cat8/qmail-command.0.html"&gt;<STRONG><A HREF="../cat8/qmail-command.0.html">qmail-command(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;, &lt;STRONG&gt;&lt;A HREF="../cat8/qmail-queue.0.html"&gt;<STRONG><A HREF="../cat8/qmail-queue.0.html">qmail-queue(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;






























cat1/condredirect.0.html.html.html.html100644      0      0        4675  6244431467  16355 0ustar  rootroot

       forwards  the  mail  message to &amp;lt;EM&amp;gt;newaddress&amp;lt;/EM&amp;gt;, and then exits
       99, so further commands in &amp;lt;STRONG&amp;gt;.qmail&amp;lt;/STRONG&amp;gt; are ignored.

       If &amp;lt;EM&amp;gt;program&amp;lt;/EM&amp;gt; exits 111, &amp;lt;STRONG&amp;gt;condredirect&amp;lt;/STRONG&amp;gt; exits 111, so  delivery
       will be retried later.

       If  &amp;lt;EM&amp;gt;program&amp;lt;/EM&amp;gt;  exits anything else (or does not exist), &amp;lt;STRONG&amp;gt;con-&amp;lt;/STRONG&amp;gt;
       &amp;lt;STRONG&amp;gt;dredirect&amp;lt;/STRONG&amp;gt; exits 0, so the rest of &amp;lt;STRONG&amp;gt;.qmail&amp;lt;/STRONG&amp;gt; will be processed
       as usual.

       Note  that it is not safe for &amp;lt;EM&amp;gt;program&amp;lt;/EM&amp;gt; to fork a child that
       reads the message in the background.


dot-qmail(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;, &amp;lt;STRONG&amp;gt;&amp;lt;A HREF="../cat8/qmail-command.0.html"&amp;gt;&lt;STRONG&gt;&lt;A HREF="../cat8/qmail-command.0.html"&gt;<STRONG><A HREF="../cat8/qmail-command.0.html">qmail-command(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;, &amp;lt;STRONG&amp;gt;&amp;lt;A HREF="../cat8/qmail-queue.0.html"&amp;gt;&lt;STRONG&gt;&lt;A HREF="../cat8/qmail-queue.0.html"&gt;<STRONG><A HREF="../cat8/qmail-queue.0.html">qmail-queue(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;






























cat1/forward.0.html100644      0      0        1700  6244431470  12457 0ustar  rootroot

       forward - forward new mail to one or more addresses


SYNOPSIS

       in .qmail: |forward address ...


DESCRIPTION

       forward  forwards  each  new mail message to the specified
       list of addresses.  It is a simple wrapper  around  qmail-
       queue.   It  achieves  the  same  results  as listing each
       address separately in .qmail, but it is more  programmable
       since address can be constructed on the fly.


SEE ALSO

       dot-qmail(5), qmail-command(8), qmail-queue(8)






































cat1/forward.0.html.html100644 0 0 2433 6244431471 13427 0ustar rootroot
dot-qmail(5)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-command.0.html">qmail-command(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-queue.0.html">qmail-queue(8)</A></STRONG>




































cat1/forward.0.html.html.html100644 0 0 3156 6244431472 14376 0ustar rootroot
dot-qmail(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;, &lt;STRONG&gt;&lt;A HREF="../cat8/qmail-command.0.html"&gt;<STRONG><A HREF="../cat8/qmail-command.0.html">qmail-command(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;, &lt;STRONG&gt;&lt;A HREF="../cat8/qmail-queue.0.html"&gt;<STRONG><A HREF="../cat8/qmail-queue.0.html">qmail-queue(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;







































cat1/forward.0.html.html.html.html100644      0      0        3577  6244431473  15351 0ustar  rootroot

       &amp;lt;STRONG&amp;gt;queue&amp;lt;/STRONG&amp;gt;.   It  achieves  the  same  results  as listing each
       &amp;lt;EM&amp;gt;address&amp;lt;/EM&amp;gt; separately in &amp;lt;STRONG&amp;gt;.qmail&amp;lt;/STRONG&amp;gt;, but it is more  programmable
       since &amp;lt;EM&amp;gt;address&amp;lt;/EM&amp;gt; can be constructed on the fly.


dot-qmail(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;, &amp;lt;STRONG&amp;gt;&amp;lt;A HREF="../cat8/qmail-command.0.html"&amp;gt;&lt;STRONG&gt;&lt;A HREF="../cat8/qmail-command.0.html"&gt;<STRONG><A HREF="../cat8/qmail-command.0.html">qmail-command(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;, &amp;lt;STRONG&amp;gt;&amp;lt;A HREF="../cat8/qmail-queue.0.html"&amp;gt;&lt;STRONG&gt;&lt;A HREF="../cat8/qmail-queue.0.html"&gt;<STRONG><A HREF="../cat8/qmail-queue.0.html">qmail-queue(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;







































cat1/maildir2mbox.0.html100644      0      0        2137  6244431474  13415 0ustar  rootroot

       maildir2mbox - move mail from a maildir to an mbox


SYNOPSIS

       maildir2mbox


DESCRIPTION

       maildir2mbox moves mail from a maildir-format directory to
       an mbox-format file.

       You   must   supply   three   environment   variables   to
       maildir2mbox:  MAILDIR  is the name of your maildir direc-
       tory; MAIL is the name of your mbox file; and MAILTMP is a
       temporary  file  that maildir2mbox can overwrite.  MAILTMP
       and MAIL must be on the same filesystem.

       maildir2mbox is reliable: it will not remove messages from
       MAILDIR until the messages have been successfully appended
       to MAIL.


SEE ALSO

       maildir(5)































cat1/maildir2mbox.0.html.html100644 0 0 2533 6244431475 14361 0ustar rootroot
maildir(5)</A></STRONG>





























cat1/maildir2mbox.0.html.html.html100644 0 0 3260 6244431476 15323 0ustar rootroot
maildir(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;
































cat1/maildir2mbox.0.html.html.html.html100644      0      0        3442  6244431477  16271 0ustar  rootroot


       You   must   supply   three   environment   variables   to
       &amp;lt;STRONG&amp;gt;maildir2mbox&amp;lt;/STRONG&amp;gt;:  &amp;lt;STRONG&amp;gt;MAILDIR&amp;lt;/STRONG&amp;gt;  is the name of your &amp;lt;EM&amp;gt;maildir&amp;lt;/EM&amp;gt; direc-
       tory; &amp;lt;STRONG&amp;gt;MAIL&amp;lt;/STRONG&amp;gt; is the name of your &amp;lt;EM&amp;gt;mbox&amp;lt;/EM&amp;gt; file; and &amp;lt;STRONG&amp;gt;MAILTMP&amp;lt;/STRONG&amp;gt; is a
       temporary  file  that &amp;lt;STRONG&amp;gt;maildir2mbox&amp;lt;/STRONG&amp;gt; can overwrite.  &amp;lt;STRONG&amp;gt;MAILTMP&amp;lt;/STRONG&amp;gt;
       and &amp;lt;STRONG&amp;gt;MAIL&amp;lt;/STRONG&amp;gt; must be on the same filesystem.

       &amp;lt;STRONG&amp;gt;maildir2mbox&amp;lt;/STRONG&amp;gt; is reliable: it will not remove messages from
       &amp;lt;STRONG&amp;gt;MAILDIR&amp;lt;/STRONG&amp;gt; until the messages have been successfully appended
       to &amp;lt;STRONG&amp;gt;MAIL&amp;lt;/STRONG&amp;gt;.


maildir(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;
































cat1/maildir2qmtp.0.html100644      0      0        1370  6244431500  13415 0ustar  rootroot

       maildir2qmtp - blast a maildir across QMTP


SYNOPSIS

       maildir2smtp dir prefix targetip


DESCRIPTION

       maildir2qmtp  is just like maildir2smtp except that (1) it
       uses QMTP instead of SMTP and (2) it does not take a helo-
       host argument.

       maildir2qmtp is faster than maildir2smtp.


SEE ALSO

       maildir2smtp(1), qmail-qmtpd(8)






































cat1/maildir2qmtp.0.html.html100644 0 0 2013 6244431501 14354 0ustar rootroot
maildir2smtp(1)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-qmtpd.0.html">qmail-qmtpd(8)</A></STRONG>




































cat1/maildir2qmtp.0.html.html.html100644 0 0 2364 6244431502 15331 0ustar rootroot
maildir2smtp(1)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;, &lt;STRONG&gt;&lt;A HREF="../cat8/qmail-qmtpd.0.html"&gt;<STRONG><A HREF="../cat8/qmail-qmtpd.0.html">qmail-qmtpd(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;







































cat1/maildir2qmtp.0.html.html.html.html100644      0      0        2477  6244431503  16302 0ustar  rootroot

       &amp;lt;EM&amp;gt;host&amp;lt;/EM&amp;gt; argument.

       &amp;lt;STRONG&amp;gt;maildir2qmtp&amp;lt;/STRONG&amp;gt; is faster than &amp;lt;STRONG&amp;gt;maildir2smtp&amp;lt;/STRONG&amp;gt;.


maildir2smtp(1)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;, &amp;lt;STRONG&amp;gt;&amp;lt;A HREF="../cat8/qmail-qmtpd.0.html"&amp;gt;&lt;STRONG&gt;&lt;A HREF="../cat8/qmail-qmtpd.0.html"&gt;<STRONG><A HREF="../cat8/qmail-qmtpd.0.html">qmail-qmtpd(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;







































cat1/maildir2smtp.0.html100644      0      0        5435  6244431505  13432 0ustar  rootroot

       maildir2smtp - blast a maildir across SMTP


SYNOPSIS

       maildir2smtp dir prefix targetip helohost


DESCRIPTION

       maildir2smtp removes messages from a maildir-format direc-
       tory, dir, and sends them to targetip via SMTP.   targetip
       must be a dotted-decimal IP address.

       maildir2smtp retrieves a message's envelope sender address
       and envelope recipient address from  the  Return-Path  and
       Delivered-To  lines  at the top of the message header.  It
       removes these lines before passing the message along.

       maildir2smtp removes prefix from  the  beginning  of  each
       envelope  recipient address.  It ignores any message whose
       recipient address does not begin with prefix.

       maildir2smtp is designed to pass messages along a SLIP  or
       PPP  link.  To set this up on the disconnected end, create
       a new maildir in ~alias:

          # maildirmake ~alias/pppdir
          # chown -R alias ~alias/pppdir

       Put

          :alias-ppp

       into control/virtualdomains and

          ./pppdir/

       into ~alias/.qmail-ppp-default.  Don't  forget  the  extra
       slash in pppdir/.  Then, in the PPP startup script, do

          maildir2smtp ~alias/pppdir alias-ppp- $IP `hostname`

       replacing  $IP with the remote IP address.  A similar pro-
       cedure works on the connected end: put

          virt.host:joe-ppp

       into    control/virtualdomains    and    ./pppdir/    into
       ~joe/.qmail-ppp-default; then joe can run

          maildir2smtp $HOME/pppdir joe-ppp- $IP `hostname`

       when he establishes a connection.

       maildir2smtp  is  reliable:  it  will not remove a message

       maildir2smtp uses helohost as the local host name for say-
       ing hello to the remote SMTP server.  helohost must  be  a
       fully-qualified domain name.

       maildir2smtp supports ESMTP PIPELINING.

       maildir2smtp  assumes that all sender and recipient domain
       names have already been canonicalized.


SEE ALSO

       maildir2qmtp(1), maildir(5), qmail-send(8)








































cat1/maildir2smtp.0.html.html100644 0 0 4720 6244431506 14372 0ustar rootroot



cat1/maildir2smtp.0.html.html.html100644      0      0        5214  6244431507  15335 0ustar  rootroot




cat1/maildir2smtp.0.html.html.html.html100644      0      0        5046  6244431510  16275 0ustar  rootroot

       must be a dotted-decimal IP address.

       &amp;lt;STRONG&amp;gt;maildir2smtp&amp;lt;/STRONG&amp;gt; retrieves a message's envelope sender address
       and envelope recipient address from  the  &amp;lt;STRONG&amp;gt;Return-Path&amp;lt;/STRONG&amp;gt;  and
       &amp;lt;STRONG&amp;gt;Delivered-To&amp;lt;/STRONG&amp;gt;  lines  at the top of the message header.  It
       removes these lines before passing the message along.

       &amp;lt;STRONG&amp;gt;maildir2smtp&amp;lt;/STRONG&amp;gt; removes &amp;lt;EM&amp;gt;prefix&amp;lt;/EM&amp;gt; from  the  beginning  of  each
       envelope  recipient address.  It ignores any message whose
       recipient address does not begin with &amp;lt;EM&amp;gt;prefix&amp;lt;/EM&amp;gt;.

       &amp;lt;STRONG&amp;gt;maildir2smtp&amp;lt;/STRONG&amp;gt; is designed to pass messages along a SLIP  or
       PPP  link.  To set this up on the disconnected end, create
       a new maildir in &amp;lt;STRONG&amp;gt;~alias&amp;lt;/STRONG&amp;gt;:

          # maildirmake ~alias/pppdir
          # chown -R alias ~alias/pppdir

       Put

          :alias-ppp

       into &amp;lt;STRONG&amp;gt;control/virtualdomains&amp;lt;/STRONG&amp;gt; and

          ./pppdir/

       into &amp;lt;STRONG&amp;gt;~alias/.qmail-ppp-default&amp;lt;/STRONG&amp;gt;.  Don't  forget  the  extra
       slash in &amp;lt;STRONG&amp;gt;pppdir/&amp;lt;/STRONG&amp;gt;.  Then, in the PPP startup script, do

          maildir2smtp ~alias/pppdir alias-ppp- $IP `hostname`

       replacing  $IP with the remote IP address.  A similar pro-
       cedure works on the connected end: put

          virt.host:joe-ppp

       into    &amp;lt;STRONG&amp;gt;control/virtualdomains&amp;lt;/STRONG&amp;gt;    and    &amp;lt;STRONG&amp;gt;./pppdir/&amp;lt;/STRONG&amp;gt;    into
       &amp;lt;STRONG&amp;gt;~joe/.qmail-ppp-default&amp;lt;/STRONG&amp;gt;; then &amp;lt;STRONG&amp;gt;joe&amp;lt;/STRONG&amp;gt; can run

          maildir2smtp $HOME/pppdir joe-ppp- $IP `hostname`

       when he establishes a connection.

       &amp;lt;STRONG&amp;gt;maildir2smtp&amp;lt;/STRONG&amp;gt;  is  reliable:  it  will not remove a message















cat1/maildirmake.0.html100644      0      0         726  6244431511  13255 0ustar  rootroot

       maildirmake - create a maildir for incoming mail


SYNOPSIS

       maildirmake dir


DESCRIPTION

       maildirmake makes a new directory, dir, in maildir format.


SEE ALSO

       maildir(5)










































cat1/maildirmake.0.html.html100644 0 0 1120 6244431512 14226 0ustar rootroot
maildir(5)</A></STRONG>








































cat1/maildirmake.0.html.html.html100644 0 0 1315 6244431513 15200 0ustar rootroot
maildir(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;











































cat1/maildirmake.0.html.html.html.html100644      0      0        1222  6244431514  16141 0ustar  rootroot


maildir(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;











































cat1/maildirwatch.0.html100644      0      0        1362  6244431515  13467 0ustar  rootroot

       maildirwatch - look for new mail in a maildir


SYNOPSIS

       maildirwatch


DESCRIPTION

       maildirwatch  watches your maildir for new mail.  You must
       supply a MAILDIR environment variable  with  the  name  of
       your maildir directory.

       maildirwatch  prints  a new mail summary twice per minute.
       It is designed to run inside a (VT100-compatible)  window;
       it clears the window before each summary.


SEE ALSO

       maildir(5)




































cat1/maildirwatch.0.html.html100644 0 0 1573 6244431516 14437 0ustar rootroot
maildir(5)</A></STRONG>


































cat1/maildirwatch.0.html.html.html100644 0 0 2060 6244431517 15373 0ustar rootroot
maildir(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;





































cat1/maildirwatch.0.html.html.html.html100644      0      0        1724  6244431520  16336 0ustar  rootroot

       your &amp;lt;EM&amp;gt;maildir&amp;lt;/EM&amp;gt; directory.

       &amp;lt;STRONG&amp;gt;maildirwatch&amp;lt;/STRONG&amp;gt;  prints  a new mail summary twice per minute.
       It is designed to run inside a (VT100-compatible)  window;
       it clears the window before each summary.


maildir(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;





































cat1/mailsubj.0.html100644      0      0        1704  6244431521  12622 0ustar  rootroot

       mailsubj - send a mail message with a subject line


SYNOPSIS

       mailsubj subject recip ...


DESCRIPTION

       mailsubj  inserts  subject  and  the list of recips into a
       mail message:

          Subject: subject
          To: recip ...

          body

       mailsubj reads the body of the message from  its  standard
       input.  Then it sends the message.

       Note  that  subject  and recip must be quoted properly for
       the message header.


SEE ALSO

       addresses(5), qmail-header(8), qmail-inject(8)






























cat1/mailsubj.0.html.html100644 0 0 2440 6244431522 13564 0ustar rootroot
addresses(5)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-header.0.html">qmail-header(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-inject.0.html">qmail-inject(8)</A></STRONG>




























cat1/mailsubj.0.html.html.html100644 0 0 3200 6244431523 14523 0ustar rootroot
addresses(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;, &lt;STRONG&gt;&lt;A HREF="../cat8/qmail-header.0.html"&gt;<STRONG><A HREF="../cat8/qmail-header.0.html">qmail-header(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;, &lt;STRONG&gt;&lt;A HREF="../cat8/qmail-inject.0.html"&gt;<STRONG><A HREF="../cat8/qmail-inject.0.html">qmail-inject(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;































cat1/mailsubj.0.html.html.html.html100644      0      0        3621  6244431524  15476 0ustar  rootroot


          Subject: subject
          To: recip ...

          body

       &amp;lt;STRONG&amp;gt;mailsubj&amp;lt;/STRONG&amp;gt; reads the body of the message from  its  standard
       input.  Then it sends the message.

       Note  that  &amp;lt;EM&amp;gt;subject&amp;lt;/EM&amp;gt;  and &amp;lt;EM&amp;gt;recip&amp;lt;/EM&amp;gt; must be quoted properly for
       the message header.


addresses(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;, &amp;lt;STRONG&amp;gt;&amp;lt;A HREF="../cat8/qmail-header.0.html"&amp;gt;&lt;STRONG&gt;&lt;A HREF="../cat8/qmail-header.0.html"&gt;<STRONG><A HREF="../cat8/qmail-header.0.html">qmail-header(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;, &amp;lt;STRONG&amp;gt;&amp;lt;A HREF="../cat8/qmail-inject.0.html"&amp;gt;&lt;STRONG&gt;&lt;A HREF="../cat8/qmail-inject.0.html"&gt;<STRONG><A HREF="../cat8/qmail-inject.0.html">qmail-inject(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;































cat1/preline.0.html100644      0      0        3045  6244431525  12456 0ustar  rootroot

       preline - prepend lines to message


SYNOPSIS

       in .qmailext: | preline command


DESCRIPTION

       preline  feeds each incoming mail message through command.
       At the top of each message it inserts a  UUCP-style  From_
       line, a Return-Path line, and a Delivered-To line.

       preline  is useful for procmail and ELM's filter, which do
       not understand the qmail-command environment variables.


OPTIONS

       -d     Do not include the Delivered-To  line.  You  should
              use  this option when the recipient of the incoming
              mail message is actually under remote control,  but
              was  sent  here  through control/virtualdomains for
              manual routing.

       -f     Do not include the From_ line. You should use  this
              option  except for commands that create mbox files.

       -r     Do not include the Return-Path line.


SEE ALSO

       mbox(5), qmail-command(8)

























cat1/preline.0.html.html100644 0 0 3746 6244431526 13432 0ustar rootroot
mbox(5)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-command.0.html">qmail-command(8)</A></STRONG>





















cat1/preline.0.html.html.html100644 0 0 4575 6244431530 14371 0ustar rootroot
mbox(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;, &lt;STRONG&gt;&lt;A HREF="../cat8/qmail-command.0.html"&gt;<STRONG><A HREF="../cat8/qmail-command.0.html">qmail-command(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;
























cat1/preline.0.html.html.html.html100644      0      0        5232  6244431531  15324 0ustar  rootroot

       line, a &amp;lt;STRONG&amp;gt;Return-Path&amp;lt;/STRONG&amp;gt; line, and a &amp;lt;STRONG&amp;gt;Delivered-To&amp;lt;/STRONG&amp;gt; line.

       &amp;lt;STRONG&amp;gt;preline&amp;lt;/STRONG&amp;gt;  is useful for &amp;lt;STRONG&amp;gt;procmail&amp;lt;/STRONG&amp;gt; and ELM's &amp;lt;STRONG&amp;gt;filter&amp;lt;/STRONG&amp;gt;, which do
       not understand the &amp;lt;STRONG&amp;gt;qmail-command&amp;lt;/STRONG&amp;gt; environment variables.


mbox(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;, &amp;lt;STRONG&amp;gt;&amp;lt;A HREF="../cat8/qmail-command.0.html"&amp;gt;&lt;STRONG&gt;&lt;A HREF="../cat8/qmail-command.0.html"&gt;<STRONG><A HREF="../cat8/qmail-command.0.html">qmail-command(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;&amp;lt;/A&amp;gt;&amp;lt;/STRONG&amp;gt;
























cat1/qbiff.0.html100644      0      0        1551  6244431532  12105 0ustar  rootroot

       qbiff - announce new mail the moment it arrives


SYNOPSIS

       in .qmail: |qbiff


DESCRIPTION

       qbiff  writes a message to your screen whenever a new mail
       message is delivered, if you ran biff y after logging  in.

       WARNING: If you create a .qmail file to enable qbiff, make
       sure to also add a line specifying delivery to your normal
       mailbox.  For example:

            /home/joe/Mailbox
            |qbiff


SEE ALSO

       biff(1), dot-qmail(5)


































cat1/qbiff.0.html.html100644 0 0 2125 6244431533 13047 0ustar rootroot
biff(1)</A></STRONG>, <STRONG><A HREF="../cat5/dot-qmail.0.html">dot-qmail(5)</A></STRONG>
































cat1/qbiff.0.html.html.html100644 0 0 2545 6244431534 14021 0ustar rootroot
biff(1)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;, &lt;STRONG&gt;&lt;A HREF="../cat5/dot-qmail.0.html"&gt;<STRONG><A HREF="../cat5/dot-qmail.0.html">dot-qmail(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;



































cat1/qlist.0.html100644      0      0        6040  6244431535  12153 0ustar  rootroot

       qlist - handle mailing list subscription requests


SYNOPSIS

       in .qmail-list-request:
       |qlist user-list@host user-list-request@host
       .qmail-list .qmail-list-request .qtemp-list
       owner [ moreinfo ]
       (all on one line)


DESCRIPTION

       qlist manages a qmail mailing list.

       When  qlist  receives a message, it looks through the body
       of the message for commands.  WARNING: qlist looks  for  a
       command only at the beginning of a line.  Exception: qlist
       also looks at Subject lines.

       qlist supports two commands.  SUBSCRIBE adds  a  new  sub-
       scription  to the mailing list; UNSUBSCRIBE removes a sub-
       scription.  qlist looks for the  subscription  address  in
       the  Reply-To, From, or Return-Path fields in the message.

       qlist inserts an acknowledgment of each  action  it  took,
       along  with  general  help instructions, into the message.
       It then forwards the message to the subscription  address,
       with a copy to owner.

       qlist's  general help instructions identify user-list@host
       as the address of the mailing list, user-list-request@host
       as  the  address of qlist itself, and owner as the address
       of the mailing list owner.  If moreinfo is supplied, it is
       inserted  into  the middle of the instructions, surrounded
       by blank lines.

       qlist maintains its address list in .qmail-list,  so  mail
       to  user-list  will  be  forwarded  to  each  subscription
       address.  While qlist is  editing  .qmail-list,  it  locks
       .qmail-list-request.   It  uses .qtemp-list as a temporary
       file.

       Note that qlist only manipulates lines beginning  with  an
       ampersand;  if  you  manually  add  an  address without an
       ampersand, it cannot be removed by qlist.

       qlist automatically sets the execute bit on qmail-list, so
       qmail-alias  will  ignore any program or file instructions
       in qmail-list.


SEE ALSO

       dot-qmail(5), envelopes(5), qmail-queue(8)


cat1/qlist.0.html.html100644 0 0 7611 6244431536 13124 0ustar rootroot
dot-qmail(5)</A></STRONG>, <STRONG><A HREF="../cat5/envelopes.0.html">envelopes(5)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-queue.0.html">qmail-queue(8)</A></STRONG>
cat1/qlist.0.html.html.html100644 0 0 11040 6244431537 14077 0ustar rootroot
       &lt;EM&gt;owner&lt;/EM&gt; [ &lt;EM&gt;moreinfo&lt;/EM&gt; ]
       (all on one line)


dot-qmail(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;, &lt;STRONG&gt;&lt;A HREF="../cat5/envelopes.0.html"&gt;<STRONG><A HREF="../cat5/envelopes.0.html">envelopes(5)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;, &lt;STRONG&gt;&lt;A HREF="../cat8/qmail-queue.0.html"&gt;<STRONG><A HREF="../cat8/qmail-queue.0.html">qmail-queue(8)</A></STRONG>&lt;/A&gt;&lt;/STRONG&gt;



cat1/qreceipt.0.html100644      0      0        1726  6244431540  12635 0ustar  rootroot

       qreceipt - respond to delivery notice requests


SYNOPSIS

       in .qmail: |qreceipt youraddress


DESCRIPTION

       When  a  mail message arrives with youraddress listed in a
       Notice-Requested-Upon-Delivery-To header  field,  qreceipt
       sends a success notice back to the envelope sender.

       WARNING:  If  you create a .qmail file to enable qreceipt,
       make sure to also add a line specifying delivery  to  your
       normal mailbox.  For example:

            /home/joe/Mailbox
            |qreceipt joe@nowhere.mil


SEE ALSO

       dot-qmail(5), envelopes(5)

































cat1/qreceipt.0.html.html100644 0 0 2324 6244431541 13574 0ustar rootroot
dot-qmail(5)</A></STRONG>, <STRONG><A HREF="../cat5/envelopes.0.html">envelopes(5)</A></STRONG>































cat1/tcp-env.0.html100644 0 0 3407 6244431542 12375 0ustar rootroot
       tcp-env - set up TCP-related environment variables


SYNOPSIS

       tcp-env [ -rR ] [ -ttimeout ] program [ arg ...  ]


DESCRIPTION

       The  input  for tcp-env must be a TCP connection.  tcp-env
       finds out information  about  that  connection,  puts  the
       information   into   several   environment   variables  as
       described in tcp-environ(5), and  runs  program  with  the
       given arguments.

       Usually  tcp-env  is  run from inetd.  It might instead be
       run from another server that already  sets  up  the  right
       environment variables; if PROTO is set to TCP when tcp-env
       is invoked, tcp-env assumes that all the  other  variables
       are  set  up  properly,  and it does not check whether the
       input is a TCP connection.


OPTIONS

       -r     (Default.)  Attempt to  obtain  TCPREMOTEINFO  from
              the remote host.

       -R     Do  not  attempt  to  obtain TCPREMOTEINFO from the
              remote host.

       -ttimeout
              Give up on  the  TCPREMOTEINFO  connection  attempt
              after timeout seconds.  Default: 30.


SEE ALSO

       tcp-environ(5), inetd(8)




















cat1/tcp-env.0.html.html100644 0 0 4411 6244431543 13335 0ustar rootroot
tcp-environ(5),</STRONG> and  runs  <EM>program</EM>  with  the
       given arguments.

       Usually  <STRONG>tcp-env</STRONG>  is  run from <STRONG>inetd</STRONG>.  It might instead be
       run from another server that already  sets  up  the  right
       environment variables; if <STRONG>PROTO</STRONG> is set to <STRONG>TCP</STRONG> when <STRONG>tcp-env</STRONG>
       is invoked, <STRONG>tcp-env</STRONG> assumes that all the  other  variables
       are  set  up  properly,  and it does not check whether the
       input is a TCP connection.


tcp-environ(5)</A></STRONG>, <STRONG><A HREF="../cat8/inetd.0.html">inetd(8)</A></STRONG>
















cat5/addresses.0.html100644 0 0 17240 6244431545 13025 0ustar rootroot
       addresses - formats for Internet mail addresses


INTRODUCTION

       A mail address is a string of characters containing @.

       Every  mail  address  has  a local part and a domain part.
       The domain part is everything  after  the  final  @.   The
       local part is everything before.

       For example, the mail addresses

          God@heaven.af.mil
          @heaven.af.mil
          @at@@heaven.af.mil

       all  have  domain part heaven.af.mil.  The local parts are
       God, empty, and @at@.

       Some domains have owners.   It  is  up  to  the  owner  of
       heaven.af.mil  to  say how mail messages will be delivered
       to addresses with domain part heaven.af.mil.

       The domain part  of  an  address  is  interpreted  without
       regard to case, so

          God@heaven.af.mil
          God@HEAVEN.AF.MIL
          God@Heaven.AF.Mil

       all refer to the same domain.

       There  is one exceptional address that does not contain an
       @: namely, the empty string.  The empty string  cannot  be
       used  as  a recipient address.  It can be used as a sender
       address so that the real sender doesn't receive bounces.


QMAIL EXTENSIONS

       The qmail system allows several further types of addresses
       in mail envelopes.

       First,  an  envelope  recipient  address  without  an @ is
       interpreted as being  at  envnoathost.   For  example,  if
       envnoathost  is  heaven.af.mil,  the  address  God will be
       rewritten as God@heaven.af.mil.

       Second, the address #@[] is used  as  an  envelope  sender
       address for double bounces.

       Third,  envelope sender addresses of the form pre@host-@[]
       are used to  support  the  owner  hack.   qmail-send  will
       rewrite  pre@host-@[] as prerecip=domain@host for deliver-
       ies to recip@domain.   Bounces  directly  from  qmail-send
       Here  are  some suggestions on choosing mail addresses for
       the Internet.

       Do not use non-ASCII characters.  Under RFC  822  and  RFC
       821, these characters cannot be used in mail headers or in
       SMTP commands.  In practice, they are regularly corrupted.

       Do  not  use  ASCII  control characters.  NUL is regularly
       corrupted.  CR and LF cannot be used in some  combinations
       and  are  corrupted  in all.  None of these characters are
       usable on business cards.

       Avoid spaces and the characters

          \"<>()[],;:

       These all require quoting in mail  headers  and  in  SMTP.
       Many  existing  mail  programs do not handle quoting prop-
       erly.

       Do not use @ in a local part.  @ requires quoting in  mail
       headers  and  in SMTP.  Many programs incorrectly look for
       the first @, rather than the last @, to  find  the  domain
       part of an address.

       In a local part, do not use two consecutive dots, a dot at
       the beginning, or a dot at the end.  Any  of  these  would
       require quoting in mail headers.

       Do  not  use an empty local part; it cannot appear in SMTP
       commands.

       Avoid local parts longer than 64 characters.

       Be wary of uppercase letters in local  parts.   Some  mail
       programs    (and    users!)   will   incorrectly   convert
       God@heaven.af.mil to god@heaven.af.mil.

       Be wary of the following characters:

          $&!#~`'^*|{}

       Some users will not know  how  to  feed  these  characters
       safely to their mail programs.

       In  domain names, stick to letters, digits, dash, and dot.
       One popular DNS resolver has, under the  banner  of  secu-
       rity,  recently begun destroying domain names that contain
       certain other characters,  including  underscore.   Excep-
       tion:  A  dotted-decimal  IP  address in brackets, such as
       [127.0.0.1], identifies a domain owned by whoever owns the
       host at that IP address, and can be used safely.
       at the beginning, or a dot at the end.  This  means  that,
       when  a  domain  name is broken down into components sepa-
       rated by dots, there are no empty components.

       Always use at least one dot in a domain name.  If you  own
       the  mil  domain, don't bother using the address root@mil;
       most users  will  be  unable  to  send  messages  to  that
       address.  Same for the root domain.

       Avoid domain names longer than 64 characters.


ENCODED ADDRESSES IN SMTP COMMANDS

       RFC  821  defines  an  encoding of mail addresses in SMTP.
       For example, the addresses

          God@heaven.af.mil
          a"quote@heaven.af.mil
          The Almighty.One@heaven.af.mil

       could be encoded in RCPT commands as

          RCPT TO:<God@heaven.af.mil>
          RCPT TO:<a\"quote@heaven.af.mil>
          RCPT TO:<The\ Almighty.One@heaven.af.mil>

       There are several restrictions in  RFC  821  on  the  mail
       addresses  that  can be used over SMTP.  Non-ASCII charac-
       ters are prohibited.  The local part must  not  be  empty.
       The  domain  part must be a sequence of elements separated
       by dots, where each  element  is  either  a  component,  a
       sequence  of  digits preceded by #, or a dotted-decimal IP
       address surrounded by brackets.  The only allowable  char-
       acters  in  components  are  letters,  digits, and dashes.
       Every component must (believe it or  not)  have  at  least
       three  characters;  the  first character must be a letter;
       the last character must not be a hyphen.


ENCODED ADDRESSES IN MAIL HEADERS

       RFC 822 defines an encoding of mail addresses  in  certain
       header  fields  in  a  mail  message.   For  example,  the
       addresses

          God@heaven.af.mil
          a"quote@heaven.af.mil
          The Almighty.One@heaven.af.mil

       could be encoded in a To field as

          To: God@heaven.af.mil,
            <@brl.mil:"a\"quote"@heaven.af.mil>,
              "The Almighty".One@heaven.af.mil

            "a\"quote" (Who?) @ heaven . af.  mil
            , God<"The Almighty.One"@heaven.af.mil>

       There are several restrictions on the mail addresses  that
       can  be used in these header fields.  Non-ASCII characters
       are prohibited.  The domain part must  be  a  sequence  of
       elements  separated by dots, where each element either (1)
       begins with [ and ends with ] or (2) is a nonempty  string
       of printable ASCII characters not including any of

          \".<>()[],;:

       and not including space.


SEE ALSO

       envelopes(5),   qmail-header(5),  qmail-inject(8),  qmail-
       remote(8), qmail-smtpd(8)



































cat5/addresses.0.html.html100644 0 0 17171 6244431546 13774 0ustar rootroot
envelopes(5)</A></STRONG>,   <STRONG><A HREF="../cat5/qmail-header.0.html">qmail-header(5)</A></STRONG>,  <STRONG><A HREF="../cat8/qmail-inject.0.html">qmail-inject(8)</A></STRONG>,  qmail-
       <STRONG><A HREF="../cat8/remote.0.html">remote(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-smtpd.0.html">qmail-smtpd(8)</A></STRONG>
























cat5/dot-qmail.0.html100644      0      0       24215  6244431547  12741 0ustar  rootroot

       dot-qmail - control the delivery of mail messages


DESCRIPTION

       Normally  the  qmail-alias  program delivers each incoming
       message to your  system  mailbox,  homedir/Mailbox,  where
       homedir is your home directory.

       It  can  instead  write  the  mail  to a different file or
       directory, forward it to another address, distribute it to
       a  mailing  list, or even execute programs, all under your
       control.


THE QMAIL FILE

       To change qmail-alias's behavior, set up a .qmail file  in
       your home directory.

       .qmail  contains one or more lines.  Each line is a deliv-
       ery instruction.  qmail-alias follows each instruction  in
       turn.   There are five types of delivery instructions: (1)
       comment; (2) program; (3) forward; (4) mbox; (5)  maildir.

       (1)  A comment line begins with a number sign:

                 # this is a comment

            qmail-alias ignores the line.

       (2)  A program line begins with a vertical bar:

                 |/usr/ucb/vacation djb

            qmail-alias  takes  the rest of the line as a command
            to supply to sh.  See  qmail-command(8)  for  further
            information.

       (3)  A forward line begins with an ampersand:

                 &me@new.job.com

            qmail-alias  takes  the  rest  of  the line as a mail
            address; it uses qmail-queue to forward  the  message
            to  that  address.   The address must contain a fully
            qualified domain name;  it  must  not  contain  extra
            spaces, angle brackets, or comments:

                 # the following examples are WRONG
                 &me@new
                 &<me@new.job.com>
                 & me@new.job.com
                 &me@new.job.com (New Address)

            If  the  address  begins with a letter or number, you

            Note that qmail-alias omits its new Return-Path  line
            when forwarding messages.

       (4)  An mbox line begins with a slash or dot, and does not
            end with a slash:

                 /home/djb/Mailbox.sos

            qmail-alias takes the entire line as a filename.   It
            appends  the  mail message to that file, using flock-
            style file locking if possible.   qmail-alias  stores
            the  mail  message  in  mbox  format, as described in
            mbox(5).

            WARNING: On many systems, anyone who can read a  file
            can flock it, and thus hold up qmail-alias's delivery
            forever.  Do not deliver mail to a publicly  accessi-
            ble file!

            If  qmail-alias  is  able  to  lock the file, but has
            trouble writing to it (because, for example, the disk
            is full), it will truncate the file back to its orig-
            inal length.  However, it cannot prevent mailbox cor-
            ruption if the system crashes during delivery.

       (5)  A  maildir  line begins with a slash or dot, and ends
            with a slash:

                 /home/djb/Maildir/

            qmail-alias takes the entire line as the  name  of  a
            directory  in maildir format.  It reliably stores the
            incoming message in that directory.   See  maildir(5)
            for more details.

       If .qmail has the execute bit set, it must not contain any
       program lines, mbox lines, or maildir  lines.   If  qmail-
       alias  sees  any  such  lines, it will stop and indicate a
       temporary failure.

       If .qmail is completely empty (0 bytes long), or does  not
       exist, qmail-alias appends the mail message to your system
       mailbox in mbox format.

       .qmail may contain extra spaces and tabs at the end  of  a
       line.  Blank lines are allowed, but not for the first line
       of .qmail.

       If .qmail is world-writable or group-writable, qmail-alias
       stops and indicates a temporary failure.

       Incoming  messages  can arrive at any moment.  If you want
       to safely edit your .qmail file, first set the sticky  bit
       on your home directory:

            chmod +t $HOME

       qmail-alias will temporarily defer delivery of any message
       to you if your home directory is sticky (or group-writable
       or  other-writable, which should never happen).  Make sure
       to

            chmod -t $HOME

       when you are done!  It's a good  idea  to  test  your  new
       .qmail file as follows:

            qmail-alias -n $USER $HOME $USER '' '' '' ''


EXTENSION ADDRESSES

       In  the  qmail  system, you control all local addresses of
       the form  user-anything,  as  well  as  the  address  user
       itself,  where  user  is  your  account name.  Delivery to
       user-anything   is   controlled   by   the   file    home-
       dir/.qmail-anything.   (These  rules may be changed by the
       system administrator; see qmail-users(5).)

       The alias user controls all other addresses.  Delivery  to
       local  is  controlled  by  the  file homedir/.qmail-local,
       where homedir is alias's home directory.

       In the following description, qmail-alias  is  handling  a
       message  addressed  to  local@domain,  where local is con-
       trolled by .qmail-ext.  Here is what it does.

       If .qmail-ext is completely empty, qmail-alias appends the
       mail message to your system mailbox.

       If  .qmail-ext  doesn't  exist,  qmail-alias will try some
       default .qmail files.  For example,  if  ext  is  foo-bar,
       qmail-alias  will  try  first .qmail-foo-bar, then .qmail-
       foo-default, and finally .qmail-default.  If none of these
       exist,  qmail-alias  will bounce the message.  (Exception:
       for the basic user address, qmail-alias treats a  nonexis-
       tent .qmail the same as an empty .qmail.)

       WARNING:  For  security,  qmail-alias replaces any dots in
       ext with colons before checking  .qmail-ext.   For  conve-
       nience,  qmail-alias converts any uppercase letters in ext
       to lowercase.

       When qmail-alias  forwards  a  message  as  instructed  in
       .qmail-ext   (or   .qmail-default),   it   checks  whether
       sage.  Otherwise it retains the  envelope  sender  of  the
       original  message.   Exception: qmail-alias always retains
       the original envelope sender if it is the empty address or
       #@[], i.e., if this is a bounce message.

       qmail-alias  also  supports the owner hack: if .qmail-ext-
       owner and .qmail-ext-owner-default  both  exist,  it  uses
       local-owner-  as  the  envelope sender.  This will cause a
       recipient recip@reciphost to see  an  envelope  sender  of
       local-owner-recip=reciphost@domain.


ERROR HANDLING

       If a delivery instruction fails, qmail-alias stops immedi-
       ately and reports failure.  qmail-alias handles forwarding
       after all other instructions, so any error in another type
       of delivery will prevent all forwarding.

       If a program returns exit code 99, qmail-alias ignores all
       succeeding lines in .qmail, but it still pays attention to
       previous forward lines.

       To set up independent instructions, where a  temporary  or
       permanent  failure  in one instruction does not affect the
       others, move each instruction into a  separate  .qmail-ext
       file,  and  set  up a central .qmail file that forwards to
       all of the .qmail-exts.  Note that qmail-alias can  handle
       any number of forward lines simultaneously.


SEE ALSO

       envelopes(5),  maildir(5), mbox(5), qmail-users(5), qmail-
       alias(8),   qmail-command(8),    qmail-queue(8),    qmail-
       lspawn(8)




















cat5/dot-qmail.0.html.html100644 0 0 22555 6244431551 13704 0ustar rootroot
qmail-command(8)</STRONG>  for  further
            information.

       (3)  A forward line begins with an ampersand:

                 &amp;me@new.job.com

            <STRONG>qmail-alias</STRONG>  takes  the  rest  of  the line as a mail
            address; it uses <STRONG>qmail-queue</STRONG> to forward  the  message
            to  that  address.   The address must contain a fully
            qualified domain name;  it  must  not  contain  extra
            spaces, angle brackets, or comments:

                 # the following examples are WRONG
                 &amp;me@new
                 &amp;&lt;me@new.job.com&gt;
                 &amp; me@new.job.com
                 &amp;me@new.job.com (New Address)

            If  the  address  begins with a letter or number, you

            <STRONG>WARNING:</STRONG> On many systems, anyone who can read a  file
            can <STRONG>flock</STRONG> it, and thus hold up <STRONG>qmail-alias</STRONG>'s delivery
            forever.  Do not deliver mail to a publicly  accessi-
            ble file!

            If  <STRONG>qmail-alias</STRONG>  is  able  to  lock the file, but has
            trouble writing to it (because, for example, the disk
            is full), it will truncate the file back to its orig-
            inal length.  However, it cannot prevent mailbox cor-
            ruption if the system crashes during delivery.

       (5)  A  <EM>maildir</EM>  line begins with a slash or dot, and ends
            with a slash:

                 /home/djb/Maildir/

            <STRONG>qmail-alias</STRONG> takes the entire line as the  name  of  a
            directory  in <EM>maildir</EM> format.  It reliably stores the
            incoming message in that directory.   See  <STRONG>maildir(5)</STRONG>
            for more details.

       If <STRONG>.qmail</STRONG> has the execute bit set, it must not contain any
       program lines, <EM>mbox</EM> lines, or <EM>maildir</EM>  lines.   If  <STRONG>qmail-</STRONG>
       <STRONG>alias</STRONG>  sees  any  such  lines, it will stop and indicate a
       temporary failure.

       If <STRONG>.qmail</STRONG> is completely empty (0 bytes long), or does  not
       exist, <STRONG>qmail-alias</STRONG> appends the mail message to your system
       mailbox in <EM>mbox</EM> format.

       <STRONG>.qmail</STRONG> may contain extra spaces and tabs at the end  of  a
       line.  Blank lines are allowed, but not for the first line
       of <STRONG>.qmail</STRONG>.

       If <STRONG>.qmail</STRONG> is world-writable or group-writable, <STRONG>qmail-alias</STRONG>
       stops and indicates a temporary failure.

       Incoming  messages  can arrive at any moment.  If you want
       to safely edit your <STRONG>.qmail</STRONG> file, first set the sticky  bit
       on your home directory:

            chmod +t $HOME

       <STRONG>qmail-alias</STRONG> will temporarily defer delivery of any message
       to you if your home directory is sticky (or group-writable
       or  other-writable, which should never happen).  Make sure
       to

            chmod -t $HOME

       when you are done!  It's a good  idea  to  test  your  new
       The <STRONG>alias</STRONG> user controls all other addresses.  Delivery  to
       <EM>local</EM>  is  controlled  by  the  file <EM>homedir/</EM><STRONG>.qmail-</STRONG><EM>local</EM>,
       where <EM>homedir</EM> is <STRONG>alias</STRONG>'s home directory.

       In the following description, <STRONG>qmail-alias</STRONG>  is  handling  a
       message  addressed  to  <EM>local@domain</EM>,  where <EM>local</EM> is con-
       trolled by <STRONG>.qmail-</STRONG><EM>ext</EM>.  Here is what it does.

       If <STRONG>.qmail-</STRONG><EM>ext</EM> is completely empty, <STRONG>qmail-alias</STRONG> appends the
       mail message to your system mailbox.

       If  <STRONG>.qmail-</STRONG><EM>ext</EM>  doesn't  exist,  <STRONG>qmail-alias</STRONG> will try some
       default <STRONG>.qmail</STRONG> files.  For example,  if  <EM>ext</EM>  is  <STRONG>foo-bar</STRONG>,
       <STRONG>qmail-alias</STRONG>  will  try  first <STRONG>.qmail-foo-bar</STRONG>, then <STRONG>.qmail-</STRONG>
       <STRONG>foo-default</STRONG>, and finally <STRONG>.qmail-default</STRONG>.  If none of these
       exist,  <STRONG>qmail-alias</STRONG>  will bounce the message.  (Exception:
       for the basic <EM>user</EM> address, <STRONG>qmail-alias</STRONG> treats a  nonexis-
       tent <STRONG>.qmail</STRONG> the same as an empty <STRONG>.qmail</STRONG>.)

       <STRONG>WARNING:</STRONG>  For  security,  <STRONG>qmail-alias</STRONG> replaces any dots in
       <EM>ext</EM> with colons before checking  <STRONG>.qmail-</STRONG><EM>ext</EM>.   For  conve-
       nience,  <STRONG>qmail-alias</STRONG> converts any uppercase letters in <EM>ext</EM>
       to lowercase.

       When <STRONG>qmail-alias</STRONG>  forwards  a  message  as  instructed  in
       <STRONG>.qmail-</STRONG><EM>ext</EM>   (or   <STRONG>.qmail-default</STRONG>),   it   checks  whether
       sage.  Otherwise it retains the  envelope  sender  of  the
       original  message.   Exception: <STRONG>qmail-alias</STRONG> always retains
       the original envelope sender if it is the empty address or
       <STRONG>#@[]</STRONG>, i.e., if this is a bounce message.

       <STRONG>qmail-alias</STRONG>  also  supports the <STRONG>owner</STRONG> <STRONG>hack</STRONG>: if <STRONG>.qmail-</STRONG><EM>ext</EM><STRONG>-</STRONG>
       <STRONG>owner</STRONG> and <STRONG>.qmail-</STRONG><EM>ext</EM><STRONG>-owner-default</STRONG>  both  exist,  it  uses
       <EM>local</EM><STRONG>-owner-</STRONG>  as  the  envelope sender.  This will cause a
       recipient <EM>recip</EM><STRONG>@</STRONG><EM>reciphost</EM> to see  an  envelope  sender  of
       <EM>local</EM><STRONG>-owner-</STRONG><EM>recip</EM><STRONG>=</STRONG><EM>reciphost</EM><STRONG>@</STRONG><EM>domain</EM>.





cat5/envelopes.0.html100644      0      0       13665  6244431552  13055 0ustar  rootroot

       envelopes - sender/recipient lists attached to messages


INTRODUCTION

       Electronic mail messages are delivered in envelopes.

       An  envelope  lists  a  sender and one or more recipients.
       Usually these envelope  addresses  are  the  same  as  the
       addresses listed in the message header:

          (envelope) from djb to root
          From: djb
          To: root

       In  more  complicated  situations,  though,  the  envelope
       addresses may differ from the header addresses.


ENVELOPE EXAMPLES

       When a message is delivered to several people at different
       locations, it is first photocopied and placed into several
       envelopes:

          (envelope) from djb to root
          From: djb                          Copy #1 of message
          To: root, god@brl.mil

          (envelope) from djb to god@brl.mil
          From: djb                          Copy #2 of message
          To: root, god@brl.mil

       When a message is delivered to several people at the  same
       location, the sender doesn't have to photocopy it.  He can
       instead stuff it into one envelope with several addresses;
       the recipients will make the photocopy:

          (envelope) from djb to god@brl.mil, angel@brl.mil
          From: djb
          To: god@brl.mil, angel@brl.mil, joe, frde

       Bounced  mail is sent back to the envelope sender address.
       The bounced mail  doesn't  list  an  envelope  sender,  so
       bounce loops are impossible:

          (envelope) from <> to djb
          From: MAILER-DAEMON
          To: djb
          Subject: unknown user frde

       The  recipient of a message may make another copy and for-
       ward it in a new envelope:

          (envelope) from djb to joe
          From: djb                          Original message
          From: djb                          Forwarded message
          To: joe

       A mailing list works almost the same way:

          (envelope) from djb to sos-list
          From: djb                          Original message
          To: sos-list

          (envelope) from sos-owner to god@brl.mil
          From: djb                          Forwarded message
          To: sos-list                       to recipient #1

          (envelope) from sos-owner to frde
          From: djb                          Forwarded message
          To: sos-list                       to recipient #2

       Notice that the mailing list is  set  up  to  replace  the
       envelope sender with something new, sos-owner.  So bounces
       will come back to sos-owner:

          (envelope) from <> to sos-owner
          From: MAILER-DAEMON
          To: sos-owner
          Subject: unknown user frde

       It's a good idea to set up an  extra  address,  sos-owner,
       like  this:  the original envelope sender (djb) has no way
       to fix bad sos-list addresses, and of course bounces  must
       not be sent to sos-list itself.


HOW ENVELOPE ADDRESSES ARE STORED

       Envelope  sender  and  envelope  recipient  addresses  are
       transmitted and recorded in several ways.

       When a user injects mail through qmail-inject, he can sup-
       ply  a  Return-Path  line  or a -f option for the envelope
       sender; by default the envelope sender is his login  name.
       The  envelope  recipient  addresses  can be taken from the
       command line or from various header fields,  depending  on
       the  options  to  qmail-inject.  Similar comments apply to
       sendmail.

       When a message is transferred from one machine to  another
       through  SMTP, the envelope sender is given in a MAIL FROM
       command, the envelope recipients are given in RCPT TO com-
       mands,  and  the  message is supplied separately by a DATA
       command.

       When a message is delivered by qmail  to  a  single  local
       recipient, qmail-alias records the recipient in Delivered-
       To and the envelope sender in Return-Path.  It uses Deliv-
       Path.  It does not record envelope recipient addresses, on
       the theory that they are redundant: you received the mail,
       so you must have been one of the envelope recipients.

       Note that,  if  the  header  doesn't  have  any  recipient
       addresses, sendmail will move envelope recipient addresses
       back into  the  header.   This  situation  occurs  if  all
       addresses  were  originally  listed  as  Bcc, since Bcc is
       automatically removed.  When sendmail sees this,  it  cre-
       ates  a  new  Apparently-To header field with the envelope
       recipient addresses.  This has  the  strange  effect  that
       each  blind-carbon-copy  recipient  will see a list of all
       recipients on the same machine.

       When a message is stored  in  mbox  format,  the  envelope
       sender  is  recorded  at the top of the message as a UUCP-
       style From (no colon) line.  Note that this line  is  less
       reliable than the Return-Path line added by qmail-alias or
       sendmail.


SEE ALSO

       qmail-header(5), qmail-alias(8), qmail-inject(8)






























cat5/envelopes.0.html.html100644 0 0 12304 6244431553 14006 0ustar rootroot



cat5/maildir.0.html100644      0      0       14736  6244431555  12501 0ustar  rootroot

       maildir - directory for incoming mail messages


INTRODUCTION

       maildir  is  a  structure for directories of incoming mail
       messages.  It solves the reliability problems that  plague
       mbox files and mh folders.


RELIABILITY ISSUES

       A machine may crash while it is delivering a message.  For
       both mbox files and mh folders this means that the message
       will  be silently truncated.  Even worse: for mbox format,
       if the message is truncated in the middle of  a  line,  it
       will  be  silently  joined  to the next message.  The mail
       transport agent will try again later to deliver  the  mes-
       sage,  but  it  is  unacceptable  that a corrupted message
       should show up at all.  In maildir, every message is guar-
       anteed complete upon delivery.

       A  machine may have two programs simultaneously delivering
       mail to the same user.  The mbox and  mh  formats  require
       the programs to update a single central file.  If the pro-
       grams do not use some locking mechanism, the central  file
       will  be corrupted.  There are several mbox and mh locking
       mechanisms, none of which work portably and reliably.   In
       contrast,  in  maildir, no locks are ever necessary.  Dif-
       ferent delivery processes never touch the same file.

       A user may try to delete messages from his mailbox at  the
       same  moment that the machine delivers a new message.  For
       mbox and mh formats, the user's mail-reading program  must
       know  what  locking  mechanism  the mail-delivery programs
       use.  In contrast, in maildir, any delivered  message  can
       be safely updated or deleted by a mail-reading program.

       Many sites use Sun's Network Failure System (NFS), presum-
       ably because the operating system vendor  does  not  offer
       anything else.  NFS exacerbates all of the above problems.
       Some NFS implementations don't provide any reliable  lock-
       ing  mechanism.  With mbox and mh formats, if two machines
       deliver mail to the same user, or if  a  user  reads  mail
       anywhere  except  the delivery machine, the user's mail is
       at risk.  maildir works without trouble over NFS.


THE MAILDIR STRUCTURE

       A directory in maildir format  has  three  subdirectories,
       all on the same filesystem: tmp, new, and cur.

       Each  file  in new is a newly delivered mail message.  The
       modification time of the file is the delivery date of  the
       message.   The message is delivered without an extra UUCP-
       style From_ line, without any >From quoting,  and  without
       an  extra  blank line at the end.  The message is probably

       Files  in cur are just like files in new.  The big differ-
       ence is that files in cur are no  longer  new  mail:  they
       have been seen by the user's mail-reading program.


HOW A MESSAGE IS DELIVERED

       The  tmp directory is used to ensure reliable delivery, as
       discussed here.

       A program delivers a mail message in six steps.  First, it
       chdir()s to the maildir directory.  Second, it stat()s the
       name tmp/time.pid.host, where time is the number  of  sec-
       onds since the beginning of 1970 GMT, pid is the program's
       process ID, and host is the host name.  Third,  if  stat()
       returned  anything  other  than ENOENT, the program sleeps
       for two seconds, updates time, and tries the stat() again,
       a  limited  number  of times.  Fourth, the program creates
       tmp/time.pid.host.  Fifth, the program NFS-writes the mes-
       sage  to the file.  Sixth, the program link()s the file to
       new/time.pid.host.  At that instant the message  has  been
       successfully delivered.

       The  delivery program is required to start a 24-hour timer
       before creating tmp/time.pid.host, and to abort the deliv-
       ery  if the timer expires.  Upon error, timeout, or normal
       completion, the delivery program may attempt  to  unlink()
       tmp/time.pid.host.

       NFS-writing  means  (1)  as  usual, checking the number of
       bytes returned from each write() call; (2) calling fsync()
       and  checking  its  return  value; (3) calling close() and
       checking its return value.  (Standard NFS  implementations
       handle  fsync()  incorrectly but make up for it by abusing
       close().)


HOW A MESSAGE IS READ

       A mail reader operates as follows.

       It looks through the new directory for new messages.   Say
       there is a new message, new/time.pid.host.  The reader may
       freely display the contents of  new/time.pid.host,  delete
       new/time.pid.host,    or   rename   new/time.pid.host   as
       cur/time.pid.host:info.  The meaning of info is up to  the
       mail reader.

       The reader is also expected to look through the tmp direc-
       tory and to clean up any old files found there.  A file in
       tmp  may  be safely removed if it has not been accessed in
       36 hours.


ENVIRONMENT VARIABLES

       Mail readers supporting maildir use the  MAILDIR  environ-


SEE ALSO

       mbox(5), qmail-alias(8)

















































cat5/maildir.0.html.html100644 0 0 15643 6244431556 13443 0ustar rootroot
mbox(5)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-alias.0.html">qmail-alias(8)</A></STRONG>






































cat5/mbox.0.html100644      0      0       14447  6244431557  12026 0ustar  rootroot

       mbox - file containing mail messages


INTRODUCTION

       The  most  common  format  for storage of mail messages is
       mbox format.  An mbox is a single file containing zero  or
       more mail messages.


MESSAGE FORMAT

       A message encoded in mbox format begins with a From_ line,
       continues with a series of non-From_ lines, and ends  with
       a  blank  line.   A  From_ line means any line that begins
       with the characters F, r, o, m, space:

            From god@heaven.af.mil Sat Jan  3 01:05:34 1996
            Return-Path: <god@heaven.af.mil>
            Delivered-To: djb@silverton.berkeley.edu
            Date: 3 Jan 1996 01:05:34 -0000
            From: God <god@heaven.af.mil>
            To: djb@silverton.berkeley.edu (D. J. Bernstein)

            How's that mail system project coming along?


       The final line is a completely blank line  (no  spaces  or
       tabs).   Notice that blank lines may also appear elsewhere
       in the message.

       The From_ line always looks like From envsender date more-
       info.   envsender  is one word, without spaces or tabs; it
       is usually the envelope sender of the  message.   date  is
       the  delivery  date  of  the  message.  It always contains
       exactly 24 characters  in  asctime  format.   moreinfo  is
       optional; it may contain arbitrary information.

       Between  the From_ line and the blank line is a message in
       RFC 822 format, as described in  qmail-header(5),  subject
       to >From quoting as described below.


HOW A MESSAGE IS DELIVERED

       Here is how a program appends a message to an mbox file.

       It first creates a From_ line given the message's envelope
       sender and the current date.  If the  envelope  sender  is
       empty  (i.e.,  if  this  is a bounce message), the program
       uses MAILER-DAEMON instead.  If the envelope  sender  con-
       tains spaces, tabs, or newlines, the program replaces them
       with hyphens.

       The program then copies the message, applying >From  quot-
       ing  to each line.  >From quoting ensures that the result-
       ing lines are not From_ lines: the program prepends a > to
       any  From_ line, >From_ line, >>From_ line, >>>From_ line,
       If  the  last  line  of the message was a partial line, it
       writes two newlines; otherwise it writes one.


HOW A MESSAGE IS READ

       A reader scans through an  mbox  file  looking  for  From_
       lines.   Any  From_ line marks the beginning of a message.
       The reader should not attempt to  take  advantage  of  the
       fact  that  every  From_  line  (past the beginning of the
       file) is preceded by a blank line.

       Once the reader finds a message, it extracts  a  (possibly
       corrupted)  envelope  sender  and delivery date out of the
       From_ line.  It then reads until the next  From_  line  or
       end  of  file,  whichever  comes first.  It strips off the
       final blank line and deletes the quoting of  >From_  lines
       and  >>From_  lines  and  so on.  The result is an RFC 822
       message.


COMMON MBOX VARIANTS

       There are many  variants  of  mbox  format.   The  variant
       described  above  is  mboxrd  format, popularized by Rahul
       Dhesi in June 1995.

       The original mboxo format quotes  only  From_  lines,  not
       >From_  lines.   As  a  result  it  is  impossible to tell
       whether

            From: djb@silverton.berkeley.edu (D. J. Bernstein)
            To: god@heaven.af.mil

            >From now through August I'll be doing beta  testing.
            Thanks for your interest.

       was quoted in the original message.  An mboxrd reader will
       always strip off the quoting.

       mboxcl format is like mboxo format, but  includes  a  Con-
       tent-Length field with the number of bytes in the message.
       mboxcl2 format is like mboxcl but has  no  >From  quoting.
       These formats are used by SVR4 mailers.  mboxcl2 cannot be
       read safely by mboxrd readers.


UNSPECIFIED DETAILS

       There are many locking mechanisms for mbox files.   qmail-
       alias always uses flock on systems that have it, otherwise
       lockf.

       The delivery date in a From_ line does not specify a  time
       zone.  qmail-alias always creates the delivery date in GMT
       so that mbox files can be safely transported from one time
       zone to another.

       than  the atime, the new mail has been read.  If the atime
       equals the mtime, there is no way to tell whether the file
       has  new  mail,  since  qmail-alias takes much less than a
       second to run.  One solution is for a mail reader to arti-
       ficially set the atime to the mtime plus 1.  Then the file
       has new mail if and only if the  atime  is  less  than  or
       equal to the mtime.

       Some  mail  readers place Status fields in each message to
       indicate which messages have been read.


SEE ALSO

       maildir(5), qmail-header(5), qmail-alias(8)







































cat5/mbox.0.html.html100644 0 0 13655 6244431560 12763 0ustar rootroot
qmail-header(5)</STRONG>,  subject
       to <STRONG>&gt;From</STRONG> <STRONG>quoting</STRONG> as described below.





cat5/qmail-control.0.html100644      0      0        6452  6244431561  13612 0ustar  rootroot

       qmail-control - qmail configuration files


INTRODUCTION

       You can change the behavior of the qmail system by modify-
       ing qmail's control files.

       qmail can survive with just one control file, me, contain-
       ing  the  fully-qualified  name of the current host.  This
       file is used as the  default  for  other  hostname-related
       control files.

       Blank lines and comments are not allowed in control files.
       Trailing spaces and tabs are allowed.

       The following table lists all control files other than me.
       See the corresponding man pages for further details.

              control             default            used by

              bouncefrom          MAILER-DAEMON      qmail-send
              bouncehost          me                 qmail-send
              concurrencylocal    10                 qmail-send
              concurrencyremote   20                 qmail-send
              defaultdomain       me                 qmail-inject
              defaulthost         me                 qmail-inject
              doublebouncehost    me                 qmail-send
              doublebounceto      postmaster         qmail-send
              envnoathost         me                 qmail-send
              helohost            me                 qmail-remote
              idhost              me                 qmail-inject
              localiphost         me                 qmail-smtpd
              locals              me                 qmail-send
              percenthack         (none)             qmail-send
              plusdomain          me                 qmail-inject
              queuelifetime       604800             qmail-send
              rcpthosts           (none)             qmail-smtpd
              smtpgreeting        me                 qmail-smtpd
              smtproutes          (none)             qmail-remote
              timeoutconnect      60                 qmail-remote
              timeoutremote       1200               qmail-remote
              timeoutsmtpd        1200               qmail-smtpd
              virtualdomains      (none)             qmail-send


HOW TO FIND THE CONTROL FILES

       All qmail operations take place in qmail's home directory.
       Run qmail-home to see the  name  of  the  home  directory.
       Control files are stored in the control subdirectory.


SEE ALSO

       qmail-inject(8),  qmail-remote(8),  qmail-send(8),  qmail-
       showctl(8), qmail-smtpd(8)

cat5/qmail-control.0.html.html100644 0 0 7643 6244431562 14561 0ustar rootroot
qmail-inject(8)</A></STRONG>,  <STRONG><A HREF="../cat8/qmail-remote.0.html">qmail-remote(8)</A></STRONG>,  <STRONG><A HREF="../cat8/qmail-send.0.html">qmail-send(8)</A></STRONG>,  qmail-
cat5/qmail-header.0.html100644 0 0 17522 6244431564 13405 0ustar rootroot
       qmail-header - format of a mail message


OVERVIEW

       At  the  top  of every mail message is a highly structured
       header.  Many programs expect the header to carry  certain
       information,  as  described  below.   The main function of
       qmail-inject is to make sure that  each  outgoing  message
       has an appropriate header.

       For more detailed information, see RFC 822 and RFC 1123.


MESSAGE STRUCTURE

       A  message  contains  a  series  of header fields, a blank
       line, and a body:

            Received: (qmail-queue invoked by uid 666);
                 30 Jul 1996 11:54:54 -0000
            From: djb@silverton.berkeley.edu (D. J. Bernstein)
            To: fred@silverton.berkeley.edu
            Date: 30 Jul 1996 11:54:54 -0000
            Subject: Go, Bears!

            I've got money on this one.  How about you?

            ---Dan   (this is the third line of the body)

       Each header field has a name, a colon, some contents,  and
       a newline:

            Subject: Go, Bears!

       The  field  contents  may  be folded across several lines.
       Each line past the first must begin with a space or tab:

            Received: (qmail-queue invoked by uid 666);
                 30 Jul 1996 11:54:54 -0000

       The field name must not contain spaces, tabs,  or  colons.
       Also,  an  empty field name is illegal.  qmail-inject does
       not allow field names with unprintable characters.

       Case is irrelevant in field names: subject and SUBJECT and
       SuBjEcT have the same meaning.


ADDRESS LISTS

       Certain fields, such as To, contain address lists.

       An  address  list  contains  some  number  of addresses or
       address groups, separated by commas:

            a@b, c@d (Somebody), A Person <e@f>,
               random group: g@h, i@j;, k@l

       addresses, and a semicolon:

               random group: g@h, i@j;

       An  address  can appear in several forms.  The most common
       form is box@host.

       Every address must include a host name.   If  qmail-inject
       sees a lone box name it adds the default host name.

       All  host  names  should be fully qualified.  qmail-inject
       appends the default domain name to any name without dots:

            djb@silverton  ->  djb@silverton.berkeley.edu

       It appends the plus domain name to any name that ends with
       a plus sign:

            eric@mammoth.cs+  ->  eric@mammoth.cs.berkeley.edu

       A host name may be a dotted-decimal address:

            djb@[128.32.183.163]

       RFC  822  allows  mailbox  names  inside angle brackets to
       include source routes, but qmail-inject strips all  source
       routes out of addresses.


SENDER ADDRESSES

       qmail-inject looks for sender address lists in the follow-
       ing fields: Sender, From, Reply-To,  Return-Path,  Return-
       Receipt-To, Errors-To, Resent-Sender, Resent-From, Resent-
       Reply-To.

       If there is no From field, qmail-inject adds  a  new  From
       field with the name of the user invoking qmail-inject.

       RFC 822 requires that certain sender fields contain only a
       single address, but qmail-inject  does  not  enforce  this
       restriction.


RECIPIENT ADDRESSES

       qmail-inject looks for recipient address lists in the fol-
       lowing fields:  To,  Cc,  Bcc,  Apparently-To,  Resent-To,
       Resent-Cc, Resent-Bcc.

       Every  message  must contain at least one To or Cc or Bcc.
       qmail-inject deletes any Bcc field.  If there is no To  or
       Cc field, qmail-inject adds a line

            Cc: recipient list not shown: ;

       through sendmail on another machine.


STAMPS

       Every  message must contain a Date field, with the date in
       a strict format defined by RFC 822.  If  necessary  qmail-
       inject  creates a new Date field with the current date (in
       GMT).

       Every message should  contain  a  Message-Id  field.   The
       field  contents are a unique worldwide identifier for this
       message.  If necessary qmail-inject creates a new Message-
       Id field.

       Another  important field is Received.  Every time the mes-
       sage is sent from one system to another,  a  new  Received
       field  is  added  to the top of the message.  qmail-inject
       does not create any Received fields.


RESENT MESSAGES

       A message is forwarded if it contains any of the following
       fields:   Resent-Sender,   Resent-From,   Resent-Reply-To,
       Resent-To, Resent-Cc, Resent-Bcc, Resent-Date, Resent-Mes-
       sage-ID.

       If a message is forwarded, qmail-inject changes its behav-
       ior as follows.

       It deletes any  Resent-Bcc  field  (as  well  as  any  Bcc
       field);  if  there  are  no Resent-To or Resent-Cc fields,
       qmail-inject adds an appropriate Resent-Cc line.  It  does
       not add a Cc line, even if neither To nor Cc is present.

       If  there is no Resent-From field, qmail-inject adds a new
       Resent-From field.  It does not add a new From field.

       qmail-inject adds Resent-Date if one is not  already  pre-
       sent;  same  for  Resent-Message-Id.   It does not add new
       Date or Message-Id fields.


OTHER FEATURES

       For compatibility with sendmail, if  qmail-inject  sees  a
       line  containing  (the  beginning  of)  a  Message or Text
       field, it will consider all further lines to  be  part  of
       the message body.

       Addresses  are  separated  by  commas,  not  spaces.  When
       qmail-inject sees an illegal space, it inserts a comma:

            djb fred  ->  djb, fred

       qmail-inject removes all Return-Path header fields.

       addresses(5), envelopes(5), qmail-inject(8)



















































cat5/qmail-header.0.html.html100644 0 0 20235 6244431565 14344 0ustar rootroot
addresses(5)</A></STRONG>, <STRONG><A HREF="../cat5/envelopes.0.html">envelopes(5)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-inject.0.html">qmail-inject(8)</A></STRONG>








































cat5/qmail-log.0.html100644      0      0       25010  6244431567  12730 0ustar  rootroot

       qmail-log - the qmail activity record


DESCRIPTION

       qmail-send prints a series of lines describing its activi-
       ties.  Each possible line is described below.


STARTING AND STOPPING

       running
              qmail-send is ready to deliver messages.

       local deliveries will be put on hold
              The local concurrency limit  is  0,  so  qmail-send
              will not perform any local deliveries.

       remote deliveries will be put on hold
              The  remote  concurrency  limit is 0, so qmail-send
              will not perform any remote deliveries.

       number of deliveries left before exiting: ...
              qmail-send wants to exit as soon as possible,  usu-
              ally  because it was sent a TERM signal, but it has
              to wait for some deliveries to finish.  It will not
              start any new deliveries.

       exiting
              qmail-send is done.


FATAL PROBLEMS

       alert: cannot start: ...
              qmail-send is unable to prepare itself for deliver-
              ing messages; it is giving up.  This normally indi-
              cates  a serious configuration error, but it can be
              caused by a temporary lack of resources.

       alert: oh no! lost ...
              One of the other daemons has died.  qmail-send will
              exit as soon as possible.


SERIOUS PROBLEMS

       alert: unable to append to bounce message...
              qmail-send is unable to record a permanent failure,
              usually because the disk is full.  This is  a  very
              serious  problem; qmail-send cannot proceed without
              recording the results.  It will try  again  in  ten
              seconds.

       alert: out of memory...
              qmail-send   tried  to  allocate  more  memory  and
              failed.  It will try again in ten seconds.

       alert: unable to opendir...
              qmail-send is having trouble reading  a  file  list
              missions are set incorrectly.  It will try again in
              ten seconds.


MESSAGES

       new msg m
              qmail-send is going to preprocess a queued message.
              The  message  number,  m, is its disk inode number.
              After a message is removed from the queue, its num-
              ber can be reused immediately.

       info msg m: bytes b from <s> qp q uid u
              Message  m contains b bytes; its envelope sender is
              s; it was queued by a user with user ID u.  q is  a
              long-term  queue  identifier, the process ID of the
              qmail-queue that queued the message.

       bounce msg m qp q
              Message m had some delivery  failures.   The  long-
              term  queue  identifier  of  the bounce (or double-
              bounce) message is q.

       triple bounce: discarding ...
              Message m had some delivery  failures,  but  it  is
              already  a  double-bounce  message,  so  it must be
              thrown away.  Triple-bounce messages do not  exist.

       end msg m
              qmail-send  is  about  to remove message m from the
              queue.


DELIVERIES

       starting delivery d: msg m to ...
              qmail-send is telling qmail-lspawn or  qmail-rspawn
              to  deliver message m to one recipient.  The deliv-
              ery number, d, starts at 1 and increases by  1  for
              each new delivery.

       delivery d: success: ...
              Delivery d was successful.

       delivery d: failure: ...
              Delivery  d  failed  permanently.  The message will
              bounce.

       delivery d: deferral: ...
              Delivery d failed temporarily.  This recipient will
              be retried later.

       delivery d: report mangled, will defer
              There  is  a  serious bug in qmail-lspawn or qmail-
              rspawn.  This recipient will be retried later.

       internal error: delivery report out of range
              qmail-lspawn or qmail-rspawn has supplied a  report
              on  a nonexistent delivery.  This is a serious bug.

       qmail-clean unable to clean up ...
              For some reason qmail-clean is unable to remove the
              indicated file.  It will try again later.

       trouble fsyncing ...
              qmail-send  was unable to write to disk the results
              of preprocessing a queued  message.   It  will  try
              again later.

       trouble in select
              There is an operating system bug.

       trouble injecting bounce message...
              qmail-send  was  unable  to queue a bounce message,
              usually because the disk  is  full.   It  will  try
              again later.

       trouble marking ...
              qmail-send  was  unable  to  record the result of a
              successful or  permanently  unsuccessful  delivery.
              This  means  that  the delivery will be tried again
              later.

       trouble opening ...
              qmail-send was unable to open the list of local  or
              remote recipients for a message.  It will try again
              later.

       trouble reading ...
              Either qmail-send is unable  to  read  a  recipient
              list,  or  it  is  unable to read the envelope of a
              queued message, or it is out of  memory.   Whatever
              it was doing, it will try again later.

       trouble writing to ...
              qmail-send  was  unable to preprocess a queued mes-
              sage, usually because the disk is  full.   It  will
              try again later.

       unable to create ...
              qmail-send  was  unable to preprocess a queued mes-
              sage, usually because the disk is  out  of  inodes.
              It will try again later.

       unable to open ...
              qmail-send  is  unable  to  read  the envelope of a
              queued message  for  preprocessing.   It  will  try
              again later.
              qmail-send  is  unable  to  queue a bounce message,
              usually because the machine is almost out  of  mem-
              ory.  It will try again later.

       unable to stat ...
              qmail-send  is unable to obtain information about a
              file that should exist.  It will try again later.

       unable to unlink ...
              qmail-send is unable to remove a file.  It will try
              again later.

       unable to utime ...
              qmail-send  is  about  to exit, and it is unable to
              record on disk the next scheduled delivery time for
              a  message.  The message will be retried as soon as
              qmail-send is restarted.

       unknown record type in ...
              There is a serious bug  in  either  qmail-queue  or
              qmail-send.


SEE ALSO

       qmail-send(8)




























cat5/qmail-log.0.html.html100644 0 0 26626 6244431570 13703 0ustar rootroot



cat5/qmail-users.0.html100644      0      0        5616  6244431571  13275 0ustar  rootroot

       qmail-users - assign mail addresses to users


OVERVIEW

       The  file  /var/qmail/users/assign  assigns  addresses  to
       users. For example,

          =joe.shmoe:joe:503:78:/home/joe:::

       says that mail for joe.shmoe should be delivered  to  user
       joe,   with   uid   503   and  gid  78,  as  specified  by
       /home/joe/.qmail.

       Assignments fed to qmail-newuser will be  used  by  qmail-
       lspawn  to  control  qmail-alias's deliveries.  See qmail-
       newuser(8).  A change to /var/qmail/users/assign will have
       no effect until qmail-newuser is run.


STRUCTURE

       /var/qmail/users/assign  is  a  series of assignments, one
       per line.  It ends with a line containing  a  single  dot.
       Lines must not contain NUL.


SIMPLE ASSIGNMENTS

       A simple assignment is a line of the form

          =local:user:uid:gid:homedir:dash:ext:

       Here  local  is  an  address;  user,  uid, and gid are the
       account name, uid, and gid of the user in charge of local;
       and   messages  to  local  will  be  controlled  by  home-
       dir/.qmaildashext.

       If there  are  several  assignments  for  the  same  local
       address, qmail-lspawn will use the first one.

       local is interpreted without regard to case.


WILDCARD ASSIGNMENTS

       A wildcard assignment is a line of the form

          +loc:user:uid:gid:homedir:dash:pre:

       This assignment applies to any address beginning with loc,
       including loc itself.  It means the same as

          =locext:user:uid:gid:homedir:dash:preext:

       for every string ext.

       A more specific wildcard assignment overrides a less  spe-
       cific  assignment,  and  a simple assignment overrides any
       wildcard assignment.  For example:
          +joe-:joe:507:100:/home/joe:-::
          =joe:joe:507:100:/home/joe:::

       The address joe is handled by the third line; the  address
       joe-direct is handled by the second line; the address bill
       is handled by the first line.


SEE ALSO

       qmail-pw2user(8), qmail-newuser(8), qmail-lspawn(8)











































cat5/qmail-users.0.html.html100644 0 0 6121 6244431573 14232 0ustar rootroot
newuser(8)</A></STRONG>.  A change to <STRONG>/var/qmail/users/assign</STRONG> will have
       no effect until <STRONG>qmail-newuser</STRONG> is run.


qmail-pw2user(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-newuser.0.html">qmail-newuser(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-lspawn.0.html">qmail-lspawn(8)</A></STRONG>














































cat5/tcp-environ.0.html100644      0      0        3730  6244431574  13275 0ustar  rootroot

       tcp-environ - TCP-related environment variables


DESCRIPTION

       The following environment variables describe a TCP connec-
       tion.   They  are  set  up  by  tcp-env,  tcpclient,   and
       tcpserver.   Note  that  TCPLOCALHOST,  TCPREMOTEHOST, and
       TCPREMOTEINFO can contain arbitrary characters.

       PROTO
            The string TCP.

       TCPLOCALHOST
            The domain name of the  local  host,  with  uppercase
            letters  converted to lowercase.  If there is no cur-
            rently  available  domain  name  for  the  local   IP
            address, TCPLOCALHOST is not set.

       TCPLOCALIP
            The  IP  address of the local host, in dotted-decimal
            form.

       TCPLOCALPORT
            The local TCP port number, in decimal.

       TCPREMOTEHOST
            The domain name of the remote  host,  with  uppercase
            letters  converted to lowercase.  If there is no cur-
            rently  available  domain  name  for  the  remote  IP
            address, TCPREMOTEHOST is not set.

       TCPREMOTEINFO
            A  connection-specific  string,  perhaps  a username,
            supplied by the remote host  via  931/1413/IDENT/TAP.
            If the remote host did not supply connection informa-
            tion, TCPREMOTEINFO is not set.

       TCPREMOTEIP
            The IP address of the remote host.

       TCPREMOTEPORT
            The remote TCP port number.


SEE ALSO

       tcpclient(1), tcpserver(1), tcp-env(1), tcp(4)








cat5/tcp-environ.0.html.html100644 0 0 4551 6244431575 14243 0ustar rootroot
tcpclient(1)</A></STRONG>, <STRONG><A HREF="../cat1/tcpserver.0.html">tcpserver(1)</A></STRONG>, <STRONG><A HREF="../cat1/tcp-env.0.html">tcp-env(1)</A></STRONG>, <STRONG><A HREF="../cat4/tcp.0.html">tcp(4)</A></STRONG>








cat7/forgeries.0.html100644 0 0 7460 6244431576 13026 0ustar rootroot
       forgeries - how easy it is to forge mail


SUMMARY

       An  electronic  mail message can easily be forged.  Almost
       everything in it, including the return  address,  is  com-
       pletely under the control of the sender.

       An  electronic  mail message can be manually traced to its
       origin if (1) all system  administrators  of  intermediate
       machines  are  both  cooperative  and  competent,  (2) the
       sender did not break low-level TCP/IP  security,  and  (3)
       all intermediate machines are secure.

       Users   of   cryptography  can  automatically  ensure  the
       integrity and secrecy of their mail messages, as  long  as
       the sending and receiving machines are secure.


FORGERIES

       Like  postal mail, electronic mail can be created entirely
       at the whim of the sender.  From, Sender, Return-Path, and
       Message-ID can all contain whatever information the sender
       wants.

       For example, if you inject a message through  sendmail  or
       qmail-inject or SMTP, you can simply type in a From field.
       In fact, qmail-inject lets you set up MAILUSER,  MAILHOST,
       and MAILNAME environment variables to produce your desired
       From field on every message.


TRACING FORGERIES

       Like postal mail, electronic mail is postmarked when it is
       sent.   Each machine that receives an electronic mail mes-
       sage adds a Received line to the top.

       A modern Received line contains quite a  bit  of  informa-
       tion.   In  conjunction with the machine's logs, it lets a
       competent system administrator determine where the machine
       received  the  message from, as long as the sender did not
       break  low-level  TCP/IP  security  or  security  on  that
       machine.

       Large  multi-user machines often come with inadequate log-
       ging software.  Fortunately, a  system  administrator  can
       easily  obtain a copy of a 931/1413/Ident/TAP server, such
       as pidentd.  Unfortunately, many incompetent system admin-
       istrators  fail  to do this, and are thus unable to figure
       out which local user was responsible for generating a mes-
       sage.

       If  all  intermediate system administrators are competent,
       and the sender did not break machine security or low-level
       TCP/IP  security,  it is possible to trace a message back-
       or untrustworthy.


CRYPTOGRAPHY

       The sender of a mail message may place his message into  a
       cryptographic  envelope  stamped  with  his  seal.  Strong
       cryptography guarantees that any  two  messages  with  the
       same seal were sent by the same cryptographic entity: per-
       haps a single person, perhaps a group of cooperating  peo-
       ple,  but  in  any case somebody who knows a secret origi-
       nally held only by the creator of the seal.  The  seal  is
       called a public key.

       Unfortunately,  the  creator of the seal is often an inse-
       cure machine, or an untrustworthy central agency, but most
       of the time seals are kept secure.

       One popular cryptographic program is pgp.


SEE ALSO

       pgp(1), identd(8), qmail-header(8)
































cat7/forgeries.0.html.html100644 0 0 7236 6244431577 13773 0ustar rootroot
pgp(1)</A></STRONG>, <STRONG><A HREF="../cat8/identd.0.html">identd(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-header.0.html">qmail-header(8)</A></STRONG>



































cat7/qmail-limits.0.html100644      0      0        2376  6244431600  13430 0ustar  rootroot

       qmail-limits - artificial limits in the qmail system


DESCRIPTION

       The  qmail  system is able to handle messages of any size,
       addresses of any size, mailing lists of any size,  and  so
       on,  except  as  limited  by the available memory and disk
       space.

       However, it imposes certain artificial limits:

       1.   qmail-lspawn silently limits the number of simultane-
            ous  local  deliveries to 120.  qmail-rspawn silently
            limits the number of simultaneous  remote  deliveries
            to 120.

       2.   qmail-queue  rejects  any  message  with  an envelope
            address longer than 1000 characters.

       3.   qmail-lspawn truncates any overly long  error  report
            from  a  delivery  program.  It appends a note saying
            that it did so.


SEE ALSO

       qmail-lspawn(8), qmail-queue(8), qmail-rspawn(8)




























cat7/qmail-limits.0.html.html100644 0 0 3016 6244431601 14364 0ustar rootroot
qmail-lspawn(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-queue.0.html">qmail-queue(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-rspawn.0.html">qmail-rspawn(8)</A></STRONG>




























cat7/qmail-upgrade.0.html100644 0 0 14431 6244431602 13573 0ustar rootroot
       qmail-upgrade - user-visible differences between qmail and
       sendmail


INTRODUCTION

       You will notice some differences when the system  switches
       from sendmail to qmail.

       1.   qmail-alias  sends  incoming  mail to ~you/Mailbox by
            default, not /usr/spool/mail/you.  Your system admin-
            istrator  has  changed your MAIL environment variable
            so that your  mail  reader  looks  for  ~you/Mailbox.
            (/usr/spool/mail is a massive security problem.)

       2.   qmail-alias  pays no attention to .forward.  It has a
            much better mechanism, .qmail, so that you can handle
            not  only forwarding but even your own mailing lists.
            See below for more details.

       3.   qmail-alias pays no attention to /etc/aliases.   Your
            system  administrator  can  use  the .qmail mechanism
            instead.  See below.

       4.   qmail does not support the \you mechanism for  ignor-
            ing aliases.  The .qmail mechanism is much more flex-
            ible; see below.

       5.   qmail-inject has a  completely  different  philosophy
            from  sendmail  on  interpreting  non-fully-qualified
            host names.  It uses  fixed  rules,  not  DNS.   Some
            examples at UIC:

                 russet -> russet.math.uic.edu
                 newton -> newton.math.uic.edu
                 ut.ee  -> ut.ee  (a host in Estonia)
                 ut.ee+ -> ut.ee.uic.edu
                 uicvm+ -> uicvm.uic.edu

            Here the default domain name (for hosts without dots)
            is math.uic.edu, and the plus domain name is uic.edu.

       6.   Unlike  sendmail,  qmail-inject  doesn't replace host
            names with canonical  names.   Example:  qmail-inject
            won't  change  postmaster@ftp.cs.berkeley.edu in your
            header  to  postmaster@kohler.cs.berkeley.edu.    The
            sendmail  documentation  claims  that  qmail-inject's
            behavior is illegal under RFC 822 and RFC 1123;  that
            claim is based on a questionable interpretation of an
            ambiguous phrase in RFC 822.  Besides, do you want to
            have hostnames changed behind your back?

       7.   qmail-alias  adds  a  new field, Delivered-To, before
            every delivery.  It uses the contents of Delivered-To
            qmail-inject will add Cc: recipient list not shown:;,
            rather than sendmail's privacy-invading Apparently-To
            header field.


QMAIL MAILING LISTS

       sendmail deals with aliases, forwarding, and mailing lists
       at the very heart of the mail system.

       qmail  takes a radically different approach.  It gives you
       the power to set up your own mailing lists without pester-
       ing your system administrator.

       Under  qmail,  you  are  in charge of all addresses of the
       form you-anything.  The delivery of you-anything  is  con-
       trolled  by  ~you/.qmail-anything,  a  file  in  your home
       directory.

       For example, if you want  to  set  up  a  sick-of-sendmail
       mailing  list,  you  can  put  a  list  of  addresses into
       ~you/.qmail-sos.  Any mail to you-sos will be forwarded to
       all  of  those  addresses.   Mail  directly to you is con-
       trolled by ~you/.qmail.  You can even set up a  catch-all,
       ~you/.qmail-default, to handle unknown you- addresses.

       Your .qmail files, like your old .forward, may list files,
       forwarding addresses, or  other  programs  to  run.   (But
       beware  that  the  syntax  is  a  bit  different; see dot-
       qmail(8) for  more  details.)   qmail-alias  automatically
       detects  forwarding  loops the instant they occur, even if
       they happen indirectly through other hosts.

       As a helpful special case, if a .qmail file is  empty,  it
       refers   to  ~you/Mailbox.   For  example,  if  you  touch
       ~you/.qmail-direct, mail for you-direct will act like \you
       did under sendmail.

       Addresses that don't contain a username are handled by the
       alias user.  For example, your  system  administrator  has
       set  up  ~alias/.qmail-postmaster to handle mail for Post-
       master.  (Note to administrators: ~alias doesn't apply  to
       addresses that start with a user name, with certain excep-
       tions.)


SEE ALSO

       addresses(5), dot-qmail(5), envelopes(5), qmail-header(8),
       qmail-inject(8)






cat7/qmail-upgrade.0.html.html100644 0 0 16317 6244431604 14545 0ustar rootroot
qmail(8)</STRONG> for  more  details.)   <STRONG>qmail-alias</STRONG>  automatically
       detects  forwarding  loops the instant they occur, even if
       they happen indirectly through other hosts.

       As a helpful special case, if a <STRONG>.qmail</STRONG> file is  empty,  it
       refers   to  <STRONG>~</STRONG><EM>you</EM><STRONG>/Mailbox</STRONG>.   For  example,  if  you  touch
       <STRONG>~</STRONG><EM>you</EM><STRONG>/.qmail-direct</STRONG>, mail for <EM>you</EM><STRONG>-direct</STRONG> will act like <STRONG>\</STRONG><EM>you</EM>
       did under <STRONG>sendmail</STRONG>.

       Addresses that don't contain a username are handled by the
       <STRONG>alias</STRONG> user.  For example, your  system  administrator  has
       set  up  <STRONG>~alias/.qmail-postmaster</STRONG> to handle mail for <STRONG>Post-</STRONG>
       <STRONG>master</STRONG>.  (Note to administrators: <STRONG>~alias</STRONG> doesn't apply  to
       addresses that start with a user name, with certain excep-
       tions.)


addresses(5)</A></STRONG>, <STRONG><A HREF="../cat5/dot-qmail.0.html">dot-qmail(5)</A></STRONG>, <STRONG><A HREF="../cat5/envelopes.0.html">envelopes(5)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-header.0.html">qmail-header(8)</A></STRONG>,
       <STRONG><A HREF="../cat8/qmail-inject.0.html">qmail-inject(8)</A></STRONG>









cat7/qmail.0.html100644      0      0        6031  6244431605  12126 0ustar  rootroot

       qmail - overview of qmail documentation


INTRODUCTION

       qmail  is  a  secure,  reliable, efficient, simple message
       transfer agent.

       Users who want to control incoming  messages  should  read
       dot-qmail(5).   Available  commands  for  the  .qmail file
       include qbiff(1), qlist(1), qreceipt(1),  forward(1),  and
       (for  advanced users) condredirect(1).  Other helpful com-
       mands     include     maildirmake(1),     maildir2mbox(1),
       maildir2qmtp(1), maildir2smtp(1), and maildirwatch(1).

       System administrators who want to control the entire qmail
       system  should  start  with  qmail-control(5)  and  qmail-
       start(8).   There are three queue-monitoring tools: qmail-
       qread(8), qmail-qstat(8),  and  qmail-tcpto(8).   Incoming
       SMTP connections are handled by qmail-smtpd(8).

       qmail  offers two command-line message-sending interfaces:
       qmail-inject(8) and mailsubj(1).  For background  informa-
       tion   on   Internet   mail  messages,  see  addresses(5),
       envelopes(5), qmail-header(5), and forgeries(7).

       Miscellaneous  documentation  includes   qmail-upgrade(7),
       qmail-limits(7), and qmail-pop3d(8).

       This  documentation  describes version 0.92 of qmail.  See
       http://pobox.com/~djb/qmail.html for  other  qmail-related
       software.






















cat7/qmail.0.html.html100644 0 0 12247 6244431606 13120 0ustar rootroot
dot-qmail(5)</A></STRONG>.   Available  commands  for  the  <STRONG>.qmail</STRONG> file
       include <STRONG><A HREF="../cat1/qbiff.0.html">qbiff(1)</A></STRONG>, <STRONG><A HREF="../cat1/qlist.0.html">qlist(1)</A></STRONG>, <STRONG><A HREF="../cat1/qreceipt.0.html">qreceipt(1)</A></STRONG>,  <STRONG><A HREF="../cat1/forward.0.html">forward(1)</A></STRONG>,  and
       (for  advanced users) <STRONG><A HREF="../cat1/condredirect.0.html">condredirect(1)</A></STRONG>.  Other helpful com-
       mands     include     <STRONG><A HREF="../cat1/maildirmake.0.html">maildirmake(1)</A></STRONG>,     <STRONG><A HREF="../cat1/maildir2mbox.0.html">maildir2mbox(1)</A></STRONG>,
       <STRONG><A HREF="../cat1/maildir2qmtp.0.html">maildir2qmtp(1)</A></STRONG>, <STRONG><A HREF="../cat1/maildir2smtp.0.html">maildir2smtp(1)</A></STRONG>, and <STRONG><A HREF="../cat1/maildirwatch.0.html">maildirwatch(1)</A></STRONG>.

       System administrators who want to control the entire <STRONG>qmail</STRONG>
       system  should  start  with  <STRONG><A HREF="../cat5/qmail-control.0.html">qmail-control(5)</A></STRONG>  and  <STRONG>qmail-</STRONG>
       <STRONG><A HREF="../cat8/start.0.html">start(8)</A></STRONG>.   There are three queue-monitoring tools: <STRONG>qmail-</STRONG>
       <STRONG><A HREF="../cat8/qread.0.html">qread(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-qstat.0.html">qmail-qstat(8)</A></STRONG>,  and  <STRONG><A HREF="../cat8/qmail-tcpto.0.html">qmail-tcpto(8)</A></STRONG>.   Incoming
       SMTP connections are handled by <STRONG><A HREF="../cat8/qmail-smtpd.0.html">qmail-smtpd(8)</A></STRONG>.

       <STRONG>qmail</STRONG>  offers two command-line message-sending interfaces:
       <STRONG><A HREF="../cat8/qmail-inject.0.html">qmail-inject(8)</A></STRONG> and <STRONG><A HREF="../cat1/mailsubj.0.html">mailsubj(1)</A></STRONG>.  For background  informa-
       tion   on   Internet   mail  messages,  see  <STRONG><A HREF="../cat5/addresses.0.html">addresses(5)</A></STRONG>,
       <STRONG><A HREF="../cat5/envelopes.0.html">envelopes(5)</A></STRONG>, <STRONG><A HREF="../cat5/qmail-header.0.html">qmail-header(5)</A></STRONG>, and <STRONG><A HREF="../cat7/forgeries.0.html">forgeries(7)</A></STRONG>.

       Miscellaneous  documentation  includes   <STRONG><A HREF="../cat7/qmail-upgrade.0.html">qmail-upgrade(7)</A></STRONG>,
       <STRONG><A HREF="../cat7/qmail-limits.0.html">qmail-limits(7)</A></STRONG>, and <STRONG><A HREF="../cat8/qmail-pop3d.0.html">qmail-pop3d(8)</A></STRONG>.

       This  documentation  describes version 0.92 of <STRONG>qmail</STRONG>.  See
       <STRONG>http://pobox.com/~djb/qmail.html</STRONG> for  other  <STRONG>qmail</STRONG>-related
       software.

























cat8/qmail-alias.0.html100644      0      0        5267  6244431607  13232 0ustar  rootroot

       qmail-alias - deliver or forward a mail message


SYNOPSIS

       qmail-alias  [  -nN  ]  user homedir local dash ext domain
       sender


DESCRIPTION

       qmail-alias reads a mail message and delivers it  to  user
       by the procedure described in dot-qmail(5).

       The  message's envelope recipient is local@domain.  qmail-
       alias records local@domain in a  new  Delivered-To  header
       field.   If  exactly  the  same Delivered-To: local@domain
       already appears in the  header,  qmail-alias  bounces  the
       message, to prevent mail forwarding loops.

       The  message's  envelope  sender  is  sender.  qmail-alias
       records sender in a new Return-Path header field.

       homedir is the user's home directory.  It must be an abso-
       lute directory name.

       dash  and  ext  identify  the  .qmaildashext  file used by
       qmail-alias; see dot-qmail(5).  Normally  dash  is  either
       empty  or  a  lone  hyphen.   If  it is empty, qmail-alias
       treats a nonexistent .qmailext the same way  as  an  empty
       .qmailext.

       The  standard  input  for  qmail-alias  must be a seekable
       file, so that qmail-alias can read it more than once.


OPTIONS

       -n     Instead of  reading  and  delivering  the  message,
              print a description of the delivery instructions.

       -N     (Default.) Read and deliver the message.


EXIT CODES

       0 if the delivery is completely successful; nonzero if any
       delivery instruction failed.  Exit code 111 indicates tem-
       porary failure.


SEE ALSO

       dot-qmail(5),   envelopes(5),   qmail-command(8),   qmail-
       queue(8), qmail-send(8), qmail-lspawn(8)







cat8/qmail-alias.0.html.html100644 0 0 7410 6244431611 14160 0ustar rootroot
dot-qmail(5)</STRONG>.

       The  message's envelope recipient is <EM>local@domain</EM>.  <STRONG>qmail-</STRONG>
       <STRONG>alias</STRONG> records <EM>local@domain</EM> in a  new  <STRONG>Delivered-To</STRONG>  header
       field.   If  exactly  the  same <STRONG>Delivered-To:</STRONG> <EM>local@domain</EM>
       already appears in the  header,  <STRONG>qmail-alias</STRONG>  bounces  the
       message, to prevent mail forwarding loops.

       The  message's  envelope  sender  is  <EM>sender</EM>.  <STRONG>qmail-alias</STRONG>
       records <EM>sender</EM> in a new <STRONG>Return-Path</STRONG> header field.

       <EM>homedir</EM> is the user's home directory.  It must be an abso-
       lute directory name.

       <EM>dash</EM>  and  <EM>ext</EM>  identify  the  <STRONG>.qmail</STRONG><EM>dashext</EM>  file used by
       <STRONG>qmail-alias</STRONG>; see <STRONG>dot-qmail(5)</STRONG>.  Normally  <EM>dash</EM>  is  either
       empty  or  a  lone  hyphen.   If  it is empty, <STRONG>qmail-alias</STRONG>
       treats a nonexistent <STRONG>.qmail</STRONG><EM>ext</EM> the same way  as  an  empty
       <STRONG>.qmail</STRONG><EM>ext</EM>.

       The  standard  input  for  <STRONG>qmail-alias</STRONG>  must be a seekable
       file, so that <STRONG>qmail-alias</STRONG> can read it more than once.


dot-qmail(5)</A></STRONG>,   <STRONG><A HREF="../cat5/envelopes.0.html">envelopes(5)</A></STRONG>,   <STRONG><A HREF="../cat8/qmail-command.0.html">qmail-command(8)</A></STRONG>,   qmail-
       <STRONG><A HREF="../cat8/queue.0.html">queue(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-send.0.html">qmail-send(8)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-lspawn.0.html">qmail-lspawn(8)</A></STRONG>

cat8/qmail-clean.0.html100644 0 0 1003 6244431612 13177 0ustar rootroot
       qmail-clean - clean up the queue directory


SYNOPSIS

       qmail-clean


DESCRIPTION

       qmail-clean  reads  a  cleanup  command from descriptor 0,
       performs the cleanup, prints the results to descriptor  1,
       and repeats.


SEE ALSO

       qmail-send(8)








































cat8/qmail-clean.0.html.html100644 0 0 1142 6244431613 14147 0ustar rootroot
qmail-send(8)</A></STRONG>






































cat8/qmail-command.0.html100644 0 0 6434 6244431614 13552 0ustar rootroot
       qmail-command - user-specified mail delivery program


SYNOPSIS

       in .qmailext: |command


DESCRIPTION

       qmail-alias  will,  upon  your request, feed each incoming
       mail message through a program of your choice.

       When a mail message arrives, qmail-alias runs sh  -c  com-
       mand  in your home directory.  It makes the message avail-
       able on command's standard input.

       WARNING: The mail  message  does  not  begin  with  qmail-
       alias's usual Return-Path and Delivered-To lines.

       Note  that  qmail-alias  uses the same file descriptor for
       every delivery in your .qmail file, so it is not safe  for
       command  to  fork  a  child  that reads the message in the
       background while the parent exits.

       command's exit codes are interpreted as follows:  0  means
       that the delivery was successful; 99 means that the deliv-
       ery was successful, but that qmail-alias should ignore all
       further  delivery  instructions;  71,  74, 75, 111, or 120
       means that the delivery failed but should be  tried  again
       in  a  little while; anything else means that the delivery
       failed permanently.

       qmail-alias supplies several useful environment  variables
       to  command.   SENDER  is  the  envelope  sender  address.
       NEWSENDER is the forwarding envelope  sender  address,  as
       described  in  dot-qmail(5).   RECIPIENT  is  the envelope
       recipient address, local@domain.  USER is user.   HOME  is
       your  home directory, homedir.  HOST is the domain part of
       the recipient address.  LOCAL is the local part.   EXT  is
       the  .qmail  extension,  ext.   EXT2 is the portion of EXT
       following the first dash; EXT3 is  the  portion  following
       the  second  dash; EXT4 is the portion following the third
       dash.  DTLINE and RPLINE are the  usual  Delivered-To  and
       Return-Path  lines,  including  newlines.   UFLINE  is the
       UUCP-style From_ line that qmail-alias adds to mbox-format
       files.

       WARNING: These environment variables are not quoted.  They
       may contain special characters.  They are under  the  con-
       trol of a possibly malicious remote user.


SEE ALSO

       dot-qmail(5), envelopes(5), qmail-alias(8)


cat8/qmail-command.0.html.html100644 0 0 10242 6244431615 14526 0ustar rootroot
dot-qmail(5)</STRONG>.   <STRONG>RECIPIENT</STRONG>  is  the envelope
       recipient address, <EM>local@domain</EM>.  <STRONG>USER</STRONG> is <EM>user</EM>.   <STRONG>HOME</STRONG>  is
       your  home directory, <EM>homedir</EM>.  <STRONG>HOST</STRONG> is the <EM>domain</EM> part of
       the recipient address.  <STRONG>LOCAL</STRONG> is the <EM>local</EM> part.   <STRONG>EXT</STRONG>  is
       the  <STRONG>.qmail</STRONG>  extension,  <EM>ext</EM>.   <STRONG>EXT2</STRONG> is the portion of <STRONG>EXT</STRONG>
       following the first dash; <STRONG>EXT3</STRONG> is  the  portion  following
       the  second  dash; <STRONG>EXT4</STRONG> is the portion following the third
       dash.  <STRONG>DTLINE</STRONG> and <STRONG>RPLINE</STRONG> are the  usual  <STRONG>Delivered-To</STRONG>  and
       <STRONG>Return-Path</STRONG>  lines,  including  newlines.   <STRONG>UFLINE</STRONG>  is the
       UUCP-style <STRONG>From_</STRONG> line that <STRONG>qmail-alias</STRONG> adds to <EM>mbox</EM>-format
       files.

       <STRONG>WARNING:</STRONG> These environment variables are not quoted.  They
       may contain special characters.  They are under  the  con-
       trol of a possibly malicious remote user.


dot-qmail(5)</A></STRONG>, <STRONG><A HREF="../cat5/envelopes.0.html">envelopes(5)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-alias.0.html">qmail-alias(8)</A></STRONG>
cat8/qmail-getpw.0.html100644 0 0 5265 6244431616 13265 0ustar rootroot
       qmail-getpw - give addresses to users


SYNOPSIS

       qmail-getpw local


DESCRIPTION

       In  qmail,  each  user  controls  a  vast  array  of local
       addresses.  qmail-getpw finds the  user  that  controls  a
       particular address, local.  It prints six pieces of infor-
       mation, each terminated by NUL: user; uid;  gid;  homedir;
       dash;  and  ext.   The  user's  account  name is user; the
       user's uid and gid in decimal are uid and gid; the  user's
       home  directory  is homedir; and messages to local will be
       handled by homedir/.qmaildashext.

       In case of  trouble,  qmail-getpw  exits  nonzero  without
       printing anything.

       WARNING:  The  operating system's getpwnam function, which
       is at the heart of qmail-getpw, is inherently  unreliable.


RULES

       qmail-getpw  considers  an  account in /etc/passwd to be a
       user if (1)  the  account  has  a  nonzero  uid,  (2)  the
       account's  home directory exists, and (3) the account owns
       its home directory.   qmail-getpw  ignores  account  names
       containing uppercase letters or - characters.

       qmail-getpw  gives  each  user control over the basic user
       address and all addresses of the form user-anything.  When
       local is user, dash and ext are both empty.  When local is
       user-anything, dash is a hyphen and ext is anything.  user
       may  appear  in any combination of uppercase and lowercase
       letters at the front of local.

       A catch-all user, alias, controls all other addresses.  In
       this case ext is local and dash is a hyphen.

       You  can  override all of qmail-getpw's decisions with the
       qmail-users mechanism, which is reliable,  highly  config-
       urable, and much faster than qmail-getpw.


SEE ALSO

       qmail-users(5), qmail-lspawn(8)








cat8/qmail-getpw.0.html.html100644 0 0 6725 6244431617 14233 0ustar rootroot
qmail-users(5)</A></STRONG>, <STRONG><A HREF="../cat8/qmail-lspawn.0.html">qmail-lspawn(8)</A></STRONG>




cat8/qmail-inject.0.html100644 0 0 16546 6244431621 13433 0ustar rootroot
       qmail-inject - preprocess and send a mail message


SYNOPSIS

       qmail-inject [ -nNaAhH ] [ -fsender ] [ recip ...  ]


DESCRIPTION

       qmail-inject reads a mail message from its standard input,
       adds appropriate information to the  message  header,  and
       invokes  qmail-queue  to  send  the message to one or more
       recipients.

       See qmail-header(5) for information  on  how  qmail-inject
       rewrites header fields.

       qmail-inject  normally  exits  0.   It  exits  1 if it was
       invoked improperly or if there is a severe syntax error in
       the message.  It exits 111 for temporary errors.


ENVIRONMENT VARIABLES

       For  the  convenience of users who do not run qmail-inject
       directly, qmail-inject takes many options through environ-
       ment variables.

       The  user  name  in  the  From  header  field  is  set  by
       QMAILUSER, MAILUSER, USER,  or  LOGNAME,  whichever  comes
       first.

       The  host  name is normally set by the defaulthost control
       but can be overridden with QMAILHOST or MAILHOST.

       The personal name is QMAILNAME, MAILNAME, or NAME.

       The envelope sender address is normally the  same  as  the
       address in the From header field, but it can be overridden
       with QMAILSUSER and QMAILSHOST.  It may also  be  modified
       by  the  r and m letters described below.  Bounces will be
       sent to this address.

       The QMAILINJECT environment variable can  contain  any  of
       the following letters:

       c      Use address-comment style for the From field.  Nor-
              mally qmail-inject uses name-address style.

       s      Do not look  at  any  incoming  Return-Path  field.
              Normally,  if  Return-Path is supplied, it sets the
              envelope sender address, overriding all environment
              variables.  Return-Path is deleted in any case.

       f      Delete  any incoming From field.  Normally, if From
              is supplied, it overrides the usual From field cre-
              ated by qmail-inject.
              Message-ID is supplied, it overrides the usual Mes-
              sage-ID field created by qmail-inject.

       r      Use  the  per-recipient  owner  hack.  qmail-inject
              will append each recipient address to the  envelope
              sender of the copy going to that recipient.

       m      Use  the per-message owner hack.  qmail-inject will
              append the current date and process ID to the enve-
              lope sender.


OPTIONS

       -a     Send  the  message  to all addresses given as recip
              arguments; do not use header recipient addresses.

       -h     Send the message to all header recipient addresses.
              For   non-forwarded   messages,   this   means  the
              addresses listed under To, Cc, Bcc,  Apparently-To.
              For  forwarded  messages,  this means the addresses
              listed under Resent-To, Resent-Cc, Resent-Bcc.   Do
              not use any recip arguments.

       -A     (Default.)  Send the message to all addresses given
              as recip arguments.  If no recip arguments are sup-
              plied,  send  the  message  to all header recipient
              addresses.

       -H     Send the message to all header recipient addresses,
              and to all addresses given as recip arguments.

       -fsender
              Pass  sender  to qmail-queue as the envelope sender
              address.  This overrides Return-Path and all  envi-
              ronment variables.

       -N     (Default.)   Feed  the  resulting message to qmail-
              queue.

       -n     Print the message rather than feeding it to  qmail-
              queue.


CONTROL FILES

       defaultdomain
            Default  domain  name.   Default: me, if that is sup-
            plied;  otherwise  the  literal  name  defaultdomain,
            which  is  probably  not what you want.  qmail-inject
            adds this name to any host name without dots, includ-
            ing  defaulthost  if  defaulthost does not have dots.
            (Exception: see plusdomain.)

       defaulthost
            Default host name.  Default: me, if that is supplied;
            name to any address without a host name.  defaulthost
            need not be the current host's  name.   For  example,
            you  may  prefer  that  outgoing  mail show just your
            domain name.

       idhost
            Host name for Message-IDs.  Default: me, if  that  is
            supplied; otherwise the literal name idhost, which is
            certainly not what you want.  idhost need not be  the
            current  host's name.  For example, you may prefer to
            use fake host names in Message-IDs.  However,  idhost
            must  be  a  fully-qualified name within your domain,
            and each host in your domain should use  a  different
            idhost.

       plusdomain
            Plus  domain name.  Default: me, if that is supplied;
            otherwise the literal name plusdomain, which is prob-
            ably  not what you want.  qmail-inject adds this name
            to any host name that ends with a plus sign,  includ-
            ing defaulthost if defaulthost ends with a plus sign.
            If a host name does not have dots  but  ends  with  a
            plus sign, qmail-inject uses plusdomain, not default-
            domain.


SEE ALSO

       addresses(5),  qmail-control(5),  qmail-header(5),  qmail-
       queue(8)
























cat8/qmail-lspawn.0.html100644 0 0 2777 6244431622 13445 0ustar rootroot
       qmail-lspawn - schedule local deliveries


SYNOPSIS

       qmail-lspawn


DESCRIPTION

       qmail-lspawn  reads  a  series  of local delivery commands
       from descriptor 0,  invokes  qmail-alias  to  perform  the
       deliveries, and prints the results to descriptor 1.

       qmail-lspawn  invokes  qmail-alias  asynchronously, so the
       results may not be in the same order as the commands.

       For each recipient address, qmail-lspawn first checks  the
       qmail-users  mechanism,  and  then  invokes qmail-getpw if
       necessary, to find out  which  local  user  controls  that
       address.   qmail-lspawn  runs qmail-alias under the user's
       uid and gid.  It does not set up any supplementary groups.

       qmail-lspawn  treats  an  empty  mailbox  name  as a trash
       address.


SEE ALSO

       envelopes(5),   qmail-users(5),   qmail-getpw(8),   qmail-
       send(8), qmail-alias(8)



























cat8/qmail-newuser.0.html100644 0 0 2623 6244431623 13620 0ustar rootroot
       qmail-newuser  -  prepare  address  assignments for qmail-
       lspawn


SYNOPSIS

       qmail-newuser


DESCRIPTION

       qmail-newuser      reads      the      assignments      in
       /var/qmail/users/assign     and     writes    them    into
       /var/qmail/users/cdb in a binary format suited  for  quick
       access by qmail-lspawn.

       If  there  is  a  problem with users/assign, qmail-newuser
       complains and leaves users/cdb alone.

       qmail-newuser ensures that  users/cdb  is  updated  atomi-
       cally, so qmail-lspawn never has to wait for qmail-newuser
       to finish.  However, qmail-newuser  makes  no  attempt  to
       protect against two simultaneous updates of users/cdb.

       The binary users/cdb format is portable across machines.


SEE ALSO

       qmail-users(5), qmail-lspawn(8), qmail-pw2user(8)




























cat8/qmail-pop3d.0.html100644 0 0 2534 6244431624 13157 0ustar rootroot
       qmail-pop3d - distribute mail via POP


SYNOPSIS

       qmail-pop3d maildirname


DESCRIPTION

       qmail-pop3d  lets  a user read and delete his mail through
       the network.

       Mail is stored in a maildir called  maildirname,  normally
       Maildir, in the user's home directory.

       qmail-pop3d  is  normally invoked under qmail-popup, which
       reads a username  and  password,  and  /bin/checkpassword,
       which  checks  the  password and sets up environment vari-
       ables.

       qmail-pop3d has a 20-minute idle timeout.

       qmail-pop3d supports UIDL and TOP.

       qmail-pop3d appends an extra blank line to  every  message
       to work around serious bugs in certain clients.

       qmail-pop3d is based on a program contributed by Russ Nel-
       son.


SEE ALSO

       maildir(5), qmail-alias(8), qmail-popup(8)























cat8/qmail-popup.0.html100644 0 0 3761 6244431625 13301 0ustar rootroot
       qmail-popup - read a POP username and password


SYNOPSIS

       qmail-popup hostname subprogram


DESCRIPTION

       qmail-popup  reads  a  POP  username and password from the
       network.  It then runs subprogram.

       qmail-popup is most commonly invoked from inetd as

          qmail-popup CHANGEME checkpassword qmail-pop3d Maildir

       with CHANGEME replaced by the fully qualified domain  name
       of the local host.

       qmail-popup  expects descriptor 0 to read from the network
       and descriptor 1 to write to  the  network.   It  reads  a
       username and password from descriptor 0 in POP's USER-PASS
       style or APOP style.  It invokes subprogram, with the same
       descriptors  0 and 1; descriptor 2 writing to the network;
       and descriptor 3 reading the username, a 0 byte, the pass-
       word, another 0 byte, an APOP timestamp derived from host-
       name, and a final 0 byte.  qmail-popup then waits for sub-
       program  to finish.  It prints an error message if subpro-
       gram crashes or exits nonzero.

       qmail-popup should be used only within a  secure  network.
       Otherwise  an  eavesdropper  can steal passwords.  Even if
       you use APOP, an active attacker can still take  over  the
       connection and wreak havoc.

       qmail-popup has a 20-minute idle timeout.

       qmail-popup is based on a program contributed by Russ Nel-
       son.


SEE ALSO

       maildir(5), qmail-alias(8), qmail-pop3d(8)













cat8/qmail-pw2user.0.html100644 0 0 12367 6244431626 13570 0ustar rootroot
       qmail-pw2user  -  build  address assignments from a passwd
       file


SYNOPSIS

       qmail-pw2user [ -ohHuUbBC ] [ -cchar ]


DESCRIPTION

       qmail-pw2user reads a V7-format passwd file from  standard
       input and prints a qmail-users-format assignment file.

       A  V7-format  passwd file is a series of lines.  Each line
       has the format

          user:password:uid:gid:gecos:home:shell

       where user is an account name, uid and gid are the user id
       and  group  id  of that account, and home is the account's
       home directory.  password, gecos, and shell are ignored by
       qmail-pw2user.

       If    you   put   the   output   of   qmail-pw2user   into
       /var/qmail/users/assign,  and  then   run   qmail-newuser,
       qmail-lspawn  will  obey the assignments printed by qmail-
       pw2user.  WARNING: After changing any users,  uids,  gids,
       or  home  directories  in  your  passwd file, you must run
       qmail-pw2user and qmail-newuser again if you  want  qmail-
       lspawn to see the changes.


RULES

       By default, qmail-pw2user follows the same rules as qmail-
       getpw.  It skips user if (1) uid is zero,  (2)  home  does
       not  exist,  (3) user does not own home, (4) user contains
       uppercase letters, or (5) user contains - characters.   It
       then gives each remaining user control over the basic user
       address and all addresses of the  form  user-anything.   A
       catch-all user, alias, controls all other addresses.

       You  may  change  these  rules  by  setting  up  files  in
       /var/qmail/users:

       include
              A list of allowed users, one per line.  If  include
              exists,  and user is not listed in include, user is
              ignored.

       exclude
              A list of ignored users, one per line.  If  exclude
              exists,  and  user  is  listed  in exclude, user is
              ignored.

       mailnames
              Replacement names for users.   Each  line  has  the

              The addresses mailname1 and mailname1-ext and mail-
              name2 and so on will be  delivered  to  user.   The
              addresses  user  and user-ext will not be delivered
              to user unless user is listed as one of  the  mail-
              names.

              A line in mailnames is silently ignored if the user
              does not exist.

       subusers
              Extra addresses.  Each line has the form

                 sub:user:pre:

              sub will be handled by home/.qmail-pre, where  home
              is  user's  home directory; sub-ext will be handled
              by home/.qmail-pre-ext.


OPTIONS

       -o     (Default.)  Skip user if home does not exist.  Skip
              user if home is not owned by user.

       -h     Stop  if  home does not exist.  This is appropriate
              if every user is supposed to have a home directory.
              Skip user if home is not owned by user.

       -H     Do not check the existence or ownership of home.

       -U     (Default.)   Skip  user  if there are any uppercase
              letters in user.

       -u     Allow uppercase letters in user.

       -B     (Default.)  Skip user if it contains -.

       -b     Allow - in user.

       -cchar Use char as the user-extension delimiter  in  place
              of -.

       -C     Disable the user-extension mechanism.


SEE ALSO

       qmail-users(5),  qmail-lspawn(8), qmail-newuser(8), qmail-
       getpw(8)






cat8/qmail-qmtpd.0.html100644 0 0 2220 6244431627 13252 0ustar rootroot
       qmail-qmtpd - receive mail via QMTP


SYNOPSIS

       qmail-qmtpd


DESCRIPTION

       qmail-qmtpd  receives  mail  messages  via  the Quick Mail
       Transfer  Protocol  (QMTP)  and  invokes  qmail-queue   to
       deposit them into the outgoing queue.  qmail-qmtpd must be
       supplied  several  environment  variables;  see  tcp-envi-
       ron(5).

       qmail-qmtpd  supports the rcpthosts and RELAYCLIENT mecha-
       nisms described in qmail-smtpd(8).


SEE ALSO

       tcp-env(1),   tcp-environ(5),   qmail-control(5),   qmail-
       queue(8), qmail-smtpd(8)


































cat8/qmail-qread.0.html100644 0 0 1633 6244431630 13222 0ustar rootroot
       qmail-qread - list outgoing messages and recipients


SYNOPSIS

       qmail-qread


DESCRIPTION

       qmail-qread  scans  the  outgoing  queue of messages.  For
       each message it prints various human-readable information,
       including the date the message entered the queue, the num-
       ber of bytes in the message, the message sender,  and  all
       the recipients still under consideration.

       qmail-qread  must  be  run  either as root or with user id
       qmails and group id qmail.


SEE ALSO

       qmail-qstat(8), qmail-send(8)



































cat8/qmail-qstat.0.html100644 0 0 1262 6244431631 13261 0ustar rootroot
       qmail-qstat - summarize status of mail queue


SYNOPSIS

       qmail-qstat


DESCRIPTION

       qmail-qstat gives a human-readable breakdown of the number
       of messages at various spots in the mail queue.

       qmail-qstat must be run either as root or  with  group  id
       qmail.


SEE ALSO

       qmail-qread(8), qmail-send(8)






































cat8/qmail-queue.0.html100644 0 0 4356 6244431632 13261 0ustar rootroot
       qmail-queue - queue a mail message for delivery


SYNOPSIS

       qmail-queue


DESCRIPTION

       qmail-queue  reads  a  mail message from descriptor 0.  It
       then reads envelope information  from  descriptor  1.   It
       places  the  message  into  the  outgoing queue for future
       delivery by qmail-send.

       The envelope information is  an  envelope  sender  address
       followed  by  a list of envelope recipient addresses.  The
       sender address is preceded by the letter F and  terminated
       by  a  0  byte.  Each recipient address is preceded by the
       letter T and terminated by a 0 byte.  The list of  recipi-
       ent addresses is terminated by an extra 0 byte.  If qmail-
       queue sees end-of-file before the extra 0 byte, it  aborts
       without placing the message into the queue.

       Every  envelope recipient address must contain a username,
       an @ sign, and a fully qualified domain name.

       qmail-queue always adds a Received line to the top of  the
       message.   Other  than  this, qmail-queue does not inspect
       the message and does not enforce any restrictions  on  its
       contents.   However, the recipients probably expect to see
       a proper header, as described in qmail-header(5).


EXIT CODES

       0 if qmail-queue  has  successfully  queued  the  message,
       nonzero  if  qmail-queue  has failed to queue the message.
       qmail-queue does not print diagnostics.


SEE ALSO

       addresses(5),   envelopes(5),   qmail-header(5),    qmail-
       inject(8), qmail-send(8), qmail-smtpd(8)















cat8/qmail-remote.0.html100644 0 0 12512 6244431634 13443 0ustar rootroot
       qmail-remote - send mail via SMTP


SYNOPSIS

       qmail-remote host sender recip [ recip ...  ]


DESCRIPTION

       qmail-remote reads a mail message from its input and sends
       the message to one or more recipients at a remote host.

       The remote host is qmail-remote's  first  argument,  host.
       qmail-remote  sends  the  message  to  host,  or to a mail
       exchanger for host listed in the Domain Name  System,  via
       the  Simple  Mail  Transfer  Protocol (SMTP).  host can be
       either a fully-qualified domain name:

            silverton.berkeley.edu

       or an IP address enclosed in brackets:

            [128.32.183.163]

       The envelope recipient addresses are listed as recip argu-
       ments  to  qmail-remote.   The  envelope sender address is
       listed as sender.

       Note that qmail-remote does not take options and does  not
       follow the getopt standard.


TRANSPARENCY

       End-of-file in SMTP is encoded as dot CR LF.  A dot at the
       beginning of a line is encoded as dot  dot.   qmail-remote
       converts the UNIX newline convention into the SMTP newline
       convention by inserting CR before each LF.  It is impossi-
       ble  in  SMTP  to  send a message that does not end with a
       newline; qmail-remote will add a final CR LF if necessary.

       It  is  a violation of the SMTP protocol to send a message
       that contains long lines or  non-ASCII  characters.   How-
       ever, qmail-remote will happily send such messages.  It is
       the user's responsibility to avoid generating illegal mes-
       sages.


RESULTS

       qmail-remote prints some number of recipient reports, fol-
       lowed by a message report.  Each report is terminated by a
       0 byte.  Each report begins with a single letter:

       r    Recipient report: acceptance.

       h    Recipient report: permanent rejection.

       s    Recipient report: temporary rejection.
            ity for delivering the  message  to  each  acceptable
            recipient.

       Z    Message report: temporary failure.

       D    Message report: permanent failure.

       After  this  letter  comes a human-readable description of
       what happened.

       The recipient reports will always be printed in  the  same
       order  as  qmail-remote's  recip  arguments.  Note that in
       failure cases there may be fewer  recipient  reports  than
       recip arguments.

       qmail-remote always exits zero.


CONTROL FILES

       helohost
            Current  host name, for use solely in saying hello to
            the remote SMTP server.  Default: me, if that is sup-
            plied; otherwise qmail-remote refuses to run.

       smtproutes
            Artificial  SMTP  routes.   Each  route  has the form
            domain:relay, without any extra  spaces.   If  domain
            matches  host, qmail-remote will connect to relay, as
            if host had relay as its  only  MX.   (It  will  also
            avoid  doing  any CNAME lookups on sender and recip.)
            host may include a colon and a  port  number  to  use
            instead of the normal SMTP port, 25:

               inside.af.mil:firewall.af.mil:26

            relay  may  be empty; this tells qmail-remote to look
            up MX records as usual.  smtproutes may include wild-
            cards:

               .af.mil:
               :heaven.af.mil

            Here  any address ending with .af.mil (but not af.mil
            itself) is  routed  by  its  MX  records;  any  other
            address is artificially routed to heaven.af.mil.

            The  qmail  system does not protect you if you create
            an artificial mail loop between  machines.   However,
            you  are  always  safe using smtproutes if you do not
            accept mail from the network.

       timeoutconnect
            Number of seconds  qmail-remote  will  wait  for  the
            limit.

       timeoutremote
            Number  of  seconds  qmail-remote  will wait for each
            response from the remote SMTP server.  Default: 1200.


SEE ALSO

       addresses(5),   envelopes(5),   qmail-control(5),   qmail-
       send(8), qmail-smtpd(8)











































cat8/qmail-rspawn.0.html100644 0 0 1446 6244431635 13447 0ustar rootroot
       qmail-rspawn - schedule remote deliveries


SYNOPSIS

       qmail-rspawn


DESCRIPTION

       qmail-rspawn  reads  a  series of remote delivery commands
       from descriptor 0, invokes  qmail-remote  to  perform  the
       deliveries, and prints the results to descriptor 1.

       qmail-rspawn  invokes  qmail-remote asynchronously, so the
       results may not be in the same order as the commands.


SEE ALSO

       qmail-send(8), qmail-remote(8)





































cat8/qmail-send.0.html100644 0 0 15417 6244431636 13112 0ustar rootroot
       qmail-send - deliver mail messages from the queue


SYNOPSIS

       qmail-send


DESCRIPTION

       qmail-send handles messages placed into the outgoing queue
       by qmail-queue.  It uses qmail-lspawn to deliver  messages
       to  local  recipients and qmail-rspawn to deliver messages
       to remote recipients.  If a message is  temporarily  unde-
       liverable  to  one or more addresses, qmail-send leaves it
       in the queue and tries the addresses again later.

       qmail-send prints a readable record of its  activities  to
       descriptor  0.  It writes commands to qmail-lspawn, qmail-
       rspawn, and qmail-clean on descriptors 1, 3,  and  5,  and
       reads  responses from descriptors 2, 4, and 6.  qmail-send
       is responsible for avoiding deadlock.

       If  qmail-send  receives  a  TERM  signal,  it  will  exit
       cleanly,  after  waiting (possibly more than a minute) for
       current delivery attempts to finish.


CONTROL FILES

       WARNING: qmail-send reads its control files only  when  it
       starts.   If  you  change the control files, you must stop
       and restart qmail-send.

       bouncefrom
            Bounce username.  Default: MAILER-DAEMON.

       bouncehost
            Bounce host.  Default: me, if that is supplied;  oth-
            erwise the literal name bouncehost, which is probably
            not what you want.  If a message is permanently unde-
            liverable,  qmail-send  sends  a single-bounce notice
            back to the message's envelope sender.  The notice is
            From:  bouncefrom@bouncehost,  although  its envelope
            sender is empty.

       concurrencylocal
            Maximum  number  of   simultaneous   local   delivery
            attempts.   Default: 10.  If 0, local deliveries will
            be put on hold.  concurrencylocal is limited at  com-
            pile time to 120.

       concurrencyremote
            Maximum   number   of  simultaneous  remote  delivery
            attempts.  Default: 20.  If 0, remote deliveries will
            be put on hold.  concurrencyremote is limited at com-
            pile time to 120.

            Double-bounce host.  Default: me,  if  that  is  sup-
            plied;  otherwise  the literal name doublebouncehost,
            which is probably not what you want.

       doublebounceto
            User to receive double-bounces.  Default: postmaster.
            If  a  single-bounce notice is permanently undeliver-
            able, qmail-send sends a double-bounce notice to dou-
            blebounceto@doublebouncehost.    (If   that  bounces,
            qmail-send gives up.)

       envnoathost
            Presumed domain name for addresses without  @  signs.
            Default:  me, if that is supplied; otherwise the lit-
            eral name envnoathost, which is probably not what you
            want.   If  qmail-send  sees  an  envelope  recipient
            address without an @ sign, it appends @envnoathost.

       locals
            List of domain names that the current  host  receives
            mail for, one per line.  Default: me, if that is sup-
            plied;  otherwise  qmail-send  refuses  to  run.   An
            address  user@domain is considered local if domain is
            listed in locals.

       percenthack
            List of  domain  names  where  the  percent  hack  is
            applied.   If  domain  is  listed in percenthack, any
            address of the form user%fqdn@domain is rewritten  as
            user@fqdn.   user  may contain %, so the percent hack
            may be applied repeatedly.  qmail-send  handles  per-
            centhack before locals.

       queuelifetime
            Number  of  seconds  a message can stay in the queue.
            Default: 604800 (one week).  After this time expires,
            qmail-send  will  try  the  message once more, but it
            will treat any temporary delivery failures as  perma-
            nent failures.

       virtualdomains
            List  of virtual domains, one per line.  Each virtual
            domain has the form domain:prepend, without any extra
            spaces.   When qmail-send sees a recipient address at
            domain, say user@domain, it converts it  to  prepend-
            user@domain and treats it as local.  For example, if

                 nowhere.mil:joe-foo

            is  in  virtualdomains,  and  a  message  arrives for
            info@nowhere.mil, qmail-send will rewrite the recipi-
            ent  address  as joe-foo-info@nowhere.mil and deliver

                 .fax:uucp-fax
                 :alias-catchall
                 .nowhere.mil:joe-foo-host

            virtualdomains  may also contain exceptions: an empty
            prepend means that domain is not a virtual domain.

            qmail-send handles virtualdomains after locals.


SEE ALSO

       nice(1),  addresses(5),  envelopes(5),   qmail-control(5),
       qmail-log(5),   qmail-queue(8),   qmail-clean(8),   qmail-
       lspawn(8), qmail-rspawn(8)






































cat8/qmail-showctl.0.html100644 0 0 720 6244431637 13574 0ustar rootroot
       qmail-showctl - analyze the qmail configuration files


SYNOPSIS

       qmail-showctl


DESCRIPTION

       qmail-showctl explains the current qmail configuration.


SEE ALSO

       qmail-control(8)










































cat8/qmail-smtpd.0.html100644 0 0 6423 6244431640 13260 0ustar rootroot
       qmail-smtpd - receive mail via SMTP


SYNOPSIS

       qmail-smtpd


DESCRIPTION

       qmail-smtpd  receives  mail  messages  via the Simple Mail
       Transfer  Protocol  (SMTP)  and  invokes  qmail-queue   to
       deposit them into the outgoing queue.  qmail-smtpd must be
       supplied  several  environment  variables;  see  tcp-envi-
       ron(5).

       qmail-smtpd  is responsible for counting hops.  It rejects
       any message with 100  or  more  Received  or  Delivered-To
       header fields.

       qmail-smtpd  supports  ESMTP,  including  the 8BITMIME and
       PIPELINING options.


TRANSPARENCY

       qmail-smtpd converts the SMTP newline convention into  the
       UNIX newline convention by converting CR LF into LF.

       qmail-smtpd  accepts  messages  that contain long lines or
       non-ASCII characters, even though  such  messages  violate
       the SMTP protocol.


CONTROL FILES

       localiphost
            Replacement   host   name  for  local  IP  addresses.
            Default: me, if that  is  supplied.   qmail-smtpd  is
            responsible  for recognizing dotted-decimal addresses
            for the current  host.   When  it  sees  a  recipient
            address of the form box@[d.d.d.d], where d.d.d.d is a
            local  IP  address,  it   replaces   [d.d.d.d]   with
            localiphost.  This is done before rcpthosts.

       rcpthosts
            Allowed  RCPT  domains.   If  rcpthosts  is supplied,
            qmail-smtpd  will  reject  any   envelope   recipient
            address with a domain not listed in rcpthosts.

            Exception: If the environment variable RELAYCLIENT is
            set, qmail-smtpd  will  ignore  rcpthosts,  and  will
            append  the  value  of  RELAYCLIENT  to each incoming
            recipient address.

       smtpgreeting
            SMTP greeting message.  Default: me, if that is  sup-
            plied; otherwise qmail-smtpd will refuse to run.  The
            first word of  smtpgreeting  should  be  the  current
            host's name.
            Number  of seconds qmail-smtpd will wait for each new
            buffer of data from the remote SMTP client.  Default:
            1200.


SEE ALSO

       tcp-env(1),   tcp-environ(5),   qmail-control(5),   qmail-
       inject(8), qmail-queue(8), qmail-remote(8)













































cat8/qmail-start.0.html100644 0 0 4542 6244431641 13267 0ustar rootroot
       qmail-start - turn on mail delivery


SYNOPSIS

       qmail-start [ logger arg ...  ]


DESCRIPTION

       qmail-start   invokes   qmail-send,  qmail-lspawn,  qmail-
       rspawn, and qmail-clean.  These four daemons cooperate  to
       deliver messages from the queue.

       qmail-start  arranges  for qmail-send's activity record to
       be sent to qmail-start's output.  See qmail-log(5) for the
       format  of  the  activity record.  Other than this, qmail-
       start does not print anything, even on failure.

       If logger is supplied, qmail-start invokes logger with the
       given  arguments,  and  feeds qmail-send's activity record
       through logger.

       Environment variables given to qmail-start will eventually
       be  passed on to qmail-alias, so make sure to clean up the
       environment if you run qmail-start manually:

          # env - PATH="/var/qmail/bin:$PATH"
          qmail-start logger -p mail.info -t qmail &
          (all on one line)

       qmail-start sets the uid and gid of each daemon  properly.

       Note that qmail-send normally juggles several simultaneous
       deliveries.  To reduce qmail-send's impact on  other  pro-
       grams, you can run qmail-start with a low priority.


SEE ALSO

       logger(1),  nice(1),  qmail-log(5), qmail-alias(8), qmail-
       clean(8), qmail-lspawn(8), qmail-rspawn(8), qmail-send(8)
















cat8/qmail-tcpto.0.html100644 0 0 1713 6244431642 13261 0ustar rootroot
       qmail-tcpto - print TCP timeout table


SYNOPSIS

       qmail-tcpto


DESCRIPTION

       After  an  SMTP connection attempt times out, qmail-remote
       records the relevant IP  address.   If  the  same  address
       fails  again,  qmail-remote  assumes that further attempts
       will fail for at least another hour.

       qmail-tcpto prints qmail-remote's current  list  of  time-
       outs.

       qmail-tcpto  must  be  run  either as root or with user id
       qmailr and group id qmail.


SEE ALSO

       qmail-qread(8), qmail-remote(8)