NDIS_PM_PROTOCOL_OFFLOAD 構造体 (ntddndis.h)
NDIS_PM_PROTOCOL_OFFLOAD構造体は、ネットワーク アダプターへの低電力プロトコル オフロードのパラメーターを指定します。
構文
typedef struct _NDIS_PM_PROTOCOL_OFFLOAD {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
ULONG Priority;
NDIS_PM_PROTOCOL_OFFLOAD_TYPE ProtocolOffloadType;
NDIS_PM_COUNTED_STRING FriendlyName;
ULONG ProtocolOffloadId;
ULONG NextProtocolOffloadOffset;
union {
struct {
ULONG Flags;
UCHAR RemoteIPv4Address[4];
UCHAR HostIPv4Address[4];
UCHAR MacAddress[6];
} IPv4ARPParameters;
struct {
ULONG Flags;
UCHAR RemoteIPv6Address[16];
UCHAR SolicitedNodeIPv6Address[16];
UCHAR MacAddress[6];
UCHAR TargetIPv6Addresses[2][16];
} IPv6NSParameters;
struct {
ULONG Flags;
UCHAR KCK[DOT11_RSN_KCK_LENGTH];
UCHAR KEK[DOT11_RSN_KEK_LENGTH];
ULONGLONG KeyReplayCounter;
} Dot11RSNRekeyParameters;
struct {
ULONG Flags;
ULONGLONG KeyReplayCounter;
ULONG AuthAlgo;
ULONG KCKLength;
ULONG KEKLength;
UCHAR KCK[DOT11_RSN_MAX_CIPHER_KEY_LENGTH];
UCHAR KEK[DOT11_RSN_MAX_CIPHER_KEY_LENGTH];
} Dot11RSNRekeyParametersV2;
} ProtocolOffloadParameters;
_PROTOCOL_OFFLOAD_PARAMETERS _PROTOCOL_OFFLOAD_PARAMETERS;
} NDIS_PM_PROTOCOL_OFFLOAD, *PNDIS_PM_PROTOCOL_OFFLOAD;
メンバー
Header
NDIS_PM_PROTOCOL_OFFLOAD構造体のNDIS_OBJECT_HEADER構造体。 ドライバーは 、Type メンバーをNDIS_OBJECT_TYPE_DEFAULTに設定します。
NDIS_PM_PROTOCOL_OFFLOAD構造体のバージョンを示すには、Header の Revision メンバーを次のいずれかの値に設定します。
NDIS_PM_PROTOCOL_OFFLOAD_REVISION_2
NDIS 6.84 の Dot11RSNRekeyParametersV2 構造体を追加しました。
[サイズ] メンバーを [NDIS_SIZEOF_NDIS_PM_PROTOCOL_OFFLOAD_REVISION_2] に設定します。
NDIS_PM_PROTOCOL_OFFLOAD_REVISION_1
NDIS 6.20 以降の元のバージョン。
[サイズ] メンバーを [NDIS_SIZEOF_NDIS_PM_PROTOCOL_OFFLOAD_REVISION_1] に設定します。
Flags
フラグのビットごとの OR を含む ULONG 値。 このメンバーは NDIS 用に予約されています。
Priority
プロトコル オフロードの優先度を含む ULONG 値。 より多くのプロトコル オフロードに使用できるリソースがない場合に、上にあるドライバーにより高い優先順位のプロトコル オフロードが追加された場合、NDIS は、低優先度のプロトコル オフロードを解放するリソースを削除する可能性があります。 ミニポート ドライバーは、このメンバーを無視する必要があります。 プロトコル ドライバーは、定義済みの範囲内の任意の値を提供できます。 次の値が定義済みです。
NDIS_PM_PROTOCOL_OFFLOAD_PRIORITY_LOWEST
最も優先度の低いプロトコル オフロードを指定します。
NDIS_PM_PROTOCOL_OFFLOAD_PRIORITY_NORMAL
通常の優先度プロトコル オフロードを指定します。
NDIS_PM_PROTOCOL_OFFLOAD_PRIORITY_HIGHEST
最も優先度の高いプロトコル オフロードを指定します。
ProtocolOffloadType
An プロトコル オフロードの 種類を含む値をNDIS_PM_PROTOCOL_OFFLOAD_TYPEします。
FriendlyName
低電力プロトコル オフロードのユーザーが判読できる説明を含むNDIS_PM_COUNTED_STRING構造体。
ProtocolOffloadId
オフロードされたプロトコルを識別する NDIS 提供の値を含む ULONG 値。 NDIS は、基になる NDIS ドライバーに OID_PM_ADD_PROTOCOL_OFFLOAD OID 要求を送信するか、または上にあるドライバーに要求を完了する前に、ネットワーク アダプター上のプロトコル オフロード間で一意の値に ProtocolOffloadId を設定します。
NextProtocolOffloadOffset
オフセットを含む ULONG 値 (バイト単位)。 リスト内の各NDIS_PM_PROTOCOL_OFFLOAD構造体の NextProtocolOffloadOffset メンバーは、リスト内の次のNDIS_PM_PROTOCOL_OFFLOAD構造体のオフセット (OID 要求 InformationBuffer の先頭から) に設定されます。 NextProtocolOffloadOffset が 0 の場合、現在の構造体はリスト内の最後の構造体です。
ProtocolOffloadParameters
次のメンバー構造体を含む共用体。
ProtocolOffloadParameters.IPv4ARPParameters
IPv4 ARP パラメーターを含む構造体。 この構造体には、次のメンバーが含まれています。
ProtocolOffloadParameters.IPv4ARPParameters.Flags
フラグのビットごとの OR を含む ULONG 値。 このメンバーは NDIS 用に予約されています。
ProtocolOffloadParameters.IPv4ARPParameters.RemoteIPv4Address[4]
オプションの IPv4 アドレスを含む UCHAR 配列。 このアドレスは、ARP 要求のソース プロトコル アドレス (SPA) フィールドを表します。
受信 ARP 要求にこの IPv4 アドレスと一致する SPA 値がある場合、ネットワーク アダプターは低電力状態のときに ARP 応答を送信します。 このメンバーが 0 の場合、ネットワーク アダプターは任意のリモート IPv4 アドレスからの ARP 要求に応答する必要があります。
ARP プロトコルの詳細については、RFC 826 を参照してください。
ProtocolOffloadParameters.IPv4ARPParameters.HostIPv4Address[4]
IPv4 アドレスを含む UCHAR 配列。 ARP 応答を送信すると、ネットワーク アダプターは応答の SPA フィールドにこのメンバーを使用します。
ProtocolOffloadParameters.IPv4ARPParameters.MacAddress[6]
メディア アクセス制御 (MAC) アドレスを含む UCHAR 配列。 ネットワーク アダプターは、生成する ARP 応答パケットのソース ハードウェア アドレス (SHA) フィールドにこの MAC アドレスを使用します。
ProtocolOffloadParameters.IPv6NSParameters
IPv6 近隣要請 (NS) パラメーターを含む構造体。 この構造体には、次のメンバーが含まれています。
ProtocolOffloadParameters.IPv6NSParameters.Flags
フラグのビットごとの OR を含む ULONG 値。 このメンバーは NDIS 用に予約されています。
ProtocolOffloadParameters.IPv6NSParameters.RemoteIPv6Address[16]
オプションの IPv6 アドレスを含む UCHAR 配列。 このアドレスは、NS メッセージの IPv6 ヘッダーの [送信元アドレス] フィールドを表します。
受信 NS メッセージにこの IPv6 アドレスと一致する送信元アドレス値がある場合、ネットワーク アダプターは低電力状態のときに近隣アドバタイズ (NA) メッセージを送信します。 このメンバーが 0 の場合、ネットワーク アダプターは任意のリモート IPv6 アドレスからの NS メッセージに応答する必要があります。
IPv6 NS および NA メッセージの詳細については、 RFC 4861 を参照してください。
ProtocolOffloadParameters.IPv6NSParameters.SolicitedNodeIPv6Address[16]
要請されたノード IPv6 アドレスを含む UCHAR 配列。 この種類の IPv6 アドレスの詳細については、「マルチキャスト IPv6 アドレス」を参照してください。
ProtocolOffloadParameters.IPv6NSParameters.MacAddress[6]
MAC アドレスを含む UCHAR 配列。 NA メッセージを送信すると、ネットワーク アダプターは NA メッセージのターゲット リンク層アドレス (TLLA) フィールドにこの配列を使用します。
ProtocolOffloadParameters.IPv6NSParameters.TargetIPv6Addresses[2]
1 つまたは 2 つの IPv6 アドレスを含む UCHAR 配列。 アドレスが 1 つだけ含まれている場合、そのアドレスは配列の最初の要素に格納され、2 番目の要素には 0 が入力されます。
ミニポート ドライバーは、配列内のすべてのアドレスを使用する必要があります。
これらのアドレスは、NS メッセージの [ターゲット アドレス] フィールドを表します。 これらのアドレスのいずれかが受信 NS メッセージの [ターゲット アドレス] フィールドと一致する場合、ネットワーク アダプターは応答として NA メッセージを送信します。
ProtocolOffloadParameters.Dot11RSNRekeyParameters
IEEE 802.11i ロバスト セキュリティ ネットワーク (RSN) ハンドシェイク パラメーターを含む構造体。 この構造体には、次のメンバーが含まれています。
ProtocolOffloadParameters.Dot11RSNRekeyParameters.Flags
フラグのビットごとの OR を含む ULONG 値。 このメンバーは NDIS 用に予約されています。
ProtocolOffloadParameters.Dot11RSNRekeyParameters.KCK[DOT11_RSN_KCK_LENGTH]
IEEE 802.11 キー確認キー (KCK) を含む UCHAR 配列。
ProtocolOffloadParameters.Dot11RSNRekeyParameters.KEK[DOT11_RSN_KEK_LENGTH]
IEEE 802.11 キー暗号化キー (KEK) を含む UCHAR 配列。
ProtocolOffloadParameters.Dot11RSNRekeyParameters.KeyReplayCounter
再生カウンターを含む ULONGLONG 値。
ProtocolOffloadParameters.Dot11RSNRekeyParametersV2
V2 IEEE 802.11i Robust Security Network (RSN) ハンドシェイク パラメーターを含む構造体。 NDIS 6.84 以降で使用できます。 この構造体には、次のメンバーが含まれています。
ProtocolOffloadParameters.Dot11RSNRekeyParametersV2.Flags
ProtocolOffloadParameters.Dot11RSNRekeyParametersV2.KeyReplayCounter
ProtocolOffloadParameters.Dot11RSNRekeyParametersV2.AuthAlgo
ProtocolOffloadParameters.Dot11RSNRekeyParametersV2.KCKLength
ProtocolOffloadParameters.Dot11RSNRekeyParametersV2.KEKLength
ProtocolOffloadParameters.Dot11RSNRekeyParametersV2.KCK[DOT11_RSN_MAX_CIPHER_KEY_LENGTH]
ProtocolOffloadParameters.Dot11RSNRekeyParametersV2.KEK[DOT11_RSN_MAX_CIPHER_KEY_LENGTH]
_PROTOCOL_OFFLOAD_PARAMETERS
注釈
NDIS_PM_PROTOCOL_OFFLOAD構造体は、OID_PM_ADD_PROTOCOL_OFFLOAD と で使用されます。 OID_PM_PROTOCOL_OFFLOAD_LIST Oid。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | NDIS 6.20 以降でサポートされています。 |
Header | ntddndis.h (Ntddndis.h を含む) |