aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-extended/ltp/ltp/0012-fix-faccessat01.c-build-fails-with-security-flags.patch
blob: 2600bd60d0cfb1dbc3d7e04124a85300d9426ca1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
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