]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Func.h
Update to support to produce Component Name and & Component Name 2 protocol based...
[mirror_edk2.git] / MdeModulePkg / Universal / Network / Tcp4Dxe / Tcp4Func.h
index 6441c13c643e792cd2374375a09ca0225126440c..5bfdf2612df3a5db5206060cad01e8429395b9d1 100644 (file)
-/** @file
-
-Copyright (c) 2005 - 2006, 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.
-
-Module Name:
-
-  Tcp4Func.h
-
-Abstract:
-
-
-**/
-
-#ifndef _TCP4_FUNC_H_
-#define _TCP4_FUNC_H_
-
-//
-// Declaration of all the functions in TCP
-// protocol. It is intended to keep tcp.h
-// clear.
-//
-
-//
-// Functions in tcp.c
-//
-BOOLEAN
-TcpFindTcbByPeer (
-  IN EFI_IPv4_ADDRESS  *Addr,
-  IN TCP_PORTNO        Port
-  );
-
-TCP_CB  *
-TcpLocateTcb (
-  IN TCP_PORTNO  LocalPort,
-  IN UINT32      LocalIp,
-  IN TCP_PORTNO  RemotePort,
-  IN UINT32      RemoteIp,
-  IN BOOLEAN     Syn
-  );
-
-INTN
-TcpInsertTcb (
-  IN TCP_CB *Tcb
-  );
-
-TCP_CB  *
-TcpCloneTcb (
-  IN TCP_CB *Tcb
-  );
-
-TCP_SEQNO
-TcpGetIss (
-  VOID
-  );
-
-VOID
-TcpInitTcbLocal (
-  IN TCP_CB *Tcb
-  );
-
-VOID
-TcpInitTcbPeer (
-  IN TCP_CB     *Tcb,
-  IN TCP_SEG    *Seg,
-  IN TCP_OPTION *Opt
-  );
-
-UINT16
-TcpGetRcvMss (
-  IN SOCKET *Sock
-  );
-
-VOID
-TcpSetState (
-  IN TCP_CB *Tcb,
-  IN UINT8  State
-  );
-
-//
-// Functions in Tcp4Output.c
-//
-INTN
-TcpSendIpPacket (
-  IN TCP_CB  *Tcb,
-  IN NET_BUF *Nbuf,
-  IN UINT32  Src,
-  IN UINT32  Dst
-  );
-
-INTN
-TcpToSendData (
-  IN TCP_CB *Tcb,
-  IN INTN    Force
-  );
-
-VOID
-TcpToSendAck (
-  IN TCP_CB *Tcb
-  );
-
-VOID
-TcpSendAck (
-  IN TCP_CB *Tcb
-  );
-
-INTN
-TcpSendZeroProbe (
-  IN TCP_CB *Tcb
-  );
-
-INTN
-TcpDeliverData (
-  IN TCP_CB *Tcb
-  );
-
-INTN
-TcpSendReset (
-  IN TCP_CB   *Tcb,
-  IN TCP_HEAD *Head,
-  IN INT32    Len,
-  IN UINT32   Local,
-  IN UINT32   Remote
-  );
-
-UINT32
-TcpRcvWinOld (
-  IN TCP_CB *Tcb
-  );
-
-UINT32
-TcpRcvWinNow (
-  IN TCP_CB *Tcb
-  );
-
-INTN
-TcpRetransmit (
-  IN TCP_CB    *Tcb,
-  IN TCP_SEQNO Seq
-  );
-
-UINT32
-TcpDataToSend (
-  IN TCP_CB *Tcb,
-  IN INTN   Force
-  );
-
-INTN
-TcpVerifySegment (
-  IN NET_BUF *Nbuf
-  );
-
-INTN
-TcpCheckSndQue (
-  IN NET_LIST_ENTRY *Head
-  );
-
-NET_BUF *
-TcpGetSegmentSndQue (
-  IN TCP_CB    *Tcb,
-  IN TCP_SEQNO Seq,
-  IN UINT32    Len
-  );
-
-NET_BUF *
-TcpGetSegmentSock (
-  IN TCP_CB    *Tcb,
-  IN TCP_SEQNO Seq,
-  IN UINT32    Len
-  );
-
-NET_BUF *
-TcpGetSegment (
-  IN TCP_CB    *Tcb,
-  IN TCP_SEQNO Seq,
-  IN UINT32    Len
-  );
-
-TCP_SEQNO
-TcpGetMaxSndNxt (
-  IN TCP_CB *Tcb
-  );
-
-//
-// Functions from Tcp4Input.c
-//
-VOID
-TcpIcmpInput (
-  IN NET_BUF     *Nbuf,
-  IN ICMP_ERROR  IcmpErr,
-  IN UINT32      Src,
-  IN UINT32      Dst
-  );
-
-INTN
-TcpInput (
-  IN NET_BUF *Nbuf,
-  IN UINT32  Src,
-  IN UINT32  Dst
-  );
-
-INTN
-TcpSeqAcceptable (
-  IN TCP_CB  *Tcb,
-  IN TCP_SEG *Seg
-  );
-
-VOID
-TcpFastRecover (
-  IN TCP_CB  *Tcb,
-  IN TCP_SEG *Seg
-  );
-
-VOID
-TcpFastLossRecover (
-  IN TCP_CB  *Tcb,
-  IN TCP_SEG *Seg
-  );
-
-VOID
-TcpComputeRtt (
-  IN TCP_CB *Tcb,
-  IN UINT32 Measure
-  );
-
-INTN
-TcpTrimInWnd (
-  IN TCP_CB  *Tcb,
-  IN NET_BUF *Buf
-  );
-
-VOID
-TcpQueueData (
-  IN TCP_CB  *Tcb,
-  IN NET_BUF *Nbuf
-  );
-
-VOID
-TcpAdjustSndQue (
-  IN TCP_CB    *Tcb,
-  IN TCP_SEQNO Ack
-  );
-
-//
-// Functions from Tcp4Misc.c
-//
-UINT16
-TcpChecksum (
-  IN NET_BUF *Buf,
-  IN UINT16  HeadChecksum
-  );
-
-TCP_SEG *
-TcpFormatNetbuf (
-  IN TCP_CB  *Tcb,
-  IN NET_BUF *Nbuf
-  );
-
-VOID
-TcpOnAppConnect (
-  IN TCP_CB  *Tcb
-  );
-
-INTN
-TcpOnAppConsume (
-  IN TCP_CB *Tcb
-  );
-
-VOID
-TcpOnAppClose (
-  IN TCP_CB *Tcb
-  );
-
-INTN
-TcpOnAppSend (
-  IN TCP_CB *Tcb
-  );
-
-VOID
-TcpOnAppAbort (
-  IN TCP_CB *Tcb
-  );
-
-VOID
-TcpResetConnection (
-  IN TCP_CB *Tcb
-  );
-
-//
-// Functions in Tcp4Timer.c
-//
-VOID
-TcpClose (
-  IN TCP_CB *Tcb
-  );
-
-VOID
-EFIAPI
-TcpTicking (
-  IN EFI_EVENT Event,
-  IN VOID      *Context
-  );
-
-VOID
-TcpSetTimer (
-  IN TCP_CB *Tcb,
-  IN UINT16 Timer,
-  IN UINT32 TimeOut
-  );
-
-VOID
-TcpClearTimer (
-  IN TCP_CB *Tcb,
-  IN UINT16 Timer
-  );
-
-VOID
-TcpClearAllTimer (
-  IN TCP_CB *Tcb
-  );
-
-VOID
-TcpSetProbeTimer (
-  IN TCP_CB *Tcb
-  );
-
-VOID
-TcpSetKeepaliveTimer (
-  IN TCP_CB *Tcb
-  );
-
-VOID
-TcpBackoffRto (
-  IN TCP_CB *Tcb
-  );
-
-EFI_STATUS
-TcpSetVariableData (
-  IN TCP4_SERVICE_DATA  *Tcp4Service
-  );
-
-VOID
-TcpClearVariableData (
-  IN TCP4_SERVICE_DATA  *Tcp4Service
-  );
-
-#endif
+/** @file\r
+\r
+Copyright (c) 2005 - 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
+\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
+Module Name:\r
+\r
+  Tcp4Func.h\r
+\r
+Abstract:\r
+\r
+\r
+**/\r
+\r
+#ifndef _TCP4_FUNC_H_\r
+#define _TCP4_FUNC_H_\r
+\r
+//\r
+// Declaration of all the functions in TCP\r
+// protocol. It is intended to keep tcp.h\r
+// clear.\r
+//\r
+\r
+//\r
+// Functions in tcp.c\r
+//\r
+BOOLEAN\r
+TcpFindTcbByPeer (\r
+  IN EFI_IPv4_ADDRESS  *Addr,\r
+  IN TCP_PORTNO        Port\r
+  );\r
+\r
+TCP_CB  *\r
+TcpLocateTcb (\r
+  IN TCP_PORTNO  LocalPort,\r
+  IN UINT32      LocalIp,\r
+  IN TCP_PORTNO  RemotePort,\r
+  IN UINT32      RemoteIp,\r
+  IN BOOLEAN     Syn\r
+  );\r
+\r
+INTN\r
+TcpInsertTcb (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+TCP_CB  *\r
+TcpCloneTcb (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+TCP_SEQNO\r
+TcpGetIss (\r
+  VOID\r
+  );\r
+\r
+VOID\r
+TcpInitTcbLocal (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+VOID\r
+TcpInitTcbPeer (\r
+  IN TCP_CB     *Tcb,\r
+  IN TCP_SEG    *Seg,\r
+  IN TCP_OPTION *Opt\r
+  );\r
+\r
+UINT16\r
+TcpGetRcvMss (\r
+  IN SOCKET *Sock\r
+  );\r
+\r
+VOID\r
+TcpSetState (\r
+  IN TCP_CB *Tcb,\r
+  IN UINT8  State\r
+  );\r
+\r
+//\r
+// Functions in Tcp4Output.c\r
+//\r
+INTN\r
+TcpSendIpPacket (\r
+  IN TCP_CB  *Tcb,\r
+  IN NET_BUF *Nbuf,\r
+  IN UINT32  Src,\r
+  IN UINT32  Dst\r
+  );\r
+\r
+INTN\r
+TcpToSendData (\r
+  IN TCP_CB *Tcb,\r
+  IN INTN    Force\r
+  );\r
+\r
+VOID\r
+TcpToSendAck (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+VOID\r
+TcpSendAck (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+INTN\r
+TcpSendZeroProbe (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+INTN\r
+TcpDeliverData (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+INTN\r
+TcpSendReset (\r
+  IN TCP_CB   *Tcb,\r
+  IN TCP_HEAD *Head,\r
+  IN INT32    Len,\r
+  IN UINT32   Local,\r
+  IN UINT32   Remote\r
+  );\r
+\r
+UINT32\r
+TcpRcvWinOld (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+UINT32\r
+TcpRcvWinNow (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+INTN\r
+TcpRetransmit (\r
+  IN TCP_CB    *Tcb,\r
+  IN TCP_SEQNO Seq\r
+  );\r
+\r
+UINT32\r
+TcpDataToSend (\r
+  IN TCP_CB *Tcb,\r
+  IN INTN   Force\r
+  );\r
+\r
+INTN\r
+TcpVerifySegment (\r
+  IN NET_BUF *Nbuf\r
+  );\r
+\r
+INTN\r
+TcpCheckSndQue (\r
+  IN NET_LIST_ENTRY *Head\r
+  );\r
+\r
+NET_BUF *\r
+TcpGetSegmentSndQue (\r
+  IN TCP_CB    *Tcb,\r
+  IN TCP_SEQNO Seq,\r
+  IN UINT32    Len\r
+  );\r
+\r
+NET_BUF *\r
+TcpGetSegmentSock (\r
+  IN TCP_CB    *Tcb,\r
+  IN TCP_SEQNO Seq,\r
+  IN UINT32    Len\r
+  );\r
+\r
+NET_BUF *\r
+TcpGetSegment (\r
+  IN TCP_CB    *Tcb,\r
+  IN TCP_SEQNO Seq,\r
+  IN UINT32    Len\r
+  );\r
+\r
+TCP_SEQNO\r
+TcpGetMaxSndNxt (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+//\r
+// Functions from Tcp4Input.c\r
+//\r
+VOID\r
+TcpIcmpInput (\r
+  IN NET_BUF     *Nbuf,\r
+  IN ICMP_ERROR  IcmpErr,\r
+  IN UINT32      Src,\r
+  IN UINT32      Dst\r
+  );\r
+\r
+INTN\r
+TcpInput (\r
+  IN NET_BUF *Nbuf,\r
+  IN UINT32  Src,\r
+  IN UINT32  Dst\r
+  );\r
+\r
+INTN\r
+TcpSeqAcceptable (\r
+  IN TCP_CB  *Tcb,\r
+  IN TCP_SEG *Seg\r
+  );\r
+\r
+VOID\r
+TcpFastRecover (\r
+  IN TCP_CB  *Tcb,\r
+  IN TCP_SEG *Seg\r
+  );\r
+\r
+VOID\r
+TcpFastLossRecover (\r
+  IN TCP_CB  *Tcb,\r
+  IN TCP_SEG *Seg\r
+  );\r
+\r
+VOID\r
+TcpComputeRtt (\r
+  IN TCP_CB *Tcb,\r
+  IN UINT32 Measure\r
+  );\r
+\r
+INTN\r
+TcpTrimInWnd (\r
+  IN TCP_CB  *Tcb,\r
+  IN NET_BUF *Buf\r
+  );\r
+\r
+VOID\r
+TcpQueueData (\r
+  IN TCP_CB  *Tcb,\r
+  IN NET_BUF *Nbuf\r
+  );\r
+\r
+VOID\r
+TcpAdjustSndQue (\r
+  IN TCP_CB    *Tcb,\r
+  IN TCP_SEQNO Ack\r
+  );\r
+\r
+//\r
+// Functions from Tcp4Misc.c\r
+//\r
+UINT16\r
+TcpChecksum (\r
+  IN NET_BUF *Buf,\r
+  IN UINT16  HeadChecksum\r
+  );\r
+\r
+TCP_SEG *\r
+TcpFormatNetbuf (\r
+  IN TCP_CB  *Tcb,\r
+  IN NET_BUF *Nbuf\r
+  );\r
+\r
+VOID\r
+TcpOnAppConnect (\r
+  IN TCP_CB  *Tcb\r
+  );\r
+\r
+INTN\r
+TcpOnAppConsume (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+VOID\r
+TcpOnAppClose (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+INTN\r
+TcpOnAppSend (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+VOID\r
+TcpOnAppAbort (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+VOID\r
+TcpResetConnection (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+//\r
+// Functions in Tcp4Timer.c\r
+//\r
+VOID\r
+TcpClose (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+VOID\r
+EFIAPI\r
+TcpTicking (\r
+  IN EFI_EVENT Event,\r
+  IN VOID      *Context\r
+  );\r
+\r
+VOID\r
+TcpSetTimer (\r
+  IN TCP_CB *Tcb,\r
+  IN UINT16 Timer,\r
+  IN UINT32 TimeOut\r
+  );\r
+\r
+VOID\r
+TcpClearTimer (\r
+  IN TCP_CB *Tcb,\r
+  IN UINT16 Timer\r
+  );\r
+\r
+VOID\r
+TcpClearAllTimer (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+VOID\r
+TcpSetProbeTimer (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+VOID\r
+TcpSetKeepaliveTimer (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+VOID\r
+TcpBackoffRto (\r
+  IN TCP_CB *Tcb\r
+  );\r
+\r
+EFI_STATUS\r
+TcpSetVariableData (\r
+  IN TCP4_SERVICE_DATA  *Tcp4Service\r
+  );\r
+\r
+VOID\r
+TcpClearVariableData (\r
+  IN TCP4_SERVICE_DATA  *Tcp4Service\r
+  );\r
+\r
+EFI_STATUS\r
+TcpInstallDevicePath (\r
+  IN SOCKET  *Sock\r
+  );\r
+\r
+#endif\r