#!/bin/sh
# DF-0843 run.sh - run the deterministic harness (the PRIMARY proof).
# Transcribes the unlocked recycle-vs-lookup UAF with a poisoned allocator,
# then re-runs in LOCKED mode (modeling the fix) to show the race closes.
set -e
cd "$(dirname "$0")"
echo "=== DF-0843 race harness (primary proof) ==="
echo "--- UNLOCKED: current kernel (no global dirhash lock) ---"
./harness 100 50000 0
echo
echo "--- UNLOCKED: natural timing (no widened window) ---"
./harness 20000 0 0
echo
echo "--- LOCKED: models the fix (recycle exclusive, lookup shared) ---"
./harness 100 50000 1
