Next: Rate limiting functions, Previous: Sieve Interface, Up: Library [Contents][Index]
A set of functions is defined for interfacing with other filters via
TCP. Currently implemented are interfaces with
SpamAssassin
spamd
daemon and with
ClamAV
anti-virus.
Both interfaces work much the same way: the remote filter is
connected and the message is passed to it. If the remote filter
confirms that the message matches its requirements, the function
returns true
. Notice that in practice that means that such a
message should be rejected or deferred.
The address of the remote filter is supplied as the second argument in the form of a standard URL:
proto://path[:port]
The proto part specifies the connection protocol. It should be ‘tcp’ for the TCP connection and ‘file’ or ‘socket’ for the connection via UNIX socket. In the latter case the proto part can be omitted. When using TCP connection, the path part gives the remote host name or IP address and the optional port specifies the port number or service name to use. For example:
# connect to ‘remote.filter.net’ on port 3314: tcp://remote.filter.net:3314 # the same, using symbolic service name (must be defined in # /etc/services): tcp://remote.filter.net:spamd # Connect via a local UNIX socket (equivalent forms): /var/run/filter.sock file:///var/run/filter.sock socket:///var/run/filter.sock
The description of the interface functions follows.
• SpamAssassin | ||
• ClamAV |