NDIS_SWITCH_OPTIONAL_HANDLERS structure (ndis.h)
La structure NDIS_SWITCH_OPTIONAL_HANDLERS spécifie les pointeurs vers les fonctions de gestionnaire de commutateur extensible Hyper-V. Ces fonctions peuvent être appelées par une extension de commutateur extensible.
Syntaxe
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;
Membres
Header
Type, révision et taille de la structure NDIS_SWITCH_OPTIONAL_HANDLERS . Ce membre est mis en forme en tant que structure NDIS_OBJECT_HEADER .
Le membre Type de l’en-tête doit être défini sur NDIS_OBJECT_TYPE_DEFAULT. Pour spécifier la version de la structure NDIS_SWITCH_OPTIONAL_HANDLERS , le membre Revision de Header doit être défini sur la valeur suivante :
NDIS_SWITCH_OPTIONAL_HANDLERS_REVISION_1
Version d’origine pour NDIS 6.30 et versions ultérieures.
Définissez le membre Taille sur NDIS_SIZEOF_NDIS_SWITCH_NIC_ARRAY_REVISION_1.
AllocateNetBufferListForwardingContext
Pointeur vers la fonction AllocateNetBufferListForwardingContext .
FreeNetBufferListForwardingContext
Pointeur vers la fonction FreeNetBufferListForwardingContext .
SetNetBufferListSource
Pointeur vers la fonction SetNetBufferListSource .
AddNetBufferListDestination
Pointeur vers la fonction AddNetBufferListDestination .
GrowNetBufferListDestinations
Pointeur vers la fonction GrowNetBufferListDestinations .
GetNetBufferListDestinations
Pointeur vers la fonction GetNetBufferListDestinations .
UpdateNetBufferListDestinations
Pointeur vers la fonction UpdateNetBufferListDestinations .
CopyNetBufferListInfo
Pointeur vers la fonction CopyNetBufferListInfo .
ReferenceSwitchNic
Pointeur vers la fonction ReferenceSwitchNic .
DereferenceSwitchNic
Pointeur vers la fonction DereferenceSwitchNic .
ReferenceSwitchPort
Pointeur vers la fonction ReferenceSwitchPort .
DereferenceSwitchPort
Pointeur vers la fonction DereferenceSwitchPort .
ReportFilteredNetBufferLists
Pointeur vers la fonction ReportFilteredNetBufferLists .
SetNetBufferListSwitchContext
GetNetBufferListSwitchContext
SwitchPDReserved[NDIS_SWITCH_OPTIONAL_HANDLERS_PD_RESERVED_SIZE]
Remarques
Les fonctions de gestionnaire de commutateurs extensibles prennent en charge les actions de filtrage et de transfert effectuées par une extension de commutateur extensible. Ces actions incluent :
- Allouez ou libérez le contexte de transfert. Ces données sont stockées dans les données hors bande (OOB) de la structure NET_BUFFER_LIST d’un paquet. Pour plus d’informations sur le contexte de transfert, consultez Contexte de transfert de commutateur extensible Hyper-V.
- Obtenez ou définissez les ports de destination contenus dans le contexte de transfert d’un paquet.
- Ajouter des ports de destination au contexte de transfert d’un paquet.
Lorsque l’extension de commutateur extensible appelle NdisFGetOptionalSwitchHandlers, le paramètre NdisSwitchHandlers contient un pointeur vers une structure NDIS_SWITCH_OPTIONAL_HANDLERS . Une extension de commutateur extensible appelle généralement NdisFGetOptionalSwitchHandlers à partir de sa fonction FilterAttach .
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Pris en charge dans NDIS 6.30 et versions ultérieures. |
En-tête | ndis.h (inclure Ndis.h) |
Voir aussi
AllocateNetBufferListForwardingContext
FreeNetBufferListForwardingContext