Winlogon and the GINA must communicate initialization information, handle secure attention sequence (SAS) monitoring and notification, and permit logoff and shutdown activities. The state of Winlogon determines which GINA function is called to process any given SAS event. Communications occur in the order shown here.
Note
GINA DLLs are ignored in Windows Vista.
Event
Description
Workstation boot
Winlogon calls the GINA's WlxNegotiate function to notify the GINA about the version of Winlogon in use.
Winlogon calls the GINA's WlxInitialize function to give the GINA the addresses of the support functions, a handle to Winlogon, and to obtain the context information for the GINA (to be used in all future calls to the GINA). Winlogon is in the logged-out state.
No one is logged on
(The GINA monitors devices for SAS events).
The GINA calls Winlogon's WlxSasNotify function when a SAS event has been received.
Winlogon calls the GINA's WlxLoggedOutSAS function, allowing the GINA to process a user's identification and authentication information. When logon is successful, Winlogon is in the logged-on state.
The user is logged on
(The GINA monitors devices for SAS events).
The GINA calls Winlogon's WlxSasNotify function when a SAS event has been received.
Winlogon calls the GINA's WlxLoggedOnSAS function, allowing the GINA to present options to the user who is currently logged on.