TianoCore EDK2 master
Loading...
Searching...
No Matches
Dhcp6Io.h File Reference

Go to the source code of this file.

Functions

VOID Dhcp6CleanupRetry (IN DHCP6_INSTANCE *Instance, IN UINT32 Scope)
 
VOID Dhcp6CleanupSession (IN OUT DHCP6_INSTANCE *Instance, IN EFI_STATUS Status)
 
EFI_STATUS Dhcp6SendSolicitMsg (IN DHCP6_INSTANCE *Instance)
 
EFI_STATUS Dhcp6SendRequestMsg (IN DHCP6_INSTANCE *Instance)
 
EFI_STATUS Dhcp6SendRenewRebindMsg (IN DHCP6_INSTANCE *Instance, IN BOOLEAN RebindRequest)
 
EFI_STATUS Dhcp6SendDeclineMsg (IN DHCP6_INSTANCE *Instance, IN EFI_DHCP6_IA *DecIa)
 
EFI_STATUS Dhcp6SendReleaseMsg (IN DHCP6_INSTANCE *Instance, IN EFI_DHCP6_IA *RelIa)
 
EFI_STATUS Dhcp6StartInfoRequest (IN DHCP6_INSTANCE *Instance, IN BOOLEAN SendClientId, IN EFI_DHCP6_PACKET_OPTION *OptionRequest, IN UINT32 OptionCount, IN EFI_DHCP6_PACKET_OPTION *OptionList[] OPTIONAL, IN EFI_DHCP6_RETRANSMISSION *Retransmission, IN EFI_EVENT TimeoutEvent OPTIONAL, IN EFI_DHCP6_INFO_CALLBACK ReplyCallback, IN VOID *CallbackContext OPTIONAL)
 
EFI_STATUS Dhcp6SendInfoRequestMsg (IN DHCP6_INSTANCE *Instance, IN DHCP6_INF_CB *InfCb, IN BOOLEAN SendClientId, IN EFI_DHCP6_PACKET_OPTION *OptionRequest, IN UINT32 OptionCount, IN EFI_DHCP6_PACKET_OPTION *OptionList[], IN EFI_DHCP6_RETRANSMISSION *Retransmission)
 
VOID EFIAPI Dhcp6ReceivePacket (IN NET_BUF *Udp6Wrap, IN UDP_END_POINT *EndPoint, IN EFI_STATUS IoStatus, IN VOID *Context)
 
VOID EFIAPI Dhcp6OnTimerTick (IN EFI_EVENT Event, IN VOID *Context)
 
EFI_STATUS Dhcp6SeekInnerOptionSafe (IN UINT16 IaType, IN UINT8 *Option, IN UINT32 OptionLen, OUT UINT8 **IaInnerOpt, OUT UINT16 *IaInnerLen)
 

Detailed Description

Dhcp6 internal functions declaration.

Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file Dhcp6Io.h.

Function Documentation

◆ Dhcp6CleanupRetry()

VOID Dhcp6CleanupRetry ( IN DHCP6_INSTANCE Instance,
IN UINT32  Scope 
)

Clean up the specific nodes in the retry list.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
[in]ScopeThe scope of cleanup nodes.

Definition at line 292 of file Dhcp6Io.c.

◆ Dhcp6CleanupSession()

VOID Dhcp6CleanupSession ( IN OUT DHCP6_INSTANCE Instance,
IN EFI_STATUS  Status 
)

Clean up the session of the instance stateful exchange.

Parameters
[in,out]InstanceThe pointer to the Dhcp6 instance.
[in]StatusThe return status from udp.

Definition at line 387 of file Dhcp6Io.c.

◆ Dhcp6OnTimerTick()

VOID EFIAPI Dhcp6OnTimerTick ( IN EFI_EVENT  Event,
IN VOID *  Context 
)

The timer routine of the Dhcp6 instance for each second.

Parameters
[in]EventThe timer event.
[in]ContextThe opaque parameter to the function.

Definition at line 3194 of file Dhcp6Io.c.

◆ Dhcp6ReceivePacket()

VOID EFIAPI Dhcp6ReceivePacket ( IN NET_BUF Udp6Wrap,
IN UDP_END_POINT EndPoint,
IN EFI_STATUS  IoStatus,
IN VOID *  Context 
)

