PxeDhcpIsValid-Funktion (wdspxe.h)
Überprüft, ob ein Paket ein DHCP-Paket ist.
Syntax
DWORD PXEAPI PxeDhcpIsValid(
[in] PVOID pPacket,
[in] ULONG uPacketLen,
[in] BOOL bRequestPacket,
[out] PBOOL pbPxeOptionPresent
);
Parameter
[in] pPacket
Zeiger auf ein Antwortpaket, das der PxePacketAllocate-Funktion zugeordnet ist.
[in] uPacketLen
Länge des Pakets, auf das der pPacket-Parameter verweist.
[in] bRequestPacket
Gibt an, ob es sich bei dem Paket um ein Anforderungspaket handelt. In der folgenden Tabelle sind die möglichen Werte aufgeführt.
Wert | Bedeutung |
---|---|
|
Das zu überprüfende Paket ist ein Anforderungspaket vom Client. |
|
Das zu überprüfende Paket ist ein vom Server generiertes Paket. |
[out] pbPxeOptionPresent
Adresse einer BOOL , die auf TRUE festgelegt ist, wenn das Paket ein gültiges DHCP-Paket ist, das die Option Vendor Class Identifier (60) enthält, wobei der Wert auf "PXEClient" festgelegt ist.
Rückgabewert
Wenn die Funktion erfolgreich ist, wird der Rückgabewert ERROR_SUCCESS.
Hinweise
Anbieter verwenden diese Funktion, wenn der Filtersatz mit der Funktion PxeProviderSetAttribute festgelegt ist, um alle Pakete zu empfangen, um zu bestimmen, ob ein angegebenes Paket ein gültiges DHCP-Paket ist. Anbieter können diese Funktion auch verwenden, um Antwortpakete zu überprüfen. In der Regel erfolgt dies nur für Debug- oder Testbuilds des Anbieters.
Die Validierungstests umfassen die folgenden Tests.
DHCP-Feld | Initialisierter Wert |
---|---|
Vorgang (op) | Wenn der bClientRequest-ParameterTRUE ist, muss dieses Feld 1 (BOOTP-Anforderung) sein, andernfalls muss dieses Feld 2 (BOOTP Reply) sein. |
Länge der Hardwareadresse (hlen) | Muss kleiner oder gleich 16 sein. |
Hostname (sname) | Muss NULL beendet sein. |
Name der Startdatei (Datei) | Muss NULL beendet sein. |
Magic Cookie (erste 4 Oktette des Verkaufs) | Muss gültiges DHCP Magic Cookie (99 130 83 99) enthalten. |
Optionslänge | Alle Optionen müssen eine gültige Länge aufweisen und das Paket nicht überlaufen. |
DHCP-Nachrichtentyp (53) | Muss vorhanden sein. |
Endoption (255) | Das Paket muss mit der DHCP-Endoption enden. Aufgrund der mindesten Paketlänge kann das Paket größer sein, aber keine Optionen können der Endoption folgen. |
Anforderungen
Unterstützte Mindestversion (Client) | Nicht unterstützt |
Unterstützte Mindestversion (Server) | Windows Server 2008, Windows Server 2003 mit SP2 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | wdspxe.h |
Bibliothek | WdsPxe.lib |
DLL | WdsPxe.dll |