| From 32f563008f95975d26d1c4fcb266c72c56f934be Mon Sep 17 00:00:00 2001 |
| From: Dengke Du <dengke.du@windriver.com> |
| 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 <dengke.du@windriver.com> |
| 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 |
| |