blob: 2d645d2376dec69e52087c263a62e5baab09018b (
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
29
30
31
32
33
34
35
|
#include <stdint.h>
#include <stdlib.h>
#include "md4c-html.h"
static void
process_output(const MD_CHAR* text, MD_SIZE size, void* userdata)
{
/* This is a dummy function because we don't need to generate any output
* actually. */
return;
}
int
LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
{
unsigned parser_flags, renderer_flags;
if(size < 2 * sizeof(unsigned)) {
/* We interpret the 1st 8 bytes as parser flags and renderer flags. */
return 0;
}
parser_flags = *(unsigned*)data;
data += sizeof(unsigned); size -= sizeof(unsigned);
renderer_flags = *(unsigned*)data;
data += sizeof(unsigned); size -= sizeof(unsigned);
/* Allocate enough space */
md_html(data, size, process_output, NULL, parser_flags, renderer_flags);
return 0;
}
|