]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/Mtftp6.h
Add some comments.
[mirror_edk2.git] / MdePkg / Include / Protocol / Mtftp6.h
index efb987e860ca96925ce215c02ae8ecfb90be4131..9debfe66d4ec5f11fa90e3f3251d2e0bd938dede 100644 (file)
@@ -3,14 +3,17 @@
   the EFI UDPv6 Protocol and provides basic services for client-side unicast and/or\r
   multicast TFTP operations.\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
@@ -500,11 +503,20 @@ EFI_STATUS
                                  - MtftpConfigData.StationIp is neither zero nor one \r
                                    of the configured IP addresses in the underlying IPv6 driver.\r
                                  - MtftpCofigData.ServerIp is not a valid IPv6 unicast address.\r
-                                 - The StationIP and LocalPort is already in use\r
-  @retval  EFI_ACCESS_DENIED     The configuration could not be changed at this time because there \r
-                                 is some MTFTP background operation in progress.\r
+                                 Note: It does not match UEFI 2.3 Specification.\r
+  @retval  EFI_ACCESS_DENIED     - The configuration could not be changed at this time because there \r
+                                   is some MTFTP background operation in progress.\r
+                                 - MtftpCofigData.LocalPort is already in use.\r
+                                                                Note: It does not match UEFI 2.3 Specification.\r
   @retval  EFI_NO_MAPPING        The underlying IPv6 driver was responsible for choosing a source \r
-                                 address for this instance, but no source address was available for use\r
+                                 address for this instance, but no source address was available for use.\r
+  @retval  EFI_OUT_OF_RESOURCES  The EFI MTFTPv6 Protocol driver instance data could not be \r
+                                 allocated.\r
+                                                                Note: It is not defined in UEFI 2.3 Specification.\r
+  @retval  EFI_DEVICE_ERROR      An unexpected system or network error occurred. The EFI \r
+                                 MTFTPv6 Protocol driver instance is not configured.\r
+                                                                Note: It is not defined in UEFI 2.3 Specification.\r
+\r
 \r
 **/\r
 typedef \r
@@ -535,26 +547,35 @@ EFI_STATUS
   @param[out] Packet             The pointer to the received packet. This buffer must be freed by \r
                                  the caller.\r
 \r
-  @retval  EFI_SUCCESS           An MTFTPv6 OACK packet was received and is in the Buffer.\r
-  @retval  EFI_INVALID_PARAMETER One or more of the following conditions is TRUE:\r
-                                 - This is NULL.\r
-                                 - Filename is NULL\r
-                                 - OptionCount is not zero and OptionList is NULL.\r
-                                 - One or more options in OptionList have wrong format.\r
-                                 - PacketLength is NULL.\r
-                                 - OverrideData.ServerIp is not valid unicast IPv6 addresses.\r
-  @retval  EFI_UNSUPPORTED       One or more options in the OptionList are unsupported by \r
-                                 this implementation.\r
-  @retval  EFI_NOT_STARTED       The EFI MTFTPv6 Protocol driver has not been started.\r
-  @retval  EFI_NO_MAPPING        The underlying IPv6 driver was responsible for choosing a source \r
-                                 address for this instance, but no source address was available for use.\r
-  @retval  EFI_ACCESS_DENIED     The previous operation has not completed yet.\r
-  @retval  EFI_OUT_OF_RESOURCES  Required system resources could not be allocated.\r
-  @retval  EFI_TFTP_ERROR        An MTFTPv6 ERROR packet was received and is in the Packet.\r
-  @retval  EFI_ICMP_ERROR        An ICMP ERROR packet was received and the Packet is set to NULL.\r
-  @retval  EFI_PROTOCOL_ERROR    An unexpected MTFTPv6 packet was received and is in the Packet.\r
-  @retval  EFI_TIMEOUT           No responses were received from the MTFTPv6 server.\r
-  @retval  EFI_DEVICE_ERROR      An unexpected network error or system error occurred.\r
+  @retval  EFI_SUCCESS              An MTFTPv6 OACK packet was received and is in the Packet.\r
+                                    Note: It does not match UEFI 2.3 Specification.\r
+  @retval  EFI_INVALID_PARAMETER    One or more of the following conditions is TRUE:\r
+                                    - This is NULL.\r
+                                    - Filename is NULL\r
+                                    - OptionCount is not zero and OptionList is NULL.\r
+                                    - One or more options in OptionList have wrong format.\r
+                                    - PacketLength is NULL.\r
+                                    - OverrideData.ServerIp is not valid unicast IPv6 addresses.\r
+  @retval  EFI_UNSUPPORTED          One or more options in the OptionList are unsupported by \r
+                                    this implementation.\r
+  @retval  EFI_NOT_STARTED          The EFI MTFTPv6 Protocol driver has not been started.\r
+  @retval  EFI_NO_MAPPING           The underlying IPv6 driver was responsible for choosing a source \r
+                                    address for this instance, but no source address was available for use.\r
+  @retval  EFI_ACCESS_DENIED        The previous operation has not completed yet.\r
+  @retval  EFI_OUT_OF_RESOURCES     Required system resources could not be allocated.\r
+  @retval  EFI_TFTP_ERROR           An MTFTPv6 ERROR packet was received and is in the Packet.\r
+  @retval  EFI_NETWORK_UNREACHABLE  An ICMP network unreachable error packet was received and the Packet is set to NULL.\r
+                                    Note: It is not defined in UEFI 2.3 Specification.\r
+  @retval  EFI_HOST_UNREACHABLE     An ICMP host unreachable error packet was received and the Packet is set to NULL.\r
+                                    Note: It is not defined in UEFI 2.3 Specification.\r
+  @retval  EFI_PROTOCOL_UNREACHABLE An ICMP protocol unreachable error packet was received and the Packet is set to NULL.\r
+                                    Note: It is not defined in UEFI 2.3 Specification.\r
+  @retval  EFI_PORT_UNREACHABLE     An ICMP port unreachable error packet was received and the Packet is set to NULL.\r
+  @retval  EFI_ICMP_ERROR           Some other ICMP ERROR packet was received and the Packet is set to NULL.\r
+                                    Note: It does not match UEFI 2.3 Specification.\r
+  @retval  EFI_PROTOCOL_ERROR       An unexpected MTFTPv6 packet was received and is in the Packet.\r
+  @retval  EFI_TIMEOUT              No responses were received from the MTFTPv6 server.\r
+  @retval  EFI_DEVICE_ERROR         An unexpected network error or system error occurred.\r
 \r
 **/\r
 typedef \r
