TDI_REQUEST structure

The TDI_REQUEST structure contains information common to most TDI requests. This structure can be used by transport drivers to pass request-specific information between internal driver routines.

Syntax

typedef struct _TDI_REQUEST {
  union {
    HANDLE             AddressHandle;
    CONNECTION_CONTEXT ConnectionContext;
    HANDLE             ControlChannel;
  } Handle;
  PVOID      RequestNotifyObject;
  PVOID      RequestContext;
  TDI_STATUS TdiStatus;
} TDI_REQUEST, *PTDI_REQUEST;

Members

  • Handle

    • AddressHandle
      Specifies the handle to an open file object representing an address.

    • ConnectionContext
      Specifies the client-supplied context associated with an open file object representing a connection endpoint.

    • ControlChannel
      Specifies the handle to an open file object representing a control channel.

  • RequestNotifyObject
    Pointer to a client-supplied IoCompletion routine, if any. A value of REQNOTIFY_NULL (a system-specific manifest) implies that request is synchronous.

  • RequestContext
    Pointer to a client-supplied context for its IoCompletion routine, if any. This value is passed, uninterpreted by the system or the transport, to the IoCompletion routine when it is called on completion of this request.

  • TdiStatus
    Specifies the final completion status of this request. If the request is synchronous, this is set to the value returned by the transport routine that handles this request.

Remarks

Note   The TDI feature is deprecated and will be removed in future versions of Microsoft Windows. Depending on how you use TDI, use either the Winsock Kernel (WSK) or Windows Filtering Platform (WFP). For more information about WFP and WSK, see Windows Filtering Platform and Winsock Kernel. For a Windows Core Networking blog entry about WSK and TDI, see Introduction to Winsock Kernel (WSK).

 

Requirements

Header

Tdi.h (include Tdi.h or TdiKrnl.h)

See also

TDI_REQUEST_KERNEL

 

 

Send comments about this topic to Microsoft