Note
Access to this page requires authorization. You can try signing in or .
Access to this page requires authorization. You can try .
REQUEST_OPLOCK_INPUT_BUFFER structure (winioctl.h)
Contains the information to request an opportunistic lock (oplock) or to acknowledge an oplock break with the FSCTL_REQUEST_OPLOCK control code.
Syntax
typedef struct _REQUEST_OPLOCK_INPUT_BUFFER {
WORD StructureVersion;
WORD StructureLength;
DWORD RequestedOplockLevel;
DWORD Flags;
} REQUEST_OPLOCK_INPUT_BUFFER, *PREQUEST_OPLOCK_INPUT_BUFFER;
Members
StructureVersion
The version of the REQUEST_OPLOCK_INPUT_BUFFER structure that is being used. Set this member to REQUEST_OPLOCK_CURRENT_VERSION.
StructureLength
The length of this structure, in bytes. Must be set to
sizeof(REQUEST_OPLOCK_INPUT_BUFFER).
RequestedOplockLevel
A valid combination of the following oplock level values.
| Value | Meaning |
|---|---|
|
Allows clients to cache reads. May be granted to multiple clients. |
|
Allows clients to cache open handles. May be granted to multiple clients. |
|
Allows clients to cache writes and byte range locks. May be granted only to a single client. |
Valid combinations of these values are as follows:
OPLOCK_LEVEL_CACHE_READOPLOCK_LEVEL_CACHE_READ | OPLOCK_LEVEL_CACHE_HANDLEOPLOCK_LEVEL_CACHE_READ | OPLOCK_LEVEL_CACHE_WRITEOPLOCK_LEVEL_CACHE_READ | OPLOCK_LEVEL_CACHE_WRITE | OPLOCK_LEVEL_CACHE_HANDLE
Flags
A valid combination of the following request flag values.
| Value | Meaning |
|---|---|
|
Request for a new oplock. Setting this flag together with REQUEST_OPLOCK_INPUT_FLAG_ACK is not valid and will cause the request to fail with ERROR_INVALID_PARAMETER. |
|
Acknowledgment of an oplock break. Setting this flag together with REQUEST_OPLOCK_ INPUT_FLAG_REQUEST is not valid and will cause the request to fail with ERROR_INVALID_PARAMETER. |
Requirements
| Requirement | Value |
|---|---|
| Minimum supported client | Windows 7 [desktop apps only] |
| Minimum supported server | Windows Server 2008 R2 [desktop apps only] |
| Header | winioctl.h (include Windows.h) |
See also
Feedback
Was this page helpful?
