From: Vsevolod Stakhov Date: Tue, 23 Sep 2014 15:38:18 +0000 (+0100) Subject: Add pre-result as `reason` key for the output. X-Git-Tag: 0.7.1~11 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1018b509c8a9d2c0b48fc34510b6a32095733959;p=thirdparty%2Frspamd.git Add pre-result as `reason` key for the output. --- diff --git a/src/client/rspamc.c b/src/client/rspamc.c index f347eabd1d..74f5ae1118 100644 --- a/src/client/rspamc.c +++ b/src/client/rspamc.c @@ -501,6 +501,10 @@ rspamc_symbols_output (ucl_object_t *obj) rspamd_fprintf (stdout, "Scan error: %s\n", ucl_object_tostring ( cur)); } + else if (g_ascii_strcasecmp (ucl_object_key (cur), "reason") == 0) { + rspamd_fprintf (stdout, "Reason: %s\n", ucl_object_tostring ( + cur)); + } else if (cur->type == UCL_OBJECT) { /* Parse metric */ rspamc_metric_output (cur); diff --git a/src/libserver/protocol.c b/src/libserver/protocol.c index 56f29071c6..9ecb3c6421 100644 --- a/src/libserver/protocol.c +++ b/src/libserver/protocol.c @@ -790,6 +790,7 @@ rspamd_protocol_http_reply (struct rspamd_http_message *msg, rspamd_http_message_add_header (msg, hn->str, hv->str); } + g_hash_table_iter_init (&hiter, task->results); top = ucl_object_typed_new (UCL_OBJECT); @@ -800,6 +801,11 @@ rspamd_protocol_http_reply (struct rspamd_http_message *msg, ucl_object_insert_key (top, obj, h, 0, false); } + if (task->pre_result.str != NULL) { + ucl_object_insert_key (top, ucl_object_fromstring (task->pre_result.str), + "reason", 0, false); + } + if (task->messages != NULL) { ucl_object_insert_key (top, rspamd_str_list_ucl ( task->messages), "messages", 0, false);