summaryrefslogtreecommitdiffstats
path: root/lualib/lua_magic
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2019-09-09 13:07:50 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2019-09-09 13:07:50 +0100
commit6d97c8f9bfe5ddf16b53c9b8f8d11258c0af8f36 (patch)
tree04fe41ead8809ea30a794e62ef4043c40e64cab6 /lualib/lua_magic
parente7ebcf91c7a7649d758d1ef8f7b993500cc32a97 (diff)
downloadrspamd-6d97c8f9bfe5ddf16b53c9b8f8d11258c0af8f36.tar.gz
rspamd-6d97c8f9bfe5ddf16b53c9b8f8d11258c0af8f36.zip
[Project] Lua_magic: Add more types
Diffstat (limited to 'lualib/lua_magic')
-rw-r--r--lualib/lua_magic/heuristics.lua3
-rw-r--r--lualib/lua_magic/patterns.lua9
-rw-r--r--lualib/lua_magic/types.lua8
3 files changed, 20 insertions, 0 deletions
diff --git a/lualib/lua_magic/heuristics.lua b/lualib/lua_magic/heuristics.lua
index 60ff57224..8469fa9f8 100644
--- a/lualib/lua_magic/heuristics.lua
+++ b/lualib/lua_magic/heuristics.lua
@@ -51,6 +51,7 @@ local zip_patterns = {
[[mimetypeapplication/vnd\.oasis\.opendocument.formula]],
[[mimetypeapplication/vnd\.oasis\.opendocument\.chart]]},
odp = {[[mimetypeapplication/vnd\.oasis\.opendocument\.presentation]]},
+ epub = {[[epub\+zip]]}
}
-- Used to match pattern index and extension
@@ -236,6 +237,8 @@ local function detect_archive_flaw(part, arch, log_obj)
res.docx = res.docx + 30
elseif file:sub(1, 4) == 'ppt/' then
res.pptx = res.pptx + 30
+ elseif file == 'META-INF/MANIFEST.MF' then
+ res.jar = res.jar + 40
end
end
diff --git a/lualib/lua_magic/patterns.lua b/lualib/lua_magic/patterns.lua
index 87ed3c0e9..630f287ce 100644
--- a/lualib/lua_magic/patterns.lua
+++ b/lualib/lua_magic/patterns.lua
@@ -224,6 +224,15 @@ local patterns = {
},
}
},
+ xar = {
+ matches = {
+ {
+ string = [[xar!]],
+ relative_position = 0,
+ weight = 60,
+ },
+ }
+ },
iso = {
matches = {
{
diff --git a/lualib/lua_magic/types.lua b/lualib/lua_magic/types.lua
index e8e4e45e2..3ecd0575a 100644
--- a/lualib/lua_magic/types.lua
+++ b/lualib/lua_magic/types.lua
@@ -105,6 +105,14 @@ local types = {
ct = 'application/x-zoo',
type = 'archive',
},
+ xar = {
+ ct = 'application/x-xar',
+ type = 'archive',
+ },
+ epub = {
+ ct = 'application/x-epub',
+ type = 'archive'
+ },
szdd = { -- in fact, their MSDOS extension is like FOO.TX_ or FOO.TX$
ct = 'application/x-compressed',
type = 'archive',