Condividi tramite


struttura IPSEC_OFFLOAD_V2_ADD_SA_EX (ndis.h)

[La funzionalità Offload attività IPsec è deprecata e non deve essere usata.]

La struttura IPSEC_OFFLOAD_V2_ADD_SA_EX definisce le informazioni su un'associazione di sicurezza (SA) che un driver miniport deve aggiungere a una scheda di interfaccia di rete.

Sintassi

typedef struct _IPSEC_OFFLOAD_V2_ADD_SA_EX {
  NDIS_OBJECT_HEADER                    Header;
  ULONG                                 NumExtHdrs;
  ULONG                                 Flags;
  union {
    struct {
      IPAddr SrcAddr;
      IPAddr DestAddr;
    } IPv4Endpoints;
    struct {
      UCHAR SrcAddr[16];
      UCHAR DestAddr[16];
    } IPv6Endpoints;
  };
  NDIS_HANDLE                           OffloadHandle;
  ULONG                                 UdpEspEncapsulation;
  IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION SecAssoc[IPSEC_OFFLOAD_V2_MAX_EXTENSION_HEADERS];
  ULONG                                 KeyLength;
  ULONG                                 KeyOffset;
  NDIS_SWITCH_PORT_ID                   SourceSwitchPortId;
  USHORT                                VlanId;
} IPSEC_OFFLOAD_V2_ADD_SA_EX, *PIPSEC_OFFLOAD_V2_ADD_SA_EX;

Members

Header

Struttura NDIS_OBJECT_HEADER per la struttura IPSEC_OFFLOAD_V2_ADD_SA_EX. Impostare il membro Type della struttura specificata da Header su NDIS_OBJECT_TYPE_DEFAULT, il membro Revision su NDIS_IPSEC_OFFLOAD_V2_ADD_SA_EX_REVISION_1 e il membro Size su NDIS_SIZEOF_IPSEC_OFFLOAD_V2_ADD_SA_EX_REVISION_1.

NumExtHdrs

Numero di intestazioni di estensione IPsec. Questo membro può essere uno dei valori seguenti.

Tipo di sicurezza Intestazioni di estensione
Solo autenticazione AH 1
Solo autenticazione ESP 1
Solo crittografia ESP 1
Autenticazione ESP e crittografia 1
AH più autenticazione ESP e crittografia 2
UDP ESP 1

Flags

Maschera di bit che indica se l'amministratore di sistema aggiunto è un sa in ingresso o in uscita, come indicato di seguito:

IPSEC_OFFLOAD_V2_IPv6

Se questo flag è impostato, gli indirizzi sono IPv6. In caso contrario, gli indirizzi sono IPv4

IPSEC_OFFLOAD_V2_INBOUND

Se questo flag è impostato, l'amministratore di sistema è in ingresso. In caso contrario, l'amministratore di sistema è in uscita.

IPv4Endpoints

Indirizzi dell'endpoint IPv4. Questa struttura contiene i membri seguenti:

IPv4Endpoints.SrcAddr

Indirizzo IPv4 dell'host di origine (host che invia i pacchetti).

IPv4Endpoints.DestAddr

Indirizzo IPv4 dell'host di destinazione (host che riceve i pacchetti).

IPv6Endpoints

Indirizzi dell'endpoint IPv6. Questa struttura contiene i membri seguenti:

IPv6Endpoints.SrcAddr[16]

Indirizzo IPv6 dell'host di origine (host che invia i pacchetti).

IPv6Endpoints.DestAddr[16]

Indirizzo IPv6 dell'host di destinazione (host che riceve i pacchetti).

OffloadHandle

Handle per l'amministratore di sicurezza appena creato. Il driver miniport fornisce questo handle prima di completare il
OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA_EX richiesta. Il trasporto TCP/IP deve specificare questo handle nel
NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO o NDIS_IPSEC_OFFLOAD_V2_TUNNEL_NET_BUFFER_LIST_INFO struttura prima di passare un pacchetto di invio al driver miniport. Il trasporto TCP/IP deve inoltre specificare questo handle durante l'eliminazione dell'sa con un OID_TCP_TASK_IPSEC_OFFLOAD_V2_DELETE_SA richiesta.

UdpEspEncapsulation

Tipo di incapsulamento UDP ESP. Questo membro può essere uno o più dei flag seguenti:

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_NONE

Non viene usato alcun incapsulamento UDP.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT

Un pacchetto in modalità trasporto incapsulato ESP viene incapsulato da UDP.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TUNNEL

