src/java.security.jgss/share/native/libj2gss/gssapi.h
changeset 55354 74f0622db875
parent 49682 2918e1146106
child 55638 430a51e86f28
equal deleted inserted replaced
55353:946f7f2d321c 55354:74f0622db875
     1 /*
     1 /*
     2  * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2005, 2019, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.  Oracle designates this
     7  * published by the Free Software Foundation.  Oracle designates this
    55 /*
    55 /*
    56  * POSIX says that sys/types.h is where size_t is defined.
    56  * POSIX says that sys/types.h is where size_t is defined.
    57  */
    57  */
    58 #include <sys/types.h>
    58 #include <sys/types.h>
    59 
    59 
    60 typedef void * gss_name_t;
    60 struct gss_name_struct;
    61 typedef void * gss_cred_id_t;
    61 typedef struct gss_name_struct * gss_name_t;
    62 typedef void * gss_ctx_id_t;
    62 typedef const struct gss_name_struct *gss_const_name_t;
       
    63 
       
    64 struct gss_cred_id_struct;
       
    65 typedef struct gss_cred_id_struct * gss_cred_id_t;
       
    66 typedef const struct gss_cred_id_struct *gss_const_cred_id_t;
       
    67 
       
    68 struct gss_ctx_id_struct;
       
    69 typedef struct gss_ctx_id_struct * gss_ctx_id_t;
       
    70 typedef const struct gss_ctx_id_struct *gss_const_ctx_id_t;
    63 
    71 
    64 /*
    72 /*
    65  * The following type must be defined as the smallest natural unsigned integer
    73  * The following type must be defined as the smallest natural unsigned integer
    66  * supported by the platform that has at least 32 bits of precision.
    74  * supported by the platform that has at least 32 bits of precision.
    67  */
    75  */
    80 
    88 
    81 typedef struct gss_OID_desc_struct {
    89 typedef struct gss_OID_desc_struct {
    82       OM_uint32 length;
    90       OM_uint32 length;
    83       void *elements;
    91       void *elements;
    84 } gss_OID_desc, *gss_OID;
    92 } gss_OID_desc, *gss_OID;
       
    93 typedef const gss_OID_desc * gss_const_OID;
    85 
    94 
    86 typedef struct gss_OID_set_desc_struct  {
    95 typedef struct gss_OID_set_desc_struct  {
    87       size_t  count;
    96       size_t  count;
    88       gss_OID elements;
    97       gss_OID elements;
    89 } gss_OID_set_desc, *gss_OID_set;
    98 } gss_OID_set_desc, *gss_OID_set;
       
    99 typedef const gss_OID_set_desc * gss_const_OID_set;
    90 
   100 
    91 typedef struct gss_buffer_desc_struct {
   101 typedef struct gss_buffer_desc_struct {
    92       size_t length;
   102       size_t length;
    93       void *value;
   103       void *value;
    94 } gss_buffer_desc, *gss_buffer_t;
   104 } gss_buffer_desc, *gss_buffer_t;
       
   105 typedef const gss_buffer_desc * gss_const_buffer_t;
    95 
   106 
    96 typedef struct gss_channel_bindings_struct {
   107 typedef struct gss_channel_bindings_struct {
    97       OM_uint32 initiator_addrtype;
   108       OM_uint32 initiator_addrtype;
    98       gss_buffer_desc initiator_address;
   109       gss_buffer_desc initiator_address;
    99       OM_uint32 acceptor_addrtype;
   110       OM_uint32 acceptor_addrtype;
   100       gss_buffer_desc acceptor_address;
   111       gss_buffer_desc acceptor_address;
   101       gss_buffer_desc application_data;
   112       gss_buffer_desc application_data;
   102 } *gss_channel_bindings_t;
   113 } *gss_channel_bindings_t;
       
   114 typedef const struct gss_channel_bindings_struct *gss_const_channel_bindings_t;
   103 
   115 
   104 /*
   116 /*
   105  * For now, define a QOP-type as an OM_uint32
   117  * For now, define a QOP-type as an OM_uint32
   106  */
   118  */
   107 typedef OM_uint32       gss_qop_t;
   119 typedef OM_uint32       gss_qop_t;
   117 #define GSS_C_CONF_FLAG 16
   129 #define GSS_C_CONF_FLAG 16
   118 #define GSS_C_INTEG_FLAG 32
   130 #define GSS_C_INTEG_FLAG 32
   119 #define GSS_C_ANON_FLAG 64
   131 #define GSS_C_ANON_FLAG 64
   120 #define GSS_C_PROT_READY_FLAG 128
   132 #define GSS_C_PROT_READY_FLAG 128
   121 #define GSS_C_TRANS_FLAG 256
   133 #define GSS_C_TRANS_FLAG 256
       
   134 #define GSS_C_DELEG_POLICY_FLAG 32768
   122 
   135 
   123 /*
   136 /*
   124  * Credential usage options
   137  * Credential usage options
   125  */
   138  */
   126 #define GSS_C_BOTH 0
   139 #define GSS_C_BOTH 0
   387 
   400 
   388 /* Function Prototypes */
   401 /* Function Prototypes */
   389 
   402 
   390 GSS_DLLIMP OM_uint32 gss_acquire_cred(
   403 GSS_DLLIMP OM_uint32 gss_acquire_cred(
   391         OM_uint32 *,            /* minor_status */
   404         OM_uint32 *,            /* minor_status */
   392         gss_name_t,             /* desired_name */
   405         gss_const_name_t,       /* desired_name */
   393         OM_uint32,              /* time_req */
   406         OM_uint32,              /* time_req */
   394         gss_OID_set,            /* desired_mechs */
   407         const gss_OID_set,      /* desired_mechs */
   395         gss_cred_usage_t,       /* cred_usage */
   408         gss_cred_usage_t,       /* cred_usage */
   396         gss_cred_id_t *,        /* output_cred_handle */
   409         gss_cred_id_t *,        /* output_cred_handle */
   397         gss_OID_set *,          /* actual_mechs */
   410         gss_OID_set *,          /* actual_mechs */
   398         OM_uint32 *             /* time_rec */
   411         OM_uint32 *             /* time_rec */
   399 );
   412 );
   403         gss_cred_id_t *         /* cred_handle */
   416         gss_cred_id_t *         /* cred_handle */
   404 );
   417 );
   405 
   418 
   406 GSS_DLLIMP OM_uint32 gss_init_sec_context(
   419 GSS_DLLIMP OM_uint32 gss_init_sec_context(
   407         OM_uint32 *,            /* minor_status */
   420         OM_uint32 *,            /* minor_status */
   408         gss_cred_id_t,          /* claimant_cred_handle */
   421         gss_const_cred_id_t,    /* claimant_cred_handle */
   409         gss_ctx_id_t *,         /* context_handle */
   422         gss_ctx_id_t *,         /* context_handle */
   410         gss_name_t,             /* target_name */
   423         gss_const_name_t,       /* target_name */
   411         gss_OID,                /* mech_type (used to be const) */
   424         const gss_OID,          /* mech_type */
   412         OM_uint32,              /* req_flags */
   425         OM_uint32,              /* req_flags */
   413         OM_uint32,              /* time_req */
   426         OM_uint32,              /* time_req */
   414         gss_channel_bindings_t, /* input_chan_bindings */
   427         const gss_channel_bindings_t, /* input_chan_bindings */
   415         gss_buffer_t,           /* input_token */
   428         const gss_buffer_t,     /* input_token */
   416         gss_OID *,              /* actual_mech_type */
   429         gss_OID *,              /* actual_mech_type */
   417         gss_buffer_t,           /* output_token */
   430         gss_buffer_t,           /* output_token */
   418         OM_uint32 *,            /* ret_flags */
   431         OM_uint32 *,            /* ret_flags */
   419         OM_uint32 *             /* time_rec */
   432         OM_uint32 *             /* time_rec */
   420 );
   433 );
   421 
   434 
   422 GSS_DLLIMP OM_uint32 gss_accept_sec_context(
   435 GSS_DLLIMP OM_uint32 gss_accept_sec_context(
   423         OM_uint32 *,            /* minor_status */
   436         OM_uint32 *,            /* minor_status */
   424         gss_ctx_id_t *,         /* context_handle */
   437         gss_ctx_id_t *,         /* context_handle */
   425         gss_cred_id_t,          /* acceptor_cred_handle */
   438         gss_const_cred_id_t,    /* acceptor_cred_handle */
   426         gss_buffer_t,           /* input_token_buffer */
   439         const gss_buffer_t,     /* input_token_buffer */
   427         gss_channel_bindings_t, /* input_chan_bindings */
   440         const gss_channel_bindings_t, /* input_chan_bindings */
   428         gss_name_t *,           /* src_name */
   441         gss_name_t *,           /* src_name */
   429         gss_OID *,              /* mech_type */
   442         gss_OID *,              /* mech_type */
   430         gss_buffer_t,           /* output_token */
   443         gss_buffer_t,           /* output_token */
   431         OM_uint32 *,            /* ret_flags */
   444         OM_uint32 *,            /* ret_flags */
   432         OM_uint32 *,            /* time_rec */
   445         OM_uint32 *,            /* time_rec */
   433         gss_cred_id_t *         /* delegated_cred_handle */
   446         gss_cred_id_t *         /* delegated_cred_handle */
   434 );
   447 );
   435 
   448 
   436 GSS_DLLIMP OM_uint32 gss_process_context_token(
   449 GSS_DLLIMP OM_uint32 gss_process_context_token(
   437         OM_uint32 *,            /* minor_status */
   450         OM_uint32 *,            /* minor_status */
   438         gss_ctx_id_t,           /* context_handle */
   451         gss_const_ctx_id_t,     /* context_handle */
   439         gss_buffer_t            /* token_buffer */
   452         const gss_buffer_t      /* token_buffer */
   440 );
   453 );
   441 
   454 
   442 GSS_DLLIMP OM_uint32 gss_delete_sec_context(
   455 GSS_DLLIMP OM_uint32 gss_delete_sec_context(
   443         OM_uint32 *,            /* minor_status */
   456         OM_uint32 *,            /* minor_status */
   444         gss_ctx_id_t *,         /* context_handle */
   457         gss_ctx_id_t *,         /* context_handle */
   445         gss_buffer_t            /* output_token */
   458         gss_buffer_t            /* output_token */
   446 );
   459 );
   447 
   460 
   448 GSS_DLLIMP OM_uint32 gss_context_time(
   461 GSS_DLLIMP OM_uint32 gss_context_time(
   449         OM_uint32 *,            /* minor_status */
   462         OM_uint32 *,            /* minor_status */
   450         gss_ctx_id_t,           /* context_handle */
   463         gss_const_ctx_id_t,     /* context_handle */
   451         OM_uint32 *             /* time_rec */
   464         OM_uint32 *             /* time_rec */
   452 );
   465 );
   453 
   466 
   454 /* New for V2 */
   467 /* New for V2 */
   455 GSS_DLLIMP OM_uint32 gss_get_mic(
   468 GSS_DLLIMP OM_uint32 gss_get_mic(
   456         OM_uint32 *,            /* minor_status */
   469         OM_uint32 *,            /* minor_status */
   457         gss_ctx_id_t,           /* context_handle */
   470         gss_const_ctx_id_t,     /* context_handle */
   458         gss_qop_t,              /* qop_req */
   471         gss_qop_t,              /* qop_req */
   459         gss_buffer_t,           /* message_buffer */
   472         const gss_buffer_t,     /* message_buffer */
   460         gss_buffer_t            /* message_token */
   473         gss_buffer_t            /* message_token */
   461 );
   474 );
   462 
   475 
   463 /* New for V2 */
   476 /* New for V2 */
   464 GSS_DLLIMP OM_uint32 gss_verify_mic(
   477 GSS_DLLIMP OM_uint32 gss_verify_mic(
   465         OM_uint32 *,            /* minor_status */
   478         OM_uint32 *,            /* minor_status */
   466         gss_ctx_id_t,           /* context_handle */
   479         gss_const_ctx_id_t,     /* context_handle */
   467         gss_buffer_t,           /* message_buffer */
   480         const gss_buffer_t,     /* message_buffer */
   468         gss_buffer_t,           /* message_token */
   481         const gss_buffer_t,     /* message_token */
   469         gss_qop_t *             /* qop_state */
   482         gss_qop_t *             /* qop_state */
   470 );
   483 );
   471 
   484 
   472 /* New for V2 */
   485 /* New for V2 */
   473 GSS_DLLIMP OM_uint32 gss_wrap(
   486 GSS_DLLIMP OM_uint32 gss_wrap(
   474         OM_uint32 *,            /* minor_status */
   487         OM_uint32 *,            /* minor_status */
   475         gss_ctx_id_t,           /* context_handle */
   488         gss_const_ctx_id_t,     /* context_handle */
   476         int,                    /* conf_req_flag */
   489         int,                    /* conf_req_flag */
   477         gss_qop_t,              /* qop_req */
   490         gss_qop_t,              /* qop_req */
   478         gss_buffer_t,           /* input_message_buffer */
   491         const gss_buffer_t,     /* input_message_buffer */
   479         int *,                  /* conf_state */
   492         int *,                  /* conf_state */
   480         gss_buffer_t            /* output_message_buffer */
   493         gss_buffer_t            /* output_message_buffer */
   481 );
   494 );
   482 
   495 
   483 /* New for V2 */
   496 /* New for V2 */
   484 GSS_DLLIMP OM_uint32 gss_unwrap(
   497 GSS_DLLIMP OM_uint32 gss_unwrap(
   485         OM_uint32 *,            /* minor_status */
   498         OM_uint32 *,            /* minor_status */
   486         gss_ctx_id_t,           /* context_handle */
   499         gss_const_ctx_id_t,     /* context_handle */
   487         gss_buffer_t,           /* input_message_buffer */
   500         const gss_buffer_t,     /* input_message_buffer */
   488         gss_buffer_t,           /* output_message_buffer */
   501         gss_buffer_t,           /* output_message_buffer */
   489         int *,                  /* conf_state */
   502         int *,                  /* conf_state */
   490         gss_qop_t *             /* qop_state */
   503         gss_qop_t *             /* qop_state */
   491 );
   504 );
   492 
   505 
   493 GSS_DLLIMP OM_uint32 gss_display_status(
   506 GSS_DLLIMP OM_uint32 gss_display_status(
   494         OM_uint32 *,            /* minor_status */
   507         OM_uint32 *,            /* minor_status */
   495         OM_uint32,              /* status_value */
   508         OM_uint32,              /* status_value */
   496         int,                    /* status_type */
   509         int,                    /* status_type */
   497         gss_OID,                /* mech_type (used to be const) */
   510         const gss_OID,          /* mech_type (used to be const) */
   498         OM_uint32 *,            /* message_context */
   511         OM_uint32 *,            /* message_context */
   499         gss_buffer_t            /* status_string */
   512         gss_buffer_t            /* status_string */
   500 );
   513 );
   501 
   514 
   502 GSS_DLLIMP OM_uint32 gss_indicate_mechs(
   515 GSS_DLLIMP OM_uint32 gss_indicate_mechs(
   504         gss_OID_set *           /* mech_set */
   517         gss_OID_set *           /* mech_set */
   505 );
   518 );
   506 
   519 
   507 GSS_DLLIMP OM_uint32 gss_compare_name(
   520 GSS_DLLIMP OM_uint32 gss_compare_name(
   508         OM_uint32 *,            /* minor_status */
   521         OM_uint32 *,            /* minor_status */
   509         gss_name_t,             /* name1 */
   522         gss_const_name_t,       /* name1 */
   510         gss_name_t,             /* name2 */
   523         gss_const_name_t,       /* name2 */
   511         int *                   /* name_equal */
   524         int *                   /* name_equal */
   512 );
   525 );
   513 
   526 
   514 GSS_DLLIMP OM_uint32 gss_display_name(
   527 GSS_DLLIMP OM_uint32 gss_display_name(
   515         OM_uint32 *,            /* minor_status */
   528         OM_uint32 *,            /* minor_status */
   516         gss_name_t,             /* input_name */
   529         gss_const_name_t,       /* input_name */
   517         gss_buffer_t,           /* output_name_buffer */
   530         gss_buffer_t,           /* output_name_buffer */
   518         gss_OID *               /* output_name_type */
   531         gss_OID *               /* output_name_type */
   519 );
   532 );
   520 
   533 
   521 GSS_DLLIMP OM_uint32 gss_import_name(
   534 GSS_DLLIMP OM_uint32 gss_import_name(
   522         OM_uint32 *,            /* minor_status */
   535         OM_uint32 *,            /* minor_status */
   523         gss_buffer_t,           /* input_name_buffer */
   536         const gss_buffer_t,     /* input_name_buffer */
   524         gss_OID,                /* input_name_type(used to be const) */
   537         const gss_OID,          /* input_name_type(used to be const) */
   525         gss_name_t *            /* output_name */
   538         gss_name_t *            /* output_name */
   526 );
   539 );
   527 
   540 
   528 GSS_DLLIMP OM_uint32 gss_release_name(
   541 GSS_DLLIMP OM_uint32 gss_release_name(
   529         OM_uint32 *,            /* minor_status */
   542         OM_uint32 *,            /* minor_status */
   540         gss_OID_set *           /* set */
   553         gss_OID_set *           /* set */
   541 );
   554 );
   542 
   555 
   543 GSS_DLLIMP OM_uint32 gss_inquire_cred(
   556 GSS_DLLIMP OM_uint32 gss_inquire_cred(
   544         OM_uint32 *,            /* minor_status */
   557         OM_uint32 *,            /* minor_status */
   545         gss_cred_id_t,          /* cred_handle */
   558         gss_const_cred_id_t,    /* cred_handle */
   546         gss_name_t *,           /* name */
   559         gss_name_t *,           /* name */
   547         OM_uint32 *,            /* lifetime */
   560         OM_uint32 *,            /* lifetime */
   548         gss_cred_usage_t *,     /* cred_usage */
   561         gss_cred_usage_t *,     /* cred_usage */
   549         gss_OID_set *           /* mechanisms */
   562         gss_OID_set *           /* mechanisms */
   550 );
   563 );
   551 
   564 
   552 /* Last argument new for V2 */
   565 /* Last argument new for V2 */
   553 GSS_DLLIMP OM_uint32 gss_inquire_context(
   566 GSS_DLLIMP OM_uint32 gss_inquire_context(
   554         OM_uint32 *,            /* minor_status */
   567         OM_uint32 *,            /* minor_status */
   555         gss_ctx_id_t,           /* context_handle */
   568         gss_const_ctx_id_t,     /* context_handle */
   556         gss_name_t *,           /* src_name */
   569         gss_name_t *,           /* src_name */
   557         gss_name_t *,           /* targ_name */
   570         gss_name_t *,           /* targ_name */
   558         OM_uint32 *,            /* lifetime_rec */
   571         OM_uint32 *,            /* lifetime_rec */
   559         gss_OID *,              /* mech_type */
   572         gss_OID *,              /* mech_type */
   560         OM_uint32 *,            /* ctx_flags */
   573         OM_uint32 *,            /* ctx_flags */
   563 );
   576 );
   564 
   577 
   565 /* New for V2 */
   578 /* New for V2 */
   566 GSS_DLLIMP OM_uint32 gss_wrap_size_limit(
   579 GSS_DLLIMP OM_uint32 gss_wrap_size_limit(
   567         OM_uint32 *,            /* minor_status */
   580         OM_uint32 *,            /* minor_status */
   568         gss_ctx_id_t,           /* context_handle */
   581         gss_const_ctx_id_t,     /* context_handle */
   569         int,                    /* conf_req_flag */
   582         int,                    /* conf_req_flag */
   570         gss_qop_t,              /* qop_req */
   583         gss_qop_t,              /* qop_req */
   571         OM_uint32,              /* req_output_size */
   584         OM_uint32,              /* req_output_size */
   572         OM_uint32 *             /* max_input_size */
   585         OM_uint32 *             /* max_input_size */
   573 );
   586 );
   574 
   587 
   575 /* New for V2 */
   588 /* New for V2 */
   576 GSS_DLLIMP OM_uint32 gss_add_cred(
   589 GSS_DLLIMP OM_uint32 gss_add_cred(
   577         OM_uint32 *,            /* minor_status */
   590         OM_uint32 *,            /* minor_status */
   578         gss_cred_id_t,          /* input_cred_handle */
   591         gss_const_cred_id_t,    /* input_cred_handle */
   579         gss_name_t,             /* desired_name */
   592         gss_const_name_t,       /* desired_name */
   580         gss_OID,                /* desired_mech */
   593         const gss_OID,          /* desired_mech */
   581         gss_cred_usage_t,       /* cred_usage */
   594         gss_cred_usage_t,       /* cred_usage */
   582         OM_uint32,              /* initiator_time_req */
   595         OM_uint32,              /* initiator_time_req */
   583         OM_uint32,              /* acceptor_time_req */
   596         OM_uint32,              /* acceptor_time_req */
   584         gss_cred_id_t *,        /* output_cred_handle */
   597         gss_cred_id_t *,        /* output_cred_handle */
   585         gss_OID_set *,          /* actual_mechs */
   598         gss_OID_set *,          /* actual_mechs */
   588 );
   601 );
   589 
   602 
   590 /* New for V2 */
   603 /* New for V2 */
   591 GSS_DLLIMP OM_uint32 gss_inquire_cred_by_mech(
   604 GSS_DLLIMP OM_uint32 gss_inquire_cred_by_mech(
   592         OM_uint32 *,            /* minor_status */
   605         OM_uint32 *,            /* minor_status */
   593         gss_cred_id_t,          /* cred_handle */
   606         gss_const_cred_id_t,    /* cred_handle */
   594         gss_OID,                /* mech_type */
   607         const gss_OID,          /* mech_type */
   595         gss_name_t *,           /* name */
   608         gss_name_t *,           /* name */
   596         OM_uint32 *,            /* initiator_lifetime */
   609         OM_uint32 *,            /* initiator_lifetime */
   597         OM_uint32 *,            /* acceptor_lifetime */
   610         OM_uint32 *,            /* acceptor_lifetime */
   598         gss_cred_usage_t *      /* cred_usage */
   611         gss_cred_usage_t *      /* cred_usage */
   599 );
   612 );
   606 );
   619 );
   607 
   620 
   608 /* New for V2 */
   621 /* New for V2 */
   609 GSS_DLLIMP OM_uint32 gss_import_sec_context(
   622 GSS_DLLIMP OM_uint32 gss_import_sec_context(
   610         OM_uint32 *,            /* minor_status */
   623         OM_uint32 *,            /* minor_status */
   611         gss_buffer_t,           /* interprocess_token */
   624         const gss_buffer_t,     /* interprocess_token */
   612         gss_ctx_id_t *          /* context_handle */
   625         gss_ctx_id_t *          /* context_handle */
   613 );
   626 );
   614 
   627 
   615 /* New for V2 */
   628 /* New for V2 */
   616 GSS_DLLIMP OM_uint32 gss_release_oid(
   629 GSS_DLLIMP OM_uint32 gss_release_oid(
   625 );
   638 );
   626 
   639 
   627 /* New for V2 */
   640 /* New for V2 */
   628 GSS_DLLIMP OM_uint32 gss_add_oid_set_member(
   641 GSS_DLLIMP OM_uint32 gss_add_oid_set_member(
   629         OM_uint32 *,            /* minor_status */
   642         OM_uint32 *,            /* minor_status */
   630         gss_OID,                /* member_oid */
   643         const gss_OID,          /* member_oid */
   631         gss_OID_set *           /* oid_set */
   644         gss_OID_set *           /* oid_set */
   632 );
   645 );
   633 
   646 
   634 /* New for V2 */
   647 /* New for V2 */
   635 GSS_DLLIMP OM_uint32 gss_test_oid_set_member(
   648 GSS_DLLIMP OM_uint32 gss_test_oid_set_member(
   636         OM_uint32 *,            /* minor_status */
   649         OM_uint32 *,            /* minor_status */
   637         gss_OID,                /* member */
   650         const gss_OID,          /* member */
   638         gss_OID_set,            /* set */
   651         const gss_OID_set,      /* set */
   639         int *                   /* present */
   652         int *                   /* present */
   640 );
   653 );
   641 
   654 
   642 /* New for V2 */
   655 /* New for V2 */
   643 GSS_DLLIMP OM_uint32 gss_str_to_oid(
   656 GSS_DLLIMP OM_uint32 gss_str_to_oid(
   644         OM_uint32 *,            /* minor_status */
   657         OM_uint32 *,            /* minor_status */
   645         gss_buffer_t,           /* oid_str */
   658         const gss_buffer_t,     /* oid_str */
   646         gss_OID *               /* oid */
   659         gss_OID *               /* oid */
   647 );
   660 );
   648 
   661 
   649 /* New for V2 */
   662 /* New for V2 */
   650 GSS_DLLIMP OM_uint32 gss_oid_to_str(
   663 GSS_DLLIMP OM_uint32 gss_oid_to_str(
   654 );
   667 );
   655 
   668 
   656 /* New for V2 */
   669 /* New for V2 */
   657 GSS_DLLIMP OM_uint32 gss_inquire_names_for_mech(
   670 GSS_DLLIMP OM_uint32 gss_inquire_names_for_mech(
   658         OM_uint32 *,            /* minor_status */
   671         OM_uint32 *,            /* minor_status */
   659         gss_OID,                /* mechanism */
   672         const gss_OID,          /* mechanism */
   660         gss_OID_set *           /* name_types */
   673         gss_OID_set *           /* name_types */
   661 );
   674 );
   662 
   675 
   663 /* New for V2 */
   676 /* New for V2 */
   664 GSS_DLLIMP OM_uint32 gss_export_name(
   677 GSS_DLLIMP OM_uint32 gss_export_name(
   665         OM_uint32  *,           /* minor_status */
   678         OM_uint32  *,           /* minor_status */
   666         const gss_name_t,       /* input_name */
   679         gss_const_name_t,       /* input_name */
   667         gss_buffer_t            /* exported_name */
   680         gss_buffer_t            /* exported_name */
   668 );
   681 );
   669 
   682 
   670 /* New for V2 */
   683 /* New for V2 */
   671 GSS_DLLIMP OM_uint32 gss_duplicate_name(
   684 GSS_DLLIMP OM_uint32 gss_duplicate_name(
   672         OM_uint32  *,           /* minor_status */
   685         OM_uint32  *,           /* minor_status */
   673         const gss_name_t,       /* input_name */
   686         gss_const_name_t,       /* input_name */
   674         gss_name_t *            /* dest_name */
   687         gss_name_t *            /* dest_name */
   675 );
   688 );
   676 
   689 
   677 /* New for V2 */
   690 /* New for V2 */
   678 GSS_DLLIMP OM_uint32 gss_canonicalize_name(
   691 GSS_DLLIMP OM_uint32 gss_canonicalize_name(
   679         OM_uint32  *,           /* minor_status */
   692         OM_uint32  *,           /* minor_status */
   680         const gss_name_t,       /* input_name */
   693         gss_const_name_t,       /* input_name */
   681         const gss_OID,          /* mech_type */
   694         const gss_OID,          /* mech_type */
   682         gss_name_t *            /* output_name */
   695         gss_name_t *            /* output_name */
   683 );
   696 );
   684 
   697 
   685 #if TARGET_OS_MAC
   698 #if TARGET_OS_MAC