]> source.dussan.org Git - rspamd.git/commitdiff
[Minor] Lua_magic: Fix detection for the parts with file names
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 16 Aug 2021 10:15:11 +0000 (11:15 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 16 Aug 2021 10:24:20 +0000 (11:24 +0100)
lualib/lua_magic/heuristics.lua

index 376e19cd409fa7dc09ea96e908488b0ddb8e13a0..0a0cb747154745f0924587e2dff6af16c0d14264 100644 (file)
@@ -429,6 +429,8 @@ exports.text_part_heuristic = function(part, log_obj, _)
       local start_span = content:span(1, span_len)
       local matches = txt_trie:match(start_span)
       local res = {}
+      local fname = part:get_filename()
+
       if matches then
         -- Require at least 2 occurrences of those patterns
         for n,positions in pairs(matches) do
@@ -447,8 +449,12 @@ exports.text_part_heuristic = function(part, log_obj, _)
 
         local ext, weight = process_top_detected(res)
 
-        if weight and weight >= 40 then
-          return ext, weight
+        if weight then
+          if weight >= 40 then
+            return ext, weight
+          elseif fname and weight >= 20 then
+            return ext, weight
+          end
         end
       end
 
@@ -466,8 +472,6 @@ exports.text_part_heuristic = function(part, log_obj, _)
                 and file:sub(-ext_len - 1, -ext_len - 1) == '.'
       end
 
-
-      local fname = part:get_filename()
       if fname and (has_extension(fname, 'htm') or has_extension(fname, 'html')) then
         return 'html',21
       end