Svc/CmdSplitter UT: inclusive lowerUpper bound picks an out-of-range CmdBuff port (random abort)
Author: lestarch-autobotCreated Sep 10, 2026Updated Sep 16, 2026
LabelsbugCIC++
| F´ Version | devel @ nasa/fprime b7dd5c4f8d26 |
| Affected Component | Svc/CmdSplitter |
| Severity | 2/5 |
Problem Description
CmdSplitterTester.cpp:100 uses STest::Pick::lowerUpper(0, CmdDispatcherSequencePorts); lowerUpper is inclusive, so ~1/6 seeds select port CmdDispatcherSequencePorts, one past the last CmdBuff input, and the generated invoke_to_CmdBuff asserts. Sibling tests use lowerUpper(0, CmdSplitterPorts - 1).
Context / Environment
Found by static AI full-codebase review of nasa/fprime devel at commit b7dd5c4f8d268c5c70f0304a063d8ee27e026168 (current devel tip at posting time). Static finding; fprime-util version-check not applicable.
Finding id(s): 959f3eb2d198How to Reproduce
- Run
Error.BadCommandswith seeds until the pick equals 5.
Expected Behavior
lowerUpper(0, CmdSplitterPorts - 1).
IAMAI
Source: nasa/fprime