cc [flag ...] file... -lgss [library ...] #include <gssapi/gssapi.h>
OM_uint32 gss_display_name(OM_uint32 *minor_status, const gss_name_t input_name, gss_buffer_t output_name_buffer, gss_OID *output_name_type);
The gss_display_name() function allows an application to obtain a textual representation of an opaque internal-form name for display purposes.
If input_name denotes an anonymous principal, the GSS-API returns the gss_OID value GSS_C_NT_ANONYMOUS as the output_name_type, and a textual name that is syntactically distinct from all valid supported printable names in output_name_buffer.
If input_name was created by a call to gss_import_name(3GSS), specifying GSS_C_NO_OID as the name-type, the GSS-API returns GSS_C_NO_OID by means of the output_name_type parameter.
The parameter descriptions for gss_display_name() follow:
minor_status Mechanism-specific status code.
input_name Name in internal form.
output_name_buffer Buffer to receive textual name string. The application must free storage associated with this name after use with a call to gss_release_buffer(3GSS).
output_name_type The type of the returned name. The returned gss_OID will be a pointer into static storage and should be treated as read-only by the caller. In particular, the application should not attempt to free it. Specify NULL if this parameter is not required.
The gss_display_name() function may return the following status codes:
GSS_S_COMPLETE Successful completion.
GSS_S_BAD_NAME The input_name was ill-formed.
GSS_S_FAILURE The underlying mechanism detected an error for which no specific GSS status code is defined. The mechanism-specific status code reported by means of the minor_status parameter details the error condition.
See attributes(5) for descriptions of the following attributes:
|ATTRIBUTE TYPE||ATTRIBUTE VALUE|
gss_import_name(3GSS), gss_release_buffer(3GSS), attributes(5)
Solaris Security for Developers Guide