Using pointers for the format specifier strings in printf-style
functions can create potential security problems, as the number of
arguments to be parsed could vary from call to call. Most compilers
consequently warn about those:
"format not a string literal and no format arguments [-Wformat-security]"

If we only want to print a constant string, we can just use a fixed "%s"
format instead, and pass the string as an argument.

Fixes: e9b60476bea0 ("kselftest/arm64: Add utilities and a test to validate mte 
memory")
Signed-off-by: Andre Przywara <[email protected]>
---
 tools/testing/selftests/arm64/mte/mte_common_util.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/testing/selftests/arm64/mte/mte_common_util.h 
b/tools/testing/selftests/arm64/mte/mte_common_util.h
index 2d3e71724e55c..a0017a303beb2 100644
--- a/tools/testing/selftests/arm64/mte/mte_common_util.h
+++ b/tools/testing/selftests/arm64/mte/mte_common_util.h
@@ -77,13 +77,13 @@ static inline void evaluate_test(int err, const char *msg)
 {
        switch (err) {
        case KSFT_PASS:
-               ksft_test_result_pass(msg);
+               ksft_test_result_pass("%s", msg);
                break;
        case KSFT_FAIL:
-               ksft_test_result_fail(msg);
+               ksft_test_result_fail("%s", msg);
                break;
        case KSFT_SKIP:
-               ksft_test_result_skip(msg);
+               ksft_test_result_skip("%s", msg);
                break;
        default:
                ksft_test_result_error("Unknown return code %d from %s",
-- 
2.25.1


Reply via email to