]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/Dhcp6.h
MdePkg: Add UEFI2.5 USB Function I/O protocol definitions
[mirror_edk2.git] / MdePkg / Include / Protocol / Dhcp6.h
index 371579b265b20b4c7d071c726d195646615f99cf..42c70632be37e17a838a19fdb14dda3080550f96 100644 (file)
@@ -2,8 +2,8 @@
   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
+  Copyright (c) 2008 - 2010, Intel Corporation. All rights reserved.<BR>\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
@@ -144,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
@@ -170,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
@@ -307,7 +321,7 @@ typedef struct {
 **/\r
 typedef \r
 EFI_STATUS \r
-(*EFI_DHCP6_CALLBACK)(\r
+(EFIAPI *EFI_DHCP6_CALLBACK)(\r
   IN EFI_DHCP6_PROTOCOL        *This,\r
   IN VOID                      *Context,\r
   IN EFI_DHCP6_STATE           CurrentState,\r
@@ -386,7 +400,7 @@ typedef struct {
 **/\r
 typedef\r
 EFI_STATUS\r
-(*EFI_DHCP6_INFO_CALLBACK)(\r
+(EFIAPI *EFI_DHCP6_INFO_CALLBACK)(\r
   IN EFI_DHCP6_PROTOCOL        *This,\r
   IN VOID                      *Context,\r
   IN EFI_DHCP6_PACKET          *Packet\r
@@ -490,6 +504,7 @@ EFI_STATUS
   @retval EFI_NO_MAPPING        No IPv6 address has been bound to the configured IA after the \r
                                 DHCPv6 S.A.R.R process.\r
   @retval EFI_ABORTED           The DHCPv6 S.A.R.R process aborted by user.\r
+  @retval EFI_NO_MEDIA          There was a media error.\r
 \r
 **/\r
 typedef \r