]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/Tcp4.h
update codes per MdePkg doxgen review comments.
[mirror_edk2.git] / MdePkg / Include / Protocol / Tcp4.h
index d5483fcc3d6cbb79abc4d26696603ac9f665fa9b..d750fe9c788ba2ceb0c0dee81664373510613fe9 100644 (file)
@@ -1,17 +1,17 @@
 /** @file\r
   EFI TCPv4 Protocol Definition\r
   The EFI TCPv4 Service Binding Protocol is used to locate EFI TCPv4 Protocol drivers to create\r
-  and destroy child of the driver to communicate with other host using TCP protocol.      \r
-  The EFI TCPv4 Protocol provides services to send and receive data stream.     \r
+  and destroy child of the driver to communicate with other host using TCP protocol.\r
+  The EFI TCPv4 Protocol provides services to send and receive data stream.\r
 \r
-  Copyright (c) 2006, 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
+  Copyright (c) 2006 - 2008, 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
+  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
 **/\r
 \r
@@ -33,7 +33,7 @@
 typedef struct _EFI_TCP4_PROTOCOL EFI_TCP4_PROTOCOL;\r
 \r
 typedef struct {\r
-  EFI_HANDLE        InstanceHandle;\r
+  EFI_HANDLE              InstanceHandle;\r
   EFI_IPv4_ADDRESS        LocalAddress;\r
   UINT16                  LocalPort;\r
   EFI_IPv4_ADDRESS        RemoteAddress;\r
@@ -57,16 +57,16 @@ typedef struct {
 } EFI_TCP4_ACCESS_POINT;\r
 \r
 typedef struct {\r
-  UINT                  ReceiveBufferSize;\r
-  UINT                  SendBufferSize;\r
-  UINT                  MaxSynBackLog;\r
-  UINT                  ConnectionTimeout;\r
-  UINT                  DataRetries;\r
-  UINT                  FinTimeout;\r
-  UINT                  TimeWaitTimeout;\r
-  UINT                  KeepAliveProbes;\r
-  UINT                  KeepAliveTime;\r
-  UINT                  KeepAliveInterval;\r
+  UINT32                  ReceiveBufferSize;\r
+  UINT32                  SendBufferSize;\r
+  UINT32                  MaxSynBackLog;\r
+  UINT32                  ConnectionTimeout;\r
+  UINT32                  DataRetries;\r
+  UINT32                  FinTimeout;\r
+  UINT32                  TimeWaitTimeout;\r
+  UINT32                  KeepAliveProbes;\r
+  UINT32                  KeepAliveTime;\r
+  UINT32                  KeepAliveInterval;\r
   BOOLEAN                 EnableNagle;\r
   BOOLEAN                 EnableTimeStamp;\r
   BOOLEAN                 EnableWindowScaling;\r
@@ -85,13 +85,16 @@ typedef struct {
   // Access Point\r
   //\r
   EFI_TCP4_ACCESS_POINT   AccessPoint;\r
-                          \r
-  //                      \r
-  // TCP Control Options  \r
-  //                      \r
+\r
+  //\r
+  // TCP Control Options\r
+  //\r
   EFI_TCP4_OPTION         *ControlOption;\r
 } EFI_TCP4_CONFIG_DATA;\r
 \r
+///\r
+/// TCP4 connnection state\r
+///\r
 typedef enum {\r
   Tcp4StateClosed         = 0,\r
   Tcp4StateListen         = 1,\r
@@ -121,22 +124,22 @@ typedef struct {
 } EFI_TCP4_LISTEN_TOKEN;\r
 \r
 typedef struct {\r
-  UINTN FragmentLength;\r
-  VOID  *FragmentBuffer;\r
+  UINT32 FragmentLength;\r
+  VOID   *FragmentBuffer;\r
 } EFI_TCP4_FRAGMENT_DATA;\r
 \r
 typedef struct {\r
   BOOLEAN                   UrgentFlag;\r
-  IN OUT UINTN              DataLength;\r
-  UINT                    FragmentCount;\r
+  UINT32                    DataLength;\r
+  UINT32                    FragmentCount;\r
   EFI_TCP4_FRAGMENT_DATA    FragmentTable[1];\r
-} EFI_TCP4_RECEIVE_DATA;    \r
+} EFI_TCP4_RECEIVE_DATA;\r
 \r
-typedef struct {            \r
+typedef struct {\r
   BOOLEAN                   Push;\r
   BOOLEAN                   Urgent;\r
-  UINT                    DataLength;\r
-  UINT                    FragmentCount;\r
+  UINT32                    DataLength;\r
+  UINT32                    FragmentCount;\r
   EFI_TCP4_FRAGMENT_DATA    FragmentTable[1];\r
 } EFI_TCP4_TRANSMIT_DATA;\r
 \r
@@ -178,16 +181,15 @@ typedef struct {
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI *EFI_TCP4_GET_MODE_DATA) (\r
+(EFIAPI *EFI_TCP4_GET_MODE_DATA)(\r
   IN CONST  EFI_TCP4_PROTOCOL                  *This,\r
   OUT       EFI_TCP4_CONNECTION_STATE          *Tcp4State      OPTIONAL,\r
   OUT       EFI_TCP4_CONFIG_DATA               *Tcp4ConfigData OPTIONAL,\r
   OUT       EFI_IP4_MODE_DATA                  *Ip4ModeData    OPTIONAL,\r
   OUT       EFI_MANAGED_NETWORK_CONFIG_DATA    *MnpConfigData  OPTIONAL,\r
   OUT       EFI_SIMPLE_NETWORK_MODE            *SnpModeData    OPTIONAL\r
-  )\r
-;\r
-  \r
+  );\r
+\r
 /**\r
   Initialize or brutally reset the operational parameters for this EFI TCPv4 instance.\r
 \r
@@ -210,12 +212,11 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI *EFI_TCP4_CONFIGURE) (\r
+(EFIAPI *EFI_TCP4_CONFIGURE)(\r
   IN EFI_TCP4_PROTOCOL                   *This,\r
   IN EFI_TCP4_CONFIG_DATA                *TcpConfigData OPTIONAL\r
-  )\r
-;\r
-    \r
+  );\r
+\r
 \r
 /**\r
   Add or delete a route entry to the route table\r
@@ -252,14 +253,13 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI *EFI_TCP4_ROUTES) (\r
+(EFIAPI *EFI_TCP4_ROUTES)(\r
   IN EFI_TCP4_PROTOCOL                   *This,\r
   IN BOOLEAN                             DeleteRoute,\r
   IN EFI_IPv4_ADDRESS                    *SubnetAddress,\r
   IN EFI_IPv4_ADDRESS                    *SubnetMask,\r
   IN EFI_IPv4_ADDRESS                    *GatewayAddress\r
-  )\r
-;  \r
+  );\r
 \r
 /**\r
   Initiate a nonblocking TCP connection request for an active TCP instance.\r
@@ -267,7 +267,7 @@ EFI_STATUS
   @param  This                  Pointer to the EFI_TCP4_PROTOCOL instance.\r
   @param  ConnectionToken       Pointer to the connection token to return when the TCP three\r
                                 way handshake finishes.\r
-                                 \r
+\r
   @retval EFI_SUCCESS           The connection request is successfully initiated and the state\r
                                 - of this TCPv4 instance has been changed to\r
                                 - Tcp4StateSynSent.\r
@@ -285,12 +285,11 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI *EFI_TCP4_CONNECT) (\r
+(EFIAPI *EFI_TCP4_CONNECT)(\r
   IN EFI_TCP4_PROTOCOL                   *This,\r
   IN EFI_TCP4_CONNECTION_TOKEN           *ConnectionToken\r
-  )\r
-;  \r
-  \r
+  );\r
+\r
 \r
 /**\r
   Listen on the passive instance to accept an incoming connection request. This is a nonblocking operation.\r
@@ -315,11 +314,10 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI *EFI_TCP4_ACCEPT) (\r
+(EFIAPI *EFI_TCP4_ACCEPT)(\r
   IN EFI_TCP4_PROTOCOL                   *This,\r
   IN EFI_TCP4_LISTEN_TOKEN               *ListenToken\r
-  )\r
-;    \r
+  );\r
 \r
 /**\r
   Queues outgoing data into the transmit queue.\r
@@ -354,11 +352,10 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI *EFI_TCP4_TRANSMIT) (\r
+(EFIAPI *EFI_TCP4_TRANSMIT)(\r
   IN EFI_TCP4_PROTOCOL                   *This,\r
   IN EFI_TCP4_IO_TOKEN                   *Token\r
-  )\r
-;      \r
+  );\r
 \r
 \r
 /**\r
@@ -398,15 +395,14 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI *EFI_TCP4_RECEIVE) (\r
+(EFIAPI *EFI_TCP4_RECEIVE)(\r
   IN EFI_TCP4_PROTOCOL                   *This,\r
   IN EFI_TCP4_IO_TOKEN                   *Token\r
-  )\r
-;       \r
-   \r
+  );\r
+\r
 /**\r
   Disconnecting a TCP connection gracefully or reset a TCP connection. This function is a\r
-  nonblocking operation.                                                                                                                                                                        \r
+  nonblocking operation.\r
 \r
   @param  This       Pointer to the EFI_TCP4_PROTOCOL instance.\r
   @param  CloseToken Pointer to the close token to return when operation finishes.\r
@@ -429,11 +425,10 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI *EFI_TCP4_CLOSE) (\r
+(EFIAPI *EFI_TCP4_CLOSE)(\r
   IN EFI_TCP4_PROTOCOL                   *This,\r
   IN EFI_TCP4_CLOSE_TOKEN                *CloseToken\r
-  )\r
-;      \r
+  );\r
 \r
 /**\r
   Abort an asynchronous connection, listen, transmission or receive request.\r
@@ -458,11 +453,10 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI *EFI_TCP4_CANCEL) (\r
+(EFIAPI *EFI_TCP4_CANCEL)(\r
   IN EFI_TCP4_PROTOCOL                   *This,\r
   IN EFI_TCP4_COMPLETION_TOKEN           *Token OPTIONAL\r
-  )\r
-;      \r
+  );\r
 \r
 \r
 /**\r
@@ -480,11 +474,17 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI *EFI_TCP4_POLL) (\r
+(EFIAPI *EFI_TCP4_POLL)(\r
   IN EFI_TCP4_PROTOCOL                   *This\r
-  )\r
-;      \r
-\r
+  );\r
+\r
+///\r
+/// The EFI_TCP4_PROTOCOL defines the EFI TCPv4 Protocol child to be used by \r
+/// any network drivers or applications to send or receive data stream. \r
+/// It can either listen on a specified port as a service or actively connected \r
+/// to remote peer as a client. Each instance has its own independent settings, \r
+/// such as the routing table.\r
+///\r
 struct _EFI_TCP4_PROTOCOL {\r
   EFI_TCP4_GET_MODE_DATA                 GetModeData;\r
   EFI_TCP4_CONFIGURE                     Configure;\r