The receive callback function for the Dhcp6 exchange process.

Parameters
[in]Udp6WrapThe pointer to the received net buffer.
[in]EndPointThe pointer to the udp end point.
[in]IoStatusThe return status from udp io.
[in]ContextThe opaque parameter to the function.

The receive callback function for Dhcp6 exchange process.

Parameters
[in]Udp6WrapThe pointer to the received net buffer.
[in]EndPointThe pointer to the udp end point.
[in]IoStatusThe return status from udp io.
[in]ContextThe opaque parameter to the function.

Definition at line 3007 of file Dhcp6Io.c.

◆ Dhcp6SeekInnerOptionSafe()

EFI_STATUS Dhcp6SeekInnerOptionSafe ( IN UINT16  IaType,
IN UINT8 *  Option,
IN UINT32  OptionLen,
OUT UINT8 **  IaInnerOpt,
OUT UINT16 *  IaInnerLen 
)

Seeks the Inner Options from a DHCP6 Option

Parameters
[in]IaTypeThe type of the IA option.
[in]OptionThe pointer to the DHCP6 Option.
[in]OptionLenThe length of the DHCP6 Option.
[out]IaInnerOptThe pointer to the IA inner option.
[out]IaInnerLenThe length of the IA inner option.
Return values
EFI_SUCCESSSeek the inner option successfully.
EFI_DEVICE_ERRORThe OptionLen is invalid. On Error, the pointers are not modified

Definition at line 705 of file Dhcp6Io.c.

◆ Dhcp6SendDeclineMsg()

EFI_STATUS Dhcp6SendDeclineMsg ( IN DHCP6_INSTANCE Instance,
IN EFI_DHCP6_IA DecIa 
)

Create the decline message and send it.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
[in]DecIaThe pointer to the decline Ia.
Return values
EFI_SUCCESSCreate and send the decline message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
EFI_DEVICE_ERRORAn unexpected error.
OthersFailed to send the decline message.

Create the decline message and send it.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
[in]DecIaThe pointer to the decline Ia.
Return values
EFI_SUCCESSCreated and sent the decline message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
EFI_DEVICE_ERRORAn unexpected error.
OthersFailed to send the decline message.

Definition at line 1367 of file Dhcp6Io.c.

◆ Dhcp6SendInfoRequestMsg()

EFI_STATUS Dhcp6SendInfoRequestMsg ( IN DHCP6_INSTANCE Instance,
IN DHCP6_INF_CB InfCb,
IN BOOLEAN  SendClientId,
IN EFI_DHCP6_PACKET_OPTION OptionRequest,
IN UINT32  OptionCount,
IN EFI_DHCP6_PACKET_OPTION OptionList[],
IN EFI_DHCP6_RETRANSMISSION Retransmission 
)

Create the information request message and send it.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
[in]InfCbThe pointer to the information request control block.
[in]SendClientIdIf TRUE, the client identifier option will be included in information request message. Otherwise, the client identifier option will not be included.
[in]OptionRequestThe pointer to the option request option.
[in]OptionCountThe number options in the OptionList.
[in]OptionListThe array pointers to the appended options.
[in]RetransmissionThe pointer to the retransmission control.
Return values
EFI_SUCCESSCreate and send the info-request message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
OthersFailed to send the info-request message.

Create the information request message and send it.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
[in]InfCbThe pointer to the information request control block.
[in]SendClientIdIf TRUE, the client identifier option will be included in information request message. Otherwise, the client identifier option will not be included.
[in]OptionRequestThe pointer to the option request option.
[in]OptionCountThe number options in the OptionList.
[in]OptionListThe array pointers to the appended options.
[in]RetransmissionThe pointer to the retransmission control.
Return values
EFI_SUCCESSCreated and sent the info-request message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
OthersFailed to send the info-request message.

Definition at line 1987 of file Dhcp6Io.c.

◆ Dhcp6SendReleaseMsg()

EFI_STATUS Dhcp6SendReleaseMsg ( IN DHCP6_INSTANCE Instance,
IN EFI_DHCP6_IA RelIa 
)

