31 lines
911 B
Diff
31 lines
911 B
Diff
|
--- qpsmtpd/plugins/uribl.ori 2024-04-28 22:37:31.090000000 -0400
|
||
|
+++ qpsmtpd/plugins/uribl 2024-04-28 22:40:04.111000000 -0400
|
||
|
@@ -102,6 +102,9 @@
|
||
|
|
||
|
use Time::HiRes qw(time);
|
||
|
use IO::Select;
|
||
|
+use Data::Validate::Domain;
|
||
|
+
|
||
|
+my $v = Data::Validate::Domain->new;
|
||
|
|
||
|
# ccTLDs that allocate domain names within a strict two-level hierarchy,
|
||
|
# as in *.co.uk
|
||
|
@@ -358,7 +361,7 @@
|
||
|
[a-zA-Z0-9](?:[a-zA-Z0-9\-]+\.)+ # hostname
|
||
|
(?:$tlds4regex|[a-zA-Z]{2}) # tld
|
||
|
)(?!\w)
|
||
|
- }gix
|
||
|
+ }gix && $v->is_domain($1)
|
||
|
)
|
||
|
{
|
||
|
my $host = lc $1;
|
||
|
@@ -400,7 +403,7 @@
|
||
|
[a-zA-Z0-9](?:[a-zA-Z0-9\-]+\.)+ # hostname
|
||
|
(?:$tlds4regex|[a-zA-Z]{2}) # tld
|
||
|
)(?!\w)
|
||
|
- }gix
|
||
|
+ }gix && $v->is_domain($1)
|
||
|
)
|
||
|
{
|
||
|
my $host = lc $1;
|