4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/** @file
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Support functions declaration for UefiPxeBc Driver.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Copyright (c) 2007 - 2011, Intel Corporation. All rights reserved.<BR>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This program and the accompanying materials
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync are licensed and made available under the terms and conditions of the BSD License
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync which accompanies this distribution. The full text of the license may be found at
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync http://opensource.org/licenses/bsd-license.php.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#ifndef __EFI_PXEBC_SUPPORT_H__
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define __EFI_PXEBC_SUPPORT_H__
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define ICMP_DEST_UNREACHABLE 3
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define ICMP_SOURCE_QUENCH 4
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define ICMP_REDIRECT 5
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define ICMP_ECHO_REQUEST 8
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define ICMP_TIME_EXCEEDED 11
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define ICMP_PARAMETER_PROBLEM 12
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Flush the previous configration using the new station Ip address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Private Pointer to PxeBc private data.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] StationIp Pointer to the station Ip address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] SubnetMask Pointer to the subnet mask address for v4.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_SUCCESS Successfully flushed the previous config.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval Others Failed to flush using the new station Ip.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFI_STATUS
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcFlushStaionIp (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PXEBC_PRIVATE_DATA *Private,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync EFI_IP_ADDRESS *StationIp,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync EFI_IP_ADDRESS *SubnetMask OPTIONAL
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Notify callback function when an event is triggered.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Event The triggered event.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Context The opaque parameter to the function.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFIAPI
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcCommonNotify (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_EVENT Event,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *Context
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Perform arp resolution from the arp cache in PxeBcMode.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param Mode Pointer to EFI_PXE_BASE_CODE_MODE.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param Ip4Addr The Ip4 address for resolution.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param MacAddress The resoluted MAC address if the resolution is successful.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync The value is undefined if resolution fails.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval TRUE Found a matched entry.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval FALSE Did not find a matched entry.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBOOLEAN
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcCheckArpCache (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_PXE_BASE_CODE_MODE *Mode,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_IPv4_ADDRESS *Ip4Addr,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync OUT EFI_MAC_ADDRESS *MacAddress
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Update arp cache periodically.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param Event Pointer to EFI_PXE_BC_PROTOCOL.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param Context Context of the timer event.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFIAPI
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcArpCacheUpdate (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_EVENT Event,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *Context
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync xxx
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param Event The event signaled.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param Context The context passed in by the event notifier.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFIAPI
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcIcmpErrorUpdate (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_EVENT Event,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *Context
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync xxx
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param Event The event signaled.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param Context The context passed in by the event notifier.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFIAPI
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcIcmp6ErrorUpdate (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_EVENT Event,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *Context
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function is to configure a UDPv4 instance for UdpWrite.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Udp4 Pointer to EFI_UDP4_PROTOCOL.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] StationIp Pointer to the station address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] SubnetMask Pointer to the subnet mask.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Gateway Pointer to the gateway address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] SrcPort Pointer to the source port.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] DoNotFragment The flag of DoNotFragment bit in the IPv4
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync packet.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_SUCCESS Successfully configured this instance.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval Others Failed to configure this instance.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFI_STATUS
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcConfigUdp4Write (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_UDP4_PROTOCOL *Udp4,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_IPv4_ADDRESS *StationIp,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_IPv4_ADDRESS *SubnetMask,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_IPv4_ADDRESS *Gateway,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT UINT16 *SrcPort,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN BOOLEAN DoNotFragment
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function is to configure a UDPv6 instance for UdpWrite.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Udp6 Pointer to EFI_UDP6_PROTOCOL.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] StationIp Pointer to the station address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] SrcPort Pointer to the source port.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_SUCCESS Successfuly configured this instance.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval Others Failed to configure this instance.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFI_STATUS
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcConfigUdp6Write (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_UDP6_PROTOCOL *Udp6,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_IPv6_ADDRESS *StationIp,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT UINT16 *SrcPort
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function is to configure a UDPv4 instance for UdpWrite.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Udp4 Pointer to EFI_UDP4_PROTOCOL.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Session Pointer to the UDP4 session data.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] TimeoutEvent The event for timeout.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Gateway Pointer to the gateway address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] HeaderSize An optional field which may be set to the length of a header
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync at HeaderPtr to be prefixed to the data at BufferPtr.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] HeaderPtr If HeaderSize is not NULL, a pointer to a header to be
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync prefixed to the data at BufferPtr.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] BufferSize A pointer to the size of the data at BufferPtr.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] BufferPtr A pointer to the data to be written.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_SUCCESS Successfully sent out data with Udp4Write.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval Others Failed to send out data.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFI_STATUS
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcUdp4Write (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_UDP4_PROTOCOL *Udp4,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_UDP4_SESSION_DATA *Session,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_EVENT TimeoutEvent,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_IPv4_ADDRESS *Gateway OPTIONAL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINTN *HeaderSize OPTIONAL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *HeaderPtr OPTIONAL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINTN *BufferSize,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *BufferPtr
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function is to configure a UDPv6 instance for UdpWrite.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Udp6 Pointer to EFI_UDP6_PROTOCOL.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Session Pointer to the UDP6 session data.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] TimeoutEvent The event for timeout.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] HeaderSize An optional field which may be set to the length of a header
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync at HeaderPtr to be prefixed to the data at BufferPtr.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] HeaderPtr If HeaderSize is not NULL, a pointer to a header to be
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync prefixed to the data at BufferPtr.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] BufferSize A pointer to the size of the data at BufferPtr.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] BufferPtr A pointer to the data to be written.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_SUCCESS Successfully to send out data with Udp6Write.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval Others Failed to send out data.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFI_STATUS
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcUdp6Write (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_UDP6_PROTOCOL *Udp6,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_UDP6_SESSION_DATA *Session,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_EVENT TimeoutEvent,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINTN *HeaderSize OPTIONAL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *HeaderPtr OPTIONAL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINTN *BufferSize,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *BufferPtr
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Check the received packet with the Ip filter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Mode Pointer to mode data of PxeBc.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Session Pointer to the current UDPv4 session.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] OpFlags Operation flag for UdpRead/UdpWrite.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval TRUE Succesfully passed the Ip filter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval FALSE Failed to pass the Ip filter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBOOLEAN
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcCheckByIpFilter (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_PXE_BASE_CODE_MODE *Mode,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *Session,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 OpFlags
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Filter the received packet with the destination Ip.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Mode Pointer to mode data of PxeBc.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Session Pointer to the current UDPv4 session.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] DestIp Pointer to the dest Ip address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] OpFlags Operation flag for UdpRead/UdpWrite.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval TRUE Succesfully passed the IPv4 filter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval FALSE Failed to pass the IPv4 filter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBOOLEAN
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcCheckByDestIp (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_PXE_BASE_CODE_MODE *Mode,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *Session,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT EFI_IP_ADDRESS *DestIp,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 OpFlags
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Check the received packet with the destination port.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Mode Pointer to mode data of PxeBc.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Session Pointer to the current UDPv4 session.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] DestPort Pointer to the destination port.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] OpFlags Operation flag for UdpRead/UdpWrite.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval TRUE Succesfully passed the IPv4 filter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval FALSE Failed to pass the IPv4 filter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBOOLEAN
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcCheckByDestPort (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_PXE_BASE_CODE_MODE *Mode,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *Session,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT UINT16 *DestPort,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 OpFlags
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Filter the received packet with the source Ip.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Mode Pointer to mode data of PxeBc.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Session Pointer to the current UDPv4 session.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] SrcIp Pointer to the source Ip address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] OpFlags Operation flag for UdpRead/UdpWrite.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval TRUE Succesfully passed the IPv4 filter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval FALSE Failed to pass the IPv4 filter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBOOLEAN
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcFilterBySrcIp (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_PXE_BASE_CODE_MODE *Mode,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *Session,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT EFI_IP_ADDRESS *SrcIp,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 OpFlags
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Filter the received packet with the source port.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Mode Pointer to mode data of PxeBc.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Session Pointer to the current UDPv4 session.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] SrcPort Pointer to the source port.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] OpFlags Operation flag for UdpRead/UdpWrite.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval TRUE Succesfully passed the IPv4 filter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval FALSE Failed to pass the IPv4 filter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBOOLEAN
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcFilterBySrcPort (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_PXE_BASE_CODE_MODE *Mode,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *Session,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT UINT16 *SrcPort,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 OpFlags
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function is to receive packet with Udp4Read.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Udp4 Pointer to EFI_UDP4_PROTOCOL.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Token Pointer to EFI_UDP4_COMPLETION_TOKEN.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Mode Pointer to EFI_PXE_BASE_CODE_MODE.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] TimeoutEvent The event for timeout.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] OpFlags The UDP operation flags.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] IsDone Pointer to IsDone flag.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[out] IsMatched Pointer to IsMatched flag.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] DestIp Pointer to destination address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] DestPort Pointer to destination port.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] SrcIp Pointer to source address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] SrcPort Pointer to source port.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_SUCCESS Successfully read data with Udp4.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval Others Failed to send out data.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFI_STATUS
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcUdp4Read (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_UDP4_PROTOCOL *Udp4,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_UDP4_COMPLETION_TOKEN *Token,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_PXE_BASE_CODE_MODE *Mode,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_EVENT TimeoutEvent,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 OpFlags,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN BOOLEAN *IsDone,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync OUT BOOLEAN *IsMatched,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT EFI_IP_ADDRESS *DestIp OPTIONAL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT EFI_PXE_BASE_CODE_UDP_PORT *DestPort OPTIONAL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT EFI_IP_ADDRESS *SrcIp OPTIONAL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT EFI_PXE_BASE_CODE_UDP_PORT *SrcPort OPTIONAL
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function is to receive packet with Udp6Read.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Udp6 Pointer to EFI_UDP6_PROTOCOL.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Token Pointer to EFI_UDP6_COMPLETION_TOKEN.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Mode Pointer to EFI_PXE_BASE_CODE_MODE.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] TimeoutEvent The event for timeout.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] OpFlags The UDP operation flags.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] IsDone Pointer to IsDone flag.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[out] IsMatched Pointer to IsMatched flag.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] DestIp Pointer to destination address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] DestPort Pointer to destination port.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] SrcIp Pointer to source address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] SrcPort Pointer to source port.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_SUCCESS Successfully read data with Udp6.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval Others Failed to send out data.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFI_STATUS
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcUdp6Read (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_UDP6_PROTOCOL *Udp6,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_UDP6_COMPLETION_TOKEN *Token,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_PXE_BASE_CODE_MODE *Mode,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_EVENT TimeoutEvent,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 OpFlags,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN BOOLEAN *IsDone,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync OUT BOOLEAN *IsMatched,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT EFI_IP_ADDRESS *DestIp OPTIONAL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT EFI_PXE_BASE_CODE_UDP_PORT *DestPort OPTIONAL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT EFI_IP_ADDRESS *SrcIp OPTIONAL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT EFI_PXE_BASE_CODE_UDP_PORT *SrcPort OPTIONAL
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function is to display the IPv4 address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Ip Pointer to the IPv4 address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcShowIp4Addr (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_IPv4_ADDRESS *Ip
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function is to display the IPv6 address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Ip Pointer to the IPv6 address.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcShowIp6Addr (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN EFI_IPv6_ADDRESS *Ip
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function is to convert UINTN to ASCII string with required format.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Number Numeric value to be converted.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Buffer Pointer to the buffer for ASCII string.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Length Length of the required format.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcUintnToAscDecWithFormat (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINTN Number,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 *Buffer,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN INTN Length
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function is to convert a UINTN to a ASCII string, and return the
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync actual length of the buffer.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Number Numeric value to be converted.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Buffer Pointer to the buffer for ASCII string.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @return Length The actual length of the ASCII string.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncUINTN
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcUintnToAscDec (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINTN Number,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 *Buffer
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function is to convert unicode hex number to a UINT8.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[out] Digit The converted UINT8 for output.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Char The unicode hex number to be converted.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_SUCCESS Successfully converted the unicode hex.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_INVALID_PARAMETER Failed to convert the unicode hex.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFI_STATUS
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncPxeBcUniHexToUint8 (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync OUT UINT8 *Digit,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN CHAR16 Char
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Calculate the elapsed time.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Private The pointer to PXE private data
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncCalcElapsedTime (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN PXEBC_PRIVATE_DATA *Private
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#endif