Add in secure channel type used by AD trusts
[kai/samba.git] / source4 / librpc / idl / misc.idl
1 /*
2   miscellaneous IDL structures
3 */
4
5
6 [
7         pointer_default(unique)
8 ]
9 interface misc
10 {
11         typedef [public,noprint,gensize,noejs] struct {
12                 uint32 time_low;
13                 uint16 time_mid;
14                 uint16 time_hi_and_version;
15                 uint8  clock_seq[2];
16                 uint8  node[6];
17         } GUID;
18
19         typedef [public] struct {
20                 GUID uuid;
21                 uint32 if_version;
22         } ndr_syntax_id;
23
24         typedef [public] struct {
25                 uint32 handle_type;
26                 GUID   uuid;
27         } policy_handle;
28
29         /* secure channel types */
30         /* Only SEC_CHAN_WKSTA can forward requests to other domains. */
31
32         typedef [public] enum {
33                 SEC_CHAN_NULL        = 0,
34                 SEC_CHAN_WKSTA       = 2,
35                 SEC_CHAN_DNS_DOMAIN  = 3,
36                 SEC_CHAN_DOMAIN      = 4,
37                 SEC_CHAN_BDC         = 6
38         } netr_SchannelType;
39
40         /* SAM database types */
41         typedef [public,v1_enum] enum {
42                 SAM_DATABASE_DOMAIN  = 0, /* Domain users and groups */
43                 SAM_DATABASE_BUILTIN = 1, /* BUILTIN users and groups */
44                 SAM_DATABASE_PRIVS   = 2 /* Privileges */
45         } netr_SamDatabaseID;
46
47         typedef [public,v1_enum] enum {
48                 SAMR_REJECT_OTHER      = 0,
49                 SAMR_REJECT_TOO_SHORT  = 1,
50                 SAMR_REJECT_IN_HISTORY = 2,
51                 SAMR_REJECT_COMPLEXITY = 5
52         } samr_RejectReason;
53
54         /* id used to identify a endpoint, possibly in a cluster */
55         typedef [public] struct {
56                 hyper id;
57                 uint32 id2;
58                 uint32 node;
59         } server_id;
60 }