6 /* bkup blobs interface definition */
10 pointer_default(unique),
11 helpstring("bkup blobs")
17 typedef [v1_enum] enum {
19 STREAM_ID_EX_DATA
= 2,
20 STREAM_ID_SECURITY_DATA
= 3,
21 STREAM_ID_ALTERNATE_DATA
= 4,
23 STREAM_ID_OBJECTID
= 7,
24 STREAM_ID_REPARSE_DATA
= 8,
25 STREAM_ID_SPARSE_BLOCK
= 9,
26 STREAM_ID_TXFS_DATA
= 10
29 typedef [v1_enum] enum {
30 STREAM_ATTRIBUTE_NORMAL
= 0,
31 STREAM_ATTRIBUTE_SECURITY
= 2,
32 STREAM_ATTRIBUTE_SPARSE
= 8
33 } bkup_StreamAttribute
;
35 typedef [nodiscriminant
] union {
36 [default] DATA_BLOB blob
;
37 [flag
(NDR_ALIGN2
),case(STREAM_ID_SECURITY_DATA
)] security_descriptor sd
;
38 [case(STREAM_ID_OBJECTID
)] fscc_FileObjectIdBuffer_2
object;
41 typedef [public] struct {
43 bkup_StreamAttribute attribute
;
45 uint32 stream_name_size
;
46 [charset
(UTF16
),flag
(STR_NOTERM
)] uint16 stream_name
[stream_name_size
];
47 [subcontext
(0), subcontext_size
(size
), switch_is(id)] [flag
(NDR_REMAINING
)] bkup_StreamData data
;
50 typedef [nopush
, nopull
, flag
(NDR_NOALIGN
), public] struct {
52 bkup_Win32StreamId streams
[num_stream
];