La parte in modalità tunnel di un pacchetto è incapsulata da UDP. La parte in modalità trasporto del pacchetto non è incapsulata da UDP e non è protetta da ESP.

IPSEC_OFFLOAD_V2_TRANSPORT_OVER_UDP_ESP_ENCAPSULATION_TUNNEL

La parte in modalità tunnel di un pacchetto è incapsulata da UDP. La parte in modalità trasporto di un pacchetto non è incapsulata da UDP, ma è protetta da ESP.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT_OVER_TUNNEL

La parte in modalità tunnel di un pacchetto non è incapsulata da UDP. La parte in modalità trasporto di un pacchetto è incapsulata da UDP e protetta da ESP.

SecAssoc[IPSEC_OFFLOAD_V2_MAX_EXTENSION_HEADERS]

Matrice con due elementi che contengono le informazioni sulle operazioni IPsec (AH, ESP o entrambe) per l'amministratore di sistema. Il numero di elementi forniti viene specificato nel membro NumExtHdrs . Le informazioni per ogni operazione IPsec vengono formattate come IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION struttura, descritta di seguito.

Il trasporto TCP/IP specifica una o due strutture IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION nel buffer in SecAssoc . Ogni struttura IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION indica il tipo di operazione-autenticazione o crittografia/decrittografia- per cui deve essere utilizzata l'amministratore di sistema specificato nella struttura. L'ordine delle strutture IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION nella matrice indica l'ordine in cui il driver miniport deve eseguire le operazioni per ogni sa. È supportata una sola combinazione di operazioni: crittografia/decrittografia (ESP) seguita dall'autenticazione (AH).

KeyLength

Lunghezza, in byte, del buffer in KeyOffset.

KeyOffset

Offset, in byte, dall'inizio della struttura IPSEC_OFFLOAD_V2_ADD_SA_EX all'inizio di una matrice a lunghezza variabile che contiene chiavi per l'amministratore di sistema specificato in SecAssoc. Se sia un algoritmo di crittografia che un algoritmo di autenticazione vengono specificati dai membri EncryptionAlgorithm e AuthenticationAlgorithm di un IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION struttura, il buffer in KeyOffset contiene le informazioni chiave per uno seguito dall'altro. L'inizio e la lunghezza della chiave vengono specificati da IPSEC_OFFLOAD_V2_ALGORITHM_INFO rispettivamente i membri KeyOffsetBytes e KeyLength della struttura.

SourceSwitchPortId

Riservato.

VlanId

Riservato.

Commenti

La struttura IPSEC_OFFLOAD_V2_ADD_SA_EX specifica un sa di sicurezza da aggiungere. La struttura IPSEC_OFFLOAD_V2_ADD_SA_EX viene utilizzata con l'oggetto
OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA_EX OID.

La struttura IPSEC_OFFLOAD_V2_ADD_SA_EX specifica l'origine e la destinazione, nonché i protocolli IP a cui si applica l'amministratore di sicurezza. Questo filtro riguarda una connessione in modalità trasporto, ovvero una connessione end-to-end tra due host. Se la connessione specificata viene effettuata tramite un tunnel, vengono specificati gli indirizzi di origine e di destinazione del tunnel.

Se un membro è impostato su zero, tale parametro non viene usato per filtrare i pacchetti per l'amministratore di sistema specificato. Ad esempio, se SrcAddr è impostato su zero, l'amministratore di sistema specificato può essere applicato a un pacchetto contenente qualsiasi indirizzo di origine. Se tutti i parametri del filtro sono impostati su zero, l'amministratore di sistema specificato si applica a qualsiasi host di origine che invia qualsiasi tipo di pacchetto a qualsiasi host di destinazione.

Questa struttura è quasi identica alla versione precedente, IPSEC_OFFLOAD_V2_ADD_SA. I membri Next e KeyData sono stati rimossi. Sono stati aggiunti i membri KeyOffset, SourceSwitchPortId e VlanId .

Requisiti

Requisito Valore
Client minimo supportato Supportato in NDIS 6.30 e versioni successive.
Intestazione ndis.h (include Ndis.h)

Vedi anche

IPSEC_OFFLOAD_V2_ADD_SA

IPSEC_OFFLOAD_V2_ALGORITHM_INFO IPSEC_OFFLOAD_V2_SECURITY_ASSOCIATION NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO NDIS_IPSEC_OFFLOAD_V2_TUNNEL_NET_BUFFER_LIST_INFO

NDIS_OBJECT_HEADER

OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA_EX OID_TCP_TASK_IPSEC_OFFLOAD_V2_DELETE_SA