]> source.dussan.org Git - rspamd.git/commitdiff
[Fix] Rbl: Allow utf8 lookups for IDN domains
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Tue, 5 Nov 2019 10:50:34 +0000 (10:50 +0000)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Tue, 5 Nov 2019 10:50:34 +0000 (10:50 +0000)
Issue: #3137

src/plugins/lua/rbl.lua

index 623de0a376952a7e4325f925e19fa9ab05635ff1..521e63708c010e83ffc4d6857278adb7f221b616 100644 (file)
@@ -70,9 +70,12 @@ local function validate_dns(lstr)
     -- two dots in a row
     return false
   end
+  if not rspamd_util.is_valid_utf8(lstr) then
+    -- invalid utf8 detected
+    return false
+  end
   for v in lstr:gmatch('[^%.]+') do
-    if not v:match('^[%w-]+$') or v:len() > 63
-        or v:match('^-') or v:match('-$') then
+    if v:len() > 63 or v:match('^-') or v:match('-$') then
       -- too long label or weird labels
       return false
     end