[LTP] [PATCH] Check recvmmsg exists before entering fuzzy loop

Richard Palethorpe rpalethorpe@suse.com
Wed Jan 9 14:32:05 CET 2019


Avoid thread B entering infinite loop if recvmmsg doesn't exist causing
tst_brk to be called and thread A to make an ungraceful exit.

A more general fix can be added to tst_fuzzy_sync as well, but will take
longer to develop.

Signed-off-by: Richard Palethorpe <rpalethorpe@suse.com>
Reported-by: Li Wang <liwang@redhat.com>
---
 testcases/cve/cve-2016-7117.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/testcases/cve/cve-2016-7117.c b/testcases/cve/cve-2016-7117.c
index 6290af077..effab083d 100644
--- a/testcases/cve/cve-2016-7117.c
+++ b/testcases/cve/cve-2016-7117.c
@@ -99,6 +99,10 @@ static void setup(void)
 {
 	fzsync_pair.min_samples = 10000;
 
+	tst_syscall(__NR_recvmmsg);
+	if (errno == ENOSYS)
+		tst_brk(TCONF, "recvmmsg not supported");
+
 	tst_fzsync_pair_init(&fzsync_pair);
 }
 
-- 
2.19.1



More information about the ltp mailing list