SYNOPSIS

sm-archive [-c] [-d n] [-p sendmail-socket] [-t timeout]

OPTIONS

-c

Load the configuration file, print a cannonical form of the configuration on stdout, and exit.

-d n

Set the debug level to n.

-p sendmail-socket

Set the socket used for the milter connection to sendmail. This is either "inet:port@ip-address" or "local:local-domain-socket-file-name".

-t timeout

Set the timeout in seconds used for communication with sendmail.

USAGE

sm-archive -c

sm-archive -d 10 -p local:sm-archive.sock

INSTALLATION

This is now a standard GNU autoconf/automake installation, so the normal "./configure; make; su; make install" works. "make chkconfig" will setup the init.d runlevel scripts. Alternatively, you can use the source or binary RPMs at http://www.five-ten-sg.com/sm-archive/packages: http://www.five-ten-sg.com/sm-archive/packages.

Note that this has ONLY been tested on Linux, specifically RedHat Linux. You will need at a minimum a C++ compiler with a minimally thread safe STL implementation. The distribution includes a test.cpp program. If it fails this milter won't work. If it passes, this milter might work.

Modify your sendmail.mc by adding the following line in your sendmail.mc and rebuild the .cf file

  • INPUT_MAIL_FILTER(`sm-archive', `S=local:/var/run/sm-archive/sm-archive.sock, F=T, T=C:30s;S:5m;R:5m;E:5m')

Modify the default sm-archive.conf(5) configuration.

CONFIGURATION

The configuration file is documented in sm-archive.conf(5). Any change to the config file, or any file included from that config file, will cause it to be reloaded within three minutes.

INTRODUCTION

Consider the problem of archiving all the mail sent to or from particular email addresses or domains. This milter allows you to configure archive mailboxes for each address or domain. It will add the address of the archive mailbox to messages that pass thru this milter.

The archive milter reads a text configuration file (sm-archive.conf) on startup, and whenever the config file (or any of the referenced include files) is changed. The entire configuration file is case insensitive. If the configuration cannot be loaded due to a syntax error, the milter will log the error and quit. If the configuration cannot be reloaded after being modified, the milter will log the error and send an email to root from sm-archive@$hostname. You probably want to added sm-archive@$hostname to your /etc/mail/virtusertable since otherwise sendmail will reject that message.

TODO

Placeholder for future ideas.

COPYRIGHT

Copyright (C) 2007 by 510 Software Group <[email protected]>

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version.

You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, please write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.

VERSION

1.7