]> Git Repo - u-boot.git/commit
console: file should always be non-negative
authorHeinrich Schuchardt <[email protected]>
Sat, 22 Oct 2022 09:32:34 +0000 (11:32 +0200)
committerHeinrich Schuchardt <[email protected]>
Fri, 2 Dec 2022 18:17:24 +0000 (19:17 +0100)
commit27380d885d7e17c9bc1f87089d3fe658852c960c
tree73a1386b8b976e0bea29f05e15d38bad7a9e67c1
parenta32f6341ccf2ea69f64fe87b9d07fd87325a2056
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 <[email protected]>
Reviewed-by: Simon Glass <[email protected]>
common/console.c
This page took 0.034025 seconds and 4 git commands to generate.