The TLS Interop Runner aims to test interoperability between implementations of TLS by running various tests involving clients and servers drawn from differing implementations.
It is fashioned after the QUIC Interop Runner.
- Tshark >= 3.2.0 present in the PATH
- Go >= 1.15
- Docker >= v20.10.17 and Docker Compose >= v2.6.0
-
Clone this repository to the
src
directory of your$GOPATH
. To learn your$GOPATH
, usego env
. -
Build the interop runner. The runner can then be invoked as
./bin/runner
make runner
- Tests are run with
docker-compose
, with the artifacts copied into a virtual volume. To run a test with, say, Cloudflare-Go as server and Boringssl as client, you must first build the necessary docker images, and run the appropiate test (for example,ech-accept
):
./bin/runner --client=cloudflare-go --server=boringssl --build --testcase=ech-accept