3 Copyright (c) 2004, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
18 EFI Transmission Control Protocol
31 #include <Protocol/PxeBaseCode.h>
34 // PXE Base Code protocol
37 #define EFI_TCP_PROTOCOL_GUID \
38 { 0x02b3d5f2, 0xac28, 0x11d3, { 0x9a, 0x2d, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d }}
41 typedef UINT16 EFI_PXE_BASE_CODE_TCP_PORT
;
44 // Port Receive Filter definitions
46 #define EFI_PXE_BASE_CODE_MAX_PORTCNT 8
51 EFI_IP_ADDRESS IpList
[EFI_PXE_BASE_CODE_MAX_PORTCNT
];
52 } EFI_TCP_PORT_FILTER
;
56 (EFIAPI
*EFI_TCP_WRITE
) (
57 IN EFI_PXE_BASE_CODE_PROTOCOL
*This
,
59 IN UINT16
*UrgentPointer
,
60 IN UINT32
*SequenceNumber
,
62 IN UINT16
*HlenResCode
,
64 IN EFI_IP_ADDRESS
*DestIp
,
66 IN EFI_IP_ADDRESS
*GatewayIp
, OPTIONAL
67 IN EFI_IP_ADDRESS
*SrcIp
, OPTIONAL
68 IN UINT16
*SrcPort
, OPTIONAL
69 IN UINTN
*HeaderSize
, OPTIONAL
70 IN VOID
*HeaderPtr
, OPTIONAL
77 (EFIAPI
*EFI_TCP_READ
) (
78 IN EFI_PXE_BASE_CODE_PROTOCOL
*This
,
80 IN OUT EFI_IP_ADDRESS
*DestIp
, OPTIONAL
81 IN OUT UINT16
*DestPort
, OPTIONAL
82 IN OUT EFI_IP_ADDRESS
*SrcIp
, OPTIONAL
83 IN OUT UINT16
*SrcPort
, OPTIONAL
84 IN UINTN
*HeaderSize
, OPTIONAL
85 IN VOID
*HeaderPtr
, OPTIONAL
86 IN OUT UINTN
*BufferSize
,
92 (EFIAPI
*EFI_TCP_SET_PORT_FILTER
) (
93 IN EFI_PXE_BASE_CODE_PROTOCOL
*This
,
94 IN EFI_TCP_PORT_FILTER
*NewFilter
98 // TCP Protocol structure
100 typedef struct _EFI_TCP_PROTOCOL
{
101 EFI_TCP_WRITE TcpWrite
;
102 EFI_TCP_READ TcpRead
;
103 EFI_TCP_SET_PORT_FILTER SetPortFilter
;
106 extern EFI_GUID gEfiTcpProtocolGuid
;
108 #endif /* _EFITCP_H */