#include "serenum.h"
#include <debug.h>
Go to the source code of this file.
◆ DuplicateUnicodeString()
Definition at line 185 of file misc.c.
#define STATUS_INVALID_PARAMETER
_Out_ _Inout_ POEM_STRING DestinationString
#define RTL_DUPLICATE_UNICODE_STRING_NULL_TERMINATE
_Must_inspect_result_ _In_ ULONG Flags
#define ExAllocatePoolWithTag(hernya, size, tag)
_Out_ _Inout_ POEM_STRING _In_ PCUNICODE_STRING SourceString
#define RTL_DUPLICATE_UNICODE_STRING_ALLOCATE_NULL_STRING
#define RtlCopyMemory(Destination, Source, Length)
unsigned short MaximumLength
◆ ForwardIrpAndForget()
Definition at line 170 of file misc.c.
struct _FDO_DEVICE_EXTENSION * PFDO_DEVICE_EXTENSION
_In_ PDEVICE_OBJECT DeviceObject
NTSTATUS NTAPI IoCallDriver(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
#define IoSkipCurrentIrpStackLocation(Irp)
◆ ForwardIrpAndWait()
Definition at line 103 of file misc.c.
119 TRACE_(SERENUM,
"Calling lower device %p\n", LowerDevice);
static IO_COMPLETION_ROUTINE ForwardIrpAndWaitCompletion
NTSTATUS NTAPI KeWaitForSingleObject(IN PVOID Object, IN KWAIT_REASON WaitReason, IN KPROCESSOR_MODE WaitMode, IN BOOLEAN Alertable, IN PLARGE_INTEGER Timeout OPTIONAL)
struct _FDO_DEVICE_EXTENSION * PFDO_DEVICE_EXTENSION
#define IoSetCompletionRoutine(_Irp, _CompletionRoutine, _Context, _InvokeOnSuccess, _InvokeOnError, _InvokeOnCancel)
FORCEINLINE VOID IoCopyCurrentIrpStackLocationToNext(_Inout_ PIRP Irp)
_In_ PDEVICE_OBJECT DeviceObject
_In_ PVOID _In_ ULONG Event
#define NT_SUCCESS(StatCode)
#define KeInitializeEvent(pEvt, foo, foo2)
NTSTATUS NTAPI IoCallDriver(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
◆ ForwardIrpAndWaitCompletion()
Definition at line 92 of file misc.c.
97 if (
Irp->PendingReturned)
#define STATUS_MORE_PROCESSING_REQUIRED
LONG NTAPI KeSetEvent(IN PKEVENT Event, IN KPRIORITY Increment, IN BOOLEAN Wait)
◆ ForwardIrpToAttachedFdoAndForget()
Definition at line 152 of file misc.c.
164 TRACE_(SERENUM,
"Calling attached Fdo 0x%p\n",
Fdo);
struct _PDO_DEVICE_EXTENSION * PPDO_DEVICE_EXTENSION
_In_ PDEVICE_OBJECT DeviceObject
COMMON_DEVICE_EXTENSION Common
PDEVICE_OBJECT AttachedFdo
_Must_inspect_result_ _In_ WDFDEVICE Fdo
NTSTATUS NTAPI IoCallDriver(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
#define IoSkipCurrentIrpStackLocation(Irp)
Referenced by IrpStub(), and SerenumPdoPnp().
◆ ForwardIrpToLowerDeviceAndForget()
Definition at line 134 of file misc.c.
146 TRACE_(SERENUM,
"Calling lower device 0x%p\n", LowerDevice);
struct _FDO_DEVICE_EXTENSION * PFDO_DEVICE_EXTENSION
_In_ PDEVICE_OBJECT DeviceObject
COMMON_DEVICE_EXTENSION Common
NTSTATUS NTAPI IoCallDriver(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
#define IoSkipCurrentIrpStackLocation(Irp)
PDEVICE_OBJECT LowerDevice
Referenced by IrpStub().
◆ SerenumInitMultiSzString()
Definition at line 20 of file misc.c.
28 ULONG DestinationSize = 0;
44 if (DestinationSize == 0)
51 DestinationSize +=
sizeof(
WCHAR);
#define STATUS_INSUFFICIENT_RESOURCES
WDF_EXTERN_C_START typedef _Must_inspect_result_ _In_opt_ PCUNICODE_STRING UnicodeString
NTSYSAPI VOID NTAPI RtlInitAnsiString(PANSI_STRING DestinationString, PCSZ SourceString)
NTSYSAPI DWORD WINAPI RtlAnsiStringToUnicodeSize(const STRING *)
#define NT_SUCCESS(StatCode)
_In_ PUNICODE_STRING _Inout_ PUNICODE_STRING Destination
#define ExAllocatePoolWithTag(hernya, size, tag)
NTSYSAPI NTSTATUS NTAPI RtlAnsiStringToUnicodeString(PUNICODE_STRING DestinationString, PANSI_STRING SourceString, BOOLEAN AllocateDestinationString)
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
_In_ UINT _In_ UINT _In_ PNDIS_PACKET Source
#define ExFreePoolWithTag(_P, _T)
Referenced by SerenumDetectLegacyDevice().
◆ ForwardIrpAndWaitCompletion
IO_COMPLETION_ROUTINE ForwardIrpAndWaitCompletion |
|
static |