diff --git a/src/sys/devctl.c b/src/sys/devctl.c index 8d76f32a..8e6f9d26 100644 --- a/src/sys/devctl.c +++ b/src/sys/devctl.c @@ -8,11 +8,14 @@ static NTSTATUS FspFsvolDeviceControl( PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp); +static NTSTATUS FspFsvolRedirQueryPathEx( + PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp); FSP_IOCMPL_DISPATCH FspFsvolDeviceControlComplete; FSP_DRIVER_DISPATCH FspDeviceControl; #ifdef ALLOC_PRAGMA #pragma alloc_text(PAGE, FspFsvolDeviceControl) +#pragma alloc_text(PAGE, FspFsvolRedirQueryPathEx) #pragma alloc_text(PAGE, FspFsvolDeviceControlComplete) #pragma alloc_text(PAGE, FspDeviceControl) #endif @@ -22,6 +25,22 @@ static NTSTATUS FspFsvolDeviceControl( { PAGED_CODE(); + NTSTATUS Result = STATUS_INVALID_DEVICE_REQUEST; + switch (IrpSp->Parameters.DeviceIoControl.IoControlCode) + { + case IOCTL_REDIR_QUERY_PATH_EX : + Result = FspFsvolRedirQueryPathEx(DeviceObject, Irp, IrpSp); + break; + } + + return Result; +} + +static NTSTATUS FspFsvolRedirQueryPathEx( + PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp) +{ + PAGED_CODE(); + return STATUS_INVALID_DEVICE_REQUEST; }