3 import "wkssvc.idl", "security.idl", "misc.idl";
6 libnetjoin interface definition
10 pointer_default(unique),
15 typedef bitmap wkssvc_joinflags wkssvc_joinflags;
16 typedef enum netr_SchannelType netr_SchannelType;
18 typedef [public] enum {
19 JoinDomNameTypeUnknown = 0,
20 JoinDomNameTypeDNS = 1,
21 JoinDomNameTypeNBT = 2
22 } libnetjoin_JoinDomNameType;
24 [nopush,nopull,noopnum] WERROR libnet_JoinCtx(
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,
37 [in] string os_servicepack,
38 [in] boolean8 create_upn,
40 [in] boolean8 modify_config,
41 [in,unique] ads_struct *ads,
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,
51 [out] dom_sid *domain_sid,
52 [out] boolean8 modified_config,
53 [out] string error_string,
54 [out] boolean8 domain_is_ad
57 [nopush,nopull,noopnum] WERROR libnet_UnjoinCtx(
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,
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