NDIS_SWITCH_OPTIONAL_HANDLERS estrutura (ndis.h)
A estrutura NDIS_SWITCH_OPTIONAL_HANDLERS especifica os ponteiros para as funções do manipulador de comutador extensível Hyper-V. Essas funções podem ser chamadas por uma extensão de comutador extensível.
Sintaxe
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;
Membros
Header
O tipo, a revisão e o tamanho da estrutura NDIS_SWITCH_OPTIONAL_HANDLERS. Esse membro é formatado como uma estrutura NDIS_OBJECT_HEADER.
O membro tipo do de cabeçalho deve ser definido como NDIS_OBJECT_TYPE_DEFAULT. Para especificar a versão da estrutura de NDIS_SWITCH_OPTIONAL_HANDLERS, o membro de Revisão do de Cabeçalho deve ser definido como o seguinte valor:
NDIS_SWITCH_OPTIONAL_HANDLERS_REVISION_1
Versão original do NDIS 6.30 e posterior.
Defina o membro tamanho como NDIS_SIZEOF_NDIS_SWITCH_NIC_ARRAY_REVISION_1.
AllocateNetBufferListForwardingContext
Um ponteiro para a função AllocateNetBufferListForwardingContext.
FreeNetBufferListForwardingContext
Um ponteiro para a função FreeNetBufferListForwardingContext.
SetNetBufferListSource
Um ponteiro para a função SetNetBufferListSource.
AddNetBufferListDestination
Um ponteiro para a função AddNetBufferListDestination.
GrowNetBufferListDestinations
Um ponteiro para a função GrowNetBufferListDestinations.
GetNetBufferListDestinations
Um ponteiro para a função GetNetBufferListDestinations.
UpdateNetBufferListDestinations
Um ponteiro para a função UpdateNetBufferListDestinations.
CopyNetBufferListInfo
Um ponteiro para a função CopyNetBufferListInfo.
ReferenceSwitchNic
Um ponteiro para a função ReferenceSwitchNic.
DereferenceSwitchNic
Um ponteiro para a função de DereferenceSwitchNic.
ReferenceSwitchPort
Um ponteiro para a função ReferenceSwitchPort.
DereferenceSwitchPort
Um ponteiro para a função DereferenceSwitchPort.
ReportFilteredNetBufferLists
Um ponteiro para a função ReportFilteredNetBufferLists.
SetNetBufferListSwitchContext
GetNetBufferListSwitchContext
SwitchPDReserved[NDIS_SWITCH_OPTIONAL_HANDLERS_PD_RESERVED_SIZE]
Observações
As funções extensíveis do manipulador de comutador fornecem suporte para ações de filtragem e encaminhamento executadas por uma extensão de comutador extensível. Essas ações incluem o seguinte:
- Aloque ou libere o contexto de encaminhamento. Esses dados são armazenados nos dados OOB (fora de banda) da estrutura de NET_BUFFER_LIST de um pacote. Para obter mais informações sobre o contexto de encaminhamento, consulte Hyper-Vde contexto de encaminhamento extensível de comutador .
- Obtenha ou defina as portas de destino contidas no contexto de encaminhamento de um pacote.
- Adicione portas de destino ao contexto de encaminhamento de um pacote.
Quando a extensão de comutador extensível chama NdisFGetOptionalSwitchHandlers, o parâmetro NdisSwitchHandlers contém um ponteiro para uma estrutura NDIS_SWITCH_OPTIONAL_HANDLERS. Uma extensão de comutador extensível normalmente chama NdisFGetOptionalSwitchHandlers de sua função FilterAttach.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Com suporte no NDIS 6.30 e posterior. |
cabeçalho | ndis.h (inclua Ndis.h) |
Consulte também
AllocateNetBufferListForwardingContext
FreeNetBufferListForwardingContext