summaryrefslogtreecommitdiffhomepage
path: root/oss-fuzz/mruby_fuzzer.c
blob: 9d3d44a5ba948bd045e90a5509b9b679ed7d6406 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdlib.h>
#include <string.h>
#include <mruby.h>
#include <mruby/compile.h>

int LLVMFuzzerTestOneInput(uint8_t *Data, size_t size) {
    if (size < 1) {
        return 0;
    }
    char *code = malloc(size+1);
    memcpy(code, Data, size);
    code[size] = '\0';
    mrb_state *mrb = mrb_open();
    mrb_load_string(mrb, code);
    mrb_close(mrb);
    free(code);
    return 0;
}