diff options
author | Andrew Tridgell <tridge@samba.org> | 2005-11-11 12:37:16 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:46:12 -0500 |
commit | 2e753f851885930000eadbd4b69660d85124c716 (patch) | |
tree | 078827c8b09c6673892f5b53560875fda14f22b9 /source4/libcli/smb2/smb2_calls.h | |
parent | 006da4c52add1e448eb3f72896ca37d644294a24 (diff) | |
download | samba-2e753f851885930000eadbd4b69660d85124c716.tar.gz samba-2e753f851885930000eadbd4b69660d85124c716.tar.bz2 samba-2e753f851885930000eadbd4b69660d85124c716.zip |
r11679: opening/creating files in SMB2 now works. Lots of unknown parameters
in the call tho.
(This used to be commit 548fbd86b3b114493943b50669bdcba2f4ed87f2)
Diffstat (limited to 'source4/libcli/smb2/smb2_calls.h')
-rw-r--r-- | source4/libcli/smb2/smb2_calls.h | 47 |
1 files changed, 46 insertions, 1 deletions
diff --git a/source4/libcli/smb2/smb2_calls.h b/source4/libcli/smb2/smb2_calls.h index 523f314cbf..8b68751df3 100644 --- a/source4/libcli/smb2/smb2_calls.h +++ b/source4/libcli/smb2/smb2_calls.h @@ -71,6 +71,51 @@ struct smb2_tree_connect { uint32_t unknown2; /* 0x00 */ uint32_t unknown3; /* 0x00 */ uint32_t unknown4; /* 0x1f01ff */ /* capabilities?? */ - uint64_t tid; + uint32_t tid; } out; }; + +/* + file handles in SMB2 are 20 bytes, like RPC handles +*/ +struct smb2_handle { + uint8_t data[20]; +}; + +struct smb2_create { + struct { + uint32_t unknown1; /* 0x09000039 */ + uint32_t unknown2; /* 2 */ + uint32_t unknown3[4]; + uint32_t access_mask; + uint32_t file_attr; + uint32_t unknown4; + uint32_t open_disposition; + uint32_t unknown5; + /* ofs/len of name here, 16 bits */ + uint32_t unknown6; + const char *fname; + uint32_t unknown7; + uint32_t unknown8; + uint32_t unknown9; + uint32_t unknown10; + uint64_t unknown11; + } in; + + struct { + uint32_t unknown1; + uint32_t unknown2; + NTTIME create_time; + NTTIME access_time; + NTTIME write_time; + NTTIME change_time; + uint32_t unknown3; + uint32_t unknown4; + uint32_t unknown5; + uint32_t unknown6; + uint32_t unknown7; + struct smb2_handle handle; + uint32_t unknown8[2]; + } out; +}; + |