Create the release message and send it.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
[in]RelIaThe pointer to the release Ia.
Return values
EFI_SUCCESSCreate and send the release message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
EFI_DEVICE_ERRORAn unexpected error.
OthersFailed to send the release message.

Create the release message and send it.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
[in]RelIaThe pointer to the release Ia.
Return values
EFI_SUCCESSCreated and sent the release message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
EFI_DEVICE_ERRORAn unexpected error.
OthersFailed to send the release message.

Definition at line 1527 of file Dhcp6Io.c.

◆ Dhcp6SendRenewRebindMsg()

EFI_STATUS Dhcp6SendRenewRebindMsg ( IN DHCP6_INSTANCE Instance,
IN BOOLEAN  RebindRequest 
)

Create the renew/rebind message and send it.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
[in]RebindRequestIf TRUE, it is a Rebind type message. Otherwise, it is a Renew type message.
Return values
EFI_SUCCESSCreate and send the renew/rebind message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
EFI_DEVICE_ERRORAn unexpected error.
OthersFailed to send the renew/rebind message.

Create the renew/rebind message and send it.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
[in]RebindRequestIf TRUE, it is a Rebind type message. Otherwise, it is a Renew type message.
Return values
EFI_SUCCESSCreated and sent the renew/rebind message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
EFI_DEVICE_ERRORAn unexpected error.
OthersFailed to send the renew/rebind message.

Definition at line 1683 of file Dhcp6Io.c.

◆ Dhcp6SendRequestMsg()

EFI_STATUS Dhcp6SendRequestMsg ( IN DHCP6_INSTANCE Instance)

Create the request message and send it.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
Return values
EFI_SUCCESSCreate and send the request message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
EFI_DEVICE_ERRORAn unexpected error.
OthersFailed to send the request message.

Create the request message and send it.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
Return values
EFI_SUCCESSCreated and sent the request message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
EFI_DEVICE_ERRORAn unexpected error.
OthersFailed to send the request message.

Definition at line 1183 of file Dhcp6Io.c.

◆ Dhcp6SendSolicitMsg()

EFI_STATUS Dhcp6SendSolicitMsg ( IN DHCP6_INSTANCE Instance)

Create the solicit message and send it.

Parameters
[in]InstanceThe pointer to Dhcp6 instance.
Return values
EFI_SUCCESSCreate and send the solicit message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
OthersFailed to send the solicit message.

Create the solicit message and send it.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
Return values
EFI_SUCCESSCreated and sent the solicit message successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
OthersFailed to send the solicit message.

Definition at line 1005 of file Dhcp6Io.c.

◆ Dhcp6StartInfoRequest()

EFI_STATUS Dhcp6StartInfoRequest ( IN DHCP6_INSTANCE Instance,
IN BOOLEAN  SendClientId,
IN EFI_DHCP6_PACKET_OPTION OptionRequest,
IN UINT32  OptionCount,
IN EFI_DHCP6_PACKET_OPTION *OptionList[]  OPTIONAL,
IN EFI_DHCP6_RETRANSMISSION Retransmission,
IN EFI_EVENT TimeoutEvent  OPTIONAL,
IN EFI_DHCP6_INFO_CALLBACK  ReplyCallback,
IN VOID *CallbackContext  OPTIONAL 
)

Start the information request process.

Parameters
[in]InstanceThe pointer to the Dhcp6 instance.
[in]SendClientIdIf TRUE, the client identifier option will be included in information request message. Otherwise, the client identifier option will not be included.
[in]OptionRequestThe pointer to the option request option.
[in]OptionCountThe number options in the OptionList.
[in]OptionListThe array pointers to the appended options.
[in]RetransmissionThe pointer to the retransmission control.
[in]TimeoutEventThe event of timeout.
[in]ReplyCallbackThe callback function when the reply was received.
[in]CallbackContextThe pointer to the parameter passed to the callback.
Return values
EFI_SUCCESSStart the info-request process successfully.
EFI_OUT_OF_RESOURCESRequired system resources could not be allocated.
EFI_NO_MAPPINGNo source address is available for use.
OthersFailed to start the info-request process.

Definition at line 1889 of file Dhcp6Io.c.