windows-nt/Source/XPSP1/NT/base/fs/rdr2/inc/rxwmi.h
2020-09-26 16:20:57 +08:00

343 lines
11 KiB
C

/*++
Copyright (c) 1999 Microsoft Corporation
Module Name:
mupwml.h
Abstract:
This file defines macro for use by the Rdbss driver
Author:
yunlin
Revision History:
--*/
#ifndef __RX_RXWML_H__
#define __RX_RXWML_H__
typedef struct _RTL_TIME_ZONE_INFORMATION {
LONG Bias;
WCHAR StandardName[ 32 ];
TIME_FIELDS StandardStart;
LONG StandardBias;
WCHAR DaylightName[ 32 ];
TIME_FIELDS DaylightStart;
LONG DaylightBias;
} RTL_TIME_ZONE_INFORMATION, *PRTL_TIME_ZONE_INFORMATION;
#ifndef _WMIKM_
#define _WMIKM_
#endif
#include "..\wmi\wmlkm.h"
#include "..\wmi\wmlmacro.h"
#define _RX_TRACE_STREAM 0x00
#define _RX_PERF_STREAM 0x01
#define _RX_INSTR_STREAM 0x02
#define _RX_ENABLE_ERROR 0x0001
#define _RX_ENABLE_LOG 0x0002
#define _RX_ENABLE_TRACE 0x0004
#define _RX_ENABLE_SRVCALL 0x0008
#define _RX_ENABLE_NETROOT 0x0010
#define _RX_ENABLE_VNETROOT 0x0020
#define _RX_ENABLE_FCB 0x0040
#define _RX_ENABLE_SRVOPEN 0x0080
#define _RX_ENABLE_FOBX 0x0100
#define _RX_ENABLE_TRANSPORT 0x0200
#define _RX_ENABLE_RXCONTEXT 0x0400
#define _RX_ENABLE_UNUSED1 0x0800
#define _RX_ENABLE_UNUSED2 0x1000
#define _RX_ENABLE_UNUSED3 0x2000
#define _RX_ENABLE_UNUSED4 0x4000
#define _RX_ENABLE_PAGEIORES 0x8000
#define _RX_LEVEL_DETAIL 0x1
#define _RX_LEVEL_NORM 0x2
#define _RX_LEVEL_BRIEF 0x4
#define RX_LOG_STREAM(_stream) _RX_ ## _stream ## _STREAM
#define RX_LOG_FLAGS(_flag) _RX_ENABLE_ ## _flag
#define RX_LOG_LEVEL(_level) _RX_LEVEL_ ## _level
#define RX_LOG(_why, _level, _flag, _type, _arg) \
WML_LOG(Rdbss_, RX_LOG_STREAM(_why), RX_LOG_LEVEL(_level), _flag, _type, _arg 0)
#define LOGARG(_val) (_val),
#define LOGNOTHING 0,
#define RxWmiTrace(_flag, _type, _arg) \
RX_LOG(TRACE, DETAIL, RX_LOG_FLAGS(_flag), _type, _arg)
#define RxWmiLog(_flag, _type, _arg) \
RX_LOG(TRACE, BRIEF, RX_LOG_FLAGS(_flag), _type, _arg)
#define RxWmiTraceError(_status, _flag, _type, _arg) \
RX_LOG(TRACE, DETAIL, (RX_LOG_FLAGS(_flag) | (NT_SUCCESS(_status) ? 0 : RX_LOG_FLAGS(ERROR))), _type, _arg)
#define RxWmiLogError(_status, _flag, _type, _arg) \
RX_LOG(TRACE, BRIEF, (RX_LOG_FLAGS(_flag) | (NT_SUCCESS(_status) ? 0 : RX_LOG_FLAGS(ERROR))), _type, _arg)
#if 0
#define RX_PERF(_flag, _type, _arg) \
RX_LOG (PERF, HIGH, RX_LOG_FLAGS(_flag), _type, _arg)
#define RX_INSTR(_flag, _type, _arg) \
RX_LOG (INSTR, HIGH, RX_LOG_FLAGS(_flag), _type, _arg)
#define RX_PRINTF(_why, _flag, _type, _fmtstr, _arg) \
WML_PRINTF(_MupDrv, RX_LOG_STREAM(_why), RX_LOG_FLAGS(_flag), _type, _fmtstr, _arg 0)
#define RX_DBG_PRINT(_flag, _fmtstr, _arg) \
RX_PRINTF(DBGLOG, _flag, MupDefault, _fmtstr, _arg)
#define RX_ERR_PRINT (_status, _fmtstr, _arg) \
if (NT_SUCCESS(_status)) { \
RX_PRINTF (DBGLOG, LOG_ERROR, MupDefault, _fmtstr, _arg) \
}
#endif
typedef enum _RX_WMI_ENUM_ {
MSG_ID_RxDefault = 1,
MSG_ID_RxCommonDispatchProblem,
MSG_ID_RxFsdCommonDispatch_OF,
MSG_ID_RxInitializeContext,
MSG_ID_RxCompleteRequest = 5,
MSG_ID_RxCompleteRequest_NI,
MSG_ID_RxSynchronizeBlockingOperationsMaybeDroppingFcbLock,
MSG_ID_RxItsTheSameContext,
MSG_ID_RxRegisterChangeBufferingStateRequest_1,
MSG_ID_RxRegisterChangeBufferingStateRequest_2 = 10,
MSG_ID_RxRegisterChangeBufferingStateRequest_3,
MSG_ID_RxPrepareRequestForHandling_1,
MSG_ID_RxPrepareRequestForHandling_2,
MSG_ID_RxpDiscardChangeBufferingStateRequests,
MSG_ID_RxpDispatchChangeBufferingStateRequests = 15,
MSG_ID_RxpProcessChangeBufferingStateRequests_1,
MSG_ID_RxpProcessChangeBufferingStateRequests_2,
MSG_ID_RxpProcessChangeBufferingStateRequests_3,
MSG_ID_RxpProcessChangeBufferingStateRequests_4,
MSG_ID_RxpProcessChangeBufferingStateRequests_5 = 20,
MSG_ID_RxLastChanceHandlerForChangeBufferingStateRequests_1,
MSG_ID_RxLastChanceHandlerForChangeBufferingStateRequests_2,
MSG_ID_RxLastChanceHandlerForChangeBufferingStateRequests_3,
MSG_ID_RxProcessFcbChangeBufferingStateRequest_1,
MSG_ID_RxProcessFcbChangeBufferingStateRequest_2 = 25,
MSG_ID_RxProcessFcbChangeBufferingStateRequest_3,
MSG_ID_RxProcessFcbChangeBufferingStateRequest_4,
MSG_ID_RxChangeBufferingState_1,
MSG_ID_RxChangeBufferingState_2,
MSG_ID_RxChangeBufferingState_3 = 30,
MSG_ID_RxChangeBufferingState_4,
MSG_ID_RxChangeBufferingState_5,
MSG_ID_RxFlushFcbInSystemCache,
MSG_ID_RxPurgeFcbInSystemCache,
MSG_ID_RxCopyCreateParameters_1 = 35,
MSG_ID_RxCopyCreateParameters_2,
MSG_ID_RxFindOrCreateFcb,
MSG_ID_RxSearchForCollapsibleOpen,
MSG_ID_RxCollapseOrCreateSrvOpen,
MSG_ID_RxCommonCreate_1 = 40,
MSG_ID_RxCommonCreate_2,
MSG_ID_RxCommonCreate_3,
MSG_ID_RxCommonCreate_4,
MSG_ID_RxCommonCreate_5,
MSG_ID_RxCommonClose_1 = 45,
MSG_ID_RxCommonClose_2,
MSG_ID_RxCloseAssociatedSrvOpen,
MSG_ID_RxpCancelRoutine,
MSG_ID_RxCancelNotifyChangeDirectoryRequestsForVNetRoot,
MSG_ID_RxCancelNotifyChangeDirectoryRequestsForFobx = 50,
MSG_ID_RxCommonDirectoryControl,
MSG_ID_RxQueryDirectory_1,
MSG_ID_RxQueryDirectory_2,
MSG_ID_RxQueryDirectory_3,
MSG_ID_RxCommonQueryInformation_1 = 55,
MSG_ID_RxCommonQueryInformation_2,
MSG_ID_RxCommonSetInformation_1,
MSG_ID_RxCommonSetInformation_2,
MSG_ID_RxSetBasicInfo,
MSG_ID_RxSetDispositionInfo = 60,
MSG_ID_RxSetRenameInfo,
MSG_ID_RxSetPositionInfo,
MSG_ID_RxSetAllocationInfo_1,
MSG_ID_RxSetAllocationInfo_2,
MSG_ID_RxSetEndOfFileInfo_1 = 65,
MSG_ID_RxSetEndOfFileInfo_2,
MSG_ID_RxSetEndOfFileInfo_3,
MSG_ID_RxSetEndOfFileInfo_4,
MSG_ID_RxQueryBasicInfo,
MSG_ID_RxQueryStandardInfo = 70,
MSG_ID_RxQueryInternalInfo,
MSG_ID_RxQueryEaInfo,
MSG_ID_RxQueryPositionInfo,
MSG_ID_RxQueryNameInfo,
MSG_ID_RxQueryAlternateNameInfo = 75,
MSG_ID_RxQueryCompressedInfo,
MSG_ID_RxSetPipeInfo,
MSG_ID_RxQueryPipeInfo,
MSG_ID_RxCommonFlushBuffers,
MSG_ID_RxCommonFileSystemControl = 80,
MSG_ID_RxLowIoFsCtlShell,
MSG_ID_RxLowIoFsCtlShellCompletion_1,
MSG_ID_RxLowIoFsCtlShellCompletion_2,
MSG_ID_RxCommonLockControl_1,
MSG_ID_RxCommonLockControl_2 = 85,
MSG_ID_RxCommonLockControl_3,
MSG_ID_RxCommonLockControl_4,
MSG_ID_RxCommonLockControl_5,
MSG_ID_RxLockOperationCompletion_1,
MSG_ID_RxLockOperationCompletion_2 = 90,
MSG_ID_RxLockOperationCompletion_3,
MSG_ID_RxLockOperationCompletion_4,
MSG_ID_RxLockOperationCompletion_5,
MSG_ID_RxLockOperationCompletion_6,
MSG_ID_RxLockOperationCompletion_7 = 95,
MSG_ID_RxLockOperationCompletion_8,
MSG_ID_RxLockOperationCompletionWithAcquire_1,
MSG_ID_RxLockOperationCompletionWithAcquire_2,
MSG_ID_RxLockOperationCompletionWithAcquire_3,
MSG_ID_RxUnlockOperation = 100,
MSG_ID_RxLowIoLockControlShellCompletion_1,
MSG_ID_RxLowIoLockControlShellCompletion_2,
MSG_ID_RxFinalizeLockList,
MSG_ID_RxLowIoLockControlShell,
MSG_ID_RxRegisterMinirdr = 105,
MSG_ID_RxCommonDevFCBClose,
MSG_ID_RxCommonDevFCBCleanup,
MSG_ID_RxCommonDevFCBFsCtl,
MSG_ID_RxCommonDevFCBQueryVolInfo,
MSG_ID_RxExceptionFilter_1 = 110,
MSG_ID_RxExceptionFilter_2,
MSG_ID_RxFastIoRead_1,
MSG_ID_RxFastIoRead_2,
MSG_ID_RxFastIoRead_3,
MSG_ID_RxFastIoWrite_1 = 115,
MSG_ID_RxFastIoWrite_2,
MSG_ID_RxFastIoCheckIfPossible,
MSG_ID_RxFspDispatch,
MSG_ID_RxFsdPostRequest,
MSG_ID_RxGetNetworkProviderPriority = 120,
MSG_ID_RxAccrueProviderFromServiceName_1,
MSG_ID_RxAccrueProviderFromServiceName_2,
MSG_ID_RxConstructProviderOrder_1,
MSG_ID_RxConstructProviderOrder_2,
MSG_ID_RxCommonRead_1 = 125,
MSG_ID_RxCommonRead_2,
MSG_ID_RxCommonRead_3,
MSG_ID_RxCommonRead_4,
MSG_ID_RxLowIoReadShellCompletion_1,
MSG_ID_RxLowIoReadShellCompletion_2 = 130,
MSG_ID_RxLowIoReadShellCompletion_3,
MSG_ID_RxLowIoReadShell_1,
MSG_ID_RxLowIoReadShell_2,
MSG_ID_RxSetDomainForMailslotBroadcast_1,
MSG_ID_RxSetDomainForMailslotBroadcast_2 = 135,
MSG_ID_RxCommonQueryVolumeInformation_1,
MSG_ID_RxCommonQueryVolumeInformation_2,
MSG_ID_RxCommonSetVolumeInformation_1,
MSG_ID_RxCommonSetVolumeInformation_2,
MSG_ID_RxCommonWrite_1 = 140,
MSG_ID_RxCommonWrite_2,
MSG_ID_RxCommonWrite_3,
MSG_ID_RxCommonWrite_4,
MSG_ID_RxCommonWrite_5,
MSG_ID_RxCommonWrite_6 = 145,
MSG_ID_RxCommonWrite_7,
MSG_ID_RxLowIoWriteShellCompletion_1,
MSG_ID_RxLowIoWriteShellCompletion_2,
MSG_ID_RxLowIoWriteShell_1,
MSG_ID_RxLowIoWriteShell_2 =150,
MSG_ID_RxFinalizeNetTable_1,
MSG_ID_RxFinalizeNetTable_2,
MSG_ID_RxFinalizeConnection,
MSG_ID_RxFinalizeSrvCall,
MSG_ID_RxFinalizeNetRoot = 155,
MSG_ID_RxFinalizeVNetRoot,
MSG_ID_RxCreateNetFcb_1,
MSG_ID_RxCreateNetFcb_2,
MSG_ID_RxCreateNetFcb_3,
MSG_ID_RxFinalizeNetFcb = 160,
MSG_ID_RxCreateSrvOpen,
MSG_ID_RxFinalizeSrvOpen,
MSG_ID_RxCreateNetFobx,
MSG_ID_RxFinalizeNetFobx_1,
MSG_ID_RxFinalizeNetFobx_2 = 165,
MSG_ID_RxUninitializeMidMap,
MSG_ID_RxAcquireFcb_1,
MSG_ID_RxAcquireFcb_2,
MSG_ID_RxCeBindToTransport,
MSG_ID_RxCeTearDownTransport = 170,
MSG_ID_RxCeQueryAdapterStatus,
MSG_ID_RxCeQueryTransportInformation,
MSG_ID_RxCeBuildAddress,
MSG_ID_RxCeBuildVC,
MSG_ID_RxCeInitiateVCDisconnect = 175,
MSG_ID_RxCeTearDownVC,
MSG_ID_RxCeBuildConnection,
MSG_ID_RxCeCleanupConnectCallOutContext,
MSG_ID_RxCeCompleteConnectRequest,
MSG_ID_RxCeBuildConnectionOverMultipleTransports_1 = 180,
MSG_ID_RxCeBuildConnectionOverMultipleTransports_2,
MSG_ID_RxCeTearDownConnection,
MSG_ID_RxCeSend,
MSG_ID_RxCeSendDatagram,
MSG_ID_RxFindOrCreateConnections_1 = 185,
MSG_ID_RxFindOrCreateConnections_2,
MSG_ID_RxFinishSrvCallConstruction,
MSG_ID_RxConstructSrvCall,
MSG_ID_RxFindOrConstructVirtualNetRoot,
MSG_ID_RxSpinUpWorkerThread = 190,
MSG_ID_RxSpinUpRequestsDispatcher,
MSG_ID_RxpWorkerThreadDispatcher,
MSG_ID_RxWorkItemDispatcher,
MSG_ID_RxDispatchToWorkerThread,
MSG_ID_RxPostToWorkerThread = 195,
MSG_ID_RxPurgeFobxFromCache,
MSG_ID_RxPurgeFobx_1,
MSG_ID_RxPurgeFobx_2,
MSG_ID_RxPurgeFobx_3,
MSG_ID_RxPurgeFobx_4 = 200,
MSG_ID_RxPurgeRelatedFobxs_1,
MSG_ID_RxPurgeRelatedFobxs_2,
MSG_ID_RxPurgeAllFobxs,
MSG_ID_RxpMarkInstanceForScavengedFinalization,
MSG_ID_RxScavengerFinalizeEntries = 205,
MSG_ID_RxCeBuildTransport,
MSG_ID_RxLastChanceHandlerForChangeBufferingStateRequests_4,
MSG_ID_RxInsertWorkQueueItem,
MSG_ID_RxRefSrvcall,
MSG_ID_RxRefNetRoot = 210,
MSG_ID_RxRefVNetRoot,
MSG_ID_RxRefFcb,
MSG_ID_RxRefSrvOpen,
MSG_ID_RxRefFobx,
MSG_ID_RxDerefSrvcall = 215,
MSG_ID_RxDerefNetRoot,
MSG_ID_RxDerefVNetRoot,
MSG_ID_RxDerefFcb,
MSG_ID_RxDerefSrvOpen,
MSG_ID_RxDerefFobx = 220,
MSG_ID_RxTdiAsynchronousConnectCompletion,
MSG_ID_RxPurgeRelatedFobxs_3,
MSG_ID_RxTrackPagingIoResource_1,
MSG_ID_RxTrackPagingIoResource_2,
MSG_ID_RxTrackPagingIoResource_3 = 225,
MSG_ID_RxSetSimpleInfo,
} RX_WMI_ENUM;
#define WML_ID(_id) ((MSG_ID_ ## _id) & 0xFF)
#define WML_GUID(_id) ((MSG_ID_ ## _id) >> 8)
extern WML_CONTROL_GUID_REG Rdbss_ControlGuids[];
#endif /* __RX_RXWML_H__ */