def display_name
raise GssApiError.new(), "No context accepted yet. Call #{self.class.name}#accept_context(in_token) first" if @client.nil?
output_name = GSSAPI::LibGSSAPI::ManagedGssBufferDesc.new
min_stat = FFI::MemoryPointer.new :OM_uint32
maj_stat = LibGSSAPI.gss_display_name(min_stat,
@client.get_pointer(0),
output_name.pointer,
nil)
if maj_stat != GSSAPI::LibGSSAPI::GSS_S_COMPLETE
raise GssApiError.new(maj_stat, min_stat),
"gss_display_name did not return GSS_S_COMPLETE but #{ maj_stat }"
end
output_name.value
end