|
|
/*************************************************************************
* * wsxmgr.h * * Data to manage Window Station extensions. * * Copyright Microsoft Corporation, 1998 * * *************************************************************************/
/*=============================================================================
== ICA Server supplied procs =============================================================================*/
/*
* Callback workers */
typedef VOID (WINAPI * PCALLBACK_PRIMARY)(PVOID, PVOID, PVOID); typedef VOID (WINAPI * PCALLBACK_COMPLETION)(PVOID);
/*
* ICASRV Exported Functions */
typedef VOID (WINAPI * PICASRV_NOTIFYSYSTEMEVENT)(ULONG); typedef VOID (WINAPI * PICASRV_SENDWINSTATIONMESSAGE)(ULONG, PWCHAR, PWCHAR, ULONG); typedef VOID (WINAPI * PICASRV_GETCONTEXTFORLOGONID)(ULONG, PVOID *); typedef VOID (WINAPI * PICASRV_WINSTATIONENUMCALLBACK)(PCALLBACK_PRIMARY, PCALLBACK_COMPLETION, PVOID);
/*
* Typedefs and structures */ typedef struct _ICASRVPROCADDR {
ULONG cbProcAddr;
PICASRV_NOTIFYSYSTEMEVENT pNotifySystemEvent; PICASRV_SENDWINSTATIONMESSAGE pSendWinStationMessage; PICASRV_GETCONTEXTFORLOGONID pGetContextForLogonId; PICASRV_WINSTATIONENUMCALLBACK pWinStationEnumCallBack;
} ICASRVPROCADDR, * PICASRVPROCADDR;
/*
* Exported function prototypes */
// Initialization
typedef BOOL (WINAPI * PWSX_INITIALIZE)(PICASRVPROCADDR); typedef NTSTATUS (WINAPI * PWSX_WINSTATIONINITIALIZE)(PVOID *); typedef NTSTATUS (WINAPI * PWSX_WINSTATIONREINITIALIZE)(PVOID, PVOID); typedef NTSTATUS (WINAPI * PWSX_WINSTATIONRUNDOWN)(PVOID);
// Client Drive Mapping Extensions
typedef NTSTATUS (WINAPI * PWSX_CDMCONNECT)(PVOID, ULONG, HANDLE); typedef NTSTATUS (WINAPI * PWSX_CDMDISCONNECT)(PVOID, ULONG, HANDLE);
// License Extensions
typedef NTSTATUS (WINAPI * PWSX_VERIFYCLIENTLICENSE)(PVOID, SDCLASS); typedef NTSTATUS (WINAPI * PWSX_GETLICENSE)(PVOID, HANDLE, ULONG, BOOL); typedef NTSTATUS (WINAPI * PWSX_QUERYLICENSE)(PVOID, ULONG); typedef DWORD (WINAPI * PWSX_WINSTATIONGENERATELICENSE)(PWCHAR, ULONG, PCHAR, ULONG); typedef DWORD (WINAPI * PWSX_WINSTATIONINSTALLLICENSE)(PCHAR, ULONG); typedef DWORD (WINAPI * PWSX_WINSTATIONENUMERATELICENSES)(PULONG, PULONG, PCHAR, PULONG); typedef DWORD (WINAPI * PWSX_WINSTATIONACTIVATELICENSE)(PCHAR, ULONG, PWCHAR, ULONG); typedef DWORD (WINAPI * PWSX_WINSTATIONREMOVELICENSE)(PCHAR, ULONG); typedef DWORD (WINAPI * PWSX_WINSTATIONSETPOOLCOUNT)(PCHAR, ULONG); typedef DWORD (WINAPI * PWSX_WINSTATIONQUERYUPDATEREQUIRED)(PULONG); typedef NTSTATUS (WINAPI * PWSX_WINSTATIONLOGONANNOYANCE)(ULONG); typedef DWORD (WINAPI * PWSX_WINSTATIONANNOYANCETHREAD)(PVOID);
// Context
typedef NTSTATUS (WINAPI * PWSX_DUPLICATECONTEXT)(PVOID, PVOID *); typedef NTSTATUS (WINAPI * PWSX_COPYCONTEXT)(PVOID, PVOID); typedef NTSTATUS (WINAPI * PWSX_CLEARCONTEXT)(PVOID);
// Other
typedef NTSTATUS (WINAPI * PWSX_VIRTUALCHANNELSECURITY)(PVOID, HANDLE, PUSERCONFIG); typedef NTSTATUS (WINAPI * PWSX_ICASTACKIOCONTROL)(PVOID, HANDLE, HANDLE, ULONG, PVOID, ULONG, PVOID, ULONG, PULONG); typedef NTSTATUS (WINAPI * PWSX_INITIALIZECLIENTDATA)(PVOID, HANDLE, HANDLE, HANDLE, BYTE *, ULONG, PUSERCONFIG, PUSHORT, PUSHORT, PUSHORT, WINSTATIONDOCONNECTMSG *); typedef NTSTATUS (WINAPI * PWSX_INITIALIZEUSERCONFIG)(PVOID, HANDLE, HANDLE, PUSERCONFIG, PUSHORT, PUSHORT, PUSHORT); typedef NTSTATUS (WINAPI * PWSX_CONVERTPUBLISHEDAPP)(PVOID, PUSERCONFIG); typedef NTSTATUS (WINAPI * PWSX_CHECKFORAPPLICATIONNAME)(PVOID, PWCHAR, ULONG, PWCHAR, ULONG, PWCHAR, PULONG, ULONG, PCHAR, PBOOLEAN, PBOOLEAN ); typedef NTSTATUS (WINAPI * PWSX_GETAPPLICATIONINFO)(PVOID, PBOOLEAN, PBOOLEAN); typedef NTSTATUS (WINAPI * PWSX_BROKENCONNECTION)(PVOID, HANDLE, PICA_BROKEN_CONNECTION); typedef NTSTATUS (WINAPI * PWSX_LOGONNOTIFY)(PVOID, ULONG, HANDLE, PWCHAR, PWCHAR); typedef NTSTATUS (WINAPI * PWSX_SETERRORINFO)(PVOID, UINT32, BOOL); typedef NTSTATUS (WINAPI * PWSX_SENDAUTORECONNECTSTATUS)(PVOID, UINT32, BOOL); // added for long UserName, Password support
typedef NTSTATUS (WINAPI * PWSX_ESCAPE) (PVOID, INFO_TYPE, PVOID, ULONG, PVOID, ULONG, PULONG);
|