Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(46)

Side by Side Diff: net/third_party/gssapi/gssapi.h

Issue 7655046: Linux: allow linking directly with Kerberos instead of using dlopen. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Hopefully fix ChromeOS Created 9 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « net/third_party/gssapi/README.chromium ('k') | net/third_party/gssapi/gssapi.gyp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 /*
2 * Copied from Firefox source extensions/auth/gssapi.h
3 */
4
5 /* ***** BEGIN LICENSE BLOCK *****
6 * Copyright 1993 by OpenVision Technologies, Inc.
7 *
8 * Permission to use, copy, modify, distribute, and sell this software
9 * and its documentation for any purpose is hereby granted without fee,
10 * provided that the above copyright notice appears in all copies and
11 * that both that copyright notice and this permission notice appear in
12 * supporting documentation, and that the name of OpenVision not be used
13 * in advertising or publicity pertaining to distribution of the software
14 * without specific, written prior permission. OpenVision makes no
15 * representations about the suitability of this software for any
16 * purpose. It is provided "as is" without express or implied warranty.
17 *
18 * OPENVISION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
19 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
20 * EVENT SHALL OPENVISION BE LIABLE FOR ANY SPECIAL, INDIRECT OR
21 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
22 * USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
23 * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
24 * PERFORMANCE OF THIS SOFTWARE.
25 ****** END LICENSE BLOCK ***** */
26
27 #ifndef GSSAPI_H_
28 #define GSSAPI_H_
29
30 /*
31 * Also define _GSSAPI_H_ as that is what the Kerberos 5 code defines and
32 * what header files on some systems look for.
33 */
34 #define _GSSAPI_H_
35
36 /*
37 * On Mac OS X, Kerberos/Kerberos.h is used to gain access to certain
38 * system-specific Kerberos functions, but on 10.4, that file also brings
39 * in other headers that conflict with this one.
40 */
41 #define _GSSAPI_GENERIC_H_
42 #define _GSSAPI_KRB5_H_
43
44 /*
45 * Define windows specific needed parameters.
46 */
47
48 #ifndef GSS_CALLCONV
49 #if defined(_WIN32)
50 #define GSS_CALLCONV __stdcall
51 #define GSS_CALLCONV_C __cdecl
52 #else
53 #define GSS_CALLCONV
54 #define GSS_CALLCONV_C
55 #endif
56 #endif /* GSS_CALLCONV */
57
58 #ifdef GSS_USE_FUNCTION_POINTERS
59 #ifdef _WIN32
60 #undef GSS_CALLCONV
61 #define GSS_CALLCONV
62 #define GSS_FUNC(f) (__stdcall *f##_type)
63 #else
64 #define GSS_FUNC(f) (*f##_type)
65 #endif
66 #define GSS_MAKE_TYPEDEF typedef
67 #else
68 #define GSS_FUNC(f) f
69 #define GSS_MAKE_TYPEDEF
70 #endif
71
72 /*
73 * First, include stddef.h to get size_t defined.
74 */
75 #include <stddef.h>
76
77 /*
78 * Configure set the following
79 */
80
81 #ifndef SIZEOF_LONG
82 #undef SIZEOF_LONG
83 #endif
84 #ifndef SIZEOF_SHORT
85 #undef SIZEOF_SHORT
86 #endif
87
88 #ifndef EXTERN_C_BEGIN
89 #ifdef __cplusplus
90 #define EXTERN_C_BEGIN extern "C" {
91 #define EXTERN_C_END }
92 #else
93 #define EXTERN_C_BEGIN
94 #define EXTERN_C_END
95 #endif
96 #endif
97
98 EXTERN_C_BEGIN
99
100 /*
101 * If the platform supports the xom.h header file, it should be
102 * included here.
103 */
104 /* #include <xom.h> */
105
106
107 /*
108 * Now define the three implementation-dependent types.
109 */
110
111 typedef void * gss_name_t ;
112 typedef void * gss_ctx_id_t ;
113 typedef void * gss_cred_id_t ;
114
115
116 /*
117 * The following type must be defined as the smallest natural
118 * unsigned integer supported by the platform that has at least
119 * 32 bits of precision.
120 */
121
122 #if SIZEOF_LONG == 4
123 typedef unsigned long gss_uint32;
124 #elif SIZEOF_SHORT == 4
125 typedef unsigned short gss_uint32;
126 #else
127 typedef unsigned int gss_uint32;
128 #endif
129
130 #ifdef OM_STRING
131
132 /*
133 * We have included the xom.h header file. Verify that OM_uint32
134 * is defined correctly.
135 */
136
137 #if sizeof(gss_uint32) != sizeof(OM_uint32)
138 #error Incompatible definition of OM_uint32 from xom.h
139 #endif
140
141 typedef OM_object_identifier gss_OID_desc, *gss_OID;
142
143 #else /* !OM_STRING */
144
145 /*
146 * We can't use X/Open definitions, so roll our own.
147 */
148 typedef gss_uint32 OM_uint32;
149 typedef struct gss_OID_desc_struct {
150 OM_uint32 length;
151 void *elements;
152 } gss_OID_desc, *gss_OID;
153
154 #endif /* !OM_STRING */
155
156 typedef struct gss_OID_set_desc_struct {
157 size_t count;
158 gss_OID elements;
159 } gss_OID_set_desc, *gss_OID_set;
160
161
162 /*
163 * For now, define a QOP-type as an OM_uint32
164 */
165 typedef OM_uint32 gss_qop_t;
166
167 typedef int gss_cred_usage_t;
168
169
170 typedef struct gss_buffer_desc_struct {
171 size_t length;
172 void *value;
173 } gss_buffer_desc, *gss_buffer_t;
174
175 typedef struct gss_channel_bindings_struct {
176 OM_uint32 initiator_addrtype;
177 gss_buffer_desc initiator_address;
178 OM_uint32 acceptor_addrtype;
179 gss_buffer_desc acceptor_address;
180 gss_buffer_desc application_data;
181 } *gss_channel_bindings_t;
182
183
184 /*
185 * Flag bits for context-level services.
186 */
187 #define GSS_C_DELEG_FLAG 1
188 #define GSS_C_MUTUAL_FLAG 2
189 #define GSS_C_REPLAY_FLAG 4
190 #define GSS_C_SEQUENCE_FLAG 8
191 #define GSS_C_CONF_FLAG 16
192 #define GSS_C_INTEG_FLAG 32
193 #define GSS_C_ANON_FLAG 64
194 #define GSS_C_PROT_READY_FLAG 128
195 #define GSS_C_TRANS_FLAG 256
196
197 /*
198 * Credential usage options
199 */
200 #define GSS_C_BOTH 0
201 #define GSS_C_INITIATE 1
202 #define GSS_C_ACCEPT 2
203
204 /*
205 * Status code types for gss_display_status
206 */
207 #define GSS_C_GSS_CODE 1
208 #define GSS_C_MECH_CODE 2
209
210 /*
211 * The constant definitions for channel-bindings address families
212 */
213 #define GSS_C_AF_UNSPEC 0
214 #define GSS_C_AF_LOCAL 1
215 #define GSS_C_AF_INET 2
216 #define GSS_C_AF_IMPLINK 3
217 #define GSS_C_AF_PUP 4
218 #define GSS_C_AF_CHAOS 5
219 #define GSS_C_AF_NS 6
220 #define GSS_C_AF_NBS 7
221 #define GSS_C_AF_ECMA 8
222 #define GSS_C_AF_DATAKIT 9
223 #define GSS_C_AF_CCITT 10
224 #define GSS_C_AF_SNA 11
225 #define GSS_C_AF_DECnet 12
226 #define GSS_C_AF_DLI 13
227 #define GSS_C_AF_LAT 14
228 #define GSS_C_AF_HYLINK 15
229 #define GSS_C_AF_APPLETALK 16
230 #define GSS_C_AF_BSC 17
231 #define GSS_C_AF_DSS 18
232 #define GSS_C_AF_OSI 19
233 #define GSS_C_AF_X25 21
234
235 #define GSS_C_AF_NULLADDR 255
236
237 /*
238 * Various Null values
239 */
240 #define GSS_C_NO_NAME ((gss_name_t) 0)
241 #define GSS_C_NO_BUFFER ((gss_buffer_t) 0)
242 #define GSS_C_NO_OID ((gss_OID) 0)
243 #define GSS_C_NO_OID_SET ((gss_OID_set) 0)
244 #define GSS_C_NO_CONTEXT ((gss_ctx_id_t) 0)
245 #define GSS_C_NO_CREDENTIAL ((gss_cred_id_t) 0)
246 #define GSS_C_NO_CHANNEL_BINDINGS ((gss_channel_bindings_t) 0)
247 #define GSS_C_EMPTY_BUFFER {0, NULL}
248
249 /*
250 * Some alternate names for a couple of the above
251 * values. These are defined for V1 compatibility.
252 */
253 #define GSS_C_NULL_OID GSS_C_NO_OID
254 #define GSS_C_NULL_OID_SET GSS_C_NO_OID_SET
255
256 /*
257 * Define the default Quality of Protection for per-message
258 * services. Note that an implementation that offers multiple
259 * levels of QOP may define GSS_C_QOP_DEFAULT to be either zero
260 * (as done here) to mean "default protection", or to a specific
261 * explicit QOP value. However, a value of 0 should always be
262 * interpreted by a GSSAPI implementation as a request for the
263 * default protection level.
264 */
265 #define GSS_C_QOP_DEFAULT 0
266
267 /*
268 * Expiration time of 2^32-1 seconds means infinite lifetime for a
269 * credential or security context
270 */
271 #define GSS_C_INDEFINITE 0xfffffffful
272
273 /*
274 * The implementation must reserve static storage for a
275 * gss_OID_desc object containing the value
276 * {10, (void *)"\x2a\x86\x48\x86\xf7\x12"
277 * "\x01\x02\x01\x01"},
278 * corresponding to an object-identifier value of
279 * {iso(1) member-body(2) United States(840) mit(113554)
280 * infosys(1) gssapi(2) generic(1) user_name(1)}. The constant
281 * GSS_C_NT_USER_NAME should be initialized to point
282 * to that gss_OID_desc.
283 */
284 extern gss_OID GSS_C_NT_USER_NAME;
285
286 /*
287 * The implementation must reserve static storage for a
288 * gss_OID_desc object containing the value
289 * {10, (void *)"\x2a\x86\x48\x86\xf7\x12"
290 * "\x01\x02\x01\x02"},
291 * corresponding to an object-identifier value of
292 * {iso(1) member-body(2) United States(840) mit(113554)
293 * infosys(1) gssapi(2) generic(1) machine_uid_name(2)}.
294 * The constant GSS_C_NT_MACHINE_UID_NAME should be
295 * initialized to point to that gss_OID_desc.
296 */
297 extern gss_OID GSS_C_NT_MACHINE_UID_NAME;
298
299 /*
300 * The implementation must reserve static storage for a
301 * gss_OID_desc object containing the value
302 * {10, (void *)"\x2a\x86\x48\x86\xf7\x12"
303 * "\x01\x02\x01\x03"},
304 * corresponding to an object-identifier value of
305 * {iso(1) member-body(2) United States(840) mit(113554)
306 * infosys(1) gssapi(2) generic(1) string_uid_name(3)}.
307 * The constant GSS_C_NT_STRING_UID_NAME should be
308 * initialized to point to that gss_OID_desc.
309 */
310 extern gss_OID GSS_C_NT_STRING_UID_NAME;
311
312 /*
313 * The implementation must reserve static storage for a
314 * gss_OID_desc object containing the value
315 * {6, (void *)"\x2b\x06\x01\x05\x06\x02"},
316 * corresponding to an object-identifier value of
317 * {iso(1) org(3) dod(6) internet(1) security(5)
318 * nametypes(6) gss-host-based-services(2)). The constant
319 * GSS_C_NT_HOSTBASED_SERVICE_X should be initialized to point
320 * to that gss_OID_desc. This is a deprecated OID value, and
321 * implementations wishing to support hostbased-service names
322 * should instead use the GSS_C_NT_HOSTBASED_SERVICE OID,
323 * defined below, to identify such names;
324 * GSS_C_NT_HOSTBASED_SERVICE_X should be accepted a synonym
325 * for GSS_C_NT_HOSTBASED_SERVICE when presented as an input
326 * parameter, but should not be emitted by GSSAPI
327 * implementations
328 */
329 extern gss_OID GSS_C_NT_HOSTBASED_SERVICE_X;
330
331 /*
332 * The implementation must reserve static storage for a
333 * gss_OID_desc object containing the value
334 * {10, (void *)"\x2a\x86\x48\x86\xf7\x12"
335 * "\x01\x02\x01\x04"}, corresponding to an
336 * object-identifier value of {iso(1) member-body(2)
337 * Unites States(840) mit(113554) infosys(1) gssapi(2)
338 * generic(1) service_name(4)}. The constant
339 * GSS_C_NT_HOSTBASED_SERVICE should be initialized
340 * to point to that gss_OID_desc.
341 */
342 extern gss_OID GSS_C_NT_HOSTBASED_SERVICE;
343
344
345 /*
346 * The implementation must reserve static storage for a
347 * gss_OID_desc object containing the value
348 * {6, (void *)"\x2b\x06\01\x05\x06\x03"},
349 * corresponding to an object identifier value of
350 * {1(iso), 3(org), 6(dod), 1(internet), 5(security),
351 * 6(nametypes), 3(gss-anonymous-name)}. The constant
352 * and GSS_C_NT_ANONYMOUS should be initialized to point
353 * to that gss_OID_desc.
354 */
355 extern gss_OID GSS_C_NT_ANONYMOUS;
356
357 /*
358 * The implementation must reserve static storage for a
359 * gss_OID_desc object containing the value
360 * {6, (void *)"\x2b\x06\x01\x05\x06\x04"},
361 * corresponding to an object-identifier value of
362 * {1(iso), 3(org), 6(dod), 1(internet), 5(security),
363 * 6(nametypes), 4(gss-api-exported-name)}. The constant
364 * GSS_C_NT_EXPORT_NAME should be initialized to point
365 * to that gss_OID_desc.
366 */
367 extern gss_OID GSS_C_NT_EXPORT_NAME;
368
369 /* Major status codes */
370
371 #define GSS_S_COMPLETE 0
372
373 /*
374 * Some "helper" definitions to make the status code macros obvious.
375 */
376 #define GSS_C_CALLING_ERROR_OFFSET 24
377 #define GSS_C_ROUTINE_ERROR_OFFSET 16
378 #define GSS_C_SUPPLEMENTARY_OFFSET 0
379 #define GSS_C_CALLING_ERROR_MASK 0377ul
380 #define GSS_C_ROUTINE_ERROR_MASK 0377ul
381 #define GSS_C_SUPPLEMENTARY_MASK 0177777ul
382
383 /*
384 * The macros that test status codes for error conditions.
385 * Note that the GSS_ERROR() macro has changed slightly from
386 * the V1 GSSAPI so that it now evaluates its argument
387 * only once.
388 */
389 #define GSS_CALLING_ERROR(x) \
390 (x & (GSS_C_CALLING_ERROR_MASK << GSS_C_CALLING_ERROR_OFFSET))
391 #define GSS_ROUTINE_ERROR(x) \
392 (x & (GSS_C_ROUTINE_ERROR_MASK << GSS_C_ROUTINE_ERROR_OFFSET))
393 #define GSS_SUPPLEMENTARY_INFO(x) \
394 (x & (GSS_C_SUPPLEMENTARY_MASK << GSS_C_SUPPLEMENTARY_OFFSET))
395 #define GSS_ERROR(x) \
396 (x & ((GSS_C_CALLING_ERROR_MASK << GSS_C_CALLING_ERROR_OFFSET) | \
397 (GSS_C_ROUTINE_ERROR_MASK << GSS_C_ROUTINE_ERROR_OFFSET)))
398
399 /*
400 * Now the actual status code definitions
401 */
402
403 /*
404 * Calling errors:
405 */
406 #define GSS_S_CALL_INACCESSIBLE_READ \
407 (1ul << GSS_C_CALLING_ERROR_OFFSET)
408 #define GSS_S_CALL_INACCESSIBLE_WRITE \
409 (2ul << GSS_C_CALLING_ERROR_OFFSET)
410 #define GSS_S_CALL_BAD_STRUCTURE \
411 (3ul << GSS_C_CALLING_ERROR_OFFSET)
412
413 /*
414 * Routine errors:
415 */
416 #define GSS_S_BAD_MECH (1ul << GSS_C_ROUTINE_ERROR_OFFSET)
417 #define GSS_S_BAD_NAME (2ul << GSS_C_ROUTINE_ERROR_OFFSET)
418 #define GSS_S_BAD_NAMETYPE (3ul << GSS_C_ROUTINE_ERROR_OFFSET)
419 #define GSS_S_BAD_BINDINGS (4ul << GSS_C_ROUTINE_ERROR_OFFSET)
420 #define GSS_S_BAD_STATUS (5ul << GSS_C_ROUTINE_ERROR_OFFSET)
421 #define GSS_S_BAD_SIG (6ul << GSS_C_ROUTINE_ERROR_OFFSET)
422 #define GSS_S_BAD_MIC GSS_S_BAD_SIG
423 #define GSS_S_NO_CRED (7ul << GSS_C_ROUTINE_ERROR_OFFSET)
424 #define GSS_S_NO_CONTEXT (8ul << GSS_C_ROUTINE_ERROR_OFFSET)
425 #define GSS_S_DEFECTIVE_TOKEN (9ul << GSS_C_ROUTINE_ERROR_OFFSET)
426 #define GSS_S_DEFECTIVE_CREDENTIAL (10ul << GSS_C_ROUTINE_ERROR_OFFSET)
427 #define GSS_S_CREDENTIALS_EXPIRED (11ul << GSS_C_ROUTINE_ERROR_OFFSET)
428 #define GSS_S_CONTEXT_EXPIRED (12ul << GSS_C_ROUTINE_ERROR_OFFSET)
429 #define GSS_S_FAILURE (13ul << GSS_C_ROUTINE_ERROR_OFFSET)
430 #define GSS_S_BAD_QOP (14ul << GSS_C_ROUTINE_ERROR_OFFSET)
431 #define GSS_S_UNAUTHORIZED (15ul << GSS_C_ROUTINE_ERROR_OFFSET)
432 #define GSS_S_UNAVAILABLE (16ul << GSS_C_ROUTINE_ERROR_OFFSET)
433 #define GSS_S_DUPLICATE_ELEMENT (17ul << GSS_C_ROUTINE_ERROR_OFFSET)
434 #define GSS_S_NAME_NOT_MN (18ul << GSS_C_ROUTINE_ERROR_OFFSET)
435
436 /*
437 * Supplementary info bits:
438 */
439 #define GSS_S_CONTINUE_NEEDED (1ul << (GSS_C_SUPPLEMENTARY_OFFSET + 0))
440 #define GSS_S_DUPLICATE_TOKEN (1ul << (GSS_C_SUPPLEMENTARY_OFFSET + 1))
441 #define GSS_S_OLD_TOKEN (1ul << (GSS_C_SUPPLEMENTARY_OFFSET + 2))
442 #define GSS_S_UNSEQ_TOKEN (1ul << (GSS_C_SUPPLEMENTARY_OFFSET + 3))
443 #define GSS_S_GAP_TOKEN (1ul << (GSS_C_SUPPLEMENTARY_OFFSET + 4))
444
445 /*
446 * Finally, function prototypes for the GSS-API routines.
447 */
448
449 GSS_MAKE_TYPEDEF
450 OM_uint32
451 GSS_CALLCONV GSS_FUNC(gss_acquire_cred)
452 (OM_uint32 *, /* minor_status */
453 const gss_name_t, /* desired_name */
454 OM_uint32, /* time_req */
455 const gss_OID_set, /* desired_mechs */
456 gss_cred_usage_t, /* cred_usage */
457 gss_cred_id_t *, /* output_cred_handle */
458 gss_OID_set *, /* actual_mechs */
459 OM_uint32 * /* time_rec */
460 );
461
462 GSS_MAKE_TYPEDEF
463 OM_uint32
464 GSS_CALLCONV GSS_FUNC(gss_release_cred)
465 (OM_uint32 *, /* minor_status */
466 gss_cred_id_t * /* cred_handle */
467 );
468
469 GSS_MAKE_TYPEDEF
470 OM_uint32
471 GSS_CALLCONV GSS_FUNC(gss_init_sec_context)
472 (OM_uint32 *, /* minor_status */
473 const gss_cred_id_t, /* initiator_cred_handle */
474 gss_ctx_id_t *, /* context_handle */
475 const gss_name_t, /* target_name */
476 const gss_OID, /* mech_type */
477 OM_uint32, /* req_flags */
478 OM_uint32, /* time_req */
479 const gss_channel_bindings_t, /* input_chan_bindings */
480 const gss_buffer_t, /* input_token */
481 gss_OID *, /* actual_mech_type */
482 gss_buffer_t, /* output_token */
483 OM_uint32 *, /* ret_flags */
484 OM_uint32 * /* time_rec */
485 );
486
487 GSS_MAKE_TYPEDEF
488 OM_uint32
489 GSS_CALLCONV GSS_FUNC(gss_accept_sec_context)
490 (OM_uint32 *, /* minor_status */
491 gss_ctx_id_t *, /* context_handle */
492 const gss_cred_id_t, /* acceptor_cred_handle */
493 const gss_buffer_t, /* input_token_buffer */
494 const gss_channel_bindings_t, /* input_chan_bindings */
495 gss_name_t *, /* src_name */
496 gss_OID *, /* mech_type */
497 gss_buffer_t, /* output_token */
498 OM_uint32 *, /* ret_flags */
499 OM_uint32 *, /* time_rec */
500 gss_cred_id_t * /* delegated_cred_handle */
501 );
502
503 GSS_MAKE_TYPEDEF
504 OM_uint32
505 GSS_CALLCONV GSS_FUNC(gss_process_context_token)
506 (OM_uint32 *, /* minor_status */
507 const gss_ctx_id_t, /* context_handle */
508 const gss_buffer_t /* token_buffer */
509 );
510
511 GSS_MAKE_TYPEDEF
512 OM_uint32
513 GSS_CALLCONV GSS_FUNC(gss_delete_sec_context)
514 (OM_uint32 *, /* minor_status */
515 gss_ctx_id_t *, /* context_handle */
516 gss_buffer_t /* output_token */
517 );
518
519 GSS_MAKE_TYPEDEF
520 OM_uint32
521 GSS_CALLCONV GSS_FUNC(gss_context_time)
522 (OM_uint32 *, /* minor_status */
523 const gss_ctx_id_t, /* context_handle */
524 OM_uint32 * /* time_rec */
525 );
526
527 GSS_MAKE_TYPEDEF
528 OM_uint32
529 GSS_CALLCONV GSS_FUNC(gss_get_mic)
530 (OM_uint32 *, /* minor_status */
531 const gss_ctx_id_t, /* context_handle */
532 gss_qop_t, /* qop_req */
533 const gss_buffer_t, /* message_buffer */
534 gss_buffer_t /* message_token */
535 );
536
537
538 GSS_MAKE_TYPEDEF
539 OM_uint32
540 GSS_CALLCONV GSS_FUNC(gss_verify_mic)
541 (OM_uint32 *, /* minor_status */
542 const gss_ctx_id_t, /* context_handle */
543 const gss_buffer_t, /* message_buffer */
544 const gss_buffer_t, /* token_buffer */
545 gss_qop_t * /* qop_state */
546 );
547
548 GSS_MAKE_TYPEDEF
549 OM_uint32
550 GSS_CALLCONV GSS_FUNC(gss_wrap)
551 (OM_uint32 *, /* minor_status */
552 const gss_ctx_id_t, /* context_handle */
553 int, /* conf_req_flag */
554 gss_qop_t, /* qop_req */
555 const gss_buffer_t, /* input_message_buffer */
556 int *, /* conf_state */
557 gss_buffer_t /* output_message_buffer */
558 );
559
560
561 GSS_MAKE_TYPEDEF
562 OM_uint32
563 GSS_CALLCONV GSS_FUNC(gss_unwrap)
564 (OM_uint32 *, /* minor_status */
565 const gss_ctx_id_t, /* context_handle */
566 const gss_buffer_t, /* input_message_buffer */
567 gss_buffer_t, /* output_message_buffer */
568 int *, /* conf_state */
569 gss_qop_t * /* qop_state */
570 );
571
572 GSS_MAKE_TYPEDEF
573 OM_uint32
574 GSS_CALLCONV GSS_FUNC(gss_display_status)
575 (OM_uint32 *, /* minor_status */
576 OM_uint32, /* status_value */
577 int, /* status_type */
578 const gss_OID, /* mech_type */
579 OM_uint32 *, /* message_context */
580 gss_buffer_t /* status_string */
581 );
582
583 GSS_MAKE_TYPEDEF
584 OM_uint32
585 GSS_CALLCONV GSS_FUNC(gss_indicate_mechs)
586 (OM_uint32 *, /* minor_status */
587 gss_OID_set * /* mech_set */
588 );
589
590 GSS_MAKE_TYPEDEF
591 OM_uint32
592 GSS_CALLCONV GSS_FUNC(gss_compare_name)
593 (OM_uint32 *, /* minor_status */
594 const gss_name_t, /* name1 */
595 const gss_name_t, /* name2 */
596 int * /* name_equal */
597 );
598
599 GSS_MAKE_TYPEDEF
600 OM_uint32
601 GSS_CALLCONV GSS_FUNC(gss_display_name)
602 (OM_uint32 *, /* minor_status */
603 const gss_name_t, /* input_name */
604 gss_buffer_t, /* output_name_buffer */
605 gss_OID * /* output_name_type */
606 );
607
608 GSS_MAKE_TYPEDEF
609 OM_uint32
610 GSS_CALLCONV GSS_FUNC(gss_import_name)
611 (OM_uint32 *, /* minor_status */
612 const gss_buffer_t, /* input_name_buffer */
613 const gss_OID, /* input_name_type */
614 gss_name_t * /* output_name */
615 );
616
617 GSS_MAKE_TYPEDEF
618 OM_uint32
619 GSS_CALLCONV GSS_FUNC(gss_export_name)
620 (OM_uint32 *, /* minor_status */
621 const gss_name_t, /* input_name */
622 gss_buffer_t /* exported_name */
623 );
624
625 GSS_MAKE_TYPEDEF
626 OM_uint32
627 GSS_CALLCONV GSS_FUNC(gss_release_name)
628 (OM_uint32 *, /* minor_status */
629 gss_name_t * /* input_name */
630 );
631
632 GSS_MAKE_TYPEDEF
633 OM_uint32
634 GSS_CALLCONV GSS_FUNC(gss_release_buffer)
635 (OM_uint32 *, /* minor_status */
636 gss_buffer_t /* buffer */
637 );
638
639 GSS_MAKE_TYPEDEF
640 OM_uint32
641 GSS_CALLCONV GSS_FUNC(gss_release_oid_set)
642 (OM_uint32 *, /* minor_status */
643 gss_OID_set * /* set */
644 );
645
646 GSS_MAKE_TYPEDEF
647 OM_uint32
648 GSS_CALLCONV GSS_FUNC(gss_inquire_cred)
649 (OM_uint32 *, /* minor_status */
650 const gss_cred_id_t, /* cred_handle */
651 gss_name_t *, /* name */
652 OM_uint32 *, /* lifetime */
653 gss_cred_usage_t *, /* cred_usage */
654 gss_OID_set * /* mechanisms */
655 );
656
657 GSS_MAKE_TYPEDEF
658 OM_uint32
659 GSS_CALLCONV GSS_FUNC(gss_inquire_context)
660 (OM_uint32 *, /* minor_status */
661 const gss_ctx_id_t, /* context_handle */
662 gss_name_t *, /* src_name */
663 gss_name_t *, /* targ_name */
664 OM_uint32 *, /* lifetime_rec */
665 gss_OID *, /* mech_type */
666 OM_uint32 *, /* ctx_flags */
667 int *, /* locally_initiated */
668 int * /* open */
669 );
670
671 GSS_MAKE_TYPEDEF
672 OM_uint32
673 GSS_CALLCONV GSS_FUNC(gss_wrap_size_limit)
674 (OM_uint32 *, /* minor_status */
675 const gss_ctx_id_t, /* context_handle */
676 int, /* conf_req_flag */
677 gss_qop_t, /* qop_req */
678 OM_uint32, /* req_output_size */
679 OM_uint32 * /* max_input_size */
680 );
681
682 GSS_MAKE_TYPEDEF
683 OM_uint32
684 GSS_CALLCONV GSS_FUNC(gss_add_cred)
685 (OM_uint32 *, /* minor_status */
686 const gss_cred_id_t, /* input_cred_handle */
687 const gss_name_t, /* desired_name */
688 const gss_OID, /* desired_mech */
689 gss_cred_usage_t, /* cred_usage */
690 OM_uint32, /* initiator_time_req */
691 OM_uint32, /* acceptor_time_req */
692 gss_cred_id_t *, /* output_cred_handle */
693 gss_OID_set *, /* actual_mechs */
694 OM_uint32 *, /* initiator_time_rec */
695 OM_uint32 * /* acceptor_time_rec */
696 );
697
698 GSS_MAKE_TYPEDEF
699 OM_uint32
700 GSS_CALLCONV GSS_FUNC(gss_inquire_cred_by_mech)
701 (OM_uint32 *, /* minor_status */
702 const gss_cred_id_t, /* cred_handle */
703 const gss_OID, /* mech_type */
704 gss_name_t *, /* name */
705 OM_uint32 *, /* initiator_lifetime */
706 OM_uint32 *, /* acceptor_lifetime */
707 gss_cred_usage_t * /* cred_usage */
708 );
709
710 GSS_MAKE_TYPEDEF
711 OM_uint32
712 GSS_CALLCONV GSS_FUNC(gss_export_sec_context)
713 (OM_uint32 *, /* minor_status */
714 gss_ctx_id_t *, /* context_handle */
715 gss_buffer_t /* interprocess_token */
716 );
717
718 GSS_MAKE_TYPEDEF
719 OM_uint32
720 GSS_CALLCONV GSS_FUNC(gss_import_sec_context)
721 (OM_uint32 *, /* minor_status */
722 const gss_buffer_t, /* interprocess_token */
723 gss_ctx_id_t * /* context_handle */
724 );
725
726 GSS_MAKE_TYPEDEF
727 OM_uint32
728 GSS_CALLCONV GSS_FUNC(gss_create_empty_oid_set)
729 (OM_uint32 *, /* minor_status */
730 gss_OID_set * /* oid_set */
731 );
732
733 GSS_MAKE_TYPEDEF
734 OM_uint32
735 GSS_CALLCONV GSS_FUNC(gss_add_oid_set_member)
736 (OM_uint32 *, /* minor_status */
737 const gss_OID, /* member_oid */
738 gss_OID_set * /* oid_set */
739 );
740
741 GSS_MAKE_TYPEDEF
742 OM_uint32
743 GSS_CALLCONV GSS_FUNC(gss_test_oid_set_member)
744 (OM_uint32 *, /* minor_status */
745 const gss_OID, /* member */
746 const gss_OID_set, /* set */
747 int * /* present */
748 );
749
750 GSS_MAKE_TYPEDEF
751 OM_uint32
752 GSS_CALLCONV GSS_FUNC(gss_inquire_names_for_mech)
753 (OM_uint32 *, /* minor_status */
754 const gss_OID, /* mechanism */
755 gss_OID_set * /* name_types */
756 );
757
758 GSS_MAKE_TYPEDEF
759 OM_uint32
760 GSS_CALLCONV GSS_FUNC(gss_inquire_mechs_for_name)
761 (OM_uint32 *, /* minor_status */
762 const gss_name_t, /* input_name */
763 gss_OID_set * /* mech_types */
764 );
765
766 GSS_MAKE_TYPEDEF
767 OM_uint32
768 GSS_CALLCONV GSS_FUNC(gss_canonicalize_name)
769 (OM_uint32 *, /* minor_status */
770 const gss_name_t, /* input_name */
771 const gss_OID, /* mech_type */
772 gss_name_t * /* output_name */
773 );
774
775 GSS_MAKE_TYPEDEF
776 OM_uint32
777 GSS_CALLCONV GSS_FUNC(gss_duplicate_name)
778 (OM_uint32 *, /* minor_status */
779 const gss_name_t, /* src_name */
780 gss_name_t * /* dest_name */
781 );
782
783 /*
784 * The following routines are obsolete variants of gss_get_mic,
785 * gss_verify_mic, gss_wrap and gss_unwrap. They should be
786 * provided by GSSAPI V2 implementations for backwards
787 * compatibility with V1 applications. Distinct entrypoints
788 * (as opposed to #defines) should be provided, both to allow
789 * GSSAPI V1 applications to link against GSSAPI V2 implementations,
790 * and to retain the slight parameter type differences between the
791 * obsolete versions of these routines and their current forms.
792 */
793
794 GSS_MAKE_TYPEDEF
795 OM_uint32
796 GSS_CALLCONV GSS_FUNC(gss_sign)
797 (OM_uint32 *, /* minor_status */
798 gss_ctx_id_t, /* context_handle */
799 int, /* qop_req */
800 gss_buffer_t, /* message_buffer */
801 gss_buffer_t /* message_token */
802 );
803
804
805 GSS_MAKE_TYPEDEF
806 OM_uint32
807 GSS_CALLCONV GSS_FUNC(gss_verify)
808 (OM_uint32 *, /* minor_status */
809 gss_ctx_id_t, /* context_handle */
810 gss_buffer_t, /* message_buffer */
811 gss_buffer_t, /* token_buffer */
812 int * /* qop_state */
813 );
814
815 GSS_MAKE_TYPEDEF
816 OM_uint32
817 GSS_CALLCONV GSS_FUNC(gss_seal)
818 (OM_uint32 *, /* minor_status */
819 gss_ctx_id_t, /* context_handle */
820 int, /* conf_req_flag */
821 int, /* qop_req */
822 gss_buffer_t, /* input_message_buffer */
823 int *, /* conf_state */
824 gss_buffer_t /* output_message_buffer */
825 );
826
827
828 GSS_MAKE_TYPEDEF
829 OM_uint32
830 GSS_CALLCONV GSS_FUNC(gss_unseal)
831 (OM_uint32 *, /* minor_status */
832 gss_ctx_id_t, /* context_handle */
833 gss_buffer_t, /* input_message_buffer */
834 gss_buffer_t, /* output_message_buffer */
835 int *, /* conf_state */
836 int * /* qop_state */
837 );
838
839
840
841 EXTERN_C_END
842
843 #endif /* GSSAPI_H_ */
844
OLDNEW
« no previous file with comments | « net/third_party/gssapi/README.chromium ('k') | net/third_party/gssapi/gssapi.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698