mirror of
https://github.com/samba-team/samba.git
synced 2024-12-25 23:21:54 +03:00
e4523e3c8f
I found this confusing, so explian for the next poor programmer who has to get up to speed with this quickly. Andrew Bartlett
78 lines
2.0 KiB
Plaintext
78 lines
2.0 KiB
Plaintext
#include "idl_types.h"
|
|
|
|
/*
|
|
miscellaneous IDL structures
|
|
*/
|
|
|
|
|
|
[
|
|
pyhelper("librpc/ndr/py_misc.c"),
|
|
pointer_default(unique)
|
|
]
|
|
interface misc
|
|
{
|
|
typedef [public,noprint,gensize] struct {
|
|
uint32 time_low;
|
|
uint16 time_mid;
|
|
uint16 time_hi_and_version;
|
|
uint8 clock_seq[2];
|
|
uint8 node[6];
|
|
} GUID;
|
|
|
|
typedef [public] struct {
|
|
GUID uuid;
|
|
/* The major version is encoded in the 16 least significant bits,
|
|
the minor in the 16 most significant bits.
|
|
http://www.opengroup.org/onlinepubs/9629399/chap12.htm */
|
|
uint32 if_version;
|
|
} ndr_syntax_id;
|
|
|
|
typedef [public] struct {
|
|
uint32 handle_type;
|
|
GUID uuid;
|
|
} policy_handle;
|
|
|
|
/* secure channel types */
|
|
/* Only SEC_CHAN_WKSTA can forward requests to other domains. */
|
|
|
|
typedef [public] enum {
|
|
SEC_CHAN_NULL = 0,
|
|
SEC_CHAN_WKSTA = 2,
|
|
SEC_CHAN_DNS_DOMAIN = 3,
|
|
SEC_CHAN_DOMAIN = 4,
|
|
SEC_CHAN_BDC = 6
|
|
} netr_SchannelType;
|
|
|
|
typedef [public] struct {
|
|
NTSTATUS ntstatus;
|
|
uint32 unknown1;
|
|
uint32 unknown2; /* 0x00000001 */
|
|
} KRB5_EDATA_NTSTATUS;
|
|
|
|
typedef [public,v1_enum] enum {
|
|
REG_NONE = 0,
|
|
REG_SZ = 1,
|
|
REG_EXPAND_SZ = 2,
|
|
REG_BINARY = 3,
|
|
REG_DWORD = 4,
|
|
REG_DWORD_BIG_ENDIAN = 5,
|
|
REG_LINK = 6,
|
|
REG_MULTI_SZ = 7,
|
|
REG_RESOURCE_LIST = 8,
|
|
REG_FULL_RESOURCE_DESCRIPTOR = 9,
|
|
REG_RESOURCE_REQUIREMENTS_LIST = 10,
|
|
REG_QWORD = 11
|
|
} winreg_Type;
|
|
|
|
typedef [nodiscriminant,public,flag(NDR_LITTLE_ENDIAN)] union {
|
|
[case(REG_NONE)];
|
|
[case(REG_SZ)] nstring string;
|
|
[case(REG_EXPAND_SZ)] nstring string;
|
|
[case(REG_BINARY),flag(NDR_REMAINING)] DATA_BLOB binary;
|
|
[case(REG_DWORD)] uint32 value;
|
|
[case(REG_DWORD_BIG_ENDIAN),flag(NDR_BIG_ENDIAN)] uint32 value;
|
|
[case(REG_MULTI_SZ)] nstring_array string_array;
|
|
[default,flag(NDR_REMAINING)] DATA_BLOB data;
|
|
} winreg_Data;
|
|
}
|