estrutura NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO (ndis.h)
[O recurso de descarregamento de tarefa IPsec foi preterido e não deve ser usado.]
A estrutura NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO especifica informações usadas no descarregamento de tarefas IPsecOV2 (descarregamento de segurança de protocolo internet versão 2) do transporte TCP/IP para uma NIC.
Sintaxe
typedef struct _NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO {
union {
struct {
PVOID OffloadHandle;
} Transmit;
struct {
ULONG SaDeleteReq : 1;
ULONG CryptoDone : 1;
ULONG NextCryptoDone : 1;
ULONG Reserved : 13;
ULONG CryptoStatus : 16;
} Receive;
};
} NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO, *PNDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO;
Membros
Transmit
Uma estrutura que contém os seguintes membros:
Transmit.OffloadHandle
Um identificador para a SA (associação de segurança de saída) para um pacote que tem apenas uma carga IPsec para uma conexão de transporte (de ponta a ponta).
Receive
Uma estrutura que contém os seguintes membros:
Receive.SaDeleteReq
Um valor ULONG que, quando definido, indica que o transporte TCP/IP deve emitir o OID_TCP_TASK_IPSEC_OFFLOAD_V2_DELETE_SA OID uma vez para excluir a SA de entrada em que o pacote foi recebido e mais uma vez para excluir a SA de saída que corresponde à SA de entrada excluída. A NIC (cartão de interface de rede) não deve remover nenhum desses SAs antes de receber a solicitação de OID_TCP_TASK_IPSEC_OFFLOAD_V2_DELETE_SA correspondente.
Receive.CryptoDone
Um valor ULONG que, quando definido, indica que uma NIC executou a verificação de IPsec em pelo menos uma carga IPsec no pacote de recebimento. Quando esse valor é limpo, ele indica que a NIC não executou a verificação IPsec no pacote.
Receive.NextCryptoDone
Um valor ULONG que, quando definido, indica que uma NIC executou a verificação de IPsec nas partes de túnel e transporte do pacote de recebimento. CryptoDone também deve ser definido nesse caso. NextCryptoDone será definido somente se um pacote tiver cargas IPsec de túnel e de transporte; caso contrário, NextCryptoDone será definido como zero.
Receive.Reserved
Reservado para NDIS.
Receive.CryptoStatus
O resultado da verificação de IPsec de que uma NIC foi executada em um pacote de recebimento. Esse resultado pode ser descrito como um dos seguintes valores:
CryptoStatus.CRYPTO_SUCCESS
O pacote foi descriptografado com êxito, se necessário, e as somas de verificação do cabeçalho de autenticação (AH), encapsulando somas de verificação esp (conteúdo de segurança) ou ambas as somas de verificação no pacote foram validadas.
CryptoStatus.CRYPTO_GENERIC_ERROR
O pacote falhou no marcar IPsec por um motivo não especificado.
CryptoStatus.CRYPTO_TRANSPORT_AH_AUTH_FAILED
A soma de verificação ah da parte de transporte do pacote era inválida.
CryptoStatus.CRYPTO_TRANSPORT_ESP_AUTH_FAILED
A soma de verificação esp para a parte de transporte do pacote era inválida.
CryptoStatus.CRYPTO_TUNNEL_AH_AUTH_FAILED
A soma de verificação ah da parte do túnel do pacote era inválida.
CryptoStatus.CRYPTO_TUNNEL_ESP_AUTH_FAILED
A soma de verificação esp para a parte do túnel do pacote era inválida.
CryptoStatus.CRYPTO_INVALID_PACKET_SYNTAX
O comprimento do pacote de recebimento é inválido. Por exemplo, o comprimento total no cabeçalho IP não é suficiente para incluir todos os campos e cabeçalhos para AH/ESP.
CryptoStatus.CRYPTO_INVALID_PROTOCOL
Os protocolos IPsec especificados na SA em que o pacote foi recebido não correspondem aos protocolos IPsec encontrados no pacote. Por exemplo, esse erro ocorrerá se a SA em que o pacote foi recebido especificar o protocolo AH, mas o pacote contiver apenas um cabeçalho ESP.
Comentários
Antes que o transporte TCP/IP passe um pacote de saída para uma NIC para processamento de descarregamento, o transporte especifica as informações de IPsec na estrutura NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO associada à estrutura NET_BUFFER_LIST .
Especificamente, o transporte TCP/IP fornece um valor para o membro OffloadHandle na estrutura NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO. O valor OffloadHandle especifica o identificador para a SA de saída para um pacote que tem apenas uma carga IPsec, independentemente de essa carga ser para um transporte ou uma SA de túnel. O valor OffloadHandle fornecido na estrutura NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO tem o mesmo valor que o valor OffloadHandle que foi relatado ao transporte TCP/IP quando o driver de miniporto adicionou com êxito um conjunto de SAs a uma NIC. Todos os SAs foram adicionados à NIC quando o driver de miniporto respondeu a um OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA solicitação.
Antes que um driver de miniporto indique um pacote de recebimento que tenha um ou mais conteúdos IPsec, o driver especifica informações de IPsec na estrutura de NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO associada à estrutura NET_BUFFER_LIST .
Para definir e obter as informações do IPsec, use o índice IPsecOffloadV2NetBufferListInfo com a macro NET_BUFFER_LIST_INFO . NET_BUFFER_LIST_INFO retorna a estrutura NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte no NDIS 6.1 e posterior. |
Cabeçalho | ndis.h (inclua Ndis.h) |
Confira também
NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO
OID_TCP_TASK_IPSEC_OFFLOAD_V2_DELETE_SA OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SAComentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de