You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by gb...@apache.org on 2024/12/29 16:33:28 UTC

svn commit: r1922749 - in /spamassassin/trunk/lib/Mail/SpamAssassin/Plugin: DecodeShortURLs.pm Redirectors.pm

Author: gbechis
Date: Sun Dec 29 16:33:28 2024
New Revision: 1922749

URL: http://svn.apache.org/viewvc?rev=1922749&view=rev
Log:
run idn_to_ascii only on hosts
bz #8302

Modified:
    spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/DecodeShortURLs.pm
    spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Redirectors.pm

Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/DecodeShortURLs.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/DecodeShortURLs.pm?rev=1922749&r1=1922748&r2=1922749&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/DecodeShortURLs.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/DecodeShortURLs.pm Sun Dec 29 16:33:28 2024
@@ -84,7 +84,7 @@ modify the parsed URI list prior to norm
 package Mail::SpamAssassin::Plugin::DecodeShortURLs;
 
 use Mail::SpamAssassin::Plugin;
-use Mail::SpamAssassin::Util qw(idn_to_ascii);
+use Mail::SpamAssassin::Util qw(idn_to_ascii is_fqdn_valid);
 use strict;
 use warnings;
 
@@ -739,7 +739,10 @@ sub _check_shortener_uri {
     (?::\d+)?		# Possible port
     (.*?\w)?		# Some path wanted
     }ix;
-  my $host = lc idn_to_ascii($1);
+  my $host = lc $1;
+  if(is_fqdn_valid($host)) {
+    $host = idn_to_ascii($host);
+  }
   my $has_path = defined $2;
   my $levels = $host =~ tr/.//;
   # No point looking at single level "xxx.yy" without a path

Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Redirectors.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Redirectors.pm?rev=1922749&r1=1922748&r2=1922749&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Redirectors.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Redirectors.pm Sun Dec 29 16:33:28 2024
@@ -73,7 +73,7 @@ modify the parsed URI list prior to norm
 package Mail::SpamAssassin::Plugin::Redirectors;
 
 use Mail::SpamAssassin::Plugin;
-use Mail::SpamAssassin::Util qw(compile_regexp idn_to_ascii);
+use Mail::SpamAssassin::Util qw(compile_regexp idn_to_ascii is_fqdn_valid);
 use strict;
 use warnings;
 
@@ -708,7 +708,10 @@ sub _check_redirector_uri {
     (?::\d+)?		# Possible port
     (.*)?		# Some path wanted
     }ix;
-  my $host = lc idn_to_ascii($1);
+  my $host = lc $1;
+  if(is_fqdn_valid($host)) {
+    $host = idn_to_ascii($host);
+  }
   my $has_path = defined $2;
   my $levels = $host =~ tr/.//;
   # No point looking at single level "xxx.yy" without a path