NdisMGetOffloadHandlers-Funktion (ndischimney.h)
[Das TCP-Chimney-Auslagerungsfeature ist veraltet und sollte nicht verwendet werden.]
Diese Funktion ruft die Einstiegspunkte der NDIS-Funktionen für einen bestimmten Schornsteintyp ab.
Syntax
NDIS_STATUS NdisMGetOffloadHandlers(
[in] IN NDIS_HANDLE NdisMiniportHandle,
[in] IN NDIS_CHIMNEY_OFFLOAD_TYPE ChimneyType,
[out] OUT PNDIS_OFFLOAD_EVENT_HANDLERS *OffloadHandlers
);
Parameter
[in] NdisMiniportHandle
Das Handle für einen Kontextbereich, der zielseitig zugeordnet ist, in dem das Auslagerungsziel Zustandsinformationen zu diesem instance des Adapters verwaltet. Das Auslagerungsziel hat dieses Handle beim Aufrufen von NDIS bereitgestellt. NdisMSetMiniportAttributes aus MiniportInitializeEx-Funktion .
[in] ChimneyType
Ein Schornsteintyp, der einer der folgenden NDIS_CHIMNEY_OFFLOAD_TYPE Werte ist:
NdisTcpChimneyOffload
Der TCP-Schornstein-Abladetyp.
Alle anderen NDIS_CHIMNEY_OFFLOAD_TYPE Werte sind derzeit reserviert.
[out] OffloadHandlers
Ein Zeiger auf eine Variable, die vom Auslagerungsziel bereitgestellt wird. Die Größe dieser Variablen ist sizeof(PNDIS_OFFLOAD_EVENT_HANDLERS). Wenn der Aufruf der NdisMGetOffloadHandlers-Funktion erfolgreich ist, gibt die Funktion in dieser Variablen einen Zeiger auf eine NDIS_OFFLOAD_EVENT_HANDLERS-Struktur zurück. Diese Struktur dient als Header für die schornsteinspezifische Struktur, die die Einstiegspunkte enthält. Die NDIS_OFFLOAD_EVENT_HANDLERS-Struktur ist wie folgt formatiert:
typedef struct _NDIS_OFFLOAD_EVENT_HANDLERS {
NDIS_OBJECT_HEADER Header;
} NDIS_OFFLOAD_EVENT_HANDLERS, *PNDIS_OFFLOAD_EVENT_HANDLERS;
Diese Struktur enthält das folgende Element:
Header
Gibt einen NDIS-Objektheader an, der als NDIS_OBJECT_HEADER-Struktur formatiert ist.
Rückgabewert
NdisMGetOffloadHandlers können eine der folgenden Elemente zurückgeben:
Rückgabecode | Beschreibung |
---|---|
|
Der Aufruf war erfolgreich. Die zurückgegebenen NDIS-Einstiegspunkte sind für den angegebenen Schornsteintyp gültig. |
|
NDIS unterstützt nicht den vom Auslagerungsziel angegebenen Schornsteintyp. In diesem Fall gibt NDIS keinen gültigen OffloadHandlers-Zeiger zurück. |
Hinweise
Das Auslagerungsziel ruft diese Funktion über seine MiniportInitializeEx-Funktion auf, um die Einstiegspunkte der NDIS-Funktionen für einen bestimmten Schornsteintyp abzurufen. Das Auslagerungsziel ruft NdisMGetOffloadHandlers einmal für jeden unterstützten Schornsteintyp auf. In jedem Aufruf gibt das Auslagerungsziel einen anderen Schornsteintyp an.
Wenn der Aufruf der NdisMGetOffloadHandlers-Funktion erfolgreich ist, stellt NDIS einen gültigen OffloadHandlers-Zeiger bereit, der auf eine NDIS_OFFLOAD_EVENT_HANDLERS Struktur verweist. Diese Struktur enthält eine NDIS_OBJECT_HEADER-Struktur . Das Auslagerungsziel untersucht die Elemente Type, Revision und Size der NDIS_OBJECT_HEADER-Struktur. Diese Member geben die Struktur an, die die schornsteinspezifischen Einstiegspunkte, die Revisionsnummer dieser Struktur und die Größe dieser Struktur in Bytes enthält. Der Type-Wert ist derselbe Wert, den das Auslagerungsziel für den ChimneyType-Parameter angegeben hat.
Wenn das Auslagerungsziel die angegebene Revisionsnummer unterstützt, wandelt es den OffloadHandlers-Zeiger in einen Zeiger auf den entsprechenden schornsteinspezifischen Strukturtyp um. In der folgenden Tabelle ist die schornsteinspezifische Struktur für jeden Schornsteintyp angegeben.
ChimneyType | Schornsteinspezifische Handlerstruktur |
---|---|
NdisTcpChimneyOffload | NDIS_TCP_OFFLOAD_EVENT_HANDLERS |
Beispiel: Für den Chimneytyp NdisTcpChimneyOffload wandelt das Auslagerungsziel den OffloadHandlers-Zeiger auf *PNDIS_TCP_OFFLOAD_EVENT_HANDLERS um.
Die Schornstein-spezifischen Handlerstruktur enthält dieselbe NDIS_OBJECT_HEADER-Struktur wie die NDIS_OFFLOAD_EVENT_HANDLERS-Struktur.
Das Auslagerungsziel kopiert die Einstiegspunkte aus der schornsteinspezifischen Struktur in eine eigene interne Datenstruktur und gibt dann zurück.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
Header | ndischimney.h (include Ndischimney.h) |