coturn TURN server project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
coturn/fuzzing/run-local.sh

47 lines
833 B

#!/usr/bin/env bash
set -euo pipefail
usage() {
cat <<'EOF'
Usage:
fuzzing/run-local.sh [ASan|UBSan|MSan] [0|1] [libFuzzer args...]
Targets:
0 FuzzStun
1 FuzzStunClient
Examples:
fuzzing/run-local.sh ASan 0 -runs=100000
fuzzing/run-local.sh UBSan 1 -max_total_time=60
EOF
}
case "${1:-}" in
-h|--help|help)
usage
exit 0
;;
esac
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
image_name="${COTURN_FUZZ_IMAGE:-coturn-fuzz-local}"
args=("$@")
if [ "${#args[@]}" -eq 0 ]; then
args=(ASan 0)
fi
docker_run_flags=(--rm)
if [ -t 0 ] && [ -t 1 ]; then
docker_run_flags+=(-it)
fi
docker build \
-f "${repo_root}/fuzzing/Dockerfile" \
-t "${image_name}" \
"${repo_root}/fuzzing"
docker run "${docker_run_flags[@]}" \
-v "${repo_root}:/src:ro" \
"${image_name}" \
"${args[@]}"