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,
110 const char **dcname);
111 NTSTATUS rpccli_netr_LogonControl(struct rpc_pipe_client *cli,
113 const char *logon_server,
114 enum netr_LogonControlCode function_code,
116 union netr_CONTROL_QUERY_INFORMATION *info,
118 NTSTATUS rpccli_netr_GetAnyDCName(struct rpc_pipe_client *cli,
120 const char *logon_server,
121 const char *domainname,
124 NTSTATUS rpccli_netr_LogonControl2(struct rpc_pipe_client *cli,
126 const char *logon_server,
127 uint32_t function_code,
129 union netr_CONTROL_DATA_INFORMATION data,
130 union netr_CONTROL_QUERY_INFORMATION *query,
132 NTSTATUS rpccli_netr_ServerAuthenticate2(struct rpc_pipe_client *cli,
134 const char *server_name,
135 const char *account_name,
136 enum netr_SchannelType secure_channel_type,
137 const char *computer_name,
138 struct netr_Credential *credentials,
139 uint32_t *negotiate_flags);
140 NTSTATUS rpccli_netr_DatabaseSync2(struct rpc_pipe_client *cli,
142 const char *logon_server,
143 const char *computername,
144 struct netr_Authenticator credential,
145 struct netr_Authenticator *return_authenticator,
146 enum netr_SamDatabaseID database_id,
147 uint16_t restart_state,
148 uint32_t *sync_context,
149 uint32_t preferredmaximumlength,
150 struct netr_DELTA_ENUM_ARRAY *delta_enum_array);
151 NTSTATUS rpccli_netr_DatabaseRedo(struct rpc_pipe_client *cli,
153 const char *logon_server,
154 const char *computername,
155 struct netr_Authenticator credential,
156 struct netr_Authenticator *return_authenticator,
157 uint8_t *change_log_entry,
158 uint32_t change_log_entry_size,
159 struct netr_DELTA_ENUM_ARRAY *delta_enum_array);
160 NTSTATUS rpccli_netr_LogonControl2Ex(struct rpc_pipe_client *cli,
162 const char *logon_server,
163 uint32_t function_code,
165 union netr_CONTROL_DATA_INFORMATION data,
166 union netr_CONTROL_QUERY_INFORMATION *query,
168 NTSTATUS rpccli_netr_NetrEnumerateTrustedDomains(struct rpc_pipe_client *cli,
170 const char *server_name,
171 struct netr_Blob *trusted_domains_blob,
173 NTSTATUS rpccli_netr_DsRGetDCName(struct rpc_pipe_client *cli,
175 const char *server_unc,
176 const char *domain_name,
177 struct GUID *domain_guid,
178 struct GUID *site_guid,
180 struct netr_DsRGetDCNameInfo *info,
182 NTSTATUS rpccli_netr_NETRLOGONDUMMYROUTINE1(struct rpc_pipe_client *cli,
185 NTSTATUS rpccli_netr_NETRLOGONSETSERVICEBITS(struct rpc_pipe_client *cli,
188 NTSTATUS rpccli_netr_LogonGetTrustRid(struct rpc_pipe_client *cli,
190 const char *server_name,
191 const char *domain_name,
194 NTSTATUS rpccli_netr_NETRLOGONCOMPUTESERVERDIGEST(struct rpc_pipe_client *cli,
197 NTSTATUS rpccli_netr_NETRLOGONCOMPUTECLIENTDIGEST(struct rpc_pipe_client *cli,
200 NTSTATUS rpccli_netr_ServerAuthenticate3(struct rpc_pipe_client *cli,
202 const char *server_name,
203 const char *account_name,
204 enum netr_SchannelType secure_channel_type,
205 const char *computer_name,
206 struct netr_Credential *credentials,
207 uint32_t *negotiate_flags,
209 NTSTATUS rpccli_netr_DsRGetDCNameEx(struct rpc_pipe_client *cli,
211 const char *server_unc,
212 const char *domain_name,
213 struct GUID *domain_guid,
214 const char *site_name,
216 struct netr_DsRGetDCNameInfo *info,
218 NTSTATUS rpccli_netr_DsRGetSiteName(struct rpc_pipe_client *cli,
220 const char *computer_name,
223 NTSTATUS rpccli_netr_LogonGetDomainInfo(struct rpc_pipe_client *cli,
225 const char *server_name,
226 const char *computer_name,
227 struct netr_Authenticator *credential,
228 struct netr_Authenticator *return_authenticator,
230 union netr_DomainQuery query,
231 union netr_DomainInfo *info);
232 NTSTATUS rpccli_netr_ServerPasswordSet2(struct rpc_pipe_client *cli,
234 const char *server_name,
235 const char *account_name,
236 enum netr_SchannelType secure_channel_type,
237 const char *computer_name,
238 struct netr_Authenticator credential,
239 struct netr_CryptPassword new_password,
240 struct netr_Authenticator *return_authenticator);
241 NTSTATUS rpccli_netr_ServerPasswordGet(struct rpc_pipe_client *cli,
243 const char *server_name,
244 const char *account_name,
245 enum netr_SchannelType secure_channel_type,
246 const char *computer_name,
247 struct netr_Authenticator *credential,
248 struct netr_Authenticator *return_authenticator,
249 struct samr_Password *password,
251 NTSTATUS rpccli_netr_NETRLOGONSENDTOSAM(struct rpc_pipe_client *cli,
254 NTSTATUS rpccli_netr_DsRAddressToSitenamesW(struct rpc_pipe_client *cli,
256 const char *server_name,
258 struct netr_DsRAddress *addresses,
259 struct netr_DsRAddressToSitenamesWCtr **ctr,
261 NTSTATUS rpccli_netr_DsRGetDCNameEx2(struct rpc_pipe_client *cli,
263 const char *server_unc,
264 const char *client_account,
266 const char *domain_name,
267 struct GUID *domain_guid,
268 const char *site_name,
270 struct netr_DsRGetDCNameInfo *info,
272 NTSTATUS rpccli_netr_NETRLOGONGETTIMESERVICEPARENTDOMAIN(struct rpc_pipe_client *cli,
275 NTSTATUS rpccli_netr_NetrEnumerateTrustedDomainsEx(struct rpc_pipe_client *cli,
277 const char *server_name,
278 struct netr_DomainTrustList *dom_trust_list,
280 NTSTATUS rpccli_netr_DsRAddressToSitenamesExW(struct rpc_pipe_client *cli,
282 const char *server_name,
284 struct netr_DsRAddress *addresses,
285 struct netr_DsRAddressToSitenamesExWCtr **ctr,
287 NTSTATUS rpccli_netr_DsrGetDcSiteCoverageW(struct rpc_pipe_client *cli,
289 const char *server_name,
290 struct DcSitesCtr *ctr,
292 NTSTATUS rpccli_netr_LogonSamLogonEx(struct rpc_pipe_client *cli,
294 const char *server_name,
295 const char *computer_name,
296 uint16_t logon_level,
297 union netr_LogonLevel logon,
298 uint16_t validation_level,
299 union netr_Validation *validation,
300 uint8_t *authoritative,
302 NTSTATUS rpccli_netr_DsrEnumerateDomainTrusts(struct rpc_pipe_client *cli,
304 const char *server_name,
305 uint32_t trust_flags,
306 struct netr_DomainTrustList *trusts,
308 NTSTATUS rpccli_netr_DSRDEREGISTERDNSHOSTRECORDS(struct rpc_pipe_client *cli,
311 NTSTATUS rpccli_netr_ServerTrustPasswordsGet(struct rpc_pipe_client *cli,
313 const char *server_name,
314 const char *account_name,
315 enum netr_SchannelType secure_channel_type,
316 const char *computer_name,
317 struct netr_Authenticator *credential,
318 struct netr_Authenticator *return_authenticator,
319 struct samr_Password *password,
320 struct samr_Password *password2);
321 NTSTATUS rpccli_netr_DsRGetForestTrustInformation(struct rpc_pipe_client *cli,
323 const char *server_name,
324 const char *trusted_domain_name,
326 struct lsa_ForestTrustInformation **forest_trust_info,
328 NTSTATUS rpccli_netr_GetForestTrustInformation(struct rpc_pipe_client *cli,
330 const char *server_name,
331 const char *trusted_domain_name,
332 struct netr_Authenticator *credential,
333 struct netr_Authenticator *return_authenticator,
335 struct lsa_ForestTrustInformation **forest_trust_info,
337 NTSTATUS rpccli_netr_LogonSamLogonWithFlags(struct rpc_pipe_client *cli,
339 const char *server_name,
340 const char *computer_name,
341 struct netr_Authenticator *credential,
342 struct netr_Authenticator *return_authenticator,
343 uint16_t logon_level,
344 union netr_LogonLevel logon,
345 uint16_t validation_level,
346 union netr_Validation *validation,
347 uint8_t *authoritative,
349 NTSTATUS rpccli_netr_NETRSERVERGETTRUSTINFO(struct rpc_pipe_client *cli,
352 #endif /* __CLI_NETLOGON__ */