NDIS_TAPI_GET_ID

The NDIS_TAPI_GET_ID structure is used by OID_TAPI_GET_ID when it requests the miniport driver to return a device identifier for the specified device class associated with the selected line, address, or call.

Support for this request is mandatory.

typedef struct _NDIS_TAPI_GET_ID { 
  ULONG ulRequestID; 
  HDRV_LINE hdLine; 
  ULONG ulAddressID; 
  HDRV_CALL hdCall; 
  ULONG ulSelect; 
  ULONG ulDeviceClassSize; 
  ULONG ulDeviceClassOffset; 
  VAR_STRING DeviceID; 
} NDIS_TAPI_GET_ID, *PNDIS_TAPI_GET_ID; 

Members

  • ulRequestID
    [in] Reserved.

  • hdLine
    [in] Specifies the miniport driver's handle to the line.

  • ulAddressID
    [in] Specifies an address on the given open line device. The value of this member is not validated by NDISTAPI when this request is made.

  • hdCall
    [in] Specifies the miniport driver's handle to the call.

  • ulSelect
    [in] Specifies whether the device identifier is associated with the line, address, or a single call as one of the following:

  • LINECALLSELECT_LINE
    [in] Selects the specified line device. The hdLine member must contain a valid line handle; hdCall and ulAddressID are unused.

  • LINECALLSELECT_ADDRESS
    Selects the specified address on the line. Both hdLine and ulAddressID must be valid; hdCall is unused.

  • LINECALLSELECT_CALL
    Selects the specified call. The hdCall member must be valid; hdLine and ulAddressID are unused.

  • ulDeviceClassSize
    [in] Specifies the size in bytes of the zero-terminated, variable-size string specifying the device class of the device for which the configuration should be returned.

  • ulDeviceClassOffset
    [in] Specifies the offset in bytes to the device-class string.

  • DeviceID
    [out] Specifies the virtual address of a data structure of type VAR_STRING in which the device identifier should be returned.

    The miniport driver fills this structure with the device identifier to complete this request successfully.

    Currently, there are two types of this request that must be supported by WAN NIC drivers:

    IN DeviceClass = "ndis" // case insensitive
    IN ulSelect = LINECALLSELECT_CALL
    IN hdCall = ActiveCallHandle
    OUT DeviceID = ConnectionWrapperID 
    

    DeviceID should be set to the NdisLinkContext handle returned by the WAN protocol driver in the NDIS_MAC_LINE_UP structure for the initial NDIS_STATUS_WAN_LINE_UP indication to establish the link.

    The miniport driver must make the initial line-up indication to establish a link (or open a data channel on a line) before returning from this request in order to supply this DeviceID value.

    IN DeviceClass = "tapi/line"
    IN ulSelect = LINECALLSELECT_LINE
    IN hdLine = OpenLineHandle
    OUT DeviceID = ulDeviceID 
    

    DeviceID will be set to the miniport driver-determined DeviceID associated with the line handle.

Remarks

The MiniportQueryInformation function can return one of the following:

  • NDIS_STATUS_SUCCESS
  • NDIS_STATUS_PENDING
  • NDIS_STATUS_TAPI_INVALLINEHANDLE
  • NDIS_STATUS_TAPI_INVALADDRESSID
  • NDIS_STATUS_TAPI_INVALCALLHANDLE
  • NDIS_STATUS_TAPI_NODEVICE
  • NDIS_STATUS_TAPI_RESOURCEUNAVAIL
  • NDIS_STATUS_FAILURE

Requirements

OS Versions: Windows CE .NET 4.0 and later.
Header: Ntddndis.h and Ndistapi.h.

See Also

NDIS_MAC_LINE_UP | OID_TAPI_GET_ID | MiniportQueryInformation | VAR_STRING

 Last updated on Tuesday, May 18, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.