John Peacock wrote:

Bob Dodds wrote:

My question is, if both queue/qmail-queue and
queue/maildir are hooking, and the first returns
"OK", does that prevent the second from running,
or does it run and have to be modified to make it
check if the other queue hook has returned "OK"?


The first plugin for a specific hook that returns "OK" is the last plugin which fires on that hook. Literally, the "OK" means that the hook has been completed, whatever that means in that specific case. If you want both queue plugins to fire unconditionally, have the first one always return "DECLINED" (meaning this plugin isn't going to do anything here).

If you want the second queue plugin to fire only if the first one didn't process the message, send "OK" if the message has been queued to the spam folder, otherwise send "DECLINED" to permit the second queue plugin to fire.

John

Thanks, John.

queue/maildir can be my local queue/honeypot_maildir

 unless ($self->{_maildir}) {
   ($self->{_maildir}) = "./honeypot" ;

 my $note = $transaction->notes('joe_ok');
 return DECLINED unless $note;

If declined, mail goes to (last|next|original|default) queue
plugin.

joe_ok will have three relevent policy options, to always deny,
or to rcpt OK and set the note the first time only from that IP
and then deny for that IP(smart machine but not fulltime
honeypot--deny telling them user does not exist), or to always
rcpt OK and set the note for spam (honeypot machine--tell
them user exists).

-Bob

Reply via email to