1 |
slords |
1.1 |
diff -Nur -x '*.orig' -x '*.rej' qpsmtpd-0.31-dev/plugins/rhsbl mezzanine_patched_qpsmtpd-0.31-dev/plugins/rhsbl |
2 |
|
|
--- qpsmtpd-0.31-dev/plugins/rhsbl 2005-07-07 14:17:39.000000000 +1000 |
3 |
|
|
+++ mezzanine_patched_qpsmtpd-0.31-dev/plugins/rhsbl 2006-01-31 12:28:10.110140228 +1100 |
4 |
|
|
@@ -18,9 +18,14 @@ |
5 |
|
|
#push(@hosts, $helo) if $helo && $helo ne $sender->host; |
6 |
|
|
for my $host (@hosts) { |
7 |
|
|
for my $rhsbl (keys %rhsbl_zones) { |
8 |
|
|
+ if (defined($rhsbl_zones{$rhsbl})) { |
9 |
|
|
$self->log(LOGDEBUG, "Checking $host.$rhsbl for A record in the background"); |
10 |
|
|
$sel->add($res->bgsend("$host.$rhsbl")); |
11 |
|
|
- $rhsbl_zones_map{"$host.$rhsbl"} = $rhsbl_zones{$rhsbl}; |
12 |
|
|
+ } else { |
13 |
|
|
+ $self->log(LOGDEBUG, "Checking $host.$rhsbl for TXT record in the background"); |
14 |
|
|
+ $sel->add($res->bgsend("$host.$rhsbl", "TXT")); |
15 |
|
|
+ } |
16 |
|
|
+ $rhsbl_zones_map{"$host.$rhsbl"} = $rhsbl_zones{$rhsbl}; |
17 |
|
|
} |
18 |
|
|
} |
19 |
|
|
|
20 |
|
|
@@ -80,6 +85,10 @@ |
21 |
|
|
$result = $rr->name; |
22 |
|
|
$self->log(LOGDEBUG, "A record found for $result with IP " . $rr->address); |
23 |
|
|
last; |
24 |
|
|
+ } elsif ($rr->type eq 'TXT') { |
25 |
|
|
+ $result = $rr->txtdata; |
26 |
|
|
+ $self->log(LOGDEBUG, "TXT record found: " . $rr->txtdata); |
27 |
|
|
+ last; |
28 |
|
|
} |
29 |
|
|
} |
30 |
|
|
} else { |