aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2018-02-14 14:44:54 +0000
committerVsevolod Stakhov <vsevolod@highsecure.ru>2018-02-14 14:45:25 +0000
commitc11f4f3b96eef519b64b9a98daf93ade96f50bf4 (patch)
tree628c44d6e700d3fe1f5c5645b15f09e8fe4b7e6d /src/plugins
parentdacdc284e792823733fc8ee02739b983640130f9 (diff)
downloadrspamd-c11f4f3b96eef519b64b9a98daf93ade96f50bf4.tar.gz
rspamd-c11f4f3b96eef519b64b9a98daf93ade96f50bf4.zip
[Feature] Improve Lua/C interaction in history_redis
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/lua/history_redis.lua14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/plugins/lua/history_redis.lua b/src/plugins/lua/history_redis.lua
index abeadc801..06f7ec90c 100644
--- a/src/plugins/lua/history_redis.lua
+++ b/src/plugins/lua/history_redis.lua
@@ -29,6 +29,7 @@ local settings = {
local rspamd_logger = require "rspamd_logger"
local rspamd_util = require "rspamd_util"
local lua_util = require "lua_util"
+local lua_redis = require "lua_redis"
local fun = require "fun"
local ucl = require("ucl")
local E = {}
@@ -116,7 +117,7 @@ local function history_save(task)
prefix = prefix .. '_zst'
end
- local ret, conn, _ = rspamd_redis_make_request(task,
+ local ret, conn, _ = lua_redis.rspamd_redis_make_request(task,
redis_params, -- connect params
nil, -- hash key
true, -- is write
@@ -148,7 +149,7 @@ local function handle_history_request(task, conn, from, to, reset)
conn:send_string('{"success":true}')
end
end
- rspamd_redis_make_request(task,
+ lua_redis.rspamd_redis_make_request(task,
redis_params, -- connect params
nil, -- hash key
true, -- is write
@@ -167,7 +168,7 @@ local function handle_history_request(task, conn, from, to, reset)
fun.map(function(e)
local _,dec = rspamd_util.zstd_decompress(e)
if dec then
- return tostring(dec)
+ return dec
end
return nil
end, data)))
@@ -183,7 +184,7 @@ local function handle_history_request(task, conn, from, to, reset)
end,
fun.map(function(elt)
local parser = ucl.parser()
- local res,_ = parser:parse_string(elt)
+ local res,_ = parser:parse_text(elt)
if res then
return true, parser:get_object()
@@ -204,13 +205,14 @@ local function handle_history_request(task, conn, from, to, reset)
conn:send_error(504, '{"error": "' .. err .. '"}')
end
end
- rspamd_redis_make_request(task,
+ lua_redis.rspamd_redis_make_request(task,
redis_params, -- connect params
nil, -- hash key
false, -- is write
redis_lrange_cb, --callback
'LRANGE', -- command
- {prefix, string.format('%d', from), string.format('%d', to)} -- arguments
+ {prefix, string.format('%d', from), string.format('%d', to)}, -- arguments
+ {opaque_data = true}
)
end
end