mirror of
https://github.com/reactos/reactos.git
synced 2025-05-29 22:18:13 +00:00
[I8042PRT] Get rid of IrpStub. CORE-12148 CORE-17136
We neither want to handle IRPs we don't understand, nor do we want to assert in case of unexpected IOCTLs.
This commit is contained in:
parent
b5815efe83
commit
23ccd13639
1 changed files with 3 additions and 22 deletions
|
@ -18,7 +18,6 @@
|
||||||
/* FUNCTIONS *****************************************************************/
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
static DRIVER_STARTIO i8042StartIo;
|
static DRIVER_STARTIO i8042StartIo;
|
||||||
static DRIVER_DISPATCH IrpStub;
|
|
||||||
_Dispatch_type_(IRP_MJ_DEVICE_CONTROL)
|
_Dispatch_type_(IRP_MJ_DEVICE_CONTROL)
|
||||||
static DRIVER_DISPATCH i8042DeviceControl;
|
static DRIVER_DISPATCH i8042DeviceControl;
|
||||||
_Dispatch_type_(IRP_MJ_INTERNAL_DEVICE_CONTROL)
|
_Dispatch_type_(IRP_MJ_INTERNAL_DEVICE_CONTROL)
|
||||||
|
@ -387,21 +386,6 @@ done:
|
||||||
return Status;
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
static NTSTATUS NTAPI
|
|
||||||
IrpStub(
|
|
||||||
IN PDEVICE_OBJECT DeviceObject,
|
|
||||||
IN PIRP Irp)
|
|
||||||
{
|
|
||||||
NTSTATUS Status = Irp->IoStatus.Status;
|
|
||||||
|
|
||||||
UNREFERENCED_PARAMETER(DeviceObject);
|
|
||||||
|
|
||||||
/* Do nothing */
|
|
||||||
ASSERT(FALSE);
|
|
||||||
IoCompleteRequest(Irp, IO_NO_INCREMENT);
|
|
||||||
return Status;
|
|
||||||
}
|
|
||||||
|
|
||||||
static NTSTATUS NTAPI
|
static NTSTATUS NTAPI
|
||||||
i8042DeviceControl(
|
i8042DeviceControl(
|
||||||
IN PDEVICE_OBJECT DeviceObject,
|
IN PDEVICE_OBJECT DeviceObject,
|
||||||
|
@ -416,9 +400,10 @@ i8042DeviceControl(
|
||||||
{
|
{
|
||||||
case Keyboard:
|
case Keyboard:
|
||||||
return i8042KbdDeviceControl(DeviceObject, Irp);
|
return i8042KbdDeviceControl(DeviceObject, Irp);
|
||||||
break;
|
|
||||||
default:
|
default:
|
||||||
return IrpStub(DeviceObject, Irp);
|
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
|
||||||
|
IoCompleteRequest(Irp, IO_NO_INCREMENT);
|
||||||
|
return STATUS_INVALID_DEVICE_REQUEST;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -499,7 +484,6 @@ DriverEntry(
|
||||||
IN PUNICODE_STRING RegistryPath)
|
IN PUNICODE_STRING RegistryPath)
|
||||||
{
|
{
|
||||||
PI8042_DRIVER_EXTENSION DriverExtension;
|
PI8042_DRIVER_EXTENSION DriverExtension;
|
||||||
ULONG i;
|
|
||||||
NTSTATUS Status;
|
NTSTATUS Status;
|
||||||
|
|
||||||
Status = IoAllocateDriverObjectExtension(
|
Status = IoAllocateDriverObjectExtension(
|
||||||
|
@ -537,9 +521,6 @@ DriverEntry(
|
||||||
DriverObject->DriverExtension->AddDevice = i8042AddDevice;
|
DriverObject->DriverExtension->AddDevice = i8042AddDevice;
|
||||||
DriverObject->DriverStartIo = i8042StartIo;
|
DriverObject->DriverStartIo = i8042StartIo;
|
||||||
|
|
||||||
for (i = 0; i <= IRP_MJ_MAXIMUM_FUNCTION; i++)
|
|
||||||
DriverObject->MajorFunction[i] = IrpStub;
|
|
||||||
|
|
||||||
DriverObject->MajorFunction[IRP_MJ_CREATE] = i8042Create;
|
DriverObject->MajorFunction[IRP_MJ_CREATE] = i8042Create;
|
||||||
DriverObject->MajorFunction[IRP_MJ_CLEANUP] = i8042Cleanup;
|
DriverObject->MajorFunction[IRP_MJ_CLEANUP] = i8042Cleanup;
|
||||||
DriverObject->MajorFunction[IRP_MJ_CLOSE] = i8042Close;
|
DriverObject->MajorFunction[IRP_MJ_CLOSE] = i8042Close;
|
||||||
|
|
Loading…
Reference in a new issue