if (!found) {
- msg_debug_composites ("symbol %s in composite %s misses required option %s",
- sym,
- cd->composite->sym,
- (cur_opt->type == RSPAMD_COMPOSITE_OPTION_PLAIN ?
- cur_opt->data.match :
- rspamd_regexp_get_pattern (cur_opt->data.re)));
+ if (cur_opt->type == RSPAMD_COMPOSITE_OPTION_PLAIN) {
+ msg_debug_composites ("symbol %s in composite %s misses required option %s",
+ sym,
+ cd->composite->sym,
+ cur_opt->data.match);
+ }
+ else {
+ msg_debug_composites ("symbol %s in composite %s failed to match regexp %s",
+ sym,
+ cd->composite->sym,
+ rspamd_regexp_get_pattern (cur_opt->data.re));
+ }
+
ms = NULL;
break;
Scan File ${MESSAGE} opts=sym1,foo1
Expect Symbol With Score SYMOPTS1 5.00
Do Not Expect Symbol SYMOPTS2
+ Do Not Expect Symbol SYMOPTS3
Composites - Opts RE Miss both
Scan File ${MESSAGE} opts=sym2
Do Not Expect Symbol SYMOPTS1
Do Not Expect Symbol SYMOPTS2
+ Do Not Expect Symbol SYMOPTS3
Composites - Opts RE Hit
- Scan File ${MESSAGE} opts=sym2,foo1
+ Scan File ${MESSAGE} opts=foo1,sym2
Expect Symbol With Score SYMOPTS2 6.00
Do Not Expect Symbol SYMOPTS1
+ Do Not Expect Symbol SYMOPTS3
+
+Composites - Opts RE Hit 2
+ Scan File ${MESSAGE} opts=foo/,sym2
+ Expect Symbol With Score SYMOPTS3 6.00
+ Do Not Expect Symbol SYMOPTS2
+ Do Not Expect Symbol SYMOPTS1
}
SYMOPTS2 {
- expression = "OPTS[/foo.*/,sym2]";
+ expression = 'OPTS[/foo[0-9]/,sym2]';
+ score = 6.0;
+ }
+ SYMOPTS3 {
+ expression = 'OPTS[sym2,/FoO\\//i]';
score = 6.0;
}
}