14 #ifndef __EFI_UDP6_PROTOCOL_H__ 15 #define __EFI_UDP6_PROTOCOL_H__ 21 #define EFI_UDP6_SERVICE_BINDING_PROTOCOL_GUID \ 23 0x66ed4721, 0x3c98, 0x4d3e, {0x81, 0xe3, 0xd0, 0x3d, 0xd3, 0x9a, 0x72, 0x54 } \ 26 #define EFI_UDP6_PROTOCOL_GUID \ 28 0x4f948815, 0xb4b9, 0x43cb, {0x8a, 0x33, 0x90, 0xe0, 0x60, 0xb3, 0x49, 0x55 } \ EFI_STATUS(EFIAPI * EFI_UDP6_CANCEL)(IN EFI_UDP6_PROTOCOL *This, IN EFI_UDP6_COMPLETION_TOKEN *Token OPTIONAL)
Aborts an asynchronous transmit or receive request.
#define OPTIONAL
Passing the datum to the function is optional, and a NULL is passed if the value is not supplied.
EFI_EVENT Event
This Event will be signaled after the Status field is updated by the EFI UDPv6 Protocol driver.
EFI_UDP6_GET_MODE_DATA GetModeData
EFI_UDP6_SERVICE_POINT is deprecated in the UEFI 2.4B and should not be used any more.
The EFI UDPv6 Protocol client must fill this data structure before sending a packet.
128 bit buffer containing a unique identifier value.
EFI_TIME TimeStamp
Time when the EFI UDPv6 Protocol accepted the packet.
FILE_LICENCE(BSD2_PATENT)
The EFI_UDP6_COMPLETION_TOKEN structures are used for both transmit and receive operations.
UINT32 ReceiveTimeout
The receive timeout value (number of microseconds) to be associated with each incoming packet.
VOID * EFI_EVENT
Handle to an event structure.
UINT8 TrafficClass
TrafficClass field in transmitted IPv6 packets.
UINT16 SourcePort
Port from which this packet is sent.
EFI_IPv6_ADDRESS LocalAddress
The IPv6 address to which this instance of the EFI UDPv6 Protocol is bound.
VOID * FragmentBuffer
Pointer to the fragment data buffer.
EFI_STATUS(EFIAPI * EFI_UDP6_RECEIVE)(IN EFI_UDP6_PROTOCOL *This, IN EFI_UDP6_COMPLETION_TOKEN *Token)
Places an asynchronous receive request into the receiving queue.
UINT16 StationPort
The port number to which this EFI UDPv6 Protocol instance is bound.
EFI_HANDLE InstanceHandle
The EFI UDPv6 Protocol instance handle that is using this address/port pair.
UINT32 FragmentLength
Length of the fragment data buffer.
EFI_IPv6_ADDRESS RemoteAddress
The IP address of remote host to which this EFI UDPv6 Protocol instance is connecting.
EFI_STATUS Status
Will be set to one of the following values:
UINT32 DataLength
The sum of the fragment data length.
EFI_UDP6_RECEIVE_DATA is filled by the EFI UDPv6 Protocol driver when this EFI UDPv6 Protocol instanc...
The EFI_UDP6_SESSION_DATA is used to retrieve the settings when receiving packets or to override the ...
UINT16 RemotePort
The port number of the remote host to which this EFI UDPv6 Protocol instance is connecting.
EFI_UDP6_SESSION_DATA UdpSession
The UDP session data including SourceAddress, SourcePort, DestinationAddress, and DestinationPort.
EFI_UDP6_TRANSMIT_DATA * TxData
When this token is used for transmitting, TxData is a pointer to EFI_UDP6_TRANSMIT_DATA.
EFI_HANDLE DriverHandle
The handle of the driver that creates this entry.
UINT16 LocalPort
The port number in host byte order on which the service is listening.
EFI_UDP6_SESSION_DATA * UdpSessionData
If not NULL, the data that is used to override the transmitting settings.Only the two filed UdpSessio...
EFI_STATUS(EFIAPI * EFI_UDP6_GROUPS)(IN EFI_UDP6_PROTOCOL *This, IN BOOLEAN JoinFlag, IN EFI_IPv6_ADDRESS *MulticastAddress OPTIONAL)
Joins and leaves multicast groups.
This file defines the EFI IPv6 (Internet Protocol version 6) Protocol interface.
EFI_IPv6_ADDRESS SourceAddress
Address from which this packet is sent.
UINT8 HopLimit
HopLimit field in transmitted IPv6 packets.
#define VOID
Undeclared type.
EFI_IPv6_ADDRESS RemoteAddress
The IPv6 address of the remote host.
EFI Time Abstraction: Year: 1900 - 9999 Month: 1 - 12 Day: 1 - 31 Hour: 0 - 23 Minute: 0 - 59 Second:...
UINT32 FragmentCount
Number of fragments.
UINT32 DataLength
Sum of the fragment data length.
UINT16 RemotePort
The port number in host byte order on which the remote host is listening.
EFI_UDP6_CONFIGURE Configure
EFI_STATUS(EFIAPI * EFI_UDP6_CONFIGURE)(IN EFI_UDP6_PROTOCOL *This, IN EFI_UDP6_CONFIG_DATA *UdpConfigData OPTIONAL)
Initializes, changes, or resets the operational parameters for this instance of the EFI UDPv6 Protoco...
UINT32 TransmitTimeout
The transmit timeout value (number of microseconds) to be associated with each outgoing packet.
EFI_STATUS(EFIAPI * EFI_UDP6_POLL)(IN EFI_UDP6_PROTOCOL *This)
Polls for incoming data packets and processes outgoing data packets.
RETURN_STATUS EFI_STATUS
Function return status for EFI API.
BOOLEAN AcceptAnyPort
Set to TRUE to accept UDP packets that are sent to any port.
UINT32 FragmentCount
Number of fragments.
BOOLEAN AllowDuplicatePort
Set to TRUE to allow this EFI UDPv6 Protocol child instance to open a port number that is already bei...
EFI_GUID gEfiUdp6ServiceBindingProtocolGuid
UINT16 DestinationPort
Port to which this packet is sent.
EFI_GUID gEfiUdp6ProtocolGuid
EFI_UDP6_FRAGMENT_DATA allows multiple receive or transmit buffers to be specified.
EFI_STATUS(EFIAPI * EFI_UDP6_TRANSMIT)(IN EFI_UDP6_PROTOCOL *This, IN EFI_UDP6_COMPLETION_TOKEN *Token)
Queues outgoing data packets into the transmit queue.
EFI_UDP6_VARIABLE_DATA is deprecated in the UEFI 2.4B and should not be used any more.
EFI_UDP6_RECEIVE_DATA * RxData
When this token is used for receiving, RxData is a pointer to EFI_UDP6_RECEIVE_DATA.
EFI_EVENT RecycleSignal
Indicates the event to signal when the received data has been processed.
UINT32 ServiceCount
The number of address/port pairs that follow this data structure.
EFI_IPv6_ADDRESS DestinationAddress
Address to which this packet is sent.
EFI_IPv6_ADDRESS StationAddress
The station IP address that will be assigned to this EFI UDPv6 Protocol instance.
EFI_STATUS(EFIAPI * EFI_UDP6_GET_MODE_DATA)(IN EFI_UDP6_PROTOCOL *This, OUT EFI_UDP6_CONFIG_DATA *Udp6ConfigData OPTIONAL, OUT EFI_IP6_MODE_DATA *Ip6ModeData OPTIONAL, OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL)
Read the current operational settings.
The EFI_UDP6_PROTOCOL defines an EFI UDPv6 Protocol session that can be used by any network drivers,...
EFI_UDP6_TRANSMIT Transmit
BOOLEAN AcceptPromiscuous
Set to TRUE to accept UDP packets that are sent to any address.