12 #define WIN32_NO_STATUS
14 #define COM_NO_WINDOWS_H
21 #include <ndk/rtlfuncs.h>
26 #include <wine/debug.h>
27 WINE_DEFAULT_DEBUG_CHANNEL(msgina
);
36 PWLX_DISPATCH_VERSION_1_3 pWlxFuncs
;
40 ULONG AuthenticationPackage
;
43 BOOL bDontDisplayLastUserName
;
44 BOOL bShutdownWithoutLogon
;
45 BOOL bIgnoreShiftOverride
;
47 ULONG nShutdownAction
;
49 /* Information to be filled during logon */
51 WCHAR DomainName
[256];
55 PLUID pAuthenticationId
;
57 PWLX_MPR_NOTIFY_INFO pMprNotifyInfo
;
60 /* Current logo to display */
62 } GINA_CONTEXT
, *PGINA_CONTEXT
;
64 extern HINSTANCE hDllInstance
;
66 typedef BOOL (*PFGINA_INITIALIZE
)(PGINA_CONTEXT
);
67 typedef BOOL (*PFGINA_DISPLAYSTATUSMESSAGE
)(PGINA_CONTEXT
, HDESK
, DWORD
, PWSTR
, PWSTR
);
68 typedef BOOL (*PFGINA_REMOVESTATUSMESSAGE
)(PGINA_CONTEXT
);
69 typedef VOID (*PFGINA_DISPLAYSASNOTICE
)(PGINA_CONTEXT
);
70 typedef INT (*PFGINA_LOGGEDONSAS
)(PGINA_CONTEXT
, DWORD
);
71 typedef INT (*PFGINA_LOGGEDOUTSAS
)(PGINA_CONTEXT
);
72 typedef INT (*PFGINA_LOCKEDSAS
)(PGINA_CONTEXT
);
73 typedef VOID (*PFGINA_DISPLAYLOCKEDNOTICE
)(PGINA_CONTEXT
);
75 typedef struct _GINA_UI
77 PFGINA_INITIALIZE Initialize
;
78 PFGINA_DISPLAYSTATUSMESSAGE DisplayStatusMessage
;
79 PFGINA_REMOVESTATUSMESSAGE RemoveStatusMessage
;
80 PFGINA_DISPLAYSASNOTICE DisplaySASNotice
;
81 PFGINA_LOGGEDONSAS LoggedOnSAS
;
82 PFGINA_LOGGEDOUTSAS LoggedOutSAS
;
83 PFGINA_LOCKEDSAS LockedSAS
;
84 PFGINA_DISPLAYLOCKEDNOTICE DisplayLockedNotice
;
91 PGINA_CONTEXT pgContext
);
96 ULONG AuthenticationPackage
,
101 PNTSTATUS SubStatus
);
113 IN PGINA_CONTEXT pgContext
,
120 IN OUT PGINA_CONTEXT pgContext
,
124 OUT PNTSTATUS SubStatus
);
128 IN OUT PGINA_CONTEXT pgContext
,
136 GetDefaultShutdownSelState(VOID
);
139 LoadShutdownSelState(VOID
);
142 SaveShutdownSelState(DWORD ShutdownCode
);
145 GetDefaultShutdownOptions(VOID
);
148 GetAllowedShutdownOptions(VOID
);
153 IN DWORD ShutdownOptions
,
154 IN PGINA_CONTEXT pgContext
);
161 #endif /* _MSGINA_H */