From b05abcba3ea09ea106ad28364c6e40a3ec31b890 Mon Sep 17 00:00:00 2001 From: Gabriel Schneider Date: Sat, 19 Sep 2026 21:26:05 -0300 Subject: Add 9player and introspect as programs beside the library 9player/: FUSE mount CLI that mounts a 9P2000 tree into a fresh user+mount namespace and runs a program in it (no root, no libfuse, no libc). introspect/: the 9P debug/introspection library (freestanding core, value renderers, Linux probe with threads/stacks/memory/breakpoints/panics) and its demo server. Each has its own build fragment; the root build.zig wires them behind -D9player/-Dintrospect with namespaced steps (9player-itest, introspect-check-freestanding, programs-test, ...) and exports the introspect module for dependents. This is the layout for related programs. Co-Authored-By: Claude Fable 5.1 --- introspect/test/adv_core_hostile.sh | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100755 introspect/test/adv_core_hostile.sh (limited to 'introspect/test/adv_core_hostile.sh') diff --git a/introspect/test/adv_core_hostile.sh b/introspect/test/adv_core_hostile.sh new file mode 100755 index 0000000..bf4f812 --- /dev/null +++ b/introspect/test/adv_core_hostile.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash +# Adversarial raw-9P2000 client tests aimed at the introspect core. +# Usage: bash introspect/test/adv_core_hostile.sh [--fast] (part of zig build introspect-adv) +# Spawns the server on a temporary unix socket and attacks it with +# introspect/test/adv_core_hostile.py (Python 3 stdlib). Exit 1 on any failure. +set -u +INTROSPECT=$(realpath "${1:?path to introspect}") +shift +command -v python3 >/dev/null || { echo "SKIP: python3 missing"; exit 0; } +exec python3 "$(dirname "$0")/adv_core_hostile.py" --server "$INTROSPECT" "$@" -- cgit v1.3