Compartilhar via


Função PxeDhcpIsValid (wdspxe.h)

Valida se um pacote é um pacote DHCP.

Sintaxe

DWORD PXEAPI PxeDhcpIsValid(
  [in]  PVOID pPacket,
  [in]  ULONG uPacketLen,
  [in]  BOOL  bRequestPacket,
  [out] PBOOL pbPxeOptionPresent
);

Parâmetros

[in] pPacket

Ponteiro para um pacote de resposta alocado com a função PxePacketAllocate .

[in] uPacketLen

Comprimento do pacote apontado pelo parâmetro pPacket .

[in] bRequestPacket

Indica se o pacote é um pacote de solicitação. A tabela a seguir lista os valores possíveis.

Valor Significado
TRUE
1
O pacote a ser validado é um pacote de solicitação do cliente.
FALSE
0
O pacote a ser validado é um pacote gerado pelo servidor.

[out] pbPxeOptionPresent

Endereço de um BOOL definido como TRUE se o pacote for um pacote DHCP válido que contém a opção Identificador de Classe do Fornecedor (60) com o valor definido como "PXEClient".

Valor retornado

Se a função for bem-sucedida, o valor retornado será ERROR_SUCCESS.

Comentários

Os provedores usam essa função quando o conjunto de filtros com a função PxeProviderSetAttribute é definido para receber todos os pacotes para determinar se um pacote especificado é um pacote DHCP válido. Os provedores também podem usar essa função para validar pacotes de resposta; normalmente, isso é feito apenas para compilações de depuração ou teste do provedor.

Os testes de validação incluem os testes a seguir.

Campo DHCP Valor inicializado
Operação (op) Se o parâmetro bClientRequest for TRUE, esse campo deverá ser 1 (Solicitação BOOTP), caso contrário, esse campo deverá ser 2 (Resposta BOOTP).
Comprimento do endereço de hardware (hlen) Deve ser menor ou igual a 16.
Nome do Host (nome do host) Deve ser nulo encerrado.
Nome do arquivo de inicialização (arquivo) Deve ser nulo encerrado.
Magic Cookie (primeiros 4 octetos de vend) Deve conter um Cookie Mágico DHCP válido (99 130 83 99).
Comprimento da opção Todas as opções devem ter um comprimento válido e não ultrapassar o pacote.
Tipo de mensagem DHCP (53) Deve estar presente.
Opção End (255) O pacote deve terminar com a opção de fim DHCP. Devido aos comprimentos mínimos do pacote, o pacote pode ser maior, mas nenhuma opção pode seguir a opção End.

Requisitos

   
Cliente mínimo com suporte Nenhum compatível
Servidor mínimo com suporte Windows Server 2008, Windows Server 2003 com SP2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho wdspxe.h
Biblioteca WdsPxe.lib
DLL WdsPxe.dll

Confira também

PxePacketAllocate

PxeProviderSetAttribute

Funções de servidor dos Serviços de Implantação do Windows