preparing for release of 2.2.3a
[Samba.git] / source / include / rpc_client_proto.h
blobaa22b1996a8e60cf0a4267412d30dda88dd78f79
1 #ifndef _RPC_CLIENT_PROTO_H_
2 #define _RPC_CLIENT_PROTO_H_
3 /* This file is automatically generated with "make proto". DO NOT EDIT */
6 /*The following definitions come from lib/util_list.c */
8 BOOL copy_policy_hnd (POLICY_HND *dest, const POLICY_HND *src);
9 BOOL compare_rpc_hnd_node(const RPC_HND_NODE *x,
10 const RPC_HND_NODE *y);
11 BOOL RpcHndList_set_connection(const POLICY_HND *hnd,
12 struct cli_connection *con);
13 BOOL RpcHndList_del_connection(const POLICY_HND *hnd);
14 struct cli_connection* RpcHndList_get_connection(const POLICY_HND *hnd);
16 /*The following definitions come from rpc_client/cli_connect.c */
18 void init_connections(void);
19 void free_connections(void);
20 void cli_connection_free(struct cli_connection *con);
21 void cli_connection_unlink(struct cli_connection *con);
22 BOOL cli_connection_init(const char *srv_name, char *pipe_name,
23 struct cli_connection **con);
24 BOOL cli_connection_init_auth(const char *srv_name, char *pipe_name,
25 struct cli_connection **con,
26 cli_auth_fns * auth, void *auth_creds);
27 struct _cli_auth_fns *cli_conn_get_authfns(struct cli_connection *con);
28 void *cli_conn_get_auth_creds(struct cli_connection *con);
29 BOOL rpc_hnd_pipe_req(const POLICY_HND * hnd, uint8 op_num,
30 prs_struct * data, prs_struct * rdata);
31 BOOL rpc_con_pipe_req(struct cli_connection *con, uint8 op_num,
32 prs_struct * data, prs_struct * rdata);
33 BOOL rpc_con_ok(struct cli_connection *con);
35 /*The following definitions come from rpc_client/cli_login.c */
37 BOOL cli_nt_setup_creds(struct cli_state *cli, unsigned char mach_pwd[16]);
38 BOOL cli_nt_srv_pwset(struct cli_state *cli, unsigned char *new_hashof_mach_pwd);
39 BOOL cli_nt_login_interactive(struct cli_state *cli, char *domain, char *username,
40 uint32 smb_userid_low, char *password,
41 NET_ID_INFO_CTR *ctr, NET_USER_INFO_3 *user_info3);
42 BOOL cli_nt_login_network(struct cli_state *cli, char *domain, char *username,
43 uint32 smb_userid_low, char lm_chal[8],
44 char *lm_chal_resp, char *nt_chal_resp,
45 NET_ID_INFO_CTR *ctr, NET_USER_INFO_3 *user_info3);
46 BOOL cli_nt_logoff(struct cli_state *cli, NET_ID_INFO_CTR *ctr);
48 /*The following definitions come from rpc_client/cli_lsarpc.c */
50 BOOL do_lsa_open_policy(struct cli_state *cli,
51 char *system_name, POLICY_HND *hnd,
52 BOOL sec_qos);
53 BOOL do_lsa_query_info_pol(struct cli_state *cli,
54 POLICY_HND *hnd, uint16 info_class,
55 fstring domain_name, DOM_SID *domain_sid);
56 BOOL do_lsa_close(struct cli_state *cli, POLICY_HND *hnd);
57 BOOL cli_lsa_get_domain_sid(struct cli_state *cli, char *server);
58 uint32 lsa_open_policy(const char *system_name, POLICY_HND *hnd,
59 BOOL sec_qos, uint32 des_access);
60 uint32 lsa_close(POLICY_HND *hnd);
61 uint32 lsa_lookup_sids(POLICY_HND *hnd, int num_sids, DOM_SID *sids,
62 char ***names, uint32 **types, int *num_names);
63 uint32 lsa_lookup_names(POLICY_HND *hnd, int num_names, char **names,
64 DOM_SID **sids, uint32 **types, int *num_sids);
66 /*The following definitions come from rpc_client/cli_netlogon.c */
68 BOOL cli_net_logon_ctrl2(struct cli_state *cli, uint32 status_level);
69 BOOL cli_net_auth2(struct cli_state *cli, uint16 sec_chan,
70 uint32 neg_flags, DOM_CHAL *srv_chal);
71 BOOL cli_net_req_chal(struct cli_state *cli, DOM_CHAL *clnt_chal, DOM_CHAL *srv_chal);
72 BOOL cli_net_srv_pwset(struct cli_state *cli, uint8 hashed_mach_pwd[16]);
73 BOOL cli_net_sam_logon(struct cli_state *cli, NET_ID_INFO_CTR *ctr, NET_USER_INFO_3 *user_info3);
74 BOOL cli_net_sam_logoff(struct cli_state *cli, NET_ID_INFO_CTR *ctr);
75 BOOL change_trust_account_password( char *domain, char *remote_machine_list);
77 /*The following definitions come from rpc_client/cli_pipe.c */
79 BOOL rpc_api_pipe_req(struct cli_state *cli, uint8 op_num,
80 prs_struct *data, prs_struct *rdata);
81 BOOL rpc_pipe_bind(struct cli_state *cli, char *pipe_name, char *my_name);
82 void cli_nt_set_ntlmssp_flgs(struct cli_state *cli, uint32 ntlmssp_flgs);
83 BOOL cli_nt_session_open(struct cli_state *cli, char *pipe_name);
84 void cli_nt_session_close(struct cli_state *cli);
86 /*The following definitions come from rpc_client/cli_reg.c */
88 BOOL do_reg_connect(struct cli_state *cli, char *full_keyname, char *key_name,
89 POLICY_HND *reg_hnd);
90 BOOL do_reg_open_hklm(struct cli_state *cli, uint16 unknown_0, uint32 level,
91 POLICY_HND *hnd);
92 BOOL do_reg_open_hku(struct cli_state *cli, uint16 unknown_0, uint32 level,
93 POLICY_HND *hnd);
94 BOOL do_reg_flush_key(struct cli_state *cli, POLICY_HND *hnd);
95 BOOL do_reg_query_key(struct cli_state *cli, POLICY_HND *hnd,
96 char *class, uint32 *class_len,
97 uint32 *num_subkeys, uint32 *max_subkeylen,
98 uint32 *max_subkeysize, uint32 *num_values,
99 uint32 *max_valnamelen, uint32 *max_valbufsize,
100 uint32 *sec_desc, NTTIME *mod_time);
101 BOOL do_reg_unknown_1a(struct cli_state *cli, POLICY_HND *hnd, uint32 *unk);
102 BOOL do_reg_query_info(struct cli_state *cli, POLICY_HND *hnd,
103 char *key_value, uint32* key_type);
104 BOOL do_reg_set_key_sec(struct cli_state *cli, POLICY_HND *hnd, SEC_DESC_BUF *sec_desc_buf);
105 BOOL do_reg_get_key_sec(struct cli_state *cli, POLICY_HND *hnd, uint32 *sec_buf_size, SEC_DESC_BUF **ppsec_desc_buf);
106 BOOL do_reg_delete_val(struct cli_state *cli, POLICY_HND *hnd, char *val_name);
107 BOOL do_reg_delete_key(struct cli_state *cli, POLICY_HND *hnd, char *key_name);
108 BOOL do_reg_create_key(struct cli_state *cli, POLICY_HND *hnd,
109 char *key_name, char *key_class,
110 SEC_ACCESS *sam_access,
111 POLICY_HND *key);
112 BOOL do_reg_enum_key(struct cli_state *cli, POLICY_HND *hnd,
113 int key_index, char *key_name,
114 uint32 *unk_1, uint32 *unk_2,
115 time_t *mod_time);
116 BOOL do_reg_create_val(struct cli_state *cli, POLICY_HND *hnd,
117 char *val_name, uint32 type, BUFFER3 *data);
118 BOOL do_reg_enum_val(struct cli_state *cli, POLICY_HND *hnd,
119 int val_index, int max_valnamelen, int max_valbufsize,
120 fstring val_name,
121 uint32 *val_type, BUFFER2 *value);
122 BOOL do_reg_open_entry(struct cli_state *cli, POLICY_HND *hnd,
123 char *key_name, uint32 unk_0,
124 POLICY_HND *key_hnd);
125 BOOL do_reg_close(struct cli_state *cli, POLICY_HND *hnd);
127 /*The following definitions come from rpc_client/cli_samr.c */
129 BOOL get_samr_query_usergroups(struct cli_state *cli,
130 POLICY_HND *pol_open_domain, uint32 user_rid,
131 uint32 *num_groups, DOM_GID *gid);
132 BOOL get_samr_query_userinfo(struct cli_state *cli,
133 POLICY_HND *pol_open_domain,
134 uint32 info_level,
135 uint32 user_rid, SAM_USER_INFO_21 *usr);
136 BOOL do_samr_chgpasswd_user(struct cli_state *cli,
137 char *srv_name, char *user_name,
138 char nt_newpass[516], uchar nt_oldhash[16],
139 char lm_newpass[516], uchar lm_oldhash[16]);
140 BOOL do_samr_unknown_38(struct cli_state *cli, char *srv_name);
141 BOOL do_samr_query_dom_info(struct cli_state *cli,
142 POLICY_HND *domain_pol, uint16 switch_value);
143 BOOL do_samr_enum_dom_users(struct cli_state *cli,
144 POLICY_HND *pol, uint16 num_entries, uint16 unk_0,
145 uint16 acb_mask, uint16 unk_1, uint32 size,
146 struct acct_info **sam,
147 int *num_sam_users);
148 BOOL do_samr_connect(struct cli_state *cli,
149 char *srv_name, uint32 unknown_0,
150 POLICY_HND *connect_pol);
151 BOOL do_samr_open_user(struct cli_state *cli,
152 POLICY_HND *pol, uint32 unk_0, uint32 rid,
153 POLICY_HND *user_pol);
154 BOOL do_samr_open_domain(struct cli_state *cli,
155 POLICY_HND *connect_pol, uint32 rid, DOM_SID *sid,
156 POLICY_HND *domain_pol);
157 BOOL do_samr_query_unknown_12(struct cli_state *cli,
158 POLICY_HND *pol, uint32 rid, uint32 num_gids, uint32 *gids,
159 uint32 *num_aliases,
160 fstring als_names [MAX_LOOKUP_SIDS],
161 uint32 num_als_users[MAX_LOOKUP_SIDS]);
162 BOOL do_samr_query_usergroups(struct cli_state *cli,
163 POLICY_HND *pol, uint32 *num_groups, DOM_GID *gid);
164 BOOL do_samr_query_userinfo(struct cli_state *cli,
165 POLICY_HND *pol, uint16 switch_value, void* usr);
166 BOOL do_samr_close(struct cli_state *cli, POLICY_HND *hnd);
168 /*The following definitions come from rpc_client/cli_spoolss_notify.c */
170 BOOL spoolss_disconnect_from_client( struct cli_state *cli);
171 BOOL spoolss_connect_to_client( struct cli_state *cli, char *remote_machine);
172 BOOL cli_spoolss_reply_open_printer(struct cli_state *cli, char *printer, uint32 localprinter, uint32 type, uint32 *status, POLICY_HND *handle);
173 BOOL cli_spoolss_reply_rrpcn(struct cli_state *cli, POLICY_HND *handle,
174 uint32 change_low, uint32 change_high, uint32 *status);
175 BOOL cli_spoolss_reply_close_printer(struct cli_state *cli, POLICY_HND *handle, uint32 *status);
177 /*The following definitions come from rpc_client/cli_srvsvc.c */
179 BOOL do_srv_net_srv_conn_enum(struct cli_state *cli,
180 char *server_name, char *qual_name,
181 uint32 switch_value, SRV_CONN_INFO_CTR *ctr,
182 uint32 preferred_len,
183 ENUM_HND *hnd);
184 BOOL do_srv_net_srv_sess_enum(struct cli_state *cli,
185 char *server_name, char *qual_name,
186 uint32 switch_value, SRV_SESS_INFO_CTR *ctr,
187 uint32 preferred_len,
188 ENUM_HND *hnd);
189 BOOL do_srv_net_srv_share_enum(struct cli_state *cli,
190 char *server_name,
191 uint32 switch_value, SRV_R_NET_SHARE_ENUM *r_o,
192 uint32 preferred_len, ENUM_HND *hnd);
193 BOOL do_srv_net_srv_file_enum(struct cli_state *cli,
194 char *server_name, char *qual_name,
195 uint32 switch_value, SRV_FILE_INFO_CTR *ctr,
196 uint32 preferred_len,
197 ENUM_HND *hnd);
198 BOOL do_srv_net_srv_get_info(struct cli_state *cli,
199 char *server_name, uint32 switch_value, SRV_INFO_CTR *ctr);
201 /*The following definitions come from rpc_client/cli_use.c */
203 void init_cli_use(void);
204 void free_cli_use(void);
205 struct cli_state *cli_net_use_add(const char *srv_name,
206 const struct ntuser_creds *usr_creds,
207 BOOL reuse, BOOL *is_new);
208 BOOL cli_net_use_del(const char *srv_name,
209 const struct ntuser_creds *usr_creds,
210 BOOL force_close, BOOL *connection_closed);
211 void cli_net_use_enum(uint32 *num_cons, struct use_info ***use);
212 void cli_use_wait_keyboard(void);
214 /*The following definitions come from rpc_client/cli_wkssvc.c */
216 BOOL do_wks_query_info(struct cli_state *cli,
217 char *server_name, uint32 switch_value,
218 WKS_INFO_100 *wks100);
220 /*The following definitions come from rpc_client/ncacn_np_use.c */
222 BOOL ncacn_np_use_del(const char *srv_name, const char *pipe_name,
223 const vuser_key * key,
224 BOOL force_close, BOOL *connection_closed);
225 struct ncacn_np *ncacn_np_initialise(struct ncacn_np *msrpc,
226 const vuser_key * key);
227 struct ncacn_np *ncacn_np_use_add(const char *pipe_name,
228 const vuser_key * key,
229 const char *srv_name,
230 const struct ntuser_creds *ntc,
231 BOOL reuse, BOOL *is_new_connection);
232 #endif /* _PROTO_H_ */