[PATCH 1/1] cmd: wrong printf() code in do_test_stackprot_fail()

Heinrich Schuchardt heinrich.schuchardt at canonical.com
Fri Feb 4 10:50:04 CET 2022


strlen() returns size_t. So we should use %zu to print it.
This avoids incorrect output on 32bit systems.

Fixes: 2fc62f299174 ("stackprot: Make our test a bit more complex")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
---
 cmd/stackprot_test.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/cmd/stackprot_test.c b/cmd/stackprot_test.c
index 1e26193e88..f3470288fa 100644
--- a/cmd/stackprot_test.c
+++ b/cmd/stackprot_test.c
@@ -17,7 +17,8 @@ static int do_test_stackprot_fail(struct cmd_tbl *cmdtp, int flag, int argc,
 
 	memset(a, 0xa5, 512);
 
-	printf("We have smashed our stack as this should not exceed 128: sizeof(a) = %ld\n", strlen(a));
+	printf("We have smashed our stack as this should not exceed 128: sizeof(a) = %zd\n",
+	       strlen(a));
 
 	return 0;
 }
-- 
2.34.1



More information about the U-Boot mailing list