class Win32::SSPI::SSPIResult

Takes a return result from an SSPI function and interprets the value.

Constants

SEC_E_INSUFFICIENT_MEMORY

These are generally returned by InitializeSecurityContext

SEC_E_INTERNAL_ERROR
SEC_E_INVALID_HANDLE
SEC_E_INVALID_TOKEN
SEC_E_LOGON_DENIED
SEC_E_NOT_OWNER

These are generally returned by AcquireCredentialsHandle

SEC_E_NO_AUTHENTICATING_AUTHORITY
SEC_E_NO_CREDENTIALS
SEC_E_OK

Good results

SEC_E_SECPKG_NOT_FOUND
SEC_E_TARGET_UNKNOWN
SEC_E_UNKNOWN_CREDENTIALS
SEC_E_UNSUPPORTED_FUNCTION
SEC_E_WRONG_PRINCIPAL
SEC_I_CONTINUE_NEEDED

Attributes

value[R]

Public Class Methods

new(value) click to toggle source
# File win32/lib/win32/sspi.rb, line 189
def initialize(value)
  # convert to unsigned long
  value = [value].pack("L").unpack("L").first
  raise "#{value.to_s(16)} is not a recognized result" unless @@map.has_key? value
  @value = value
end

Public Instance Methods

==(other) click to toggle source
# File win32/lib/win32/sspi.rb, line 204
def ==(other)
  if other.is_a?(SSPIResult)
    @value == other.value
  elsif other.is_a?(Fixnum)
    @value == @@map[other]
  else
    false
  end
end
ok?() click to toggle source
# File win32/lib/win32/sspi.rb, line 200
def ok?
  @value == SEC_I_CONTINUE_NEEDED || @value == SEC_E_OK
end
to_s() click to toggle source
# File win32/lib/win32/sspi.rb, line 196
def to_s
  @@map[@value].to_s
end