]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/Dhcp6.h
Move the definitions defined for User Manager protocol from UserCredential.h to UserM...
[mirror_edk2.git] / MdePkg / Include / Protocol / Dhcp6.h
index 95aa6bc3267669baf31fa34c51e33c04b6da707a..3f12f3894c51954bffb40f6a0faafe33492f1ef6 100644 (file)
@@ -2,14 +2,17 @@
   UEFI Dynamic Host Configuration Protocol 6 Definition, which is used to get IPv6\r
   addresses and other configuration parameters from DHCPv6 servers.\r
 \r
-Copyright (c) 2008 - 2009, Intel Corporation                                                         \r
-All rights reserved. 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
+  Copyright (c) 2008 - 2009, Intel Corporation                                                         \r
+  All rights reserved. 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
+\r
+  @par Revision Reference:          \r
+  This Protocol is introduced in UEFI Specification 2.2\r
 \r
 **/\r
 \r
@@ -141,21 +144,31 @@ typedef enum {
 #define EFI_DHCP6_IA_TYPE_TA   4\r
 \r
 #pragma pack(1)\r
+///\r
+/// EFI_DHCP6_PACKET_OPTION\r
+/// defines the format of the DHCPv6 option, See RFC 3315 for more information.\r
+/// This data structure is used to reference option data that is packed in the DHCPv6 packet. \r
+///\r
 typedef struct {\r
   ///\r
-  /// The DHCPv6 option code.\r
+  /// The DHCPv6 option code, stored in network order.\r
   ///\r
   UINT16                       OpCode;\r
   ///\r
-  /// Length of the DHCPv6 option data. From the first byte to the last byte of the Data field.\r
+  /// Length of the DHCPv6 option data, stored in network order.\r
+  /// From the first byte to the last byte of the Data field.\r
   ///\r
   UINT16                       OpLen;\r
   ///\r
-  /// The data for the DHCPv6 option.\r
+  /// The data for the DHCPv6 option, stored in network order.\r
   ///\r
   UINT8                        Data[1];\r
 } EFI_DHCP6_PACKET_OPTION;\r
 \r
+///\r
+/// EFI_DHCP6_HEADER\r
+/// defines the format of the DHCPv6 header. See RFC 3315 for more information. \r
+///\r
 typedef struct{\r
   ///\r
   /// The DHCPv6 transaction ID.\r
@@ -167,6 +180,10 @@ typedef struct{
   UINT32                       TransactionId:24;\r
 } EFI_DHCP6_HEADER;\r
 \r
+///\r
+/// EFI_DHCP6_PACKET \r
+/// defines the format of the DHCPv6 packet. See RFC 3315 for more information.\r
+///\r
 typedef struct {\r
   ///\r
   /// Size of the EFI_DHCP6_PACKET buffer.\r
@@ -208,19 +225,19 @@ typedef struct {
   ///\r
   UINT32                       Irt;\r
   ///\r
-  /// Maximum retransmission count for one packet. If Mrc is zero, there¡¯s no upper limit \r
+  /// Maximum retransmission count for one packet. If Mrc is zero, there's no upper limit \r
   /// for retransmission count.\r
   ///\r
   UINT32                       Mrc;\r
   ///\r
-  /// Maximum retransmission timeout for each retry. It¡¯s the upper bound of the number of \r
+  /// Maximum retransmission timeout for each retry. It's the upper bound of the number of \r
   /// retransmission timeout. If Mrt is zero, there is no upper limit for retransmission \r
   /// timeout.\r
   ///\r
   UINT32                       Mrt;\r
   ///\r
-  /// Maximum retransmission duration for one packet. It¡¯s the upper bound of the numbers \r
-  /// the client may retransmit a message. If Mrd is zero, there¡¯s no upper limit for \r
+  /// Maximum retransmission duration for one packet. It's the upper bound of the numbers \r
+  /// the client may retransmit a message. If Mrd is zero, there's no upper limit for \r
   /// retransmission duration.\r
   ///\r
   UINT32                       Mrd;\r
@@ -478,7 +495,7 @@ EFI_STATUS
                                 EFI_DHCP6_CONFIG_DATA.IaInfoEvent is NULL. \r
                                 The DHCPv6 S.A.R.R process is started when \r
                                 EFI_DHCP6_CONFIG_DATA.IaInfoEvent is not NULL.\r
-  @retval EFI_ACCESS_DENIED     The EFI DHCPv6 Child instance hasn¡¯t been configured.\r
+  @retval EFI_ACCESS_DENIED     The EFI DHCPv6 Child instance hasn't been configured.\r
   @retval EFI_INVALID_PARAMETER This is NULL.\r
   @retval EFI_OUT_OF_RESOURCES  Required system resources could not be allocated.\r
   @retval EFI_ALREADY_STARTED   The DHCPv6 S.A.R.R process has already started.\r
@@ -580,7 +597,7 @@ EFI_STATUS
   timer continues. \r
   - When RebindRequest is TRUE and the state of the configured IA is Dhcp6Bound, it will \r
   send Rebind packet. If valid Reply packet received, the state transfers to Dhcp6Bound and the \r
-  valid and preferred timer restarts. If fails, the state transfers to Dhcp6Init and the IA can¡¯t\r
+  valid and preferred timer restarts. If fails, the state transfers to Dhcp6Init and the IA can't\r
   be used.\r
 \r
   @param[in]  This              Pointer to the EFI_DHCP4_PROTOCOL instance.\r
@@ -592,7 +609,7 @@ EFI_STATUS
                                 when EFI_DHCP6_CONFIG_DATA.IaInfoEvent is NULL. \r
                                 The EFI DHCPv6 Protocol instance has sent Renew or Rebind packet \r
                                 when EFI_DHCP6_CONFIG_DATA.IaInfoEvent is not NULL.\r
-  @retval EFI_ACCESS_DENIED     The EFI DHCPv6 Child instance hasn¡¯t been configured, or the state\r
+  @retval EFI_ACCESS_DENIED     The EFI DHCPv6 Child instance hasn't been configured, or the state\r
                                 of the configured IA is not in Dhcp6Bound.\r
   @retval EFI_ALREADY_STARTED   The state of the configured IA has already entered Dhcp6Renewing \r
                                 when RebindRequest is FALSE. \r
@@ -638,7 +655,7 @@ EFI_STATUS
                                 - AddressCount is zero or Addresses is NULL.\r
   @retval EFI_NOT_FOUND         Any specified IPv6 address is not correlated with the configured IA \r
                                 for this instance.\r
-  @retval EFI_ACCESS_DENIED     The EFI DHCPv6 Child instance hasn¡¯t been configured, or the \r
+  @retval EFI_ACCESS_DENIED     The EFI DHCPv6 Child instance hasn't been configured, or the \r
                                 state of the configured IA is not in Dhcp6Bound.\r
   @retval EFI_DEVICE_ERROR      An unexpected network or system error occurred.\r
   @retval EFI_ABORTED           The DHCPv6 decline exchange process aborted by user.\r
@@ -676,7 +693,7 @@ EFI_STATUS
                                 - AddressCount is not zero or Addresses is NULL.\r
   @retval EFI_NOT_FOUND         Any specified IPv6 address is not correlated with the configured\r
                                 IA for this instance.\r
-  @retval EFI_ACCESS_DENIED     The EFI DHCPv6 Child instance hasn¡¯t been configured, or the \r
+  @retval EFI_ACCESS_DENIED     The EFI DHCPv6 Child instance hasn't been configured, or the \r
                                 state of the configured IA is not in Dhcp6Bound.\r
   @retval EFI_DEVICE_ERROR      An unexpected network or system error occurred.\r
   @retval EFI_ABORTED           The DHCPv6 release exchange process aborted by user. \r
@@ -702,7 +719,7 @@ EFI_STATUS
   @retval EFI_SUCCESS           The DHCPv6 S.A.R.R process has been stopped when\r
                                 EFI_DHCP6_CONFIG_DATA.IaInfoEvent is NULL.\r
                                 The EFI DHCPv6 Protocol instance has sent Release packet if\r
-                                need release or has been stopped if needn¡¯t, when\r
+                                need release or has been stopped if needn't, when\r
                                 EFI_DHCP6_CONFIG_DATA.IaInfoEvent is not NULL.\r
   @retval EFI_INVALID_PARAMETER This is NULL.\r
 \r