/** @file\r
Dhcp6 internal functions declaration.\r
\r
- Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved.<BR>\r
\r
- This program and the accompanying materials\r
- are licensed and made available under the terms and conditions of the BSD License\r
- which accompanies this distribution. The full text of the license may be found at\r
- http://opensource.org/licenses/bsd-license.php.\r
-\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+ SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
#ifndef __EFI_DHCP6_IO_H__\r
#define __EFI_DHCP6_IO_H__\r
\r
-\r
/**\r
Clean up the specific nodes in the retry list.\r
\r
**/\r
VOID\r
Dhcp6CleanupRetry (\r
- IN DHCP6_INSTANCE *Instance,\r
- IN UINT32 Scope\r
+ IN DHCP6_INSTANCE *Instance,\r
+ IN UINT32 Scope\r
);\r
\r
/**\r
**/\r
VOID\r
Dhcp6CleanupSession (\r
- IN OUT DHCP6_INSTANCE *Instance,\r
- IN EFI_STATUS Status\r
+ IN OUT DHCP6_INSTANCE *Instance,\r
+ IN EFI_STATUS Status\r
);\r
\r
/**\r
**/\r
EFI_STATUS\r
Dhcp6SendSolicitMsg (\r
- IN DHCP6_INSTANCE *Instance\r
+ IN DHCP6_INSTANCE *Instance\r
);\r
\r
/**\r
**/\r
EFI_STATUS\r
Dhcp6SendRequestMsg (\r
- IN DHCP6_INSTANCE *Instance\r
+ IN DHCP6_INSTANCE *Instance\r
);\r
\r
/**\r
**/\r
EFI_STATUS\r
Dhcp6SendRenewRebindMsg (\r
- IN DHCP6_INSTANCE *Instance,\r
- IN BOOLEAN RebindRequest\r
+ IN DHCP6_INSTANCE *Instance,\r
+ IN BOOLEAN RebindRequest\r
);\r
\r
/**\r
**/\r
EFI_STATUS\r
Dhcp6SendDeclineMsg (\r
- IN DHCP6_INSTANCE *Instance,\r
- IN EFI_DHCP6_IA *DecIa\r
+ IN DHCP6_INSTANCE *Instance,\r
+ IN EFI_DHCP6_IA *DecIa\r
);\r
\r
/**\r
**/\r
EFI_STATUS\r
Dhcp6SendReleaseMsg (\r
+ IN DHCP6_INSTANCE *Instance,\r
+ IN EFI_DHCP6_IA *RelIa\r
+ );\r
+\r
+/**\r
+ Start the information request process.\r
+\r
+ @param[in] Instance The pointer to the Dhcp6 instance.\r
+ @param[in] SendClientId If TRUE, the client identifier option will be included in\r
+ information request message. Otherwise, the client identifier\r
+ option will not be included.\r
+ @param[in] OptionRequest The pointer to the option request option.\r
+ @param[in] OptionCount The number options in the OptionList.\r
+ @param[in] OptionList The array pointers to the appended options.\r
+ @param[in] Retransmission The pointer to the retransmission control.\r
+ @param[in] TimeoutEvent The event of timeout.\r
+ @param[in] ReplyCallback The callback function when the reply was received.\r
+ @param[in] CallbackContext The pointer to the parameter passed to the callback.\r
+\r
+ @retval EFI_SUCCESS Start the info-request process successfully.\r
+ @retval EFI_OUT_OF_RESOURCES Required system resources could not be allocated.\r
+ @retval EFI_NO_MAPPING No source address is available for use.\r
+ @retval Others Failed to start the info-request process.\r
+\r
+**/\r
+EFI_STATUS\r
+Dhcp6StartInfoRequest (\r
IN DHCP6_INSTANCE *Instance,\r
- IN EFI_DHCP6_IA *RelIa\r
+ IN BOOLEAN SendClientId,\r
+ IN EFI_DHCP6_PACKET_OPTION *OptionRequest,\r
+ IN UINT32 OptionCount,\r
+ IN EFI_DHCP6_PACKET_OPTION *OptionList[] OPTIONAL,\r
+ IN EFI_DHCP6_RETRANSMISSION *Retransmission,\r
+ IN EFI_EVENT TimeoutEvent OPTIONAL,\r
+ IN EFI_DHCP6_INFO_CALLBACK ReplyCallback,\r
+ IN VOID *CallbackContext OPTIONAL\r
);\r
\r
/**\r
VOID\r
EFIAPI\r
Dhcp6ReceivePacket (\r
- IN NET_BUF *Udp6Wrap,\r
- IN UDP_END_POINT *EndPoint,\r
- IN EFI_STATUS IoStatus,\r
- IN VOID *Context\r
+ IN NET_BUF *Udp6Wrap,\r
+ IN UDP_END_POINT *EndPoint,\r
+ IN EFI_STATUS IoStatus,\r
+ IN VOID *Context\r
);\r
\r
/**\r
VOID\r
EFIAPI\r
Dhcp6OnTimerTick (\r
- IN EFI_EVENT Event,\r
- IN VOID *Context\r
+ IN EFI_EVENT Event,\r
+ IN VOID *Context\r
);\r
\r
#endif\r