summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrancois Berder <[email protected]>2026-05-21 15:05:44 +0200
committerMichal Simek <[email protected]>2026-05-25 15:14:05 +0200
commit8a5989acc6ff1430a2775178d2e6b0b5d4573247 (patch)
treeef1e215f32898f079c07bcddb268b44e7f59dcce
parent9793931f36d585878305ff0bf907b32138673b95 (diff)
arm64: versal2: Fix buffer overflow in soc_name_decode
The size of name buffer was not computed correctly. The suffix format is "--rel.-el" (9 chars instead of 6), and the longest platform name is "emu-mmd" (7 chars instead of 4). Fix comment and name size. Fixes: 40f5046c221a ("arm64: versal2: Add support for AMD Versal Gen 2") Signed-off-by: Francois Berder <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/BESP194MB280513B376D54A815F3FD507DA0E2@BESP194MB2805.EURP194.PROD.OUTLOOK.COM
-rw-r--r--board/amd/versal2/board.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/board/amd/versal2/board.c b/board/amd/versal2/board.c
index d94c1494d53..81daba1c5ef 100644
--- a/board/amd/versal2/board.c
+++ b/board/amd/versal2/board.c
@@ -81,12 +81,13 @@ char *soc_name_decode(void)
}
/*
- * --rev. are 6 chars
- * max platform name is qemu which is 4 chars
+ * --rev.-el are 9 chars
+ * max platform name is emu-mmd which is 7 chars
* platform version number are 1+1
- * Plus 1 char for \n
+ * el is 1 char
+ * Plus 1 char for NULL byte
*/
- name = calloc(1, strlen(CONFIG_SYS_BOARD) + 13);
+ name = calloc(1, strlen(CONFIG_SYS_BOARD) + 20);
if (!name)
return NULL;