/*++ Copyright (c) Microsoft Corporation. All rights reserved. Module Name: NetPowerOffload.h Environment: user mode NOTE: This header is generated by stubwork. To modify contents, add or remove or tags in the corresponding .x and .y template files. --*/ #pragma once #ifndef WDF_EXTERN_C #ifdef __cplusplus #define WDF_EXTERN_C extern "C" #define WDF_EXTERN_C_START extern "C" { #define WDF_EXTERN_C_END } #else #define WDF_EXTERN_C #define WDF_EXTERN_C_START #define WDF_EXTERN_C_END #endif #endif WDF_EXTERN_C_START typedef struct _NET_POWER_OFFLOAD_ARP_PARAMETERS { ULONG Size; ULONG Id; NET_IPV4_ADDRESS RemoteIPv4Address; NET_IPV4_ADDRESS HostIPv4Address; NET_ADAPTER_LINK_LAYER_ADDRESS LinkLayerAddress; } NET_POWER_OFFLOAD_ARP_PARAMETERS; inline void NET_POWER_OFFLOAD_ARP_PARAMETERS_INIT( _Out_ NET_POWER_OFFLOAD_ARP_PARAMETERS * Parameters ) { RtlZeroMemory(Parameters, sizeof(*Parameters)); Parameters->Size = sizeof(*Parameters); } typedef struct _NET_POWER_OFFLOAD_NS_PARAMETERS { ULONG Size; ULONG Id; NET_IPV6_ADDRESS RemoteIPv6Address; NET_IPV6_ADDRESS SolicitedNodeIPv6Address; NET_IPV6_ADDRESS TargetIPv6Addresses[2]; NET_ADAPTER_LINK_LAYER_ADDRESS LinkLayerAddress; } NET_POWER_OFFLOAD_NS_PARAMETERS; inline void NET_POWER_OFFLOAD_NS_PARAMETERS_INIT( _Out_ NET_POWER_OFFLOAD_NS_PARAMETERS * Parameters ) { RtlZeroMemory(Parameters, sizeof(*Parameters)); Parameters->Size = sizeof(*Parameters); } typedef enum _NET_POWER_OFFLOAD_TYPE { NetPowerOffloadTypeArp = 1, NetPowerOffloadTypeNS, } NET_POWER_OFFLOAD_TYPE; WDF_EXTERN_C_END