s4-netlogon: implement dcesrv_netr_DsRAddressToSitenamesExW
[Samba/aatanasov.git] / source4 / librpc / idl / winbind.idl
blob5cefb38f75f28a75e99bb832e20ae36a40277afb
1 /*
2 winbind IRPC interface
3 */
5 #include "idl_types.h"
7 import "netlogon.idl", "lsa.idl", "security.idl";
10 uuid("245f3e6b-3c5d-6e21-3a2d-2a3d645b7221"),
11 version(1.0),
12 pointer_default(unique)
14 interface winbind
16 typedef [switch_type(uint16)] union netr_LogonLevel netr_LogonLevel;
17 typedef [switch_type(uint16)] union netr_Validation netr_Validation;
19 typedef enum {
20 ID_TYPE_NOT_SPECIFIED,
21 ID_TYPE_UID,
22 ID_TYPE_GID,
23 ID_TYPE_BOTH
24 } id_type;
26 typedef struct {
27 uint32 id;
28 id_type type;
29 } unixid;
31 typedef struct {
32 unixid *unixid;
33 dom_sid *sid;
34 NTSTATUS status;
35 } id_mapping;
37 /* a call to get runtime informations */
38 void winbind_information(/* TODO */);
40 /*
41 * a call to trigger some internal events,
42 * for use in torture tests...
44 NTSTATUS winbind_remote_control(/* TODO */);
47 * do a netr_LogonSamLogon() against the right DC
49 NTSTATUS winbind_SamLogon(
50 [in] uint16 logon_level,
51 [in] [switch_is(logon_level)] netr_LogonLevel logon,
52 [in] uint16 validation_level,
53 [out] [switch_is(validation_level)] netr_Validation validation,
54 [out] uint8 authoritative
57 typedef [v1_enum] enum {
58 WINBIND_IDMAP_LEVEL_SIDS_TO_XIDS = 1,
59 WINBIND_IDMAP_LEVEL_XIDS_TO_SIDS = 2
60 } winbind_get_idmap_level;
62 NTSTATUS winbind_get_idmap(
63 [in] winbind_get_idmap_level level,
64 [in] uint32 count,
65 [in,out] [size_is(count)] id_mapping ids[]