类 Win32::SSPI::SSPIResult

接收来自 SSPI 函数的返回值并解释其值。

常量

SEC_E_INSUFFICIENT_MEMORY

这些通常由 InitializeSecurityContext 返回

SEC_E_INTERNAL_ERROR
SEC_E_INVALID_HANDLE
SEC_E_INVALID_TOKEN
SEC_E_LOGON_DENIED
SEC_E_NOT_OWNER

这些通常由 AcquireCredentialsHandle 返回

SEC_E_NO_AUTHENTICATING_AUTHORITY
SEC_E_NO_CREDENTIALS
SEC_E_OK

良好结果

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

属性

value[R]

公共类方法

new(value) 点击切换源代码
# 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

公共实例方法

==(other) 点击切换源代码
# 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?() 点击切换源代码
# File win32/lib/win32/sspi.rb, line 200
def ok?
  @value == SEC_I_CONTINUE_NEEDED || @value == SEC_E_OK
end
to_s() 点击切换源代码
# File win32/lib/win32/sspi.rb, line 196
def to_s
  @@map[@value].to_s
end