FLT_PARAMETERS for IRP_MJ_LOCK_CONTROL union

The following union component is used when the MajorFunction field of the FLT_IO_PARAMETER_BLOCK structure for the operation is IRP_MJ_LOCK_CONTROL.

Syntax


typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    PLARGE_INTEGER          Length;
    ULONG POINTER_ALIGNMENT Key;
    LARGE_INTEGER           ByteOffset;
    PEPROCESS               ProcessId;
    BOOLEAN                 FailImmediately;
    BOOLEAN                 ExclusiveLock;
  } LockControl;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

Members

LockControl

Structure containing the following members.

Length

Pointer to a variable that specifies the length in bytes of the range to be locked.

Key

Key value to be assigned to the byte-range lock.

ByteOffset

Starting byte offset within the file of the range to be locked.

ProcessId

Opaque pointer to the process ID for the process that requested the byte-range lock.

FailImmediately

Boolean value specifying whether the lock request should fail if the lock cannot be granted immediately. This member is set to FALSE if the requesting thread can be put into a wait state until the request is granted or TRUE if it cannot.

ExclusiveLock

Boolean value specifying whether an exclusive lock is requested. This member is set to TRUE if an exclusive lock is requested or FALSE if a shared lock is requested.

Remarks

The FLT_PARAMETERS structure for the IRP_MJ_LOCK_CONTROL operation represented by a callback data (FLT_CALLBACK_DATA) structure. It is contained in an FLT_IO_PARAMETER_BLOCK structure.

IRP_MJ_LOCK_CONTROL can be an IRP-based I/O operation or a fast I/O operation.

Requirements

Header

Fltkernel.h (include Fltkernel.h)

See also

ACCESS_MASK
ACCESS_STATE
FLT_CALLBACK_DATA
FLT_IO_PARAMETER_BLOCK
FLT_IS_FASTIO_OPERATION
FLT_IS_FS_FILTER_OPERATION
FLT_IS_IRP_OPERATION
FLT_PARAMETERS
FltAllocateFileLock
FltCheckLockForReadAccess
FltCheckLockForWriteAccess
FltFreeFileLock
FltInitializeFileLock
FltProcessFileLock
FltUninitializeFileLock
IRP_MJ_LOCK_CONTROL
PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINE
PUNLOCK_ROUTINE

 

 

Send comments about this topic to Microsoft

Show: