#!/bin/sh
# DF-0195 build: unprivileged reader (maxx) + detach-side harness KLD (root).
# The reader builds as the unprivileged user; the harness module is built by
# root (it is only a *detach trigger* that simulates a device going away).
set -e

# 1) reader (unprivileged victim path: world-readable sysctl kern.devstat.all)
cc -O2 -o reader reader.c

# 2) harness KLD (built in-kernel; loaded by root only as the detach trigger)
if [ "$(id -u)" = 0 ] && [ -f Makefile ]; then
    make || { echo "harness build failed (needs /usr/src + bsd.kmod.mk)" >&2; exit 1; }
fi
echo "BUILD_OK"
