You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

global_functions.lua 1.2KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. local logger = require "rspamd_logger"
  2. local lua_util = require "lua_util"
  3. local lua_redis = require "lua_redis"
  4. local meta_functions = require "meta_functions"
  5. local maps = require "maps"
  6. local exports = {}
  7. exports.rspamd_parse_redis_server = lua_redis.rspamd_parse_redis_server
  8. exports.parse_redis_server = lua_redis.rspamd_parse_redis_server
  9. exports.rspamd_redis_make_request = lua_redis.rspamd_redis_make_request
  10. exports.redis_make_request = lua_redis.rspamd_redis_make_request
  11. exports.rspamd_gen_metatokens = meta_functions.rspamd_gen_metatokens
  12. exports.rspamd_count_metatokens = meta_functions.rspamd_count_metatokens
  13. exports.rspamd_map_add = maps.rspamd_map_add
  14. exports.rspamd_str_split = lua_util.rspamd_str_split
  15. -- a special syntax sugar to export all functions to the global table
  16. setmetatable(exports, {
  17. __call = function(t, override)
  18. for k, v in pairs(t) do
  19. if _G[k] ~= nil then
  20. local msg = 'function ' .. k .. ' already exists in global scope.'
  21. if override then
  22. _G[k] = v
  23. logger.errx('WARNING: ' .. msg .. ' Overwritten.')
  24. else
  25. logger.errx('NOTICE: ' .. msg .. ' Skipped.')
  26. end
  27. else
  28. _G[k] = v
  29. end
  30. end
  31. end,
  32. })
  33. return exports