União SoHAttributeValue
Observação
A plataforma de Proteção de Acesso à Rede não está disponível a partir do Windows 10
A união SoHAttributeValue define o conteúdo do membro do tipo em uma estrutura SoHAttribute . A estrutura da união SoHAttributeValue é determinada pelo SoHAttributeType especificado no membro de tipo da estrutura SoHAttribute .
Sintaxe
typedef union tagSoHAttributeValue {
SystemHealthEntityId idVal;
struct tagIpv4Addresses {
UINT16 count;
Ipv4Address *addresses;
} v4AddressesVal;
struct tagIpv6Addresses {
UINT16 count;
Ipv6Address *addresses;
} v6AddressesVal;
ResultCodes codesVal;
FILETIME dateTimeVal;
struct tagVendorSpecific {
UINT32 vendorId;
UINT16 size;
BYTE *vendorSpecificData;
} vendorSpecificVal;
UINT8 uint8Val;
struct tagOctetString {
UINT16 size;
BYTE *data;
} octetStringVal;
} SoHAttributeValue;
Membros
-
idVal
-
case(sohAttributeTypeSystemHealthId)
Um SystemHealthEntityId exclusivo que contém a ID do AGENTE de Integridade do Sistema (SHA) ou shv (validador de integridade do sistema) que construiu esse pacote SoH .
-
v4AddressesVal
-
case(sohAttributeTypeIpv4FixupServers)
Os endereços IPv4 dos servidores de correção em uso pelo sistema NAP.
-
contagem
-
O número de endereços IPv4 no membro de endereços no intervalo de 1 a maxIpv4CountPerSoHAttribute.
-
addresses
-
Uma matriz de estruturas Ipv4Address que contêm os endereços IPv4.
-
-
v6AddressesVal
-
case(sohAttributeTypeIpv6FixupServers)
Os endereços IPv6 dos servidores de correção em uso pelo sistema NAP.
-
contagem
-
O número de endereços IPv4 no membro de endereços no intervalo de 1 a maxIpv6CountPerSoHAttribute.
-
addresses
-
Uma matriz de estruturas Ipv6Address que contêm os endereços IPv4.
-
-
codesVal
-
case(sohAttributeTypeComplianceResultCodes, sohAttributeTypeErrorCodes)
Uma estrutura ResultCodes que contém os códigos de resultado de conformidade definidos pelo aplicativo das constantes de erro cliente ou NAP. Um pacote SoH deve conter esse TLV ou o TLV sohAttributeTypeFailureCategory .
-
dateTimeVal
-
case(sohAttributeTypeTimeOfLastUpdate, sohAttributeTypeSoHGenerationTime)
Uma estrutura FILETIME que contém a hora da última atualização de SoH ou o tempo de geração de SoH .
-
vendorSpecificVal
-
case(sohAttributeTypeVendorSpecific)
Dados específicos do aplicativo definidos pelo fornecedor.
-
Vendorid
-
Um identificador de 4 bytes que define a ID do par SHA/SHV. Os três primeiros bytes são o código SMI atribuído por IETF do fornecedor e o último byte identifica o próprio componente. Ao implementar um SHA ou SHV, não use os valores de ID atribuídos a componentes internos de integridade do sistema microsoft em constantes de fornecedor NAP.
-
size
-
O tamanho, em bytes, dos dados do fornecedor no intervalo de 0 a (maxSoHAttributeSize - 4).
-
vendorSpecificData
-
Um ponteiro para os dados específicos do fornecedor na ordem de bytes de rede.
-
-
uint8Val
-
case(sohAttributeTypeHealthClass, sohAttributeTypeFailureCategory,sohAttributeTypeExtendedIsolationState)
A classe de integridade, a categoria de falha ou o estado de isolamento estendido de um componente NAP como um valor HealthClassValue ou FailureCategory ou uma estrutura IsolationInfoEx .
-
octetStringVal
-
default
Os valores dos seguintes atributos são cadeias de caracteres de octeto:
- sohAttributeTypeSoftwareVersion
- sohAttributeTypeClientId
- sohAttributeTypeProductName
- sohAttributeTypeHealthClassStatus
Para compatibilidade futura, todos os atributos não reconhecidos são retornados como cadeias de caracteres de octeto. os dados devem estar em ordem de byte de rede.
-
size
-
O tamanho, em bytes, de dados no intervalo de 0 a maxSoHAttributeSize.
-
data
-
Um ponteiro para o valor da cadeia de caracteres de octeto.
Layout de dados real
Devido à natureza do ambiente de publicação do SDK, os sindicatos não são claramente representados em blocos de sintaxe. Aqui está a sintaxe real do arquivo de cabeçalho NapProtocol.h.
#include <windows.h>
typedef [switch_type(SoHAttributeType)]
union tagSoHAttributeValue
{
[case(sohAttributeTypeSystemHealthId)]
SystemHealthEntityId idVal;
[case(sohAttributeTypeIpv4FixupServers)]
struct tagIpv4Addresses
{
[range(1, maxIpv4CountPerSoHAttribute)]
UINT16 count;
[size_is(count)] Ipv4Address* addresses;
} v4AddressesVal;
[case(sohAttributeTypeIpv6FixupServers)]
struct tagIpv6Addresses
{
[range(1, maxIpv6CountPerSoHAttribute)]
UINT16 count;
[size_is(count)] Ipv6Address* addresses;
} v6AddressesVal;
[case(sohAttributeTypeComplianceResultCodes,
sohAttributeTypeErrorCodes)]
ResultCodes codesVal;
[case(sohAttributeTypeTimeOfLastUpdate,
sohAttributeTypeSoHGenerationTime)]
FILETIME dateTimeVal;
[case(sohAttributeTypeVendorSpecific)]
struct tagVendorSpecific
{
UINT32 vendorId;
[range(0, maxSoHAttributeSize - 4)]
UINT16 size;
[size_is(size)] BYTE* vendorSpecificData;
} vendorSpecificVal;
[case(sohAttributeTypeHealthClass,
sohAttributeTypeFailureCategory,
sohAttributeTypeExtendedIsolationState)]
UINT8 uint8Val;
[default]
struct tagOctetString
{
[range(0, maxSoHAttributeSize)] UINT16 size;
[size_is(size)] BYTE* data;
} octetStringVal;
} SoHAttributeValue;
};
Comentários
Esses tipos de atributo são consumidos pelo sistema NAP:
- sohAttributeTypeSystemHealthId
- sohAttributeTypeIpv4FixupServers
- sohAttributeTypeIpv6FixupServers
- sohAttributeTypeComplianceResultCodes
- sohAttributeTypeFailureCategory
O restante dos SoHAttributeTypes são destinados puramente como diretrizes prescritivas para uso por SHAs e SHVs.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Windows Server 2008 [somente aplicativos da área de trabalho] |
Cabeçalho |
|
IDL |
|