]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
[Feature] Store raw headers value to use them in DKIM
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Thu, 7 Jul 2016 14:03:43 +0000 (15:03 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Thu, 7 Jul 2016 14:03:43 +0000 (15:03 +0100)
src/libmime/message.c
src/libmime/message.h

index c74ed1301f81ae510010fe35a627d742ce1a5f78..b7579ba2541a6ab8c170d38117e00dfade445335 100644 (file)
@@ -112,6 +112,8 @@ process_raw_headers (struct rspamd_task *task, GHashTable *target,
                                rspamd_strlcpy (tmp, c, l + 1);
                                new->name = tmp;
                                new->empty_separator = TRUE;
+                               new->raw_value = c;
+                               new->raw_len = p - c; /* Including trailing ':' */
                                p++;
                                state = 2;
                                c = p;
@@ -217,6 +219,7 @@ process_raw_headers (struct rspamd_task *task, GHashTable *target,
                        }
 
                        new->value = tmp;
+                       new->raw_len = p - new->raw_value;
                        new->decoded = g_mime_utils_header_decode_text (new->value);
 
                        if (new->decoded != NULL) {
index 4055dc129829931383d7dbf2573dcd0741fbe8aa..0d2ae74b4ab704a866d514229e01b3aea070984d 100644 (file)
@@ -91,6 +91,8 @@ struct received_header {
 struct raw_header {
        gchar *name;
        gchar *value;
+       const gchar *raw_value; /* As it is in the message (unfolded and unparsed) */
+       gsize raw_len;
        gboolean tab_separated;
        gboolean empty_separator;
        gchar *separator;