rcbench is a test bench: two microcontrollers, a touch panel and an SD card. It has no network stack, no accounts, no user data and no remote interface. Two classes of report apply.
Anything that could make the bench drive an output when it should not, or defeat one of the stops: a fault that causes an unexpected output, or that lets a stop be bypassed, latched off or silently re-armed. Report it the same way as a security issue and say so in the title; it is handled with priority.
Everything that parses input somebody else produced:
| Module | Input |
|---|---|
shared/logfile |
CSV (comma-separated values) from an SD card |
shared/sbus, and the receiver decoders that follow it |
frames from a receiver |
shared/openyge |
ESC (electronic speed controller) telemetry and parameter frames |
shared/link |
CAN (Controller Area Network) frames between the two boards |
All of these are fed malformed input by the test suite, which runs under AddressSanitizer and UBSan (UndefinedBehaviorSanitizer) in CI (continuous integration). A crash, a read past the end of a buffer or an infinite loop reachable from any of these inputs is a bug worth reporting.
Use GitHub's private vulnerability reporting on this repository (Security → Report a vulnerability). If that is unavailable, open an issue that says only that you have something to report and asks for a contact route; do not put the details in a public issue.
Include what you can: the input that triggers it, the file or function you believe is at fault, and what you expected instead.
This is a hobby project maintained by one person. There is no service level, no bounty and no guaranteed response time.
- A report is read and answered.
- A confirmed bug is fixed in the open, with a test that pins it.
- Credit in the commit and the release notes if you want it.
main only. There are no maintained release branches.
- Physical safety of a bench you built. The design, the parts and the wiring are yours; Safety states what the design assumes, particularly the monostable that gates the outputs.
- Another vendor's device firmware. Bugs in an ESC, a servo or a receiver belong to whoever made it. How this bench behaves when one of them sends something unexpected is in scope.