1586c0cced
Adds :quic-interop, a JVM-only module at quic/interop/ that implements the quic-interop-runner Docker contract so we can drive matrix tests against aioquic / quiche / picoquic / msquic / ngtcp2 / etc. as a bug-finding harness. Phase 0 supports only the `handshake` testcase; everything else returns 127 so the runner skips rather than fails. SSLKEYLOGFILE / QLOGDIR plumbing is deferred to Phase 1. https://claude.ai/code/session_01HcvfQq1ttPV9PkRoJb4nyT
26 lines
666 B
Bash
Executable File
26 lines
666 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# quic-interop-runner endpoint entry point.
|
|
#
|
|
# The base image (martenseemann/quic-network-simulator-endpoint) sets up
|
|
# routing in /setup.sh; we source it then dispatch to our JVM client based
|
|
# on the ROLE env var pushed in by the runner.
|
|
set -euo pipefail
|
|
|
|
# shellcheck disable=SC1091
|
|
source /setup.sh
|
|
|
|
case "${ROLE:-client}" in
|
|
client)
|
|
exec /opt/quic-interop/bin/quic-interop
|
|
;;
|
|
server)
|
|
# Phase 0: server role unimplemented. Exit 127 so the runner skips.
|
|
echo "server role not implemented" >&2
|
|
exit 127
|
|
;;
|
|
*)
|
|
echo "unknown ROLE=${ROLE}" >&2
|
|
exit 127
|
|
;;
|
|
esac
|