mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 21:12:59 +00:00
[WDF] Fix KMDF so it can compile with ReactOS SDK
Not all files are included, but these are necessary to compile cdrom driver. So far it can only be statically linked with drivers, a proper implementation requires wdfldr helper driver
This commit is contained in:
parent
8a978a179f
commit
1f377076d7
258 changed files with 4047 additions and 2387 deletions
|
@ -46,15 +46,15 @@ extern "C" {
|
|||
#include "mx.h"
|
||||
}
|
||||
|
||||
#include "FxMin.hpp"
|
||||
#include "fxmin.hpp"
|
||||
|
||||
#include "wdfmemory.h"
|
||||
#include "wdfrequest.h"
|
||||
#include "wdfdevice.h"
|
||||
#include "wdfdevicepri.h"
|
||||
#include "wdfiotargetpri.h"
|
||||
// #include "wdfdevicepri.h"
|
||||
// #include "wdfiotargetpri.h"
|
||||
#include "wdfwmi.h"
|
||||
#include "wdfChildList.h"
|
||||
#include "wdfchildlist.h"
|
||||
#include "wdfpdo.h"
|
||||
#include "wdffdo.h"
|
||||
#include "wdfiotarget.h"
|
||||
|
@ -62,12 +62,12 @@ extern "C" {
|
|||
#include "wdfcx.h"
|
||||
#include "wdfio.h"
|
||||
#include "wdfqueryinterface.h"
|
||||
#include "wdftriage.h"
|
||||
// #include "wdftriage.h"
|
||||
|
||||
#if (FX_CORE_MODE == FX_CORE_USER_MODE)
|
||||
#include "FxIrpUm.hpp"
|
||||
#include "fxirpum.hpp"
|
||||
#else
|
||||
#include "FxIrpKm.hpp"
|
||||
#include "fxirpkm.hpp"
|
||||
#endif
|
||||
|
||||
// <FxSystemWorkItem.hpp>
|
||||
|
@ -77,92 +77,92 @@ VOID
|
|||
IN PVOID Parameter
|
||||
);
|
||||
|
||||
#include "FxIrpQueue.hpp"
|
||||
#include "fxirpqueue.hpp"
|
||||
|
||||
|
||||
// </FxSystemWorkItem.hpp>
|
||||
|
||||
|
||||
#include "FxProbeAndLock.h"
|
||||
#include "FxPackage.hpp"
|
||||
#include "FxCollection.hpp"
|
||||
#include "FxDeviceInitShared.hpp"
|
||||
#include "fxprobeandlock.h"
|
||||
#include "fxpackage.hpp"
|
||||
#include "fxcollection.hpp"
|
||||
#include "fxdeviceinitshared.hpp"
|
||||
|
||||
#include "IfxMemory.hpp"
|
||||
#include "FxCallback.hpp"
|
||||
#include "FxRequestContext.hpp"
|
||||
#include "FxRequestContextTypes.h"
|
||||
#include "FxRequestBase.hpp"
|
||||
#include "FxMemoryObject.hpp"
|
||||
#include "FxMemoryBuffer.hpp"
|
||||
#include "ifxmemory.hpp"
|
||||
#include "fxcallback.hpp"
|
||||
#include "fxrequestcontext.hpp"
|
||||
#include "fxrequestcontexttypes.h"
|
||||
#include "fxrequestbase.hpp"
|
||||
#include "fxmemoryobject.hpp"
|
||||
#include "fxmemorybuffer.hpp"
|
||||
|
||||
#include "FxMemoryBufferFromPool.hpp"
|
||||
#include "fxmemorybufferfrompool.hpp"
|
||||
|
||||
#include "FxMemoryBufferPreallocated.hpp"
|
||||
#include "fxmemorybufferpreallocated.hpp"
|
||||
|
||||
#include "FxTransactionedList.hpp"
|
||||
#include "fxtransactionedlist.hpp"
|
||||
|
||||
//
|
||||
// MERGE temp: We may not need these include files here,
|
||||
// temporarily including them to verify they compile in shared code
|
||||
//
|
||||
#include "FxRequestValidateFunctions.hpp"
|
||||
#include "FxRequestCallbacks.hpp"
|
||||
#include "fxrequestvalidatefunctions.hpp"
|
||||
#include "fxrequestcallbacks.hpp"
|
||||
|
||||
// support
|
||||
#include "StringUtil.hpp"
|
||||
#include "FxAutoString.hpp"
|
||||
#include "FxString.hpp"
|
||||
#include "FxDeviceText.hpp"
|
||||
#include "FxCallback.hpp"
|
||||
#include "FxDisposeList.hpp"
|
||||
#include "FxSystemThread.hpp"
|
||||
#include "stringutil.hpp"
|
||||
#include "fxautostring.hpp"
|
||||
#include "fxstring.hpp"
|
||||
#include "fxdevicetext.hpp"
|
||||
#include "fxcallback.hpp"
|
||||
#include "fxdisposelist.hpp"
|
||||
#include "fxsystemthread.hpp"
|
||||
|
||||
#include "FxIrpPreprocessInfo.hpp"
|
||||
#include "FxPnpCallbacks.hpp"
|
||||
#include "fxirppreprocessinfo.hpp"
|
||||
#include "fxpnpcallbacks.hpp"
|
||||
|
||||
// device init
|
||||
#include "FxCxDeviceInit.hpp"
|
||||
#include "FxCxDeviceInfo.hpp"
|
||||
#include "FxDeviceInit.hpp"
|
||||
#include "fxcxdeviceinit.hpp"
|
||||
#include "fxcxdeviceinfo.hpp"
|
||||
#include "fxdeviceinit.hpp"
|
||||
|
||||
#include "FxDeviceToMxInterface.hpp"
|
||||
#include "fxdevicetomxinterface.hpp"
|
||||
|
||||
// request
|
||||
#include "FxRequestMemory.hpp"
|
||||
#include "FxRequest.hpp"
|
||||
#include "FxRequestBuffer.hpp"
|
||||
#include "FxSyncRequest.hpp"
|
||||
#include "fxrequestmemory.hpp"
|
||||
#include "fxrequest.hpp"
|
||||
#include "fxrequestbuffer.hpp"
|
||||
#include "fxsyncrequest.hpp"
|
||||
|
||||
// io target
|
||||
#include "FxIoTarget.hpp"
|
||||
#include "FxIoTargetSelf.hpp"
|
||||
#include "fxiotarget.hpp"
|
||||
#include "fxiotargetself.hpp"
|
||||
|
||||
#include "FxSystemWorkItem.hpp"
|
||||
#include "FxCallbackMutexLock.hpp"
|
||||
#include "FxDriver.hpp"
|
||||
#include "fxsystemworkitem.hpp"
|
||||
#include "fxcallbackmutexlock.hpp"
|
||||
#include "fxdriver.hpp"
|
||||
|
||||
#include "FxDeviceInterface.hpp"
|
||||
#include "FxQueryInterface.hpp"
|
||||
#include "fxdeviceinterface.hpp"
|
||||
#include "fxqueryinterface.hpp"
|
||||
|
||||
#include "FxCallbackSpinLock.hpp"
|
||||
#include "FxDefaultIrpHandler.hpp"
|
||||
#include "FxWmiIrpHandler.hpp"
|
||||
#include "fxcallbackspinlock.hpp"
|
||||
#include "fxdefaultirphandler.hpp"
|
||||
#include "fxwmiirphandler.hpp"
|
||||
|
||||
// packages
|
||||
#include "FxPkgIo.hpp"
|
||||
#include "FxPkgPnp.hpp"
|
||||
#include "FxPkgFdo.hpp"
|
||||
#include "FxPkgPdo.hpp"
|
||||
#include "FxPkgGeneral.hpp"
|
||||
#include "FxFileObject.hpp"
|
||||
#include "FxIoQueue.hpp"
|
||||
#include "FxDevice.hpp"
|
||||
#include "FxTelemetry.hpp"
|
||||
#include "fxpkgio.hpp"
|
||||
#include "fxpkgpnp.hpp"
|
||||
#include "fxpkgfdo.hpp"
|
||||
#include "fxpkgpdo.hpp"
|
||||
#include "fxpkggeneral.hpp"
|
||||
#include "fxfileobject.hpp"
|
||||
#include "fxioqueue.hpp"
|
||||
#include "fxdevice.hpp"
|
||||
#include "fxtelemetry.hpp"
|
||||
|
||||
#include "FxChildList.hpp"
|
||||
#include "fxchildlist.hpp"
|
||||
|
||||
#include "FxLookasideList.hpp"
|
||||
#include "fxlookasidelist.hpp"
|
||||
|
||||
/*#if FX_IS_KERNEL_MODE
|
||||
#include "wdfrequest.h"
|
||||
|
|
|
@ -26,7 +26,7 @@ Revision History:
|
|||
#include "coreprivshared.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxCxDeviceInit.tmh"
|
||||
// #include "FxCxDeviceInit.tmh"
|
||||
}
|
||||
|
||||
WDFCXDEVICE_INIT::WDFCXDEVICE_INIT()
|
||||
|
|
|
@ -28,7 +28,7 @@ Revision History:
|
|||
#include "coreprivshared.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxCxDeviceInitApi.tmh"
|
||||
// #include "FxCxDeviceInitApi.tmh"
|
||||
}
|
||||
|
||||
//
|
||||
|
|
|
@ -25,7 +25,7 @@ Revision History:
|
|||
#include "coreprivshared.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxDevice.tmh"
|
||||
// #include "FxDevice.tmh"
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -681,14 +681,12 @@ Return Value:
|
|||
PFX_DRIVER_GLOBALS pGlobals;
|
||||
PLIST_ENTRY next;
|
||||
NTSTATUS status;
|
||||
BOOLEAN wmiTracing;
|
||||
size_t reqCtxSize;
|
||||
PWDFCXDEVICE_INIT cxInit;
|
||||
CCHAR cxIndex;
|
||||
FxCxDeviceInfo* cxDeviceInfo;
|
||||
|
||||
pGlobals = GetDriverGlobals();
|
||||
wmiTracing = FALSE;
|
||||
m_Exclusive = DeviceInit->Exclusive;
|
||||
cxIndex = 0;
|
||||
|
||||
|
@ -832,11 +830,11 @@ Return Value:
|
|||
|
||||
|
||||
|
||||
m_PkgWmi = new(pGlobals) FxWmiIrpHandler(pGlobals, this);
|
||||
if (m_PkgWmi == NULL) {
|
||||
return STATUS_INSUFFICIENT_RESOURCES;
|
||||
}
|
||||
InstallPackage(m_PkgWmi);
|
||||
// m_PkgWmi = new(pGlobals) FxWmiIrpHandler(pGlobals, this); __REACTOS__
|
||||
// if (m_PkgWmi == NULL) {
|
||||
// return STATUS_INSUFFICIENT_RESOURCES;
|
||||
// }
|
||||
// InstallPackage(m_PkgWmi);
|
||||
#endif
|
||||
|
||||
//
|
||||
|
@ -1019,7 +1017,8 @@ FxDevice::CreateDevice(
|
|||
// administrator complete control over the device. No other users
|
||||
// may access the device.
|
||||
//
|
||||
pSddl = (PUNICODE_STRING) &SDDL_DEVOBJ_SYS_ALL_ADM_ALL;
|
||||
// pSddl = (PUNICODE_STRING) &SDDL_DEVOBJ_SYS_ALL_ADM_ALL;
|
||||
pSddl = NULL; // __REACTOS__ : wdmsec.lib is not supported
|
||||
}
|
||||
|
||||
status = Mx::MxCreateDeviceSecure(
|
||||
|
@ -1217,7 +1216,7 @@ Return Value:
|
|||
// we delete the device object, otherwise we can bugcheck when
|
||||
// running under driver verifier.
|
||||
//
|
||||
m_PkgWmi->Deregister();
|
||||
// m_PkgWmi->Deregister(); __REACTOS__
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -1236,7 +1235,7 @@ Return Value:
|
|||
}
|
||||
}
|
||||
|
||||
__super::DeleteObject();
|
||||
FxDeviceBase::DeleteObject(); // __super call
|
||||
}
|
||||
|
||||
BOOLEAN
|
||||
|
@ -1262,7 +1261,7 @@ FxDevice::Dispose(
|
|||
// valid to reference the pointer because there is an explicit
|
||||
// reference on the object that was taken when we created this object.
|
||||
//
|
||||
m_PkgWmi->Deregister();
|
||||
// m_PkgWmi->Deregister(); __REACTOS__
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -1289,7 +1288,7 @@ FxDevice::Dispose(
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
return __super::Dispose();
|
||||
return FxDeviceBase::Dispose(); // __super call
|
||||
}
|
||||
|
||||
_Must_inspect_result_
|
||||
|
@ -1456,7 +1455,6 @@ PreprocessIrp(
|
|||
)
|
||||
{
|
||||
NTSTATUS status;
|
||||
MdDeviceObject devObj;
|
||||
UCHAR major, minor;
|
||||
FxIrp irp(Irp);
|
||||
|
||||
|
@ -1468,7 +1466,6 @@ PreprocessIrp(
|
|||
// EvtDevicePreprocess returns. To not touch freed pool, capture all
|
||||
// values we will need before preprocessing.
|
||||
//
|
||||
devObj = Device->GetDeviceObject();
|
||||
|
||||
if (Info->ClassExtension == FALSE) {
|
||||
status = Info->Dispatch[major].EvtDevicePreprocess( Device->GetHandle(),
|
||||
|
@ -1518,7 +1515,7 @@ DispatchWorker(
|
|||
next = (PLIST_ENTRY)DispatchContext;
|
||||
|
||||
ASSERT(NULL != DispatchContext &&
|
||||
((UCHAR)DispatchContext & FX_IN_DISPATCH_CALLBACK) == 0);
|
||||
((UCHAR)(ULONG_PTR)DispatchContext & FX_IN_DISPATCH_CALLBACK) == 0);
|
||||
|
||||
//
|
||||
// Check for any driver/class-extensions' preprocess requirements.
|
||||
|
@ -1762,7 +1759,7 @@ FxDevice::QueryInterface(
|
|||
break;
|
||||
|
||||
default:
|
||||
return __super::QueryInterface(Params);
|
||||
return FxDeviceBase::QueryInterface(Params); // __super call
|
||||
}
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
|
|
|
@ -26,7 +26,7 @@ Revision History:
|
|||
#include "fxiotarget.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxDeviceApi.tmh"
|
||||
// #include "FxDeviceApi.tmh"
|
||||
}
|
||||
|
||||
struct FxOffsetAndName {
|
||||
|
@ -43,6 +43,7 @@ extern "C" {
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFDRIVER
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetDriver)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -83,6 +84,7 @@ Returns:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFIOTARGET
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetIoTarget)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -111,6 +113,7 @@ WDFEXPORT(WdfDeviceGetIoTarget)(
|
|||
|
||||
_IRQL_requires_max_(DISPATCH_LEVEL)
|
||||
WDFIOTARGET
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetSelfIoTarget)(
|
||||
_In_
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -160,6 +163,7 @@ Returns:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceRetrieveDeviceName)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -208,6 +212,7 @@ WDFEXPORT(WdfDeviceRetrieveDeviceName)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceSetCharacteristics)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -234,6 +239,7 @@ WDFEXPORT(WdfDeviceSetCharacteristics)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
ULONG
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetCharacteristics)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -258,6 +264,7 @@ WDFEXPORT(WdfDeviceGetCharacteristics)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
ULONG
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetAlignmentRequirement)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -282,6 +289,7 @@ WDFEXPORT(WdfDeviceGetAlignmentRequirement)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceSetAlignmentRequirement)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -308,6 +316,7 @@ WDFEXPORT(WdfDeviceSetAlignmentRequirement)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDF_DEVICE_PNP_STATE
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetDevicePnpState)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -329,6 +338,7 @@ WDFEXPORT(WdfDeviceGetDevicePnpState)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDF_DEVICE_POWER_STATE
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetDevicePowerState)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -350,6 +360,7 @@ WDFEXPORT(WdfDeviceGetDevicePowerState)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDF_DEVICE_POWER_POLICY_STATE
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetDevicePowerPolicyState)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -372,6 +383,7 @@ WDFEXPORT(WdfDeviceGetDevicePowerPolicyState)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceAssignS0IdleSettings)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -484,6 +496,7 @@ WDFEXPORT(WdfDeviceAssignS0IdleSettings)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceAssignSxWakeSettings)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -579,6 +592,7 @@ WDFEXPORT(WdfDeviceAssignSxWakeSettings)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceOpenRegistryKey)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -635,6 +649,7 @@ WDFEXPORT(WdfDeviceOpenRegistryKey)(
|
|||
_Must_inspect_result_
|
||||
_IRQL_requires_max_(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceOpenDevicemapKey) (
|
||||
_In_
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -727,6 +742,7 @@ WDFEXPORT(WdfDeviceOpenDevicemapKey) (
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetDeviceState)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -765,6 +781,7 @@ WDFEXPORT(WdfDeviceGetDeviceState)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceSetDeviceState)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -846,6 +863,7 @@ WDFEXPORT(WdfDeviceSetDeviceState)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceCreate)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -957,6 +975,7 @@ WDFEXPORT(WdfDeviceCreate)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceCreateSymbolicLink)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -969,7 +988,6 @@ WDFEXPORT(WdfDeviceCreateSymbolicLink)(
|
|||
DDI_ENTRY();
|
||||
|
||||
PFX_DRIVER_GLOBALS pFxDriverGlobals;
|
||||
PUNICODE_STRING pName;
|
||||
FxAutoString pdoName;
|
||||
FxDevice* pDevice;
|
||||
NTSTATUS status;
|
||||
|
@ -979,7 +997,6 @@ WDFEXPORT(WdfDeviceCreateSymbolicLink)(
|
|||
FX_TYPE_DEVICE,
|
||||
(PVOID *) &pDevice,
|
||||
&pFxDriverGlobals);
|
||||
pName = NULL;
|
||||
|
||||
FxPointerNotNull(pFxDriverGlobals, SymbolicLinkName);
|
||||
|
||||
|
@ -1022,6 +1039,7 @@ WDFEXPORT(WdfDeviceCreateSymbolicLink)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceQueryProperty)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1109,6 +1127,7 @@ Return Value:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceAllocAndQueryProperty)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1201,6 +1220,7 @@ Return Value:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceSetStaticStopRemove)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1237,6 +1257,7 @@ WDFEXPORT(WdfDeviceSetStaticStopRemove)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceSetFailed)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1368,6 +1389,7 @@ _Must_inspect_result_
|
|||
__drv_when(WaitForD0 == 0, __drv_maxIRQL(DISPATCH_LEVEL))
|
||||
__drv_when(WaitForD0 != 0, __drv_maxIRQL(PASSIVE_LEVEL))
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceStopIdleNoTrack)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1395,6 +1417,7 @@ _Must_inspect_result_
|
|||
__drv_when(WaitForD0 == 0, __drv_maxIRQL(DISPATCH_LEVEL))
|
||||
__drv_when(WaitForD0 != 0, __drv_maxIRQL(PASSIVE_LEVEL))
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceStopIdleActual)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1426,6 +1449,7 @@ WDFEXPORT(WdfDeviceStopIdleActual)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceResumeIdleNoTrack)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1444,6 +1468,7 @@ WDFEXPORT(WdfDeviceResumeIdleNoTrack)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceResumeIdleActual)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1468,6 +1493,7 @@ WDFEXPORT(WdfDeviceResumeIdleActual)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceSetPnpCapabilities)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1565,6 +1591,7 @@ Return Value:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceSetPowerCapabilities)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1734,6 +1761,7 @@ Return Value:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceConfigureRequestDispatching)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1865,6 +1893,7 @@ Returns:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFQUEUE
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetDefaultQueue)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1927,6 +1956,7 @@ Returns:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceEnqueueRequest)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2002,6 +2032,7 @@ Return Value:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
POWER_ACTION
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetSystemPowerAction)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2055,6 +2086,7 @@ _Must_inspect_result_
|
|||
_IRQL_requires_max_(APC_LEVEL)
|
||||
WDFAPI
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceQueryPropertyEx)(
|
||||
_In_
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2186,6 +2218,7 @@ _Must_inspect_result_
|
|||
_IRQL_requires_max_(APC_LEVEL)
|
||||
WDFAPI
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceAllocAndQueryPropertyEx)(
|
||||
_In_
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2303,6 +2336,7 @@ _Must_inspect_result_
|
|||
_IRQL_requires_max_(APC_LEVEL)
|
||||
WDFAPI
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceAssignProperty)(
|
||||
_In_
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2408,6 +2442,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFAPI
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceConfigureWdmIrpDispatchCallback)(
|
||||
_In_
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -25,7 +25,7 @@ Revision History:
|
|||
#include "coreprivshared.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxDeviceBase.tmh"
|
||||
// #include "FxDeviceBase.tmh"
|
||||
}
|
||||
|
||||
FxDeviceBase::FxDeviceBase(
|
||||
|
@ -83,7 +83,7 @@ FxDeviceBase::QueryInterface(
|
|||
break;
|
||||
|
||||
default:
|
||||
return __super::QueryInterface(Params);
|
||||
return FxNonPagedObject::QueryInterface(Params); // __super call
|
||||
}
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
|
|
|
@ -25,13 +25,14 @@ Revision History:
|
|||
#include "coreprivshared.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxDeviceControlAPI.tmh"
|
||||
// #include "FxDeviceControlAPI.tmh"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfControlFinishInitializing)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -51,7 +52,7 @@ WDFEXPORT(WdfControlFinishInitializing)(
|
|||
MxDeviceObject device(pDevice->GetDeviceObject());
|
||||
|
||||
if (pDevice->IsLegacy()) {
|
||||
pDevice->m_PkgWmi->Register();
|
||||
// pDevice->m_PkgWmi->Register(); __REACTOS__
|
||||
device.SetFlags(device.GetFlags() & ~DO_DEVICE_INITIALIZING);
|
||||
}
|
||||
else {
|
||||
|
|
|
@ -24,7 +24,7 @@ Revision History:
|
|||
#include "coreprivshared.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxDeviceInit.tmh"
|
||||
// #include "FxDeviceInit.tmh"
|
||||
}
|
||||
|
||||
WDFDEVICE_INIT::WDFDEVICE_INIT(
|
||||
|
|
|
@ -25,7 +25,7 @@ Revision History:
|
|||
#include "coreprivshared.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxDeviceInitApi.tmh"
|
||||
// #include "FxDeviceInitApi.tmh"
|
||||
}
|
||||
|
||||
typedef struct _WDF_PNPPOWER_EVENT_CALLBACKS_V1_9 {
|
||||
|
@ -137,6 +137,7 @@ extern "C" {
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitFree)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -155,6 +156,7 @@ WDFEXPORT(WdfDeviceInitFree)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetIoType)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -179,6 +181,7 @@ WDFEXPORT(WdfDeviceInitSetIoType)(
|
|||
_IRQL_requires_max_(PASSIVE_LEVEL)
|
||||
WDFAPI
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetIoTypeEx)(
|
||||
_In_
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -211,6 +214,7 @@ WDFEXPORT(WdfDeviceInitSetIoTypeEx)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetExclusive)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -229,6 +233,7 @@ WDFEXPORT(WdfDeviceInitSetExclusive)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetDeviceType)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -247,6 +252,7 @@ WDFEXPORT(WdfDeviceInitSetDeviceType)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetPowerNotPageable)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -263,6 +269,7 @@ WDFEXPORT(WdfDeviceInitSetPowerNotPageable)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetPowerPageable)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -279,6 +286,7 @@ WDFEXPORT(WdfDeviceInitSetPowerPageable)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetPowerInrush)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -300,6 +308,7 @@ WDFEXPORT(WdfDeviceInitSetPowerInrush)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitAssignName)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -351,6 +360,7 @@ WDFEXPORT(WdfDeviceInitAssignName)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetCharacteristics)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -385,6 +395,7 @@ WDFEXPORT(WdfDeviceInitSetCharacteristics)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetFileObjectConfig)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -555,6 +566,7 @@ Returns:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetRequestAttributes)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -595,6 +607,7 @@ WDFEXPORT(WdfDeviceInitSetRequestAttributes)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitAssignSDDLString)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -659,6 +672,7 @@ WDFEXPORT(WdfDeviceInitAssignSDDLString)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetDeviceClass)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -685,6 +699,7 @@ WDFEXPORT(WdfDeviceInitSetDeviceClass)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetPnpPowerEventCallbacks)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -748,6 +763,7 @@ WDFEXPORT(WdfDeviceInitSetPnpPowerEventCallbacks)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetPowerPolicyEventCallbacks)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -809,6 +825,7 @@ WDFEXPORT(WdfDeviceInitSetPowerPolicyEventCallbacks)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetPowerPolicyOwnership)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -828,6 +845,7 @@ WDFEXPORT(WdfDeviceInitSetPowerPolicyOwnership)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitRegisterPnpStateChangeCallback)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -907,6 +925,7 @@ WDFEXPORT(WdfDeviceInitRegisterPnpStateChangeCallback)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitRegisterPowerStateChangeCallback)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -987,6 +1006,7 @@ WDFEXPORT(WdfDeviceInitRegisterPowerStateChangeCallback)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitRegisterPowerPolicyStateChangeCallback)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1068,6 +1088,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFAPI
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitAssignWdmIrpPreprocessCallback)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1168,6 +1189,7 @@ WDFEXPORT(WdfDeviceInitAssignWdmIrpPreprocessCallback)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetIoInCallerContextCallback)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1222,6 +1244,7 @@ Return Value:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetRemoveLockOptions)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1287,6 +1310,7 @@ Done:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitSetReleaseHardwareOrderOnFailure)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1317,6 +1341,7 @@ WDFEXPORT(WdfDeviceInitSetReleaseHardwareOrderOnFailure)(
|
|||
|
||||
_IRQL_requires_max_(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceInitAllowSelfIoTarget)(
|
||||
_In_
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1358,6 +1383,7 @@ Returns:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
PDEVICE_OBJECT
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFdoInitWdmGetPhysicalDevice)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1384,6 +1410,7 @@ WDFEXPORT(WdfFdoInitWdmGetPhysicalDevice)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFdoInitOpenRegistryKey)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1435,6 +1462,7 @@ WDFEXPORT(WdfFdoInitOpenRegistryKey)(
|
|||
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFdoInitSetFilter)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1468,6 +1496,7 @@ WDFEXPORT(WdfFdoInitSetFilter)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFdoInitQueryProperty)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1544,6 +1573,7 @@ Return Value:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFdoInitAllocAndQueryProperty)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1627,6 +1657,7 @@ Return Value:
|
|||
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFdoInitSetEventCallbacks)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1688,6 +1719,7 @@ WDFEXPORT(WdfFdoInitSetEventCallbacks)(
|
|||
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFdoInitSetDefaultChildListConfig)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1754,6 +1786,7 @@ _Must_inspect_result_
|
|||
_IRQL_requires_max_(PASSIVE_LEVEL)
|
||||
WDFAPI
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFdoInitQueryPropertyEx)(
|
||||
_In_
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1871,6 +1904,7 @@ _Must_inspect_result_
|
|||
_IRQL_requires_max_(PASSIVE_LEVEL)
|
||||
WDFAPI
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFdoInitAllocAndQueryPropertyEx)(
|
||||
_In_
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1995,6 +2029,7 @@ Return Value:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
PWDFDEVICE_INIT
|
||||
STDCALL
|
||||
WDFEXPORT(WdfPdoInitAllocate)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2050,6 +2085,7 @@ WDFEXPORT(WdfPdoInitAllocate)(
|
|||
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfPdoInitSetEventCallbacks)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2096,6 +2132,7 @@ WDFEXPORT(WdfPdoInitSetEventCallbacks)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfPdoInitAssignDeviceID)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2154,6 +2191,7 @@ WDFEXPORT(WdfPdoInitAssignDeviceID)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfPdoInitAssignInstanceID)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2212,6 +2250,7 @@ WDFEXPORT(WdfPdoInitAssignInstanceID)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfPdoInitAddHardwareID)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2277,6 +2316,7 @@ WDFEXPORT(WdfPdoInitAddHardwareID)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfPdoInitAddCompatibleID)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2342,6 +2382,7 @@ WDFEXPORT(WdfPdoInitAddCompatibleID)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfPdoInitAssignContainerID)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2402,6 +2443,7 @@ WDFEXPORT(WdfPdoInitAssignContainerID)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfPdoInitAddDeviceText)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2505,6 +2547,7 @@ Done:
|
|||
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfPdoInitSetDefaultLocale)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2540,6 +2583,7 @@ WDFEXPORT(WdfPdoInitSetDefaultLocale)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfPdoInitAssignRawDevice)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2583,6 +2627,7 @@ WDFEXPORT(WdfPdoInitAssignRawDevice)(
|
|||
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfPdoInitAllowForwardingRequestToParent)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2628,6 +2673,7 @@ WDFEXPORT(WdfPdoInitAllowForwardingRequestToParent)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
PWDFDEVICE_INIT
|
||||
STDCALL
|
||||
WDFEXPORT(WdfControlDeviceInitAllocate)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2666,6 +2712,7 @@ WDFEXPORT(WdfControlDeviceInitAllocate)(
|
|||
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfControlDeviceInitSetShutdownNotification)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -31,11 +31,11 @@ Revision History:
|
|||
|
||||
#include "coreprivshared.hpp"
|
||||
|
||||
#include "FxDisposeList.hpp"
|
||||
#include "fxdisposelist.hpp"
|
||||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxDisposeList.tmh"
|
||||
// #include "FxDisposeList.tmh"
|
||||
}
|
||||
|
||||
FxDisposeList::FxDisposeList(
|
||||
|
@ -121,7 +121,7 @@ FxDisposeList::Dispose(
|
|||
|
||||
ASSERT(m_List.Next == NULL);
|
||||
|
||||
__super::Dispose();
|
||||
FxNonPagedObject::Dispose(); // __super call
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
|
|
@ -27,7 +27,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxDriver.tmh"
|
||||
// #include "FxDriver.tmh"
|
||||
}
|
||||
|
||||
FxDriver::FxDriver(
|
||||
|
@ -133,7 +133,7 @@ FxDriver::Dispose(
|
|||
m_DisposeList->WaitForEmpty();
|
||||
}
|
||||
|
||||
return __super::Dispose();
|
||||
return FxNonPagedObject::Dispose(); // __super call
|
||||
}
|
||||
|
||||
VOID
|
||||
|
|
|
@ -27,10 +27,10 @@ Revision History:
|
|||
// Tracing support
|
||||
extern "C" {
|
||||
#include <ntverp.h>
|
||||
#include "FxDriverApi.tmh"
|
||||
// #include "FxDriverApi.tmh"
|
||||
}
|
||||
|
||||
#include "FxTelemetry.hpp"
|
||||
#include "fxtelemetry.hpp"
|
||||
|
||||
//
|
||||
// extern the whole file
|
||||
|
@ -44,6 +44,7 @@ extern "C" {
|
|||
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
PWSTR
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDriverGetRegistryPath)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -71,9 +72,13 @@ WDFEXPORT(WdfDriverGetRegistryPath)(
|
|||
return pDriver->GetRegistryPathUnicodeString()->Buffer;
|
||||
}
|
||||
|
||||
VOID
|
||||
RosInitWdf();
|
||||
|
||||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDriverCreate)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -98,6 +103,9 @@ WDFEXPORT(WdfDriverCreate)(
|
|||
const LONG validFlags = WdfDriverInitNonPnpDriver |
|
||||
WdfDriverInitNoDispatchOverride;
|
||||
|
||||
RosInitWdf();
|
||||
DriverGlobals = WdfDriverGlobals;
|
||||
|
||||
hDriver = NULL;
|
||||
pFxDriverGlobals = GetFxDriverGlobals(DriverGlobals);
|
||||
|
||||
|
@ -302,6 +310,7 @@ WDFEXPORT(WdfDriverCreate)(
|
|||
*Driver = hDriver;
|
||||
}
|
||||
|
||||
#ifndef __REACTOS__
|
||||
if (FX_TELEMETRY_ENABLED(g_TelemetryProvider, pFxDriverGlobals)) {
|
||||
FxAutoString imageName;
|
||||
|
||||
|
@ -329,6 +338,7 @@ WDFEXPORT(WdfDriverCreate)(
|
|||
imageName.m_UnicodeString.Buffer,
|
||||
pVersionStr);
|
||||
}
|
||||
#endif // __REACTOS__
|
||||
}
|
||||
else {
|
||||
if (pDriver != NULL) {
|
||||
|
@ -344,6 +354,7 @@ WDFEXPORT(WdfDriverCreate)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDriverRegisterTraceInfo)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -368,6 +379,7 @@ WDFEXPORT(WdfDriverRegisterTraceInfo)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDriverRetrieveVersionString)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -442,6 +454,7 @@ WDFEXPORT(WdfDriverRetrieveVersionString)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
BOOLEAN
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDriverIsVersionAvailable)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -27,7 +27,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxFileObject.tmh"
|
||||
// #include "FxFileObject.tmh"
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -501,7 +501,7 @@ Return Value:
|
|||
break;
|
||||
|
||||
default:
|
||||
return __super::QueryInterface(Params);
|
||||
return FxNonPagedObject::QueryInterface(Params); // __super call
|
||||
}
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
|
|
|
@ -24,10 +24,10 @@ Revision History:
|
|||
--*/
|
||||
|
||||
#include "coreprivshared.hpp"
|
||||
#include "FxFileObject.hpp"
|
||||
#include "fxfileobject.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxFileObjectApi.tmh"
|
||||
// #include "FxFileObjectApi.tmh"
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -37,6 +37,7 @@ extern "C" {
|
|||
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
PUNICODE_STRING
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFileObjectGetFileName)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -93,6 +94,7 @@ Return Value:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
ULONG
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFileObjectGetFlags)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -139,6 +141,7 @@ Return Value:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFDEVICE
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFileObjectGetDevice)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -32,7 +32,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxIrpQueue.tmh"
|
||||
// #include "FxIrpQueue.tmh"
|
||||
}
|
||||
|
||||
//
|
||||
|
|
|
@ -22,7 +22,7 @@ Revision History:
|
|||
--*/
|
||||
|
||||
#include "coreprivshared.hpp"
|
||||
#include "FxLookasideList.hpp"
|
||||
#include "fxlookasidelist.hpp"
|
||||
|
||||
FxLookasideList::FxLookasideList(
|
||||
__in PFX_DRIVER_GLOBALS FxDriverGlobals,
|
||||
|
|
|
@ -22,11 +22,11 @@ Revision History:
|
|||
--*/
|
||||
|
||||
#include "coreprivshared.hpp"
|
||||
#include "FxNPagedLookasideList.hpp"
|
||||
#include "FxPagedLookasideList.hpp"
|
||||
#include "fxnpagedlookasidelist.hpp"
|
||||
#include "fxpagedlookasidelist.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxLookasideListAPI.tmh"
|
||||
// #include "FxLookasideListAPI.tmh"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
|
@ -36,6 +36,7 @@ __drv_when(PoolType == 1 || PoolType == 257, __drv_maxIRQL(APC_LEVEL))
|
|||
__drv_when(PoolType == 0 || PoolType == 256, __drv_maxIRQL(DISPATCH_LEVEL))
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfLookasideListCreate)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -235,6 +236,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfMemoryCreateFromLookaside)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -21,10 +21,10 @@ Revision History:
|
|||
--*/
|
||||
|
||||
#include "coreprivshared.hpp"
|
||||
#include "FxMemoryBuffer.hpp"
|
||||
#include "fxmemorybuffer.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxMemoryBuffer.tmh"
|
||||
// #include "FxMemoryBuffer.tmh"
|
||||
}
|
||||
|
||||
_Must_inspect_result_
|
||||
|
|
|
@ -22,10 +22,10 @@ Revision History:
|
|||
--*/
|
||||
|
||||
#include "coreprivshared.hpp"
|
||||
#include "FxMemoryBuffer.hpp"
|
||||
#include "fxmemorybuffer.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxMemoryBufferAPI.tmh"
|
||||
// #include "FxMemoryBufferAPI.tmh"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
|
@ -35,6 +35,7 @@ __drv_when(PoolType == 1 || PoolType == 257, __drv_maxIRQL(APC_LEVEL))
|
|||
__drv_when(PoolType == 0 || PoolType == 256, __drv_maxIRQL(DISPATCH_LEVEL))
|
||||
WDFAPI
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfMemoryCreate)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -164,6 +165,7 @@ Return Value:
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
PVOID
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfMemoryGetBuffer)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -207,6 +209,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfMemoryCopyToBuffer)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -285,6 +288,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfMemoryCopyFromBuffer)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -22,8 +22,8 @@ Revision History:
|
|||
--*/
|
||||
|
||||
#include "coreprivshared.hpp"
|
||||
#include "FxNPagedLookasideList.hpp"
|
||||
#include "FxMemoryBufferFromLookaside.hpp"
|
||||
#include "fxnpagedlookasidelist.hpp"
|
||||
#include "fxmemorybufferfromlookaside.hpp"
|
||||
|
||||
FxMemoryBufferFromLookaside::FxMemoryBufferFromLookaside(
|
||||
__in PFX_DRIVER_GLOBALS FxDriverGlobals,
|
||||
|
@ -215,7 +215,7 @@ Return Value:
|
|||
// within the destructor b/c then all parent objects would be destructing on
|
||||
// freed pool.
|
||||
//
|
||||
FxMemoryBufferFromLookaside::~FxMemoryBufferFromLookaside();
|
||||
this->~FxMemoryBufferFromLookaside();
|
||||
|
||||
//
|
||||
// After FxLookaside::Reclaim, this no longer points to valid memory so we
|
||||
|
@ -268,7 +268,7 @@ FxMemoryBufferFromPoolLookaside::SelfDestruct(
|
|||
//
|
||||
// Free the object itself
|
||||
//
|
||||
__super::SelfDestruct();
|
||||
FxMemoryBufferFromLookaside::SelfDestruct(); // __super call
|
||||
}
|
||||
|
||||
_Must_inspect_result_
|
||||
|
|
|
@ -21,7 +21,7 @@ Revision History:
|
|||
--*/
|
||||
|
||||
#include "coreprivshared.hpp"
|
||||
#include "FxMemoryBufferPreallocated.hpp"
|
||||
#include "fxmemorybufferpreallocated.hpp"
|
||||
|
||||
FxMemoryBufferPreallocated::FxMemoryBufferPreallocated(
|
||||
_In_ PFX_DRIVER_GLOBALS FxDriverGlobals,
|
||||
|
@ -125,7 +125,7 @@ FxMemoryBufferPreallocated::QueryInterface(
|
|||
return STATUS_SUCCESS;
|
||||
}
|
||||
else {
|
||||
return __super::QueryInterface(Params);
|
||||
return FxMemoryObject::QueryInterface(Params); // __super call
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -22,10 +22,10 @@ Revision History:
|
|||
--*/
|
||||
|
||||
#include "coreprivshared.hpp"
|
||||
#include "FxMemoryBufferPreallocated.hpp"
|
||||
#include "fxmemorybufferpreallocated.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxMemoryBufferPreallocatedAPI.tmh"
|
||||
// #include "FxMemoryBufferPreallocatedAPI.tmh"
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
|
@ -34,6 +34,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFAPI
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfMemoryCreatePreallocated)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -136,6 +137,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFAPI
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfMemoryAssignBuffer)(
|
||||
_In_
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -23,7 +23,7 @@ Revision History:
|
|||
#include "coreprivshared.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxMemoryObject.tmh"
|
||||
// #include "FxMemoryObject.tmh"
|
||||
}
|
||||
|
||||
FxMemoryObject::FxMemoryObject(
|
||||
|
|
|
@ -23,8 +23,8 @@ Revision History:
|
|||
|
||||
#include "coreprivshared.hpp"
|
||||
|
||||
#include "FxPagedLookasideList.hpp"
|
||||
#include "FxMemoryBufferFromLookaside.hpp"
|
||||
#include "fxpagedlookasidelist.hpp"
|
||||
#include "fxmemorybufferfromlookaside.hpp"
|
||||
|
||||
FxPagedLookasideListFromPool::FxPagedLookasideListFromPool(
|
||||
__in PFX_DRIVER_GLOBALS FxDriverGlobals,
|
||||
|
|
|
@ -27,16 +27,9 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxRequest.tmh"
|
||||
// #include "FxRequest.tmh"
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#define WDF_REQUEST_REUSE_MUST_COMPLETE 2
|
||||
|
||||
FxRequest::FxRequest(
|
||||
__in PFX_DRIVER_GLOBALS FxDriverGlobals,
|
||||
__in MdIrp Irp,
|
||||
|
@ -1298,13 +1291,12 @@ FxRequest::GetMemoryObject(
|
|||
NTSTATUS status;
|
||||
ULONG length;
|
||||
KIRQL irql;
|
||||
BOOLEAN mapMdl, mdlMapped;
|
||||
BOOLEAN mapMdl;
|
||||
UCHAR majorFunction;
|
||||
|
||||
status = STATUS_SUCCESS;
|
||||
length = 0x0;
|
||||
mapMdl = FALSE;
|
||||
mdlMapped = FALSE;
|
||||
irql = PASSIVE_LEVEL;
|
||||
majorFunction = m_Irp.GetMajorFunction();
|
||||
|
||||
|
@ -2146,7 +2138,6 @@ FxRequest::Reuse(
|
|||
)
|
||||
{
|
||||
FxIrp currentIrp;
|
||||
FxRequestContext* pContext;
|
||||
PFX_DRIVER_GLOBALS pFxDriverGlobals = GetDriverGlobals();
|
||||
|
||||
//
|
||||
|
@ -2177,7 +2168,6 @@ FxRequest::Reuse(
|
|||
SetCompletionRoutine(NULL, NULL);
|
||||
}
|
||||
|
||||
pContext = NULL;
|
||||
currentIrp.SetIrp(m_Irp.GetIrp());
|
||||
|
||||
if (currentIrp.GetIrp() != NULL) {
|
||||
|
@ -2743,7 +2733,7 @@ FxRequest::QueryInterface(
|
|||
// || || Fall || ||
|
||||
// \/ \/ through \/ \/
|
||||
default:
|
||||
return __super::QueryInterface(Params);
|
||||
return FxRequestBase::QueryInterface(Params); // __super call
|
||||
}
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
|
@ -3114,7 +3104,7 @@ FxRequest::Release(
|
|||
allocFromIo = IsAllocatedFromIo();
|
||||
canComplete = IsCanComplete();
|
||||
|
||||
retValue = __super::Release(Tag, Line, File);
|
||||
retValue = FxRequestBase::Release(Tag, Line, File); // __super call
|
||||
|
||||
if (reservedRequest && retValue == 1 && m_Completed) {
|
||||
//
|
||||
|
@ -3195,7 +3185,7 @@ FxRequestFromLookaside::SelfDestruct(
|
|||
//
|
||||
// Destroy the object
|
||||
//
|
||||
FxRequestFromLookaside::~FxRequestFromLookaside();
|
||||
// FxRequestFromLookaside::~FxRequestFromLookaside(); __REACTOS__
|
||||
|
||||
if (IsRequestForwardedToParent()) {
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxRequestApi.tmh"
|
||||
// #include "FxRequestApi.tmh"
|
||||
|
||||
//
|
||||
// Verifiers
|
||||
|
@ -64,6 +64,7 @@ VerifyWdfRequestForwardToParentDeviceIoQueue,
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestCreate)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -156,6 +157,7 @@ Return Value:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestCreateFromIrp)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -255,6 +257,7 @@ Return Value:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestReuse)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -326,6 +329,7 @@ Return Value:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestChangeTarget)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -379,6 +383,7 @@ FX_VF_FUNCTION(VerifyRequestComplete) (
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestComplete)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -439,6 +444,7 @@ Returns:
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestCompleteWithPriorityBoost)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -507,6 +513,7 @@ Returns:
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestCompleteWithInformation)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -574,6 +581,7 @@ Returns:
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestSetInformation)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -630,6 +638,7 @@ Returns:
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
ULONG_PTR
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestGetInformation)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -673,6 +682,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestRetrieveInputMemory)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -784,6 +794,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestRetrieveOutputMemory)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -906,6 +917,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestRetrieveInputBuffer)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1049,6 +1061,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestRetrieveOutputBuffer)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1202,6 +1215,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestRetrieveUnsafeUserInputBuffer)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1405,6 +1419,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestRetrieveUnsafeUserOutputBuffer)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1606,6 +1621,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestRetrieveInputWdmMdl)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1705,6 +1721,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestRetrieveOutputWdmMdl)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -1850,6 +1867,7 @@ Return Value:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
BOOLEAN
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestSend)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2104,6 +2122,7 @@ Return Value:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestGetStatus)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2124,6 +2143,7 @@ WDFEXPORT(WdfRequestGetStatus)(
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
BOOLEAN
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestCancelSentRequest)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2176,6 +2196,7 @@ Return Value:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(APC_LEVEL)
|
||||
BOOLEAN
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestIsFrom32BitProcess)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2221,6 +2242,7 @@ Return Value:
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestFormatRequestUsingCurrentType)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2291,6 +2313,7 @@ Return Value:
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestWdmFormatUsingStackLocation)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2371,6 +2394,7 @@ Return Value:
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestSetCompletionRoutine)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2409,6 +2433,7 @@ WDFEXPORT(WdfRequestSetCompletionRoutine)(
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestGetParameters)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2458,6 +2483,7 @@ WDFEXPORT(WdfRequestGetParameters)(
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestGetCompletionParams)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2504,6 +2530,7 @@ WDFEXPORT(WdfRequestGetCompletionParams)(
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
MdIrp
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestWdmGetIrp)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2568,6 +2595,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestAllocateTimer)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2610,6 +2638,7 @@ Return Value:
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFFILEOBJECT
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestGetFileObject)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2689,6 +2718,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestProbeAndLockUserBufferForRead)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2790,6 +2820,7 @@ _Must_inspect_result_
|
|||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestProbeAndLockUserBufferForWrite)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2888,6 +2919,7 @@ Returns:
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
KPROCESSOR_MODE
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestGetRequestorMode)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -2930,6 +2962,7 @@ Returns:
|
|||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFQUEUE
|
||||
WDFAPI
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestGetIoQueue)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -3052,6 +3085,7 @@ FX_VF_FUNCTION(VerifyWdfRequestForwardToIoQueue) (
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestForwardToIoQueue)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -3206,6 +3240,7 @@ Done:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestForwardToParentDeviceIoQueue)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -3338,6 +3373,7 @@ Done:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestRequeue)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -3396,6 +3432,7 @@ Returns:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestMarkCancelable)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -3465,6 +3502,7 @@ Returns:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestMarkCancelableEx)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -3538,6 +3576,7 @@ Returns:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestUnmarkCancelable)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -3619,6 +3658,7 @@ FX_VF_FUNCTION(VerifyWdfRequestIsCanceled)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
BOOLEAN
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestIsCanceled)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -3666,6 +3706,7 @@ Returns:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestStopAcknowledge)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -3723,6 +3764,7 @@ Returns:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
BOOLEAN
|
||||
STDCALL
|
||||
WDFEXPORT(WdfRequestIsReserved)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -26,7 +26,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxRequestBase.tmh"
|
||||
// #include "FxRequestBase.tmh"
|
||||
}
|
||||
|
||||
FxRequestBase::FxRequestBase(
|
||||
|
@ -811,7 +811,7 @@ Return Value:
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
__declspec(noreturn)
|
||||
DECLSPEC_NORETURN
|
||||
VOID
|
||||
FxRequestBase::FatalError(
|
||||
__in NTSTATUS Status
|
||||
|
|
|
@ -28,7 +28,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxRequestContext.tmh"
|
||||
// #include "FxRequestContext.tmh"
|
||||
}
|
||||
|
||||
FxRequestContext::FxRequestContext(
|
||||
|
|
|
@ -156,7 +156,7 @@ FxRequestMemory::QueryInterface(
|
|||
return STATUS_SUCCESS;
|
||||
}
|
||||
else {
|
||||
return __super::QueryInterface(Params);
|
||||
return FxMemoryBufferPreallocated::QueryInterface(Params); // __super call
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxRequestOutputBuffer.tmh"
|
||||
// #include "FxRequestOutputBuffer.tmh"
|
||||
}
|
||||
|
||||
PVOID
|
||||
|
|
|
@ -30,7 +30,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxRequestSystemBuffer.tmh"
|
||||
// #include "FxRequestSystemBuffer.tmh"
|
||||
}
|
||||
|
||||
size_t
|
||||
|
|
|
@ -26,7 +26,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxSyncRequest.tmh"
|
||||
// #include "FxSyncRequest.tmh"
|
||||
}
|
||||
|
||||
FxSyncRequest::FxSyncRequest(
|
||||
|
@ -126,7 +126,7 @@ Return Value:
|
|||
// Release the initial reference taken on create. Use the base release call
|
||||
// so that we don't unnecessarily set the event unless we have to.
|
||||
//
|
||||
count = __super::RELEASE(NULL);
|
||||
count = FxRequestBase::RELEASE(NULL); // __super call
|
||||
|
||||
//
|
||||
// For a driver supplied request(m_TrueRequest) the request context is
|
||||
|
|
|
@ -26,11 +26,11 @@ Revision History:
|
|||
|
||||
#include "coreprivshared.hpp"
|
||||
|
||||
#include "FxSystemWorkItem.hpp"
|
||||
#include "fxsystemworkitem.hpp"
|
||||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxSystemWorkItem.tmh"
|
||||
// #include "FxSystemWorkItem.tmh"
|
||||
}
|
||||
|
||||
//
|
||||
|
|
|
@ -26,11 +26,11 @@ Revision History:
|
|||
|
||||
#include "coreprivshared.hpp"
|
||||
|
||||
#include "FxTimer.hpp"
|
||||
#include "fxtimer.hpp"
|
||||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxTimer.tmh"
|
||||
// #include "FxTimer.tmh"
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -160,10 +160,12 @@ FxTimer::Initialize(
|
|||
//
|
||||
|
||||
#if (FX_CORE_MODE == FX_CORE_KERNEL_MODE)
|
||||
if (pFxDriverGlobals->IsVersionGreaterThanOrEqualTo(1,13)) {
|
||||
status = m_Timer.InitializeEx(this, FxTimer::_FxTimerExtCallbackThunk, m_Period,
|
||||
m_TolerableDelay, m_UseHighResolutionTimer);
|
||||
} else {
|
||||
// __REACTOS__ Ex timers are not supported
|
||||
// if (pFxDriverGlobals->IsVersionGreaterThanOrEqualTo(1,13)) {
|
||||
// status = m_Timer.InitializeEx(this, FxTimer::_FxTimerExtCallbackThunk, m_Period,
|
||||
// m_TolerableDelay, m_UseHighResolutionTimer);
|
||||
// } else
|
||||
{
|
||||
status = m_Timer.Initialize(this, FxTimer::_FxTimerDpcThunk, m_Period);
|
||||
}
|
||||
#else
|
||||
|
|
|
@ -25,10 +25,10 @@ Revision History:
|
|||
|
||||
#include "coreprivshared.hpp"
|
||||
|
||||
#include "FxTimer.hpp"
|
||||
#include "fxtimer.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxTimerApi.tmh"
|
||||
// #include "FxTimerApi.tmh"
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -39,6 +39,7 @@ extern "C" {
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfTimerCreate)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -199,6 +200,7 @@ Notes:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
BOOLEAN
|
||||
STDCALL
|
||||
WDFEXPORT(WdfTimerStart)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -245,6 +247,7 @@ Returns:
|
|||
__drv_when(Wait == __true, __drv_maxIRQL(PASSIVE_LEVEL))
|
||||
__drv_when(Wait == __false, __drv_maxIRQL(DISPATCH_LEVEL))
|
||||
BOOLEAN
|
||||
STDCALL
|
||||
WDFEXPORT(WdfTimerStop)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -295,6 +298,7 @@ Returns:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFOBJECT
|
||||
STDCALL
|
||||
WDFEXPORT(WdfTimerGetParentObject)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -26,7 +26,7 @@ Revision History:
|
|||
|
||||
#include "coreprivshared.hpp"
|
||||
|
||||
#include "FxWorkItem.hpp"
|
||||
#include "fxworkitem.hpp"
|
||||
|
||||
#if (FX_CORE_MODE == FX_CORE_USER_MODE)
|
||||
//
|
||||
|
@ -37,7 +37,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxWorkItem.tmh"
|
||||
// #include "FxWorkItem.tmh"
|
||||
}
|
||||
|
||||
FxWorkItem::FxWorkItem(
|
||||
|
@ -319,8 +319,8 @@ FxWorkItem::Enqueue(
|
|||
// object and Globals while they are outstanding.
|
||||
// These will be released when the workitem completes.
|
||||
//
|
||||
ADDREF(WorkItemThunk);
|
||||
pFxDriverGlobals->ADDREF(WorkItemThunk);
|
||||
ADDREF((PVOID)WorkItemThunk);
|
||||
pFxDriverGlobals->ADDREF((PVOID)WorkItemThunk);
|
||||
|
||||
enqueue = TRUE;
|
||||
}
|
||||
|
@ -436,12 +436,12 @@ Return Value:
|
|||
// Release the reference on the FxWorkItem and Globals taken when Enqueue
|
||||
// was done. This may release the FxWorkItem if it is running down.
|
||||
//
|
||||
pWorkItem->RELEASE(WorkItemThunk);
|
||||
pWorkItem->RELEASE((PVOID)WorkItemThunk);
|
||||
|
||||
//
|
||||
// This may release the driver if it is running down.
|
||||
//
|
||||
pFxDriverGlobals->RELEASE(WorkItemThunk);
|
||||
pFxDriverGlobals->RELEASE((PVOID)WorkItemThunk);
|
||||
}
|
||||
|
||||
VOID
|
||||
|
|
|
@ -25,10 +25,10 @@ Revision History:
|
|||
|
||||
#include "coreprivshared.hpp"
|
||||
|
||||
#include "FxWorkItem.hpp"
|
||||
#include "fxworkitem.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxWorkItemApi.tmh"
|
||||
// #include "FxWorkItemApi.tmh"
|
||||
}
|
||||
|
||||
|
||||
|
@ -40,6 +40,7 @@ extern "C" {
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfWorkItemCreate)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -144,6 +145,7 @@ Notes:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfWorkItemEnqueue)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -180,6 +182,7 @@ Returns:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFOBJECT
|
||||
STDCALL
|
||||
WDFEXPORT(WdfWorkItemGetParentObject)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -219,6 +222,7 @@ Returns:
|
|||
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfWorkItemFlush)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -26,7 +26,7 @@ Revision History:
|
|||
#include "fxiotarget.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxDeviceApiKm.tmh"
|
||||
// #include "FxDeviceApiKm.tmh"
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -58,6 +58,7 @@ VerifyWdfDeviceWdmDispatchIrpToIoQueue,
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFDEVICE
|
||||
STDCALL
|
||||
WDFEXPORT(WdfWdmDeviceGetWdfDeviceHandle)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -72,6 +73,7 @@ WDFEXPORT(WdfWdmDeviceGetWdfDeviceHandle)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
PDEVICE_OBJECT
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceWdmGetDeviceObject)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -91,6 +93,7 @@ WDFEXPORT(WdfDeviceWdmGetDeviceObject)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
PDEVICE_OBJECT
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceWdmGetAttachedDevice)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -111,6 +114,7 @@ WDFEXPORT(WdfDeviceWdmGetAttachedDevice)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
PDEVICE_OBJECT
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceWdmGetPhysicalDevice)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -130,6 +134,7 @@ WDFEXPORT(WdfDeviceWdmGetPhysicalDevice)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFFILEOBJECT
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceGetFileObject)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -206,6 +211,7 @@ Return Value:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceWdmDispatchPreprocessedIrp)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -316,6 +322,7 @@ FX_VF_FUNCTION(VerifyWdfDeviceWdmDispatchIrp) (
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceWdmDispatchIrp)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -361,7 +368,7 @@ Returns:
|
|||
FxPointerNotNull(device->GetDriverGlobals(), Irp);
|
||||
FxPointerNotNull(device->GetDriverGlobals(), DispatchContext);
|
||||
|
||||
if ((UCHAR)DispatchContext & FX_IN_DISPATCH_CALLBACK) {
|
||||
if ((UCHAR)(ULONG_PTR)DispatchContext & FX_IN_DISPATCH_CALLBACK) {
|
||||
//
|
||||
// Called from a dispach irp callback.
|
||||
//
|
||||
|
@ -395,6 +402,7 @@ Returns:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceWdmDispatchIrpToIoQueue)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -497,6 +505,7 @@ WDFEXPORT(WdfDeviceWdmDispatchIrpToIoQueue)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceAddDependentUsageDeviceObject)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -522,6 +531,7 @@ WDFEXPORT(WdfDeviceAddDependentUsageDeviceObject)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceRemoveDependentUsageDeviceObject)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -548,6 +558,7 @@ WDFEXPORT(WdfDeviceRemoveDependentUsageDeviceObject)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceAssignMofResourceName)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -606,6 +617,7 @@ WDFEXPORT(WdfDeviceAssignMofResourceName)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceSetSpecialFileSupport)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -646,6 +658,7 @@ WDFEXPORT(WdfDeviceSetSpecialFileSupport)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceIndicateWakeStatus)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -706,6 +719,7 @@ WDFEXPORT(WdfDeviceIndicateWakeStatus)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceSetBusInformationForChildren)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -730,6 +744,7 @@ WDFEXPORT(WdfDeviceSetBusInformationForChildren)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceAddRemovalRelationsPhysicalDevice)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -770,6 +785,7 @@ Return Value:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceRemoveRemovalRelationsPhysicalDevice)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -810,6 +826,7 @@ Return Value:
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceClearRemovalRelationsDevices)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -843,6 +860,7 @@ Return Value:
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceWdmAssignPowerFrameworkSettings)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -25,7 +25,7 @@ Revision History:
|
|||
#include "coreprivshared.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxDeviceBaseKm.tmh"
|
||||
// #include "FxDeviceBaseKm.tmh"
|
||||
}
|
||||
|
||||
_Must_inspect_result_
|
||||
|
|
|
@ -25,7 +25,7 @@ Revision History:
|
|||
#include "coreprivshared.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxDeviceInitKm.tmh"
|
||||
// #include "FxDeviceInitKm.tmh"
|
||||
}
|
||||
|
||||
VOID
|
||||
|
|
|
@ -25,7 +25,7 @@ Revision History:
|
|||
#include "coreprivshared.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxDeviceKm.tmh"
|
||||
// #include "FxDeviceKm.tmh"
|
||||
}
|
||||
|
||||
_Must_inspect_result_
|
||||
|
@ -192,10 +192,10 @@ FxDevice::FdoInitialize(
|
|||
return status;
|
||||
}
|
||||
|
||||
status = m_PkgWmi->PostCreateDeviceInitialize();
|
||||
if (!NT_SUCCESS(status)) {
|
||||
return status;
|
||||
}
|
||||
// status = m_PkgWmi->PostCreateDeviceInitialize(); __REACTOS__
|
||||
// if (!NT_SUCCESS(status)) {
|
||||
// return status;
|
||||
// }
|
||||
|
||||
status = m_PkgGeneral->PostCreateDeviceInitialize(DeviceInit);
|
||||
if (!NT_SUCCESS(status)) {
|
||||
|
@ -302,10 +302,10 @@ FxDevice::PdoInitialize(
|
|||
pPkgPdo->m_AllowForwardRequestToParent = TRUE;
|
||||
}
|
||||
|
||||
status = m_PkgWmi->PostCreateDeviceInitialize();
|
||||
if (!NT_SUCCESS(status)) {
|
||||
return status;
|
||||
}
|
||||
// status = m_PkgWmi->PostCreateDeviceInitialize(); __REACTOS__
|
||||
// if (!NT_SUCCESS(status)) {
|
||||
// return status;
|
||||
// }
|
||||
|
||||
status = m_PkgGeneral->PostCreateDeviceInitialize(DeviceInit);
|
||||
if (!NT_SUCCESS(status)) {
|
||||
|
@ -410,10 +410,10 @@ FxDevice::ControlDeviceInitialize(
|
|||
return status;
|
||||
}
|
||||
|
||||
status = m_PkgWmi->PostCreateDeviceInitialize();
|
||||
if (!NT_SUCCESS(status)) {
|
||||
return status;
|
||||
}
|
||||
// status = m_PkgWmi->PostCreateDeviceInitialize(); __REACTOS__
|
||||
// if (!NT_SUCCESS(status)) {
|
||||
// return status;
|
||||
// }
|
||||
|
||||
status = m_PkgGeneral->PostCreateDeviceInitialize(DeviceInit);
|
||||
if (!NT_SUCCESS(status)) {
|
||||
|
@ -489,7 +489,8 @@ FxDevice::WmiPkgRegister(
|
|||
VOID
|
||||
)
|
||||
{
|
||||
return m_PkgWmi->Register();
|
||||
// return m_PkgWmi->Register(); __REACTOS__
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
VOID
|
||||
|
@ -497,7 +498,7 @@ FxDevice::WmiPkgDeregister(
|
|||
VOID
|
||||
)
|
||||
{
|
||||
m_PkgWmi->Deregister();
|
||||
// m_PkgWmi->Deregister(); __REACTOS__
|
||||
}
|
||||
|
||||
VOID
|
||||
|
@ -505,7 +506,7 @@ FxDevice::WmiPkgCleanup(
|
|||
VOID
|
||||
)
|
||||
{
|
||||
m_PkgWmi->Cleanup();
|
||||
// m_PkgWmi->Cleanup(); __REACTOS__
|
||||
}
|
||||
|
||||
NTSTATUS
|
||||
|
|
|
@ -27,7 +27,7 @@ Revision History:
|
|||
// Tracing support
|
||||
extern "C" {
|
||||
#include <ntverp.h>
|
||||
#include "FxDriverApiKm.tmh"
|
||||
// #include "FxDriverApiKm.tmh"
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -38,6 +38,7 @@ extern "C" {
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDriverOpenParametersRegistryKey)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -117,6 +118,7 @@ WDFEXPORT(WdfDriverOpenParametersRegistryKey)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
PDRIVER_OBJECT
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDriverWdmGetDriverObject)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -136,6 +138,7 @@ WDFEXPORT(WdfDriverWdmGetDriverObject)(
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
WDFDRIVER
|
||||
STDCALL
|
||||
WDFEXPORT(WdfWdmDriverGetWdfDriverHandle)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -149,6 +152,7 @@ WDFEXPORT(WdfWdmDriverGetWdfDriverHandle)(
|
|||
}
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDriverMiniportUnload)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
@ -169,6 +173,7 @@ WDFEXPORT(WdfDriverMiniportUnload)(
|
|||
_Must_inspect_result_
|
||||
__drv_maxIRQL(PASSIVE_LEVEL)
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
WDFEXPORT(WdfDeviceMiniportCreate)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -29,7 +29,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxDriverKm.tmh"
|
||||
// #include "FxDriverKm.tmh"
|
||||
}
|
||||
|
||||
_Must_inspect_result_
|
||||
|
|
|
@ -22,10 +22,10 @@ Revision History:
|
|||
--*/
|
||||
|
||||
#include "coreprivshared.hpp"
|
||||
#include "FxFileObject.hpp"
|
||||
#include "fxfileobject.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "FxFileObjectApiKm.tmh"
|
||||
// #include "FxFileObjectApiKm.tmh"
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -35,6 +35,7 @@ extern "C" {
|
|||
|
||||
__drv_maxIRQL(DISPATCH_LEVEL)
|
||||
PFILE_OBJECT
|
||||
STDCALL
|
||||
WDFEXPORT(WdfFileObjectWdmGetFileObject)(
|
||||
__in
|
||||
PWDF_DRIVER_GLOBALS DriverGlobals,
|
||||
|
|
|
@ -27,7 +27,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxFileObjectKm.tmh"
|
||||
// #include "FxFileObjectKm.tmh"
|
||||
}
|
||||
|
||||
VOID
|
||||
|
|
|
@ -23,8 +23,8 @@ Revision History:
|
|||
|
||||
#include "coreprivshared.hpp"
|
||||
|
||||
#include "FxNPagedLookasideList.hpp"
|
||||
#include "FxMemoryBufferFromLookaside.hpp"
|
||||
#include "fxnpagedlookasidelist.hpp"
|
||||
#include "fxmemorybufferfromlookaside.hpp"
|
||||
|
||||
FxNPagedLookasideList::FxNPagedLookasideList(
|
||||
__in PFX_DRIVER_GLOBALS FxDriverGlobals,
|
||||
|
|
|
@ -27,7 +27,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxRequestKm.tmh"
|
||||
// #include "FxRequestKm.tmh"
|
||||
}
|
||||
|
||||
VOID
|
||||
|
@ -51,8 +51,8 @@ Return Value:
|
|||
|
||||
--*/
|
||||
{
|
||||
PWDF_REQUEST_PARAMETERS pWdfRequestParameters;
|
||||
PIO_STACK_LOCATION pIoStackLocation;
|
||||
PWDF_REQUEST_PARAMETERS pWdfRequestParameters = NULL;
|
||||
PIO_STACK_LOCATION pIoStackLocation = NULL;
|
||||
|
||||
UNREFERENCED_PARAMETER(pWdfRequestParameters);
|
||||
UNREFERENCED_PARAMETER(pIoStackLocation);
|
||||
|
|
|
@ -30,7 +30,7 @@ Revision History:
|
|||
|
||||
// Tracing support
|
||||
extern "C" {
|
||||
#include "FxRequestSystemBufferKm.tmh"
|
||||
// #include "FxRequestSystemBufferKm.tmh"
|
||||
}
|
||||
|
||||
_Must_inspect_result_
|
||||
|
|
|
@ -23,13 +23,13 @@ Revision History:
|
|||
--*/
|
||||
|
||||
#if FX_CORE_MODE==FX_CORE_KERNEL_MODE
|
||||
#include "VfPrivKm.hpp"
|
||||
#include "vfprivkm.hpp"
|
||||
#else if ((FX_CORE_MODE)==(FX_CORE_USER_MODE))
|
||||
#include "VfPrivUm.hpp"
|
||||
#include "vfprivum.hpp"
|
||||
#endif
|
||||
|
||||
extern "C" {
|
||||
#include "FxDynamics.h"
|
||||
#include "fxdynamics.h"
|
||||
}
|
||||
#include "vfeventhooks.hpp"
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@ Revision History:
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "MxMacros.h"
|
||||
#include "mxmacros.h"
|
||||
|
||||
//
|
||||
// Greater than 64 logical processors support: direct DDK to include the new
|
||||
|
@ -34,9 +34,11 @@ Revision History:
|
|||
//
|
||||
#define NT_PROCESSOR_GROUPS 1
|
||||
|
||||
#define WDF_VIOLATION ((ULONG)0x0000010DL)
|
||||
|
||||
#if (FX_CORE_MODE == FX_CORE_USER_MODE)
|
||||
#include "MxUm.h"
|
||||
#include "mxum.h"
|
||||
#elif (FX_CORE_MODE == FX_CORE_KERNEL_MODE)
|
||||
#include "MxKm.h"
|
||||
#include "mxkm.h"
|
||||
#endif
|
||||
|
||||
|
|
|
@ -66,7 +66,7 @@ public:
|
|||
m_DriverObject = DriverObject;
|
||||
}
|
||||
|
||||
PVOID
|
||||
PDRIVER_ADD_DEVICE
|
||||
GetDriverExtensionAddDevice(
|
||||
VOID
|
||||
);
|
||||
|
|
|
@ -126,6 +126,7 @@ public:
|
|||
|
||||
|
||||
static
|
||||
DECLSPEC_NORETURN
|
||||
VOID
|
||||
MxBugCheckEx(
|
||||
__in ULONG BugCheckCode,
|
||||
|
|
|
@ -14,7 +14,7 @@ Abstract:
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "MxDeviceObject.h"
|
||||
#include "mxdeviceobject.h"
|
||||
|
||||
__inline
|
||||
CCHAR
|
||||
|
@ -65,7 +65,9 @@ MxDeviceObject::GetFlags(
|
|||
VOID
|
||||
)
|
||||
{
|
||||
#ifdef _MSC_VER
|
||||
#pragma warning(disable:28129)
|
||||
#endif
|
||||
return m_DeviceObject->Flags;
|
||||
}
|
||||
|
||||
|
@ -75,7 +77,9 @@ MxDeviceObject::SetFlags(
|
|||
ULONG Flags
|
||||
)
|
||||
{
|
||||
#ifdef _MSC_VER
|
||||
#pragma warning(disable:28129)
|
||||
#endif
|
||||
m_DeviceObject->Flags = Flags;
|
||||
}
|
||||
|
||||
|
|
|
@ -18,10 +18,10 @@ typedef DRIVER_ADD_DEVICE MdDriverAddDeviceType, *MdDriverAddDevice;
|
|||
typedef DRIVER_UNLOAD MdDriverUnloadType, *MdDriverUnload;
|
||||
typedef DRIVER_DISPATCH MdDriverDispatchType, *MdDriverDispatch;
|
||||
|
||||
#include "MxDriverObject.h"
|
||||
#include "mxdriverobject.h"
|
||||
|
||||
__inline
|
||||
PVOID
|
||||
PDRIVER_ADD_DEVICE
|
||||
MxDriverObject::GetDriverExtensionAddDevice(
|
||||
VOID
|
||||
)
|
||||
|
|
|
@ -25,7 +25,7 @@ Revision History:
|
|||
|
||||
typedef KEVENT MdEvent;
|
||||
|
||||
#include "MxEvent.h"
|
||||
#include "mxevent.h"
|
||||
|
||||
__inline
|
||||
MxEvent::MxEvent()
|
||||
|
@ -49,7 +49,9 @@ MxEvent::~MxEvent()
|
|||
|
||||
__inline
|
||||
NTSTATUS
|
||||
#ifdef _MSC_VER
|
||||
#pragma prefast(suppress:__WARNING_UNMATCHED_DECL_ANNO, "_Must_inspect_result_ not needed in kernel mode as the function always succeeds");
|
||||
#endif
|
||||
MxEvent::Initialize(
|
||||
__in EVENT_TYPE Type,
|
||||
__in BOOLEAN InitialState
|
||||
|
|
|
@ -14,7 +14,7 @@ Abstract:
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "MxFileObject.h"
|
||||
#include "mxfileobject.h"
|
||||
|
||||
__inline
|
||||
PUNICODE_STRING
|
||||
|
|
|
@ -37,7 +37,7 @@ typedef PKINTERRUPT MdInterrupt;
|
|||
typedef KSERVICE_ROUTINE MdInterruptServiceRoutineType, *MdInterruptServiceRoutine;
|
||||
typedef KSYNCHRONIZE_ROUTINE MdInterruptSynchronizeRoutineType, *MdInterruptSynchronizeRoutine;
|
||||
|
||||
#include "MxGeneral.h"
|
||||
#include "mxgeneral.h"
|
||||
#include <ntstrsafe.h>
|
||||
|
||||
__inline
|
||||
|
@ -138,7 +138,9 @@ Mx::MxBugCheckEx(
|
|||
__in ULONG_PTR BugCheckParameter4
|
||||
)
|
||||
{
|
||||
#ifdef _MSC_VER
|
||||
#pragma prefast(suppress:__WARNING_USE_OTHER_FUNCTION, "KeBugCheckEx is the intent.");
|
||||
#endif
|
||||
KeBugCheckEx(
|
||||
BugCheckCode,
|
||||
BugCheckParameter1,
|
||||
|
@ -146,6 +148,8 @@ Mx::MxBugCheckEx(
|
|||
BugCheckParameter3,
|
||||
BugCheckParameter4
|
||||
);
|
||||
|
||||
UNREACHABLE;
|
||||
}
|
||||
|
||||
__inline
|
||||
|
@ -177,7 +181,9 @@ Mx::MxAssertMsg(
|
|||
UNREFERENCED_PARAMETER(Message);
|
||||
UNREFERENCED_PARAMETER(Condition);
|
||||
|
||||
ASSERTMSG(Message, Condition);
|
||||
ASSERT(Condition);
|
||||
|
||||
// ASSERTMSG(Message, Condition); TODO: wtf
|
||||
}
|
||||
|
||||
_Acquires_lock_(_Global_critical_region_)
|
||||
|
@ -524,6 +530,7 @@ Mx::MxCreateDeviceSecure(
|
|||
_Out_ MdDeviceObject *DeviceObject
|
||||
)
|
||||
{
|
||||
#ifndef __REACTOS__ // we don't have wdmsec.lib
|
||||
return IoCreateDeviceSecure(DriverObject,
|
||||
DeviceExtensionSize,
|
||||
DeviceName,
|
||||
|
@ -533,6 +540,16 @@ Mx::MxCreateDeviceSecure(
|
|||
DefaultSDDLString,
|
||||
DeviceClassGuid,
|
||||
DeviceObject);
|
||||
#else
|
||||
return IoCreateDevice(
|
||||
DriverObject,
|
||||
DeviceExtensionSize,
|
||||
DeviceName,
|
||||
DeviceType,
|
||||
DeviceCharacteristics,
|
||||
Exclusive,
|
||||
DeviceObject);
|
||||
#endif
|
||||
}
|
||||
|
||||
__inline
|
||||
|
|
|
@ -26,24 +26,24 @@ Revision History:
|
|||
#pragma once
|
||||
|
||||
#include <ntddk.h>
|
||||
#include <procgrp.h>
|
||||
#include <wdmsec.h>
|
||||
// #include <procgrp.h>
|
||||
// #include <wdmsec.h>
|
||||
|
||||
#include <wmikm.h>
|
||||
#include <ntwmi.h>
|
||||
// #include <wmikm.h>
|
||||
// #include <ntwmi.h>
|
||||
|
||||
typedef KDEFERRED_ROUTINE MdDeferredRoutineType, *MdDeferredRoutine;
|
||||
typedef EXT_CALLBACK MdExtCallbackType, *MdExtCallback;
|
||||
#define FX_DEVICEMAP_PATH L"\\REGISTRY\\MACHINE\\HARDWARE\\DEVICEMAP\\"
|
||||
|
||||
#include "MxGeneralKm.h"
|
||||
#include "MxLockKm.h"
|
||||
#include "MxPagedLockKm.h"
|
||||
#include "MxEventKm.h"
|
||||
#include "MxMemoryKm.h"
|
||||
#include "MxTimerKm.h"
|
||||
#include "MxWorkItemKm.h"
|
||||
#include "MxDriverObjectKm.h"
|
||||
#include "MxDeviceObjectKm.h"
|
||||
#include "MxFileObjectKm.h"
|
||||
#include "mxgeneralkm.h"
|
||||
#include "mxlockkm.h"
|
||||
#include "mxpagedlockkm.h"
|
||||
#include "mxeventkm.h"
|
||||
#include "mxmemorykm.h"
|
||||
#include "mxtimerkm.h"
|
||||
#include "mxworkitemkm.h"
|
||||
#include "mxdriverobjectkm.h"
|
||||
#include "mxdeviceobjectkm.h"
|
||||
#include "mxfileobjectkm.h"
|
||||
|
||||
|
|
|
@ -23,11 +23,11 @@ Revision History:
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "DbgMacros.h"
|
||||
#include "dbgmacros.h"
|
||||
|
||||
typedef KSPIN_LOCK MdLock;
|
||||
|
||||
#include "MxLock.h"
|
||||
#include "mxlock.h"
|
||||
|
||||
__inline
|
||||
MxLock::MxLock(
|
||||
|
|
|
@ -23,7 +23,7 @@ Revision History:
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "MxMemory.h"
|
||||
#include "mxmemory.h"
|
||||
|
||||
__inline
|
||||
PVOID
|
||||
|
|
|
@ -23,11 +23,11 @@ Revision History:
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "DbgMacros.h"
|
||||
#include "dbgmacros.h"
|
||||
|
||||
typedef FAST_MUTEX MdPagedLock;
|
||||
|
||||
#include "MxPagedLock.h"
|
||||
#include "mxpagedlock.h"
|
||||
|
||||
__inline
|
||||
MxPagedLock::MxPagedLock(
|
||||
|
@ -46,7 +46,9 @@ MxPagedLock::MxPagedLock(
|
|||
|
||||
__inline
|
||||
NTSTATUS
|
||||
#ifdef _MSC_VER
|
||||
#pragma prefast(suppress:__WARNING_UNMATCHED_DEFN, "_Must_inspect_result_ not needed in kernel mode as the function always succeeds");
|
||||
#endif
|
||||
MxPagedLockNoDynam::Initialize(
|
||||
)
|
||||
{
|
||||
|
|
|
@ -47,8 +47,8 @@ typedef struct _MdTimer {
|
|||
//
|
||||
BOOLEAN m_IsExtTimer;
|
||||
|
||||
#pragma warning(push)
|
||||
#pragma warning( disable: 4201 ) // nonstandard extension used : nameless struct/union
|
||||
// #pragma warning(push)
|
||||
// #pragma warning( disable: 4201 ) // nonstandard extension used : nameless struct/union
|
||||
|
||||
union {
|
||||
struct {
|
||||
|
@ -69,7 +69,7 @@ typedef struct _MdTimer {
|
|||
};
|
||||
};
|
||||
|
||||
#pragma warning(pop)
|
||||
// #pragma warning(pop)
|
||||
|
||||
//
|
||||
// Context to be passed in to the callback function
|
||||
|
@ -78,7 +78,7 @@ typedef struct _MdTimer {
|
|||
|
||||
} MdTimer;
|
||||
|
||||
#include "MxTimer.h"
|
||||
#include "mxtimer.h"
|
||||
|
||||
MxTimer::MxTimer(
|
||||
VOID
|
||||
|
@ -94,25 +94,28 @@ MxTimer::~MxTimer(
|
|||
VOID
|
||||
)
|
||||
{
|
||||
BOOLEAN wasCancelled;
|
||||
// __REACTOS__ Ex timers are not supported
|
||||
// BOOLEAN wasCancelled;
|
||||
|
||||
if (m_Timer.m_IsExtTimer &&
|
||||
m_Timer.m_KernelExTimer) {
|
||||
wasCancelled = ExDeleteTimer(m_Timer.m_KernelExTimer,
|
||||
TRUE, // Cancel if pending. We don't expect
|
||||
// it to be pending though
|
||||
FALSE,// Wait
|
||||
NULL);
|
||||
//
|
||||
// Timer should not have been pending
|
||||
//
|
||||
ASSERT(wasCancelled == FALSE);
|
||||
m_Timer.m_KernelExTimer = NULL;
|
||||
}
|
||||
// if (m_Timer.m_IsExtTimer &&
|
||||
// m_Timer.m_KernelExTimer) {
|
||||
// wasCancelled = ExDeleteTimer(m_Timer.m_KernelExTimer,
|
||||
// TRUE, // Cancel if pending. We don't expect
|
||||
// // it to be pending though
|
||||
// FALSE,// Wait
|
||||
// NULL);
|
||||
// //
|
||||
// // Timer should not have been pending
|
||||
// //
|
||||
// ASSERT(wasCancelled == FALSE);
|
||||
// m_Timer.m_KernelExTimer = NULL;
|
||||
// }
|
||||
}
|
||||
|
||||
NTSTATUS
|
||||
#ifdef _MSC_VER
|
||||
#pragma prefast(suppress:__WARNING_UNMATCHED_DECL_ANNO, "_Must_inspect_result_ not needed in kernel mode as the function always succeeds");
|
||||
#endif
|
||||
MxTimer::Initialize(
|
||||
__in_opt PVOID TimerContext,
|
||||
__in MdDeferredRoutine TimerCallback,
|
||||
|
@ -166,37 +169,38 @@ Returns:
|
|||
--*/
|
||||
|
||||
{
|
||||
NTSTATUS status;
|
||||
ULONG attributes = 0;
|
||||
// NTSTATUS status;
|
||||
// ULONG attributes = 0;
|
||||
|
||||
m_Timer.m_TimerContext = TimerContext;
|
||||
m_Timer.m_ExTimerCallback = TimerCallback;
|
||||
m_Timer.m_Period = Period;
|
||||
// m_Timer.m_TimerContext = TimerContext;
|
||||
// m_Timer.m_ExTimerCallback = TimerCallback;
|
||||
// m_Timer.m_Period = Period;
|
||||
|
||||
if (TolerableDelay != 0) {
|
||||
// if (TolerableDelay != 0) {
|
||||
|
||||
attributes |= EX_TIMER_NO_WAKE;
|
||||
// attributes |= EX_TIMER_NO_WAKE;
|
||||
|
||||
} else if (UseHighResolutionTimer) {
|
||||
// } else if (UseHighResolutionTimer) {
|
||||
|
||||
attributes |= EX_TIMER_HIGH_RESOLUTION;
|
||||
}
|
||||
// attributes |= EX_TIMER_HIGH_RESOLUTION;
|
||||
// }
|
||||
|
||||
m_Timer.m_KernelExTimer = ExAllocateTimer(m_Timer.m_ExTimerCallback,
|
||||
TimerContext,
|
||||
attributes);
|
||||
if (m_Timer.m_KernelExTimer) {
|
||||
// m_Timer.m_KernelExTimer = ExAllocateTimer(m_Timer.m_ExTimerCallback,
|
||||
// TimerContext,
|
||||
// attributes);
|
||||
// if (m_Timer.m_KernelExTimer) {
|
||||
|
||||
status = STATUS_SUCCESS;
|
||||
// status = STATUS_SUCCESS;
|
||||
|
||||
} else {
|
||||
// } else {
|
||||
|
||||
status = STATUS_INSUFFICIENT_RESOURCES;
|
||||
}
|
||||
// status = STATUS_INSUFFICIENT_RESOURCES;
|
||||
// }
|
||||
|
||||
m_Timer.m_IsExtTimer = TRUE;
|
||||
// m_Timer.m_IsExtTimer = TRUE;
|
||||
|
||||
return status;
|
||||
// return status;
|
||||
return STATUS_NOT_IMPLEMENTED; // __REACTOS__ Ex timers are not supported
|
||||
}
|
||||
|
||||
|
||||
|
@ -208,29 +212,29 @@ MxTimer::StartWithReturn(
|
|||
)
|
||||
{
|
||||
if (m_Timer.m_IsExtTimer) {
|
||||
// __REACTOS__ Ex timers are not supported
|
||||
// EXT_SET_PARAMETERS parameters;
|
||||
|
||||
EXT_SET_PARAMETERS parameters;
|
||||
// ExInitializeSetTimerParameters(¶meters);
|
||||
|
||||
ExInitializeSetTimerParameters(¶meters);
|
||||
|
||||
//
|
||||
// We get the delay in ms but the underlying API needs it in 100 ns
|
||||
// units. Convert tolerable delay from ms to 100 ns. However,
|
||||
// MAXULONG (TolerableDelayUnlimited) has a special meaning that the
|
||||
// system should never be woken up, so we assign the corresponding
|
||||
// special value for Ex timers
|
||||
//
|
||||
if (TolerableDelay == TolerableDelayUnlimited) {
|
||||
parameters.NoWakeTolerance = EX_TIMER_UNLIMITED_TOLERANCE;
|
||||
} else {
|
||||
parameters.NoWakeTolerance = ((LONGLONG) TolerableDelay) * 10 * 1000;
|
||||
}
|
||||
|
||||
return ExSetTimer(m_Timer.m_KernelExTimer,
|
||||
DueTime.QuadPart,
|
||||
(((LONGLONG) m_Timer.m_Period) * 10 * 1000),
|
||||
¶meters);
|
||||
// //
|
||||
// // We get the delay in ms but the underlying API needs it in 100 ns
|
||||
// // units. Convert tolerable delay from ms to 100 ns. However,
|
||||
// // MAXULONG (TolerableDelayUnlimited) has a special meaning that the
|
||||
// // system should never be woken up, so we assign the corresponding
|
||||
// // special value for Ex timers
|
||||
// //
|
||||
// if (TolerableDelay == TolerableDelayUnlimited) {
|
||||
// parameters.NoWakeTolerance = EX_TIMER_UNLIMITED_TOLERANCE;
|
||||
// } else {
|
||||
// parameters.NoWakeTolerance = ((LONGLONG) TolerableDelay) * 10 * 1000;
|
||||
// }
|
||||
|
||||
// return ExSetTimer(m_Timer.m_KernelExTimer,
|
||||
// DueTime.QuadPart,
|
||||
// (((LONGLONG) m_Timer.m_Period) * 10 * 1000),
|
||||
// ¶meters);
|
||||
return FALSE;
|
||||
} else {
|
||||
|
||||
return KeSetCoalescableTimer(&(m_Timer.KernelTimer),
|
||||
|
@ -273,7 +277,8 @@ MxTimer::Stop(
|
|||
BOOLEAN bRetVal;
|
||||
|
||||
if (m_Timer.m_IsExtTimer) {
|
||||
bRetVal = ExCancelTimer(m_Timer.m_KernelExTimer, NULL);
|
||||
bRetVal = FALSE;
|
||||
// bRetVal = ExCancelTimer(m_Timer.m_KernelExTimer, NULL); // __REACTOS__ Ex timers are not supported
|
||||
|
||||
} else {
|
||||
bRetVal = KeCancelTimer(&(m_Timer.KernelTimer));
|
||||
|
|
|
@ -26,7 +26,7 @@ Revision History:
|
|||
typedef IO_WORKITEM_ROUTINE MX_WORKITEM_ROUTINE, *PMX_WORKITEM_ROUTINE;
|
||||
typedef PIO_WORKITEM MdWorkItem;
|
||||
|
||||
#include "MxWorkItem.h"
|
||||
#include "mxworkitem.h"
|
||||
|
||||
__inline
|
||||
MxWorkItem::MxWorkItem(
|
||||
|
|
|
@ -45,8 +45,6 @@ typedef PVOID PIO_REMOVE_LOCK;
|
|||
|
||||
#include "wdmdefs.h"
|
||||
|
||||
#define WDF_VIOLATION ((ULONG)0x0000010DL)
|
||||
|
||||
#define FX_PLUGPLAY_REGKEY_DEVICEMAP 0x8
|
||||
|
||||
//
|
||||
|
|
|
@ -68,6 +68,9 @@ Revision History:
|
|||
#define TRACINGDRIVER 0x00001000
|
||||
#define TRACINGPNPPOWERSTATES 0x00002000
|
||||
|
||||
#define TRACINGDMA 0x00004000 // __REACTOS__
|
||||
#define TRACINGIOTARGET 0x00008000 // __REACTOS__
|
||||
|
||||
extern "C" {
|
||||
void
|
||||
__cdecl
|
||||
|
@ -93,7 +96,9 @@ DoTraceLevelMessage (
|
|||
#define WPP_CLEANUP(DriverObject)
|
||||
#endif
|
||||
|
||||
extern "C" {
|
||||
extern ULONG DebugLevel;
|
||||
extern ULONG DebugFlag;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -28,7 +28,7 @@ Revision History:
|
|||
#define _FXCALLBACKMUTEXLOCK_H_
|
||||
|
||||
extern "C" {
|
||||
#include "FxCallbackMutexLock.hpp.tmh"
|
||||
// #include "FxCallbackMutexLock.hpp.tmh"
|
||||
}
|
||||
|
||||
class FxCallbackMutexLock : public FxCallbackLock {
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#ifndef _FXCXDEVICEINFO_H_
|
||||
#define _FXCXDEVICEINFO_H_
|
||||
|
||||
#include "FxDeviceCallbacks.hpp"
|
||||
#include "fxdevicecallbacks.hpp"
|
||||
|
||||
struct FxCxDeviceInfo : public FxStump {
|
||||
FxCxDeviceInfo(PFX_DRIVER_GLOBALS FxDriverGlobals) :
|
||||
|
|
|
@ -91,5 +91,5 @@ public:
|
|||
FxCxDeviceInfo* CxDeviceInfo;
|
||||
};
|
||||
|
||||
#endif __FXCXDEVICEINIT_HPP__
|
||||
#endif // __FXCXDEVICEINIT_HPP__
|
||||
|
||||
|
|
|
@ -25,9 +25,9 @@ Revision History:
|
|||
#ifndef _FXDEVICE_H_
|
||||
#define _FXDEVICE_H_
|
||||
|
||||
#include "FxCxDeviceInit.hpp"
|
||||
#include "FxDeviceInit.hpp"
|
||||
#include "FxTelemetry.hpp"
|
||||
#include "fxcxdeviceinit.hpp"
|
||||
#include "fxdeviceinit.hpp"
|
||||
#include "fxtelemetry.hpp"
|
||||
|
||||
struct FxWdmDeviceExtension {
|
||||
#if (FX_CORE_MODE == FX_CORE_USER_MODE)
|
||||
|
@ -1022,6 +1022,7 @@ public:
|
|||
static
|
||||
_Must_inspect_result_
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
Dispatch(
|
||||
__in MdDeviceObject DeviceObject,
|
||||
__in MdIrp OriginalIrp
|
||||
|
@ -1065,6 +1066,7 @@ public:
|
|||
static
|
||||
_Must_inspect_result_
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
DispatchWithLock(
|
||||
__in MdDeviceObject DeviceObject,
|
||||
__in MdIrp OriginalIrp
|
||||
|
@ -1470,7 +1472,7 @@ public:
|
|||
//
|
||||
ASSERT(m_DeviceObjectDeleted);
|
||||
|
||||
__super::DeleteObject();
|
||||
FxDeviceBase::DeleteObject(); // __super call
|
||||
}
|
||||
|
||||
_Must_inspect_result_
|
||||
|
@ -1761,6 +1763,7 @@ public:
|
|||
|
||||
static
|
||||
VOID
|
||||
STDCALL
|
||||
_InterfaceReferenceNoOp(
|
||||
__in_opt PVOID Context
|
||||
)
|
||||
|
@ -1771,6 +1774,7 @@ public:
|
|||
|
||||
static
|
||||
VOID
|
||||
STDCALL
|
||||
_InterfaceDereferenceNoOp(
|
||||
__in_opt PVOID Context
|
||||
)
|
||||
|
@ -1795,7 +1799,7 @@ public:
|
|||
VOID
|
||||
)
|
||||
{
|
||||
LogDeviceStartTelemetryEvent(GetDriverGlobals(), this);
|
||||
// LogDeviceStartTelemetryEvent(GetDriverGlobals(), this); __REACTOS__ : no-op
|
||||
}
|
||||
|
||||
virtual
|
||||
|
@ -2288,9 +2292,9 @@ public:
|
|||
};
|
||||
|
||||
#if (FX_CORE_MODE==FX_CORE_KERNEL_MODE)
|
||||
#include "FxDeviceKm.hpp"
|
||||
#include "fxdevicekm.hpp"
|
||||
#else
|
||||
#include "FxDeviceUm.hpp"
|
||||
#include "fxdeviceum.hpp"
|
||||
#endif
|
||||
|
||||
|
||||
|
|
|
@ -78,7 +78,7 @@ struct FdoInit {
|
|||
|
||||
|
||||
|
||||
#include "FxDeviceInitShared.hpp"
|
||||
#include "fxdeviceinitshared.hpp"
|
||||
|
||||
struct ControlInit {
|
||||
ControlInit(
|
||||
|
@ -327,4 +327,4 @@ public:
|
|||
|
||||
};
|
||||
|
||||
#endif __FXDEVICEINIT_HPP__
|
||||
#endif // __FXDEVICEINIT_HPP__
|
||||
|
|
|
@ -49,6 +49,7 @@ struct FxDeviceText : public FxStump {
|
|||
}
|
||||
|
||||
static
|
||||
void
|
||||
_CleanupList(
|
||||
__inout PSINGLE_LIST_ENTRY Head
|
||||
)
|
||||
|
|
|
@ -25,7 +25,7 @@ Revision History:
|
|||
#ifndef _FXDRIVER_H_
|
||||
#define _FXDRIVER_H_
|
||||
|
||||
#include "FxDriverCallbacks.hpp"
|
||||
#include "fxdrivercallbacks.hpp"
|
||||
|
||||
|
||||
//
|
||||
|
@ -46,7 +46,7 @@ struct FxTraceInfo {
|
|||
// Unique value to retrieve the FxDriver* from the MdDriverObject. Use a value
|
||||
// that is not exposed to the driver writer through the dispatch table or WDM.
|
||||
//
|
||||
#define FX_DRIVER_ID (FxDriver::GetFxDriver)
|
||||
#define FX_DRIVER_ID ((PVOID)FxDriver::GetFxDriver)
|
||||
|
||||
//
|
||||
// The following are support classes for FxDriver
|
||||
|
@ -321,7 +321,7 @@ public:
|
|||
break;
|
||||
|
||||
default:
|
||||
return __super::QueryInterface(Params);
|
||||
return FxNonPagedObject::QueryInterface(Params); // __super call
|
||||
}
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
|
@ -340,7 +340,7 @@ public:
|
|||
//
|
||||
ASSERT(Mx::MxGetCurrentIrql() == PASSIVE_LEVEL);
|
||||
|
||||
__super::DeleteObject();
|
||||
FxNonPagedObject::DeleteObject(); // __super call
|
||||
}
|
||||
|
||||
virtual
|
||||
|
|
|
@ -117,9 +117,11 @@ class FxWorkItem;
|
|||
class IFxHasCallbacks;
|
||||
class IFxMemory;
|
||||
|
||||
enum FxObjectType;
|
||||
enum FxWmiInstanceAction;
|
||||
enum FxObjectType : UINT32;
|
||||
enum FxWmiInstanceAction : UINT32;
|
||||
enum FxDriverObjectUmFlags : USHORT;
|
||||
enum FxWakeInterruptEvents : UINT32;
|
||||
|
||||
|
||||
PVOID
|
||||
FxObjectHandleAlloc(
|
||||
|
@ -133,7 +135,7 @@ FxObjectHandleAlloc(
|
|||
);
|
||||
|
||||
#if (FX_CORE_MODE==FX_CORE_USER_MODE)
|
||||
#include "FxForwardUm.hpp"
|
||||
#include "fxforwardum.hpp"
|
||||
#endif
|
||||
|
||||
#endif // _FXFORWARD_HPP_
|
||||
|
|
|
@ -46,6 +46,11 @@ Revision History:
|
|||
#define _FXGLOBALS_H
|
||||
|
||||
#include "wdfglobals.h"
|
||||
#include <debug.h>
|
||||
|
||||
// REACTOS
|
||||
#define ROSWDFNOTIMPLEMENTED (DbgPrint("(%s:%d) ReactOS KMDF: %s not implemented\n", __RELFILE__, __LINE__, __FUNCTION__))
|
||||
// REACTOS
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -68,7 +73,7 @@ typedef enum FxTrackPowerOption : UCHAR {
|
|||
FxTrackPowerRefs,
|
||||
FxTrackPowerRefsAndStack,
|
||||
FxTrackPowerMaxValue
|
||||
};
|
||||
} FxTrackPowerOption;
|
||||
|
||||
typedef enum FxVerifierDownlevelOption {
|
||||
NotOkForDownLevel = 0,
|
||||
|
@ -847,13 +852,15 @@ struct FxLibraryGlobalsType {
|
|||
// tracing of WDF operations. The size member of this structure
|
||||
// allows versioning across multiple OS versions.
|
||||
//
|
||||
PWMI_WDF_NOTIFY_ROUTINES PerfTraceRoutines;
|
||||
//PWMI_WDF_NOTIFY_ROUTINES PerfTraceRoutines; __REACTOS__
|
||||
PVOID PerfTraceRoutines;
|
||||
|
||||
//
|
||||
// PerfTraceRoutines points here if the SystemTraceProvider failed
|
||||
// to provide trace routines.
|
||||
//
|
||||
WMI_WDF_NOTIFY_ROUTINES DummyPerfTraceRoutines;
|
||||
//WMI_WDF_NOTIFY_ROUTINES DummyPerfTraceRoutines; __REACTOS__
|
||||
PVOID DummyPerfTraceRoutines;
|
||||
|
||||
#endif
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@ Revision History:
|
|||
#ifndef _FXINTERRUPT_H_
|
||||
#define _FXINTERRUPT_H_
|
||||
|
||||
#include "FxWakeInterruptStateMachine.hpp"
|
||||
#include "fxwakeinterruptstatemachine.hpp"
|
||||
|
||||
//
|
||||
// We need two parameters for KeSynchronizeExecution when enabling
|
||||
|
@ -271,7 +271,7 @@ public:
|
|||
|
||||
_Must_inspect_result_
|
||||
NTSTATUS
|
||||
FxInterrupt::CreateWakeInterruptMachine(
|
||||
CreateWakeInterruptMachine(
|
||||
VOID
|
||||
);
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ Revision History:
|
|||
#ifndef _FXIOQUEUE_H_
|
||||
#define _FXIOQUEUE_H_
|
||||
|
||||
#include "FxIoQueueCallbacks.hpp"
|
||||
#include "fxioqueuecallbacks.hpp"
|
||||
|
||||
extern "C" {
|
||||
#if defined(EVENT_TRACING)
|
||||
|
@ -1089,7 +1089,7 @@ public:
|
|||
break;
|
||||
|
||||
default:
|
||||
return __super::QueryInterface(Params);
|
||||
return FxNonPagedObject::QueryInterface(Params); // __super call
|
||||
}
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
|
@ -1230,7 +1230,7 @@ public:
|
|||
return CONTAINING_RECORD(Entry, FxIoQueue, m_PowerSListEntry);
|
||||
}
|
||||
|
||||
__declspec(noreturn)
|
||||
DECLSPEC_NORETURN
|
||||
VOID
|
||||
FatalError(
|
||||
__in NTSTATUS Status
|
||||
|
@ -1705,9 +1705,9 @@ protected:
|
|||
};
|
||||
|
||||
#if (FX_CORE_MODE==FX_CORE_KERNEL_MODE)
|
||||
#include "FxIoQueueKm.hpp"
|
||||
#include "fxioqueuekm.hpp"
|
||||
#else
|
||||
#include "FxIoQueueUm.hpp"
|
||||
#include "fxioqueueum.hpp"
|
||||
#endif
|
||||
|
||||
|
||||
|
|
|
@ -155,7 +155,7 @@ struct FxInternalIoctlOthersContext : public FxRequestContext {
|
|||
}
|
||||
}
|
||||
|
||||
__super::ReleaseAndRestore(Request);
|
||||
FxRequestContext::ReleaseAndRestore(Request); // __super call
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -165,7 +165,7 @@ private:
|
|||
__in FxRequestBuffer* Buffer
|
||||
)
|
||||
{
|
||||
__super::StoreAndReferenceMemory(Buffer);
|
||||
FxRequestContext::StoreAndReferenceMemory(Buffer); // __super call
|
||||
}
|
||||
|
||||
public:
|
||||
|
@ -958,9 +958,9 @@ protected:
|
|||
|
||||
|
||||
#if ((FX_CORE_MODE)==(FX_CORE_KERNEL_MODE))
|
||||
#include "FxIoTargetKm.hpp"
|
||||
#else if ((FX_CORE_MODE)==(FX_CORE_USER_MODE))
|
||||
#include "FxIoTargetUm.hpp"
|
||||
#include "fxiotargetkm.hpp"
|
||||
#elif ((FX_CORE_MODE)==(FX_CORE_USER_MODE))
|
||||
#include "fxiotargetum.hpp"
|
||||
#endif
|
||||
|
||||
#endif //_FXIOTARGET_H_
|
||||
|
|
|
@ -311,13 +311,13 @@ protected:
|
|||
return STATUS_SUCCESS;
|
||||
}
|
||||
else {
|
||||
return __super::QueryInterface(Params);
|
||||
return FxIoTarget::QueryInterface(Params); // __super call
|
||||
}
|
||||
}
|
||||
|
||||
_Must_inspect_result_
|
||||
NTSTATUS
|
||||
FxIoTargetRemote::OpenLocalTargetByFile(
|
||||
OpenLocalTargetByFile(
|
||||
_In_ PWDF_IO_TARGET_OPEN_PARAMS OpenParams
|
||||
);
|
||||
|
||||
|
@ -432,9 +432,9 @@ protected:
|
|||
};
|
||||
|
||||
#if (FX_CORE_MODE == FX_CORE_KERNEL_MODE)
|
||||
#include "FxIoTargetRemoteKm.hpp"
|
||||
#include "fxiotargetremotekm.hpp"
|
||||
#else
|
||||
#include "FxIoTargetRemoteUm.hpp"
|
||||
#include "fxiotargetremoteum.hpp"
|
||||
#endif
|
||||
|
||||
#endif // _FXIOTARGETREMOTE_H_
|
||||
|
|
|
@ -20,72 +20,33 @@ Environment:
|
|||
|
||||
Revision History:
|
||||
|
||||
--*/
|
||||
|
||||
#ifndef _FXIRP_HPP_
|
||||
#define _FXIRP_HPP_
|
||||
|
||||
class FxIrp {
|
||||
|
||||
friend struct FxAutoIrp;
|
||||
|
||||
private:
|
||||
MdIrp m_Irp;
|
||||
|
||||
public:
|
||||
|
||||
FxIrp() {}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
FxIrp(MdIrp irp) : m_Irp(irp)
|
||||
{
|
||||
}
|
||||
|
||||
// A function for when not assigning
|
||||
|
||||
MdIrp
|
||||
SetIrp(
|
||||
MdIrp irp
|
||||
);
|
||||
|
||||
MdIrp
|
||||
GetIrp(
|
||||
VOID
|
||||
|
@ -743,6 +704,7 @@ private:
|
|||
|
||||
static
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
_IrpSynchronousCompletion(
|
||||
__in MdDeviceObject DeviceObject,
|
||||
__in MdIrp OriginalIrp,
|
||||
|
@ -841,4 +803,4 @@ struct FxAutoIrp : public FxIrp {
|
|||
~FxAutoIrp();
|
||||
};
|
||||
|
||||
#endif // _FXIRP_H_
|
||||
#endif // _FXIRP_HPP_
|
||||
|
|
|
@ -31,9 +31,9 @@ Revision History:
|
|||
#define _FXIRPQUEUE_H_
|
||||
|
||||
#if (FX_CORE_MODE == FX_CORE_KERNEL_MODE)
|
||||
#include "FxIrpKm.hpp"
|
||||
#include "fxirpkm.hpp"
|
||||
#else
|
||||
#include "FxIrpUm.hpp"
|
||||
#include "fxirpum.hpp"
|
||||
#endif
|
||||
|
||||
|
||||
|
@ -52,9 +52,9 @@ Revision History:
|
|||
#define FX_IRP_QUEUE_ENTRY_IDENTIFIER 1
|
||||
|
||||
#if ((FX_CORE_MODE)==(FX_CORE_KERNEL_MODE))
|
||||
#include "FxIrpKm.hpp"
|
||||
#else if ((FX_CORE_MODE)==(FX_CORE_USER_MODE))
|
||||
#include "FxIrpUm.hpp"
|
||||
#include "fxirpkm.hpp"
|
||||
#elif ((FX_CORE_MODE)==(FX_CORE_USER_MODE))
|
||||
#include "fxirpum.hpp"
|
||||
#endif
|
||||
|
||||
|
||||
|
|
|
@ -218,7 +218,7 @@ WdfRegisterLibrary(
|
|||
#pragma alloc_text (PAGE, WdfVersionBind)
|
||||
#pragma alloc_text (PAGE, WdfVersionUnbind)
|
||||
#pragma alloc_text (PAGE, WdfRegisterLibrary)
|
||||
#pragma alloc_text (PAGE, WdfRegisterClassLibrary)
|
||||
// #pragma alloc_text (PAGE, WdfRegisterClassLibrary)
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
@ -246,4 +246,4 @@ WdfRegisterLibrary(
|
|||
TraceLoggingWideString(ClientImageName, "ClientImageName" ) \
|
||||
);
|
||||
|
||||
#endif __FXLDR_H__
|
||||
#endif // __FXLDR_H__
|
||||
|
|
|
@ -22,14 +22,14 @@
|
|||
|
||||
|
||||
|
||||
#if defined(_M_ARM)
|
||||
#if defined(_M_ARM) || defined(__REACTOS__)
|
||||
#define FX_VF_PAGING
|
||||
#else
|
||||
#define FX_VF_PAGING __declspec(code_seg(FX_VF_SECTION_NAME_QUOTED(WDF_FX_VF_SECTION_NAME)))
|
||||
#endif
|
||||
|
||||
#define FX_VF_NAME_TO_IMP_NAME( fnName ) Vf_##fnName
|
||||
#define FX_VF_NAME_TO_SCOPED_IMP_NAME( classname, fnName ) classname##::Vf_##fnName
|
||||
#define FX_VF_NAME_TO_SCOPED_IMP_NAME( classname, fnName ) classname::Vf_##fnName
|
||||
#define FX_VF_QF_VOID
|
||||
#define FX_VF_QF_NTSTATUS _Must_inspect_result_
|
||||
#define FX_VF_DEFAULT_RT_VOID
|
||||
|
|
|
@ -88,4 +88,4 @@ FxIrpMdlFree(
|
|||
#define IoAllocateMdl use_FxMdlAllocate_instead
|
||||
#define IoFreeMdl use_FxMdlFree_instead
|
||||
|
||||
#endif __FXMDL_H__
|
||||
#endif // __FXMDL_H__
|
||||
|
|
|
@ -189,7 +189,7 @@ protected:
|
|||
return STATUS_SUCCESS;
|
||||
|
||||
default:
|
||||
return __super::QueryInterface(Params);
|
||||
return FxObject::QueryInterface(Params); // __super call
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@ Revision History:
|
|||
extern "C" {
|
||||
#include "mx.h"
|
||||
}
|
||||
#include "FxMacros.hpp"
|
||||
#include "fxmacros.hpp"
|
||||
|
||||
#if (FX_CORE_MODE == FX_CORE_USER_MODE)
|
||||
//
|
||||
|
@ -81,15 +81,15 @@ extern const WDFFUNC *WdfFunctions;
|
|||
|
||||
#include "wdfcore.h"
|
||||
#include "wdfdevice.h"
|
||||
#include "wdfdevicepri.h"
|
||||
#include "wdfiotargetpri.h"
|
||||
// #include "wdfdevicepri.h"
|
||||
// #include "wdfiotargetpri.h"
|
||||
#include "wdfdriver.h"
|
||||
|
||||
#include "wdfmemory.h"
|
||||
|
||||
#include "wdfrequest.h"
|
||||
#include "wdfwmi.h"
|
||||
#include "wdfChildList.h"
|
||||
#include "wdfchildlist.h"
|
||||
#include "wdfpdo.h"
|
||||
#include "wdffdo.h"
|
||||
#include "wdfiotarget.h"
|
||||
|
@ -113,9 +113,9 @@ extern const WDFFUNC *WdfFunctions;
|
|||
#include "wdfhid.h"
|
||||
#endif
|
||||
|
||||
#pragma warning(disable:4200) // suppress nameless struct/union warning
|
||||
#pragma warning(disable:4201) // suppress nameless struct/union warning
|
||||
#pragma warning(disable:4214) // suppress bit field types other than int warning
|
||||
// #pragma warning(disable:4200) // suppress nameless struct/union warning
|
||||
// #pragma warning(disable:4201) // suppress nameless struct/union warning
|
||||
// #pragma warning(disable:4214) // suppress bit field types other than int warning
|
||||
#include <usb.h>
|
||||
#include <usbspec.h>
|
||||
#include "wdfusb.h"
|
||||
|
@ -160,7 +160,7 @@ typedef struct _WDF_OBJECT_CONTEXT_TYPE_INFO_V1_0 {
|
|||
|
||||
typedef struct _WDF_OBJECT_CONTEXT_TYPE_INFO_V1_0 *PWDF_OBJECT_CONTEXT_TYPE_INFO_V1_0;
|
||||
|
||||
#include "cobbled.hpp"
|
||||
// #include "cobbled.hpp"
|
||||
|
||||
} //extern "C"
|
||||
|
||||
|
@ -187,10 +187,10 @@ typedef enum _TRACE_INFORMATION_CLASS {
|
|||
#include <wmium.h>
|
||||
#endif // FX_CORE_MODE==FX_CORE_USER_MODE
|
||||
|
||||
#include "FxForward.hpp"
|
||||
#include "fxforward.hpp"
|
||||
|
||||
#if (FX_CORE_MODE == FX_CORE_USER_MODE)
|
||||
#include "HostFxUtil.h"
|
||||
#include "hostfxutil.h"
|
||||
#include "wdfplatform.h"
|
||||
#include "wdfplatformimpl.h"
|
||||
#include "debug.h"
|
||||
|
@ -198,187 +198,187 @@ typedef enum _TRACE_INFORMATION_CLASS {
|
|||
#include "wudfx_namespace_on.h"
|
||||
#include "wudfx.h"
|
||||
#include "wudfx_namespace_off.h"
|
||||
#include "DriverFrameworks-UserMode-UmEvents.h"
|
||||
#include "driverframeworks-usermode-umevents.h"
|
||||
#endif
|
||||
|
||||
#include "fxtypedefs.hpp"
|
||||
|
||||
#if defined(EVENT_TRACING)
|
||||
#include "fxwmicompat.h"
|
||||
#include "FxTrace.h"
|
||||
#include "fxtrace.h"
|
||||
#else
|
||||
#include "DbgTrace.h"
|
||||
#include "dbgtrace.h"
|
||||
#endif // EVENT_TRACING
|
||||
|
||||
#include "FxTypes.h"
|
||||
#include "fxtypes.h"
|
||||
#include "fxrequestcontexttypes.h"
|
||||
#include "FxPool.h"
|
||||
#include "fxpool.h"
|
||||
|
||||
#if (FX_CORE_MODE==FX_CORE_KERNEL_MODE)
|
||||
#include "FxGlobalsKm.h"
|
||||
#include "FxPerfTraceKm.hpp"
|
||||
#include "DriverFrameworks-KernelMode-KmEvents.h"
|
||||
#include "fxglobalskm.h"
|
||||
#include "fxperftracekm.hpp"
|
||||
// #include "DriverFrameworks-KernelMode-KmEvents.h"
|
||||
#else
|
||||
#include "FxGlobalsUm.h"
|
||||
#include "fxglobalsum.h"
|
||||
#endif
|
||||
#include "FxPoolInlines.hpp"
|
||||
#include "fxpoolinlines.hpp"
|
||||
#include "fxverifier.h"
|
||||
#if (FX_CORE_MODE==FX_CORE_KERNEL_MODE)
|
||||
#include "FxVerifierKm.h"
|
||||
#include "fxverifierkm.h"
|
||||
#else
|
||||
#include "FxVerifierUm.h"
|
||||
#include "fxverifierum.h"
|
||||
#include "device_common.h"
|
||||
#endif
|
||||
#if (FX_CORE_MODE==FX_CORE_KERNEL_MODE)
|
||||
#include "FxMdl.h"
|
||||
#include "fxmdl.h"
|
||||
#endif
|
||||
|
||||
#include "FxProbeAndLock.h"
|
||||
#include "fxprobeandlock.h"
|
||||
//#include "FxPerfTraceKm.hpp"
|
||||
//#include <NtStrSafe.h>
|
||||
|
||||
#include "FxStump.hpp"
|
||||
#include "FxRequestBuffer.hpp"
|
||||
#include "FxTagTracker.hpp"
|
||||
#include "fxstump.hpp"
|
||||
#include "fxrequestbuffer.hpp"
|
||||
#include "fxtagtracker.hpp"
|
||||
|
||||
// internal locks
|
||||
#include "FxVerifierLock.hpp"
|
||||
#include "FxLock.hpp"
|
||||
#include "fxverifierlock.hpp"
|
||||
#include "fxlock.hpp"
|
||||
|
||||
// base objects
|
||||
#include "FxObject.hpp"
|
||||
#include "FxPagedObject.hpp"
|
||||
#include "FxNonPagedObject.hpp"
|
||||
#include "fxobject.hpp"
|
||||
#include "fxpagedobject.hpp"
|
||||
#include "fxnonpagedobject.hpp"
|
||||
|
||||
#include "fxhandle.h"
|
||||
|
||||
// external locks
|
||||
#include "FxWaitLock.hpp"
|
||||
#include "fxwaitlock.hpp"
|
||||
//#include "FxSpinLock.hpp"
|
||||
|
||||
// utitilty classes and functions
|
||||
#include "FxTransactionedList.hpp"
|
||||
#include "FxRelatedDeviceList.hpp"
|
||||
#include "FxDisposeList.hpp"
|
||||
#include "FxCollection.hpp"
|
||||
#include "StringUtil.hpp"
|
||||
#include "fxtransactionedlist.hpp"
|
||||
#include "fxrelateddevicelist.hpp"
|
||||
#include "fxdisposelist.hpp"
|
||||
#include "fxcollection.hpp"
|
||||
#include "stringutil.hpp"
|
||||
|
||||
// abstract classes
|
||||
#include "IFxHasCallbacks.hpp"
|
||||
#include "ifxhascallbacks.hpp"
|
||||
|
||||
// callback delegation and locking
|
||||
#include "FxSystemThread.hpp"
|
||||
#include "FxSystemWorkItem.hpp"
|
||||
#include "FxCallbackLock.hpp"
|
||||
#include "FxCallbackSpinLock.hpp"
|
||||
#include "FxCallbackMutexLock.hpp"
|
||||
#include "FxCallback.hpp"
|
||||
#include "FxSystemThread.hpp"
|
||||
#include "fxsystemthread.hpp"
|
||||
#include "fxsystemworkitem.hpp"
|
||||
#include "fxcallbacklock.hpp"
|
||||
#include "fxcallbackspinlock.hpp"
|
||||
#include "fxcallbackmutexlock.hpp"
|
||||
#include "fxcallback.hpp"
|
||||
#include "fxsystemthread.hpp"
|
||||
|
||||
#include "IFxMemory.hpp"
|
||||
#include "FxLookasideList.hpp"
|
||||
//#include "FxNPagedLookasideList.hpp"
|
||||
//#include "FxPagedLookasideList.hpp"
|
||||
#include "FxMemoryObject.hpp"
|
||||
#include "FxMemoryBuffer.hpp"
|
||||
#include "FxMemoryBufferFromPool.hpp"
|
||||
#include "FxMemoryBufferPreallocated.hpp"
|
||||
//#include "FxMemoryBufferFromLookaside.hpp"
|
||||
#include "FxRequestMemory.hpp"
|
||||
#include "FxRegKey.hpp"
|
||||
#include "FxAutoRegistry.hpp"
|
||||
#include "FxAutoString.hpp"
|
||||
#include "FxString.hpp"
|
||||
#include "ifxmemory.hpp"
|
||||
#include "fxlookasidelist.hpp"
|
||||
//#include "fxnpagedlookasidelist.hpp"
|
||||
//#include "fxpagedlookasidelist.hpp"
|
||||
#include "fxmemoryobject.hpp"
|
||||
#include "fxmemorybuffer.hpp"
|
||||
#include "fxmemorybufferfrompool.hpp"
|
||||
#include "fxmemorybufferpreallocated.hpp"
|
||||
//#include "fxmemorybufferfromlookaside.hpp"
|
||||
#include "fxrequestmemory.hpp"
|
||||
#include "fxregkey.hpp"
|
||||
#include "fxautoregistry.hpp"
|
||||
#include "fxautostring.hpp"
|
||||
#include "fxstring.hpp"
|
||||
|
||||
#include "FxValidateFunctions.hpp"
|
||||
#include "fxvalidatefunctions.hpp"
|
||||
|
||||
#include "FxResource.hpp"
|
||||
#include "FxRelatedDevice.hpp"
|
||||
#include "FxDeviceInterface.hpp"
|
||||
#include "FxQueryInterface.hpp"
|
||||
#include "FxDeviceText.hpp"
|
||||
#include "fxresource.hpp"
|
||||
#include "fxrelateddevice.hpp"
|
||||
#include "fxdeviceinterface.hpp"
|
||||
#include "fxqueryinterface.hpp"
|
||||
#include "fxdevicetext.hpp"
|
||||
|
||||
#if (FX_CORE_MODE == FX_CORE_USER_MODE)
|
||||
#include "FxIrpUm.hpp"
|
||||
#include "FxInterruptThreadpoolUm.hpp"
|
||||
#include "fxirpum.hpp"
|
||||
#include "fxinterruptthreadpoolum.hpp"
|
||||
#else
|
||||
#include "FxIrpKm.hpp"
|
||||
#include "fxirpkm.hpp"
|
||||
#endif
|
||||
#include "FxDriver.hpp"
|
||||
#include "fxdriver.hpp"
|
||||
|
||||
// generic package interface
|
||||
#include "FxPackage.hpp"
|
||||
#include "FxPkgGeneral.hpp"
|
||||
#include "FxDefaultIrpHandler.hpp"
|
||||
//#include "FxPoxKm.hpp"
|
||||
#include "FxPkgPnp.hpp"
|
||||
#include "FxWatchDog.hpp"
|
||||
#include "fxpackage.hpp"
|
||||
#include "fxpkggeneral.hpp"
|
||||
#include "fxdefaultirphandler.hpp"
|
||||
//#include "fxpoxkm.hpp"
|
||||
#include "fxpkgpnp.hpp"
|
||||
#include "fxwatchdog.hpp"
|
||||
|
||||
// Device supportfx
|
||||
#include "FxChildList.hpp"
|
||||
#include "FxCxDeviceInfo.hpp"
|
||||
#include "fxchildlist.hpp"
|
||||
#include "fxcxdeviceinfo.hpp"
|
||||
|
||||
#include "FxDevice.hpp"
|
||||
#include "fxdevice.hpp"
|
||||
|
||||
#include "FxPkgIo.hpp"
|
||||
#include "fxpkgio.hpp"
|
||||
|
||||
#include "FxDeviceToMxInterface.hpp"
|
||||
#include "fxdevicetomxinterface.hpp"
|
||||
|
||||
#include "FxIrpQueue.hpp"
|
||||
#include "FxRequestContext.hpp"
|
||||
#include "FxRequestCallbacks.hpp"
|
||||
#include "FxRequestBase.hpp"
|
||||
#include "FxRequest.hpp"
|
||||
#include "FxSyncRequest.hpp"
|
||||
#include "fxirpqueue.hpp"
|
||||
#include "fxrequestcontext.hpp"
|
||||
#include "fxrequestcallbacks.hpp"
|
||||
#include "fxrequestbase.hpp"
|
||||
#include "fxrequest.hpp"
|
||||
#include "fxsyncrequest.hpp"
|
||||
|
||||
#include "FxRequestValidateFunctions.hpp"
|
||||
#include "fxrequestvalidatefunctions.hpp"
|
||||
|
||||
// specialized irp handlers (ie packages)
|
||||
#include "FxPkgFdo.hpp"
|
||||
#include "FxPkgPdo.hpp"
|
||||
#include "fxpkgfdo.hpp"
|
||||
#include "fxpkgpdo.hpp"
|
||||
|
||||
//#include "FxWmiIrpHandler.hpp"
|
||||
//#include "FxWmiProvider.hpp"
|
||||
//#include "FxWmiInstance.hpp"
|
||||
//#include "fxwmiirphandler.hpp"
|
||||
//#include "fxwmiprovider.hpp"
|
||||
//#include "fxwmiinstance.hpp"
|
||||
|
||||
// queus for read, write, (internal) IOCTL
|
||||
#include "FxIoQueue.hpp"
|
||||
#include "FxFileObject.hpp"
|
||||
#include "FxIrpPreprocessInfo.hpp"
|
||||
#include "FxIrpDynamicDispatchInfo.hpp"
|
||||
#include "fxioqueue.hpp"
|
||||
#include "fxfileobject.hpp"
|
||||
#include "fxirppreprocessinfo.hpp"
|
||||
#include "fxirpdynamicdispatchinfo.hpp"
|
||||
|
||||
//#include "FxDpc.hpp"
|
||||
#include "FxWorkItem.hpp"
|
||||
#include "FxTimer.hpp"
|
||||
//#include "fxdpc.hpp"
|
||||
#include "fxworkitem.hpp"
|
||||
#include "fxtimer.hpp"
|
||||
#if FX_CORE_MODE==FX_CORE_USER_MODE
|
||||
#include "FxInterruptUm.hpp"
|
||||
#include "FxMessageDispatchUm.hpp"
|
||||
#include "fxinterruptum.hpp"
|
||||
#include "fxmessagedispatchum.hpp"
|
||||
#else
|
||||
#include "FxInterruptKm.hpp"
|
||||
#include "fxinterruptkm.hpp"
|
||||
#endif
|
||||
|
||||
// IO targets (device lower edge interface)
|
||||
#include "FxIoTarget.hpp"
|
||||
#include "FxIoTargetRemote.hpp"
|
||||
#include "FxIoTargetSelf.hpp"
|
||||
#include "fxiotarget.hpp"
|
||||
#include "fxiotargetremote.hpp"
|
||||
#include "fxiotargetself.hpp"
|
||||
|
||||
#include "FxUsbDevice.hpp"
|
||||
#include "FxUsbInterface.hpp"
|
||||
#include "FxUsbPipe.hpp"
|
||||
#include "fxusbdevice.hpp"
|
||||
#include "fxusbinterface.hpp"
|
||||
#include "fxusbpipe.hpp"
|
||||
|
||||
// DMA support
|
||||
//#include "FxDmaEnabler.hpp"
|
||||
//#include "FxDmaTransaction.hpp"
|
||||
//#include "FxCommonBuffer.hpp"
|
||||
//#include "fxdmaenabler.hpp"
|
||||
//#include "fxdmatransaction.hpp"
|
||||
//#include "fxcommonbuffer.hpp"
|
||||
|
||||
// Triage info.
|
||||
#include "wdftriage.h"
|
||||
// #include "wdftriage.h"
|
||||
|
||||
|
||||
#include "FxPkgIoShared.hpp"
|
||||
#include "fxpkgioshared.hpp"
|
||||
|
||||
#if FX_CORE_MODE==FX_CORE_USER_MODE
|
||||
#include "UfxVerifier.h"
|
||||
#include "ufxverifier.h"
|
||||
#endif
|
||||
|
||||
|
||||
|
|
|
@ -66,7 +66,7 @@ enum FxHandleFlags {
|
|||
// We cannot define FxHandleValueMask as an enumerant in FxHandleFlags because
|
||||
// an enum is limited to sizeof(ULONG), which doesn't work for us on a 64 bit OS
|
||||
//
|
||||
extern __declspec(selectany) const ULONG_PTR FxHandleValueMask = (~((ULONG_PTR) FxHandleFlagMask));
|
||||
extern DECLSPEC_SELECTANY const ULONG_PTR FxHandleValueMask = (~((ULONG_PTR) FxHandleFlagMask));
|
||||
|
||||
//
|
||||
// The type itself is aligned, but the pointer is not b/c those interested in the
|
||||
|
@ -114,7 +114,7 @@ struct FxQueryInterfaceParams {
|
|||
// 1) have its size rounded up to an alignment value
|
||||
// 2) extra size and context header appended to the allocation
|
||||
//
|
||||
enum FxObjectType {
|
||||
enum FxObjectType : UINT32 {
|
||||
FxObjectTypeInvalid = 0,
|
||||
FxObjectTypeInternal,
|
||||
FxObjectTypeExternal,
|
||||
|
|
|
@ -467,6 +467,7 @@ protected:
|
|||
_Must_inspect_result_
|
||||
static
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
_PnpFilteredStartDeviceCompletionRoutine(
|
||||
__in MdDeviceObject DeviceObject,
|
||||
__inout MdIrp Irp,
|
||||
|
@ -476,6 +477,7 @@ protected:
|
|||
_Must_inspect_result_
|
||||
static
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
_PnpStartDeviceCompletionRoutine(
|
||||
__in MdDeviceObject DeviceObject,
|
||||
__inout MdIrp Irp,
|
||||
|
|
|
@ -26,7 +26,7 @@ Revision History:
|
|||
#ifndef _FXPKGGENERAL_H_
|
||||
#define _FXPKGGENERAL_H_
|
||||
|
||||
#include "FxFileObjectCallbacks.hpp"
|
||||
#include "fxfileobjectcallbacks.hpp"
|
||||
|
||||
class FxShutDown : public FxCallback {
|
||||
|
||||
|
|
|
@ -28,10 +28,10 @@ Revision History:
|
|||
|
||||
|
||||
|
||||
#include "FxPkgIoShared.hpp"
|
||||
#include "FxIrpDynamicDispatchInfo.hpp"
|
||||
#include "FxDeviceCallbacks.hpp"
|
||||
#include "FxCxDeviceInfo.hpp"
|
||||
#include "fxpkgioshared.hpp"
|
||||
#include "fxirpdynamicdispatchinfo.hpp"
|
||||
#include "fxdevicecallbacks.hpp"
|
||||
#include "fxcxdeviceinfo.hpp"
|
||||
|
||||
//
|
||||
// This flag is or-ed with a pointer value that is ptr aligned, only lower 2 bits are available.
|
||||
|
|
|
@ -284,6 +284,7 @@ private:
|
|||
|
||||
static
|
||||
VOID
|
||||
STDCALL
|
||||
_QueryCapsWorkItem(
|
||||
__in MdDeviceObject DeviceObject,
|
||||
__in PVOID Context
|
||||
|
@ -574,6 +575,7 @@ private:
|
|||
|
||||
static
|
||||
VOID
|
||||
STDCALL
|
||||
_RemoveAndReenumerateSelf(
|
||||
__in PVOID Context
|
||||
);
|
||||
|
|
|
@ -76,9 +76,9 @@ enum FxStateMachineDeviceType {
|
|||
|
||||
// @@SMVERIFY_SPLIT_END
|
||||
|
||||
#include "FxPnpCallbacks.hpp"
|
||||
#include "fxpnpcallbacks.hpp"
|
||||
|
||||
#include "FxEventQueue.hpp"
|
||||
#include "fxeventqueue.hpp"
|
||||
|
||||
//
|
||||
// Bit-flags for tracking which callback is currently executing.
|
||||
|
@ -119,11 +119,11 @@ typedef struct _POWER_THREAD_INTERFACE {
|
|||
// be instantiated only in drivers which are the power policy owners
|
||||
// for their device stacks, which usually amounts to the being the FDO.
|
||||
//
|
||||
#include "FxPnpStateMachine.hpp"
|
||||
#include "FxPowerStateMachine.hpp"
|
||||
#include "FxPowerPolicyStateMachine.hpp"
|
||||
#include "fxpnpstatemachine.hpp"
|
||||
#include "fxpowerstatemachine.hpp"
|
||||
#include "fxpowerpolicystatemachine.hpp"
|
||||
|
||||
#include "FxSelfManagedIoStateMachine.hpp"
|
||||
#include "fxselfmanagediostatemachine.hpp"
|
||||
|
||||
//
|
||||
// Group these here instead of in the individual headers because, for some reason,
|
||||
|
@ -425,6 +425,11 @@ struct FxPowerCaps {
|
|||
ULONG D3Latency;
|
||||
};
|
||||
|
||||
enum FxWmiInstanceAction : UINT32 {
|
||||
AddInstance,
|
||||
RemoveInstance
|
||||
};
|
||||
|
||||
struct FxEnumerationInfo : public FxStump {
|
||||
public:
|
||||
FxEnumerationInfo(
|
||||
|
@ -1732,37 +1737,37 @@ protected:
|
|||
|
||||
static
|
||||
WDF_DEVICE_POWER_STATE
|
||||
FxPkgPnp::PowerUpFailedDerefParentNP(
|
||||
PowerUpFailedDerefParentNP(
|
||||
__inout FxPkgPnp* This
|
||||
);
|
||||
|
||||
static
|
||||
WDF_DEVICE_POWER_STATE
|
||||
FxPkgPnp::PowerUpFailedNP(
|
||||
PowerUpFailedNP(
|
||||
__inout FxPkgPnp* This
|
||||
);
|
||||
|
||||
static
|
||||
WDF_DEVICE_POWER_STATE
|
||||
FxPkgPnp::PowerNotifyingD0ExitToWakeInterrupts(
|
||||
PowerNotifyingD0ExitToWakeInterrupts(
|
||||
__inout FxPkgPnp* This
|
||||
);
|
||||
|
||||
static
|
||||
WDF_DEVICE_POWER_STATE
|
||||
FxPkgPnp::PowerNotifyingD0EntryToWakeInterrupts(
|
||||
PowerNotifyingD0EntryToWakeInterrupts(
|
||||
__inout FxPkgPnp* This
|
||||
);
|
||||
|
||||
static
|
||||
WDF_DEVICE_POWER_STATE
|
||||
FxPkgPnp::PowerNotifyingD0ExitToWakeInterruptsNP(
|
||||
PowerNotifyingD0ExitToWakeInterruptsNP(
|
||||
__inout FxPkgPnp* This
|
||||
);
|
||||
|
||||
static
|
||||
WDF_DEVICE_POWER_STATE
|
||||
FxPkgPnp::PowerNotifyingD0EntryToWakeInterruptsNP(
|
||||
PowerNotifyingD0EntryToWakeInterruptsNP(
|
||||
__inout FxPkgPnp* This
|
||||
);
|
||||
|
||||
|
@ -3953,12 +3958,14 @@ private:
|
|||
|
||||
static
|
||||
VOID
|
||||
STDCALL
|
||||
_PowerThreadInterfaceReference(
|
||||
__inout PVOID Context
|
||||
);
|
||||
|
||||
static
|
||||
VOID
|
||||
STDCALL
|
||||
_PowerThreadInterfaceDereference(
|
||||
__inout PVOID Context
|
||||
);
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
#ifndef _FXPOWERPOLICYSTATEMACHINE_H_
|
||||
#define _FXPOWERPOLICYSTATEMACHINE_H_
|
||||
|
||||
#include "FxPowerIdleStateMachine.hpp"
|
||||
#include "FxPoxInterface.hpp"
|
||||
#include "fxpoweridlestatemachine.hpp"
|
||||
#include "fxpoxinterface.hpp"
|
||||
|
||||
// @@SMVERIFY_SPLIT_BEGIN
|
||||
//
|
||||
|
|
|
@ -44,7 +44,7 @@ enum FxPowerEvent {
|
|||
//
|
||||
PowerSingularEventMask = PowerParentToD0,
|
||||
|
||||
PowerEventMaximum = 0xFFFFFFFF,
|
||||
PowerEventMaximum = 0xFFFF,
|
||||
};
|
||||
|
||||
union FxPowerStateInfo {
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#ifndef _FXPOXINTERFACE_H_
|
||||
#define _FXPOXINTERFACE_H_
|
||||
|
||||
#include "FxDevicePwrReqStateMachine.hpp"
|
||||
#include "fxdevicepwrreqstatemachine.hpp"
|
||||
|
||||
class FxPoxInterface {
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ public:
|
|||
__in PFX_DRIVER_GLOBALS FxDriverGlobals
|
||||
)
|
||||
{
|
||||
__super::LockForEnum(FxDriverGlobals);
|
||||
FxSpinLockTransactionedList::LockForEnum(FxDriverGlobals); // __super call
|
||||
}
|
||||
|
||||
VOID
|
||||
|
@ -27,7 +27,7 @@ public:
|
|||
__in PFX_DRIVER_GLOBALS FxDriverGlobals
|
||||
)
|
||||
{
|
||||
__super::UnlockFromEnum(FxDriverGlobals);
|
||||
FxSpinLockTransactionedList::UnlockFromEnum(FxDriverGlobals); // __super call
|
||||
}
|
||||
|
||||
_Must_inspect_result_
|
||||
|
@ -109,4 +109,4 @@ public:
|
|||
ULONG m_NeedReportMissing;
|
||||
};
|
||||
|
||||
#endif _FXRELATEDDEVICELIST_H_
|
||||
#endif // _FXRELATEDDEVICELIST_H_
|
||||
|
|
|
@ -639,7 +639,7 @@ protected:
|
|||
);
|
||||
|
||||
#if DBG
|
||||
FxRequest::~FxRequest(
|
||||
~FxRequest(
|
||||
VOID
|
||||
);
|
||||
#endif // DBG
|
||||
|
@ -1300,7 +1300,7 @@ public:
|
|||
|
||||
ASSERT(m_ForwardRequestToParent == FALSE);
|
||||
|
||||
__super::ClearFieldsForReuse();
|
||||
FxRequestBase::ClearFieldsForReuse(); // __super call
|
||||
}
|
||||
|
||||
virtual
|
||||
|
|
|
@ -30,7 +30,9 @@ Revision History:
|
|||
#ifndef _FXREQUESTBASE_H_
|
||||
#define _FXREQUESTBASE_H_
|
||||
|
||||
#include "FxRequestCallbacks.hpp"
|
||||
#include "fxrequestcallbacks.hpp"
|
||||
|
||||
#define WDF_REQUEST_REUSE_MUST_COMPLETE 2
|
||||
|
||||
|
||||
//
|
||||
|
@ -293,6 +295,7 @@ public:
|
|||
}
|
||||
|
||||
__inline
|
||||
BOOLEAN
|
||||
HasContext(
|
||||
VOID
|
||||
)
|
||||
|
@ -690,7 +693,7 @@ public:
|
|||
VOID
|
||||
);
|
||||
|
||||
__declspec(noreturn)
|
||||
DECLSPEC_NORETURN
|
||||
VOID
|
||||
FatalError(
|
||||
__in NTSTATUS Status
|
||||
|
@ -950,9 +953,9 @@ protected:
|
|||
};
|
||||
|
||||
#if ((FX_CORE_MODE)==(FX_CORE_KERNEL_MODE))
|
||||
#include "FxRequestBaseKm.hpp"
|
||||
#else if ((FX_CORE_MODE)==(FX_CORE_USER_MODE))
|
||||
#include "FxRequestBaseUm.hpp"
|
||||
#include "fxrequestbasekm.hpp"
|
||||
#elif ((FX_CORE_MODE)==(FX_CORE_USER_MODE))
|
||||
#include "fxrequestbaseum.hpp"
|
||||
#endif
|
||||
|
||||
|
||||
|
|
|
@ -148,9 +148,9 @@ public:
|
|||
};
|
||||
|
||||
#if ((FX_CORE_MODE)==(FX_CORE_KERNEL_MODE))
|
||||
#include "FxRequestBufferKm.hpp"
|
||||
#else if ((FX_CORE_MODE)==(FX_CORE_USER_MODE))
|
||||
#include "FxRequestBufferUm.hpp"
|
||||
#include "fxrequestbufferkm.hpp"
|
||||
#elif ((FX_CORE_MODE)==(FX_CORE_USER_MODE))
|
||||
#include "fxrequestbufferum.hpp"
|
||||
#endif
|
||||
|
||||
|
||||
|
|
|
@ -71,7 +71,7 @@ protected:
|
|||
ASSERTMSG("FxSyncRequest::operator new called, should only be"
|
||||
" declared on the stack\n", FALSE);
|
||||
|
||||
return NULL;
|
||||
return (PVOID)1;
|
||||
}
|
||||
|
||||
public:
|
||||
|
@ -81,7 +81,7 @@ public:
|
|||
VOID
|
||||
)
|
||||
{
|
||||
NTSTATUS status;
|
||||
NTSTATUS status = STATUS_SUCCESS;
|
||||
|
||||
#if (FX_CORE_MODE == FX_CORE_USER_MODE)
|
||||
//
|
||||
|
@ -118,4 +118,4 @@ public:
|
|||
BOOLEAN m_ClearContextOnDestroy;
|
||||
};
|
||||
|
||||
#endif _FXSYNCREQUEST_H_
|
||||
#endif // _FXSYNCREQUEST_H_
|
||||
|
|
|
@ -256,6 +256,7 @@ private:
|
|||
//
|
||||
static
|
||||
VOID
|
||||
STDCALL
|
||||
StaticThreadThunk(
|
||||
__inout PVOID Context
|
||||
);
|
||||
|
@ -281,6 +282,7 @@ private:
|
|||
//
|
||||
static
|
||||
VOID
|
||||
STDCALL
|
||||
StaticReaperThunk(
|
||||
__inout PVOID Context
|
||||
);
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue