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
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour