]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
[Minor] Add method to init DNS subsystem
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Tue, 11 Sep 2018 13:42:28 +0000 (14:42 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Tue, 11 Sep 2018 13:42:28 +0000 (14:42 +0100)
src/lua/lua_config.c

index 0a560c34a08659f4c057bf7745000144a81f80ac..382a34a0b4a682b1836cccfdc1466bc03631df8e 100644 (file)
@@ -718,6 +718,7 @@ LUA_FUNCTION_DEF (config, init_modules);
  * Initialize config subsystem from a comma separated list:
  * - `modules` - init modules
  * - `langdet` - language detector
+ * - `dns` - DNS resolver
  * - TODO: add more
  */
 LUA_FUNCTION_DEF (config, init_subsystem);
@@ -3551,6 +3552,18 @@ lua_config_init_subsystem (lua_State *L)
                        else if (strcmp (parts[i], "stat") == 0) {
                                rspamd_stat_init (cfg, NULL);
                        }
+                       else if (strcmp (parts[i], "dns") == 0) {
+                               struct event_base *ev_base = lua_check_ev_base (L, 3);
+
+                               if (ev_base) {
+                                       cfg->dns_resolver = dns_resolver_init (rspamd_logger_get_singleton(),
+                                                       ev_base,
+                                                       cfg);
+                               }
+                               else {
+                                       return luaL_error (L, "no event base specified");
+                               }
+                       }
                        else {
                                return luaL_error (L, "invalid param: %s", parts[i]);
                        }