summaryrefslogtreecommitdiff
path: root/source4/libcli/raw/interfaces.h
diff options
context:
space:
mode:
authorZach Loafman <zachary.loafman@isilon.com>2009-03-30 15:57:57 -0700
committerTim Prouty <tprouty@samba.org>2009-04-01 08:30:25 -0700
commitafa71fbad9cbd8b1a6b68b9ba01936ad70ff25e5 (patch)
treeefcb88b0db7812cc68f48613720528535fc0069d /source4/libcli/raw/interfaces.h
parent264b28ec0962c355ee90f9ac67fcf07cd84c5c7b (diff)
downloadsamba-afa71fbad9cbd8b1a6b68b9ba01936ad70ff25e5.tar.gz
samba-afa71fbad9cbd8b1a6b68b9ba01936ad70ff25e5.tar.bz2
samba-afa71fbad9cbd8b1a6b68b9ba01936ad70ff25e5.zip
s4:smb2: Add lease break support for SMB2.1
Add the structures and marshalling for the lease break variants of the oplock break / oplock break ack messages.
Diffstat (limited to 'source4/libcli/raw/interfaces.h')
-rw-r--r--source4/libcli/raw/interfaces.h23
1 files changed, 22 insertions, 1 deletions
diff --git a/source4/libcli/raw/interfaces.h b/source4/libcli/raw/interfaces.h
index bd93fa1695..3c0d186b87 100644
--- a/source4/libcli/raw/interfaces.h
+++ b/source4/libcli/raw/interfaces.h
@@ -56,13 +56,26 @@ struct smb2_handle {
/*
SMB2 lease structure (per MS-SMB2 2.2.13)
*/
+struct smb2_lease_key {
+ uint64_t data[2];
+};
+
struct smb2_lease {
- uint64_t lease_key[2];
+ struct smb2_lease_key lease_key;
uint32_t lease_state;
uint32_t lease_flags; /* should be 0 */
uint64_t lease_duration; /* should be 0 */
};
+struct smb2_lease_break {
+ struct smb2_lease current_lease;
+ uint32_t break_flags;
+ uint32_t new_lease_state;
+ uint32_t break_reason; /* should be 0 */
+ uint32_t access_mask_hint; /* should be 0 */
+ uint32_t share_mask_hint; /* should be 0 */
+};
+
struct ntvfs_handle;
/*
@@ -2006,6 +2019,14 @@ union smb_lock {
/* struct smb2_handle handle; */
} in, out;
} smb2_break;
+
+ /* SMB2 Lease Break Ack (same opcode as smb2_break) */
+ struct smb2_lease_break_ack {
+ struct {
+ uint32_t reserved;
+ struct smb2_lease lease;
+ } in, out;
+ } smb2_lease_break_ack;
};