[745] | 1 | #include "idl_types.h"
|
---|
| 2 |
|
---|
| 3 | /*
|
---|
| 4 | miscellaneous IDL structures
|
---|
| 5 | */
|
---|
| 6 |
|
---|
| 7 |
|
---|
| 8 | [
|
---|
| 9 | pyhelper("librpc/ndr/py_misc.c"),
|
---|
| 10 | pointer_default(unique)
|
---|
| 11 | ]
|
---|
| 12 | interface misc
|
---|
| 13 | {
|
---|
| 14 | typedef [public,noprint,gensize] struct {
|
---|
| 15 | uint32 time_low;
|
---|
| 16 | uint16 time_mid;
|
---|
| 17 | uint16 time_hi_and_version;
|
---|
| 18 | uint8 clock_seq[2];
|
---|
| 19 | uint8 node[6];
|
---|
| 20 | } GUID;
|
---|
| 21 |
|
---|
| 22 | typedef [public] struct {
|
---|
| 23 | GUID uuid;
|
---|
| 24 | /* The major version is encoded in the 16 least significant bits,
|
---|
| 25 | the minor in the 16 most significant bits.
|
---|
| 26 | http://www.opengroup.org/onlinepubs/9629399/chap12.htm */
|
---|
| 27 | uint32 if_version;
|
---|
| 28 | } ndr_syntax_id;
|
---|
| 29 |
|
---|
| 30 | typedef [public] struct {
|
---|
| 31 | uint32 handle_type;
|
---|
| 32 | GUID uuid;
|
---|
| 33 | } policy_handle;
|
---|
| 34 |
|
---|
| 35 | /* secure channel types */
|
---|
| 36 | /* Only SEC_CHAN_WKSTA can forward requests to other domains. */
|
---|
| 37 |
|
---|
| 38 | typedef [public] enum {
|
---|
| 39 | SEC_CHAN_NULL = 0,
|
---|
| 40 | SEC_CHAN_LOCAL = 1,
|
---|
| 41 | SEC_CHAN_WKSTA = 2,
|
---|
| 42 | SEC_CHAN_DNS_DOMAIN = 3,
|
---|
| 43 | SEC_CHAN_DOMAIN = 4,
|
---|
| 44 | SEC_CHAN_LANMAN = 5,
|
---|
| 45 | SEC_CHAN_BDC = 6,
|
---|
| 46 | SEC_CHAN_RODC = 7
|
---|
| 47 | } netr_SchannelType;
|
---|
| 48 |
|
---|
| 49 | typedef [public] struct {
|
---|
| 50 | NTSTATUS ntstatus;
|
---|
| 51 | uint32 unknown1;
|
---|
| 52 | uint32 unknown2; /* 0x00000001 */
|
---|
| 53 | } KRB5_EDATA_NTSTATUS;
|
---|
| 54 |
|
---|
| 55 | typedef [public,v1_enum] enum {
|
---|
| 56 | REG_NONE = 0,
|
---|
| 57 | REG_SZ = 1,
|
---|
| 58 | REG_EXPAND_SZ = 2,
|
---|
| 59 | REG_BINARY = 3,
|
---|
| 60 | REG_DWORD = 4,
|
---|
| 61 | REG_DWORD_BIG_ENDIAN = 5,
|
---|
| 62 | REG_LINK = 6,
|
---|
| 63 | REG_MULTI_SZ = 7,
|
---|
| 64 | REG_RESOURCE_LIST = 8,
|
---|
| 65 | REG_FULL_RESOURCE_DESCRIPTOR = 9,
|
---|
| 66 | REG_RESOURCE_REQUIREMENTS_LIST = 10,
|
---|
| 67 | REG_QWORD = 11
|
---|
| 68 | } winreg_Type;
|
---|
| 69 |
|
---|
| 70 | typedef [nodiscriminant,public,flag(NDR_LITTLE_ENDIAN)] union {
|
---|
| 71 | [case(REG_NONE)];
|
---|
| 72 | [case(REG_SZ)] nstring string;
|
---|
| 73 | [case(REG_EXPAND_SZ)] nstring string;
|
---|
| 74 | [case(REG_BINARY),flag(NDR_REMAINING)] DATA_BLOB binary;
|
---|
| 75 | [case(REG_DWORD)] uint32 value;
|
---|
| 76 | [case(REG_DWORD_BIG_ENDIAN),flag(NDR_BIG_ENDIAN)] uint32 value;
|
---|
| 77 | [case(REG_MULTI_SZ)] nstring_array string_array;
|
---|
| 78 | [default,flag(NDR_REMAINING)] DATA_BLOB data;
|
---|
| 79 | } winreg_Data;
|
---|
| 80 | }
|
---|