PMRX_COMPUTE_NEW_BUFFERING_STATE - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// mrx.h

PMRX_COMPUTE_NEW_BUFFERING_STATE PmrxComputeNewBufferingState;

NTSTATUS PmrxComputeNewBufferingState(
  [in, out] IN OUT PMRX_SRV_OPEN SrvOpen,
  [in]      IN PVOID MRxContext,
  [out]     OUT PULONG NewBufferingState
)
{...}
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (nc-mrx-pmrx_compute_new_buffering_state)

PMRX_COMPUTE_NEW_BUFFERING_STATE callback function

Description

TheMRxComputeNewBufferingState routine is called by RDBSS to request that the network mini-redirector compute a new buffering state change.

Parameters

SrvOpen [in, out]

A pointer to the SRV_OPEN structure and the associated FCB structure.

MRxContext [in]

A pointer to a context parameter for use by the network mini-redirector callback.

NewBufferingState [out]

A pointer to where the new buffering state is stored when the routine returns.

Return value

MRxComputeNewBufferingState returns STATUS_SUCCESS on success or an appropriate NTSTATUS value, such as the following:

Return code Description
STATUS_NOT_SUPPORTED A feature that is requested is not supported.

Remarks

Before calling MRxComputeNewBufferingState, RDBSS sets the FcbState member of SrvOpen->Fcb to FCB_STATE_BUFFERSTATE_CHANGING.

The Server Message Block (SMB) redirector uses MRxComputeNewBufferingState to map the SMB-specific oplock levels into the appropriate RDBSS buffering state flags. The oplock level is passed in the MrxContext parameter.

See also

MRxCompleteBufferingStateChangeRequest

MRxGetConnectionId