Provided by: rdeliver_0.12-2.1_all bug

NAME

       rdeliver - Ruby mail filter script

SYNOPSYS

       rdeliver <options> [script]

DESCRIPTION

       This  script  serves  as  an  example of how you can use the RFilter::DeliveryAgent class to perform mail
       delivery.  You can also use this script as a fully functioning mail filter.

       This script is a basic mail local delivery agent (DeliveryAgent) that can be used in place  of  procmail,
       maildrop,  etc. in a user's .forward or .qmail file.  The user supplies a delivery script that is written
       in Ruby, which avoids the limitations of the crippled mini-languages so often used in other DeliveryAgent
       programs.

USAGE

       rdeliver is invoked from the command line using:

              % rdeliver <options> [script]

       The script argument is optional.  If omitted the script will look for a file called .rdeliver in the home
       directory.

       Options are:

       --load-path directory
              Prepend the given directory to ruby's load path.

       --log filename
              Log to the given filename.  If no log is specified, no logging occurs.

       --home directory
              Specify the home directory.  rdeliver will change to this directory before reading and writing any
              files.  The home directory defaults to the value of the HOME or LOGDIR environment variable.

DELIVERY SCRIPT

       The delivery script runs in the context of a class called Deliver (in contrast, most ruby scripts run  in
       the context of the Object class).  So any methods added with def will be added to the Deliver class.

       A minimal delivery script would be:

               def main
                 agent.save('inbox')
               end

       This code defines a Deliver#main method that saves the mail into an mbox style mailbox.

       The  only  API  the  Deliver  script has is the #agent method.  This retrieves the RFilter::DeliveryAgent
       object associated with the current message.  Using the API of the RFilter::DeliveryAgent object, you  can
       access  and  modify  the message body and headers, defer or reject the message delivery, and deliver into
       various mailbox formats.

       See also RFilter::DeliveryAgent and Deliver.

INSTALLATION

       Assuming you have the RubyMail mail classes installed, you typically have to put something like  this  in
       your .forward file:

              |"/usr/bin/rdeliver --log /home/you/.rlog"

       This will call rdeliver for each new message you get, and log to /home/you/.rlog.

CATASTROPHIC ERRORS

       The  rdeliver  script is very careful with errors.  If there is any problem, it logs the error to the log
       file you specify.  But if you do not specify a log file, or the error  occurs  before  the  log  file  is
       opened,  a  record  of  the  error  is  placed in a file called CATASTROPHIC_DELIVERY_FAILURE in the home
       directory.  If that fails, the error information is printed to the standard output in the hopes  that  it
       will  be  part  of  a bounce message.  In all cases, the exit code 75 is returned, which tells the MTA to
       re-try the delivery again.

AUTHOR

       rdeliver and RFilter support classes were written by Matt Armstrong <matt@lickey.com>.

       This document was originally an RD format document of rdeliver script.  This manual  page  was  converted
       from it for Debian GNU/Linux system.

                                                 September 2003                                      rdeliver(1)