globus_gssapi_gsi  13.17
 All Files Functions Variables Enumerations Groups Pages
gssapi.h
1 
2 #ifndef GSSAPI_H_
3 #define GSSAPI_H_
4 
5 /*
6  * Also define _GSSAPI_H_ as that is what the Kerberos 5 code defines and
7  * what header files on some systems look for.
8  */
9 #define _GSSAPI_H_
10 
11 /*
12  * Define windows specific needed parameters.
13  */
14 
15 #ifndef GSS_CALLCONV
16 #if defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__)
17 #define GSS_CALLCONV __stdcall
18 #define GSS_CALLCONV_C __cdecl
19 #else
20 #define GSS_CALLCONV
21 #define GSS_CALLCONV_C
22 #endif
23 #endif /* GSS_CALLCONV */
24 
25 #ifdef GSS_USE_FUNCTION_POINTERS
26 #define GSS_FUNC(f) (*f##_type)
27 #define GSS_MAKE_TYPEDEF typedef
28 #else
29 #define GSS_FUNC(f) f
30 #define GSS_MAKE_TYPEDEF
31 #endif
32 
33 #include "globus_common.h"
34 
35 
36 /*
37  * Include stddef.h to get size_t defined.
38  */
39 #include <stddef.h>
40 
41 #ifdef __cplusplus
42 extern "C" {
43 #endif
44 
45 #ifndef GLOBUS_GLOBAL_DOCUMENT_SET
46 
50 #endif
51 
106 #define GLOBUS_GSI_GSSAPI_MODULE (&globus_i_gsi_gssapi_module)
107 
108 extern
109 globus_module_descriptor_t globus_i_gsi_gssapi_module;
110 
111 #define _GGSL(s) globus_common_i18n_get_string(GLOBUS_GSI_GSSAPI_MODULE,\
112  s)
113 
114 /*
115  * If the platform supports the xom.h header file, it should be
116  * included here.
117  */
118 /* #include <xom.h> */
119 
120 
121 /*
122  * Now define the three implementation-dependent types.
123  */
124 
125 
126 typedef struct gss_name_desc_struct * gss_name_t;
127 typedef struct gss_ctx_id_desc_struct * gss_ctx_id_t;
128 typedef struct gss_cred_id_desc_struct * gss_cred_id_t;
129 
130 /*
131  * The following type must be defined as the smallest natural
132  * unsigned integer supported by the platform that has at least
133  * 32 bits of precision.
134  */
135 
136 #ifdef OM_STRING
137 /*
138  * We have included the xom.h header file. Verify that OM_uint32
139  * is defined correctly.
140  */
141 
142 #if sizeof(globus_uint) != sizeof(OM_uint32)
143 #error Incompatible definition of OM_uint32 from xom.h
144 #endif
145 
146 typedef OM_object_identifier gss_OID_desc, *gss_OID;
147 
148 #else /* !OM_STRING */
149 
150 /*
151  * We can't use X/Open definitions, so roll our own.
152  */
153 typedef globus_uint_t OM_uint32;
154 typedef struct gss_OID_desc_struct
155 {
156  OM_uint32 length;
157  void *elements;
158 } gss_OID_desc, *gss_OID;
159 
160 #endif /* !OM_STRING */
161 
162 typedef struct gss_OID_set_desc_struct
163 {
164  size_t count;
165  gss_OID elements;
166 } gss_OID_set_desc, *gss_OID_set;
167 
168 
169 /*
170  * For now, define a QOP-type as an OM_uint32
171  */
172 typedef OM_uint32 gss_qop_t;
173 
174 typedef int gss_cred_usage_t;
175 
176 
177 typedef struct gss_buffer_desc_struct
178 {
179  size_t length;
180  void *value;
181 } gss_buffer_desc, *gss_buffer_t;
182 
183 typedef struct gss_channel_bindings_struct
184 {
185  OM_uint32 initiator_addrtype;
186  gss_buffer_desc initiator_address;
187  OM_uint32 acceptor_addrtype;
188  gss_buffer_desc acceptor_address;
189  gss_buffer_desc application_data;
190 } *gss_channel_bindings_t;
191 
192 /*
193  * Flag bits for context-level services.
194  */
195 #define GSS_C_DELEG_FLAG 1
196 #define GSS_C_MUTUAL_FLAG 2
197 #define GSS_C_REPLAY_FLAG 4
198 #define GSS_C_SEQUENCE_FLAG 8
199 #define GSS_C_CONF_FLAG 16
200 #define GSS_C_INTEG_FLAG 32
201 #define GSS_C_ANON_FLAG 64
202 #define GSS_C_PROT_READY_FLAG 128
203 #define GSS_C_TRANS_FLAG 256
204 
205 /*
206  * For the Globus gssapi_openssl we add three
207  * flags. These may have to be changed in the
208  * future, if they are defined in the RFCs.
209  * GSS_C_GLOBUS_SSL_COMPATIBLE
210  * input - The other is not using GSSAPI, but
211  * real SSL, so no delegation, etc.
212  * GSS_C_GLOBUS_LIMITED_DELEG_PROXY_FLAG
213  * input - delegates a limited proxy
214  * output - limited proxy received via delegation
215  * GSS_C_GLOBUS_LIMITED_PROXY_FLAG
216  * input - Dont accept limited proxy for auth
217  * output- Limited proxy received.
218  *
219  * (Deprecated) GSS_C_GLOBUS_LIMITED_PROXY_MANY_FLAG
220  * input - Accept proxies signed by limited proxies
221  *
222  * Since gss_accept_sec_context does not
223  * provide a req_flag as input, we will
224  * pass in our GSS_C_GLOBUS_LIMITED_PROXY_FLAG
225  * and GSS_C_GLOBUS_LIMITED_PROXY_MANY_FLAG
226  * using the ret_flag
227  */
228 
250 #define GSS_C_GLOBUS_DONT_ACCEPT_LIMITED_PROXY_FLAG 8192
251 
259 #define GSS_C_GLOBUS_DELEGATE_LIMITED_PROXY_FLAG 4096
260 
270 #define GSS_C_GLOBUS_ACCEPT_PROXY_SIGNED_BY_LIMITED_PROXY_FLAG 32768
271 
279 #define GSS_C_GLOBUS_ALLOW_MISSING_SIGNING_POLICY 65536
280 
288 #define GSS_C_GLOBUS_FORCE_SSL3 131072 /* NO LONGER SUPPORTED */
289 
307 #define GSS_C_GLOBUS_RECEIVED_LIMITED_PROXY_FLAG 8192
308 
317 #define GSS_C_GLOBUS_RECEIVED_LIMITED_PROXY_DURING_DELEGATION_FLAG 4096
318 
319 #define GSS_C_GLOBUS_LIMITED_DELEG_PROXY_FLAG 4096
320 #define GSS_C_GLOBUS_LIMITED_PROXY_FLAG 8192
321 #define GSS_C_GLOBUS_SSL_COMPATIBLE 16384
322 
330 #define GSS_C_GLOBUS_LIMITED_PROXY_MANY_FLAG 32768
331 
332 /*
333  * Credential usage options
334  */
335 #define GSS_C_BOTH 0
336 #define GSS_C_INITIATE 1
337 #define GSS_C_ACCEPT 2
338 
339 /*
340  * Status code types for gss_display_status
341  */
342 #define GSS_C_GSS_CODE 1
343 #define GSS_C_MECH_CODE 2
344 
345 /*
346  * The constant definitions for channel-bindings address families
347  */
348 #define GSS_C_AF_UNSPEC 0
349 #define GSS_C_AF_LOCAL 1
350 #define GSS_C_AF_INET 2
351 #define GSS_C_AF_IMPLINK 3
352 #define GSS_C_AF_PUP 4
353 #define GSS_C_AF_CHAOS 5
354 #define GSS_C_AF_NS 6
355 #define GSS_C_AF_NBS 7
356 #define GSS_C_AF_ECMA 8
357 #define GSS_C_AF_DATAKIT 9
358 #define GSS_C_AF_CCITT 10
359 #define GSS_C_AF_SNA 11
360 #define GSS_C_AF_DECnet 12
361 #define GSS_C_AF_DLI 13
362 #define GSS_C_AF_LAT 14
363 #define GSS_C_AF_HYLINK 15
364 #define GSS_C_AF_APPLETALK 16
365 #define GSS_C_AF_BSC 17
366 #define GSS_C_AF_DSS 18
367 #define GSS_C_AF_OSI 19
368 #define GSS_C_AF_X25 21
369 
370 #define GSS_C_AF_NULLADDR 255
371 
372 /*
373  * Various Null values
374  */
375 #define GSS_C_NO_NAME ((gss_name_t) 0)
376 #define GSS_C_NO_BUFFER ((gss_buffer_t) 0)
377 #define GSS_C_NO_BUFFER_SET ((gss_buffer_set_t) 0)
378 #define GSS_C_NO_OID ((gss_OID) 0)
379 #define GSS_C_NO_OID_SET ((gss_OID_set) 0)
380 #define GSS_C_NO_CONTEXT ((gss_ctx_id_t) 0)
381 #define GSS_C_NO_CREDENTIAL ((gss_cred_id_t) 0)
382 #define GSS_C_NO_CHANNEL_BINDINGS ((gss_channel_bindings_t) 0)
383 #define GSS_C_EMPTY_BUFFER {0, NULL}
384 #define GSS_C_EMPTY_BUFFER_SET {0, (gss_buffer_t) 0}
385 
386 /*
387  * Some alternate names for a couple of the above
388  * values. These are defined for V1 compatibility.
389  */
390 #define GSS_C_NULL_OID GSS_C_NO_OID
391 #define GSS_C_NULL_OID_SET GSS_C_NO_OID_SET
392 
393 /*
394  * Define the default Quality of Protection for per-message
395  * services. Note that an implementation that offers multiple
396  * levels of QOP may define GSS_C_QOP_DEFAULT to be either zero
397  * (as done here) to mean "default protection", or to a specific
398  * explicit QOP value. However, a value of 0 should always be
399  * interpreted by a GSSAPI implementation as a request for the
400  * default protection level.
401  */
402 #define GSS_C_QOP_DEFAULT 0
403 
404 /*
405  * Expiration time of 2^32-1 seconds means infinite lifetime for a
406  * credential or security context
407  */
408 #define GSS_C_INDEFINITE 0xfffffffful
409 
410 /*
411  * The implementation must reserve static storage for a
412  * gss_OID_desc object containing the value
413  * {10, (void *)"\x2a\x86\x48\x86\xf7\x12"
414  * "\x01\x02\x01\x01"},
415  * corresponding to an object-identifier value of
416  * {iso(1) member-body(2) United States(840) mit(113554)
417  * infosys(1) gssapi(2) generic(1) user_name(1)}. The constant
418  * GSS_C_NT_USER_NAME should be initialized to point
419  * to that gss_OID_desc.
420  */
421 extern gss_OID GSS_C_NT_USER_NAME;
422 
423 /*
424  * The implementation must reserve static storage for a
425  * gss_OID_desc object containing the value
426  * {10, (void *)"\x2a\x86\x48\x86\xf7\x12"
427  * "\x01\x02\x01\x02"},
428  * corresponding to an object-identifier value of
429  * {iso(1) member-body(2) United States(840) mit(113554)
430  * infosys(1) gssapi(2) generic(1) machine_uid_name(2)}.
431  * The constant GSS_C_NT_MACHINE_UID_NAME should be
432  * initialized to point to that gss_OID_desc.
433  */
434 extern gss_OID GSS_C_NT_MACHINE_UID_NAME;
435 
436 /*
437  * The implementation must reserve static storage for a
438  * gss_OID_desc object containing the value
439  * {10, (void *)"\x2a\x86\x48\x86\xf7\x12"
440  * "\x01\x02\x01\x03"},
441  * corresponding to an object-identifier value of
442  * {iso(1) member-body(2) United States(840) mit(113554)
443  * infosys(1) gssapi(2) generic(1) string_uid_name(3)}.
444  * The constant GSS_C_NT_STRING_UID_NAME should be
445  * initialized to point to that gss_OID_desc.
446  */
447 extern gss_OID GSS_C_NT_STRING_UID_NAME;
448 
449 /*
450  * The implementation must reserve static storage for a
451  * gss_OID_desc object containing the value
452  * {6, (void *)"\x2b\x06\x01\x05\x06\x02"},
453  * corresponding to an object-identifier value of
454  * {iso(1) org(3) dod(6) internet(1) security(5)
455  * nametypes(6) gss-host-based-services(2)). The constant
456  * GSS_C_NT_HOSTBASED_SERVICE_X should be initialized to point
457  * to that gss_OID_desc. This is a deprecated OID value, and
458  * implementations wishing to support hostbased-service names
459  * should instead use the GSS_C_NT_HOSTBASED_SERVICE OID,
460  * defined below, to identify such names;
461  * GSS_C_NT_HOSTBASED_SERVICE_X should be accepted a synonym
462  * for GSS_C_NT_HOSTBASED_SERVICE when presented as an input
463  * parameter, but should not be emitted by GSSAPI
464  * implementations
465  */
466 extern gss_OID GSS_C_NT_HOSTBASED_SERVICE_X;
467 
468 /*
469  * The implementation must reserve static storage for a
470  * gss_OID_desc object containing the value
471  * {10, (void *)"\x2a\x86\x48\x86\xf7\x12"
472  * "\x01\x02\x01\x04"}, corresponding to an
473  * object-identifier value of {iso(1) member-body(2)
474  * Unites States(840) mit(113554) infosys(1) gssapi(2)
475  * generic(1) service_name(4)}. The constant
476  * GSS_C_NT_HOSTBASED_SERVICE should be initialized
477  * to point to that gss_OID_desc.
478  */
479 extern gss_OID GSS_C_NT_HOSTBASED_SERVICE;
480 
481 
482 /*
483  * The implementation must reserve static storage for a
484  * gss_OID_desc object containing the value
485  * {6, (void *)"\x2b\x06\01\x05\x06\x03"},
486  * corresponding to an object identifier value of
487  * {1(iso), 3(org), 6(dod), 1(internet), 5(security),
488  * 6(nametypes), 3(gss-anonymous-name)}. The constant
489  * and GSS_C_NT_ANONYMOUS should be initialized to point
490  * to that gss_OID_desc.
491  */
492 extern gss_OID GSS_C_NT_ANONYMOUS;
493 
494 /*
495  * The implementation must reserve static storage for a
496  * gss_OID_desc object containing the value
497  * {6, (void *)"\x2b\x06\x01\x05\x06\x04"},
498  * corresponding to an object-identifier value of
499  * {1(iso), 3(org), 6(dod), 1(internet), 5(security),
500  * 6(nametypes), 4(gss-api-exported-name)}. The constant
501  * GSS_C_NT_EXPORT_NAME should be initialized to point
502  * to that gss_OID_desc.
503  */
504 extern gss_OID GSS_C_NT_EXPORT_NAME;
505 
506 /* Major status codes */
507 
508 #define GSS_S_COMPLETE 0
509 
510 /*
511  * Some "helper" definitions to make the status code macros obvious.
512  */
513 #define GSS_C_CALLING_ERROR_OFFSET 24
514 #define GSS_C_ROUTINE_ERROR_OFFSET 16
515 #define GSS_C_SUPPLEMENTARY_OFFSET 0
516 #define GSS_C_CALLING_ERROR_MASK 0377ul
517 #define GSS_C_ROUTINE_ERROR_MASK 0377ul
518 #define GSS_C_SUPPLEMENTARY_MASK 0177777ul
519 
520 /*
521  * The macros that test status codes for error conditions.
522  * Note that the GSS_ERROR() macro has changed slightly from
523  * the V1 GSSAPI so that it now evaluates its argument
524  * only once.
525  */
526 #define GSS_CALLING_ERROR(x) \
527 (x & (GSS_C_CALLING_ERROR_MASK << GSS_C_CALLING_ERROR_OFFSET))
528 #define GSS_ROUTINE_ERROR(x) \
529  (x & (GSS_C_ROUTINE_ERROR_MASK << GSS_C_ROUTINE_ERROR_OFFSET))
530 #define GSS_SUPPLEMENTARY_INFO(x) \
531  (x & (GSS_C_SUPPLEMENTARY_MASK << GSS_C_SUPPLEMENTARY_OFFSET))
532 #define GSS_ERROR(x) \
533  (x & ((GSS_C_CALLING_ERROR_MASK << GSS_C_CALLING_ERROR_OFFSET) | \
534  (GSS_C_ROUTINE_ERROR_MASK << GSS_C_ROUTINE_ERROR_OFFSET)))
535 
536 /*
537  * Now the actual status code definitions
538  */
539 
540 /*
541  * Calling errors:
542  */
543 #define GSS_S_CALL_INACCESSIBLE_READ \
544  (1ul << GSS_C_CALLING_ERROR_OFFSET)
545 #define GSS_S_CALL_INACCESSIBLE_WRITE \
546  (2ul << GSS_C_CALLING_ERROR_OFFSET)
547 #define GSS_S_CALL_BAD_STRUCTURE \
548  (3ul << GSS_C_CALLING_ERROR_OFFSET)
549 
550 /*
551  * Routine errors:
552  */
553 #define GSS_S_BAD_MECH (1ul << GSS_C_ROUTINE_ERROR_OFFSET)
554 #define GSS_S_BAD_NAME (2ul << GSS_C_ROUTINE_ERROR_OFFSET)
555 #define GSS_S_BAD_NAMETYPE (3ul << GSS_C_ROUTINE_ERROR_OFFSET)
556 #define GSS_S_BAD_BINDINGS (4ul << GSS_C_ROUTINE_ERROR_OFFSET)
557 #define GSS_S_BAD_STATUS (5ul << GSS_C_ROUTINE_ERROR_OFFSET)
558 #define GSS_S_BAD_SIG (6ul << GSS_C_ROUTINE_ERROR_OFFSET)
559 #define GSS_S_BAD_MIC GSS_S_BAD_SIG
560 #define GSS_S_NO_CRED (7ul << GSS_C_ROUTINE_ERROR_OFFSET)
561 #define GSS_S_NO_CONTEXT (8ul << GSS_C_ROUTINE_ERROR_OFFSET)
562 #define GSS_S_DEFECTIVE_TOKEN (9ul << GSS_C_ROUTINE_ERROR_OFFSET)
563 #define GSS_S_DEFECTIVE_CREDENTIAL (10ul << GSS_C_ROUTINE_ERROR_OFFSET)
564 #define GSS_S_CREDENTIALS_EXPIRED (11ul << GSS_C_ROUTINE_ERROR_OFFSET)
565 #define GSS_S_CONTEXT_EXPIRED (12ul << GSS_C_ROUTINE_ERROR_OFFSET)
566 #define GSS_S_FAILURE (13ul << GSS_C_ROUTINE_ERROR_OFFSET)
567 #define GSS_S_BAD_QOP (14ul << GSS_C_ROUTINE_ERROR_OFFSET)
568 #define GSS_S_UNAUTHORIZED (15ul << GSS_C_ROUTINE_ERROR_OFFSET)
569 #define GSS_S_UNAVAILABLE (16ul << GSS_C_ROUTINE_ERROR_OFFSET)
570 #define GSS_S_DUPLICATE_ELEMENT (17ul << GSS_C_ROUTINE_ERROR_OFFSET)
571 #define GSS_S_NAME_NOT_MN (18ul << GSS_C_ROUTINE_ERROR_OFFSET)
572 #define GSS_S_EXT_COMPAT (19ul << GSS_C_ROUTINE_ERROR_OFFSET)
573 
574 
575 /*
576  * Supplementary info bits:
577  */
578 #define GSS_S_CONTINUE_NEEDED (1ul << (GSS_C_SUPPLEMENTARY_OFFSET + 0))
579 #define GSS_S_DUPLICATE_TOKEN (1ul << (GSS_C_SUPPLEMENTARY_OFFSET + 1))
580 #define GSS_S_OLD_TOKEN (1ul << (GSS_C_SUPPLEMENTARY_OFFSET + 2))
581 #define GSS_S_UNSEQ_TOKEN (1ul << (GSS_C_SUPPLEMENTARY_OFFSET + 3))
582 #define GSS_S_GAP_TOKEN (1ul << (GSS_C_SUPPLEMENTARY_OFFSET + 4))
583 
584 /*
585  * Finally, function prototypes for the GSS-API routines.
586  */
587 
588 GSS_MAKE_TYPEDEF
589 OM_uint32
590 GSS_CALLCONV GSS_FUNC(gss_acquire_cred)
591  (OM_uint32 *, /* minor_status */
592  const gss_name_t, /* desired_name */
593  OM_uint32, /* time_req */
594  const gss_OID_set, /* desired_mechs */
595  gss_cred_usage_t, /* cred_usage */
596  gss_cred_id_t *, /* output_cred_handle */
597  gss_OID_set *, /* actual_mechs */
598  OM_uint32 *); /* time_rec */
599 
600 GSS_MAKE_TYPEDEF
601 OM_uint32
602 GSS_CALLCONV GSS_FUNC(gss_release_cred)
603  (OM_uint32 *, /* minor_status */
604  gss_cred_id_t *); /* cred_handle */
605 
606 GSS_MAKE_TYPEDEF
607 OM_uint32
608 GSS_CALLCONV GSS_FUNC(gss_init_sec_context)
609  (OM_uint32 *, /* minor_status */
610  const gss_cred_id_t, /* initiator_cred_handle */
611  gss_ctx_id_t *, /* context_handle */
612  const gss_name_t, /* target_name */
613  const gss_OID, /* mech_type */
614  OM_uint32, /* req_flags */
615  OM_uint32, /* time_req */
616  const gss_channel_bindings_t, /* input_chan_bindings */
617  const gss_buffer_t, /* input_token */
618  gss_OID *, /* actual_mech_type */
619  gss_buffer_t, /* output_token */
620  OM_uint32 *, /* ret_flags */
621  OM_uint32 *); /* time_rec */
622 
623 GSS_MAKE_TYPEDEF
624 OM_uint32
625 GSS_CALLCONV GSS_FUNC(gss_accept_sec_context)
626  (OM_uint32 *, /* minor_status */
627  gss_ctx_id_t *, /* context_handle */
628  const gss_cred_id_t, /* acceptor_cred_handle */
629  const gss_buffer_t, /* input_token_buffer */
630  const gss_channel_bindings_t, /* input_chan_bindings */
631  gss_name_t *, /* src_name */
632  gss_OID *, /* mech_type */
633  gss_buffer_t, /* output_token */
634  OM_uint32 *, /* ret_flags */
635  OM_uint32 *, /* time_rec */
636  gss_cred_id_t *); /* delegated_cred_handle */
637 
638 GSS_MAKE_TYPEDEF
639 OM_uint32
640 GSS_CALLCONV GSS_FUNC(gss_process_context_token)
641  (OM_uint32 *, /* minor_status */
642  const gss_ctx_id_t, /* context_handle */
643  const gss_buffer_t); /* token_buffer */
644 
645 GSS_MAKE_TYPEDEF
646 OM_uint32
647 GSS_CALLCONV GSS_FUNC(gss_delete_sec_context)
648  (OM_uint32 *, /* minor_status */
649  gss_ctx_id_t *, /* context_handle */
650  gss_buffer_t); /* output_token */
651 
652 GSS_MAKE_TYPEDEF
653 OM_uint32
654 GSS_CALLCONV GSS_FUNC(gss_context_time)
655  (OM_uint32 *, /* minor_status */
656  const gss_ctx_id_t, /* context_handle */
657  OM_uint32 *); /* time_rec */
658 
659 GSS_MAKE_TYPEDEF
660 OM_uint32
661 GSS_CALLCONV GSS_FUNC(gss_get_mic)
662  (OM_uint32 *, /* minor_status */
663  const gss_ctx_id_t, /* context_handle */
664  gss_qop_t, /* qop_req */
665  const gss_buffer_t, /* message_buffer */
666  gss_buffer_t); /* message_token */
667 
668 
669 GSS_MAKE_TYPEDEF
670 OM_uint32
671 GSS_CALLCONV GSS_FUNC(gss_verify_mic)
672  (OM_uint32 *, /* minor_status */
673  const gss_ctx_id_t, /* context_handle */
674  const gss_buffer_t, /* message_buffer */
675  const gss_buffer_t, /* token_buffer */
676  gss_qop_t *); /* qop_state */
677 
678 GSS_MAKE_TYPEDEF
679 OM_uint32
680 GSS_CALLCONV GSS_FUNC(gss_wrap)
681  (OM_uint32 *, /* minor_status */
682  const gss_ctx_id_t, /* context_handle */
683  int, /* conf_req_flag */
684  gss_qop_t, /* qop_req */
685  const gss_buffer_t, /* input_message_buffer */
686  int *, /* conf_state */
687  gss_buffer_t); /* output_message_buffer */
688 
689 
690 GSS_MAKE_TYPEDEF
691 OM_uint32
692 GSS_CALLCONV GSS_FUNC(gss_unwrap)
693  (OM_uint32 *, /* minor_status */
694  const gss_ctx_id_t, /* context_handle */
695  const gss_buffer_t, /* input_message_buffer */
696  gss_buffer_t, /* output_message_buffer */
697  int *, /* conf_state */
698  gss_qop_t *); /* qop_state */
699 
700 GSS_MAKE_TYPEDEF
701 OM_uint32
702 GSS_CALLCONV GSS_FUNC(gss_display_status)
703  (OM_uint32 *, /* minor_status */
704  OM_uint32, /* status_value */
705  int, /* status_type */
706  const gss_OID, /* mech_type */
707  OM_uint32 *, /* message_context */
708  gss_buffer_t); /* status_string */
709 
710 GSS_MAKE_TYPEDEF
711 OM_uint32
712 GSS_CALLCONV GSS_FUNC(gss_indicate_mechs)
713  (OM_uint32 *, /* minor_status */
714  gss_OID_set *); /* mech_set */
715 
716 GSS_MAKE_TYPEDEF
717 OM_uint32
718 GSS_CALLCONV GSS_FUNC(gss_compare_name)
719  (OM_uint32 *, /* minor_status */
720  const gss_name_t, /* name1 */
721  const gss_name_t, /* name2 */
722  int *); /* name_equal */
723 
724 GSS_MAKE_TYPEDEF
725 OM_uint32
726 GSS_CALLCONV GSS_FUNC(gss_display_name)
727  (OM_uint32 *, /* minor_status */
728  const gss_name_t, /* input_name */
729  gss_buffer_t, /* output_name_buffer */
730  gss_OID *); /* output_name_type */
731 
732 GSS_MAKE_TYPEDEF
733 OM_uint32
734 GSS_CALLCONV GSS_FUNC(gss_import_name)
735  (OM_uint32 *, /* minor_status */
736  const gss_buffer_t, /* input_name_buffer */
737  const gss_OID, /* input_name_type */
738  gss_name_t *); /* output_name */
739 
740 GSS_MAKE_TYPEDEF
741 OM_uint32
742 GSS_CALLCONV GSS_FUNC(gss_export_name)
743  (OM_uint32 *, /* minor_status */
744  const gss_name_t, /* input_name */
745  gss_buffer_t); /* exported_name */
746 
747 GSS_MAKE_TYPEDEF
748 OM_uint32
749 GSS_CALLCONV GSS_FUNC(gss_release_name)
750  (OM_uint32 *, /* minor_status */
751  gss_name_t *); /* input_name */
752 
753 GSS_MAKE_TYPEDEF
754 OM_uint32
755 GSS_CALLCONV GSS_FUNC(gss_release_buffer)
756  (OM_uint32 *, /* minor_status */
757  gss_buffer_t); /* buffer */
758 
759 GSS_MAKE_TYPEDEF
760 OM_uint32
761 GSS_CALLCONV GSS_FUNC(gss_release_oid_set)
762  (OM_uint32 *, /* minor_status */
763  gss_OID_set *); /* set */
764 
765 GSS_MAKE_TYPEDEF
766 OM_uint32
767 GSS_CALLCONV GSS_FUNC(gss_inquire_cred)
768  (OM_uint32 *, /* minor_status */
769  const gss_cred_id_t, /* cred_handle */
770  gss_name_t *, /* name */
771  OM_uint32 *, /* lifetime */
772  gss_cred_usage_t *, /* cred_usage */
773  gss_OID_set *); /* mechanisms */
774 
775 GSS_MAKE_TYPEDEF
776 OM_uint32
777 GSS_CALLCONV GSS_FUNC(gss_inquire_context)
778  (OM_uint32 *, /* minor_status */
779  const gss_ctx_id_t, /* context_handle */
780  gss_name_t *, /* src_name */
781  gss_name_t *, /* targ_name */
782  OM_uint32 *, /* lifetime_rec */
783  gss_OID *, /* mech_type */
784  OM_uint32 *, /* ctx_flags */
785  int *, /* locally_initiated */
786  int *); /* open */
787 
788 GSS_MAKE_TYPEDEF
789 OM_uint32
790 GSS_CALLCONV GSS_FUNC(gss_wrap_size_limit)
791  (OM_uint32 *, /* minor_status */
792  const gss_ctx_id_t, /* context_handle */
793  int, /* conf_req_flag */
794  gss_qop_t, /* qop_req */
795  OM_uint32, /* req_output_size */
796  OM_uint32 *); /* max_input_size */
797 
798 GSS_MAKE_TYPEDEF
799 OM_uint32
800 GSS_CALLCONV GSS_FUNC(gss_add_cred)
801  (OM_uint32 *, /* minor_status */
802  const gss_cred_id_t, /* input_cred_handle */
803  const gss_name_t, /* desired_name */
804  const gss_OID, /* desired_mech */
805  gss_cred_usage_t, /* cred_usage */
806  OM_uint32, /* initiator_time_req */
807  OM_uint32, /* acceptor_time_req */
808  gss_cred_id_t *, /* output_cred_handle */
809  gss_OID_set *, /* actual_mechs */
810  OM_uint32 *, /* initiator_time_rec */
811  OM_uint32 *); /* acceptor_time_rec */
812 
813 GSS_MAKE_TYPEDEF
814 OM_uint32
815 GSS_CALLCONV GSS_FUNC(gss_inquire_cred_by_mech)
816  (OM_uint32 *, /* minor_status */
817  const gss_cred_id_t, /* cred_handle */
818  const gss_OID, /* mech_type */
819  gss_name_t *, /* name */
820  OM_uint32 *, /* initiator_lifetime */
821  OM_uint32 *, /* acceptor_lifetime */
822  gss_cred_usage_t *); /* cred_usage */
823 
824 GSS_MAKE_TYPEDEF
825 OM_uint32
826 GSS_CALLCONV GSS_FUNC(gss_export_sec_context)
827  (OM_uint32 *, /* minor_status */
828  gss_ctx_id_t *, /* context_handle */
829  gss_buffer_t); /* interprocess_token */
830 
831 GSS_MAKE_TYPEDEF
832 OM_uint32
833 GSS_CALLCONV GSS_FUNC(gss_import_sec_context)
834  (OM_uint32 *, /* minor_status */
835  const gss_buffer_t, /* interprocess_token */
836  gss_ctx_id_t *); /* context_handle */
837 
838 GSS_MAKE_TYPEDEF
839 OM_uint32
840 GSS_CALLCONV GSS_FUNC(gss_create_empty_oid_set)
841  (OM_uint32 *, /* minor_status */
842  gss_OID_set *); /* oid_set */
843 
844 GSS_MAKE_TYPEDEF
845 OM_uint32
846 GSS_CALLCONV GSS_FUNC(gss_add_oid_set_member)
847  (OM_uint32 *, /* minor_status */
848  const gss_OID, /* member_oid */
849  gss_OID_set *); /* oid_set */
850 
851 GSS_MAKE_TYPEDEF
852 OM_uint32
853 GSS_CALLCONV GSS_FUNC(gss_test_oid_set_member)
854  (OM_uint32 *, /* minor_status */
855  const gss_OID, /* member */
856  const gss_OID_set, /* set */
857  int *); /* present */
858 
859 GSS_MAKE_TYPEDEF
860 OM_uint32
861 GSS_CALLCONV GSS_FUNC(gss_inquire_names_for_mech)
862  (OM_uint32 *, /* minor_status */
863  const gss_OID, /* mechanism */
864  gss_OID_set * /* name_types */
865  );
866 
867 GSS_MAKE_TYPEDEF
868 OM_uint32
869 GSS_CALLCONV GSS_FUNC(gss_inquire_mechs_for_name)
870  (OM_uint32 *, /* minor_status */
871  const gss_name_t, /* input_name */
872  gss_OID_set *); /* mech_types */
873 
874 GSS_MAKE_TYPEDEF
875 OM_uint32
876 GSS_CALLCONV GSS_FUNC(gss_canonicalize_name)
877  (OM_uint32 *, /* minor_status */
878  const gss_name_t, /* input_name */
879  const gss_OID, /* mech_type */
880  gss_name_t *); /* output_name */
881 
882 GSS_MAKE_TYPEDEF
883 OM_uint32
884 GSS_CALLCONV GSS_FUNC(gss_duplicate_name)
885  (OM_uint32 *, /* minor_status */
886  const gss_name_t, /* src_name */
887  gss_name_t *); /* dest_name */
888 
889 /*
890  * The following routines are obsolete variants of gss_get_mic,
891  * gss_verify_mic, gss_wrap and gss_unwrap. They should be
892  * provided by GSSAPI V2 implementations for backwards
893  * compatibility with V1 applications. Distinct entrypoints
894  * (as opposed to #defines) should be provided, both to allow
895  * GSSAPI V1 applications to link against GSSAPI V2 implementations,
896  * and to retain the slight parameter type differences between the
897  * obsolete versions of these routines and their current forms.
898  */
899 
900 GSS_MAKE_TYPEDEF
901 OM_uint32
902 GSS_CALLCONV GSS_FUNC(gss_sign)
903  (OM_uint32 *, /* minor_status */
904  gss_ctx_id_t, /* context_handle */
905  int, /* qop_req */
906  gss_buffer_t, /* message_buffer */
907  gss_buffer_t); /* message_token */
908 
909 GSS_MAKE_TYPEDEF
910 OM_uint32
911 GSS_CALLCONV GSS_FUNC(gss_verify)
912  (OM_uint32 *, /* minor_status */
913  gss_ctx_id_t, /* context_handle */
914  gss_buffer_t, /* message_buffer */
915  gss_buffer_t, /* token_buffer */
916  int *); /* qop_state */
917 
918 GSS_MAKE_TYPEDEF
919 OM_uint32
920 GSS_CALLCONV GSS_FUNC(gss_seal)
921  (OM_uint32 *, /* minor_status */
922  gss_ctx_id_t, /* context_handle */
923  int, /* conf_req_flag */
924  int, /* qop_req */
925  gss_buffer_t, /* input_message_buffer */
926  int *, /* conf_state */
927  gss_buffer_t); /* output_message_buffer */
928 
929 GSS_MAKE_TYPEDEF
930 OM_uint32
931 GSS_CALLCONV GSS_FUNC(gss_unseal)
932  (OM_uint32 *, /* minor_status */
933  gss_ctx_id_t, /* context_handle */
934  gss_buffer_t, /* input_message_buffer */
935  gss_buffer_t, /* output_message_buffer */
936  int *, /* conf_state */
937  int *); /* qop_state */
938 
939 #ifndef USE_ONLY_STANDARD_GSSAPI
940 #define _HAVE_GSI_EXTENDED_GSSAPI
941 
962 typedef struct gss_buffer_set_desc_struct
963 {
964  size_t count;
965  gss_buffer_t elements;
966 } gss_buffer_set_desc, *gss_buffer_set_t;
967 
968 GSS_MAKE_TYPEDEF
969 OM_uint32
970 GSS_CALLCONV GSS_FUNC(gss_create_empty_buffer_set)
971  (OM_uint32 *, /* minor_status */
972  gss_buffer_set_t *); /* buffer set to be created */
973 
974 GSS_MAKE_TYPEDEF
975 OM_uint32
976 GSS_CALLCONV GSS_FUNC(gss_add_buffer_set_member)
977  (OM_uint32 *, /* minor_status */
978  const gss_buffer_t, /* member_buffer */
979  gss_buffer_set_t *); /* buffer set to be freed */
980 
981 GSS_MAKE_TYPEDEF
982 OM_uint32
983 GSS_CALLCONV GSS_FUNC(gss_release_buffer_set)
984  (OM_uint32 *, /* minor_status */
985  gss_buffer_set_t *); /* buffer set to be freed */
986 
987 GSS_MAKE_TYPEDEF
988 OM_uint32
989 GSS_CALLCONV GSS_FUNC(gss_import_cred)
990  (OM_uint32 *, /* minor_status */
991  gss_cred_id_t *, /* cred to be exported */
992  const gss_OID, /* desired mech*/
993  OM_uint32, /* option req */
994  const gss_buffer_t, /* import buffer */
995  OM_uint32, /* time req */
996  OM_uint32 *); /* time rec */
997 
998 GSS_MAKE_TYPEDEF
999 OM_uint32
1000 GSS_CALLCONV GSS_FUNC(gss_export_cred)
1001  (OM_uint32 *, /* minor_status */
1002  const gss_cred_id_t,/* cred_handle */
1003  const gss_OID, /* desired mech */
1004  OM_uint32, /* option req */
1005  gss_buffer_t); /* output buffer */
1006 
1007 GSS_MAKE_TYPEDEF
1008 OM_uint32
1009 GSS_CALLCONV GSS_FUNC(gss_init_delegation)
1010  (OM_uint32 *, /* minor_status */
1011  const gss_ctx_id_t, /* context_handle */
1012  const gss_cred_id_t, /* cred_handle */
1013  const gss_OID, /* desired_mech */
1014  const gss_OID_set, /* extension_oids */
1015  const gss_buffer_set_t, /* extension_buffers */
1016  const gss_buffer_t, /* input_token */
1017  OM_uint32, /* req_flags */
1018  OM_uint32, /* time_req */
1019  gss_buffer_t); /* output_token */
1020 
1021 GSS_MAKE_TYPEDEF
1022 OM_uint32
1023 GSS_CALLCONV GSS_FUNC(gss_accept_delegation)
1024  (OM_uint32 *, /* minor_status */
1025  const gss_ctx_id_t, /* context_handle */
1026  const gss_OID_set, /* extension_oids */
1027  const gss_buffer_set_t, /* extension_buffers */
1028  const gss_buffer_t, /* input_token */
1029  OM_uint32, /* req_flags */
1030  OM_uint32, /* time_req */
1031  OM_uint32 *, /* time_rec */
1032  gss_cred_id_t *, /* delegated_cred_handle */
1033  gss_OID *, /* mech_type */
1034  gss_buffer_t); /* output_token */
1035 
1036 GSS_MAKE_TYPEDEF
1037 OM_uint32
1038 GSS_CALLCONV GSS_FUNC(gss_inquire_sec_context_by_oid)
1039  (OM_uint32 *, /* minor_status */
1040  const gss_ctx_id_t, /* context_handle */
1041  const gss_OID, /* desired_object */
1042  gss_buffer_set_t *); /* data_set */
1043 
1044 GSS_MAKE_TYPEDEF
1045 OM_uint32
1046 GSS_CALLCONV GSS_FUNC(gss_inquire_cred_by_oid)
1047  (OM_uint32 *, /* minor_status */
1048  const gss_cred_id_t, /* context_handle */
1049  const gss_OID, /* desired_object */
1050  gss_buffer_set_t *); /* data_set */
1051 
1052 GSS_MAKE_TYPEDEF
1053 OM_uint32
1054 GSS_CALLCONV GSS_FUNC(gss_set_sec_context_option)
1055  (OM_uint32 *, /* minor_status */
1056  gss_ctx_id_t *, /* context_handle */
1057  const gss_OID, /* option */
1058  const gss_buffer_t); /* value */
1059 
1060 extern const gss_OID_desc * const GSS_DISALLOW_ENCRYPTION;
1061 extern const gss_OID_desc * const GSS_PROTECTION_FAIL_ON_CONTEXT_EXPIRATION;
1062 extern const gss_OID_desc * const GSS_APPLICATION_WILL_HANDLE_EXTENSIONS;
1063 
1064 #endif /* GSI_EXTENDED_GSSAPI */
1065 
1066 #ifdef __cplusplus
1067 }
1068 #endif
1069 
1070 #endif /* GSSAPI_H_ */
OM_uint32 GSS_CALLCONV gss_sign(OM_uint32 *minor_status, gss_ctx_id_t context_handle, int qop_req, gss_buffer_t message_buffer, gss_buffer_t message_token)
Sign.
Definition: get_mic.c:315
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_add_oid_set_member(OM_uint32 *, const gss_OID, gss_OID_set *)
Add OID Set Member.
Definition: oid_functions.c:150
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_import_name(OM_uint32 *, const gss_buffer_t, const gss_OID, gss_name_t *)
Definition: import_name.c:73
OM_uint32 GSS_CALLCONV gss_release_buffer_set(OM_uint32 *minor_status, gss_buffer_set_t *buffer_set)
Free a Buffer Set.
Definition: buffer_set.c:204
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_create_empty_oid_set(OM_uint32 *, gss_OID_set *)
Create Empty OID SetCreates an object identifier set containing no object identifiers, to which members may be subsequently added using the GSS_Add_OID_set_member() routine. These routines are intended to be used to construct sets of mechanism object identifiers, for input to GSS_Acquire_cred().
Definition: oid_functions.c:228
OM_uint32 GSS_CALLCONV gss_display_status(OM_uint32 *minor_status, OM_uint32 status_value, int status_type, const gss_OID mech_type, OM_uint32 *message_context, gss_buffer_t status_string)
Display StatusCalls the OpenSSL error print routines to produce a printable message. This may need some work, as the OpenSSL error messages are more of a trace, and my not be the best for the user. Also don&#39;t take advantage of being called in a loop.
Definition: display_status.c:31
OM_uint32 GSS_CALLCONV gss_display_name(OM_uint32 *minor_status, const gss_name_t input_name_P, gss_buffer_t output_name, gss_OID *output_name_type)
Display Name.
Definition: display_name.c:31
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_seal(OM_uint32 *, gss_ctx_id_t, int, int, gss_buffer_t, int *, gss_buffer_t)
Seal.
Definition: wrap.c:340
OM_uint32 GSS_CALLCONV gss_accept_sec_context(OM_uint32 *minor_status, gss_ctx_id_t *context_handle_P, const gss_cred_id_t acceptor_cred_handle, const gss_buffer_t input_token, const gss_channel_bindings_t input_chan_bindings, gss_name_t *src_name_P, gss_OID *mech_type, gss_buffer_t output_token, OM_uint32 *ret_flags, OM_uint32 *time_rec, gss_cred_id_t *delegated_cred_handle_P)
GSS Accept Security Context.
Definition: accept_sec_context.c:34
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_release_cred(OM_uint32 *, gss_cred_id_t *)
Release Credential.
Definition: release_cred.c:27
OM_uint32 GSS_CALLCONV gss_create_empty_buffer_set(OM_uint32 *minor_status, gss_buffer_set_t *buffer_set)
Create a empty buffer set.
Definition: buffer_set.c:46
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_test_oid_set_member(OM_uint32 *, const gss_OID, const gss_OID_set, int *)
Test OID Set Member.
Definition: oid_functions.c:427
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_wrap(OM_uint32 *, const gss_ctx_id_t, int, gss_qop_t, const gss_buffer_t, int *, gss_buffer_t)
Wrap.
Definition: wrap.c:126
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_unseal(OM_uint32 *, gss_ctx_id_t, gss_buffer_t, gss_buffer_t, int *, int *)
Unseal.
Definition: unwrap.c:336
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_verify(OM_uint32 *, gss_ctx_id_t, gss_buffer_t, gss_buffer_t, int *)
Verify.
Definition: verify_mic.c:632
OM_uint32 GSS_CALLCONV gss_get_mic(OM_uint32 *minor_status, const gss_ctx_id_t context_handle, gss_qop_t qop_req, const gss_buffer_t message_buffer, gss_buffer_t message_token)
Get MICCalculates a cryptographic MIC (message integrity check) over an application message...
Definition: get_mic.c:43
OM_uint32 GSS_CALLCONV gss_delete_sec_context(OM_uint32 *minor_status, gss_ctx_id_t *context_handle_P, gss_buffer_t output_token)
Delete Security Context.
Definition: delete_sec_context.c:30
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_indicate_mechs(OM_uint32 *, gss_OID_set *)
Indicate Mechs.
Definition: oid_functions.c:279
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_inquire_cred_by_oid(OM_uint32 *, const gss_cred_id_t, const gss_OID, gss_buffer_set_t *)
Inquire Cred By OID.
Definition: inquire_cred_by_oid.c:35
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_set_sec_context_option(OM_uint32 *, gss_ctx_id_t *, const gss_OID, const gss_buffer_t)
Set Security Context Option.
Definition: set_sec_context_option.c:57
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_context_time(OM_uint32 *, const gss_ctx_id_t, OM_uint32 *)
Context Time.
Definition: inquire_context.c:194
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_release_name(OM_uint32 *, gss_name_t *)
GSS Release Name.
Definition: release_name.c:27
OM_uint32 GSS_CALLCONV gss_acquire_cred(OM_uint32 *minor_status, const gss_name_t desired_name_P, OM_uint32 time_req, const gss_OID_set desired_mechs, gss_cred_usage_t cred_usage, gss_cred_id_t *output_cred_handle_P, gss_OID_set *actual_mechs, OM_uint32 *time_rec)
Acquire Credential.
Definition: acquire_cred.c:58
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_wrap_size_limit(OM_uint32 *, const gss_ctx_id_t, int, gss_qop_t, OM_uint32, OM_uint32 *)
Wrap Size Limit.
Definition: wrap.c:30
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_init_delegation(OM_uint32 *, const gss_ctx_id_t, const gss_cred_id_t, const gss_OID, const gss_OID_set, const gss_buffer_set_t, const gss_buffer_t, OM_uint32, OM_uint32, gss_buffer_t)
Initiate Delegation.
Definition: init_delegation.c:71
OM_uint32 GSS_CALLCONV gss_compare_name(OM_uint32 *minor_status, const gss_name_t name1_P, const gss_name_t name2_P, int *name_equal)
Compare Name.
Definition: compare_name.c:174
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_unwrap(OM_uint32 *, const gss_ctx_id_t, const gss_buffer_t, gss_buffer_t, int *, gss_qop_t *)
Unwrap.
Definition: unwrap.c:35
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_inquire_context(OM_uint32 *, const gss_ctx_id_t, gss_name_t *, gss_name_t *, OM_uint32 *, gss_OID *, OM_uint32 *, int *, int *)
Inquire Context.
Definition: inquire_context.c:30
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_import_cred(OM_uint32 *, gss_cred_id_t *, const gss_OID, OM_uint32, const gss_buffer_t, OM_uint32, OM_uint32 *)
Import a credential.
Definition: import_cred.c:53
OM_uint32 GSS_CALLCONV gss_export_cred(OM_uint32 *minor_status, const gss_cred_id_t cred_handle, const gss_OID desired_mech, OM_uint32 option_req, gss_buffer_t export_buffer)
Export a GSSAPI credential.
Definition: export_cred.c:37
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_inquire_sec_context_by_oid(OM_uint32 *, const gss_ctx_id_t, const gss_OID, gss_buffer_set_t *)
Inquire Sec Context by OID.
Definition: inquire_sec_context_by_oid.c:23
OM_uint32 GSS_CALLCONV gss_add_buffer_set_member(OM_uint32 *minor_status, const gss_buffer_t member_buffer, gss_buffer_set_t *buffer_set)
Add a buffer to a buffer set.
Definition: buffer_set.c:111
OM_uint32 GSS_CALLCONV gss_duplicate_name(OM_uint32 *minor_status, const gss_name_t src_name, gss_name_t *dest_name)
Duplicate Name.
Definition: duplicate_name.c:29
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_inquire_cred(OM_uint32 *, const gss_cred_id_t, gss_name_t *, OM_uint32 *, gss_cred_usage_t *, gss_OID_set *)
Inquire Cred.
Definition: inquire_cred.c:46
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_release_oid_set(OM_uint32 *, gss_OID_set *)
Release OID Set.
Definition: oid_functions.c:387
OM_uint32 GSS_CALLCONV gss_export_name(OM_uint32 *minor_status, const gss_name_t input_name_P, gss_buffer_t exported_name)
Export Name.
Definition: export_name.c:22
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_verify_mic(OM_uint32 *, const gss_ctx_id_t, const gss_buffer_t, const gss_buffer_t, gss_qop_t *)
Verify MIC.
Definition: verify_mic.c:65
OM_uint32 GSS_CALLCONV gss_accept_delegation(OM_uint32 *minor_status, const gss_ctx_id_t context_handle, const gss_OID_set extension_oids, const gss_buffer_set_t extension_buffers, const gss_buffer_t input_token, OM_uint32 req_flags, OM_uint32 time_req, OM_uint32 *time_rec, gss_cred_id_t *delegated_cred_handle, gss_OID *mech_type, gss_buffer_t output_token)
Accept a delegated credential.
Definition: accept_delegation.c:64
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_release_buffer(OM_uint32 *, gss_buffer_t)
Release Buffer.
Definition: release_buffer.c:21
GSS_MAKE_TYPEDEF OM_uint32 GSS_CALLCONV GSS_FUNC() gss_init_sec_context(OM_uint32 *, const gss_cred_id_t, gss_ctx_id_t *, const gss_name_t, const gss_OID, OM_uint32, OM_uint32, const gss_channel_bindings_t, const gss_buffer_t, gss_OID *, gss_buffer_t, OM_uint32 *, OM_uint32 *)
Init Sec Context.
Definition: init_sec_context.c:21