You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
149 lines
5.4 KiB
149 lines
5.4 KiB
//---------------------------------------------------------------------------
|
|
//
|
|
// File: TSrvWsx.h
|
|
//
|
|
// Contents: TSrvWsx private include file
|
|
//
|
|
// Copyright: (c) 1992 - 1997, Microsoft Corporation.
|
|
// All Rights Reserved.
|
|
// Information Contained Herein is Proprietary
|
|
// and Confidential.
|
|
//
|
|
// History: 17-JUL-97 BrianTa Created.
|
|
//
|
|
//---------------------------------------------------------------------------
|
|
|
|
#ifndef __TSRVWXS_H_
|
|
#define __TSRVWXS_H_
|
|
|
|
//
|
|
// Defines
|
|
//
|
|
|
|
#define WSX_CONTEXT_CHECKMARK 0x58575354 // "TSWX"
|
|
|
|
|
|
#ifndef _HYDRA_
|
|
#define FILE_DEVICE_ICA 0x0000002e // sdk\inc\devioctl.h
|
|
#endif
|
|
|
|
#if DBG
|
|
|
|
#define PWSXVALIDATE(_x_,_y_) {_x_ __pwsx = _y_;}
|
|
#define ICA_IOCTL_TBL_ITEM(_x_) {_x_, #_x_}
|
|
|
|
#else // DBG
|
|
|
|
#define PWSXVALIDATE(_x_,_y_)
|
|
|
|
#endif // DBG
|
|
|
|
|
|
//
|
|
// Typedefs
|
|
//
|
|
|
|
#if DBG
|
|
|
|
// ICA IOCTL table
|
|
|
|
typedef struct _TSRV_ICA_IOCTL_ENTRY
|
|
{
|
|
ULONG IoControlCode;
|
|
PCHAR pszMessageText;
|
|
|
|
} TSRV_ICA_IOCTL_ENTRY, *PTSRV_ICA_IOCTL_ENTRY;
|
|
|
|
|
|
TSRV_ICA_IOCTL_ENTRY IcaIoctlTBL[] = {
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_SET_TRACE), // 0
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_TRACE), // 1
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_SET_SYSTEM_TRACE), // 2
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_SYSTEM_TRACE), // 3
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_UNBIND_VIRTUAL_CHANNEL), // 4
|
|
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_PUSH), // 10
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_POP), // 11
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CREATE_ENDPOINT), // 12
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CD_CREATE_ENDPOINT), // 13
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_OPEN_ENDPOINT), // 14
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CLOSE_ENDPOINT), // 15
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_ENABLE_DRIVER), // 16
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CONNECTION_WAIT), // 17
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_WAIT_FOR_ICA), // 18
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CONNECTION_QUERY), // 19
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CONNECTION_SEND), // 20
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CONNECTION_REQUEST), // 21
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_QUERY_PARAMS), // 22
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_SET_PARAMS), // 23
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_ENCRYPTION_OFF), // 24
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_ENCRYPTION_PERM), // 25
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CALLBACK_INITIATE), // 26
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_QUERY_LAST_ERROR), // 27
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_WAIT_FOR_STATUS), // 28
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_QUERY_STATUS), // 29
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_REGISTER_HOTKEY), // 30
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CANCEL_IO), // 31
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_QUERY_STATE), // 32
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_SET_STATE), // 33
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_QUERY_LAST_INPUT_TIME), // 34
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_TRACE), // 35
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CALLBACK_COMPLETE), // 36
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CD_CANCEL_IO), // 37
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_QUERY_CLIENT), // 38
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_QUERY_MODULE_DATA), // 39
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_REGISTER_BROKEN), // 40
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_ENABLE_IO), // 41
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_DISABLE_IO), // 42
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_SET_CONNECTED), // 43
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_SET_CLIENT_DATA), // 44
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_QUERY_BUFFER), // 45
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_DISCONNECT), // 46
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_RECONNECT), // 47
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_CONSOLE_CONNECT), // 48
|
|
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_QUERY_LICENSE_CAPABILITIES), // 69
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_REQUEST_CLIENT_LICENSE), // 70
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_SEND_CLIENT_LICENSE), // 71
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_LICENSE_PROTOCOL_COMPLETE), // 72
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_GET_LICENSE_DATA), // 73
|
|
ICA_IOCTL_TBL_ITEM(IOCTL_ICA_STACK_QUERY_CLIENT_EXTENDED), // 77
|
|
|
|
};
|
|
|
|
#endif // DBG typedefs
|
|
|
|
|
|
//
|
|
// Externs
|
|
//
|
|
|
|
extern ICASRVPROCADDR g_IcaSrvProcAddr;
|
|
|
|
|
|
//
|
|
// Prototypes
|
|
//
|
|
|
|
#if DBG
|
|
|
|
void TSrvDumpIoctlDetails(IN PVOID pvContext,
|
|
IN HANDLE hIca,
|
|
IN HANDLE hStack,
|
|
IN ULONG IoControlCode,
|
|
IN PVOID pInBuffer,
|
|
IN ULONG InBufferSize,
|
|
OUT PVOID pOutBuffer,
|
|
IN ULONG OutBufferSize,
|
|
OUT PULONG pBytesReturned);
|
|
|
|
#else
|
|
|
|
#define TSrvDumpIoctlDetails(_x_, _y_, _z_, _a_, _b_, _c_, _d_, _e_, _f_)
|
|
|
|
#endif // DBG prototypes
|
|
|
|
|
|
|
|
#endif // __TSRVWXS_H_
|
|
|