source: branches/samba-3.2.x/source/client/client_proto.h

Last change on this file was 133, checked in by Paul Smedley, 17 years ago

Update trunk to 3.2.0pre3

File size: 14.9 KB
Line 
1#ifndef _CLIENT_PROTO_H_
2#define _CLIENT_PROTO_H_
3
4/* This file is automatically generated with "make proto". DO NOT EDIT */
5
6
7/* The following definitions come from client/client.c */
8
9const char *client_get_cur_dir(void);
10const char *client_set_cur_dir(const char *newdir);
11void do_list(const char *mask,
12 uint16 attribute,
13 void (*fn)(file_info *, const char *dir),
14 bool rec,
15 bool dirs);
16int cmd_iosize(void);
17
18/* The following definitions come from client/clitar.c */
19
20int cmd_block(void);
21int cmd_tarmode(void);
22int cmd_setmode(void);
23int cmd_tar(void);
24int process_tar(void);
25int tar_parseargs(int argc, char *argv[], const char *Optarg, int Optind);
26
27/* The following definitions come from client/dnsbrowse.c */
28
29int do_smb_browse(void);
30int do_smb_browse(void);
31
32/* The following definitions come from rpc_client/cli_netlogon.c */
33
34NTSTATUS rpccli_netlogon_setup_creds(struct rpc_pipe_client *cli,
35 const char *server_name,
36 const char *domain,
37 const char *clnt_name,
38 const char *machine_account,
39 const unsigned char machine_pwd[16],
40 enum netr_SchannelType sec_chan_type,
41 uint32_t *neg_flags_inout);
42NTSTATUS rpccli_netlogon_sam_logon(struct rpc_pipe_client *cli,
43 TALLOC_CTX *mem_ctx,
44 uint32 logon_parameters,
45 const char *domain,
46 const char *username,
47 const char *password,
48 const char *workstation,
49 int logon_type);
50NTSTATUS rpccli_netlogon_sam_network_logon(struct rpc_pipe_client *cli,
51 TALLOC_CTX *mem_ctx,
52 uint32 logon_parameters,
53 const char *server,
54 const char *username,
55 const char *domain,
56 const char *workstation,
57 const uint8 chal[8],
58 DATA_BLOB lm_response,
59 DATA_BLOB nt_response,
60 struct netr_SamInfo3 **info3);
61NTSTATUS rpccli_netlogon_sam_network_logon_ex(struct rpc_pipe_client *cli,
62 TALLOC_CTX *mem_ctx,
63 uint32 logon_parameters,
64 const char *server,
65 const char *username,
66 const char *domain,
67 const char *workstation,
68 const uint8 chal[8],
69 DATA_BLOB lm_response,
70 DATA_BLOB nt_response,
71 struct netr_SamInfo3 **info3);
72
73/* The following definitions come from rpc_client/cli_pipe.c */
74
75NTSTATUS rpc_api_pipe_req(struct rpc_pipe_client *cli,
76 uint8 op_num,
77 prs_struct *in_data,
78 prs_struct *out_data);
79struct rpc_pipe_client *cli_rpc_pipe_open_noauth(struct cli_state *cli, int pipe_idx, NTSTATUS *perr);
80struct rpc_pipe_client *cli_rpc_pipe_open_ntlmssp(struct cli_state *cli,
81 int pipe_idx,
82 enum pipe_auth_level auth_level,
83 const char *domain,
84 const char *username,
85 const char *password,
86 NTSTATUS *perr);
87struct rpc_pipe_client *cli_rpc_pipe_open_spnego_ntlmssp(struct cli_state *cli,
88 int pipe_idx,
89 enum pipe_auth_level auth_level,
90 const char *domain,
91 const char *username,
92 const char *password,
93 NTSTATUS *perr);
94struct rpc_pipe_client *get_schannel_session_key(struct cli_state *cli,
95 const char *domain,
96 uint32 *pneg_flags,
97 NTSTATUS *perr);
98struct rpc_pipe_client *cli_rpc_pipe_open_schannel_with_key(struct cli_state *cli,
99 int pipe_idx,
100 enum pipe_auth_level auth_level,
101 const char *domain,
102 const struct dcinfo *pdc,
103 NTSTATUS *perr);
104struct rpc_pipe_client *cli_rpc_pipe_open_ntlmssp_auth_schannel(struct cli_state *cli,
105 int pipe_idx,
106 enum pipe_auth_level auth_level,
107 const char *domain,
108 const char *username,
109 const char *password,
110 NTSTATUS *perr);
111struct rpc_pipe_client *cli_rpc_pipe_open_schannel(struct cli_state *cli,
112 int pipe_idx,
113 enum pipe_auth_level auth_level,
114 const char *domain,
115 NTSTATUS *perr);
116struct rpc_pipe_client *cli_rpc_pipe_open_krb5(struct cli_state *cli,
117 int pipe_idx,
118 enum pipe_auth_level auth_level,
119 const char *service_princ,
120 const char *username,
121 const char *password,
122 NTSTATUS *perr);
123
124/* The following definitions come from rpc_client/init_lsa.c */
125
126void init_lsa_String(struct lsa_String *name, const char *s);
127void init_lsa_StringLarge(struct lsa_StringLarge *name, const char *s);
128void init_lsa_AsciiString(struct lsa_AsciiString *name, const char *s);
129void init_lsa_AsciiStringLarge(struct lsa_AsciiStringLarge *name, const char *s);
130void init_lsa_sec_qos(struct lsa_QosInfo *r,
131 uint32_t len,
132 uint16_t impersonation_level,
133 uint8_t context_mode,
134 uint8_t effective_only);
135void init_lsa_obj_attr(struct lsa_ObjectAttribute *r,
136 uint32_t len,
137 uint8_t *root_dir,
138 const char *object_name,
139 uint32_t attributes,
140 struct security_descriptor *sec_desc,
141 struct lsa_QosInfo *sec_qos);
142void init_lsa_translated_sid(struct lsa_TranslatedSid *r,
143 enum lsa_SidType sid_type,
144 uint32_t rid,
145 uint32_t sid_index);
146void init_lsa_translated_name2(struct lsa_TranslatedName2 *r,
147 enum lsa_SidType sid_type,
148 const char *name,
149 uint32_t sid_index,
150 uint32_t unknown);
151
152/* The following definitions come from rpc_client/init_netlogon.c */
153
154void init_netr_SamBaseInfo(struct netr_SamBaseInfo *r,
155 NTTIME last_logon,
156 NTTIME last_logoff,
157 NTTIME acct_expiry,
158 NTTIME last_password_change,
159 NTTIME allow_password_change,
160 NTTIME force_password_change,
161 const char *account_name,
162 const char *full_name,
163 const char *logon_script,
164 const char *profile_path,
165 const char *home_directory,
166 const char *home_drive,
167 uint16_t logon_count,
168 uint16_t bad_password_count,
169 uint32_t rid,
170 uint32_t primary_gid,
171 struct samr_RidWithAttributeArray groups,
172 uint32_t user_flags,
173 struct netr_UserSessionKey key,
174 const char *logon_server,
175 const char *domain,
176 struct dom_sid2 *domain_sid,
177 struct netr_LMSessionKey LMSessKey,
178 uint32_t acct_flags);
179void init_netr_SamInfo3(struct netr_SamInfo3 *r,
180 NTTIME last_logon,
181 NTTIME last_logoff,
182 NTTIME acct_expiry,
183 NTTIME last_password_change,
184 NTTIME allow_password_change,
185 NTTIME force_password_change,
186 const char *account_name,
187 const char *full_name,
188 const char *logon_script,
189 const char *profile_path,
190 const char *home_directory,
191 const char *home_drive,
192 uint16_t logon_count,
193 uint16_t bad_password_count,
194 uint32_t rid,
195 uint32_t primary_gid,
196 struct samr_RidWithAttributeArray groups,
197 uint32_t user_flags,
198 struct netr_UserSessionKey key,
199 const char *logon_server,
200 const char *domain,
201 struct dom_sid2 *domain_sid,
202 struct netr_LMSessionKey LMSessKey,
203 uint32_t acct_flags,
204 uint32_t sidcount,
205 struct netr_SidAttr *sids);
206void init_netr_IdentityInfo(struct netr_IdentityInfo *r,
207 const char *domain_name,
208 uint32_t parameter_control,
209 uint32_t logon_id_low,
210 uint32_t logon_id_high,
211 const char *account_name,
212 const char *workstation);
213void init_netr_NetworkInfo(struct netr_NetworkInfo *r,
214 const char *domain_name,
215 uint32_t parameter_control,
216 uint32_t logon_id_low,
217 uint32_t logon_id_high,
218 const char *account_name,
219 const char *workstation,
220 uint8_t challenge[8],
221 struct netr_ChallengeResponse nt,
222 struct netr_ChallengeResponse lm);
223void init_netr_PasswordInfo(struct netr_PasswordInfo *r,
224 const char *domain_name,
225 uint32_t parameter_control,
226 uint32_t logon_id_low,
227 uint32_t logon_id_high,
228 const char *account_name,
229 const char *workstation,
230 struct samr_Password lmpassword,
231 struct samr_Password ntpassword);
232
233/* The following definitions come from rpc_client/init_srvsvc.c */
234
235void init_srvsvc_NetSrvInfo102(struct srvsvc_NetSrvInfo102 *r,
236 enum srvsvc_PlatformId platform_id,
237 const char *server_name,
238 uint32_t version_major,
239 uint32_t version_minor,
240 uint32_t server_type,
241 const char *comment,
242 uint32_t users,
243 uint32_t disc,
244 uint32_t hidden,
245 uint32_t announce,
246 uint32_t anndelta,
247 uint32_t licenses,
248 const char *userpath);
249void init_srvsvc_NetSrvInfo101(struct srvsvc_NetSrvInfo101 *r,
250 enum srvsvc_PlatformId platform_id,
251 const char *server_name,
252 uint32_t version_major,
253 uint32_t version_minor,
254 uint32_t server_type,
255 const char *comment);
256void init_srvsvc_NetSrvInfo100(struct srvsvc_NetSrvInfo100 *r,
257 enum srvsvc_PlatformId platform_id,
258 const char *server_name);
259void init_srvsvc_NetShareInfo0(struct srvsvc_NetShareInfo0 *r,
260 const char *name);
261void init_srvsvc_NetShareInfo1(struct srvsvc_NetShareInfo1 *r,
262 const char *name,
263 enum srvsvc_ShareType type,
264 const char *comment);
265void init_srvsvc_NetShareInfo2(struct srvsvc_NetShareInfo2 *r,
266 const char *name,
267 enum srvsvc_ShareType type,
268 const char *comment,
269 uint32_t permissions,
270 uint32_t max_users,
271 uint32_t current_users,
272 const char *path,
273 const char *password);
274void init_srvsvc_NetShareInfo501(struct srvsvc_NetShareInfo501 *r,
275 const char *name,
276 enum srvsvc_ShareType type,
277 const char *comment,
278 uint32_t csc_policy);
279void init_srvsvc_NetShareInfo502(struct srvsvc_NetShareInfo502 *r,
280 const char *name,
281 enum srvsvc_ShareType type,
282 const char *comment,
283 uint32_t permissions,
284 uint32_t max_users,
285 uint32_t current_users,
286 const char *path,
287 const char *password,
288 struct sec_desc_buf *sd_buf);
289void init_srvsvc_NetShareInfo1004(struct srvsvc_NetShareInfo1004 *r,
290 const char *comment);
291void init_srvsvc_NetShareInfo1005(struct srvsvc_NetShareInfo1005 *r,
292 uint32_t dfs_flags);
293void init_srvsvc_NetShareInfo1006(struct srvsvc_NetShareInfo1006 *r,
294 uint32_t max_users);
295void init_srvsvc_NetShareInfo1007(struct srvsvc_NetShareInfo1007 *r,
296 uint32_t flags,
297 const char *alternate_directory_name);
298void init_srvsvc_NetRemoteTODInfo(struct srvsvc_NetRemoteTODInfo *r,
299 uint32_t elapsed,
300 uint32_t msecs,
301 uint32_t hours,
302 uint32_t mins,
303 uint32_t secs,
304 uint32_t hunds,
305 int32_t ttimezone,
306 uint32_t tinterval,
307 uint32_t day,
308 uint32_t month,
309 uint32_t year,
310 uint32_t weekday);
311void init_srvsvc_NetSessInfo0(struct srvsvc_NetSessInfo0 *r,
312 const char *client);
313void init_srvsvc_NetSessInfo1(struct srvsvc_NetSessInfo1 *r,
314 const char *client,
315 const char *user,
316 uint32_t num_open,
317 uint32_t _time,
318 uint32_t idle_time,
319 uint32_t user_flags);
320void init_srvsvc_NetSessInfo2(struct srvsvc_NetSessInfo2 *r,
321 const char *client,
322 const char *user,
323 uint32_t num_open,
324 uint32_t _time,
325 uint32_t idle_time,
326 uint32_t user_flags,
327 const char *client_type);
328void init_srvsvc_NetSessInfo10(struct srvsvc_NetSessInfo10 *r,
329 const char *client,
330 const char *user,
331 uint32_t _time,
332 uint32_t idle_time);
333void init_srvsvc_NetSessInfo502(struct srvsvc_NetSessInfo502 *r,
334 const char *client,
335 const char *user,
336 uint32_t num_open,
337 uint32_t _time,
338 uint32_t idle_time,
339 uint32_t user_flags,
340 const char *client_type,
341 const char *transport);
342void init_srvsvc_NetFileInfo2(struct srvsvc_NetFileInfo2 *r,
343 uint32_t fid);
344void init_srvsvc_NetFileInfo3(struct srvsvc_NetFileInfo3 *r,
345 uint32_t fid,
346 uint32_t permissions,
347 uint32_t num_locks,
348 const char *path,
349 const char *user);
350void init_srvsvc_NetConnInfo0(struct srvsvc_NetConnInfo0 *r,
351 uint32_t conn_id);
352void init_srvsvc_NetConnInfo1(struct srvsvc_NetConnInfo1 *r,
353 uint32_t conn_id,
354 uint32_t conn_type,
355 uint32_t num_open,
356 uint32_t num_users,
357 uint32_t conn_time,
358 const char *user,
359 const char *share);
360
361/* The following definitions come from rpc_parse/parse_rpc.c */
362
363const char *cli_get_pipe_name(int pipe_idx);
364void init_rpc_hdr(RPC_HDR *hdr, enum RPC_PKT_TYPE pkt_type, uint8 flags,
365 uint32 call_id, int data_len, int auth_len);
366bool smb_io_rpc_hdr(const char *desc, RPC_HDR *rpc, prs_struct *ps, int depth);
367void init_rpc_context(RPC_CONTEXT *rpc_ctx, uint16 context_id, RPC_IFACE *abstract, RPC_IFACE *transfer);
368void init_rpc_hdr_rb(RPC_HDR_RB *rpc,
369 uint16 max_tsize, uint16 max_rsize, uint32 assoc_gid,
370 RPC_CONTEXT *context);
371bool smb_io_rpc_context(const char *desc, RPC_CONTEXT *rpc_ctx, prs_struct *ps, int depth);
372bool smb_io_rpc_hdr_rb(const char *desc, RPC_HDR_RB *rpc, prs_struct *ps, int depth);
373void init_rpc_hdr_ba(RPC_HDR_BA *rpc,
374 uint16 max_tsize, uint16 max_rsize, uint32 assoc_gid,
375 const char *pipe_addr,
376 uint8 num_results, uint16 result, uint16 reason,
377 RPC_IFACE *transfer);
378bool smb_io_rpc_hdr_ba(const char *desc, RPC_HDR_BA *rpc, prs_struct *ps, int depth);
379void init_rpc_hdr_req(RPC_HDR_REQ *hdr, uint32 alloc_hint, uint16 opnum);
380bool smb_io_rpc_hdr_req(const char *desc, RPC_HDR_REQ *rpc, prs_struct *ps, int depth);
381bool smb_io_rpc_hdr_resp(const char *desc, RPC_HDR_RESP *rpc, prs_struct *ps, int depth);
382bool smb_io_rpc_hdr_fault(const char *desc, RPC_HDR_FAULT *rpc, prs_struct *ps, int depth);
383void init_rpc_hdr_auth(RPC_HDR_AUTH *rai,
384 uint8 auth_type, uint8 auth_level,
385 uint8 auth_pad_len,
386 uint32 auth_context_id);
387bool smb_io_rpc_hdr_auth(const char *desc, RPC_HDR_AUTH *rai, prs_struct *ps, int depth);
388bool rpc_auth_verifier_chk(RPC_AUTH_VERIFIER *rav,
389 const char *signature, uint32 msg_type);
390void init_rpc_auth_verifier(RPC_AUTH_VERIFIER *rav,
391 const char *signature, uint32 msg_type);
392bool smb_io_rpc_auth_verifier(const char *desc, RPC_AUTH_VERIFIER *rav, prs_struct *ps, int depth);
393bool smb_io_rpc_schannel_verifier(const char *desc, RPC_AUTH_VERIFIER *rav, prs_struct *ps, int depth);
394void init_rpc_auth_schannel_neg(RPC_AUTH_SCHANNEL_NEG *neg,
395 const char *domain, const char *myname);
396bool smb_io_rpc_auth_schannel_neg(const char *desc, RPC_AUTH_SCHANNEL_NEG *neg,
397 prs_struct *ps, int depth);
398bool smb_io_rpc_auth_schannel_chk(const char *desc, int auth_len,
399 RPC_AUTH_SCHANNEL_CHK * chk,
400 prs_struct *ps, int depth);
401
402#endif /* _CLIENT_PROTO_H_ */
Note: See TracBrowser for help on using the repository browser.