Added a little helper to understand the meaning of a SecurityStatus. Don't store the SecurityStatus as an int; we don't need signed semantics and it just complicates comparisons and literals.
This commit is contained in:
@@ -20,49 +20,58 @@ namespace NSspi
|
|||||||
#define SEC_E_NO_CREDENTIALS _HRESULT_TYPEDEF_(0x8009030EL)
|
#define SEC_E_NO_CREDENTIALS _HRESULT_TYPEDEF_(0x8009030EL)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public enum SecurityStatus : int
|
public enum SecurityStatus : uint
|
||||||
{
|
{
|
||||||
// Success / Informational
|
// Success / Informational
|
||||||
OK = 0x00000000,
|
OK = 0x00000000,
|
||||||
ContinueNeeded = unchecked( (int)0x00090312 ),
|
ContinueNeeded = 0x00090312,
|
||||||
CompleteNeeded = unchecked( (int)0x00090313 ),
|
CompleteNeeded = 0x00090313,
|
||||||
CompAndContinue = unchecked( (int)0x00090314 ),
|
CompAndContinue = 0x00090314,
|
||||||
ContextExpired = unchecked( (int)0x00090317 ),
|
ContextExpired = 0x00090317,
|
||||||
CredentialsNeeded = unchecked( (int)0x00090320 ),
|
CredentialsNeeded = 0x00090320,
|
||||||
Renegotiate = unchecked( (int)0x00090321 ),
|
Renegotiate = 0x00090321,
|
||||||
|
|
||||||
// Errors
|
// Errors
|
||||||
OutOfMemory = unchecked( (int)0x80090300 ),
|
OutOfMemory = 0x80090300,
|
||||||
InvalidHandle = unchecked( (int)0x80090301 ),
|
InvalidHandle = 0x80090301,
|
||||||
Unsupported = unchecked( (int)0x80090302 ),
|
Unsupported = 0x80090302,
|
||||||
TargetUnknown = unchecked( (int)0x80090303 ),
|
TargetUnknown = 0x80090303,
|
||||||
InternalError = unchecked( (int)0x80090304 ),
|
InternalError = 0x80090304,
|
||||||
PackageNotFound = unchecked( (int)0x80090305 ),
|
PackageNotFound = 0x80090305,
|
||||||
NotOwner = unchecked( (int)0x80090306 ),
|
NotOwner = 0x80090306,
|
||||||
CannotInstall = unchecked( (int)0x80090307 ),
|
CannotInstall = 0x80090307,
|
||||||
InvalidToken = unchecked( (int)0x80090308 ),
|
InvalidToken = 0x80090308,
|
||||||
CannotPack = unchecked( (int)0x80090309 ),
|
CannotPack = 0x80090309,
|
||||||
QopNotSupported = unchecked( (int)0x8009030A ),
|
QopNotSupported = 0x8009030A,
|
||||||
NoImpersonation = unchecked( (int)0x8009030B ),
|
NoImpersonation = 0x8009030B,
|
||||||
LogonDenied = unchecked( (int)0x8009030C ),
|
LogonDenied = 0x8009030C,
|
||||||
UnknownCredentials = unchecked( (int)0x8009030D ),
|
UnknownCredentials = 0x8009030D,
|
||||||
NoCredentials = unchecked( (int)0x8009030E ),
|
NoCredentials = 0x8009030E,
|
||||||
MessageAltered = unchecked( (int)0x8009030F ),
|
MessageAltered = 0x8009030F,
|
||||||
OutOfSequence = unchecked( (int)0x80090310 ),
|
OutOfSequence = 0x80090310,
|
||||||
NoAuthenticatingAuthority = unchecked( (int)0x80090311 ),
|
NoAuthenticatingAuthority = 0x80090311,
|
||||||
IncompleteMessage = unchecked( (int)0x80090318 ),
|
IncompleteMessage = 0x80090318,
|
||||||
IncompleteCredentials = unchecked( (int)0x80090320 ),
|
IncompleteCredentials = 0x80090320,
|
||||||
BufferNotEnough = unchecked( (int)0x80090321 ),
|
BufferNotEnough = 0x80090321,
|
||||||
WrongPrincipal = unchecked( (int)0x80090322 ),
|
WrongPrincipal = 0x80090322,
|
||||||
TimeSkew = unchecked( (int)0x80090324 ),
|
TimeSkew = 0x80090324,
|
||||||
UntrustedRoot = unchecked( (int)0x80090325 ),
|
UntrustedRoot = 0x80090325,
|
||||||
IllegalMessage = unchecked( (int)0x80090326 ),
|
IllegalMessage = 0x80090326,
|
||||||
CertUnknown = unchecked( (int)0x80090327 ),
|
CertUnknown = 0x80090327,
|
||||||
CertExpired = unchecked( (int)0x80090328 ),
|
CertExpired = 0x80090328,
|
||||||
AlgorithmMismatch = unchecked( (int)0x80090331 ),
|
AlgorithmMismatch = 0x80090331,
|
||||||
SecurityQosFailed = unchecked( (int)0x80090332 ),
|
SecurityQosFailed = 0x80090332,
|
||||||
SmartcardLogonRequired = unchecked( (int)0x8009033E ),
|
SmartcardLogonRequired = 0x8009033E,
|
||||||
UnsupportedPreauth = unchecked( (int)0x80090343 ),
|
UnsupportedPreauth = 0x80090343,
|
||||||
BadBinding = unchecked( (int)0x80090346 )
|
BadBinding = 0x80090346
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static class SecurityStatusExtensions
|
||||||
|
{
|
||||||
|
public static bool IsError( this SecurityStatus status )
|
||||||
|
{
|
||||||
|
return (uint)status > 0x80000000u;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user