From 58c0ecaa2e171681c25462d29ed1acb609ba40b2 Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Sun, 13 Sep 2020 23:29:02 +0100 Subject: [Minor] Selectors: Add `get_tld` transform --- lualib/lua_selectors/transforms.lua | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'lualib/lua_selectors') diff --git a/lualib/lua_selectors/transforms.lua b/lualib/lua_selectors/transforms.lua index 6f5ed7027..e5987a216 100644 --- a/lualib/lua_selectors/transforms.lua +++ b/lualib/lua_selectors/transforms.lua @@ -16,6 +16,7 @@ limitations under the License. local fun = require 'fun' local lua_util = require "lua_util" +local rspamd_util = require "rspamd_util" local ts = require("tableshape").types local logger = require 'rspamd_logger' local common = require "lua_selectors/common" @@ -428,7 +429,18 @@ Empty string comes the first argument or 'true', non-empty string comes nil]], 'given as second argument or `?`', ['args_schema'] = {ts.string:is_optional()} }, - + -- Extracts tld from a hostname + ['get_tld'] = { + ['types'] = { + ['string'] = true + }, + ['map_type'] = 'string', + ['process'] = function(inp, _, _) + return rspamd_util.get_tld(inp) + end, + ['description'] = 'Extracts tld from a hostname represented as a string', + ['args_schema'] = {} + }, } transform_function.match = transform_function.regexp -- cgit v1.2.3