diff options
Diffstat (limited to 'source/torture/smb2/create.c')
-rw-r--r-- | source/torture/smb2/create.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/source/torture/smb2/create.c b/source/torture/smb2/create.c index 3cc825bd625..9f7ceb20adc 100644 --- a/source/torture/smb2/create.c +++ b/source/torture/smb2/create.c @@ -152,6 +152,27 @@ bool torture_smb2_create_gentest(struct torture_context *torture, struct smb2_tr CHECK_EQUAL(file_attributes, 0xffff87c8); CHECK_EQUAL(denied_mask, 0x4000); + smb2_deltree(tree, FNAME); + + ZERO_STRUCT(io); + io.in.desired_access = SEC_FLAG_MAXIMUM_ALLOWED; + io.in.file_attributes = 0; + io.in.create_disposition = NTCREATEX_DISP_OVERWRITE_IF; + io.in.share_access = + NTCREATEX_SHARE_ACCESS_READ| + NTCREATEX_SHARE_ACCESS_WRITE; + io.in.create_options = 0; + io.in.fname = FNAME ":stream1"; + status = smb2_create(tree, tmp_ctx, &io); + CHECK_STATUS(status, NT_STATUS_OK); + + io.in.fname = FNAME; + io.in.file_attributes = 0x8040; + io.in.share_access = + NTCREATEX_SHARE_ACCESS_READ; + status = smb2_create(tree, tmp_ctx, &io); + CHECK_STATUS(status, NT_STATUS_INVALID_PARAMETER); + talloc_free(tmp_ctx); return true; |