1/* This is a generated file */
2#ifndef __kcm_protos_h__
3#define __kcm_protos_h__
4
5#include <stdarg.h>
6
7#if !defined(__GNUC__) && !defined(__attribute__)
8#define __attribute__(x)
9#endif
10
11#ifdef __cplusplus
12extern "C" {
13#endif
14
15krb5_error_code
16kcm_access (
17	krb5_context /*context*/,
18	kcm_client */*client*/,
19	kcm_operation /*opcode*/,
20	kcm_ccache /*ccache*/);
21
22void
23kcm_cache_remove_session (pid_t /*session*/);
24
25krb5_error_code
26kcm_ccache_acquire (
27	krb5_context /*context*/,
28	kcm_ccache /*ccache*/,
29	time_t */*expire*/);
30
31krb5_error_code
32kcm_ccache_destroy (
33	krb5_context /*context*/,
34	const char */*name*/);
35
36krb5_error_code
37kcm_ccache_destroy_client (
38	krb5_context /*context*/,
39	kcm_client */*client*/,
40	const char */*name*/);
41
42krb5_error_code
43kcm_ccache_enqueue_default (
44	krb5_context /*context*/,
45	kcm_ccache /*cache*/,
46	krb5_creds */*newcred*/);
47
48struct kcm_creds *
49kcm_ccache_find_cred_uuid (
50	krb5_context /*context*/,
51	kcm_ccache /*ccache*/,
52	kcmuuid_t /*uuid*/);
53
54char *
55kcm_ccache_first_name (kcm_client */*client*/);
56
57const char *
58kcm_client_get_execpath(kcm_client *client);
59
60krb5_error_code
61kcm_ccache_get_uuids (
62	krb5_context /*context*/,
63	kcm_client */*client*/,
64	kcm_operation /*opcode*/,
65	krb5_storage */*sp*/);
66
67krb5_error_code
68kcm_ccache_new (
69	krb5_context /*context*/,
70	const char */*name*/,
71	kcm_ccache */*ccache*/);
72
73krb5_error_code
74kcm_ccache_new_client (
75	krb5_context /*context*/,
76	kcm_client */*client*/,
77	const char */*name*/,
78	kcm_ccache */*ccache_p*/);
79
80char *kcm_ccache_nextid (
81	pid_t /*pid*/,
82	uid_t /*uid*/);
83
84krb5_error_code
85kcm_ccache_refresh (
86	krb5_context /*context*/,
87	kcm_ccache /*ccache*/,
88	time_t */*expire*/);
89
90krb5_error_code
91kcm_ccache_remove_cred (
92	krb5_context /*context*/,
93	kcm_ccache /*ccache*/,
94	krb5_flags /*whichfields*/,
95	const krb5_creds */*mcreds*/);
96
97krb5_error_code
98kcm_ccache_remove_cred_internal (
99	krb5_context /*context*/,
100	kcm_ccache /*ccache*/,
101	krb5_flags /*whichfields*/,
102	const krb5_creds */*mcreds*/);
103
104krb5_error_code
105kcm_ccache_remove_creds (
106	krb5_context /*context*/,
107	kcm_ccache /*ccache*/);
108
109krb5_error_code
110kcm_ccache_remove_creds_internal (
111	krb5_context /*context*/,
112	kcm_ccache /*ccache*/);
113
114krb5_error_code
115kcm_ccache_resolve_by_name (
116	krb5_context /*context*/,
117	const char */*name*/,
118	kcm_ccache */*ccache*/);
119
120krb5_error_code
121kcm_ccache_resolve_by_uuid (
122	krb5_context /*context*/,
123	kcmuuid_t /*uuid*/,
124	kcm_ccache */*ccache*/);
125
126krb5_error_code
127kcm_ccache_resolve_client (
128	krb5_context /*context*/,
129	kcm_client */*client*/,
130	kcm_operation /*opcode*/,
131	const char */*name*/,
132	kcm_ccache */*ccache*/);
133
134krb5_error_code
135kcm_ccache_retrieve_cred (
136	krb5_context /*context*/,
137	kcm_ccache /*ccache*/,
138	krb5_flags /*whichfields*/,
139	const krb5_creds */*mcreds*/,
140	krb5_creds **/*credp*/);
141
142krb5_error_code
143kcm_ccache_retrieve_cred_internal (
144	krb5_context /*context*/,
145	kcm_ccache /*ccache*/,
146	krb5_flags /*whichfields*/,
147	const krb5_creds */*mcreds*/,
148	krb5_creds **/*creds*/);
149
150krb5_error_code
151kcm_ccache_store_cred (
152	krb5_context /*context*/,
153	kcm_ccache /*ccache*/,
154	krb5_creds */*creds*/,
155	int /*copy*/);
156
157krb5_error_code
158kcm_ccache_store_cred_internal (
159	krb5_context /*context*/,
160	kcm_ccache /*ccache*/,
161	krb5_creds */*creds*/,
162	kcmuuid_t /* uuid */,
163	int /*copy*/);
164
165krb5_error_code
166kcm_chmod (
167	krb5_context /*context*/,
168	kcm_client */*client*/,
169	kcm_ccache /*ccache*/,
170	uint16_t /*mode*/);
171
172krb5_error_code
173kcm_chown (
174	krb5_context /*context*/,
175	kcm_client */*client*/,
176	kcm_ccache /*ccache*/,
177	uid_t /*uid*/);
178
179void
180kcm_configure (
181	int /*argc*/,
182	char **/*argv*/);
183
184krb5_error_code
185kcm_debug_ccache (krb5_context /*context*/);
186
187krb5_error_code
188kcm_debug_events (krb5_context /*context*/);
189
190krb5_error_code
191kcm_dispatch (
192	krb5_context /*context*/,
193	kcm_client */*client*/,
194	krb5_data */*req_data*/,
195	krb5_data */*resp_data*/);
196
197krb5_error_code
198kcm_internal_ccache (
199	krb5_context /*context*/,
200	kcm_ccache /*c*/,
201	krb5_ccache /*id*/);
202
203int
204kcm_is_same_session (
205	kcm_client */*client*/,
206	uid_t /*uid*/,
207	pid_t /*session*/);
208
209void
210kcm_log (
211	int /*level*/,
212	const char */*fmt*/,
213	...)
214     __attribute__ ((format (printf, 2, 3)));
215
216char*
217kcm_log_msg (
218	int /*level*/,
219	const char */*fmt*/,
220	...)
221     __attribute__ ((format (printf, 2, 3)));
222
223char*
224kcm_log_msg_va (
225	int /*level*/,
226	const char */*fmt*/,
227	va_list /*ap*/)
228     __attribute__ ((format (printf, 2, 0)));
229
230const char *
231kcm_op2string (kcm_operation /*opcode*/);
232
233void
234kcm_openlog (void);
235
236krb5_error_code
237kcm_release_ccache (
238	krb5_context /*context*/,
239	kcm_ccache /*c*/);
240
241krb5_error_code
242kcm_retain_ccache (
243	krb5_context /*context*/,
244	kcm_ccache /*ccache*/);
245
246void
247kcm_service (
248	void */*ctx*/,
249	const heim_idata */*req*/,
250	const heim_icred /*cred*/,
251	heim_ipc_complete /*complete*/,
252	heim_sipc_call /*cctx*/);
253
254void
255kcm_session_add (pid_t /*session_id*/);
256
257void
258kcm_session_setup_handler (void);
259
260void
261kcm_update_renew_time (kcm_ccache /*ccache*/);
262
263void
264kcm_update_expire_time(kcm_ccache, time_t);
265
266krb5_error_code
267kcm_zero_ccache_data (
268	krb5_context /*context*/,
269	kcm_ccache /*cache*/);
270
271krb5_error_code
272kcm_zero_ccache_data_internal (
273	krb5_context /*context*/,
274	kcm_ccache /*cache*/);
275
276void
277kcm_unparse_cache_data(krb5_context context, krb5_data *data);
278
279krb5_error_code
280kcm_store_io(krb5_context context,
281	     krb5_uuid uuid,
282	     void *ptr,
283	     size_t length,
284	     krb5_data *data,
285	     bool encrypt);
286
287krb5_error_code
288kcm_create_key(krb5_uuid uuid);
289
290void kcm_read_dump(krb5_context context);
291void kcm_write_dump(krb5_context context);
292
293krb5_error_code
294kcm_unparse_digest_all(krb5_context context, krb5_storage *sp);
295
296krb5_error_code
297kcm_parse_digest_one(krb5_context context, krb5_storage *sp);
298
299krb5_error_code
300kcm_unparse_wrap(krb5_storage *sp, char *name, int32_t session, int (^wrapped)(krb5_storage *inner));
301
302krb5_error_code
303kcm_unparse_challenge_all(krb5_context context, krb5_storage *sp);
304
305krb5_error_code
306kcm_parse_ntlm_challenge_one(krb5_context context, krb5_storage *sp);
307
308
309krb5_error_code
310kcm_ccache_update_acquire_status(krb5_context context,
311				 kcm_ccache ccache,
312				 int status, krb5_error_code ret);
313
314#ifdef __cplusplus
315}
316#endif
317
318#endif /* __kcm_protos_h__ */
319