1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-23 17:34:34 +03:00
samba-mirror/librpc/idl/bkupblobs.idl
Andrew Bartlett a106ceb7bf librpc: Match interface name and file name for bkupblobs.idl
This helps generate fuzzers for this IDL.

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
2019-11-13 00:32:36 +00:00

55 lines
1.3 KiB
Plaintext

#include "idl_types.h"
import "misc.idl";
import "security.idl";
import "fscc.idl";
/* bkup blobs interface definition */
[
pointer_default(unique),
helpstring("bkup blobs")
]
interface bkupblobs
{
typedef [v1_enum] enum {
STREAM_ID_DATA = 1,
STREAM_ID_EX_DATA = 2,
STREAM_ID_SECURITY_DATA = 3,
STREAM_ID_ALTERNATE_DATA = 4,
STREAM_ID_LINK = 5,
STREAM_ID_OBJECTID = 7,
STREAM_ID_REPARSE_DATA = 8,
STREAM_ID_SPARSE_BLOCK = 9,
STREAM_ID_TXFS_DATA = 10
} bkup_StreamId;
typedef [v1_enum] enum {
STREAM_ATTRIBUTE_NORMAL = 0,
STREAM_ATTRIBUTE_SECURITY = 2,
STREAM_ATTRIBUTE_SPARSE = 8
} bkup_StreamAttribute;
typedef [nodiscriminant] union {
[default] DATA_BLOB blob;
[flag(NDR_ALIGN2),case(STREAM_ID_SECURITY_DATA)] security_descriptor sd;
[case(STREAM_ID_OBJECTID)] fscc_FileObjectIdBuffer_2 object;
} bkup_StreamData;
typedef [public] struct {
bkup_StreamId id;
bkup_StreamAttribute attribute;
hyper size;
uint32 stream_name_size;
[charset(UTF16),flag(STR_NOTERM)] uint16 stream_name[stream_name_size];
[subcontext(0), subcontext_size(size), switch_is(id)] [flag(NDR_REMAINING)] bkup_StreamData data;
} bkup_Win32StreamId;
typedef [nopush, nopull, flag(NDR_NOALIGN), public] struct {
uint32 num_stream;
bkup_Win32StreamId streams[num_stream];
} bkup_NTBackupFile;
}