Daniel J McDonald wrote the following on 6/15/2007 3:37 PM -0800:
> On Fri, 2007-06-15 at 15:27 -0700, Bill Landry wrote:
>
>> Daniel J McDonald wrote the following on 6/15/2007 2:54 PM -0800:
>>
>>> On Fri, 2007-06-15 at 22:08 +0100, Randal, Phil wrote:
>>>
>>> And a few others... Might as well be completely consistent. Try this
>>> patch:
>>> --- Botnet.pm.orig 2007-06-15 16:47:33.000000000 -0500
>>> +++ Botnet.pm 2007-06-15 16:52:13.000000000 -0500
>>>

>
>
>> Daniel, here is a snippet of my debug output with this patch applied to
>> Botnet.pm, version 0.7:
>>
>> [23898] warn: plugin: failed to parse plugin
>> /etc/mail/spamassassin/Botnet.pm: Global symbol "$name" requires
>> explicit package name at /etc/mail/spamassassin/Botnet.pm line 848.
>> [23898] warn: Global symbol "$type" requires explicit package name at
>> /etc/mail/spamassassin/Botnet.pm line 848.
>> [23898] warn: Missing right curly or square bracket at
>> /etc/mail/spamassassin/Botnet.pm line 875, at end of line
>> [23898] warn: syntax error at /etc/mail/spamassassin/Botnet.pm line 875,
>> at EOF
>> [23898] warn: Compilation failed in require at
>> /usr/lib/perl5/site_perl/5.8.8/Mail/SpamAssassin/PluginHandler.pm line 97.
>>
>>

> Oops, yanked an entra line. Try this one instead:
> --- Botnet.pm.orig 2007-06-15 16:47:33.000000000 -0500
> +++ Botnet.pm 2007-06-15 17:35:33.000000000 -0500
> @@ -703,7 +703,16 @@
> ($type =~ /^(?:A|MX)$/) &&
> (defined $max) &&
> ($max =~ /^-?\d+$/) ) {
> - $resolver = Net:NS::Resolver->new();
> + $resolver = Net:NS::Resolver->new(
> + udp_timeout => 3,
> + tcp_timeout => 3,
> + retrans => 0,
> + retry => 1,
> + persistent_tcp=>0,
> + persistent_udp=>0,
> + dnsrch=>0,
> + defnames=>0,
> + );
> if ($query = $resolver->search($name, $type)) {
> # found matches
> $i = 0;
> @@ -826,7 +835,16 @@
> sub get_rdns {
> my ($ip) = @_;
> my ($query, @answer, $rr);
> - my $resolver = Net:NS::Resolver->new();
> + my $resolver = Net:NS::Resolver->new(
> + udp_timeout => 3,
> + tcp_timeout => 3,
> + retrans => 0,
> + retry => 1,
> + persistent_tcp=>0,
> + persistent_udp=>0,
> + dnsrch=>0,
> + defnames=>0,
> + );
> my $name = "";
>
> if ($query = $resolver->query($ip, 'PTR', 'IN')) {
>
>

Beautiful, works like a charm!

Thanks Daniel!

Bill