15 #define RTL_DUPLICATE_UNICODE_STRING_NULL_TERMINATE 1 16 #define RTL_DUPLICATE_UNICODE_STRING_ALLOCATE_NULL_STRING 2 19 #define KEYBOARD_BUFFER_SIZE 100
NTSTATUS ReadRegistryEntries(IN PUNICODE_STRING RegistryPath, IN PGREEN_DRIVER_EXTENSION DriverExtension)
UNICODE_STRING AttachedDeviceName
NTSTATUS GreenDeviceIoControl(IN PDEVICE_OBJECT DeviceObject, IN ULONG CtlCode, IN PVOID InputBuffer OPTIONAL, IN ULONG InputBufferSize, IN OUT PVOID OutputBuffer OPTIONAL, IN OUT PULONG OutputBufferSize)
NTSTATUS ScreenAddDevice(IN PDRIVER_OBJECT DriverObject, IN PDEVICE_OBJECT Pdo)
struct _GREEN_DRIVER_EXTENSION * PGREEN_DRIVER_EXTENSION
CONNECT_DATA ClassInformation
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING RegistryPath
struct _KEYBOARD_DEVICE_EXTENSION * PKEYBOARD_DEVICE_EXTENSION
struct _COMMON_DEVICE_EXTENSION * PCOMMON_DEVICE_EXTENSION
UNICODE_STRING RegistryPath
struct _SCREEN_DEVICE_EXTENSION * PSCREEN_DEVICE_EXTENSION
_In_ PDEVICE_OBJECT DeviceObject
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
NTSTATUS GreenClose(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
WDF_EXTERN_C_START typedef _Must_inspect_result_ _In_ WDFDRIVER _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ PDEVICE_OBJECT _In_opt_ PDEVICE_OBJECT _In_opt_ PDEVICE_OBJECT Pdo
struct _COMMON_FDO_DEVICE_EXTENSION * PCOMMON_FDO_DEVICE_EXTENSION
_Out_ _Inout_ POEM_STRING DestinationString
NTSTATUS GreenDuplicateUnicodeString(IN ULONG Flags, IN PCUNICODE_STRING SourceString, OUT PUNICODE_STRING DestinationString)
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR OutputBuffer
struct _GREEN_DEVICE_EXTENSION * PGREEN_DEVICE_EXTENSION
PDEVICE_OBJECT KeyboardFdo
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR InputBuffer
NTSTATUS NTAPI GreenAddDevice(IN PDRIVER_OBJECT DriverObject, IN PDEVICE_OBJECT Pdo)
_Must_inspect_result_ _In_ ULONG Flags
struct _KEYBOARD_DEVICE_EXTENSION KEYBOARD_DEVICE_EXTENSION
NTSTATUS ScreenWrite(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
_Out_ _Inout_ POEM_STRING _In_ PCUNICODE_STRING SourceString
struct _GREEN_DEVICE_EXTENSION GREEN_DEVICE_EXTENSION
PDEVICE_OBJECT KeyboardPdo
HANDLE WorkerThreadHandle
NTSTATUS NTAPI GreenDispatch(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
PPCI_DRIVER_EXTENSION DriverExtension
NTSTATUS ScreenDeviceControl(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
#define KEYBOARD_BUFFER_SIZE
KEYBOARD_INPUT_DATA KeyboardInputData[2][KEYBOARD_BUFFER_SIZE]
SERIAL_LINE_CONTROL LineControl
COMMON_FDO_DEVICE_EXTENSION Common
NTSTATUS GreenPower(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
PDEVICE_OBJECT GreenMainDO
NTSTATUS KeyboardAddDevice(IN PDRIVER_OBJECT DriverObject, IN PDEVICE_OBJECT Pdo)
PDEVICE_OBJECT PreviousBlue
NTSTATUS KeyboardInternalDeviceControl(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
NTSTATUS GreenPnp(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
COMMON_FDO_DEVICE_EXTENSION Common
struct _COMMON_FDO_DEVICE_EXTENSION COMMON_FDO_DEVICE_EXTENSION
struct _COMMON_DEVICE_EXTENSION COMMON_DEVICE_EXTENSION
struct _GREEN_DRIVER_EXTENSION GREEN_DRIVER_EXTENSION
COMMON_FDO_DEVICE_EXTENSION Common
PDEVICE_OBJECT LowerDevice
struct _SECURITY_ATTRIBUTES * PSECURITY_ATTRIBUTES
struct _SCREEN_DEVICE_EXTENSION SCREEN_DEVICE_EXTENSION
NTSTATUS GreenCreate(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
PDEVICE_OBJECT LowerDevice
PULONG MinorVersion OPTIONAL