From 9e3e6a789caa56a7d2286f1fa75b154d56ecacae Mon Sep 17 00:00:00 2001 From: Andrew Lewis Date: Mon, 19 Jun 2017 17:02:13 +0200 Subject: [PATCH] [Feature] Multimap: received filters for extracting TLDs from hostnames --- src/plugins/lua/multimap.lua | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/plugins/lua/multimap.lua b/src/plugins/lua/multimap.lua index e2bde2a32..0e7da23e1 100644 --- a/src/plugins/lua/multimap.lua +++ b/src/plugins/lua/multimap.lua @@ -551,7 +551,12 @@ local function multimap_callback(task, rule) end local function match_received_header(r, pos, total, h) + local use_tld = false local filter = r['filter'] or 'real_ip' + if filter:match('^tld:') then + filter = filter:sub(5) + use_tld = true + end local v = h[filter] if v then local min_pos = tonumber(r['min_pos']) @@ -590,6 +595,9 @@ local function multimap_callback(task, rule) match_rule(r, v) end else + if use_tld and type(v) == 'string' then + v = util.get_tld(v) + end match_rule(r, v) end end -- 2.39.5