Leon Kolchinsky wrote:
> 
> So, let me get this straight:
> -----------------------------
> This is how I see the work of amavis+spamd+clamd:
> 
> 1. As I see it amavis talk to spamd (spamassassin) and clamd (ClamAV)
> via appropriate sockets or TCP ports. 
> In my case -
> To clamd via /var/lib/clamav/clamd-socket (I can see it in
> amavisd.conf) 
> To spamd ? (I don't know how to check it)

Not quite.  Amavisd does not talk to spamd.  Amavisd has the SpamAssassin
code built into it.

> 2. Any configuration change I make to clamd and spamd take power only
> when I restart the deamons themselves. 

If you were using spamd, you would need to restart it to apply the changes.
But since you are using Amavisd to run SpamAssassin, this is not necessary.

> 3. But according to Matt Kettler response and my testings, any change
> to local.cf require amavis restart. 

When you restart Amavisd, it reads the local.cf file and uses that to
initialize its internal copy of SpamAssassin.

> # /etc/init.d/amavis restart
> Shutting down virus-scanner (amavisd-new):Daemon [9905] terminated by
>                                                                      
> SIGTERM done 
> Starting virus-scanner (amavisd-new):                                
> done 
> 
> 
> What is going on?
> Where I can validate config options of amavis to make sure the way it
> works? 

You can shutdown spamd, you don't need it.

To sum it up, there are three ways to use SpamAssassin:

1) The "spamassassin" executable -- This loads everything each time you call
   it.  It is inefficient, but it is useful for simple scripts and for
   testing.
2) The "spamd" daemon -- This loads everything once and then scans messages
   passed to it by spamc.  This is much more efficient since it only has to
   load the Perl interpreter and all of the rulesets and plugins once.
3) The Mail::SpamAssassin Perl API -- This allows the SpamAssassin code to
   be called directly by another Perl program.  This is how Amavisd runs.
   It gets a message, calls the SpamAssassin routines, marks up the message,
   and sends it along.  It still only loads everything once, but it is being
   loaded into Amavisd instead of spamd.

-- 
Bowie

Reply via email to