LPDHCP_DROP_SEND 콜백 함수(dhcpssdk.h)
LPDHCP_DROP_SEND LpdhcpDropSend;
DWORD LpdhcpDropSend(
[in, out] LPBYTE *Packet,
[in, out] DWORD *PacketSize,
[in] DWORD ControlCode,
[in] DWORD IpAddress,
[in] LPVOID Reserved,
[in] LPVOID PktContext
)
{...}
[in, out] Packet
패킷을 포함하는 버퍼(크기 4Kb)에 대한 포인터입니다.
[in, out] PacketSize
패킷 매개 변수의 크기에 대한 포인터(바이트)입니다.
[in] ControlCode
삭제 이유를 지정하는 제어 코드입니다. 설명 부분을 참조하세요.
[in] IpAddress
패킷이 수신된 소켓의 IP(인터넷 프로토콜) 주소입니다. IP 주소가 호스트 순서에 따라 지정됩니다.
[in] Reserved
다음에 사용하도록 예약됩니다.
[in] PktContext
이전 DhcpNewPktHook 함수 호출의 PktContext 매개 변수에 제공된 패킷을 식별하는 컨텍스트입니다.
반환 값은 콜백을 제공하는 애플리케이션에 의해 정의됩니다.
DHCP 패킷이 삭제되거나 패킷이 완전히 처리될 때 DhcpPpktDropHook 함수는 Microsoft DHCP 서버에서 호출됩니다. DhcpPktDropHook는 중요한 Microsoft DHCP 서버 이벤트 알림을 등록하는 타사 DLL에 의해 구현됩니다.
DhcpPktDropHook 함수는 차단하면 안 됩니다.
이 이벤트에 대한 알림을 등록하는 타사 DLL은 각 패킷에 대해 DhcpPktDropHook 함수를 여러 번 호출하도록 준비해야 합니다. Microsoft DHCP Server에서 패킷을 삭제하는 경우 이 함수는 해당 패킷에 대해 두 번 호출됩니다. 한 번은 패킷이 삭제되었음을 알리고 패킷이 완전히 처리되었음을 다시 식별합니다.
다음 표에서는 ControlCode 매개 변수에 반환되는 가능한 컨트롤 코드를 정의합니다.
제어 코드 | Description |
---|---|
DHCP_DROP_DUPLICATE | 패킷은 DHCP 서버에서 받은 다른 패킷과 중복됩니다. |
DHCP_DROP_NOMEM | 패킷을 처리하는 데 사용할 수 있는 메모리가 부족합니다. |
DHCP_DROP_INTERNAL_ERROR | 예기치 않은 내부 오류가 발생했습니다. |
DHCP_DROP_TIMEOUT | 패킷이 너무 오래되어 처리할 수 없습니다. |
DHCP_DROP_UNAUTH | 서버에 이 패킷을 처리할 권한이 없습니다. |
DHCP_DROP_PAUSED | 서버가 일시 중지되었습니다. |
DHCP_DROP_NO_SUBNETS | 구성된 서브넷이 없으므로 패킷 처리에 아무런 의미가 없습니다. |
DHCP_DROP_INVALID | 패킷이 잘못되었거나 잘못된 소켓에서 수신되었습니다. |
DHCP_DROP_WRONG_SERVER | 패킷이 잘못된 DHCP 서버로 전송되었습니다. |
DHCP_DROP_NOADDRESS | 제공할 주소가 없습니다. |
DHCP_DROP_PROCESSED | 패킷이 처리되었습니다. |
DHCP_DROP_GEN_FAILURE | 알 수 없는 오류가 발생했습니다. |
DhcpPPtSendHook 함수는 Microsoft DHCP 서버가 클라이언트에 응답을 보내기 바로 전에 Microsoft DHCP 서버에서 호출됩니다. DhcpPktSendHook 알림을 등록하면 타사 개발자가 패킷 포인터를 조작하여 Microsoft DHCP 서버의 응답을 변경할 수 있습니다. DhcpPktSendHook는 중요한 Microsoft DHCP 서버 이벤트 알림을 등록하는 타사 DLL에 의해 구현됩니다.
DhcpPktSendHook 함수는 차단하면 안 됩니다.
DhcpPktSendHook 함수는 차단하면 안 됩니다.
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | 지원되는 버전 없음 |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | dhcpssdk.h |