From: Aki Tuomi Date: Wed, 8 Sep 2021 07:39:36 +0000 (+0300) Subject: lib-mail: Add test for empty header value X-Git-Tag: 2.3.17~40 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=211040d8369630621d8908025a1df4db5a8cc097;p=thirdparty%2Fdovecot%2Fcore.git lib-mail: Add test for empty header value --- diff --git a/src/lib-mail/test-message-header-parser.c b/src/lib-mail/test-message-header-parser.c index 0b3ffc828a..700d3413f1 100644 --- a/src/lib-mail/test-message-header-parser.c +++ b/src/lib-mail/test-message-header-parser.c @@ -17,6 +17,7 @@ static const char *test1_msg = "h3: \r\n" "\tv3\n" "\tw3\r\n" + "h4: \r\n" "\n" " body"; @@ -117,7 +118,16 @@ test_message_header_parser_one(struct message_header_parser_ctx *parser, } test_assert(message_parse_header_next(parser, &hdr) > 0); - test_assert(hdr->name_offset == 32 && hdr->full_value_offset == 32); + test_assert(hdr->name_offset == 32 && hdr->full_value_offset == 36); + test_assert(hdr->name_len == 2 && strcmp(hdr->name, "h4") == 0); + test_assert(hdr->middle_len == 2 && memcmp(hdr->middle, ": ", 2) == 0); + test_assert(hdr->value_len == 0 && memcmp(hdr->value, "", 0) == 0); + test_assert(!hdr->continues && !hdr->continued && !hdr->eoh && + !hdr->no_newline && hdr->crlf_newline); + test_assert(hdr->full_value_len == 0 && hdr->full_value != NULL); + + test_assert(message_parse_header_next(parser, &hdr) > 0); + test_assert(hdr->name_offset == 38 && hdr->full_value_offset == 38); test_assert(hdr->name_len == 0 && hdr->middle_len == 0 && hdr->value_len == 0); test_assert(!hdr->continues && !hdr->continued && hdr->eoh && !hdr->no_newline && !hdr->crlf_newline);