# Default settings
dns_max_requests = 64;
max_lua_urls = 1024;
+max_urls = 10240;
dns {
timeout = 1s;
guint lua_gc_pause; /**< lua gc pause */
guint full_gc_iters; /**< iterations between full gc cycle */
guint max_lua_urls; /**< maximum number of urls to be passed to Lua */
+ guint max_urls; /**< maximum number of urls to be processed in general */
guint max_blas_threads; /**< maximum threads for openblas when learning ANN */
guint max_opts_len; /**< maximum length for all options for a symbol */
G_STRUCT_OFFSET (struct rspamd_config, max_lua_urls),
RSPAMD_CL_FLAG_INT_32,
"Maximum count of URLs to pass to Lua to avoid DoS (default: 1024)");
+ rspamd_rcl_add_default_handler (sub,
+ "max_urls",
+ rspamd_rcl_parse_struct_integer,
+ G_STRUCT_OFFSET (struct rspamd_config, max_urls),
+ RSPAMD_CL_FLAG_INT_32,
+ "Maximum count of URLs to process to avoid DoS (default: 10240)");
rspamd_rcl_add_default_handler (sub,
"max_blas_threads",
rspamd_rcl_parse_struct_integer,
cfg->log_error_elt_maxlen = 1000;
cfg->cache_reload_time = 30.0;
cfg->max_lua_urls = 1024;
+ cfg->max_urls = cfg->max_lua_urls * 10;
cfg->max_blas_threads = 1;
cfg->max_opts_len = 4096;
if (target_tbl) {
/* Also check max urls */
- if (cbd->task->cfg && cbd->task->cfg->max_lua_urls > 0) {
- if (g_hash_table_size (target_tbl) > cbd->task->cfg->max_lua_urls) {
+ if (cbd->task->cfg && cbd->task->cfg->max_urls > 0) {
+ if (g_hash_table_size (target_tbl) > cbd->task->cfg->max_urls) {
msg_err_task ("part has too many URLs, we cannot process more: "
"%d urls extracted ",
(guint)g_hash_table_size (target_tbl));