diff options
author | Heinrich Schuchardt | 2022-10-22 11:32:34 +0200 |
---|---|---|
committer | Heinrich Schuchardt | 2022-12-02 19:17:24 +0100 |
commit | 27380d885d7e17c9bc1f87089d3fe658852c960c (patch) | |
tree | 73a1386b8b976e0bea29f05e15d38bad7a9e67c1 /disk | |
parent | a32f6341ccf2ea69f64fe87b9d07fd87325a2056 (diff) |
console: file should always be non-negative
We use the parameter file in console functions to choose from an array
after checking against MAX_FILES but we never check if the value of file
is negative.
Running ./u-boot -T -l and issuing the poweroff command has resulted in
crashes because os_exit() results in std::ostream::flush() calling U-Boot's
fflush with file being a pointer which when converted to int may be
represented by a negative number.
This shows that checking against MAX_FILES is not enough. We have to ensure
that the file argument is always positive.
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'disk')
0 files changed, 0 insertions, 0 deletions