61c117eb3b9a3aae7add2f39fb0b1d2145fbfc66
[metze/samba/wip.git] / source3 / librpc / idl / libnet_join.idl
1 #include "idl_types.h"
2
3 import "wkssvc.idl", "security.idl", "misc.idl";
4
5 /*
6   libnetjoin interface definition
7 */
8
9 [
10         pointer_default(unique),
11         helper("ads.h")
12 ]
13 interface libnetjoin
14 {
15         typedef bitmap wkssvc_joinflags wkssvc_joinflags;
16         typedef enum netr_SchannelType netr_SchannelType;
17
18         typedef [public] enum {
19                 JoinDomNameTypeUnknown = 0,
20                 JoinDomNameTypeDNS = 1,
21                 JoinDomNameTypeNBT = 2
22         } libnetjoin_JoinDomNameType;
23
24         [nopush,nopull,noopnum] WERROR libnet_JoinCtx(
25                 [in] string dc_name,
26                 [in] string machine_name,
27                 [in,ref] string *domain_name,
28                 [in] libnetjoin_JoinDomNameType domain_name_type,
29                 [in] string account_ou,
30                 [in] string admin_account,
31                 [in] string admin_domain,
32                 [in,noprint] string admin_password,
33                 [in] string machine_password,
34                 [in] wkssvc_joinflags join_flags,
35                 [in] string os_version,
36                 [in] string os_name,
37                 [in] string os_servicepack,
38                 [in] boolean8 create_upn,
39                 [in] string upn,
40                 [in] boolean8 modify_config,
41                 [in,unique] ads_struct *ads,
42                 [in] boolean8 debug,
43                 [in] boolean8 use_kerberos,
44                 [in] netr_SchannelType secure_channel_type,
45                 [in,noprint] messaging_context *msg_ctx,
46                 [out] string account_name,
47                 [out] string netbios_domain_name,
48                 [out] string dns_domain_name,
49                 [out] string forest_name,
50                 [out] string dn,
51                 [out] dom_sid *domain_sid,
52                 [out] boolean8 modified_config,
53                 [out] string error_string,
54                 [out] boolean8 domain_is_ad
55                 );
56
57         [nopush,nopull,noopnum] WERROR libnet_UnjoinCtx(
58                 [in] string dc_name,
59                 [in] string machine_name,
60                 [in] string domain_name,
61                 [in] string account_ou,
62                 [in] string admin_account,
63                 [in] string admin_domain,
64                 [in,noprint] string admin_password,
65                 [in] string machine_password,
66                 [in] wkssvc_joinflags unjoin_flags,
67                 [in] boolean8 delete_machine_account,
68                 [in] boolean8 modify_config,
69                 [in] dom_sid *domain_sid,
70                 [in,unique] ads_struct *ads,
71                 [in] boolean8 debug,
72                 [in] boolean8 use_kerberos,
73                 [in,noprint] messaging_context *msg_ctx,
74                 [out] string netbios_domain_name,
75                 [out] string dns_domain_name,
76                 [out] string forest_name,
77                 [out] boolean8 modified_config,
78                 [out] string error_string,
79                 [out] boolean8 disabled_machine_account,
80                 [out] boolean8 deleted_machine_account
81                 );
82 }