PxeDhcpIsValid, fonction (wdspxe.h)
Valide qu’un paquet est un paquet DHCP.
Syntaxe
DWORD PXEAPI PxeDhcpIsValid(
[in] PVOID pPacket,
[in] ULONG uPacketLen,
[in] BOOL bRequestPacket,
[out] PBOOL pbPxeOptionPresent
);
Paramètres
[in] pPacket
Pointeur vers un paquet de réponse alloué avec la fonction PxePacketAllocate .
[in] uPacketLen
Longueur du paquet pointé vers le paramètre pPacket .
[in] bRequestPacket
Indique si le paquet est un paquet de requête. Le tableau suivant répertorie les valeurs possibles.
Valeur | Signification |
---|---|
|
Le paquet à valider est un paquet de requête provenant du client. |
|
Le paquet à valider est un paquet généré par le serveur. |
[out] pbPxeOptionPresent
Adresse d’un boOL défini sur TRUE si le paquet est un paquet DHCP valide qui contient l’option Vendor Class Identifier (60) avec la valeur définie sur « PXEClient ».
Valeur retournée
Si la fonction réussit, la valeur de retour est ERROR_SUCCESS.
Remarques
Les fournisseurs utilisent cette fonction lorsque le jeu de filtres avec la fonction PxeProviderSetAttribute est défini pour recevoir tous les paquets afin de déterminer si un paquet spécifié est un paquet DHCP valide. Les fournisseurs peuvent également utiliser cette fonction pour valider les paquets de réponse ; En règle générale, cette opération est effectuée uniquement pour les builds de débogage ou de test du fournisseur.
Les tests de validation incluent les tests suivants.
Champ DHCP | Valeur initialisée |
---|---|
Opération (op) | Si le paramètre bClientRequest a la valeurTRUE, ce champ doit être 1 (demande BOOTP), sinon ce champ doit être 2 (réponse BOOTP). |
Longueur de l’adresse matérielle (hlen) | Doit être inférieur ou égal à 16. |
Nom d’hôte (sname) | Doit avoir la valeur NULL terminée. |
Nom du fichier de démarrage (fichier) | Doit avoir la valeur NULL terminée. |
Magic Cookie (4 premiers octets de vend) | Doit contenir un cookie DHCP Magic valide (99 130 83 99). |
Longueur de l’option | Toutes les options doivent avoir une longueur valide et ne pas dépasser le paquet. |
Type de message DHCP (53) | Doit être présent. |
Option De fin (255) | Le paquet doit se terminer par l’option de fin DHCP. En raison de la longueur minimale des paquets, le paquet peut être plus volumineux, mais aucune option ne peut suivre l’option End. |
Configuration requise
Client minimal pris en charge | Aucun pris en charge |
Serveur minimal pris en charge | Windows Server 2008, Windows Server 2003 avec SP2 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | wdspxe.h |
Bibliothèque | WdsPxe.lib |
DLL | WdsPxe.dll |