TdiRegisterProvider function

The TdiRegisterProvider function notifies TDI that a PnP-supporting transport driver is initializing and that the transport will make a subsequent call to TdiProviderReady when it has established its bindings to one or more underlying NDIS miniport drivers and is ready to carry out network I/O operations.

Syntax

NTSTATUS TdiRegisterProvider(
  _In_  PUNICODE_STRING ProviderName,
  _Out_ HANDLE          *ProviderHandle
);

Parameters

  • ProviderName [in]
    Pointer to a buffered Unicode string that is a generic name for the transport, such as \device\tcp_{ GUID_for_tcp}, \device\nwlinkipx, and so forth.

  • ProviderHandle [out]
    Specifies the caller-supplied location of a variable in which TdiRegisterProvider returns an opaque handle if this call succeeds.

Return value

TdiRegisterProvider returns STATUS_SUCCESS when TDI has set up whatever internal state it maintains to track this transport and notified its potential clients of this transport's existence. Otherwise, it can return STATUS_INSUFFICIENT_RESOURCES, although it is highly unlikely to ever return this status to a transport that is initializing itself during system startup.

Remarks

TDI transport drivers call TdiRegisterProvider from their DriverEntry routines.

The handle returned by a successful call to TdiRegisterProvider must be saved for a subsequent call to TdiProviderReady and for a reciprocal call to TdiDeregisterProvider from the transport driver's Unload routine.

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

Target platform

Universal

Header

Tdikrnl.h (include TdiKrnl.h)

Library

Tdi.lib

IRQL

< DISPATCH_LEVEL

See also

TdiDeregisterProvider

TdiProviderReady

 

 

Send comments about this topic to Microsoft