TianoCore EDK2 master
Loading...
Searching...
No Matches
Tcp6.h
Go to the documentation of this file.
1
15#ifndef __EFI_TCP6_PROTOCOL_H__
16#define __EFI_TCP6_PROTOCOL_H__
17
19#include <Protocol/Ip6.h>
20
21#define EFI_TCP6_SERVICE_BINDING_PROTOCOL_GUID \
22 { \
23 0xec20eb79, 0x6c1a, 0x4664, {0x9a, 0x0d, 0xd2, 0xe4, 0xcc, 0x16, 0xd6, 0x64 } \
24 }
25
26#define EFI_TCP6_PROTOCOL_GUID \
27 { \
28 0x46e44855, 0xbd60, 0x4ab7, {0xab, 0x0d, 0xa6, 0x79, 0xb9, 0x44, 0x7d, 0x77 } \
29 }
30
32
37typedef struct {
52 UINT16 LocalPort;
62 UINT16 RemotePort;
64
69typedef struct {
71 UINT32 ServiceCount;
74
78typedef struct {
119 BOOLEAN ActiveFlag;
121
125typedef struct {
192 BOOLEAN EnableNagle;
216
220typedef struct {
228 UINT8 HopLimit;
239
243typedef enum {
244 Tcp6StateClosed = 0,
245 Tcp6StateListen = 1,
246 Tcp6StateSynSent = 2,
247 Tcp6StateSynReceived = 3,
248 Tcp6StateEstablished = 4,
249 Tcp6StateFinWait1 = 5,
250 Tcp6StateFinWait2 = 6,
251 Tcp6StateClosing = 7,
252 Tcp6StateTimeWait = 8,
253 Tcp6StateCloseWait = 9,
254 Tcp6StateLastAck = 10
256
261typedef struct {
272
278typedef struct {
308
313typedef struct {
326 EFI_HANDLE NewChildHandle;
328
334typedef struct {
338
345typedef struct {
350 BOOLEAN UrgentFlag;
365 EFI_TCP6_FRAGMENT_DATA FragmentTable[1];
367
373typedef struct {
380 BOOLEAN Push;
385 BOOLEAN Urgent;
397 EFI_TCP6_FRAGMENT_DATA FragmentTable[1];
399
404typedef struct {
435 union {
446 } Packet;
448
453typedef struct {
469
493typedef
495(EFIAPI *EFI_TCP6_GET_MODE_DATA)(
496 IN EFI_TCP6_PROTOCOL *This,
498 OUT EFI_TCP6_CONFIG_DATA *Tcp6ConfigData OPTIONAL,
499 OUT EFI_IP6_MODE_DATA *Ip6ModeData OPTIONAL,
502 );
503
551typedef
553(EFIAPI *EFI_TCP6_CONFIGURE)(
554 IN EFI_TCP6_PROTOCOL *This,
555 IN EFI_TCP6_CONFIG_DATA *Tcp6ConfigData OPTIONAL
556 );
557
588typedef
590(EFIAPI *EFI_TCP6_CONNECT)(
591 IN EFI_TCP6_PROTOCOL *This,
592 IN EFI_TCP6_CONNECTION_TOKEN *ConnectionToken
593 );
594
630typedef
632(EFIAPI *EFI_TCP6_ACCEPT)(
633 IN EFI_TCP6_PROTOCOL *This,
634 IN EFI_TCP6_LISTEN_TOKEN *ListenToken
635 );
636
674typedef
676(EFIAPI *EFI_TCP6_TRANSMIT)(
677 IN EFI_TCP6_PROTOCOL *This,
678 IN EFI_TCP6_IO_TOKEN *Token
679 );
680
727typedef
729(EFIAPI *EFI_TCP6_RECEIVE)(
730 IN EFI_TCP6_PROTOCOL *This,
731 IN EFI_TCP6_IO_TOKEN *Token
732 );
733
761typedef
763(EFIAPI *EFI_TCP6_CLOSE)(
764 IN EFI_TCP6_PROTOCOL *This,
765 IN EFI_TCP6_CLOSE_TOKEN *CloseToken
766 );
767
804typedef
806(EFIAPI *EFI_TCP6_CANCEL)(
807 IN EFI_TCP6_PROTOCOL *This,
809 );
810
828typedef
830(EFIAPI *EFI_TCP6_POLL)(
832 );
833
842 EFI_TCP6_GET_MODE_DATA GetModeData;
843 EFI_TCP6_CONFIGURE Configure;
844 EFI_TCP6_CONNECT Connect;
845 EFI_TCP6_ACCEPT Accept;
846 EFI_TCP6_TRANSMIT Transmit;
847 EFI_TCP6_RECEIVE Receive;
848 EFI_TCP6_CLOSE Close;
849 EFI_TCP6_CANCEL Cancel;
850 EFI_TCP6_POLL Poll;
851};
852
853extern EFI_GUID gEfiTcp6ServiceBindingProtocolGuid;
854extern EFI_GUID gEfiTcp6ProtocolGuid;
855
856#endif
#define OPTIONAL
Definition: Base.h:290
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
EFI_STATUS(EFIAPI * EFI_TCP6_CONFIGURE)(IN EFI_TCP6_PROTOCOL *This, IN EFI_TCP6_CONFIG_DATA *Tcp6ConfigData OPTIONAL)
Definition: Tcp6.h:553
EFI_STATUS(EFIAPI * EFI_TCP6_CANCEL)(IN EFI_TCP6_PROTOCOL *This, IN EFI_TCP6_COMPLETION_TOKEN *Token OPTIONAL)
Definition: Tcp6.h:806
EFI_STATUS(EFIAPI * EFI_TCP6_ACCEPT)(IN EFI_TCP6_PROTOCOL *This, IN EFI_TCP6_LISTEN_TOKEN *ListenToken)
Definition: Tcp6.h:632
EFI_STATUS(EFIAPI * EFI_TCP6_CONNECT)(IN EFI_TCP6_PROTOCOL *This, IN EFI_TCP6_CONNECTION_TOKEN *ConnectionToken)
Definition: Tcp6.h:590
EFI_STATUS(EFIAPI * EFI_TCP6_POLL)(IN EFI_TCP6_PROTOCOL *This)
Definition: Tcp6.h:830
EFI_TCP6_CONNECTION_STATE
Definition: Tcp6.h:243
EFI_STATUS(EFIAPI * EFI_TCP6_TRANSMIT)(IN EFI_TCP6_PROTOCOL *This, IN EFI_TCP6_IO_TOKEN *Token)
Definition: Tcp6.h:676
EFI_STATUS(EFIAPI * EFI_TCP6_GET_MODE_DATA)(IN EFI_TCP6_PROTOCOL *This, OUT EFI_TCP6_CONNECTION_STATE *Tcp6State OPTIONAL, OUT EFI_TCP6_CONFIG_DATA *Tcp6ConfigData OPTIONAL, OUT EFI_IP6_MODE_DATA *Ip6ModeData OPTIONAL, OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL)
Definition: Tcp6.h:495
EFI_STATUS(EFIAPI * EFI_TCP6_CLOSE)(IN EFI_TCP6_PROTOCOL *This, IN EFI_TCP6_CLOSE_TOKEN *CloseToken)
Definition: Tcp6.h:763
EFI_STATUS(EFIAPI * EFI_TCP6_RECEIVE)(IN EFI_TCP6_PROTOCOL *This, IN EFI_TCP6_IO_TOKEN *Token)
Definition: Tcp6.h:729
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
VOID * EFI_EVENT
Definition: UefiBaseType.h:37
VOID * EFI_HANDLE
Definition: UefiBaseType.h:33
UINT16 RemotePort
Definition: Tcp6.h:114
BOOLEAN ActiveFlag
Definition: Tcp6.h:119
EFI_IPv6_ADDRESS RemoteAddress
Definition: Tcp6.h:105
UINT16 StationPort
Definition: Tcp6.h:93
EFI_IPv6_ADDRESS StationAddress
Definition: Tcp6.h:87
EFI_TCP6_COMPLETION_TOKEN CompletionToken
Definition: Tcp6.h:461
BOOLEAN AbortOnClose
Definition: Tcp6.h:467
EFI_STATUS Status
Definition: Tcp6.h:270
EFI_TCP6_ACCESS_POINT AccessPoint
Definition: Tcp6.h:232
UINT8 TrafficClass
Definition: Tcp6.h:224
EFI_TCP6_OPTION * ControlOption
Definition: Tcp6.h:237
EFI_TCP6_COMPLETION_TOKEN CompletionToken
Definition: Tcp6.h:306
VOID * FragmentBuffer
Pointer to the data buffer in the fragment.
Definition: Tcp6.h:336
UINT32 FragmentLength
Length of data buffer in the fragment.
Definition: Tcp6.h:335
EFI_TCP6_RECEIVE_DATA * RxData
Definition: Tcp6.h:440
EFI_TCP6_TRANSMIT_DATA * TxData
Definition: Tcp6.h:445
EFI_TCP6_COMPLETION_TOKEN CompletionToken
Definition: Tcp6.h:434
EFI_TCP6_COMPLETION_TOKEN CompletionToken
Definition: Tcp6.h:325
UINT32 KeepAliveTime
Definition: Tcp6.h:180
UINT32 KeepAliveInterval
Definition: Tcp6.h:187
UINT32 KeepAliveProbes
Definition: Tcp6.h:173
UINT32 SendBufferSize
Definition: Tcp6.h:133
UINT32 DataRetries
Definition: Tcp6.h:150
BOOLEAN EnableWindowScaling
Definition: Tcp6.h:202
UINT32 TimeWaitTimeout
Definition: Tcp6.h:167
UINT32 ReceiveBufferSize
Definition: Tcp6.h:129
UINT32 MaxSynBackLog
Definition: Tcp6.h:138
BOOLEAN EnablePathMtuDiscovery
Definition: Tcp6.h:214
BOOLEAN EnableTimeStamp
Definition: Tcp6.h:197
BOOLEAN EnableSelectiveAck
Definition: Tcp6.h:209
UINT32 FinTimeout
Definition: Tcp6.h:160
UINT32 ConnectionTimeout
Definition: Tcp6.h:144
BOOLEAN EnableNagle
Definition: Tcp6.h:192
UINT32 FragmentCount
Definition: Tcp6.h:361
UINT32 DataLength
Definition: Tcp6.h:357
BOOLEAN UrgentFlag
Definition: Tcp6.h:350
UINT16 RemotePort
Definition: Tcp6.h:62
UINT16 LocalPort
Definition: Tcp6.h:52
EFI_HANDLE InstanceHandle
Definition: Tcp6.h:42
EFI_IPv6_ADDRESS LocalAddress
Definition: Tcp6.h:48
EFI_IPv6_ADDRESS RemoteAddress
Definition: Tcp6.h:57
UINT32 FragmentCount
Definition: Tcp6.h:393
UINT32 ServiceCount
The number of address/port pairs following this data structure.
Definition: Tcp6.h:71
EFI_HANDLE DriverHandle
The handle of the driver that creates this entry.
Definition: Tcp6.h:70
Definition: Base.h:213