]> source.dussan.org Git - rspamd.git/commitdiff
[Minor] Allow to output new body in rspamc
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 22 Jul 2019 11:10:27 +0000 (12:10 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 22 Jul 2019 11:10:27 +0000 (12:10 +0100)
src/client/rspamc.c

index e118688d06ba76f1bece486cb9afce7a6412fa81..abea78da745398a8d082c8b58a56c561b2c12dd0 100644 (file)
@@ -672,6 +672,8 @@ add_options (GQueue *opts)
                ADD_CLIENT_FLAG (flagbuf, "profile");
        }
 
+       ADD_CLIENT_FLAG (flagbuf, "body_block");
+
        if (skip_images) {
                ADD_CLIENT_HEADER (opts, "Skip-Images", "true");
        }
@@ -1547,7 +1549,16 @@ rspamc_client_cb (struct rspamd_client_connection *conn,
        else {
 
                if (cmd->cmd == RSPAMC_COMMAND_SYMBOLS && mime_output && input) {
-                       rspamc_mime_output (out, result, input, diff, err);
+                       if (body) {
+                               GString tmp;
+
+                               tmp.str = (char *)body;
+                               tmp.len = bodylen;
+                               rspamc_mime_output (out, result, &tmp, diff, err);
+                       }
+                       else {
+                               rspamc_mime_output (out, result, input, diff, err);
+                       }
                }
                else {
                        if (cmd->need_input) {
@@ -1596,6 +1607,11 @@ rspamc_client_cb (struct rspamd_client_connection *conn,
                                        cmd->command_output_func (out, result);
                                }
 
+                               if (body) {
+                                       rspamd_fprintf (out, "\nNew body:\n%*s\n", (int)bodylen,
+                                                       body);
+                               }
+
                                ucl_object_unref (result);
                        }
                        else if (err != NULL) {