NDIS_PM_WOL_PATTERN estrutura (ntddndis.h)
A estrutura NDIS_PM_WOL_PATTERN define um padrão WOL (wake-on-LAN).
Sintaxe
typedef struct _NDIS_PM_WOL_PATTERN {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
ULONG Priority;
NDIS_PM_WOL_PACKET WoLPacketType;
NDIS_PM_COUNTED_STRING FriendlyName;
ULONG PatternId;
ULONG NextWoLPatternOffset;
union {
struct {
ULONG Flags;
UCHAR IPv4SourceAddress[4];
UCHAR IPv4DestAddress[4];
USHORT TCPSourcePortNumber;
USHORT TCPDestPortNumber;
} IPv4TcpSynParameters;
struct {
ULONG Flags;
UCHAR IPv6SourceAddress[16];
UCHAR IPv6DestAddress[16];
USHORT TCPSourcePortNumber;
USHORT TCPDestPortNumber;
} IPv6TcpSynParameters;
struct {
ULONG Flags;
} EapolRequestIdMessageParameters;
struct {
ULONG Flags;
ULONG MaskOffset;
ULONG MaskSize;
ULONG PatternOffset;
ULONG PatternSize;
} WoLBitMapPattern;
} WoLPattern;
_WOL_PATTERN _WOL_PATTERN;
} NDIS_PM_WOL_PATTERN, *PNDIS_PM_WOL_PATTERN;
Membros
Header
O tipo, a revisão e o tamanho da estrutura NDIS_PM_WOL_PATTERN. Esse membro é formatado como uma estrutura NDIS_OBJECT_HEADER.
O driver de miniporto deve definir o membro tipo do de cabeçalho para NDIS_OBJECT_TYPE_DEFAULT. Para especificar a versão da estrutura de NDIS_PM_WOL_PATTERN, o driver deve definir o membro revisão membro do cabeçalho para o seguinte valor:
NDIS_PM_WOL_PATTERN_REVISION_2
Revisões feitas na enumeração NDIS_PM_WOL_PACKET para NDIS 6.30.
Defina o membro tamanho como NDIS_SIZEOF_NDIS_PM_WOL_PATTERN_REVISION_2.
NDIS_PM_WOL_PATTERN_REVISION_1
Versão original do NDIS 6.20.
Defina o membro tamanho como NDIS_SIZEOF_NDIS_PM_WOL_PATTERN_REVISION_1.
Flags
Um valor ULONG que contém um OR bit a bit de sinalizadores. Este membro é reservado para NDIS.
Priority
Um valor ULONG que contém a prioridade do padrão WOL. Se um driver em excesso adicionar um padrão WOL de prioridade mais alta quando não houver recursos disponíveis para mais padrões WOL, o NDIS poderá remover um padrão WOL de prioridade mais baixa para liberar recursos. Os drivers de miniporto devem ignorar esse membro. Um driver de protocolo pode especificar qualquer prioridade dentro do intervalo predefinido. Os seguintes valores são predefinidos:
NDIS_PM_WOL_PRIORITY_LOWEST
Especifica o padrão WOL de prioridade mais baixa.
NDIS_PM_WOL_PRIORITY_NORMAL
Especifica um padrão WOL de prioridade normal.
NDIS_PM_WOL_PRIORITY_HIGHEST
Especifica o padrão WOL de prioridade mais alta.
WoLPacketType
Um valor de enumeração NDIS_PM_WOL_PACKET que especifica o tipo do pacote WOL.
FriendlyName
Uma estrutura NDIS_PM_COUNTED_STRING que contém a descrição legível pelo usuário do pacote WOL.
PatternId
Um valor ULONG que contém um valor fornecido pelo NDIS que identifica o padrão WOL. Antes que o NDIS envie a solicitação OID OID_PM_ADD_WOL_PATTERN para os drivers de NDIS subjacentes ou conclua a solicitação para o driver sobreposto, o NDIS define PatternId para um valor exclusivo entre os padrões WOL em um adaptador de rede.
NextWoLPatternOffset
Um valor ULONG que contém um deslocamento, em bytes. O NextWoLPatternOffset membro de cada estrutura de NDIS_PM_WOL_PATTERN em uma lista é definido como o deslocamento (desde o início da solicitação OID InformationBuffer) da próxima estrutura de NDIS_PM_WOL_PATTERN na lista. Se NextWoLPatternOffset for zero, a estrutura atual será a última estrutura da lista.
WoLPattern
Uma união que contém as estruturas de membro a seguir.
WoLPattern.IPv4TcpSynParameters
Uma estrutura que contém informações do IPv4 TCP SYN. Essa estrutura contém os seguintes membros:
WoLPattern.IPv4TcpSynParameters.Flags
Um valor ULONG que contém um OR bit a bit de sinalizadores. Este membro é reservado para NDIS.
WoLPattern.IPv4TcpSynParameters.IPv4SourceAddress[4]
O endereço de origem IPv4 no pacote TCP SYN.
WoLPattern.IPv4TcpSynParameters.IPv4DestAddress[4]
O endereço de destino IPv4 no pacote TCP SYN.
WoLPattern.IPv4TcpSynParameters.TCPSourcePortNumber
O número da porta de origem TCP no pacote TCP SYN.
WoLPattern.IPv4TcpSynParameters.TCPDestPortNumber
O número da porta de destino TCP no pacote TCP SYN.
WoLPattern.IPv6TcpSynParameters
Uma estrutura que contém informações do IPv6 TCP SYN. Essa estrutura contém os seguintes membros:
WoLPattern.IPv6TcpSynParameters.Flags
Um valor ULONG que contém um OR bit a bit de sinalizadores. Este membro é reservado para NDIS.
WoLPattern.IPv6TcpSynParameters.IPv6SourceAddress[16]
O endereço de origem IPv6 no pacote TCP SYN.
WoLPattern.IPv6TcpSynParameters.IPv6DestAddress[16]
O endereço de destino IPv6 no pacote TCP SYN.
WoLPattern.IPv6TcpSynParameters.TCPSourcePortNumber
A porta de origem TCP no pacote TCP SYN.
WoLPattern.IPv6TcpSynParameters.TCPDestPortNumber
A porta de destino TCP no pacote TCP SYN.
WoLPattern.EapolRequestIdMessageParameters
Uma estrutura que contém parâmetros de mensagem de identidade de solicitação EAPOL 802.1X. Essa estrutura contém os seguintes membros:
WoLPattern.EapolRequestIdMessageParameters.Flags
Um valor ULONG que contém um OR bit a bit de sinalizadores. Este membro é reservado para NDIS.
WoLPattern.WoLBitMapPattern
Uma estrutura que especifica um padrão de bitmap WOL. Para obter mais informações sobre padrões de bitmap, consulte a seção Comentários. A estrutura tem os seguintes membros:
WoLPattern.WoLBitMapPattern.Flags
Um valor ULONG que contém um OR bit a bit de sinalizadores. Este membro é reservado para NDIS.
WoLPattern.WoLBitMapPattern.MaskOffset
O deslocamento, em bytes, para um buffer de máscara desde o início da estrutura de NDIS_PM_WOL_PATTERN.
A máscara especifica quais bytes em pacotes de entrada devem ser correspondidos com o padrão de bitmap. Cada bit na máscara de bits corresponde a um byte no padrão. Se um bit for zero, o byte correspondente no pacote de entrada não deverá ser correspondente ao padrão. Se o bit for um, o adaptador de rede comparará o byte com o pacote de entrada com o byte especificado no padrão.
WoLPattern.WoLBitMapPattern.MaskSize
O tamanho, em bytes, da máscara.
WoLPattern.WoLBitMapPattern.PatternOffset
O deslocamento, em bytes, para um buffer padrão desde o início da estrutura de NDIS_PM_WOL_PATTERN.
WoLPattern.WoLBitMapPattern.PatternSize
O tamanho, em bytes, do padrão.
_WOL_PATTERN
Observações
A estrutura de NDIS_PM_WOL_PATTERN é usada nas solicitações OID OID_PM_ADD_WOL_PATTERN e OID_PM_WOL_PATTERN_LIST.
Um driver de camada superior pode especificar um padrão WOL genérico com o membro WoLBitMapPattern. Um padrão de bitmap é especificado como uma sequência de bytes e um bitmap de máscara. Cada bit na máscara corresponde a um byte no padrão e especifica se o byte correspondente no pacote de entrada deve ser correspondido com o byte correspondente no padrão. Se todos os bytes comparados pelo adaptador de rede corresponderem, o pacote será uma correspondência e o adaptador de rede deverá gerar um evento de ativação.
Um driver de camada superior pode especificar um , endereço IPv4 e valores de porta TCP não preenchidos por zero ounão especificados, endereço IPv4 e valores de porta TCP na estrutura de membro IPv4TcpSynParameters. Se o sinalizador de NDIS_PM_WOL_IPV4_DEST_ADDR_WILDCARD_ENABLED estiver definido no enabledWoLPacketPatterns membro do NDIS_PM_PARAMETERS, o adaptador de rede deverá usar o endereço não especificado ou o valor da porta para corresponder a qualquer endereço IPv4 de origem ou destino ou valor da porta TCP no pacote TCP SYN IPv4.
Da mesma forma, um driver de camada superior pode especificar um endereço IPv6 não especificado e valores de porta TCP no IPv6TcpSynParameters estrutura de membro. Se o sinalizador NDIS_PM_WOL_IPV6_DEST_ADDR_WILDCARD_ENABLED estiver definido no EnabledWoLPacketPatterns membro do NDIS_PM_PARAMETERS, o adaptador de rede deverá usar o endereço não especificado ou o valor da porta para corresponder a qualquer endereço IPv6 de origem ou destino ou valor da porta TCP no pacote TCP SYN IPv4.
O driver da camada superior define os sinalizadores NDIS_PM_WOL_IPV4_DEST_ADDR_WILDCARD_ENABLED e NDIS_PM_WOL_IPV6_DEST_ADDR_WILDCARD_ENABLED emitindo uma solicitação definida do OID OID_PM_PARAMETERS.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Com suporte no NDIS 6.20 e posterior. |
cabeçalho | ntddndis.h (inclua Ntddndis.h) |