NTSTATUS FspSetVolumeInformation( PDEVICE_OBJECT DeviceObject, PIRP Irp) { FSP_ENTER_MJ(PAGED_CODE()); switch (FspDeviceExtension(DeviceObject)->Kind) { case FspFsvolDeviceExtensionKind: FSP_RETURN(Result = FspFsvolSetVolumeInformation(DeviceObject, Irp, IrpSp)); default: FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); } FSP_LEAVE_MJ("%s", FsInformationClassSym(IrpSp->Parameters.SetVolume.FsInformationClass)); }
NTSTATUS FspSetSecurity( PDEVICE_OBJECT DeviceObject, PIRP Irp) { FSP_ENTER_MJ(PAGED_CODE()); switch (FspDeviceExtension(DeviceObject)->Kind) { case FspFsvolDeviceExtensionKind: FSP_RETURN(Result = FspFsvolSetSecurity(DeviceObject, Irp, IrpSp)); default: FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); } FSP_LEAVE_MJ("FileObject=%p, SecurityInformation=%x", IrpSp->FileObject, IrpSp->Parameters.SetSecurity.SecurityInformation); }
NTSTATUS FspLockControl( PDEVICE_OBJECT DeviceObject, PIRP Irp) { FSP_ENTER_MJ(PAGED_CODE()); switch (FspDeviceExtension(DeviceObject)->Kind) { case FspFsvolDeviceExtensionKind: FSP_RETURN(Result = FspFsvolLockControl(DeviceObject, Irp, IrpSp)); default: FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); } FSP_LEAVE_MJ("FileObject=%p, " "Key=%#lx, ByteOffset=%#lx:%#lx, Length=%lld", IrpSp->FileObject, IrpSp->Parameters.LockControl.Key, IrpSp->Parameters.LockControl.ByteOffset.HighPart, IrpSp->Parameters.LockControl.ByteOffset.LowPart, IrpSp->Parameters.LockControl.Length->QuadPart); }