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 構造体。 ドライバーは、の種類 メンバーをNDIS_OBJECT_TYPE_DEFAULTに設定します。
NDIS_PM_PROTOCOL_OFFLOAD 構造体のバージョンを示すには、Header の Revision メンバーを次のいずれかの値に設定します。
NDIS_PM_PROTOCOL_OFFLOAD_REVISION_2
NDIS 6.84 の Dot11RSNRekeyParametersV2 構造体を追加しました。
Size メンバーをNDIS_SIZEOF_NDIS_PM_PROTOCOL_OFFLOAD_REVISION_2に設定します。
NDIS_PM_PROTOCOL_OFFLOAD_REVISION_1
NDIS 6.20 以降の元のバージョン。
Size メンバーを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
ひとつのプロトコル オフロードの種類を含む値を NDIS_PM_PROTOCOL_OFFLOAD_TYPE します。
FriendlyName
低電力プロトコル オフロードのユーザーが判読できる説明を含む NDIS_PM_COUNTED_STRING 構造体。
ProtocolOffloadId
オフロードされたプロトコルを識別する NDIS 提供の値を含む ULONG 値。 NDIS は、OID_PM_ADD_PROTOCOL_OFFLOAD OID 要求を基になる NDIS ドライバーに送信するか、または上にあるドライバーに要求を完了する前に、ネットワーク アダプターのプロトコル オフロード間で一意の値 ProtocolOffloadId を設定します。
NextProtocolOffloadOffset
オフセットを含む ULONG 値 (バイト単位)。 リスト内の各 NDIS_PM_PROTOCOL_OFFLOAD 構造体の NextProtocolOffloadOffset メンバーは、リスト内の次の NDIS_PM_PROTOCOL_OFFLOAD 構造体のオフセット (OID 要求 InformationBuffer の先頭から) に設定されます。 NextProtocolOffloadOffset が 0 の場合、現在の構造体はリスト内の最後の構造体です。
ProtocolOffloadParameters
次のメンバー構造を含む共用体。
ProtocolOffloadParameters.IPv4ARPParameters
IPv4 ARP パラメーターを含む構造体。 この構造体には、次のメンバーが含まれています。
ProtocolOffloadParameters.IPv4ARPParameters.Flags
フラグのビットごとの または を含む 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]
UCHAR 1 つまたは 2 つの IPv6 アドレスを含む配列です。 アドレスが 1 つだけ含まれている場合、そのアドレスは配列の最初の要素に格納され、2 番目の要素には 0 が入力されます。
ミニポート ドライバーは、配列内のすべてのアドレスを使用する必要があります。
これらのアドレスは、NS メッセージのターゲット アドレス フィールドを表します。 これらのアドレスのいずれかが受信 NS メッセージのターゲット アドレス フィールドと一致する場合、ネットワーク アダプターは応答として NA メッセージを送信します。
ProtocolOffloadParameters.Dot11RSNRekeyParameters
IEEE 802.11i Robust Security Network (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 を OID_PM_PROTOCOL_OFFLOAD_LIST します。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | NDIS 6.20 以降でサポートされています。 |
ヘッダー | ntddndis.h (Ntddndis.h を含む) |