gss_OID_set *elements_stored,
gss_cred_usage_t *cred_usage_stored)
{
- GSSEAP_NOT_IMPLEMENTED;
+ if (elements_stored != NULL)
+ *elements_stored = GSS_C_NO_OID_SET;
+ if (cred_usage_stored != NULL)
+ *cred_usage_stored = input_usage;
+
+ if (input_cred_handle == GSS_C_NO_CREDENTIAL)
+ return GSS_S_CALL_INACCESSIBLE_READ | GSS_S_NO_CRED;
+
+#ifdef GSSEAP_ENABLE_REAUTH
+ if (input_cred_handle->krbCred != GSS_C_NO_CREDENTIAL) {
+ return gssStoreCred(minor,
+ input_cred_handle->krbCred,
+ input_usage,
+ gss_mech_krb5,
+ overwrite_cred,
+ default_cred,
+ elements_stored,
+ cred_usage_stored);
+ }
+#endif
+
+ *minor = 0;
+ return GSS_S_UNAVAILABLE;
}