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
,
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_lookup_sids(POLICY_HND
*hnd
, int num_sids
, DOM_SID
*sids
,
61 char ***names
, uint32
**types
, int *num_names
);
62 uint32
lsa_lookup_names(POLICY_HND
*hnd
, int num_names
, char **names
,
63 DOM_SID
**sids
, uint32
**types
, int *num_sids
);
65 /*The following definitions come from rpc_client/cli_netlogon.c */
67 BOOL
cli_net_logon_ctrl2(struct cli_state
*cli
, uint32 status_level
);
68 BOOL
cli_net_auth2(struct cli_state
*cli
, uint16 sec_chan
,
69 uint32 neg_flags
, DOM_CHAL
*srv_chal
);
70 BOOL
cli_net_req_chal(struct cli_state
*cli
, DOM_CHAL
*clnt_chal
, DOM_CHAL
*srv_chal
);
71 BOOL
cli_net_srv_pwset(struct cli_state
*cli
, uint8 hashed_mach_pwd
[16]);
72 BOOL
cli_net_sam_logon(struct cli_state
*cli
, NET_ID_INFO_CTR
*ctr
, NET_USER_INFO_3
*user_info3
);
73 BOOL
cli_net_sam_logoff(struct cli_state
*cli
, NET_ID_INFO_CTR
*ctr
);
74 BOOL
change_trust_account_password( char *domain
, char *remote_machine_list
);
76 /*The following definitions come from rpc_client/cli_pipe.c */
78 BOOL
rpc_api_pipe_req(struct cli_state
*cli
, uint8 op_num
,
79 prs_struct
*data
, prs_struct
*rdata
);
80 BOOL
rpc_pipe_bind(struct cli_state
*cli
, char *pipe_name
, char *my_name
);
81 void cli_nt_set_ntlmssp_flgs(struct cli_state
*cli
, uint32 ntlmssp_flgs
);
82 BOOL
cli_nt_session_open(struct cli_state
*cli
, char *pipe_name
);
83 void cli_nt_session_close(struct cli_state
*cli
);
85 /*The following definitions come from rpc_client/cli_reg.c */
87 BOOL
do_reg_connect(struct cli_state
*cli
, char *full_keyname
, char *key_name
,
89 BOOL
do_reg_open_hklm(struct cli_state
*cli
, uint16 unknown_0
, uint32 level
,
91 BOOL
do_reg_open_hku(struct cli_state
*cli
, uint16 unknown_0
, uint32 level
,
93 BOOL
do_reg_flush_key(struct cli_state
*cli
, POLICY_HND
*hnd
);
94 BOOL
do_reg_query_key(struct cli_state
*cli
, POLICY_HND
*hnd
,
95 char *class, uint32
*class_len
,
96 uint32
*num_subkeys
, uint32
*max_subkeylen
,
97 uint32
*max_subkeysize
, uint32
*num_values
,
98 uint32
*max_valnamelen
, uint32
*max_valbufsize
,
99 uint32
*sec_desc
, NTTIME
*mod_time
);
100 BOOL
do_reg_unknown_1a(struct cli_state
*cli
, POLICY_HND
*hnd
, uint32
*unk
);
101 BOOL
do_reg_query_info(struct cli_state
*cli
, POLICY_HND
*hnd
,
102 char *key_value
, uint32
* key_type
);
103 BOOL
do_reg_set_key_sec(struct cli_state
*cli
, POLICY_HND
*hnd
, SEC_DESC_BUF
*sec_desc_buf
);
104 BOOL
do_reg_get_key_sec(struct cli_state
*cli
, POLICY_HND
*hnd
, uint32
*sec_buf_size
, SEC_DESC_BUF
**ppsec_desc_buf
);
105 BOOL
do_reg_delete_val(struct cli_state
*cli
, POLICY_HND
*hnd
, char *val_name
);
106 BOOL
do_reg_delete_key(struct cli_state
*cli
, POLICY_HND
*hnd
, char *key_name
);
107 BOOL
do_reg_create_key(struct cli_state
*cli
, POLICY_HND
*hnd
,
108 char *key_name
, char *key_class
,
109 SEC_ACCESS
*sam_access
,
111 BOOL
do_reg_enum_key(struct cli_state
*cli
, POLICY_HND
*hnd
,
112 int key_index
, char *key_name
,
113 uint32
*unk_1
, uint32
*unk_2
,
115 BOOL
do_reg_create_val(struct cli_state
*cli
, POLICY_HND
*hnd
,
116 char *val_name
, uint32 type
, BUFFER3
*data
);
117 BOOL
do_reg_enum_val(struct cli_state
*cli
, POLICY_HND
*hnd
,
118 int val_index
, int max_valnamelen
, int max_valbufsize
,
120 uint32
*val_type
, BUFFER2
*value
);
121 BOOL
do_reg_open_entry(struct cli_state
*cli
, POLICY_HND
*hnd
,
122 char *key_name
, uint32 unk_0
,
123 POLICY_HND
*key_hnd
);
124 BOOL
do_reg_close(struct cli_state
*cli
, POLICY_HND
*hnd
);
126 /*The following definitions come from rpc_client/cli_samr.c */
128 BOOL
get_samr_query_usergroups(struct cli_state
*cli
,
129 POLICY_HND
*pol_open_domain
, uint32 user_rid
,
130 uint32
*num_groups
, DOM_GID
*gid
);
131 BOOL
get_samr_query_userinfo(struct cli_state
*cli
,
132 POLICY_HND
*pol_open_domain
,
134 uint32 user_rid
, SAM_USER_INFO_21
*usr
);
135 BOOL
do_samr_chgpasswd_user(struct cli_state
*cli
,
136 char *srv_name
, char *user_name
,
137 char nt_newpass
[516], uchar nt_oldhash
[16],
138 char lm_newpass
[516], uchar lm_oldhash
[16]);
139 BOOL
do_samr_unknown_38(struct cli_state
*cli
, char *srv_name
);
140 BOOL
do_samr_query_dom_info(struct cli_state
*cli
,
141 POLICY_HND
*domain_pol
, uint16 switch_value
);
142 BOOL
do_samr_enum_dom_users(struct cli_state
*cli
,
143 POLICY_HND
*pol
, uint16 num_entries
, uint16 unk_0
,
144 uint16 acb_mask
, uint16 unk_1
, uint32 size
,
145 struct acct_info
**sam
,
147 BOOL
do_samr_connect(struct cli_state
*cli
,
148 char *srv_name
, uint32 unknown_0
,
149 POLICY_HND
*connect_pol
);
150 BOOL
do_samr_open_user(struct cli_state
*cli
,
151 POLICY_HND
*pol
, uint32 unk_0
, uint32 rid
,
152 POLICY_HND
*user_pol
);
153 BOOL
do_samr_open_domain(struct cli_state
*cli
,
154 POLICY_HND
*connect_pol
, uint32 rid
, DOM_SID
*sid
,
155 POLICY_HND
*domain_pol
);
156 BOOL
do_samr_query_unknown_12(struct cli_state
*cli
,
157 POLICY_HND
*pol
, uint32 rid
, uint32 num_gids
, uint32
*gids
,
159 fstring als_names
[MAX_LOOKUP_SIDS
],
160 uint32 num_als_users
[MAX_LOOKUP_SIDS
]);
161 BOOL
do_samr_query_usergroups(struct cli_state
*cli
,
162 POLICY_HND
*pol
, uint32
*num_groups
, DOM_GID
*gid
);
163 BOOL
do_samr_query_userinfo(struct cli_state
*cli
,
164 POLICY_HND
*pol
, uint16 switch_value
, void* usr
);
165 BOOL
do_samr_close(struct cli_state
*cli
, POLICY_HND
*hnd
);
167 /*The following definitions come from rpc_client/cli_spoolss_notify.c */
169 BOOL
spoolss_disconnect_from_client( struct cli_state
*cli
);
170 BOOL
spoolss_connect_to_client( struct cli_state
*cli
, char *remote_machine
);
171 BOOL
cli_spoolss_reply_open_printer(struct cli_state
*cli
, char *printer
, uint32 localprinter
, uint32 type
, uint32
*status
, POLICY_HND
*handle
);
172 BOOL
cli_spoolss_reply_rrpcn(struct cli_state
*cli
, POLICY_HND
*handle
,
173 uint32 change_low
, uint32 change_high
, uint32
*status
);
174 BOOL
cli_spoolss_reply_close_printer(struct cli_state
*cli
, POLICY_HND
*handle
, uint32
*status
);
176 /*The following definitions come from rpc_client/cli_srvsvc.c */
178 BOOL
do_srv_net_srv_conn_enum(struct cli_state
*cli
,
179 char *server_name
, char *qual_name
,
180 uint32 switch_value
, SRV_CONN_INFO_CTR
*ctr
,
181 uint32 preferred_len
,
183 BOOL
do_srv_net_srv_sess_enum(struct cli_state
*cli
,
184 char *server_name
, char *qual_name
,
185 uint32 switch_value
, SRV_SESS_INFO_CTR
*ctr
,
186 uint32 preferred_len
,
188 BOOL
do_srv_net_srv_share_enum(struct cli_state
*cli
,
190 uint32 switch_value
, SRV_R_NET_SHARE_ENUM
*r_o
,
191 uint32 preferred_len
, ENUM_HND
*hnd
);
192 BOOL
do_srv_net_srv_file_enum(struct cli_state
*cli
,
193 char *server_name
, char *qual_name
,
194 uint32 switch_value
, SRV_FILE_INFO_CTR
*ctr
,
195 uint32 preferred_len
,
197 BOOL
do_srv_net_srv_get_info(struct cli_state
*cli
,
198 char *server_name
, uint32 switch_value
, SRV_INFO_CTR
*ctr
);
200 /*The following definitions come from rpc_client/cli_use.c */
202 void init_cli_use(void);
203 void free_cli_use(void);
204 struct cli_state
*cli_net_use_add(const char *srv_name
,
205 const struct ntuser_creds
*usr_creds
,
206 BOOL reuse
, BOOL
*is_new
);
207 BOOL
cli_net_use_del(const char *srv_name
,
208 const struct ntuser_creds
*usr_creds
,
209 BOOL force_close
, BOOL
*connection_closed
);
210 void cli_net_use_enum(uint32
*num_cons
, struct use_info
***use
);
211 void cli_use_wait_keyboard(void);
213 /*The following definitions come from rpc_client/cli_wkssvc.c */
215 BOOL
do_wks_query_info(struct cli_state
*cli
,
216 char *server_name
, uint32 switch_value
,
217 WKS_INFO_100
*wks100
);
219 /*The following definitions come from rpc_client/ncacn_np_use.c */
221 BOOL
ncacn_np_use_del(const char *srv_name
, const char *pipe_name
,
222 const vuser_key
* key
,
223 BOOL force_close
, BOOL
*connection_closed
);
224 struct ncacn_np
*ncacn_np_initialise(struct ncacn_np
*msrpc
,
225 const vuser_key
* key
);
226 struct ncacn_np
*ncacn_np_use_add(const char *pipe_name
,
227 const vuser_key
* key
,
228 const char *srv_name
,
229 const struct ntuser_creds
*ntc
,
230 BOOL reuse
, BOOL
*is_new_connection
);
231 #endif /* _PROTO_H_ */