This project enables manipulation of TUF flows between the SOTA Client and SOTA Server via mitmproxy.
Run make to see the available Makefile commands.
The flows/ directory contains the individual mitmproxy flows that will manipulate the TUF metadata traffic. An HTTP API is started inside Docker to switch between the flows in this directory.
To boot a new client QEMU image run make start with the IMAGE_DIR environment variable set.
By default, IMAGE_DIR should contain a QEMU image named core-image-minimal-qemux86-64.otaimg and a BIOS file named u-boot-qemux86-64.rom, though these can be overridden by setting IMAGE_FILE and BIOS_FILE respectively.
Send a GET request to /available or /running to see the available flows or currently running flow respectively.
Send a PUT request to /start/<name> to start a new flow (where <name> is the flow name), or send a PUT request to /stop to stop the currently active flow.