Share via


NDIS_OFFLOAD (Compact 2013)

3/26/2014

This structure specifies a miniport adapter's capabilities for performing a particular type of task that is offloaded from the TCP/IP transport.

Syntax

typedef struct _NDIS_OFFLOAD {
  NDIS_OBJECT_HEADER  Header;
  NDIS_TCP_IP_CHECKSUM_OFFLOAD  Checksum;
  NDIS_TCP_LARGE_SEND_OFFLOAD_V1  LsoV1;
  NDIS_IPSEC_OFFLOAD_V1  IPsecV1;
  NDIS_TCP_LARGE_SEND_OFFLOAD_V2  LsoV2;
  ULONG  Flags; 

  NDIS_IPSEC_OFFLOAD_V2  IPsecV2;

} NDIS_OFFLOAD; *PNDIS_OFFLOAD;

Members

  • Header
    The NDIS_OBJECT_HEADER structure for the NDIS_OFFLOAD structure. Set the Type member of the structure that Header specifies to NDIS_OBJECT_TYPE_OFFLOAD.

    To indicate the version of the NDIS_OFFLOAD structure, set the Revision member to one of the following values:

    • NDIS_OFFLOAD_REVISION_2
      Added the IPsecV2 member.

      Set the Size member to NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_2.

    • NDIS_OFFLOAD_REVISION_1
      Original version

      Set the Size member to NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_1.

  • Flags
    Reserved.
  • IPsecV2
    Internet protocol security (IPsec) offload version 2 information in an NDIS_IPSEC_OFFLOAD_V2 structure.

Remarks

The NDIS_OFFLOAD structure specifies the current supported services that a miniport adapter provides for task offload services.

NDIS_OFFLOAD is used in the NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES structure, NDIS_BIND_PARAMETERS structure, NDIS_FILTER_ATTACH_PARAMETERS structure, OID_TCP_OFFLOAD_CURRENT_CONFIG OID, and the NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG status indication.Miniport drivers do not receive the OID queries. NDIS uses the information that the miniport driver supplies in attributes and status indications to provide responses to OID queries, to provide bind parameters, and to provide filter attach parameters.

In response to a query of OID_TCP_OFFLOAD_CURRENT_CONFIG, NDIS returns an NDIS_OFFLOAD structure in the InformationBuffer member of the NDIS_OID_REQUEST structure.

For OID_TCP_OFFLOAD_CURRENT_CONFIG, the NDIS_OFFLOAD structure specifies the task offload capabilities that a miniport adapter supports.

When miniport drivers provide an NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG status indication, the drivers notify NDIS and overlying drivers that there has been a change in the task offload capabilities of a miniport adapter. The StatusBuffer member of the NDIS_STATUS_INDICATION structure contains the NDIS_OFFLOAD structure. This structure specifies the current task offload capabilities of a miniport adapter.

The NDIS_OFFLOAD structure contains the NDIS_TCP_IP_CHECKSUM_OFFLOAD, NDIS_TCP_LARGE_SEND_OFFLOAD_V2, NDIS_TCP_LARGE_SEND_OFFLOAD_V1, NDIS_IPSEC_OFFLOAD_V2, and NDIS_IPSEC_OFFLOAD_V1 structures, which each specify information for a different type of task offload.

Requirements

Header

ntddndis.h

See Also

Reference

NDIS TCP/IP Offload Structures
NDIS_BIND_PARAMETERS
NDIS_FILTER_ATTACH_PARAMETERS
NDIS_IPSEC_OFFLOAD_V1
NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES
NDIS_OBJECT_HEADER
NDIS_OID_REQUEST
NDIS_STATUS_INDICATION
NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG
NDIS_TCP_IP_CHECKSUM_OFFLOAD
NDIS_TCP_LARGE_SEND_OFFLOAD_V1
NDIS_TCP_LARGE_SEND_OFFLOAD_V2
OID_OFFLOAD_ENCAPSULATION
OID_TCP_OFFLOAD_CURRENT_CONFIG