gss_buffer_t display_value,
int *more)
{
- GSSEAP_NOT_IMPLEMENTED;
+ OM_uint32 major;
+ gss_buffer_desc prefix, suffix;
+
+ if (name == GSS_C_NO_NAME) {
+ *minor = EINVAL;
+ return GSS_S_CALL_INACCESSIBLE_READ | GSS_S_BAD_NAME;
+ }
+
+ *authenticated = 0;
+ *complete = 0;
+ value->length = 0;
+ value->value = NULL;
+ display_value->length = 0;
+ display_value->value = NULL;
+ *more = -1;
+
+ GSSEAP_MUTEX_LOCK(&name->mutex);
+
+ major = gssEapGetNameAttribute(minor, name, attr,
+ authenticated, complete,
+ value, display_value, more);
+
+ GSSEAP_MUTEX_UNLOCK(&name->mutex);
+
+ return major;
}