torture: support Windows 2k8 response for compress_invalid_buf
authorDavid Disseldorp <ddiss@samba.org>
Tue, 13 Aug 2013 16:07:28 +0000 (18:07 +0200)
committerJeremy Allison <jra@samba.org>
Thu, 15 Aug 2013 20:40:49 +0000 (13:40 -0700)
Windows Server 2012 returns NT_STATUS_INVALID_USER_BUFFER, Windows
Server 2008r2 returns NT_STATUS_INVALID_PARAMETER. Don't fail the test
if either status is returned.

Signed-off-by: David Disseldorp <ddiss@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
source4/torture/smb2/ioctl.c

index bc2b4cd33c479491b04b014f58ee94f6f81651f6..75379af0e66dc65b77563b07b954c343da74342a 100644 (file)
@@ -1830,10 +1830,12 @@ static bool test_ioctl_compress_invalid_buf(struct torture_context *torture,
        ioctl.smb2.in.flags = SMB2_IOCTL_FLAG_IS_FSCTL;
 
        status = smb2_ioctl(tree, tmp_ctx, &ioctl.smb2);
-       /* expect Server 2k12 response status */
-       torture_assert_ntstatus_equal(torture, status,
-                                     NT_STATUS_INVALID_USER_BUFFER,
-                                     "invalid FSCTL_SET_COMPRESSION");
+       if (!NT_STATUS_EQUAL(status, NT_STATUS_INVALID_USER_BUFFER)
+        && !NT_STATUS_EQUAL(status, NT_STATUS_INVALID_PARAMETER)) {
+               /* neither Server 2k12 nor 2k8r2 response status */
+               torture_assert(torture, true,
+                              "invalid FSCTL_SET_COMPRESSION");
+       }
 
        smb2_util_close(tree, fh);
        talloc_free(tmp_ctx);