summaryrefslogtreecommitdiff
path: root/source4/libcli/smb2/smb2_calls.h
diff options
context:
space:
mode:
Diffstat (limited to 'source4/libcli/smb2/smb2_calls.h')
-rw-r--r--source4/libcli/smb2/smb2_calls.h34
1 files changed, 32 insertions, 2 deletions
diff --git a/source4/libcli/smb2/smb2_calls.h b/source4/libcli/smb2/smb2_calls.h
index e0a78937d5..cd0e80f5ae 100644
--- a/source4/libcli/smb2/smb2_calls.h
+++ b/source4/libcli/smb2/smb2_calls.h
@@ -291,15 +291,27 @@ struct smb2_read {
struct smb2_find {
struct {
+ /* static body buffer 32 (0x20) bytes */
+ /* uint16_t buffer_code; 0x21 = 0x20 + 1 */
uint8_t level;
uint8_t continue_flags; /* SMB2_CONTINUE_FLAG_* */
uint32_t unknown; /* perhaps a continue token? */
struct smb2_handle handle;
+ /* uint16_t pattern_ofs; */
+ /* uint32_t pattern_size; */
uint32_t max_response_size;
+
+ /* dynamic body */
const char *pattern;
} in;
struct {
+ /* static body buffer 8 (0x08) bytes */
+ /* uint16_t buffer_code; 0x08 */
+ /* uint16_t blob_ofs; */
+ /* uint32_t blob_size; */
+
+ /* dynamic body */
DATA_BLOB blob;
} out;
};
@@ -308,20 +320,38 @@ struct smb2_find {
struct smb2_trans {
struct {
+ /* static body buffer 56 (0x38) bytes */
+ /* uint16_t buffer_code; 0x39 = 0x38 + 1 */
+ uint16_t _pad;
uint32_t pipe_flags;
struct smb2_handle handle;
+ /* uint32_t out_ofs; */
+ /* uint32_t out_size; */
uint32_t unknown2;
+ /* uint32_t in_ofs; */
+ /* uint32_t in_size; */
uint32_t max_response_size;
uint64_t flags;
- DATA_BLOB in;
+
+ /* dynamic body */
DATA_BLOB out;
+ DATA_BLOB in;
} in;
struct {
- uint32_t unknown1;
+ /* static body buffer 48 (0x30) bytes */
+ /* uint16_t buffer_code; 0x31 = 0x30 + 1 */
+ uint16_t _pad;
+ uint32_t pipe_flags;
struct smb2_handle handle;
+ /* uint32_t in_ofs; */
+ /* uint32_t in_size; */
+ /* uint32_t out_ofs; */
+ /* uint32_t out_size; */
uint32_t unknown2;
uint32_t unknown3;
+
+ /* dynamic body */
DATA_BLOB in;
DATA_BLOB out;
} out;