blob: 1cb4bdca02b9cfb398c47dfa7ca524c32b158278 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
/* Copyright (c) 2020 Dovecot authors, see the included COPYING file */
#include "lib.h"
#include "istream.h"
#include "test-common.h"
#include "test-common.h"
#include "fuzzer.h"
#include "message-parser.h"
FUZZ_BEGIN_DATA(const unsigned char *data, size_t size)
{
struct istream *input = test_istream_create_data(data, size);
const struct message_parser_settings set = {
.hdr_flags = 0,
.flags = MESSAGE_PARSER_FLAG_INCLUDE_MULTIPART_BLOCKS,
.max_nested_mime_parts = 0,
.max_total_mime_parts = 0,
};
struct message_parser_ctx *ctx =
message_parser_init(pool_datastack_create(), input, &set);
struct message_block block ATTR_UNUSED;
i_zero(&block);
while(message_parser_parse_next_block(ctx, &block) > -1);
struct message_part *part ATTR_UNUSED;
message_parser_deinit(&ctx, &part);
i_stream_unref(&input);
}
FUZZ_END
|