Mercurial > dovecot > core-2.2
changeset 19584:5795761cec2b
lib-mail: Added message_header_line_write()
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Mon, 18 Jan 2016 14:56:24 +0200 |
parents | b0707e5a89cd |
children | 796996d66955 |
files | src/lib-mail/message-header-parser.c src/lib-mail/message-header-parser.h |
diffstat | 2 files changed, 20 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-mail/message-header-parser.c Fri Jan 15 14:11:34 2016 +0200 +++ b/src/lib-mail/message-header-parser.c Mon Jan 18 14:56:24 2016 +0200 @@ -394,3 +394,18 @@ /* call after the final skipping */ callback(NULL, context); } + +void message_header_line_write(buffer_t *output, + const struct message_header_line *hdr) +{ + if (!hdr->continued) { + buffer_append(output, hdr->name, strlen(hdr->name)); + buffer_append(output, hdr->middle, hdr->middle_len); + } + buffer_append(output, hdr->value, hdr->value_len); + if (!hdr->no_newline) { + if (hdr->crlf_newline) + buffer_append_c(output, '\r'); + buffer_append_c(output, '\n'); + } +}
--- a/src/lib-mail/message-header-parser.h Fri Jan 15 14:11:34 2016 +0200 +++ b/src/lib-mail/message-header-parser.h Mon Jan 18 14:56:24 2016 +0200 @@ -69,4 +69,9 @@ struct message_header_line *hdr, typeof(context))), \ (message_header_callback_t *)callback, context) +/* Write the header line to buffer exactly as it was read, including the + newline. */ +void message_header_line_write(buffer_t *output, + const struct message_header_line *hdr); + #endif