The SecPkgInfo structure provides general information about a security package, such as its name and its capabilities.
typedef struct _SecPkgInfo {
ULONG fCapabilities; // capability of bit mask
USHORT wVersion; // version of driver
USHORT wRPCID; // identifier for RPC run time
ULONG cbMaxToken; // size of authentication token
SEC_CHAR * Name; // text name
SEC_CHAR * Comment; // comment
} SecPkgInfo, * PSecPkgInfo;
Value | Meaning |
---|---|
SECPKG_FLAG_INTEGRITY | Verify that all messages exchanged have not been tampered with or exchanged out of sequence. |
SECPKG_FLAG_PRIVACY | All messages are tamper proof and are not passed in cleartext. Reserved for future use. |
SECPKG_FLAG_TOKEN_ONLY | The package is interested only in the security-token portion of messages, and will ignore any other buffers. This is a performance-related issue. |
SECPKG_FLAG_DATAGRAM | Supports datagram-style authentication. For more information, see Context Semantics. |
SECPKG_FLAG_CONNECTION | Supports connection-oriented style authentication. For more information, see Context Semantics. |
SECPKG_FLAG_MULTI_REQUIRED | Multiple legs are required for authentication. |
SECPKG_FLAG_CLIENT_ONLY | Server authentication support is not provided. |
SECPKG_FLAG_EXTENDED_ERROR | Supports extended error handling. For more information, see Extended Error Information. |
SECPKG_FLAG_IMPERSONATION | Supports Win32 impersonation in server contexts. |
SECPKG_FLAG_ACCEPT_WIN32_NAME | Understands Win32 principal and target names. |
SECPKG_FLAG_STREAM | Supports stream semantics. For more information, see Context Semantics. |
EnumerateSecurityPackages, QuerySecurityPackageInfo