Add naming extension SPIs

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
This commit is contained in:
Luke Howard
2011-01-03 14:45:07 +11:00
committed by Love Hornquist Astrand
parent 6ffdb884e8
commit 2b2ab30f53
3 changed files with 145 additions and 0 deletions

View File

@@ -989,6 +989,73 @@ gss_display_mech_attr(OM_uint32 * minor_status,
gss_buffer_t short_desc, gss_buffer_t short_desc,
gss_buffer_t long_desc); gss_buffer_t long_desc);
/*
* Naming extensions
*/
GSSAPI_LIB_FUNCTION OM_uint32 GSSAPI_LIB_CALL gss_display_name_ext (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
gss_OID, /* display_as_name_type */
gss_buffer_t /* display_name */
);
GSSAPI_LIB_FUNCTION OM_uint32 GSSAPI_LIB_CALL gss_inquire_name (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
int *, /* name_is_MN */
gss_OID *, /* MN_mech */
gss_buffer_set_t * /* attrs */
);
GSSAPI_LIB_FUNCTION OM_uint32 GSSAPI_LIB_CALL gss_get_name_attribute (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
gss_buffer_t, /* attr */
int *, /* authenticated */
int *, /* complete */
gss_buffer_t, /* value */
gss_buffer_t, /* display_value */
int * /* more */
);
GSSAPI_LIB_FUNCTION OM_uint32 GSSAPI_LIB_CALL gss_set_name_attribute (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
int, /* complete */
gss_buffer_t, /* attr */
gss_buffer_t /* value */
);
GSSAPI_LIB_FUNCTION OM_uint32 GSSAPI_LIB_CALL gss_delete_name_attribute (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
gss_buffer_t /* attr */
);
GSSAPI_LIB_FUNCTION OM_uint32 GSSAPI_LIB_CALL gss_export_name_composite (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
gss_buffer_t /* exp_composite_name */
);
typedef struct gss_any *gss_any_t;
GSSAPI_LIB_FUNCTION OM_uint32 GSSAPI_LIB_CALL gss_map_name_to_any (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
int, /* authenticated */
gss_buffer_t, /* type_id */
gss_any_t * /* output */
);
GSSAPI_LIB_FUNCTION OM_uint32 GSSAPI_LIB_CALL gss_release_any_name_mapping (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
gss_buffer_t, /* type_id */
gss_any_t * /* input */
);
/* /*
* *

View File

@@ -393,6 +393,68 @@ _gss_cred_label_get_t(OM_uint32 * /* minor_status */,
const char * /* label */, const char * /* label */,
gss_buffer_t /* value */); gss_buffer_t /* value */);
typedef OM_uint32 GSSAPI_CALLCONV _gss_display_name_ext_t (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
gss_OID, /* display_as_name_type */
gss_buffer_t /* display_name */
);
typedef OM_uint32 GSSAPI_CALLCONV _gss_inquire_name_t (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
int *, /* name_is_MN */
gss_OID *, /* MN_mech */
gss_buffer_set_t * /* attrs */
);
typedef OM_uint32 GSSAPI_CALLCONV _gss_get_name_attribute_t (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
gss_buffer_t, /* attr */
int *, /* authenticated */
int *, /* complete */
gss_buffer_t, /* value */
gss_buffer_t, /* display_value */
int * /* more */
);
typedef OM_uint32 GSSAPI_CALLCONV _gss_set_name_attribute_t (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
int, /* complete */
gss_buffer_t, /* attr */
gss_buffer_t /* value */
);
typedef OM_uint32 GSSAPI_CALLCONV _gss_delete_name_attribute_t (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
gss_buffer_t /* attr */
);
typedef OM_uint32 GSSAPI_CALLCONV _gss_export_name_composite_t (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
gss_buffer_t /* exp_composite_name */
);
typedef OM_uint32 GSSAPI_CALLCONV _gss_map_name_to_any_t (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
int, /* authenticated */
gss_buffer_t, /* type_id */
gss_any_t * /* output */
);
typedef OM_uint32 GSSAPI_CALLCONV _gss_release_any_name_mapping_t (
OM_uint32 *, /* minor_status */
gss_name_t, /* name */
gss_buffer_t, /* type_id */
gss_any_t * /* input */
);
typedef struct gss_mo_desc_struct gss_mo_desc; typedef struct gss_mo_desc_struct gss_mo_desc;
struct gss_mo_desc_struct { struct gss_mo_desc_struct {
@@ -467,6 +529,14 @@ typedef struct gssapi_mech_interface_desc {
_gss_cred_label_set_t *gm_cred_label_set; _gss_cred_label_set_t *gm_cred_label_set;
gss_mo_desc *gm_mo; gss_mo_desc *gm_mo;
size_t gm_mo_num; size_t gm_mo_num;
_gss_display_name_ext_t *gm_display_name_ext;
_gss_inquire_name_t *gm_inquire_name;
_gss_get_name_attribute_t *gm_get_name_attribute;
_gss_set_name_attribute_t *gm_set_name_attribute;
_gss_delete_name_attribute_t *gm_delete_name_attribute;
_gss_export_name_composite_t *gm_export_name_composite;
_gss_map_name_to_any_t *gm_map_name_to_any;
_gss_release_any_name_mapping_t *gm_release_any_name_mapping;
} gssapi_mech_interface_desc, *gssapi_mech_interface; } gssapi_mech_interface_desc, *gssapi_mech_interface;
gssapi_mech_interface gssapi_mech_interface

View File

@@ -341,6 +341,14 @@ _gss_load_mech(void)
OPTSYM(wrap_iov); OPTSYM(wrap_iov);
OPTSYM(unwrap_iov); OPTSYM(unwrap_iov);
OPTSYM(wrap_iov_length); OPTSYM(wrap_iov_length);
OPTSYM(display_name_ext);
OPTSYM(inquire_name);
OPTSYM(get_name_attribute);
OPTSYM(set_name_attribute);
OPTSYM(delete_name_attribute);
OPTSYM(export_name_composite);
OPTSYM(map_name_to_any);
OPTSYM(release_any_name_mapping);
HEIM_SLIST_INSERT_HEAD(&_gss_mechs, m, gm_link); HEIM_SLIST_INSERT_HEAD(&_gss_mechs, m, gm_link);
continue; continue;