mirror of
https://github.com/rspamd/rspamd.git
synced 2024-08-23 05:54:56 +02:00
[Minor] Add starting mark to patterns with offset 0
This commit is contained in:
parent
9d178a5c16
commit
231ab5e95d
@ -62,8 +62,14 @@ local function process_patterns(log_obj)
|
||||
short_patterns[#short_patterns + 1] = {
|
||||
str, match, pattern
|
||||
}
|
||||
lua_util.debugm(N, log_obj, 'add short pattern %s for ext %s',
|
||||
str, pattern.ext)
|
||||
if str:sub(1, 1) == '^' then
|
||||
lua_util.debugm(N, log_obj, 'add head pattern %s for ext %s',
|
||||
str, pattern.ext)
|
||||
else
|
||||
lua_util.debugm(N, log_obj, 'add short pattern %s for ext %s',
|
||||
str, pattern.ext)
|
||||
end
|
||||
|
||||
|
||||
if max_short_offset < match.position then
|
||||
max_short_offset = match.position
|
||||
@ -94,6 +100,12 @@ local function process_patterns(log_obj)
|
||||
if match.string then
|
||||
if match.relative_position and not match.position then
|
||||
match.position = match.relative_position + #match.string
|
||||
|
||||
if match.relative_position == 0 then
|
||||
if match.string:sub(1, 1) ~= '^' then
|
||||
match.string = '^' .. match.string
|
||||
end
|
||||
end
|
||||
end
|
||||
add_processed(match.string, match, pattern)
|
||||
elseif match.hex then
|
||||
@ -107,6 +119,9 @@ local function process_patterns(log_obj)
|
||||
if match.relative_position and not match.position then
|
||||
match.position = match.relative_position + #match.hex / 2
|
||||
end
|
||||
if match.relative_position == 0 then
|
||||
table.insert(hex_table, 1, '^')
|
||||
end
|
||||
add_processed(table.concat(hex_table), match, pattern)
|
||||
end
|
||||
end
|
||||
|
@ -26,17 +26,17 @@ local patterns = {
|
||||
-- These are alternatives
|
||||
matches = {
|
||||
{
|
||||
string = [[%PDF-\d]],
|
||||
string = [[^%PDF-\d]],
|
||||
position = 6, -- must be end of the match, as that's how hyperscan works (or use relative_position)
|
||||
weight = 60,
|
||||
},
|
||||
{
|
||||
string = [[\012%PDF-\d]],
|
||||
string = [[^\012%PDF-\d]],
|
||||
position = 7,
|
||||
weight = 60,
|
||||
},
|
||||
{
|
||||
string = [[%FDF-\d]],
|
||||
string = [[^%FDF-\d]],
|
||||
position = 6,
|
||||
weight = 60,
|
||||
},
|
||||
@ -55,7 +55,7 @@ local patterns = {
|
||||
rtf = {
|
||||
matches = {
|
||||
{
|
||||
string = [[{\\rt]],
|
||||
string = [[^{\\rt]],
|
||||
position = 4,
|
||||
weight = 60,
|
||||
}
|
||||
@ -181,7 +181,7 @@ local patterns = {
|
||||
bz2 = {
|
||||
matches = {
|
||||
{
|
||||
string = "BZ[h0]",
|
||||
string = "^BZ[h0]",
|
||||
position = 3,
|
||||
weight = 60,
|
||||
},
|
||||
@ -215,7 +215,7 @@ local patterns = {
|
||||
zst = {
|
||||
matches = {
|
||||
{
|
||||
string = [[[\x{22}-\x{40}]\x{B5}\x{2F}\x{FD}]],
|
||||
string = [[^[\x{22}-\x{40}]\x{B5}\x{2F}\x{FD}]],
|
||||
position = 4,
|
||||
weight = 60,
|
||||
},
|
||||
@ -374,7 +374,7 @@ local patterns = {
|
||||
dwg = {
|
||||
matches = {
|
||||
{
|
||||
string = 'AC10[12][2-9]',
|
||||
string = '^AC10[12][2-9]',
|
||||
position = 6,
|
||||
weight = 60,
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user