summaryrefslogtreecommitdiffstats
path: root/.clusterfuzzlite/run-locally.sh
blob: b62fc0b5f0a070c43cd2a55d365210d7d5efd32a (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
36
#!/bin/sh

# Change to parent directory, so that the script can be called from anywhere.
parent_path=$(cd "$(dirname "${0}")" && pwd)
cd "${parent_path}" || exit 1

mkdir -p build/out
mkdir -p build/work

cd .. || exit 2

docker build -t kea-fuzzing -f .clusterfuzzlite/Dockerfile .

docker_run() {
  docker run \
    --interactive \
    --privileged \
    --platform linux/amd64 \
    --rm \
    --shm-size=2g \
    -e ARCHITECTURE=x86_64 \
    -e CIFUZZ=true \
    -e FUZZING_ARGS='-rss_limit_mb=8192' \
    -e FUZZING_ENGINE=libfuzzer \
    -e FUZZING_LANGUAGE=c++ \
    -e KEA_BUILD_DIR=/src \
    -e SANITIZER=address \
    -v "${parent_path}/build/out:/out" \
    -v "${parent_path}/build/work:/work" \
    kea-fuzzing \
    "${@}"
}

docker_run

docker_run compile