reactos/sdk/lib/drivers/wdf/reactos_special.cpp
2024-10-06 10:47:11 +03:00

75 lines
1.7 KiB
C++

#include <stdarg.h>
#include <stddef.h>
#include <stdio.h>
#include <string.h>
#include <ntverp.h>
extern "C" {
#include <ntddk.h>
#include <ntstrsafe.h>
}
#define FX_DYNAMICS_GENERATE_TABLE 1
#include "fx.hpp"
// #include <fxldr.h>
// #include "fxbugcheck.h"
//----------------------------------------- ------------------------------------
extern "C" {
#include "fxdynamics.h"
// #include "FxLibraryCommon.h"
typedef VOID (*WDFFUNC) (VOID);
const WDFFUNC *WdfFunctions_01017 = (WDFFUNC *)(&WdfVersion.Functions);
// DECLSPEC_ALIGN(MAX_NATURAL_ALIGNMENT) UINT8 WdfDriverGlobalsVal[248] = { 0 }; // sizeof(FX_DRIVER_GLOBALS)
// PWDF_DRIVER_GLOBALS WdfDriverGlobals = &((PFX_DRIVER_GLOBALS)&WdfDriverGlobalsVal)->Public;
WDF_BIND_INFO WdfBindInfo = {0};
PWDF_DRIVER_GLOBALS WdfDriverGlobals;
extern FxLibraryGlobalsType FxLibraryGlobals;
#define KMDF_DEFAULT_NAME "Wdf01000"
PCHAR WdfLdrType = KMDF_DEFAULT_NAME;
WDFAPI
NTSTATUS
STDCALL
WdfApiNotImplemented()
{
DbgPrint("ReactOS KMDF: %s non-implemented API called\n");
__debugbreak();
return STATUS_UNSUCCESSFUL;
}
// called in WdfDriverCreate in fxdriverapi.cpp
VOID
RosInitWdf()
{
WdfDriverGlobals = FxAllocateDriverGlobals();
PFX_DRIVER_GLOBALS fxDriverGlobals = GetFxDriverGlobals(WdfDriverGlobals);
WdfBindInfo.Size = sizeof(WDF_BIND_INFO);
WdfBindInfo.Version.Major = 1;
WdfBindInfo.Version.Minor = 9;
WdfBindInfo.Version.Build = 7600;
WdfBindInfo.FuncCount = WdfVersion.FuncCount;
WdfBindInfo.FuncTable = (WDFFUNC *)(&WdfVersion.Functions);
fxDriverGlobals->WdfBindInfo = &WdfBindInfo;
FxLibraryGlobals.OsVersionInfo.dwMajorVersion = 5;
FxLibraryGlobals.OsVersionInfo.dwMinorVersion = 1;
}
void
__cxa_pure_virtual()
{
__debugbreak();
}
} // extern "C"