Functions | |
VOID EFIAPI | TcpRxCallback (IN EFI_STATUS Status, IN UINT8 IcmpErr, IN EFI_NET_SESSION_DATA *NetSession, IN NET_BUF *Pkt, IN VOID *Context) |
INTN | TcpSendIpPacket (IN TCP_CB *Tcb, IN NET_BUF *Nbuf, IN EFI_IP_ADDRESS *Src, IN EFI_IP_ADDRESS *Dest, IN UINT8 Version) |
EFI_STATUS | Tcp6RefreshNeighbor (IN TCP_CB *Tcb, IN EFI_IP_ADDRESS *Neighbor, IN UINT32 Timeout) |
Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
EFI_STATUS Tcp6RefreshNeighbor | ( | IN TCP_CB * | Tcb, | |
IN EFI_IP_ADDRESS * | Neighbor, | |||
IN UINT32 | Timeout | |||
) |
Refresh the remote peer's Neighbor Cache State if already exists.
[in] | Tcb | Pointer to the TCP_CB of this TCP instance. |
[in] | Neighbor | Source address of the TCP segment. |
[in] | Timeout | Time in 100-ns units that this entry will remain in the neighbor cache. A value of zero means that the entry is permanent. A value of non-zero means that the entry is dynamic and will be deleted after Timeout. |
EFI_SUCCESS | Successfully updated the neighbor relationship. | |
EFI_NOT_STARTED | The IpIo is not configured. | |
EFI_INVALID_PARAMETER | Any input parameter is invalid. | |
EFI_OUT_OF_RESOURCES | Failed to allocate some resources. | |
EFI_NOT_FOUND | This entry is not in the neighbor table. |
References _TCP_SERVICE_DATA::IpIo, _TCP_SOCKET::ProtoReserved, and _TCP_PROTO_DATA::TcpService.
Referenced by TcpInput().
VOID EFIAPI TcpRxCallback | ( | IN EFI_STATUS | Status, | |
IN UINT8 | IcmpErr, | |||
IN EFI_NET_SESSION_DATA * | NetSession, | |||
IN NET_BUF * | Pkt, | |||
IN VOID * | Context | |||
) |
Packet receive callback function provided to IP_IO, used to call the proper function to handle the packet received by IP.
[in] | Status | Result of the receive request. |
[in] | IcmpErr | Valid when Status is EFI_ICMP_ERROR. |
[in] | NetSession | The IP session for the received packet. |
[in] | Pkt | Packet received. |
[in] | Context | The data provided by the user for the received packet when the callback is registered in IP_IO_OPEN_DATA::RcvdContext. This is an optional parameter that may be NULL. |
References TcpIcmpInput(), and TcpInput().
Referenced by TcpCreateService().
INTN TcpSendIpPacket | ( | IN TCP_CB * | Tcb, | |
IN NET_BUF * | Nbuf, | |||
IN EFI_IP_ADDRESS * | Src, | |||
IN EFI_IP_ADDRESS * | Dest, | |||
IN UINT8 | Version | |||
) |
Send the segment to IP via IpIo function.
[in] | Tcb | Pointer to the TCP_CB of this TCP instance. |
[in] | Nbuf | Pointer to the TCP segment to be sent. |
[in] | Src | Source address of the TCP segment. |
[in] | Dest | Destination address of the TCP segment. |
[in] | Version | IP_VERSION_4 or IP_VERSION_6 |
0 | The segment was sent out successfully. | |
-1 | The segment failed to send. |
References _TCP_SERVICE_DATA::IpIo, _TCP_SOCKET::ProtoReserved, and _TCP_PROTO_DATA::TcpService.
Referenced by TcpResetConnection(), TcpSendReset(), and TcpTransmitSegment().