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
;
45 uint32 num_share_modes
;
46 [size_is(num_share_modes
)] share_mode_entry share_modes
[];
47 uint32 num_delete_tokens
;
48 [size_is(num_delete_tokens
)] delete_token delete_tokens
[];
49 timespec old_write_time
;
50 timespec changed_write_time
;
51 [skip
] boolean8 fresh
;
52 [skip
] boolean8 modified
;
53 [ignore] db_record
*record
;
56 /* these are 0x30 (48) characters */
57 const string VFS_DEFAULT_DURABLE_COOKIE_MAGIC
=
58 "VFS_DEFAULT_DURABLE_COOKIE_MAGIC ";
59 const uint32 VFS_DEFAULT_DURABLE_COOKIE_VERSION
= 0;
61 /* this corresponds to struct stat_ex (SMB_STRUCT_STAT) */
75 boolean8 st_ex_calculated_birthtime
;
81 } vfs_default_durable_stat
;
83 typedef [public] struct {
84 [value
(VFS_DEFAULT_DURABLE_COOKIE_MAGIC
),charset
(DOS
)] uint8 magic
[0x30];
85 [value
(VFS_DEFAULT_DURABLE_COOKIE_VERSION
)] uint32
version;
86 boolean8 allow_reconnect
;
88 [string,charset
(UTF8
)] char *servicepath
;
89 [string,charset
(UTF8
)] char *base_name
;
90 hyper initial_allocation_size
;
91 hyper position_information
;
92 boolean8 update_write_time_triggered
;
93 boolean8 update_write_time_on_close
;
94 boolean8 write_time_forced
;
95 timespec close_write_time
;
96 vfs_default_durable_stat stat_info
;
97 } vfs_default_durable_cookie
;