mirror of
https://xff.cz/git/u-boot/
synced 2025-09-03 17:52:07 +02:00
stdio: fix stdio_deregister_dev()
When copying the name of a stdio device we must ensure that it is NUL
terminated before passing it to strcmp() to avoid a buffer overrun.
Truncating the name field leads to failure to deregister a stdio device.
When copying we must ensure that the name field sizes match.
Addresses-Coverity-ID: 350462 String not null terminated
Fixes: 5294e97832
("stdio: extend "name" to 32 symbols")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
committed by
Tom Rini
parent
6a1e0ae43e
commit
6da11cc81e
@@ -17,6 +17,7 @@
|
||||
#define DEV_FLAGS_INPUT 0x00000001 /* Device can be used as input console */
|
||||
#define DEV_FLAGS_OUTPUT 0x00000002 /* Device can be used as output console */
|
||||
#define DEV_FLAGS_DM 0x00000004 /* Device priv is a struct udevice * */
|
||||
#define STDIO_NAME_LEN 32
|
||||
|
||||
int stdio_file_to_flags(const int file);
|
||||
|
||||
@@ -24,7 +25,7 @@ int stdio_file_to_flags(const int file);
|
||||
struct stdio_dev {
|
||||
int flags; /* Device flags: input/output/system */
|
||||
int ext; /* Supported extensions */
|
||||
char name[32]; /* Device name */
|
||||
char name[STDIO_NAME_LEN]; /* Device name */
|
||||
|
||||
/* GENERAL functions */
|
||||
|
||||
|
Reference in New Issue
Block a user