Handling Queries in a CoNDIS WAN Miniport Driver
This topic provides an overview of the requirements for handling queries in a CoNDIS WAN miniport driver. An upper-layer driver calls NdisCoOidRequest with a query request to determine WAN-specific capabilities and current status of a CoNDIS WAN miniport driver and the miniport driver's NIC.
After the NDISWAN intermediate driver forwards the query request, NDIS calls the miniport driver's MiniportCoOidRequest function. In a CoNDIS WAN miniport driver, this function is the same as in any connection-oriented miniport driver, except that the CoNDIS WAN miniport driver supports CoNDIS WAN Objects.
If the CoNDIS WAN miniport driver completes MiniportCoOidRequest asynchronously by returning a status of NDIS_STATUS_PENDING, it must complete the query later by calling NdisCoOidRequestComplete.
When NDIS calls MiniportCoOidRequest, NDIS passes a pointer to the NDIS_OID_REQUEST structure that contains the query OID and a buffer to hold the information retrieved from the miniport driver. The miniport driver controls this buffer until the request completes. If the number of bytes specified in the InformationBufferLength member of NDIS_OID_REQUEST is insufficient for the information that the OID requires, the miniport driver should fail the query request and set the BytesNeeded member of NDIS_OID_REQUEST to the number of bytes that the OID requires.
No other requests will be submitted to the particular WAN miniport driver until the current query request completes.
The following table summarizes the OIDs used to get or set operational characteristics for CoNDIS WAN miniport drivers.
|Name||Optional or Required|
|OID_WAN_CO_GET_INFO Get information about virtual connections (VCs).|
|OID_WAN_CO_GET_LINK_INFO Get information about a VC.|
|OID_WAN_CO_GET_STATS_INFO Get statistics information for a VC.|