NDIS_SWITCH_ADD_NET_BUFFER_LIST_DESTINATION fonction de rappel (ndis.h)
La fonction AddNetBufferListDestination ajoute un port de destination unique pour un paquet spécifié par une structure NET_BUFFER_LIST .
Syntaxe
NDIS_SWITCH_ADD_NET_BUFFER_LIST_DESTINATION NdisSwitchAddNetBufferListDestination;
NDIS_STATUS NdisSwitchAddNetBufferListDestination(
[in] NDIS_SWITCH_CONTEXT NdisSwitchContext,
[in, out] PNET_BUFFER_LIST NetBufferList,
[in] PNDIS_SWITCH_PORT_DESTINATION Destination
)
{...}
Paramètres
[in] NdisSwitchContext
Valeur NDIS_SWITCH_CONTEXT qui contient le handle du module de commutateur extensible auquel l’extension de commutateur extensible Hyper-V est attachée. Lorsque l’extension appelle NdisFGetOptionalSwitchHandlers, ce handle est retourné par le biais du paramètre NdisSwitchContext .
[in, out] NetBufferList
Pointeur vers une structure NET_BUFFER_LIST pour un paquet.
[in] Destination
Pointeur vers une structure NDIS_SWITCH_PORT_DESTINATION . Cette structure spécifie le port de commutateur extensible de destination vers lequel le paquet sera transféré.
Valeur retournée
Si l’appel réussit, la fonction retourne NDIS_STATUS_SUCCESS. Sinon, elle retourne un code d’erreur NDIS_STATUS_Xxx défini dans Ndis.h.
Remarques
L’extension de commutateur extensible de transfert appelle AddNetBufferListDestination pour définir un port de destination de commutateur extensible unique pour un paquet. L’extension spécifie ce port en initialisant une structure NDIS_SWITCH_PORT_DESTINATION . L’extension définit le paramètre Destination sur un pointeur vers cette structure. Pour plus d’informations sur la spécification d’un port de destination de commutateur extensible, consultez Gestion des données de port de destination du commutateur extensible Hyper-V.
- Seules les extensions de transfert peuvent appeler AddNetBufferListDestination pour ajouter un port de destination pour un paquet. Pour plus d’informations sur ce type d’extension, consultez Transfert d’extensions.
-
Si l’extension de transfert est à l’origine d’un paquet avec un port de destination, l’extension doit d’abord appeler la fonction AllocateNetBufferListForwardingContext . Cette fonction alloue le contexte de transfert de commutateur extensible pour le paquet. Ces données contiennent les ports source et de destination du commutateur extensible dans les informations OOB (out-of-band) du paquet.
Pour plus d’informations sur ce contexte, consultez Contexte de transfert de commutateur extensible Hyper-V.
-
Une fois que l’extension a modifié les informations de port de destination dans la structure NDIS_SWITCH_PORT_DESTINATION , elle appelle AddNetBufferListDestination pour valider les modifications apportées à la structure NET_BUFFER_LIST pour le paquet.
Note Pour des raisons de performances, l’extension ne doit pas appeler la fonction UpdateNetBufferListDestinations pour valider les modifications pour le paquet.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Pris en charge dans NDIS 6.30 et versions ultérieures. |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | ndis.h (inclure Ndis.h) |
IRQL | <= DISPATCH_LEVEL |
Voir aussi