3 import
"server_id.idl";
8 pointer_default(unique)
13 typedef [public] struct {
19 uint32 private_options
;
28 * In-memory flag indicating a non-existing pid. We don't want
29 * to store this share_mode_entry on disk.
31 [skip
] boolean8 stale
;
34 typedef [public] struct {
36 security_token
*delete_nt_token
;
37 security_unix_token
*delete_token
;
40 typedef [public] struct {
41 [string,charset
(UTF8
)] char *servicepath
;
42 [string,charset
(UTF8
)] char *base_name
;
43 [string,charset
(UTF8
)] char *stream_name
;
44 uint32 num_share_modes
;
45 [size_is(num_share_modes
)] share_mode_entry share_modes
[];
46 uint32 num_delete_tokens
;
47 [size_is(num_delete_tokens
)] delete_token delete_tokens
[];
48 timespec old_write_time
;
49 timespec changed_write_time
;
50 [skip
] boolean8 fresh
;
51 [skip
] boolean8 modified
;
52 [ignore] db_record
*record
;
55 /* these are 0x30 (48) characters */
56 const string VFS_DEFAULT_DURABLE_COOKIE_MAGIC
=
57 "VFS_DEFAULT_DURABLE_COOKIE_MAGIC ";
58 const uint32 VFS_DEFAULT_DURABLE_COOKIE_VERSION
= 0;
60 /* this corresponds to struct stat_ex (SMB_STRUCT_STAT) */
74 boolean8 st_ex_calculated_birthtime
;
80 } vfs_default_durable_stat
;
82 typedef [public] struct {
83 [value
(VFS_DEFAULT_DURABLE_COOKIE_MAGIC
),charset
(DOS
)] uint8 magic
[0x30];
84 [value
(VFS_DEFAULT_DURABLE_COOKIE_VERSION
)] uint32
version;
85 boolean8 allow_reconnect
;
87 [string,charset
(UTF8
)] char *servicepath
;
88 [string,charset
(UTF8
)] char *base_name
;
89 hyper initial_allocation_size
;
90 hyper position_information
;
91 boolean8 update_write_time_triggered
;
92 boolean8 update_write_time_on_close
;
93 boolean8 write_time_forced
;
94 timespec close_write_time
;
95 vfs_default_durable_stat stat_info
;
96 } vfs_default_durable_cookie
;