NdisMCmRequest function
Note NDIS 5. x has been deprecated and is superseded by NDIS 6. x. For new NDIS driver development, see Network Drivers Starting with Windows Vista. For information about porting NDIS 5. x drivers to NDIS 6. x, see Porting NDIS 5.x Drivers to NDIS 6.0.
NdisMCmRequest issues an OID_GEN_CO_XXX request from an MCM driver to a client.
Syntax
NDIS_STATUS NdisMCmRequest(
_In_ NDIS_HANDLE NdisAfHandle,
_In_opt_ NDIS_HANDLE NdisVcHandle,
_In_opt_ NDIS_HANDLE NdisPartyHandle,
_Inout_ PNDIS_REQUEST NdisRequest
);
Parameters
NdisAfHandle [in]
Specifies the handle identifying the open address family and implicitly the client to which this request is directed. The MCM driver originally obtained this handle as an input parameter to its ProtocolCmOpenAf function.NdisVcHandle [in, optional]
Specifies the handle identifying the VC for which the caller is requesting or setting information if the request is VC-specific, or this parameter is NULL. For any VC-specific request, the caller originally obtained this handle either when it created the VC with NdisMCmCreateVc, or as an input parameter to its ProtocolCoCreateVc function.NdisPartyHandle [in, optional]
Specifies the handle identifying the party on a multipoint VC for which the caller is requesting or setting information if the request is party-specific, or this parameter is NULL. For any party-specific request, the MCM driver originally obtained this handle as an input parameter to its ProtocolCmAddParty function.NdisRequest [in, out]
Pointer to a caller-allocated resident buffer, formatted as a structure of type NDIS_REQUEST set up by the caller.
Return value
When NdisMCmRequest returns anything other than NDIS_STATUS_PENDING, the caller should make an internal call to its ProtocolCoRequestComplete function. Otherwise, NDIS calls that driver's ProtocolCoRequestComplete function when this operation is completed.
Remarks
Before it calls NdisMCmRequest, an MCM driver allocates memory for its request and initializes an NDIS_REQUEST structure. Such a driver sets the Oid member of the NDIS_REQUEST structure with a system-defined OID_GEN_CO_XXX code when communicating with its clients.
An MCM driver can call NdisMCmRequest to communicate connection-oriented information, such as a change in addresses to a given client identified by the NdisAfHandle.
If the MCM driver's request is VC-specific or party-specific in nature, the MCM driver also passes an explicit NdisVcHandle or NdisPartyHandle, respectively, to NdisMCmRequest.
For more information about the OID_GEN_CO_XXX defined for use with NdisMCmRequest, see NDIS Object Identifiers.
Requirements
Target platform |
Universal |
Version |
Not supported for NDIS 6.0 drivers in Windows Vista. Use NdisMCmOidRequestinstead. Supported for NDIS 5.1 drivers in Windows Vista and Windows XP. |
Header |
Ndis.h (include Ndis.h) |
Library |
Ndis.lib |
IRQL |
<= DISPATCH_LEVEL |
See also