mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-17 22:49:02 +00:00
arm64: zynqmp: avoid out of buffer access
strncat(a, b, c) appends a maximum of c characters plus the 0 byte to a. In board_init we first write 4 characters plus 0 byte to version. So only ZYNQMP_VERSION_SIZE - 5 additional characters fit into version. The problem was indicated by cppcheck. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
This commit is contained in:
parent
74ba69db35
commit
df1cd46fb8
1 changed files with 2 additions and 2 deletions
|
@ -172,10 +172,10 @@ int board_init(void)
|
|||
if (current_el() != 3) {
|
||||
static char version[ZYNQMP_VERSION_SIZE];
|
||||
|
||||
strncat(version, "xczu", ZYNQMP_VERSION_SIZE);
|
||||
strncat(version, "xczu", 4);
|
||||
zynqmppl.name = strncat(version,
|
||||
zynqmp_get_silicon_idcode_name(),
|
||||
ZYNQMP_VERSION_SIZE);
|
||||
ZYNQMP_VERSION_SIZE - 5);
|
||||
printf("Chip ID:\t%s\n", zynqmppl.name);
|
||||
fpga_init();
|
||||
fpga_add(fpga_xilinx, &zynqmppl);
|
||||
|
|
Loading…
Add table
Reference in a new issue