NDIS_SWITCH_OPTIONAL_HANDLERS-Struktur (ndis.h)
Die NDIS_SWITCH_OPTIONAL_HANDLERS-Struktur gibt die Zeiger auf die Hyper-V-Erweiterbaren Switch-Handlerfunktionen an. Diese Funktionen können von einer erweiterbaren Switcherweiterung aufgerufen werden.
Syntax
typedef struct _NDIS_SWITCH_OPTIONAL_HANDLERS {
NDIS_OBJECT_HEADER Header;
NDIS_SWITCH_ALLOCATE_NET_BUFFER_LIST_FORWARDING_CONTEXT_HANDLER AllocateNetBufferListForwardingContext;
NDIS_SWITCH_FREE_NET_BUFFER_LIST_FORWARDING_CONTEXT_HANDLER FreeNetBufferListForwardingContext;
NDIS_SWITCH_SET_NET_BUFFER_LIST_SOURCE_HANDLER SetNetBufferListSource;
NDIS_SWITCH_ADD_NET_BUFFER_LIST_DESTINATION_HANDLER AddNetBufferListDestination;
NDIS_SWITCH_GROW_NET_BUFFER_LIST_DESTINATIONS_HANDLER GrowNetBufferListDestinations;
NDIS_SWITCH_GET_NET_BUFFER_LIST_DESTINATIONS_HANDLER GetNetBufferListDestinations;
NDIS_SWITCH_UPDATE_NET_BUFFER_LIST_DESTINATIONS_HANDLER UpdateNetBufferListDestinations;
NDIS_SWITCH_COPY_NET_BUFFER_LIST_INFO_HANDLER CopyNetBufferListInfo;
NDIS_SWITCH_REFERENCE_SWITCH_NIC_HANDLER ReferenceSwitchNic;
NDIS_SWITCH_DEREFERENCE_SWITCH_NIC_HANDLER DereferenceSwitchNic;
NDIS_SWITCH_REFERENCE_SWITCH_PORT_HANDLER ReferenceSwitchPort;
NDIS_SWITCH_DEREFERENCE_SWITCH_PORT_HANDLER DereferenceSwitchPort;
NDIS_SWITCH_REPORT_FILTERED_NET_BUFFER_LISTS_HANDLER ReportFilteredNetBufferLists;
NDIS_SWITCH_SET_NET_BUFFER_LIST_SWITCH_CONTEXT_HANDLER SetNetBufferListSwitchContext;
NDIS_SWITCH_GET_NET_BUFFER_LIST_SWITCH_CONTEXT_HANDLER GetNetBufferListSwitchContext;
PVOID SwitchPDReserved[NDIS_SWITCH_OPTIONAL_HANDLERS_PD_RESERVED_SIZE];
} NDIS_SWITCH_OPTIONAL_HANDLERS, *PNDIS_SWITCH_OPTIONAL_HANDLERS;
Member
Header
Typ, Revision und Größe der NDIS_SWITCH_OPTIONAL_HANDLERS-Struktur . Dieser Member ist als NDIS_OBJECT_HEADER-Struktur formatiert.
Das Type-Element von Header muss auf NDIS_OBJECT_TYPE_DEFAULT festgelegt werden. Um die Version der NDIS_SWITCH_OPTIONAL_HANDLERS-Struktur anzugeben, muss der Revisionsmember von Header auf den folgenden Wert festgelegt werden:
NDIS_SWITCH_OPTIONAL_HANDLERS_REVISION_1
Originalversion für NDIS 6.30 und höher.
Legen Sie das Element Größe auf NDIS_SIZEOF_NDIS_SWITCH_NIC_ARRAY_REVISION_1 fest.
AllocateNetBufferListForwardingContext
Ein Zeiger auf die Funktion AllocateNetBufferListForwardingContext .
FreeNetBufferListForwardingContext
Ein Zeiger auf die FreeNetBufferListForwardingContext-Funktion .
SetNetBufferListSource
Ein Zeiger auf die SetNetBufferListSource-Funktion .
AddNetBufferListDestination
Ein Zeiger auf die AddNetBufferListDestination-Funktion .
GrowNetBufferListDestinations
Ein Zeiger auf die Funktion GrowNetBufferListDestinations .
GetNetBufferListDestinations
Ein Zeiger auf die GetNetBufferListDestinations-Funktion .
UpdateNetBufferListDestinations
Ein Zeiger auf die UpdateNetBufferListDestinations-Funktion .
CopyNetBufferListInfo
Ein Zeiger auf die CopyNetBufferListInfo-Funktion .
ReferenceSwitchNic
Ein Zeiger auf die ReferenceSwitchNic-Funktion .
DereferenceSwitchNic
Ein Zeiger auf die DereferenceSwitchNic-Funktion .
ReferenceSwitchPort
Ein Zeiger auf die ReferenceSwitchPort-Funktion .
DereferenceSwitchPort
Ein Zeiger auf die Funktion DereferenceSwitchPort .
ReportFilteredNetBufferLists
Ein Zeiger auf die ReportFilteredNetBufferLists-Funktion .
SetNetBufferListSwitchContext
GetNetBufferListSwitchContext
SwitchPDReserved[NDIS_SWITCH_OPTIONAL_HANDLERS_PD_RESERVED_SIZE]
Hinweise
Die erweiterbaren Switchhandlerfunktionen bieten Unterstützung für Filter- und Weiterleitungsaktionen, die von einer erweiterbaren Switcherweiterung ausgeführt werden. Diese Aktionen umfassen Folgendes:
- Ordnen Sie den Weiterleitungskontext zu, oder geben Sie diesen frei. Diese Daten werden in den Out-of-Band-Daten (OOB) der NET_BUFFER_LIST-Struktur eines Pakets gespeichert. Weitere Informationen zum Weiterleitungskontext finden Sie unter Hyper-V Extensible Switch Forwarding Context.
- Rufen Sie die Zielports ab, die im Weiterleitungskontext eines Pakets enthalten sind, oder legen Sie sie fest.
- Fügen Sie dem Weiterleitungskontext eines Pakets Zielports hinzu.
Wenn die erweiterbare Switcherweiterung NdisFGetOptionalSwitchHandlers aufruft, enthält der NdisSwitchHandlers-Parameter einen Zeiger auf eine NDIS_SWITCH_OPTIONAL_HANDLERS-Struktur . Eine erweiterbare Switcherweiterung ruft in der Regel NdisFGetOptionalSwitchHandlers über die FilterAttach-Funktion auf.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt in NDIS 6.30 und höher. |
Kopfzeile | ndis.h (include Ndis.h) |
Weitere Informationen
AllocateNetBufferListForwardingContext
FreeNetBufferListForwardingContext