X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=inquire_cred_by_oid.c;h=651da45b0c4db09ee94297f01050f08363c86956;hb=51e017c40a9555336efe84edf4cab2755e2b8d2a;hp=e6d297282007f4e89ec958b4debbf954aad44437;hpb=cb38a7e982f3eaf68065af4c18d05e48c493b67d;p=mech_eap.orig diff --git a/inquire_cred_by_oid.c b/inquire_cred_by_oid.c index e6d2972..651da45 100644 --- a/inquire_cred_by_oid.c +++ b/inquire_cred_by_oid.c @@ -32,11 +32,29 @@ #include "gssapiP_eap.h" +static struct { + gss_OID_desc oid; + OM_uint32 (*inquire)(OM_uint32 *, const gss_cred_id_t, + const gss_OID, gss_buffer_set_t *); +} inquireCredOps[] = { +}; + OM_uint32 gss_inquire_cred_by_oid(OM_uint32 *minor, const gss_cred_id_t cred_handle, const gss_OID desired_object, gss_buffer_set_t *data_set) { - GSSEAP_NOT_IMPLEMENTED; + OM_uint32 major = GSS_S_UNAVAILABLE; + int i; + + for (i = 0; i < sizeof(inquireCredOps) / sizeof(inquireCredOps[0]); i++) { + if (oidEqual(&inquireCredOps[i].oid, desired_object)) { + major = (*inquireCredOps[i].inquire)(minor, cred_handle, + desired_object, data_set); + break; + } + } + + return major; }