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
+ 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
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
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
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
Initialize or brutally reset the operational parameters for this EFI TCPv4 instance.\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
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
(EFIAPI *EFI_TCP4_CONNECT)(\r
IN EFI_TCP4_PROTOCOL *This,\r
IN EFI_TCP4_CONNECTION_TOKEN *ConnectionToken\r
- )\r
-;\r
+ );\r
\r
\r
/**\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
(EFIAPI *EFI_TCP4_TRANSMIT)(\r
IN EFI_TCP4_PROTOCOL *This,\r
IN EFI_TCP4_IO_TOKEN *Token\r
- )\r
-;\r
+ );\r
\r
\r
/**\r
(EFIAPI *EFI_TCP4_RECEIVE)(\r
IN EFI_TCP4_PROTOCOL *This,\r
IN EFI_TCP4_IO_TOKEN *Token\r
- )\r
-;\r
+ );\r
\r
/**\r
Disconnecting a TCP connection gracefully or reset a TCP connection. This function is a\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
(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
EFI_STATUS\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