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];