composite);
if (new) {
- rspamd_symbols_cache_add_symbol (cfg->cache, composite_name, 1, 0,
+ rspamd_symbols_cache_add_symbol (cfg->cache, composite_name, 0,
NULL, NULL, SYMBOL_TYPE_COMPOSITE, -1);
}
struct rspamd_config *cfg = ud;
/* Actually, statistics should act like any ordinary symbol */
- rspamd_symbols_cache_add_symbol (cfg->cache, key, 1.0, 0, NULL, NULL,
+ rspamd_symbols_cache_add_symbol (cfg->cache, key, 0, NULL, NULL,
SYMBOL_TYPE_COMPOSITE, -1);
}
else {
g_hash_table_insert (cfg->composite_symbols, sym, expr);
rspamd_symbols_cache_add_symbol (cfg->cache, sym,
- 1, 0, NULL, NULL, SYMBOL_TYPE_COMPOSITE, -1);
+ 0, NULL, NULL, SYMBOL_TYPE_COMPOSITE, -1);
}
}
}
ret = rspamd_symbols_cache_add_symbol (cfg->cache,
name,
- weight,
priority,
lua_metric_symbol_callback,
cd,
while (lua_next (L, -2)) {
lua_pushvalue (L, -2);
sym = luaL_checkstring (L, -2);
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache, sym,
- weight, ret);
+ rspamd_symbols_cache_add_symbol (cfg->cache, sym,
+ 0, NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL, ret);
lua_pop (L, 2);
}
lua_pop (L, 1);
}
else if (lua_type (L, i) == LUA_TSTRING) {
sym = luaL_checkstring (L, i);
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache, sym,
- weight, ret);
+ rspamd_symbols_cache_add_symbol (cfg->cache, sym,
+ 0, NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL, ret);
}
}
}
}
if (name) {
- ret = rspamd_symbols_cache_add_symbol_virtual (cfg->cache, name,
- weight, parent);
+ ret = rspamd_symbols_cache_add_symbol (cfg->cache, name,
+ 0, NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL, parent);
}
}
if (new) {
rspamd_symbols_cache_add_symbol (cfg->cache, name,
- 1, 0, NULL, NULL, SYMBOL_TYPE_COMPOSITE, -1);
+ 0, NULL, NULL, SYMBOL_TYPE_COMPOSITE, -1);
}
ret = TRUE;
chartable_module_ctx->threshold = DEFAULT_THRESHOLD;
}
- rspamd_symbols_cache_add_symbol_normal (cfg->cache,
+ rspamd_symbols_cache_add_symbol (cfg->cache,
chartable_module_ctx->symbol,
- 1,
+ 0,
chartable_symbol_callback,
- NULL);
+ NULL,
+ SYMBOL_TYPE_NORMAL,
+ -1);
return res;
}
"trusted_only option is set and no trusted domains are defined; disabling dkim module completely as it is useless in this case");
}
else {
- cb_id = rspamd_symbols_cache_add_symbol_normal (cfg->cache,
+ cb_id = rspamd_symbols_cache_add_symbol (cfg->cache,
dkim_module_ctx->symbol_reject,
- 1,
+ 0,
dkim_symbol_callback,
- NULL);
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache,
+ NULL,
+ SYMBOL_TYPE_NORMAL|SYMBOL_TYPE_FINE,
+ -1);
+ rspamd_symbols_cache_add_symbol (cfg->cache,
dkim_module_ctx->symbol_tempfail,
- 1,
+ 0,
+ NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL|SYMBOL_TYPE_FINE,
cb_id);
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache,
+ rspamd_symbols_cache_add_symbol (cfg->cache,
dkim_module_ctx->symbol_allow,
- 1,
+ 0,
+ NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL|SYMBOL_TYPE_FINE,
cb_id);
dkim_module_ctx->dkim_hash = rspamd_lru_hash_new (
/* Add flag to hash table */
g_hash_table_insert (rule->mappings,
GINT_TO_POINTER (map->fuzzy_flag), map);
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache,
- map->symbol, 1.0, cb_id);
+ rspamd_symbols_cache_add_symbol (cfg->cache,
+ map->symbol, 0,
+ NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL|SYMBOL_TYPE_FINE,
+ cb_id);
}
else {
msg_err ("fuzzy_map parameter has no flag definition");
fuzzy_module_ctx->fuzzy_rules,
rule);
if (rule->symbol != fuzzy_module_ctx->default_symbol) {
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache, rule->symbol,
- 1.0, cb_id);
+ rspamd_symbols_cache_add_symbol (cfg->cache, rule->symbol,
+ 0,
+ NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL|SYMBOL_TYPE_FINE,
+ cb_id);
}
}
if ((value =
rspamd_config_get_module_opt (cfg, "fuzzy_check", "rule")) != NULL) {
- cb_id = rspamd_symbols_cache_add_symbol_callback (cfg->cache,
- 1.0, fuzzy_symbol_callback, NULL);
+ cb_id = rspamd_symbols_cache_add_symbol (cfg->cache,
+ "FUZZY_CALLBACK", 0, fuzzy_symbol_callback, NULL,
+ SYMBOL_TYPE_CALLBACK|SYMBOL_TYPE_FINE,
+ -1);
LL_FOREACH (value, cur) {
fuzzy_parse_rule (cfg, cur, cb_id);
res = FALSE;
}
else {
- rspamd_symbols_cache_add_symbol_normal (cfg->cache,
+ rspamd_symbols_cache_add_symbol (cfg->cache,
cur_item->symbol,
- 1,
+ 0,
process_regexp_item,
- cur_item);
+ cur_item,
+ SYMBOL_TYPE_NORMAL, -1);
}
}
else if (value->type == UCL_USERDATA) {
sizeof (struct regexp_module_item));
cur_item->symbol = ucl_object_key (value);
cur_item->lua_function = ucl_object_toclosure (value);
- rspamd_symbols_cache_add_symbol_normal (cfg->cache,
+ rspamd_symbols_cache_add_symbol (cfg->cache,
cur_item->symbol,
- 1,
+ 0,
process_regexp_item,
- cur_item);
+ cur_item,
+ SYMBOL_TYPE_NORMAL, -1);
}
else {
msg_warn ("unknown type of attribute %s for regexp module",
}
}
- cb_id = rspamd_symbols_cache_add_symbol_normal (cfg->cache,
+ cb_id = rspamd_symbols_cache_add_symbol (cfg->cache,
spf_module_ctx->symbol_fail,
- 1,
+ 0,
spf_symbol_callback,
- NULL);
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache,
- spf_module_ctx->symbol_softfail, 1, cb_id);
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache,
- spf_module_ctx->symbol_neutral, 1, cb_id);
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache,
- spf_module_ctx->symbol_allow, 1, cb_id);
+ NULL,
+ SYMBOL_TYPE_NORMAL|SYMBOL_TYPE_FINE, -1);
+ rspamd_symbols_cache_add_symbol (cfg->cache,
+ spf_module_ctx->symbol_softfail, 0,
+ NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL,
+ cb_id);
+ rspamd_symbols_cache_add_symbol (cfg->cache,
+ spf_module_ctx->symbol_neutral, 0,
+ NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL,
+ cb_id);
+ rspamd_symbols_cache_add_symbol (cfg->cache,
+ spf_module_ctx->symbol_allow, 0,
+ NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL,
+ cb_id);
spf_module_ctx->spf_hash = rspamd_lru_hash_new (
cache_size,
while (g_hash_table_iter_next (&it, &k, &v)) {
bit = v;
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache, bit->symbol,
- 1, parent_id);
+ rspamd_symbols_cache_add_symbol (cfg->cache, bit->symbol,
+ 0, NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL, parent_id);
msg_debug ("bit: %d", bit->bit);
}
}
else if (suffix->bits != NULL) {
for (i = 0; i < suffix->bits->len; i++) {
bit = &g_array_index (suffix->bits, struct surbl_bit_item, i);
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache, bit->symbol,
- 1, parent_id);
+ rspamd_symbols_cache_add_symbol (cfg->cache, bit->symbol,
+ 0, NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL, parent_id);
}
}
else {
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache, suffix->symbol,
- 1, parent_id);
+ rspamd_symbols_cache_add_symbol (cfg->cache, suffix->symbol,
+ 0, NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL, parent_id);
}
}
surbl_module_ctx->redirector_symbol = ucl_obj_tostring (value);
rspamd_symbols_cache_add_symbol (cfg->cache,
surbl_module_ctx->redirector_symbol,
- 1.0, 0, NULL, NULL, SYMBOL_TYPE_COMPOSITE, -1);
+ 0, NULL, NULL, SYMBOL_TYPE_COMPOSITE, -1);
}
else {
surbl_module_ctx->redirector_symbol = NULL;
}
}
- cb_id = rspamd_symbols_cache_add_symbol_callback (cfg->cache,
- 1,
- surbl_test_url,
- new_suffix);
+ cb_id = rspamd_symbols_cache_add_symbol (cfg->cache,
+ "SURBL_CALLBACK",
+ 0,
+ surbl_test_url,
+ new_suffix,
+ SYMBOL_TYPE_CALLBACK,
+ -1);
new_suffix->callback_id = cb_id;
has_subsymbols = FALSE;
if (!has_subsymbols) {
/* Register just a symbol itself */
- rspamd_symbols_cache_add_symbol_virtual (cfg->cache,
+ rspamd_symbols_cache_add_symbol (cfg->cache,
new_suffix->symbol,
- 1,
+ 0,
+ NULL, NULL,
+ SYMBOL_TYPE_VIRTUAL,
cb_id);
}
surbl_module_ctx->suffixes = g_list_prepend (