amavisd-milter is a sendmail milter (mail filter) for amavisd-new 2.4.3 or and sendmail 8.13 and above (limited support for sendmail 8.12 is provided) which use the new AM.PDP protocol.
Instead of older amavis-milter helper program, full amavisd-new functionality is available, including adding spam and virus information header fields, modifying Subject, adding address extensions and removing certain recipients from delivery while delivering the same message to the rest.
You can visit amavisd-milter SourceForge project.
A complete description of usage, configuration and troubleshooting is in amavisd-milter(8) manual page.
- May 2 2010 - amavisd-milter-1.5.0
IMPORTANT: amavisd-new 2.7.0 requires amavisd-milter 1.5.0 due to changes in AM.PDP protocol.
Bug and compatibility fixies:
- Amavisd-new 2.7.0 introduce new AM.PDP response log_id.
- Jan 31 2010 - amavisd-milter-1.4.1
- Added new amavisd-milter option -P which causes that mails pass through when amavisd-new fails.
Bug and compatibility fixies:
- Debian installs libmilter.a to /usr/lib/libmilter.
- sendmail 8.14 introduces three new libmilter callbacks.
- Dec 5 2008 - amavisd-milter-1.4.0
- Added new amavisd-milter option -q which sets milter socket backlog used by listen(2).
- Local state directory (default /var/amavis) is tunable via configure option:
- --localstatedir=</DIR> - absolute path to local state directry.
- Working directory (default local state directory) is tunable via configure option:
- --with-working-dir=<SUBDIR> - subdirectory of local state directory.
- --with-working-dir=</DIR> - absolute path to working directory.
Bug and compatibility fixies:
- amavisd-milter convert CRLF to LF in mail body to support amavisd-new integrated DKIM signing and verification.
- Fixed memory leak in fts_alloc() on Solaris.
- Solaris doesn't have dirfd().
- Solaris 9 and older doesn't have sem_timedwait.
- Sep 23 2007 - amavisd-milter-1.3.1
- Properly calculate timezone offset for synthesized Received header on platforms where gmtime() and localtime() returns pointer to the same static struct.
- Sep 2 2007 - amavisd-milter-1.3.0
- Implemented AM.PDP request attribute policy_bank (amavisd-new 2.5.0 or higher is required). Currently SMTP_AUTH, SMTP_AUTH_<MECH> and SMTP_AUTH<MECH>_<BITS> policy bank names are sent when the remote client is authenticated.
- Added new amavisd-milter option -D client|server which allow personalized header or body modifications.
- Fixed bug when amavisd communication buffer is growing.
- Properly get queue id when amavisd-milter is used with postfix.
- improved performance under heavy load.
- Dec 19 2006 - amavisd-milter-1.2.1
Limited support for sendmail 8.12:
- smfi_addheader() is used instead of smfi_insheader() for insheader and addheader AM.PDP responses. This works well with amavisd-new 2.4.3 or newer.
- smfi_progress() isn't called when amavisd-milter wait for amavisd-new communication socket.
- AM.PDP response quarantine isn't implemented.
- Add synthesized Received header for Spamassassin.
- Properly handle IPv6 client address.
- Oct 8 2006 - amavisd-milter-1.2.0
IMPORTANT: Due to changes in AM.PDP protocol, amavisd-milter 1.2.0 must be used with amavisd-new 2.4.3.
- Implemented AM.PDP protocol version 2. New response attributes are version_server, insheader and quarantine.
- Improved amavisd connection locking. When amavisd connection is closed, lock is removed immediately.
- Fixed bug with addheader: amavisd-new assume that header is added to the end of headers but sendmail insert it before first occurence of the header with same name.
- Amavisd communication buffer is now dynamically allocated. MAXAMABUF is maximum buffer length, AMABUFCHUNK is initial length and reallocation step. Buffer is allocated for every connection.
- Protability: added Tru64 platform.
- Apr 16 2006 - amavisd-milter-1.1.2 and amavisd-milter-1.0.6
- MAXAMABUF is increased from 2048 to 65536 because it must be greater then confMAX_HEADERS_LENGTH which is usually set to 32768. If mail header is longer than MAXAMABUF, mail is permanently rejected with temporary fail return code and will never reach the recipents.
- Added new configure option --with-sendmail=<DIR> which change base directory in which are placed libmilter header files and library (e.q. /usr/local on FreeBSD when you using sendmail from ports).
- Mar 19 2006 - amavisd-milter-1.0.5
Portability release. amavisd-milter can be used with sendmail 8.12 (smfi_opensocket() is now optional).
Use this version when you can't use sendmail 8.13 (e.q. stock RH9).
- Jan 25 2006 - amavisd-milter-1.1.1
Portability release. amavisd-milter-1.1 now can be compiled on FreeBSD, NetBSD, OpenBSD, Linux and Solaris. Please report success or problems on the users mailing list.
- Jan 24 2006 - amavisd-milter-1.1.0
- amavisd-milter can limit number of concurrent connections to amavisd-new (new options -m and -M).
- amavisd-milter is responsible to remove message work directory (because amavisd-new sometimes don't do it - e.q. when antivirus fail).
- Jan 13 2006 - amavisd-milter-1.0.4
- Some users reports problem with ENOMEM in amavis_response(). Consequently MAXAMABUF is increased from 1024 to 2048, amavis_request() and amavis_response() returns EOVERFLOW when buffer size isn't enough and truncated response is logged when debug level is >= 3. Thanks to Mike Cisar.
- Fixed default path to pidfile in README and website. Thanks to Jerzy Sakol.
- When stopping amavisd-new one (maybe not always just one) of milter threads amavisd-milter start to eat up a cpu time. Thanks to Grzegorz Piszczek.
- amavisd-milter dies randomly due to segmentation fault in mlfi_close(). Thanks to Grzegorz Piszczek.
- amavisd-milter(8) manual page was created. README and website are synchronized with this manual page. Thanks to Jerzy Sakol for his initial work.
INCOMPATIBILITY with 1.0.3 and previous version:
- Default working directory was changed from /var/amavis/tmp to /var/amavis to accordance with amavisd-new $helpers_home default value. To go back to the previous behaviour run amavisd-milter with option -w /var/amavis/tmp
- Jul 01 2005 - amavisd-milter-1.0.3
- Properly set amavisd connection timeout. Thanks to Mr. Sompis Junsui.
- Unlink old pid file at startup.
- Jun 05 2005 - amavisd-milter-1.0.2
- Fix memory leak in mlfi_cleanup.
- May 29 2005 - amavisd-milter-1.0.1
- Now can be compiled on Debian 3.0, Fedora FC2 and FC3, OpenBSD 3.4 and Solaris 9. Tested on SourceForge compile farm.
- May 11 2005 - amavisd-milter-1.0.0
Initial public release hosted on SourceForge. Fully tested on FreeBSD 5.3.
A community mailing lists are available at http://sourceforge.net/mail/?group_id=138169. Enhancements requests and problem reports are welcome.
If you run into problems first check the users mailing list archive before asking questions on the list. It's highly likely somebody has already come across the same problem and it's been solved.
Fetch the tarball from Sourceforge and unpack it.
The simplest way to compile this package is:
- `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system.
Running `configure' takes a while. While running, it prints some messages telling which features it is checking for.
- Type `make' to compile the package.
- Type `make install' to install the programs and any data files and documentation. The default location of amavisd-milter is /usr/local/sbin.
- You can remove the program binaries and object files from the source code directory by typing `make clean'.
You can use this optional features for configure:
--enable-debug enable all compiler warnings
--with-sendmail=<DIR> base directory of sendmail installation
--with-sendmail-base=<DIR> base directory of sendmail distribution
--with-sendmail-obj=<DIR> obj.* subdirectory in sendmail distribution
More informations you can find in the INSTALL file.
$Id: index.html,v 1.51 2010/05/02 12:16:23 reho Exp $