Getting Information About Security Packages
When a client begins, it selects a security package for its transactions with a server and then contacts that server. A server selects one or more security packages and waits for a client connection.
For specific information about the SSPI security packages available with a particular SSP, the EnumerateSecurityPackages function can be called to retrieve a SecPkgInfo structure.
To retrieve the output structure, the caller passes to the function the address of a pointer to the type of the return structure. The function allocates memory and returns the data to the caller by assigning the address of the return data buffer to the argument. The SSPI convention is that the function allocates memory for the structure, and the calling application frees that memory using FreeContextBuffer.
Calling the QuerySecurityPackageInfo function retrieves the attributes of a security package. Both server and client can call the QuerySecurityPackageInfo function to get the maximum length of the security token from the cbMaxToken member of the SecPkgInfo structure. For an example, see the call to the QuerySecurityPackageInfo function shown in Using SSPI with a Windows Sockets Server.
For more information on package functions, see Package Management.