--- rpms/smeserver-qpsmtpd/sme10/smeserver-qpsmtpd-2.6.0-change_rbl_sbl_list_separator.patch 2016/04/17 21:15:41 1.1 +++ rpms/smeserver-qpsmtpd/sme10/smeserver-qpsmtpd-2.6.0-change_rbl_sbl_list_separator.patch 2017/02/27 18:55:12 1.2 @@ -25,7 +25,7 @@ diff -Nur -x '*.orig' -x '*.rej' smeserv + # Migrate to use , as separator instead of : + if ($rbl !~ m/,/){ + my @zones = split /[:]/, $rbl; -+ my $fqdn_re = qr/[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]\.[a-zA-Z]{2,}/; ++ my $fqdn_re = qr/([a-zA-Z0-9][a-zA-Z0-9\-]{1,61}\.)*[a-zA-Z0-9][a-zA-Z0-9\-]{1,61}\.[a-zA-Z]{2,}/; + if (scalar @zones == 2 && $zones[1] !~ m/^$fqdn_re$/){ + # When we have only two entries, check if the second one looks like a valid hostname + # so if you only have something like dnsbl.foo.net:Sorry you are blacklisted @@ -67,7 +67,7 @@ diff -Nur -x '*.orig' -x '*.rej' smeserv + # Migrate to use , as separator instead of : + if ($sbl !~ m/,/){ + my @zones = split /[:]/, $sbl; -+ my $fqdn_re = qr/[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]\.[a-zA-Z]{2,}/; ++ my $fqdn_re = qr/([a-zA-Z0-9][a-zA-Z0-9\-]{1,61}\.)*[a-zA-Z0-9][a-zA-Z0-9\-]{1,61}\.[a-zA-Z]{2,}/; + if (scalar @zones == 2 && $zones[1] !~ m/^$fqdn_re$/){ + # When we have only two entries, check if the second one looks like a valid hostname + # so if you only have something like rhsbl.foo.net:Sorry you are blacklisted