DUAL_OPLOCK_KEY_ECP_CONTEXT structure (ntifs.h)

The DUAL_OPLOCK_KEY_ECP_CONTEXT structure contains the extra create parameter context for a dual oplock key. Oplocks keys for both a target and a parent file object can be set in this structure.

Syntax

typedef struct _DUAL_OPLOCK_KEY_ECP_CONTEXT {
  GUID    ParentOplockKey;
  GUID    TargetOplockKey;
  BOOLEAN ParentOplockKeySet;
  BOOLEAN TargetOplockKeySet;
} DUAL_OPLOCK_KEY_ECP_CONTEXT, *PDUAL_OPLOCK_KEY_ECP_CONTEXT;

Members

ParentOplockKey

A GUID representing the parent oplock key value.

TargetOplockKey

A GUID representing the target oplock key value.

ParentOplockKeySet

Set to TRUE if ParentOplockKey contains a valid GUID for the parent's oplock key.

TargetOplockKeySet

Set to TRUE if TargetOplockKey contains a valid GUID for the target's oplock key.

Remarks

The DUAL_OPLOCK_KEY_ECP_CONTEXT structure provides dual oplock keys to allow oplock requests on files and directories. Like the OPLOCK_KEY_ECP_CONTEXT structure, DUAL_OPLOCK_KEY_ECP_CONTEXT is set in an extra create parameter list (ECP_LIST) and later associated with a file object during processing of IRP_MJ_CREATE by a file system or file system filter driver.

The value GUID_ECP_DUAL_OPLOCK_KEY is used when calling support routines such as FsRtlAllocateExtraCreateParameter, FsRtlInitializeExtraCreateParameter, or FltRemoveExtraCreateParameter.

Requirements

Requirement Value
Minimum supported client Windows 8
Header ntifs.h

See also

ECP_LIST

IO_DRIVER_CREATE_CONTEXT

IoCreateFileEx

IRP_MJ_CREATE

OPLOCK_KEY_ECP_CONTEXT