Man Linux: Main Page and Category List

NAME

       mimefilter - filter a MIME message stripping unwanted MIME parts

SYNOPSIS

       mimefilter [OPTIONS]

DESCRIPTION

       The mimefilter script accept on STDIN a MIME conforming message, and
       outputs on STDOUT a MIME conforming message.

       It strips every unwanted MIME part, warning by email the original
       author about this, and outputs a MIME compliant cleaned message, to be
       further processed by a mailing list software.

       You may find it useful if you don’t want certain attachments on your
       mailing lists, or if you want to allow just the text part from
       multipart/alternative messages, and so on.  You can easily fine tune
       the list of allowed MIME types to suit your particular needs, using
       normal Perl regexps.

OPTIONS

       The mimefilter script may take just an option, in either its short or
       long form:

       -h, --help
           Causes the script to print this very manpage and then succesfully
           exit.

       However, the mimefilter script won’t bark at you if it discovers you
       supplied some other options as well, it’ll just politely ignore them.

ARGUMENTS

       The mimefilter script cheerfully takes an unlimited number of command
       line arguments and happily discards them all.

FILES

       The mimefilter script will look for a system wide configuration file in
       /etc/mimefilter.rc, and for a local, per working directory,
       configuration file in ./mimefilter.rc.  The latter may be used to
       override any or all of the parameters defined by the former, thus
       allowing easily per mailing list customization.

       Several configuration parameters are provided, the most important being
       the list of admissible MIME types (where Perl regexps may be used),
       along with the list of never to be allowed ones (so that you may even
       specify, e.g., ’text/.*’  in the admissible types list and ’text/html’
       in the never to be allowed one, to allow every text part but html
       ones).

       See the default configuration file for examples of use and further
       documentation.

ENVIRONMENT

       The mimefilter script will look for the following environment
       variables:

       list
           The name of the mailing list this message is intended for.  Used as
           the return address of the warning issued to the orginal author if
           the message is not already clean.

           The Smartlist mailing list software will automatically pass this
           variable to mimefilter.

       listaddr
           The address of the mailing list this message is inteded for.  Used
           in the X-Loop field of the warning issued to the original author if
           the message is not already clean.

           The Smartlist mailing list software will automatically pass this
           variable to mimefilter.

       listreq
           The administrative (owner) address of the mailing list this message
           is inteded for.  Used in the return address of the warning issued
           to the original author if the message is not already clean.

           The Smartlist mailing list software will automatically pass this
           variable to mimefilter.

       maintainer
           The email address of the maintainer of the mailing list this
           message is inteded for.  If it is defined, it is used to send the
           maintainer original carbon copies of messages that have been
           modified by this filter -- if filter_mime_cc_maintainer is
           affermative, of course.

           The Smartlist mailing list software will automatically pass this
           variable to mimefilter.

       filter_mime_cc_maintainer
           A boolean flag: if affermative (i.e., if it matches the /y/i Perl
           regular expression), the mimefilter script will send carbon copies
           of every cleaned (modified) message to the maintainer of the
           mailing list the message is intended for.

           Users of the Smartlist mailing list software may conveniently set
           this variable in rc.custom.

       filter_mime
           The mimefilter script itself will pay no attention to this
           variable, but if you have followed what the author suggests in the
           RECOMMENDED USE WITH THE SMARTLIST MAILING LIST SOFTWARE section,
           you will need to define it affermative in rc.custom to activate
           this script:

                   filter_mime = yes

RETURN VALUE

       The mimefilter script returns 0 on success and a positive integer on
       errors.

RECOMMENDED USE WITH THE SMARTLIST MAILING LIST SOFTWARE

       Put the following lines in rc.local.s[012]0 (the right one just depends
       on your specific needs, look at rc.submit for more info):

           :0
           * filter_mime ?? y
           {
                   # Pass the mail trough mimefilter
                   :0 fw
                   │ mimefilter

                   # Executed if mimefilter died
                   :0 e
                   {
                           :0 hfw
                           │ formail -A "X-Diagnostic: MIME filtering failed"

                           HOST=continue_with_rc.request
                   }

                   # Trash empty messages (author’s already been warned by mimefilter)
                   :0 Bh
                   * < 1
                   /dev/null
           }

       Also remember to uncomment the appropriate line in rc.custom, to
       activate rc.local.s[012]0, and don’t forget to customize the list of
       admissibile and never to be allowed MIME types in the configuration
       file(s).

USING THIS SCRIPT WITH OTHER MAILING LIST SOFTWARE

       The author believes no particular arrangements are necessary to use
       this script with mailing list software other than Smartlist, altough
       one should remember that mimefilter expects to find at least the list,
       listaddr, and listreq environment variables set.

SEE ALSO

       The Smartlist mailing list software documentation, the mimefilter.rc(5)
       man page (yet to be written).

BUGS

       Naaa... ;-)

UNRESTRICTIONS

       This program is copylefted.  Refer to the GNU General Public License
       for conditions of use.

AUTHOR

       This program has been written and is actively maintained by
       Davide Giovanni Maria Salvetti, <salve@linux.it>.

HISTORY

       This script was originally aimed for use with a bunch of Smartlist
       served maling lists the author administers.  He believes it can be
       successfully used with other mailing list softwares as well.