The recv tests were making invalid assumptions about how flags are
checked by the kernel. (It makes no explicit tests for invalid flags
or combinations of flags.) [1]

Replace the bogus test for invalid flags with two new tests that check
return codes for invalid MSG_OOB and MSG_ERRQUEUE flags.

Note that this introduces a failure on kernels before 3.17, which has
a bug fix for MSG_ERRQUEUE flag handling. This failure is a legitimate
bug on these older kernels.

Additional test cases for invalid flags could be added after these two.
And the recv01 and recvmsg01 tests need still need to be fixed, assuming
this is the right solution.

[Patch is on top of "Fix wrong args in recvfrom syscall testcase"
 patch I sent yesterday.]

[1] http://marc.info/?t=141148149900006&r=1&w=2

--- a/testcases/kernel/syscalls/recvfrom/recvfrom01.c
+++ b/testcases/kernel/syscalls/recvfrom/recvfrom01.c
@@ -115,9 +115,14 @@
                    -1, EFAULT, setup1, cleanup1, "invalid recv buffer"},
 /* 6 */
        {
-       PF_INET, SOCK_STREAM, 0, (void *)buf, sizeof(buf), -1,
+       PF_INET, SOCK_STREAM, 0, (void *)buf, sizeof(buf), MSG_OOB,
                    (struct sockaddr *)&from, &fromlen,
-                   -1, EINVAL, setup1, cleanup1, "invalid flags set"},};
+                   -1, EINVAL, setup1, cleanup1, "invalid MSG_OOB flag set"},
+/* 7 */
+       {
+       PF_INET, SOCK_STREAM, 0, (void *)buf, sizeof(buf), MSG_ERRQUEUE,
+                   (struct sockaddr *)&from, &fromlen,
+                   -1, EAGAIN, setup1, cleanup1, "invalid MSG_ERRQUEUE flag 
set"},};
 
 int TST_TOTAL = sizeof(tdat) / sizeof(tdat[0]);
 

------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to