@@ -629,15 +650,24 @@ EFI_STATUS
   @param[in]  Token              Pointer to the token structure to provide the parameters that are \r
                                  used in this operation.\r
 \r
-  @retval  EFI_SUCCESS           The data file has been transferred successfully.\r
-  @retval  EFI_OUT_OF_RESOURCES  Required system resources could not be allocated.\r
-  @retval  EFI_BUFFER_TOO_SMALL  BufferSize is not large enough to hold the downloaded data \r
-                                 in downloading process.\r
-  @retval  EFI_ABORTED           Current operation is aborted by user.\r
-  @retval  EFI_ICMP_ERROR        An ICMP ERROR packet was received.\r
-  @retval  EFI_TIMEOUT           No responses were received from the MTFTPv6 server.\r
-  @retval  EFI_TFTP_ERROR        An MTFTPv6 ERROR packet was received.\r
-  @retval  EFI_DEVICE_ERROR      An unexpected network error or system error occurred.\r
+  @retval  EFI_SUCCESS              The data file has been transferred successfully.\r
+  @retval  EFI_OUT_OF_RESOURCES     Required system resources could not be allocated.\r
+  @retval  EFI_BUFFER_TOO_SMALL     BufferSize is not zero but not large enough to hold the\r
+                                    downloaded data in downloading process.\r
+                                                                       Note: It does not match UEFI 2.3 Specification.\r
+  @retval  EFI_ABORTED              Current operation is aborted by user.\r
+  @retval  EFI_NETWORK_UNREACHABLE  An ICMP network unreachable error packet was received.\r
+                                    Note: It is not defined in UEFI 2.3 Specification.\r
+  @retval  EFI_HOST_UNREACHABLE     An ICMP host unreachable error packet was received.\r
+                                    Note: It is not defined in UEFI 2.3 Specification.\r
+  @retval  EFI_PROTOCOL_UNREACHABLE An ICMP protocol unreachable error packet was received.\r
+                                    Note: It is not defined in UEFI 2.3 Specification.\r
+  @retval  EFI_PORT_UNREACHABLE     An ICMP port unreachable error packet was received.\r
+                                    Note: It is not defined in UEFI 2.3 Specification.\r
+  @retval  EFI_ICMP_ERROR           An ICMP ERROR packet was received.\r
+  @retval  EFI_TIMEOUT              No responses were received from the MTFTPv6 server.\r
+  @retval  EFI_TFTP_ERROR           An MTFTPv6 ERROR packet was received.\r
+  @retval  EFI_DEVICE_ERROR         An unexpected network error or system error occurred.\r
 \r
 **/\r
 typedef \r