NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO-Struktur (ndis.h)
Die NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO-Struktur gibt Informationen an, die beim Auslagern von IPsec-Tasks (Internet Protocol Security) vom TCP/IP-Transport an einen Miniporttreiber verwendet werden.
Syntax
typedef struct _NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO {
union {
struct {
NDIS_HANDLE OffloadHandle;
} Transmit;
struct {
USHORT SaDeleteReq : 1;
USHORT CryptoDone : 1;
USHORT NextCryptoDone : 1;
USHORT Pad : 13;
USHORT CryptoStatus;
} Receive;
};
} NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO, *PNDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO;
Member
Transmit
Eine Struktur, die die folgenden Member enthält:
Transmit.OffloadHandle
Ein Handle für die ausgehende Sicherheitszuordnung (Outbound Security Association, SA) für ein Paket mit nur einer IPsec-Nutzlast, unabhängig davon, ob diese Nutzlast für eine Transportverbindung (End-to-End)-Verbindung oder eine Tunnelverbindung bestimmt ist.
Receive
Eine Struktur, die die folgenden Member enthält:
Receive.SaDeleteReq
Ein USHORT-Wert, der bei Festlegung angibt, dass der TCP/IP-Transport das OID_TCP_TASK_IPSEC_DELETE_SA OID einmal, um die eingehende SA zu löschen, die das Paket empfangen wurde, und erneut, um die ausgehende SA zu löschen, die der gelöschten eingehenden SA entspricht. Die Netzwerkschnittstelle Karte (NIC) darf keine dieser SAs entfernen, bevor sie die entsprechende OID_TCP_TASK_IPSEC_DELETE_SA-Anforderung empfängt.
Receive.CryptoDone
Ein USHORT-Wert, der bei Festlegung angibt, dass eine NIC IPsec-Überprüfung für mindestens eine IPsec-Nutzlast im Empfangspaket ausgeführt hat. Wenn dieser Wert gelöscht wird, gibt dies an, dass die NIC keine IPsec-Überprüfung für das Paket durchgeführt hat.
Receive.NextCryptoDone
Ein USHORT-Wert, der bei Festlegung angibt, dass eine NIC IPsec-Überprüfung sowohl für den Tunnel- als auch für den Transportteil des Empfangspakets ausgeführt hat. CryptoDone muss auch in diesem Fall festgelegt werden. NextCryptoDone wird nur festgelegt, wenn ein Paket sowohl Tunnel- als auch Transport-IPsec-Nutzlasten aufweist. Andernfalls wird NextCryptoDone auf 0 festgelegt.
Receive.Pad
Reserviert für NDIS.
Receive.CryptoStatus
Das Ergebnis der IPsec-Überprüfung, die eine NIC für ein Empfangspaket ausgeführt hat. Dieses Ergebnis kann als einer der folgenden Werte beschrieben werden:
Hinweise
Bevor der TCP/IP-Transport ein Sendepaket übergibt, das eine NIC IPsec-Aufgaben an den Miniporttreiber der NIC ausführt, aktualisiert der Transport die IPsec-Informationen in der NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO-Struktur , die der NET_BUFFER_LIST-Struktur zugeordnet ist.
Insbesondere stellt der TCP/IP-Transport einen Wert für das OffloadHandle-Element in der NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO-Struktur bereit. Der Wert OffloadHandle gibt das Handle für die ausgehende Sicherheitszuordnung (Outbound Security Association, SA) für ein Paket an, das nur über eine IPsec-Nutzlast verfügt, unabhängig davon, ob diese Nutzlast für eine Transportsicherheitszuordnung (End-to-End) oder eine Tunnelsicherheitszuordnung steht. Der OffloadHandle-Wert , der in der NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO-Struktur angegeben wird, hat den gleichen Wert wie der OffloadHandle-Wert , den der TCP/IP-Transport angegeben hat, als er OID_TCP_TASK_IPSEC_ADD_SA festgelegt hat, um den Miniporttreiber anzufordern, die ausgehende SA der NIC hinzuzufügen.
Bevor ein Miniporttreiber ein Empfangspaket mit mindestens einer IPsec-Nutzlast angibt, aktualisiert der Treiber die NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO Struktur, die der NET_BUFFER_LIST-Struktur zugeordnet ist, wie folgt:
- Wenn die NIC IPsec-Überprüfungen für mindestens eine IPsec-Nutzlast im Paket ausgeführt hat, legt der Miniporttreiber das CryptoDone-Element fest und gibt die Ergebnisse der Überprüfungstests der Prüfsumme an, indem er den entsprechenden Wert im CryptoStatus-Member angibt.
- Wenn die NIC IPsec-Überprüfung sowohl für den Tunnel als auch für den Transportteil eines Empfangspakets durchgeführt hat, legt der Miniporttreiber auch den NextCryptoDone-Member fest. NextCryptoDone wird nur festgelegt, wenn ein Paket sowohl Tunnel- als auch Transport-IPsec-Nutzlasten aufweist. Andernfalls wird NextCryptoDone auf 0 festgelegt.
- Wenn die NIC keine IPsec-Überprüfungen für das Paket ausgeführt hat, legt der Miniporttreiber CryptoDone oder NextCryptoDone nicht fest und stellt keinen CryptoStatus-Wert bereit.
Um die IPsec-Informationen festzulegen und abzurufen, verwenden Sie den IPsecOffloadV1NetBufferListInfo-Index mit dem NET_BUFFER_LIST_INFO Makro. NET_BUFFER_LIST_INFO gibt die NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO-Struktur zurück.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt in NDIS 6.0. Verwenden Sie für NDIS 6.1 und höher NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO. |
Kopfzeile | ndis.h (einschließlich Ndis.h) |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für