#include <ntddk.h>
#include "aken.h"
#include "intrinsics.h"
Go to the source code of this file.
|
| typedef NTSTATUS(* | AkenIoctl )(PVOID buf, ULONG inSize, ULONG *outSize) |
| |
|
| | __drv_dispatchType (IRP_MJ_CREATE) |
| |
| static NTSTATUS | AkenMapPhysicalMemory (const DWORD64 physicalAddress64, const DWORD64 numBytes64, DWORD64 *virtualAddress64) |
| |
| static NTSTATUS | AkenUnmapPhysicalMemory (const DWORD64 virtualAddress) |
| |
| static NTSTATUS | AkenIoctlReadPort (PVOID buf, const ULONG inSize, ULONG *outSize) |
| |
| static NTSTATUS | AkenIoctlWritePort (PVOID buf, const ULONG inSize, ULONG *outSize) |
| |
| static NTSTATUS | AkenIoctlMap (PVOID buf, const ULONG inSize, ULONG *outSize) |
| |
| static NTSTATUS | AkenIoctlUnmap (PVOID buf, const ULONG inSize, ULONG *outSize) |
| |
| static NTSTATUS | AkenIoctlReadModelSpecificRegister (PVOID buf, const ULONG inSize, ULONG *outSize) |
| |
| static NTSTATUS | AkenIoctlWriteModelSpecificRegister (PVOID buf, const ULONG inSize, ULONG *outSize) |
| |
| static NTSTATUS | AkenIoctlReadPerformanceMonitoringCounter (PVOID buf, const ULONG inSize, ULONG *outSize) |
| |
| static NTSTATUS | AkenIoctlUnknown (PVOID buf, const ULONG inSize, ULONG *outSize) |
| |
| static AkenIoctl | AkenIoctlFromCode (ULONG ioctlCode) |
| |
| static NTSTATUS | AkenCreate (IN PDEVICE_OBJECT deviceObject, IN PIRP irp) |
| |
| static NTSTATUS | AkenClose (IN PDEVICE_OBJECT deviceObject, IN PIRP irp) |
| |
| static NTSTATUS | AkenDeviceControl (IN PDEVICE_OBJECT deviceObject, IN PIRP irp) |
| |
| static VOID | AkenUnload (IN PDRIVER_OBJECT driverObject) |
| |
| NTSTATUS | DriverEntry (IN PDRIVER_OBJECT driverObject, IN PUNICODE_STRING registryPath) |
| |
| #define DEVICE_NAME L"\\Device\\Aken" |
| #define WIN32_NAME L"\\DosDevices\\Aken" |
| typedef NTSTATUS(* AkenIoctl)(PVOID buf, ULONG inSize, ULONG *outSize) |
| __drv_dispatchType |
( |
IRP_MJ_CREATE |
| ) |
|
| static NTSTATUS AkenClose |
( |
IN PDEVICE_OBJECT |
deviceObject, |
|
|
IN PIRP |
irp |
|
) |
| |
|
static |
| static NTSTATUS AkenCreate |
( |
IN PDEVICE_OBJECT |
deviceObject, |
|
|
IN PIRP |
irp |
|
) |
| |
|
static |
| static NTSTATUS AkenDeviceControl |
( |
IN PDEVICE_OBJECT |
deviceObject, |
|
|
IN PIRP |
irp |
|
) |
| |
|
static |
| static AkenIoctl AkenIoctlFromCode |
( |
ULONG |
ioctlCode | ) |
|
|
static |
| static NTSTATUS AkenIoctlMap |
( |
PVOID |
buf, |
|
|
const ULONG |
inSize, |
|
|
ULONG * |
outSize |
|
) |
| |
|
static |
| static NTSTATUS AkenIoctlReadModelSpecificRegister |
( |
PVOID |
buf, |
|
|
const ULONG |
inSize, |
|
|
ULONG * |
outSize |
|
) |
| |
|
static |
| static NTSTATUS AkenIoctlReadPerformanceMonitoringCounter |
( |
PVOID |
buf, |
|
|
const ULONG |
inSize, |
|
|
ULONG * |
outSize |
|
) |
| |
|
static |
| static NTSTATUS AkenIoctlReadPort |
( |
PVOID |
buf, |
|
|
const ULONG |
inSize, |
|
|
ULONG * |
outSize |
|
) |
| |
|
static |
| static NTSTATUS AkenIoctlUnknown |
( |
PVOID |
buf, |
|
|
const ULONG |
inSize, |
|
|
ULONG * |
outSize |
|
) |
| |
|
static |
| static NTSTATUS AkenIoctlUnmap |
( |
PVOID |
buf, |
|
|
const ULONG |
inSize, |
|
|
ULONG * |
outSize |
|
) |
| |
|
static |
| static NTSTATUS AkenIoctlWriteModelSpecificRegister |
( |
PVOID |
buf, |
|
|
const ULONG |
inSize, |
|
|
ULONG * |
outSize |
|
) |
| |
|
static |
| static NTSTATUS AkenIoctlWritePort |
( |
PVOID |
buf, |
|
|
const ULONG |
inSize, |
|
|
ULONG * |
outSize |
|
) |
| |
|
static |
| static NTSTATUS AkenMapPhysicalMemory |
( |
const DWORD64 |
physicalAddress64, |
|
|
const DWORD64 |
numBytes64, |
|
|
DWORD64 * |
virtualAddress64 |
|
) |
| |
|
static |
| static VOID AkenUnload |
( |
IN PDRIVER_OBJECT |
driverObject | ) |
|
|
static |
| static NTSTATUS AkenUnmapPhysicalMemory |
( |
const DWORD64 |
virtualAddress | ) |
|
|
static |
| NTSTATUS DriverEntry |
( |
IN PDRIVER_OBJECT |
driverObject, |
|
|
IN PUNICODE_STRING |
registryPath |
|
) |
| |
| DRIVER_INITIALIZE DriverEntry |