NdisCmRegisterSapComplete function (ndis.h)

NdisCmRegisterSapComplete returns the final status of a client's request, for which the CM previously returned NDIS_STATUS_PENDING, to register a SAP.

Syntax

void NdisCmRegisterSapComplete(
  [in] NDIS_STATUS Status,
  [in] NDIS_HANDLE NdisSapHandle,
  [in] NDIS_HANDLE CallMgrSapContext
);

Parameters

[in] Status

Specifies the final status of the client's original request to register the SAP, either NDIS_STATUS_SUCCESS or any CM-determined NDIS_STATUS_XXX except NDIS_STATUS_PENDING.

[in] NdisSapHandle

Specifies the NDIS-supplied handle to the SAP if the registration is successful. The call manager obtained this handle as an input parameter to its ProtocolCmRegisterSap function.

[in] CallMgrSapContext

Specifies the handle to a caller-supplied resident context area in which the CM maintains state for this SAP if the registration is successful. If so, NDIS passes this handle back to the CM in all subsequent calls concerning this SAP. If Status is set to something other than NDIS_STATUS_SUCCESS, NDIS ignores this parameter.

Return value

None

Remarks

A stand-alone call manager must call NdisCmRegisterSapComplete if its ProtocolCmRegisterSap function returned NDIS_STATUS_PENDING when it was called with the given NdisSapHandle . The call to NdisCmRegisterSapComplete causes NDIS to call the client's ProtocolClRegisterSapComplete function.

If the call manager sets Status to anything other than NDIS_STATUS_SUCCESS, it should consider the NdisSapHandle invalid as soon as it calls NdisCmRegisterSapComplete. After failing a SAP registration, the CM can release or reuse the per-SAP context area that it allocated when NdisCmRegisterSapComplete returns control. NDIS also releases its context for the SAP if the call manager fails the registration.

Only stand-alone call managers, which register themselves with NDIS as protocol drivers, can call NdisCmRegisterSapComplete. Connection-oriented miniport drivers that provide integrated call-management support call NdisMCmRegisterSapComplete.

Requirements

Requirement Value
Minimum supported client Supported for NDIS 6.0 and NDIS 5.1 drivers (see NdisCmRegisterSapComplete (NDIS 5.1)) in Windows Vista. Supported for NDIS 5.1 drivers (see NdisCmRegisterSapComplete (NDIS 5.1)) in Windows XP.
Target Platform Desktop
Header ndis.h (include Ndis.h)
Library Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI compliance rules Irql_CallManager_Function(ndis)

See also

NdisAllocateFromNPagedLookasideList

NdisClRegisterSap

NdisMCmRegisterSapComplete

ProtocolClRegisterSapComplete

ProtocolCmRegisterSap