TDI_REQUEST_KERNEL_QUERY_INFORMATION structure

Retrieves query information in response to a TDI_QUERY_INFORMATION request.

Syntax

typedef struct _TDI_REQUEST_KERNEL_QUERY_INFORMATION {
  LONG                        QueryType;
  PTDI_CONNECTION_INFORMATION RequestConnectionInformation;
} TDI_REQUEST_KERNEL_QUERY_INFORMATION, *PTDI_REQUEST_KERNEL_QUERY_INFORMATION;

Members

  • QueryType
    The type of information being requested for the TDI_QUERY_INFORMATION IRP.

    For every TDI transport, QueryType can be set to one of the following system-defined values:

    Value Meaning
    TDI_QUERY_ADDRESS_INFO

    Requests the transport to return information about a particular local-node address, formatted as a TDI_ADDRESS_INFO structure, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress.

    IrpSp->FileObject in the TDI_QUERY_INFORMATION request must point to a file object representing the address or to a connection endpoint already associated with the address for which to return the information.

    TDI_QUERY_CONNECTION_INFO

    Requests the transport to return information about a particular connection, formatted as a TDI_CONNECTION_INFO structure, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress.

    IrpSp->FileObject in the TDI_QUERY_INFORMATION request must point to a file object representing the connection for which to return the information.

    TDI_QUERY_BROADCAST_ADDRESS

    Requests the transport to return a broadcast address, formatted as a TRANSPORT_ADDRESS structure, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress.

    IrpSp->FileObject in the TDI_QUERY_INFORMATION request must point to a file object representing a control channel.

    TDI_QUERY_NETWORK_ADDRESS

    Requests the transport to return a local-node address, formatted as a TRANSPORT_ADDRESS structure, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress.

    IrpSp->FileObject in the TDI_QUERY_INFORMATION request must point to a file object representing a control channel.

    TDI_QUERY_DATA_LINK_ADDRESS

    Requests the transport to return the datalink address, formatted as a TRANSPORT_ADDRESS structure, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress.

    IrpSp->FileObject in the TDI_QUERY_INFORMATION request must point to a file object representing a control channel.

    TDI_QUERY_PROVIDER_INFO

    Requests the transport to return information about its own capabilities, formatted as a TDI_PROVIDER_INFO structure, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress.

    IrpSp->FileObject in the TDI_QUERY_INFORMATION request must point to a file object representing a control channel.

    TDI_QUERY_PROVIDER_STATISTICS

    Requests the transport to return information about its resource usage, formatted as a TDI_PROVIDER_STATISTICS structure, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress.

    IrpSp->FileObject in the TDI_QUERY_INFORMATION request must point to a file object representing a control channel.

    TDI_QUERY_DATAGRAM_INFO

    Requests the transport to return information about its limits on size and number of datagrams, formatted as a TDI_DATAGRAM_INFO structure, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress.

    IrpSp->FileObject in the TDI_QUERY_INFORMATION request must point to a file object representing a control channel. A transport also can support this query on open transport addresses at the discretion of the transport writer.

    TDI_QUERY_MAX_DATAGRAM_INFO

    Requests the transport to return information about its limit on datagram size, formatted as a TDI_MAX_DATAGRAM_INFO structure, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress.

    IrpSp->FileObject in the TDI_QUERY_INFORMATION request must point to a file object representing a control channel. A transport also can support this query on open transport addresses at the discretion of the transport writer.

     

    In addition to the preceding queries, which every TDI transport must support, a particular transport might support others. For example, NetBIOS transports also must respond to three additional system-defined TDI_QUERY_ Xxx, as described in the Remarks section.

  • RequestConnectionInformation
    Pointer to a TDI_CONNECTION_INFORMATION structure.

    A transport can typically ignore the RequestConnectionInformation member because it is typically NULL. NetBIOS transports might require this member. For more information, see the Remarks section.

Remarks

For any NetBIOS transport, QueryType also can specify one of the following:

  • TDI_QUERY_FIND_NAME
    Requests the NetBIOS transport to return the information, formatted as FIND_NAME_HEADER followed by FIND_NAME_BUFFER structures, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress. For this query type, RequestConnectionInformation in the TDI_QUERY_INFORMATION request must point to a valid TDI_CONNECTION_INFORMATION structure.

  • TDI_QUERY_SESSION_STATUS
    Requests the transport to return the information, formatted as SESSION_HEADER followed by SESSION_BUFFER structures, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress.

  • TDI_QUERY_ADAPTER_STATUS
    Requests the transport to return the information, formatted as an ADAPTER_STATUS structure, in the client-supplied buffer mapped in the TDI_QUERY_INFORMATION request at MdlAddress.

Requirements

Header

Tdikrnl.h

See also

TDI_QUERY_INFORMATION

 

 

Send comments about this topic to Microsoft