Author: pschweitzer Date: Tue Oct 3 06:40:08 2017 New Revision: 76032 URL: http://svn.reactos.org/svn/reactos?rev=76032&view=rev Log: [CLASS2] It's up to class drivers to handle MountMgr requests. So, make it handle them, even though that's just to fail because it's not implemented. This will stop IOCTLs to be sent down in the storage stack.
Modified: trunk/reactos/drivers/storage/class/class2/class2.c Modified: trunk/reactos/drivers/storage/class/class2/class2.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/class/class2/class2.c?rev=76032&r1=76031&r2=76032&view=diff ============================================================================== --- trunk/reactos/drivers/storage/class/class2/class2.c [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/class/class2/class2.c [iso-8859-1] Tue Oct 3 06:40:08 2017 @@ -8,6 +8,7 @@ #include <ntddk.h> #include <ntdddisk.h> +#include <mountdev.h> #include <scsi.h> #include <include/class2.h> #include <stdio.h> @@ -4040,6 +4041,17 @@ goto SetStatusAndReturn; } + if (irpStack->Parameters.DeviceIoControl.IoControlCode == IOCTL_MOUNTDEV_QUERY_DEVICE_NAME || + irpStack->Parameters.DeviceIoControl.IoControlCode == IOCTL_MOUNTDEV_QUERY_UNIQUE_ID || + irpStack->Parameters.DeviceIoControl.IoControlCode == IOCTL_MOUNTDEV_QUERY_SUGGESTED_LINK_NAME) { + UNIMPLEMENTED; + Irp->IoStatus.Information = 0; + Irp->IoStatus.Status = STATUS_NOT_IMPLEMENTED; + IoCompleteRequest(Irp, IO_NO_INCREMENT); + status = STATUS_NOT_IMPLEMENTED; + goto SetStatusAndReturn; + } + srb = ExAllocatePool(NonPagedPool, SCSI_REQUEST_BLOCK_SIZE); if (srb == NULL) {