1 #include "librpc/gen_ndr/ndr_netlogon.h"
2 #ifndef __CLI_NETLOGON__
3 #define __CLI_NETLOGON__
4 NTSTATUS rpccli_netr_LogonUasLogon(struct rpc_pipe_client *cli,
6 const char *server_name,
7 const char *account_name,
8 const char *workstation,
9 struct netr_UasInfo *info,
11 NTSTATUS rpccli_netr_LogonUasLogoff(struct rpc_pipe_client *cli,
13 const char *server_name,
14 const char *account_name,
15 const char *workstation,
16 struct netr_UasLogoffInfo *info,
18 NTSTATUS rpccli_netr_LogonSamLogon(struct rpc_pipe_client *cli,
20 const char *server_name,
21 const char *computer_name,
22 struct netr_Authenticator *credential,
23 struct netr_Authenticator *return_authenticator,
25 union netr_LogonLevel logon,
26 uint16_t validation_level,
27 union netr_Validation *validation,
28 uint8_t *authoritative);
29 NTSTATUS rpccli_netr_LogonSamLogoff(struct rpc_pipe_client *cli,
31 const char *server_name,
32 const char *computer_name,
33 struct netr_Authenticator *credential,
34 struct netr_Authenticator *return_authenticator,
36 union netr_LogonLevel logon);
37 NTSTATUS rpccli_netr_ServerReqChallenge(struct rpc_pipe_client *cli,
39 const char *server_name,
40 const char *computer_name,
41 struct netr_Credential *credentials);
42 NTSTATUS rpccli_netr_ServerAuthenticate(struct rpc_pipe_client *cli,
44 const char *server_name,
45 const char *account_name,
46 enum netr_SchannelType secure_channel_type,
47 const char *computer_name,
48 struct netr_Credential *credentials);
49 NTSTATUS rpccli_netr_ServerPasswordSet(struct rpc_pipe_client *cli,
51 const char *server_name,
52 const char *account_name,
53 enum netr_SchannelType secure_channel_type,
54 const char *computer_name,
55 struct netr_Authenticator credential,
56 struct samr_Password new_password,
57 struct netr_Authenticator *return_authenticator);
58 NTSTATUS rpccli_netr_DatabaseDeltas(struct rpc_pipe_client *cli,
60 const char *logon_server,
61 const char *computername,
62 struct netr_Authenticator credential,
63 struct netr_Authenticator *return_authenticator,
64 enum netr_SamDatabaseID database_id,
65 uint64_t *sequence_num,
66 uint32_t preferredmaximumlength,
67 struct netr_DELTA_ENUM_ARRAY *delta_enum_array);
68 NTSTATUS rpccli_netr_DatabaseSync(struct rpc_pipe_client *cli,
70 const char *logon_server,
71 const char *computername,
72 struct netr_Authenticator credential,
73 struct netr_Authenticator *return_authenticator,
74 enum netr_SamDatabaseID database_id,
75 uint32_t *sync_context,
76 uint32_t preferredmaximumlength,
77 struct netr_DELTA_ENUM_ARRAY *delta_enum_array);
78 NTSTATUS rpccli_netr_AccountDeltas(struct rpc_pipe_client *cli,
80 const char *logon_server,
81 const char *computername,
82 struct netr_Authenticator credential,
83 struct netr_Authenticator *return_authenticator,
84 struct netr_UAS_INFO_0 uas,
88 struct netr_AccountBuffer *buffer,
89 uint32_t *count_returned,
90 uint32_t *total_entries,
91 struct netr_UAS_INFO_0 *recordid);
92 NTSTATUS rpccli_netr_AccountSync(struct rpc_pipe_client *cli,
94 const char *logon_server,
95 const char *computername,
96 struct netr_Authenticator credential,
97 struct netr_Authenticator *return_authenticator,
101 struct netr_AccountBuffer *buffer,
102 uint32_t *count_returned,
103 uint32_t *total_entries,
104 uint32_t *next_reference,
105 struct netr_UAS_INFO_0 *recordid);
106 NTSTATUS rpccli_netr_GetDcName(struct rpc_pipe_client *cli,
108 const char *logon_server,
109 const char *domainname,
112 NTSTATUS rpccli_netr_LogonControl(struct rpc_pipe_client *cli,
114 const char *logon_server,
115 enum netr_LogonControlCode function_code,
117 union netr_CONTROL_QUERY_INFORMATION *info,
119 NTSTATUS rpccli_netr_GetAnyDCName(struct rpc_pipe_client *cli,
121 const char *logon_server,
122 const char *domainname,
125 NTSTATUS rpccli_netr_LogonControl2(struct rpc_pipe_client *cli,
127 const char *logon_server,
128 uint32_t function_code,
130 union netr_CONTROL_DATA_INFORMATION data,
131 union netr_CONTROL_QUERY_INFORMATION *query,
133 NTSTATUS rpccli_netr_ServerAuthenticate2(struct rpc_pipe_client *cli,
135 const char *server_name,
136 const char *account_name,
137 enum netr_SchannelType secure_channel_type,
138 const char *computer_name,
139 struct netr_Credential *credentials,
140 uint32_t *negotiate_flags);
141 NTSTATUS rpccli_netr_DatabaseSync2(struct rpc_pipe_client *cli,
143 const char *logon_server,
144 const char *computername,
145 struct netr_Authenticator credential,
146 struct netr_Authenticator *return_authenticator,
147 enum netr_SamDatabaseID database_id,
148 uint16_t restart_state,
149 uint32_t *sync_context,
150 uint32_t preferredmaximumlength,
151 struct netr_DELTA_ENUM_ARRAY *delta_enum_array);
152 NTSTATUS rpccli_netr_DatabaseRedo(struct rpc_pipe_client *cli,
154 const char *logon_server,
155 const char *computername,
156 struct netr_Authenticator credential,
157 struct netr_Authenticator *return_authenticator,
158 uint8_t *change_log_entry,
159 uint32_t change_log_entry_size,
160 struct netr_DELTA_ENUM_ARRAY *delta_enum_array);
161 NTSTATUS rpccli_netr_LogonControl2Ex(struct rpc_pipe_client *cli,
163 const char *logon_server,
164 uint32_t function_code,
166 union netr_CONTROL_DATA_INFORMATION data,
167 union netr_CONTROL_QUERY_INFORMATION *query,
169 NTSTATUS rpccli_netr_NetrEnumerateTrustedDomains(struct rpc_pipe_client *cli,
171 const char *server_name,
172 struct netr_Blob *trusted_domains_blob,
174 NTSTATUS rpccli_netr_DsRGetDCName(struct rpc_pipe_client *cli,
176 const char *server_unc,
177 const char *domain_name,
178 struct GUID *domain_guid,
179 struct GUID *site_guid,
181 struct netr_DsRGetDCNameInfo **info,
183 NTSTATUS rpccli_netr_NETRLOGONDUMMYROUTINE1(struct rpc_pipe_client *cli,
186 NTSTATUS rpccli_netr_NETRLOGONSETSERVICEBITS(struct rpc_pipe_client *cli,
189 NTSTATUS rpccli_netr_LogonGetTrustRid(struct rpc_pipe_client *cli,
191 const char *server_name,
192 const char *domain_name,
195 NTSTATUS rpccli_netr_NETRLOGONCOMPUTESERVERDIGEST(struct rpc_pipe_client *cli,
198 NTSTATUS rpccli_netr_NETRLOGONCOMPUTECLIENTDIGEST(struct rpc_pipe_client *cli,
201 NTSTATUS rpccli_netr_ServerAuthenticate3(struct rpc_pipe_client *cli,
203 const char *server_name,
204 const char *account_name,
205 enum netr_SchannelType secure_channel_type,
206 const char *computer_name,
207 struct netr_Credential *credentials,
208 uint32_t *negotiate_flags,
210 NTSTATUS rpccli_netr_DsRGetDCNameEx(struct rpc_pipe_client *cli,
212 const char *server_unc,
213 const char *domain_name,
214 struct GUID *domain_guid,
215 const char *site_name,
217 struct netr_DsRGetDCNameInfo **info,
219 NTSTATUS rpccli_netr_DsRGetSiteName(struct rpc_pipe_client *cli,
221 const char *computer_name,
224 NTSTATUS rpccli_netr_LogonGetDomainInfo(struct rpc_pipe_client *cli,
226 const char *server_name,
227 const char *computer_name,
228 struct netr_Authenticator *credential,
229 struct netr_Authenticator *return_authenticator,
231 union netr_DomainQuery query,
232 union netr_DomainInfo *info);
233 NTSTATUS rpccli_netr_ServerPasswordSet2(struct rpc_pipe_client *cli,
235 const char *server_name,
236 const char *account_name,
237 enum netr_SchannelType secure_channel_type,
238 const char *computer_name,
239 struct netr_Authenticator credential,
240 struct netr_CryptPassword new_password,
241 struct netr_Authenticator *return_authenticator);
242 NTSTATUS rpccli_netr_ServerPasswordGet(struct rpc_pipe_client *cli,
244 const char *server_name,
245 const char *account_name,
246 enum netr_SchannelType secure_channel_type,
247 const char *computer_name,
248 struct netr_Authenticator *credential,
249 struct netr_Authenticator *return_authenticator,
250 struct samr_Password *password,
252 NTSTATUS rpccli_netr_NETRLOGONSENDTOSAM(struct rpc_pipe_client *cli,
255 NTSTATUS rpccli_netr_DsRAddressToSitenamesW(struct rpc_pipe_client *cli,
257 const char *server_name,
259 struct netr_DsRAddress *addresses,
260 struct netr_DsRAddressToSitenamesWCtr **ctr,
262 NTSTATUS rpccli_netr_DsRGetDCNameEx2(struct rpc_pipe_client *cli,
264 const char *server_unc,
265 const char *client_account,
267 const char *domain_name,
268 struct GUID *domain_guid,
269 const char *site_name,
271 struct netr_DsRGetDCNameInfo **info,
273 NTSTATUS rpccli_netr_NETRLOGONGETTIMESERVICEPARENTDOMAIN(struct rpc_pipe_client *cli,
276 NTSTATUS rpccli_netr_NetrEnumerateTrustedDomainsEx(struct rpc_pipe_client *cli,
278 const char *server_name,
279 struct netr_DomainTrustList *dom_trust_list,
281 NTSTATUS rpccli_netr_DsRAddressToSitenamesExW(struct rpc_pipe_client *cli,
283 const char *server_name,
285 struct netr_DsRAddress *addresses,
286 struct netr_DsRAddressToSitenamesExWCtr **ctr,
288 NTSTATUS rpccli_netr_DsrGetDcSiteCoverageW(struct rpc_pipe_client *cli,
290 const char *server_name,
291 struct DcSitesCtr *ctr,
293 NTSTATUS rpccli_netr_LogonSamLogonEx(struct rpc_pipe_client *cli,
295 const char *server_name,
296 const char *computer_name,
297 uint16_t logon_level,
298 union netr_LogonLevel logon,
299 uint16_t validation_level,
300 union netr_Validation *validation,
301 uint8_t *authoritative,
303 NTSTATUS rpccli_netr_DsrEnumerateDomainTrusts(struct rpc_pipe_client *cli,
305 const char *server_name,
306 uint32_t trust_flags,
307 struct netr_DomainTrustList *trusts,
309 NTSTATUS rpccli_netr_DsrDeregisterDNSHostRecords(struct rpc_pipe_client *cli,
311 const char *server_name,
313 struct GUID *domain_guid,
314 struct GUID *dsa_guid,
315 const char *dns_host,
317 NTSTATUS rpccli_netr_ServerTrustPasswordsGet(struct rpc_pipe_client *cli,
319 const char *server_name,
320 const char *account_name,
321 enum netr_SchannelType secure_channel_type,
322 const char *computer_name,
323 struct netr_Authenticator *credential,
324 struct netr_Authenticator *return_authenticator,
325 struct samr_Password *password,
326 struct samr_Password *password2);
327 NTSTATUS rpccli_netr_DsRGetForestTrustInformation(struct rpc_pipe_client *cli,
329 const char *server_name,
330 const char *trusted_domain_name,
332 struct lsa_ForestTrustInformation **forest_trust_info,
334 NTSTATUS rpccli_netr_GetForestTrustInformation(struct rpc_pipe_client *cli,
336 const char *server_name,
337 const char *trusted_domain_name,
338 struct netr_Authenticator *credential,
339 struct netr_Authenticator *return_authenticator,
341 struct lsa_ForestTrustInformation **forest_trust_info,
343 NTSTATUS rpccli_netr_LogonSamLogonWithFlags(struct rpc_pipe_client *cli,
345 const char *server_name,
346 const char *computer_name,
347 struct netr_Authenticator *credential,
348 struct netr_Authenticator *return_authenticator,
349 uint16_t logon_level,
350 union netr_LogonLevel logon,
351 uint16_t validation_level,
352 union netr_Validation *validation,
353 uint8_t *authoritative,
355 NTSTATUS rpccli_netr_NETRSERVERGETTRUSTINFO(struct rpc_pipe_client *cli,
358 #endif /* __CLI_NETLOGON__ */