summaryrefslogtreecommitdiffstats
path: root/librpc/idl/smb2_lease_struct.idl
diff options
context:
space:
mode:
Diffstat (limited to 'librpc/idl/smb2_lease_struct.idl')
-rw-r--r--librpc/idl/smb2_lease_struct.idl34
1 files changed, 34 insertions, 0 deletions
diff --git a/librpc/idl/smb2_lease_struct.idl b/librpc/idl/smb2_lease_struct.idl
new file mode 100644
index 0000000..5ccd8a3
--- /dev/null
+++ b/librpc/idl/smb2_lease_struct.idl
@@ -0,0 +1,34 @@
+#include "idl_types.h"
+
+/*
+ miscellaneous IDL structures
+*/
+
+[
+ pointer_default(unique)
+]
+interface smb2_lease_struct
+{
+ /*
+ * SMB2 lease structure (per MS-SMB2 2.2.13)
+ */
+ typedef [public] struct {
+ hyper data[2];
+ } smb2_lease_key;
+
+ typedef [public,bitmap32bit] bitmap {
+ SMB2_LEASE_READ = 0x01,
+ SMB2_LEASE_HANDLE = 0x02,
+ SMB2_LEASE_WRITE = 0x04
+ } smb2_lease_state;
+
+ typedef [public] struct {
+ smb2_lease_key lease_key;
+ smb2_lease_state lease_state;
+ uint32 lease_flags;
+ hyper lease_duration; /* should be 0 */
+ smb2_lease_key parent_lease_key;
+ uint16 lease_version;
+ uint16 lease_epoch;
+ } smb2_lease;
+}; \ No newline at end of file