OID_TAPI_DEV_SPECIFIC
The OID_TAPI_DEV_SPECIFIC OID requests the miniport driver to provide access to features not accessible through other OID requests. The meaning of the extensions are device-specific, so the application must be fully aware of them to take advantage of these extensions.
Support for this request is optional.
This request uses an NDIS_TAPI_DEV_SPECIFIC structure, defined as follows, to query and provide access to features not specified in other TAPI OID requests:
typedef struct _NDIS_TAPI_DEV_SPECIFIC {
IN ULONG ulRequestID;
IN HDRV_LINE hdLine;
IN ULONG ulAddressID;
IN HDRV_CALL hdCall;
IN OUT ULONG ulParamsSize;
IN OUT UCHAR Params[1];
} NDIS_TAPI_DEV_SPECIFIC, *PNDIS_TAPI_DEV_SPECIFIC;
The members of this structure contain the following device-specific information:
ulRequestID
Reserved.hdLine
Specifies the miniport driver's handle to the line to be operated on.ulAddressID
Specifies the address on the specified line to be operated on.hdCall
Specifies the miniport driver's handle to the call to be operated on. This member can be NULL.ulParamsSize
Specifies the number of bytes in the following parameter block. On entry, this member will contain the size in bytes of the parameter block passed in to the miniport driver.If the miniport driver returns information in the parameter block, it should set this member to the size in bytes of the returned information, which cannot exceed the input ulParamsSize. Otherwise, the miniport driver should set this member to zero to indicate that it is returning no information.
Params
Specifies a device-specific parameter block.
The MiniportQueryInformationfunction can return one of the following:
NDIS_STATUS_SUCCESS
NDIS_STATUS_PENDING
NDIS_STATUS_TAPI_INVALLINEHANDLE
NDIS_STATUS_TAPI_INVALADDRESSID
NDIS_STATUS_TAPI_OPERATIONUNAVAIL
NDIS_STATUS_TAPI_RESOURCEUNAVAIL
NDIS_STATUS_FAILURE