summaryrefslogtreecommitdiffstats
path: root/src/libmime/message.c
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2018-10-11 15:35:07 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2018-10-11 15:35:07 +0100
commit98f0a701b71191a7b0373b8dd511bcf5f409e440 (patch)
treee94d06ebaed1bdccaeb4e5613a5d2603a3e6c238 /src/libmime/message.c
parentf5051a01e8d0c622682f8a282b818ff3a31be01a (diff)
downloadrspamd-98f0a701b71191a7b0373b8dd511bcf5f409e440.tar.gz
rspamd-98f0a701b71191a7b0373b8dd511bcf5f409e440.zip
[Project] Finish rework of passthrough actions
Diffstat (limited to 'src/libmime/message.c')
-rw-r--r--src/libmime/message.c24
1 files changed, 11 insertions, 13 deletions
diff --git a/src/libmime/message.c b/src/libmime/message.c
index 4206211c1..43158d083 100644
--- a/src/libmime/message.c
+++ b/src/libmime/message.c
@@ -32,6 +32,8 @@
#include "libstemmer.h"
#endif
+#include <math.h>
+
#define GTUBE_SYMBOL "GTUBE"
#define SET_PART_RAW(part) ((part)->flags &= ~RSPAMD_MIME_TEXT_PART_FLAG_UTF)
@@ -854,22 +856,18 @@ rspamd_message_process_text_part_maybe (struct rspamd_task *task,
act = rspamd_check_gtube (task, text_part);
if (act != METRIC_ACTION_NOACTION) {
- struct rspamd_metric_result *mres;
-
- mres = task->result;
+ struct rspamd_metric_result *mres = task->result;
+ gdouble score = NAN;
- if (mres != NULL) {
- if (act == METRIC_ACTION_REJECT) {
- mres->score = rspamd_task_get_required_score (task, mres);
- }
- else {
- mres->score = mres->actions_limits[act];
- }
+ if (act == METRIC_ACTION_REJECT) {
+ score = rspamd_task_get_required_score (task, mres);
+ }
+ else {
+ score = mres->actions_limits[act];
}
- task->result = mres;
- task->pre_result.action = act;
- task->pre_result.str = "Gtube pattern";
+ rspamd_add_passthrough_result (task, act, RSPAMD_PASSTHROUGH_CRITICAL,
+ score, "Gtube pattern", "GTUBE");
if (ucl_object_lookup (task->messages, "smtp_message") == NULL) {
ucl_object_replace_key (task->messages,