it = ucl_object_iterate_new (obj);
while ((cur = ucl_object_iterate_safe (it, true)) != NULL) {
- if (!rspamd_action_from_str (ucl_object_key (cur), &action_value)) {
- continue;
+ if (ucl_object_type (cur) == UCL_NULL) {
+ rspamd_config_maybe_disable_action (cfg, ucl_object_key (cur),
+ ucl_object_get_priority (cur));
}
else {
- if (ucl_object_type (cur) == UCL_NULL) {
- rspamd_config_maybe_disable_action (cfg, ucl_object_key (cur),
- ucl_object_get_priority (cur));
- }
- else {
- if (!ucl_object_todouble_safe (cur, &action_score)) {
- g_set_error (err,
- CFG_RCL_ERROR,
- EINVAL,
- "invalid action definition: '%s'",
- ucl_object_key (cur));
- ucl_object_iterate_free (it);
+ if (!rspamd_config_set_action_score (cfg,
+ ucl_object_key (cur),
+ cur)) {
+ g_set_error (err,
+ CFG_RCL_ERROR,
+ EINVAL,
+ "invalid action definition for: '%s'",
+ ucl_object_key (cur));
+ ucl_object_iterate_free (it);
- return FALSE;
- }
+ return FALSE;
}
-
- rspamd_config_set_action_score (cfg,
- ucl_object_key (cur),
- cur);
}
}