关于slock插件执行顺序的一点疑问
slockd文档是这样描述的:关于执行顺序
目前的插件执行顺序(优先级)是:localctrl, peruserctrl, spf, dnsbl, greylist, 主要的设计思路是尽量让黑白名单先执行,一旦命中则直接跳出规则集(提高效率),其次是尽量先过滤掉伪造支持SPF域名的垃圾信,但对于SPF记录通过的ip仍不能返回OK,而是需要继续从dnsbl里检查是否被RBL封锁,如果前4个规则都不能拦截,最后再交给greylist。
如果通过了前面4个规则,即localctrl, peruserctrl, spf, dnsbl, 这个时候还要灰名单,效率会不会低了点,
可否当通过了 spf, dnsbl后就不送灰名单 那直接修改dnsbl 插件,返回OK而不是DUNNO,将跳过后面greylist sub pre_hook {
my $self = shift;
my $config = $self->config;
my $code = ($config->{dnsbl_soft_reject} eq 'yes' ? '450' : '554');
my ($bl, $listip) = $self->handle_dns;
return "$code blocked using $bl, see [url]http://bl.extmail.org/cgi/rbl?[/url]$listip", if $bl;
'DUNNO';
}
sub hook { 'DUNNO' }
sub post_hook { 'DUNNO' }
老大指点下,这段代码里面需要修改哪里。 pre_hook 里最后的"DUNNO"换为"OK" 非常感谢老大指点。
页:
[1]