Coverage Report

Created: 2026-01-09 07:05

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/bag/fuzzers/bag_read_fuzzer.cpp
Line
Count
Source
1
#include <stddef.h>
2
#include <stdint.h>
3
#include <unistd.h>
4
5
#include "bag_dataset.h"
6
7
using BAG::Dataset;
8
9
10
320
extern "C" int LLVMFuzzerTestOneInput(const uint8_t *buf, size_t len) {
11
12
320
    char filename[256];
13
320
    snprintf(filename, 255, "/tmp/libfuzzer.%d", getpid());
14
15
    // Save input file to temporary file so that we can read it.
16
320
    FILE *fp = fopen(filename, "wb");
17
320
    if (!fp) {
18
0
        return 0;
19
0
    }
20
320
    fwrite(buf, len, 1, fp);
21
320
    fclose(fp);
22
23
320
    auto pDataset = Dataset::open(filename, BAG_OPEN_READONLY);
24
320
    if (pDataset != NULL) {
25
179
        pDataset->close();
26
179
    }
27
28
320
    return 0;
29
320
}