torture: Add reproducer for bug 10216
authorVolker Lendecke <vl@samba.org>
Fri, 18 Oct 2013 13:11:38 +0000 (13:11 +0000)
committerStefan Metzmacher <metze@samba.org>
Wed, 23 Oct 2013 09:45:55 +0000 (11:45 +0200)
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
source4/torture/raw/oplock.c

index 34e270d82591dab666f79b27039e09208b0e0ef0..c0738e98d77f706d80e27bdb0da4377c3e41f404 100644 (file)
@@ -556,6 +556,18 @@ static bool test_raw_oplock_exclusive4(struct torture_context *tctx, struct smbc
        CHECK_VAL(break_info.count, 0);
        CHECK_VAL(break_info.failures, 0);
 
        CHECK_VAL(break_info.count, 0);
        CHECK_VAL(break_info.failures, 0);
 
+       /*
+        * Open another non-stat open. This reproduces bug 10216. Make sure it
+        * won't happen again...
+        */
+       io.ntcreatex.in.flags = 0;
+       io.ntcreatex.in.access_mask = SEC_FILE_READ_DATA;
+       status = smb_raw_open(cli2->tree, tctx, &io);
+       CHECK_STATUS(tctx, status, NT_STATUS_SHARING_VIOLATION);
+       torture_wait_for_oplock_break(tctx);
+       CHECK_VAL(break_info.count, 0);
+       CHECK_VAL(break_info.failures, 0);
+
        smbcli_close(cli1->tree, fnum);
        smbcli_close(cli2->tree, fnum2);
 
        smbcli_close(cli1->tree, fnum);
        smbcli_close(cli2->tree, fnum2);