Troubleshooting
Request to <url> failed
Request failures are surfaced as RuntimeError.
Check:
- Server URL correctness (
HAVOC_URLor CLI config) - Server availability
- Network reachability/VPN
- API path exposure (
/api/...)
SSL verification failure
If using HTTPS with self-signed/internal certs:
- During
havoc setup, choose to disable SSL verification - Or pass
verify_ssl=FalsetoHavocClient
Use this only in trusted environments.
Authentication failures (401/403)
Check:
- API key is valid and not expired/revoked
HAVOC_API_KEYis set correctly (no accidental prefix/suffix spaces)- Stored CLI token in
~/.config/havoc/config.json
submit says file is not ELF
Current CLI only supports ELF submission path.
What to do:
- Ensure firmware file begins with ELF magic
- For raw binaries, use Python API and construct
ImageFormat(Raw=...)
submit says machine type mismatch
For --mcu cortexm, CLI expects ELF e_machine == 40 (EM_ARM).
Confirm architecture/toolchain output:
Debugger command failures
If ReplayDebugger operations fail:
- Verify run/testcase IDs are valid
- Ensure debug session was started for that testcase
- Confirm command/state compatibility (for example, stepping after terminal exit reason)
Testcase input parse errors
TestcaseInput.from_bytes validates format and can raise ValueError for:
- invalid magic/version
- malformed headers
- too many channels
- oversized channel payload
If this occurs with server-generated data, verify SDK/server version compatibility.
Notes
havoc_common_schema.pyis generated; do not hand-edit.tests/in this repository snapshot currently has no executable suite.