IOCTL_INTERNAL_I8042_HOOK_KEYBOARD - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// ntdd8042.h

// CTL_CODE(0x000b, 0xff0, METHOD_NEITHER, FILE_ANY_ACCESS)
#define IOCTL_INTERNAL_I8042_HOOK_KEYBOARD 0x000B3FC3
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ni-ntdd8042-ioctl_internal_i8042_hook_keyboard)

IOCTL_INTERNAL_I8042_HOOK_KEYBOARD IOCTL

Description

The IOCTL_INTERNAL_I8042_HOOK_KEYBOARD request does the following:

The initialization and ISR callbacks are optional and are provided by an upper-level filter driver for a PS/2-style keyboard device.

After I8042prt receives an IOCTL_INTERNAL_KEYBOARD_CONNECT request, it sends a synchronous IOCTL_INTERNAL_I8042_HOOK_KEYBOARD request to the top of the keyboard device stack.

After Kbfiltr receives the hook keyboard request, Kbfiltr filters the request in the following way:

For more information about this request and the callbacks, see the following topics:

I8042prt Callback Routines

Kbfiltr Callback Routines

Parameters

Major code

IRP_MJ_INTERNAL_DEVICE_CONTROL

Input buffer

The Parameters.DeviceIoControl.Type3InputBuffer points to an INTERNAL_I8042_HOOK_KEYBOARD structure. This structure includes the following members:

Input buffer length

The Parameters.DeviceIoControl.InputBufferLength member is set to a value that is greater than or equal to the size, in bytes, of an INTERNAL_I8042_HOOK_KEYBOARD structure.

Output buffer

None

Output buffer length

None

Input/output buffer

Input/output buffer length

Status block

The Status member is set to one of the following values:

STATUS_INVALID_PARAMETER

Parameters.DeviceIoControl.InputBufferLength is less than the size, in bytes, of an INTERNAL_I8042_HOOK_KEYBOARD structure.

STATUS_SUCCESS

The request completed successfully.

-InitializationRoutine

Pointer to an optional callback that the I8042prt keyboard initialization routine calls when it initializes a keyboard device.

-IsrRoutine

Pointer to an optional callback that is called by the I8042prt keyboard ISR.

See also

INTERNAL_I8042_HOOK_KEYBOARD

IOCTL_INTERNAL_KEYBOARD_CONNECT