diff options
Diffstat (limited to 'source4/libcli')
-rw-r--r-- | source4/libcli/smb2/create.c | 15 | ||||
-rw-r--r-- | source4/libcli/smb2/smb2_calls.h | 15 |
2 files changed, 12 insertions, 18 deletions
diff --git a/source4/libcli/smb2/create.c b/source4/libcli/smb2/create.c index dc602ca71c..53476ad056 100644 --- a/source4/libcli/smb2/create.c +++ b/source4/libcli/smb2/create.c @@ -51,9 +51,9 @@ struct smb2_request *smb2_create_send(struct smb2_tree *tree, struct smb2_create SIVAL(req->out.body, 0x14, io->in.unknown3[3]); SIVAL(req->out.body, 0x18, io->in.access_mask); SIVAL(req->out.body, 0x1C, io->in.file_attr); - SIVAL(req->out.body, 0x20, io->in.unknown4); + SIVAL(req->out.body, 0x20, io->in.share_access); SIVAL(req->out.body, 0x24, io->in.open_disposition); - SIVAL(req->out.body, 0x28, io->in.unknown5); + SIVAL(req->out.body, 0x28, io->in.create_options); SSVAL(req->out.body, 0x2C, 0x40+0x38); /* offset to fname */ SSVAL(req->out.body, 0x2E, path.length); @@ -99,13 +99,10 @@ NTSTATUS smb2_create_recv(struct smb2_request *req, struct smb2_create *io) io->out.access_time = smbcli_pull_nttime(req->in.body, 0x10); io->out.write_time = smbcli_pull_nttime(req->in.body, 0x18); io->out.change_time = smbcli_pull_nttime(req->in.body, 0x20); - io->out.unknown3 = IVAL(req->in.body, 0x24); - io->out.unknown4 = IVAL(req->in.body, 0x28); - io->out.unknown5 = IVAL(req->in.body, 0x2C); - io->out.unknown6 = IVAL(req->in.body, 0x30); - io->out.unknown7 = IVAL(req->in.body, 0x34); - io->out.unknown8 = IVAL(req->in.body, 0x38); - io->out.unknown9 = IVAL(req->in.body, 0x3C); + io->out.alloc_size = BVAL(req->in.body, 0x28); + io->out.size = BVAL(req->in.body, 0x30); + io->out.file_attr = IVAL(req->in.body, 0x38); + io->out.unknown8 = IVAL(req->in.body, 0x3C); io->out.handle.data[0] = BVAL(req->in.body, 0x40); io->out.handle.data[1] = BVAL(req->in.body, 0x48); io->out.unknown10 = IVAL(req->in.body, 0x50); diff --git a/source4/libcli/smb2/smb2_calls.h b/source4/libcli/smb2/smb2_calls.h index 7d41a06153..639a9c47c3 100644 --- a/source4/libcli/smb2/smb2_calls.h +++ b/source4/libcli/smb2/smb2_calls.h @@ -89,9 +89,9 @@ struct smb2_create { uint32_t unknown3[4]; uint32_t access_mask; uint32_t file_attr; - uint32_t unknown4; + uint32_t share_access; uint32_t open_disposition; - uint32_t unknown5; + uint32_t create_options; /* ofs/len of name here, 16 bits */ uint32_t unknown6; const char *fname; @@ -109,15 +109,12 @@ struct smb2_create { NTTIME access_time; NTTIME write_time; NTTIME change_time; + uint64_t alloc_size; + uint64_t size; + uint32_t file_attr; uint32_t unknown3; - uint32_t unknown4; - uint32_t unknown5; - uint32_t unknown6; - uint32_t unknown7; - uint32_t unknown8; - uint32_t unknown9; struct smb2_handle handle; - uint32_t unknown10; + uint32_t unknown4; } out; }; |