Defines | |
#define | ICMP_DEST_UNREACHABLE 3 |
#define | ICMP_SOURCE_QUENCH 4 |
#define | ICMP_REDIRECT 5 |
#define | ICMP_ECHO_REQUEST 8 |
#define | ICMP_TIME_EXCEEDED 11 |
#define | ICMP_PARAMETER_PROBLEM 12 |
Functions | |
EFI_STATUS | PxeBcFlushStationIp (PXEBC_PRIVATE_DATA *Private, EFI_IP_ADDRESS *StationIp, EFI_IP_ADDRESS *SubnetMask) |
VOID EFIAPI | PxeBcCommonNotify (IN EFI_EVENT Event, IN VOID *Context) |
BOOLEAN | PxeBcCheckArpCache (IN EFI_PXE_BASE_CODE_MODE *Mode, IN EFI_IPv4_ADDRESS *Ip4Addr, OUT EFI_MAC_ADDRESS *MacAddress) |
VOID EFIAPI | PxeBcArpCacheUpdate (IN EFI_EVENT Event, IN VOID *Context) |
VOID EFIAPI | PxeBcIcmpErrorUpdate (IN EFI_EVENT Event, IN VOID *Context) |
VOID EFIAPI | PxeBcIcmp6ErrorUpdate (IN EFI_EVENT Event, IN VOID *Context) |
EFI_STATUS | PxeBcConfigUdp4Write (IN EFI_UDP4_PROTOCOL *Udp4, IN EFI_IPv4_ADDRESS *StationIp, IN EFI_IPv4_ADDRESS *SubnetMask, IN EFI_IPv4_ADDRESS *Gateway, IN OUT UINT16 *SrcPort, IN BOOLEAN DoNotFragment) |
EFI_STATUS | PxeBcConfigUdp6Write (IN EFI_UDP6_PROTOCOL *Udp6, IN EFI_IPv6_ADDRESS *StationIp, IN OUT UINT16 *SrcPort) |
EFI_STATUS | PxeBcUdp4Write (IN EFI_UDP4_PROTOCOL *Udp4, IN EFI_UDP4_SESSION_DATA *Session, IN EFI_EVENT TimeoutEvent, IN EFI_IPv4_ADDRESS *Gateway, IN UINTN *HeaderSize, IN VOID *HeaderPtr, IN UINTN *BufferSize, IN VOID *BufferPtr) |
EFI_STATUS | PxeBcUdp6Write (IN EFI_UDP6_PROTOCOL *Udp6, IN EFI_UDP6_SESSION_DATA *Session, IN EFI_EVENT TimeoutEvent, IN UINTN *HeaderSize, IN VOID *HeaderPtr, IN UINTN *BufferSize, IN VOID *BufferPtr) |
BOOLEAN | PxeBcCheckByIpFilter (IN EFI_PXE_BASE_CODE_MODE *Mode, IN VOID *Session, IN UINT16 OpFlags) |
BOOLEAN | PxeBcCheckByDestIp (IN EFI_PXE_BASE_CODE_MODE *Mode, IN VOID *Session, IN OUT EFI_IP_ADDRESS *DestIp, IN UINT16 OpFlags) |
BOOLEAN | PxeBcCheckByDestPort (IN EFI_PXE_BASE_CODE_MODE *Mode, IN VOID *Session, IN OUT UINT16 *DestPort, IN UINT16 OpFlags) |
BOOLEAN | PxeBcFilterBySrcIp (IN EFI_PXE_BASE_CODE_MODE *Mode, IN VOID *Session, IN OUT EFI_IP_ADDRESS *SrcIp, IN UINT16 OpFlags) |
BOOLEAN | PxeBcFilterBySrcPort (IN EFI_PXE_BASE_CODE_MODE *Mode, IN VOID *Session, IN OUT UINT16 *SrcPort, IN UINT16 OpFlags) |
EFI_STATUS | PxeBcUdp4Read (IN EFI_UDP4_PROTOCOL *Udp4, IN EFI_UDP4_COMPLETION_TOKEN *Token, IN EFI_PXE_BASE_CODE_MODE *Mode, IN EFI_EVENT TimeoutEvent, IN UINT16 OpFlags, IN BOOLEAN *IsDone, OUT BOOLEAN *IsMatched, IN OUT EFI_IP_ADDRESS *DestIp, IN OUT EFI_PXE_BASE_CODE_UDP_PORT *DestPort, IN OUT EFI_IP_ADDRESS *SrcIp, IN OUT EFI_PXE_BASE_CODE_UDP_PORT *SrcPort) |
EFI_STATUS | PxeBcUdp6Read (IN EFI_UDP6_PROTOCOL *Udp6, IN EFI_UDP6_COMPLETION_TOKEN *Token, IN EFI_PXE_BASE_CODE_MODE *Mode, IN EFI_EVENT TimeoutEvent, IN UINT16 OpFlags, IN BOOLEAN *IsDone, OUT BOOLEAN *IsMatched, IN OUT EFI_IP_ADDRESS *DestIp, IN OUT EFI_PXE_BASE_CODE_UDP_PORT *DestPort, IN OUT EFI_IP_ADDRESS *SrcIp, IN OUT EFI_PXE_BASE_CODE_UDP_PORT *SrcPort) |
VOID | PxeBcShowIp4Addr (IN EFI_IPv4_ADDRESS *Ip) |
VOID | PxeBcShowIp6Addr (IN EFI_IPv6_ADDRESS *Ip) |
VOID | PxeBcUintnToAscDecWithFormat (IN UINTN Number, IN UINT8 *Buffer, IN INTN Length) |
UINTN | PxeBcUintnToAscDec (IN UINTN Number, IN UINT8 *Buffer, IN UINTN BufferSize) |
EFI_STATUS | PxeBcUniHexToUint8 (OUT UINT8 *Digit, IN CHAR16 Char) |
VOID | CalcElapsedTime (IN PXEBC_PRIVATE_DATA *Private) |
EFI_HANDLE | PxeBcGetNicByIp4Children (IN EFI_HANDLE ControllerHandle) |
EFI_HANDLE | PxeBcGetNicByIp6Children (IN EFI_HANDLE ControllerHandle) |
Copyright (c) 2007 - 2014, 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.
#define ICMP_DEST_UNREACHABLE 3 |
Referenced by PxeBcIcmpErrorDpcHandle().
#define ICMP_ECHO_REQUEST 8 |
#define ICMP_PARAMETER_PROBLEM 12 |
Referenced by PxeBcIcmpErrorDpcHandle().
#define ICMP_REDIRECT 5 |
Referenced by PxeBcIcmpErrorDpcHandle().
#define ICMP_SOURCE_QUENCH 4 |
Referenced by PxeBcIcmpErrorDpcHandle().
#define ICMP_TIME_EXCEEDED 11 |
Referenced by PxeBcIcmpErrorDpcHandle().
VOID CalcElapsedTime | ( | IN PXEBC_PRIVATE_DATA * | Private | ) |
Calculate the elapsed time.
[in] | Private | The pointer to PXE private data |
Referenced by PxeBcDhcp6CallBack(), and PxeBcRequestBootService().
VOID EFIAPI PxeBcArpCacheUpdate | ( | IN EFI_EVENT | Event, | |
IN VOID * | Context | |||
) |
Update arp cache periodically.
Event | Pointer to EFI_PXE_BC_PROTOCOL. | |
Context | Context of the timer event. |
Event | The pointer to EFI_PXE_BC_PROTOCOL. | |
Context | Context of the timer event. |
References _PXEBC_PRIVATE_DATA::Arp, and _PXEBC_PRIVATE_DATA::PxeBc.
Referenced by EfiPxeBcArp(), and EfiPxeBcStart().
BOOLEAN PxeBcCheckArpCache | ( | IN EFI_PXE_BASE_CODE_MODE * | Mode, | |
IN EFI_IPv4_ADDRESS * | Ip4Addr, | |||
OUT EFI_MAC_ADDRESS * | MacAddress | |||
) |
Perform arp resolution from the arp cache in PxeBcMode.
Mode | Pointer to EFI_PXE_BASE_CODE_MODE. | |
Ip4Addr | The Ip4 address for resolution. | |
MacAddress | The resoluted MAC address if the resolution is successful. The value is undefined if resolution fails. |
TRUE | Found a matched entry. | |
FALSE | Did not find a matched entry. |
Mode | The pointer to EFI_PXE_BASE_CODE_MODE. | |
Ip4Addr | The Ip4 address for resolution. | |
MacAddress | The resoluted MAC address if the resolution is successful. The value is undefined if the resolution fails. |
TRUE | Found an matched entry. | |
FALSE | Did not find a matched entry. |
Referenced by EfiPxeBcArp().
BOOLEAN PxeBcCheckByDestIp | ( | IN EFI_PXE_BASE_CODE_MODE * | Mode, | |
IN VOID * | Session, | |||
IN OUT EFI_IP_ADDRESS * | DestIp, | |||
IN UINT16 | OpFlags | |||
) |
Filter the received packet with the destination Ip.
[in] | Mode | Pointer to mode data of PxeBc. |
[in] | Session | Pointer to the current UDPv4 session. |
[in,out] | DestIp | Pointer to the dest Ip address. |
[in] | OpFlags | Operation flag for UdpRead/UdpWrite. |
TRUE | Succesfully passed the IPv4 filter. | |
FALSE | Failed to pass the IPv4 filter. |
[in] | Mode | The pointer to the mode data of PxeBc. |
[in] | Session | The pointer to the current UDPv4 session. |
[in,out] | DestIp | The pointer to the destination Ip address. |
[in] | OpFlags | Operation flag for UdpRead/UdpWrite. |
TRUE | Passed the IPv4 filter successfully. | |
FALSE | Failed to pass the IPv4 filter. |
Referenced by PxeBcUdp4Read(), and PxeBcUdp6Read().
BOOLEAN PxeBcCheckByDestPort | ( | IN EFI_PXE_BASE_CODE_MODE * | Mode, | |
IN VOID * | Session, | |||
IN OUT UINT16 * | DestPort, | |||
IN UINT16 | OpFlags | |||
) |
Check the received packet with the destination port.
[in] | Mode | Pointer to mode data of PxeBc. |
[in] | Session | Pointer to the current UDPv4 session. |
[in,out] | DestPort | Pointer to the destination port. |
[in] | OpFlags | Operation flag for UdpRead/UdpWrite. |
TRUE | Succesfully passed the IPv4 filter. | |
FALSE | Failed to pass the IPv4 filter. |
[in] | Mode | The pointer to the mode data of PxeBc. |
[in] | Session | The pointer to the current UDPv4 session. |
[in,out] | DestPort | The pointer to the destination port. |
[in] | OpFlags | Operation flag for UdpRead/UdpWrite. |
TRUE | Passed the IPv4 filter successfully. | |
FALSE | Failed to pass the IPv4 filter. |
Referenced by PxeBcUdp4Read(), and PxeBcUdp6Read().
BOOLEAN PxeBcCheckByIpFilter | ( | IN EFI_PXE_BASE_CODE_MODE * | Mode, | |
IN VOID * | Session, | |||
IN UINT16 | OpFlags | |||
) |
Check the received packet with the Ip filter.
[in] | Mode | Pointer to mode data of PxeBc. |
[in] | Session | Pointer to the current UDPv4 session. |
[in] | OpFlags | Operation flag for UdpRead/UdpWrite. |
TRUE | Succesfully passed the Ip filter. | |
FALSE | Failed to pass the Ip filter. |
[in] | Mode | The pointer to the mode data of PxeBc. |
[in] | Session | The pointer to the current UDPv4 session. |
[in] | OpFlags | Operation flag for UdpRead/UdpWrite. |
TRUE | Passed the Ip filter successfully. | |
FALSE | Failed to pass the Ip filter. |
Referenced by PxeBcUdp4Read(), and PxeBcUdp6Read().
VOID EFIAPI PxeBcCommonNotify | ( | IN EFI_EVENT | Event, | |
IN VOID * | Context | |||
) |
Notify callback function when an event is triggered.
[in] | Event | The triggered event. |
[in] | Context | The opaque parameter to the function. |
[in] | Event | The triggered event. |
[in] | Context | The opaque parameter to the function. |
Referenced by EfiPxeBcArp(), EfiPxeBcUdpRead(), PxeBcRegisterIp6Address(), PxeBcUdp4Write(), and PxeBcUdp6Write().
EFI_STATUS PxeBcConfigUdp4Write | ( | IN EFI_UDP4_PROTOCOL * | Udp4, | |
IN EFI_IPv4_ADDRESS * | StationIp, | |||
IN EFI_IPv4_ADDRESS * | SubnetMask, | |||
IN EFI_IPv4_ADDRESS * | Gateway, | |||
IN OUT UINT16 * | SrcPort, | |||
IN BOOLEAN | DoNotFragment | |||
) |
This function is to configure a UDPv4 instance for UdpWrite.
[in] | Udp4 | Pointer to EFI_UDP4_PROTOCOL. |
[in] | StationIp | Pointer to the station address. |
[in] | SubnetMask | Pointer to the subnet mask. |
[in] | Gateway | Pointer to the gateway address. |
[in,out] | SrcPort | Pointer to the source port. |
[in] | DoNotFragment | The flag of DoNotFragment bit in the IPv4 packet. |
EFI_SUCCESS | Successfully configured this instance. | |
Others | Failed to configure this instance. |
[in] | Udp4 | The pointer to EFI_UDP4_PROTOCOL. |
[in] | StationIp | The pointer to the station address. |
[in] | SubnetMask | The pointer to the subnet mask. |
[in] | Gateway | The pointer to the gateway address. |
[in,out] | SrcPort | The pointer to the source port. |
[in] | DoNotFragment | If TRUE, fragment is not enabled. Otherwise, fragment is enabled. |
EFI_SUCCESS | Successfully configured this instance. | |
Others | Failed to configure this instance. |
References PXEBC_DEFAULT_LIFETIME.
Referenced by EfiPxeBcUdpWrite().
EFI_STATUS PxeBcConfigUdp6Write | ( | IN EFI_UDP6_PROTOCOL * | Udp6, | |
IN EFI_IPv6_ADDRESS * | StationIp, | |||
IN OUT UINT16 * | SrcPort | |||
) |
This function is to configure a UDPv6 instance for UdpWrite.
[in] | Udp6 | Pointer to EFI_UDP6_PROTOCOL. |
[in] | StationIp | Pointer to the station address. |
[in,out] | SrcPort | Pointer to the source port. |
EFI_SUCCESS | Successfuly configured this instance. | |
Others | Failed to configure this instance. |
[in] | Udp6 | The pointer to EFI_UDP6_PROTOCOL. |
[in] | StationIp | The pointer to the station address. |
[in,out] | SrcPort | The pointer to the source port. |
EFI_SUCCESS | Successfully configured this instance. | |
Others | Failed to configure this instance. |
References PXEBC_DEFAULT_HOPLIMIT, and PXEBC_DEFAULT_LIFETIME.
Referenced by EfiPxeBcUdpWrite().
BOOLEAN PxeBcFilterBySrcIp | ( | IN EFI_PXE_BASE_CODE_MODE * | Mode, | |
IN VOID * | Session, | |||
IN OUT EFI_IP_ADDRESS * | SrcIp, | |||
IN UINT16 | OpFlags | |||
) |
Filter the received packet with the source Ip.
[in] | Mode | Pointer to mode data of PxeBc. |
[in] | Session | Pointer to the current UDPv4 session. |
[in,out] | SrcIp | Pointer to the source Ip address. |
[in] | OpFlags | Operation flag for UdpRead/UdpWrite. |
TRUE | Succesfully passed the IPv4 filter. | |
FALSE | Failed to pass the IPv4 filter. |
[in] | Mode | The pointer to the mode data of PxeBc. |
[in] | Session | The pointer to the current UDPv4 session. |
[in,out] | SrcIp | The pointer to the source Ip address. |
[in] | OpFlags | Operation flag for UdpRead/UdpWrite. |
TRUE | Passed the IPv4 filter successfully. | |
FALSE | Failed to pass the IPv4 filter. |
Referenced by PxeBcUdp4Read(), and PxeBcUdp6Read().
BOOLEAN PxeBcFilterBySrcPort | ( | IN EFI_PXE_BASE_CODE_MODE * | Mode, | |
IN VOID * | Session, | |||
IN OUT UINT16 * | SrcPort, | |||
IN UINT16 | OpFlags | |||
) |
Filter the received packet with the source port.
[in] | Mode | Pointer to mode data of PxeBc. |
[in] | Session | Pointer to the current UDPv4 session. |
[in,out] | SrcPort | Pointer to the source port. |
[in] | OpFlags | Operation flag for UdpRead/UdpWrite. |
TRUE | Succesfully passed the IPv4 filter. | |
FALSE | Failed to pass the IPv4 filter. |
[in] | Mode | The pointer to the mode data of PxeBc. |
[in] | Session | The pointer to the current UDPv4 session. |
[in,out] | SrcPort | The pointer to the source port. |
[in] | OpFlags | Operation flag for UdpRead/UdpWrite. |
TRUE | Passed the IPv4 filter successfully. | |
FALSE | Failed to pass the IPv4 filter. |
Referenced by PxeBcUdp4Read(), and PxeBcUdp6Read().
EFI_STATUS PxeBcFlushStationIp | ( | PXEBC_PRIVATE_DATA * | Private, | |
EFI_IP_ADDRESS * | StationIp, | |||
EFI_IP_ADDRESS * | SubnetMask | |||
) |
Flush the previous configration using the new station Ip address.
[in] | Private | Pointer to PxeBc private data. |
[in] | StationIp | Pointer to the station Ip address. |
[in] | SubnetMask | Pointer to the subnet mask address for v4. |
EFI_SUCCESS | Successfully flushed the previous config. | |
Others | Failed to flush using the new station Ip. |
[in] | Private | The pointer to the PxeBc private data. |
[in] | StationIp | The pointer to the station Ip address. |
[in] | SubnetMask | The pointer to the subnet mask address for v4. |
EFI_SUCCESS | Successfully flushed the previous configuration. | |
Others | Failed to flush using the new station Ip. |
References _PXEBC_PRIVATE_DATA::Icmp6Token, _PXEBC_PRIVATE_DATA::IcmpToken, _PXEBC_PRIVATE_DATA::Ip4, _PXEBC_PRIVATE_DATA::Ip4CfgData, _PXEBC_PRIVATE_DATA::Ip6, _PXEBC_PRIVATE_DATA::Ip6CfgData, _PXEBC_PRIVATE_DATA::PxeBc, _PXEBC_PRIVATE_DATA::Udp4CfgData, and _PXEBC_PRIVATE_DATA::Udp6CfgData.
Referenced by EfiPxeBcSetStationIP(), PxeBcDhcp4Dora(), and PxeBcSetIp6Address().
EFI_HANDLE PxeBcGetNicByIp4Children | ( | IN EFI_HANDLE | ControllerHandle | ) |
Get the Nic handle using any child handle in the IPv4 stack.
[in] | ControllerHandle | Pointer to child handle over IPv4. |
Referenced by PxeBcComponentNameGetControllerName(), and PxeBcStop().
EFI_HANDLE PxeBcGetNicByIp6Children | ( | IN EFI_HANDLE | ControllerHandle | ) |
Get the Nic handle using any child handle in the IPv6 stack.
[in] | ControllerHandle | Pointer to child handle over IPv6. |
Referenced by PxeBcComponentNameGetControllerName(), and PxeBcStop().
VOID EFIAPI PxeBcIcmp6ErrorUpdate | ( | IN EFI_EVENT | Event, | |
IN VOID * | Context | |||
) |
xxx
Event | The event signaled. | |
Context | The context passed in by the event notifier. |
Event | The event signalled. | |
Context | The context passed in using the event notifier. |
References PxeBcIcmp6ErrorDpcHandle().
Referenced by EfiPxeBcStart().
VOID EFIAPI PxeBcIcmpErrorUpdate | ( | IN EFI_EVENT | Event, | |
IN VOID * | Context | |||
) |
xxx
Event | The event signaled. | |
Context | The context passed in by the event notifier. |
Event | The event signalled. | |
Context | The context passed in using the event notifier. |
References PxeBcIcmpErrorDpcHandle().
Referenced by EfiPxeBcStart().
VOID PxeBcShowIp4Addr | ( | IN EFI_IPv4_ADDRESS * | Ip | ) |
This function is to display the IPv4 address.
[in] | Ip | Pointer to the IPv4 address. |
[in] | Ip | The pointer to the IPv4 address. |
Referenced by PxeBcDhcp4BootInfo(), and PxeBcDhcp4Dora().
VOID PxeBcShowIp6Addr | ( | IN EFI_IPv6_ADDRESS * | Ip | ) |
This function is to display the IPv6 address.
[in] | Ip | Pointer to the IPv6 address. |
[in] | Ip | The pointer to the IPv6 address. |
Referenced by PxeBcDhcp6BootInfo(), and PxeBcSetIp6Address().
EFI_STATUS PxeBcUdp4Read | ( | IN EFI_UDP4_PROTOCOL * | Udp4, | |
IN EFI_UDP4_COMPLETION_TOKEN * | Token, | |||
IN EFI_PXE_BASE_CODE_MODE * | Mode, | |||
IN EFI_EVENT | TimeoutEvent, | |||
IN UINT16 | OpFlags, | |||
IN BOOLEAN * | IsDone, | |||
OUT BOOLEAN * | IsMatched, | |||
IN OUT EFI_IP_ADDRESS * | DestIp, | |||
IN OUT EFI_PXE_BASE_CODE_UDP_PORT * | DestPort, | |||
IN OUT EFI_IP_ADDRESS * | SrcIp, | |||
IN OUT EFI_PXE_BASE_CODE_UDP_PORT * | SrcPort | |||
) |
This function is to receive packet with Udp4Read.
[in] | Udp4 | Pointer to EFI_UDP4_PROTOCOL. |
[in] | Token | Pointer to EFI_UDP4_COMPLETION_TOKEN. |
[in] | Mode | Pointer to EFI_PXE_BASE_CODE_MODE. |
[in] | TimeoutEvent | The event for timeout. |
[in] | OpFlags | The UDP operation flags. |
[in] | IsDone | Pointer to IsDone flag. |
[out] | IsMatched | Pointer to IsMatched flag. |
[in,out] | DestIp | Pointer to destination address. |
[in,out] | DestPort | Pointer to destination port. |
[in,out] | SrcIp | Pointer to source address. |
[in,out] | SrcPort | Pointer to source port. |
EFI_SUCCESS | Successfully read data with Udp4. | |
Others | Failed to send out data. |
[in] | Udp4 | The pointer to EFI_UDP4_PROTOCOL. |
[in] | Token | The pointer to EFI_UDP4_COMPLETION_TOKEN. |
[in] | Mode | The pointer to EFI_PXE_BASE_CODE_MODE. |
[in] | TimeoutEvent | The event for timeout. |
[in] | OpFlags | The UDP operation flags. |
[in] | IsDone | The pointer to the IsDone flag. |
[out] | IsMatched | The pointer to the IsMatched flag. |
[in,out] | DestIp | The pointer to the destination address. |
[in,out] | DestPort | The pointer to the destination port. |
[in,out] | SrcIp | The pointer to the source address. |
[in,out] | SrcPort | The pointer to the source port. |
EFI_SUCCESS | Successfully read the data using Udp4. | |
Others | Failed to send out data. |
References PxeBcCheckByDestIp(), PxeBcCheckByDestPort(), PxeBcCheckByIpFilter(), PxeBcFilterBySrcIp(), and PxeBcFilterBySrcPort().
Referenced by EfiPxeBcUdpRead().
EFI_STATUS PxeBcUdp4Write | ( | IN EFI_UDP4_PROTOCOL * | Udp4, | |
IN EFI_UDP4_SESSION_DATA * | Session, | |||
IN EFI_EVENT | TimeoutEvent, | |||
IN EFI_IPv4_ADDRESS * | Gateway, | |||
IN UINTN * | HeaderSize, | |||
IN VOID * | HeaderPtr, | |||
IN UINTN * | BufferSize, | |||
IN VOID * | BufferPtr | |||
) |
This function is to configure a UDPv4 instance for UdpWrite.
[in] | Udp4 | Pointer to EFI_UDP4_PROTOCOL. |
[in] | Session | Pointer to the UDP4 session data. |
[in] | TimeoutEvent | The event for timeout. |
[in] | Gateway | Pointer to the gateway address. |
[in] | HeaderSize | An optional field which may be set to the length of a header at HeaderPtr to be prefixed to the data at BufferPtr. |
[in] | HeaderPtr | If HeaderSize is not NULL, a pointer to a header to be prefixed to the data at BufferPtr. |
[in] | BufferSize | A pointer to the size of the data at BufferPtr. |
[in] | BufferPtr | A pointer to the data to be written. |
EFI_SUCCESS | Successfully sent out data with Udp4Write. | |
Others | Failed to send out data. |
[in] | Udp4 | The pointer to EFI_UDP4_PROTOCOL. |
[in] | Session | The pointer to the UDP4 session data. |
[in] | TimeoutEvent | The event for timeout. |
[in] | Gateway | The pointer to the gateway address. |
[in] | HeaderSize | An optional field which may be set to the length of a header at HeaderPtr to be prefixed to the data at BufferPtr. |
[in] | HeaderPtr | If HeaderSize is not NULL, a pointer to a header to be prefixed to the data at BufferPtr. |
[in] | BufferSize | A pointer to the size of the data at BufferPtr. |
[in] | BufferPtr | A pointer to the data to be written. |
EFI_SUCCESS | Successfully send out data using Udp4Write. | |
Others | Failed to send out data. |
References PxeBcCommonNotify().
Referenced by EfiPxeBcUdpWrite().
EFI_STATUS PxeBcUdp6Read | ( | IN EFI_UDP6_PROTOCOL * | Udp6, | |
IN EFI_UDP6_COMPLETION_TOKEN * | Token, | |||
IN EFI_PXE_BASE_CODE_MODE * | Mode, | |||
IN EFI_EVENT | TimeoutEvent, | |||
IN UINT16 | OpFlags, | |||
IN BOOLEAN * | IsDone, | |||
OUT BOOLEAN * | IsMatched, | |||
IN OUT EFI_IP_ADDRESS * | DestIp, | |||
IN OUT EFI_PXE_BASE_CODE_UDP_PORT * | DestPort, | |||
IN OUT EFI_IP_ADDRESS * | SrcIp, | |||
IN OUT EFI_PXE_BASE_CODE_UDP_PORT * | SrcPort | |||
) |
This function is to receive packet with Udp6Read.
[in] | Udp6 | Pointer to EFI_UDP6_PROTOCOL. |
[in] | Token | Pointer to EFI_UDP6_COMPLETION_TOKEN. |
[in] | Mode | Pointer to EFI_PXE_BASE_CODE_MODE. |
[in] | TimeoutEvent | The event for timeout. |
[in] | OpFlags | The UDP operation flags. |
[in] | IsDone | Pointer to IsDone flag. |
[out] | IsMatched | Pointer to IsMatched flag. |
[in,out] | DestIp | Pointer to destination address. |
[in,out] | DestPort | Pointer to destination port. |
[in,out] | SrcIp | Pointer to source address. |
[in,out] | SrcPort | Pointer to source port. |
EFI_SUCCESS | Successfully read data with Udp6. | |
Others | Failed to send out data. |
[in] | Udp6 | The pointer to EFI_UDP6_PROTOCOL. |
[in] | Token | The pointer to EFI_UDP6_COMPLETION_TOKEN. |
[in] | Mode | The pointer to EFI_PXE_BASE_CODE_MODE. |
[in] | TimeoutEvent | The event for timeout. |
[in] | OpFlags | The UDP operation flags. |
[in] | IsDone | The pointer to the IsDone flag. |
[out] | IsMatched | The pointer to the IsMatched flag. |
[in,out] | DestIp | The pointer to the destination address. |
[in,out] | DestPort | The pointer to the destination port. |
[in,out] | SrcIp | The pointer to the source address. |
[in,out] | SrcPort | The pointer to the source port. |
EFI_SUCCESS | Successfully read data using Udp6. | |
Others | Failed to send out data. |
References PxeBcCheckByDestIp(), PxeBcCheckByDestPort(), PxeBcCheckByIpFilter(), PxeBcFilterBySrcIp(), and PxeBcFilterBySrcPort().
Referenced by EfiPxeBcUdpRead().
EFI_STATUS PxeBcUdp6Write | ( | IN EFI_UDP6_PROTOCOL * | Udp6, | |
IN EFI_UDP6_SESSION_DATA * | Session, | |||
IN EFI_EVENT | TimeoutEvent, | |||
IN UINTN * | HeaderSize, | |||
IN VOID * | HeaderPtr, | |||
IN UINTN * | BufferSize, | |||
IN VOID * | BufferPtr | |||
) |
This function is to configure a UDPv6 instance for UdpWrite.
[in] | Udp6 | Pointer to EFI_UDP6_PROTOCOL. |
[in] | Session | Pointer to the UDP6 session data. |
[in] | TimeoutEvent | The event for timeout. |
[in] | HeaderSize | An optional field which may be set to the length of a header at HeaderPtr to be prefixed to the data at BufferPtr. |
[in] | HeaderPtr | If HeaderSize is not NULL, a pointer to a header to be prefixed to the data at BufferPtr. |
[in] | BufferSize | A pointer to the size of the data at BufferPtr. |
[in] | BufferPtr | A pointer to the data to be written. |
EFI_SUCCESS | Successfully to send out data with Udp6Write. | |
Others | Failed to send out data. |
[in] | Udp6 | The pointer to EFI_UDP6_PROTOCOL. |
[in] | Session | The pointer to the UDP6 session data. |
[in] | TimeoutEvent | The event for timeout. |
[in] | HeaderSize | An optional field which may be set to the length of a header at HeaderPtr to be prefixed to the data at BufferPtr. |
[in] | HeaderPtr | If HeaderSize is not NULL, a pointer to a header to be prefixed to the data at BufferPtr. |
[in] | BufferSize | A pointer to the size of the data at BufferPtr. |
[in] | BufferPtr | A pointer to the data to be written. |
EFI_SUCCESS | Successfully sent out data using Udp6Write. | |
Others | Failed to send out data. |
References PxeBcCommonNotify().
Referenced by EfiPxeBcUdpWrite().
UINTN PxeBcUintnToAscDec | ( | IN UINTN | Number, | |
IN UINT8 * | Buffer, | |||
IN UINTN | BufferSize | |||
) |
This function is to convert a UINTN to a ASCII string, and return the actual length of the buffer.
[in] | Number | Numeric value to be converted. |
[in] | Buffer | Pointer to the buffer for ASCII string. |
[in] | BufferSize | The maxsize of the buffer. |
[in] | Number | Numeric value to be converted. |
[in] | Buffer | The pointer to the buffer for ASCII string. |
[in] | BufferSize | The maxsize of the buffer. |
Referenced by PxeBcMtftp4GetFileSize(), PxeBcMtftp4ReadDirectory(), PxeBcMtftp4ReadFile(), PxeBcMtftp4WriteFile(), PxeBcMtftp6GetFileSize(), PxeBcMtftp6ReadDirectory(), PxeBcMtftp6ReadFile(), and PxeBcMtftp6WriteFile().
VOID PxeBcUintnToAscDecWithFormat | ( | IN UINTN | Number, | |
IN UINT8 * | Buffer, | |||
IN INTN | Length | |||
) |
This function is to convert UINTN to ASCII string with required format.
[in] | Number | Numeric value to be converted. |
[in] | Buffer | Pointer to the buffer for ASCII string. |
[in] | Length | Length of the required format. |
[in] | Number | Numeric value to be converted. |
[in] | Buffer | The pointer to the buffer for ASCII string. |
[in] | Length | The length of the required format. |
Referenced by PxeBcBuildDhcp4Options(), and PxeBcBuildDhcp6Options().
EFI_STATUS PxeBcUniHexToUint8 | ( | OUT UINT8 * | Digit, | |
IN CHAR16 | Char | |||
) |
This function is to convert unicode hex number to a UINT8.
[out] | Digit | The converted UINT8 for output. |
[in] | Char | The unicode hex number to be converted. |
EFI_SUCCESS | Successfully converted the unicode hex. | |
EFI_INVALID_PARAMETER | Failed to convert the unicode hex. |
Referenced by PxeBcExtractBootFileParam().