PMRX_SRVCALL_WINNER_NOTIFY callback function (mrx.h)
The MRxSrvCallWinnerNotify routine is called by RDBSS to notify a network mini-redirector that it was chosen when multiple redirectors could fulfill the request.
Syntax
PMRX_SRVCALL_WINNER_NOTIFY PmrxSrvcallWinnerNotify;
NTSTATUS PmrxSrvcallWinnerNotify(
IN OUT PMRX_SRV_CALL SrvCall,
IN BOOLEAN ThisMinirdrIsTheWinner,
IN OUT PVOID RecommunicateContext
)
{...}
Parameters
SrvCall
[in, out] A pointer to an SRV_CALL structure that is created by the network mini-redirector.
ThisMinirdrIsTheWinner
[in] A Boolean value that indicates that this network mini-redirector was chosen.
RecommunicateContext
[in/out] Pointer to the network mini-redirector-provided value in PMRX_CREATE_SRVCALL.
Return value
MRxSmbSrvCallWinnerNotify returns STATUS_SUCCESS on success.
Remarks
MRxSrvCallWinnerNotify was originally designed to be called by RDBSS to notify a network mini-redirector that it was chosen when multiple redirectors could fulfill the request. The chosen network mini-redirector is expected to create the SRV_CALL structure and establish a connection with the server.
The network mini-redirector should complete the context for the SRV_CALL structure. If the network mini-redirector supports case-insensitive names for NET_ROOT structures and for filenames, then the SRV_CALL Flags member should set the bits for SRVCALL_FLAG_CASE_INSENSITIVE_NETROOTS and SRVCALL_FLAG_CASE_INSENSITIVE_FILENAMES.
Under the current implementation of RDBSS, each network mini-redirector has its own copy of RDBSS, so there are no competing network redirectors at the RDBSS layer. All network mini-redirectors will receive a call to MRxSrvCallWinnerNotify with the ThisMinirdrIsTheWinner parameter set to TRUE after receiving a call to MRxCreateSrvCall to create the SRV_CALL structure.
When multiple redirectors are installed for handling the same UNC namespace, the redirector to service a request is chosen by multiple UNC provider (MUP) based on the order of redirectors specified in the registry.
Requirements
Requirement | Value |
---|---|
Target Platform | Desktop |
Header | mrx.h (include Mrx.h) |