다음을 통해 공유


PxeDhcpIsValid 함수(wdspxe.h)

패킷이 DHCP 패킷인지 확인합니다.

구문

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

매개 변수

[in] pPacket

PxePacketAllocate 함수를 사용하여 할당된 회신 패킷에 대한 포인터입니다.

[in] uPacketLen

pPacket 매개 변수가 가리키는 패킷의 길이입니다.

[in] bRequestPacket

패킷이 요청 패킷인지 여부를 나타냅니다. 다음 표에서 가능한 값을 나열합니다.

의미
TRUE
1
유효성을 검사할 패킷은 클라이언트의 요청 패킷입니다.
FALSE
0
유효성을 검사할 패킷은 서버에서 생성된 패킷입니다.

[out] pbPxeOptionPresent

패킷이 "PXEClient"로 설정된 공급업체 클래스 식별자 옵션(60)을 포함하는 유효한 DHCP 패킷인 경우 TRUE로 설정된 BOOL의 주소입니다.

반환 값

함수가 성공하면 반환 값이 ERROR_SUCCESS.

설명

지정된 패킷이 유효한 DHCP 패킷인지 확인하기 위해 PxeProviderSetAttribute 함수로 설정된 필터가 모든 패킷을 수신하도록 설정된 경우 공급자는 이 함수를 사용합니다. 공급자는 이 함수를 사용하여 회신 패킷의 유효성을 검사할 수도 있습니다. 일반적으로 이 작업은 공급자의 디버그 또는 테스트 빌드에 대해서만 수행됩니다.

유효성 검사 테스트에는 다음 테스트가 포함됩니다.

DHCP 필드 초기화된 값
작업(op) bClientRequest 매개 변수가 TRUE이면 이 필드는 1(BOOTP 요청)이어야 합니다. 그렇지 않으면 이 필드는 2(BOOTP 회신)여야 합니다.
하드웨어 주소 길이(hlen) 16보다 작거나 같아야 합니다.
호스트 이름(sname) NULL을 종료해야 합니다.
부팅 파일 이름(파일) NULL을 종료해야 합니다.
매직 쿠키(처음 4개 8진수) 유효한 DHCP 매직 쿠키(99 130 83 99)를 포함해야 합니다.
옵션 길이 모든 옵션은 길이가 유효해야 하며 패킷을 오버런하지 않아야 합니다.
DHCP 메시지 유형(53) 반드시 있어야 합니다.
종료 옵션(255) 패킷은 DHCP 종료 옵션으로 끝나야 합니다. 최소 패킷 길이로 인해 패킷이 더 클 수 있지만 종료 옵션을 따르는 옵션은 없습니다.

요구 사항

   
지원되는 최소 클라이언트 지원되는 버전 없음
지원되는 최소 서버 Windows Server 2008, Windows Server 2003 SP2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 wdspxe.h
라이브러리 WdsPxe.lib
DLL WdsPxe.dll

추가 정보

PxePacketAllocate

PxeProviderSetAttribute

Windows Deployment Services 서버 함수