From 32f563008f95975d26d1c4fcb266c72c56f934be Mon Sep 17 00:00:00 2001 From: Dengke Du Date: Wed, 22 Feb 2017 01:21:55 -0500 Subject: [PATCH] fix faccessat01.c build fails with security flags When the distro is poky-lsb, fix the following error: | In file included from ../../../../include/old/test.h:47:0, | from faccessat01.c:44: | faccessat01.c: In function 'setup': | ../../../../include/old/old_safe_file_ops.h:55:27: error: format not a string literal and no format arguments [-Werror=format-security] | (path), (fmt), ## __VA_ARGS__) | ^ | faccessat01.c:132:2: note: in expansion of macro 'SAFE_FILE_PRINTF' | SAFE_FILE_PRINTF(cleanup, testfile, testfile); | ^~~~~~~~~~~~~~~~ | ../../../../include/old/old_safe_file_ops.h:55:27: error: format not a string literal and no format arguments [-Werror=format-security] | (path), (fmt), ## __VA_ARGS__) | ^ | faccessat01.c:133:2: note: in expansion of macro 'SAFE_FILE_PRINTF' | SAFE_FILE_PRINTF(cleanup, testfile2, testfile2); | ^~~~~~~~~~~~~~~~ This is because in macro "SAFE_FILE_PRINTF", its third argument should be a format arguments, but in file faccessat01.c, it passed the same argument to macro "SAFE_FILE_PRINTF", so it results in the fails. It should pass the format string to the third argument. The same for file fchmodat01.c. Signed-off-by: Dengke Du Upstream-Status: Pending --- testcases/kernel/syscalls/faccessat/faccessat01.c | 4 ++-- testcases/kernel/syscalls/fchmodat/fchmodat01.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/testcases/kernel/syscalls/faccessat/faccessat01.c b/testcases/kernel/syscalls/faccessat/faccessat01.c index 622dfd3..1ca90e9 100644 --- a/testcases/kernel/syscalls/faccessat/faccessat01.c +++ b/testcases/kernel/syscalls/faccessat/faccessat01.c @@ -129,8 +129,8 @@ void setup(void) fds[0] = SAFE_OPEN(cleanup, pathname, O_DIRECTORY); fds[1] = fds[4] = fds[0]; - SAFE_FILE_PRINTF(cleanup, testfile, testfile); - SAFE_FILE_PRINTF(cleanup, testfile2, testfile2); + SAFE_FILE_PRINTF(cleanup, testfile, "faccessattestfile%d.txt"); + SAFE_FILE_PRINTF(cleanup, testfile2, "%s/faccessattestfile%d.txt"); fds[2] = SAFE_OPEN(cleanup, testfile3, O_CREAT | O_RDWR, 0600); diff --git a/testcases/kernel/syscalls/fchmodat/fchmodat01.c b/testcases/kernel/syscalls/fchmodat/fchmodat01.c index 6bf66d8..89d072a 100644 --- a/testcases/kernel/syscalls/fchmodat/fchmodat01.c +++ b/testcases/kernel/syscalls/fchmodat/fchmodat01.c @@ -127,8 +127,8 @@ void setup(void) fds[0] = SAFE_OPEN(cleanup, pathname, O_DIRECTORY); fds[1] = fds[4] = fds[0]; - SAFE_FILE_PRINTF(cleanup, testfile, testfile); - SAFE_FILE_PRINTF(cleanup, testfile2, testfile2); + SAFE_FILE_PRINTF(cleanup, testfile, "fchmodattest%d.txt"); + SAFE_FILE_PRINTF(cleanup, testfile2, "%s/fchmodattest%d.txt"); fds[2] = SAFE_OPEN(cleanup, testfile3, O_CREAT | O_RDWR, 0600); fds[3] = 100; -- 2.8.1