OID_TAPI_PROVIDER_INITIALIZE

The OID_TAPI_PROVIDER_INITIALIZE OID requests that the miniport driver initialize itself as a TAPI provider. The driver should set up whatever internal state it uses to track incoming requests from TAPI.

Support for this request is mandatory.

This request uses an NDIS_TAPI_PROVIDER_INITITIALIZE structure, defined as follows:

typedef struct _NDIS_TAPI_PROVIDER_INITIALIZE {         
         IN ULONG ulRequestID;
         IN ULONG ulDeviceIDBase;
         OUT ULONG ulNumLineDevs;
         OUT ULONG ulProviderID;
 } NDIS_TAPI_PROVIDER_INITIALIZE,   *PNDIS_TAPI_PROVIDER_INITIALIZE;

The members of this structure contain the following information:

  • ulRequestID
    Reserved.

  • ulDeviceIDBase
    Specifies the lowest device ID for the line devices supported by the miniport driver. Subsequent to this request, the driver uses this value as the zero-based line device identifier value. That is, if ulNumLineDevs is greater than one, the ulDeviceID values subsequently passed in requests such as OID_TAPI_OPEN, contains this value for the first line, this value plus one for the second line, and so forth.

  • ulNumLineDevs
    Specifies the number of line devices supported by the miniport driver to complete this request successfully.

  • ulProviderID
    Specifies an ID for the WAN NIC driver if this request is completed successfully. This value must be unique within the set of WAN drivers that support TAPI; the NdisMiniportContext handle passed in to the MiniportInitialize function can be used to provide a guaranteed unique value.

The MiniportQueryInformationfunction can return one of the following:

NDIS_STATUS_SUCCESS

NDIS_STATUS_PENDING

NDIS_STATUS_TAPI_RESOURCEUNAVAIL

NDIS_STATUS_FAILURE

 

 

Send comments about this topic to Microsoft