summaryrefslogtreecommitdiffstats
path: root/NetworkPkg/UefiPxeBcDxe/PxeBcSupport.h
diff options
context:
space:
mode:
authorFu Siyuan <siyuan.fu@intel.com>2016-04-29 15:08:58 +0800
committerFu Siyuan <siyuan.fu@intel.com>2016-05-05 09:08:24 +0800
commit6f2f4116ebe4d3881757d0a08c8a660524775247 (patch)
tree5f74d8616a77d5fd85f1d82cab3fdb7f696e4a80 /NetworkPkg/UefiPxeBcDxe/PxeBcSupport.h
parenta2cc5fea44b5b5a28dcf6448eafe61aa5ebb42c7 (diff)
downloadedk2-6f2f4116ebe4d3881757d0a08c8a660524775247.tar.gz
edk2-6f2f4116ebe4d3881757d0a08c8a660524775247.tar.bz2
edk2-6f2f4116ebe4d3881757d0a08c8a660524775247.zip
NetworkPkg: Do not use hard coded TTL/ToS in PXE driver.
EFI_PXE_BASE_CODE_PROTOCOL has interface to set the TTL and ToS value, but not used by the UdpWrite() interface. The code always use a hard coded 16 for the TTL and 0 for ToS. This patch update the UpdWrite() to use the TTL and ToS which have been set by the SetParameters(). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-By: Wu Jiaxin <jiaxin.wu@intel.com> Reviewed-By: Samer El-Haj-Mahmoud <elhaj@hpe.com>
Diffstat (limited to 'NetworkPkg/UefiPxeBcDxe/PxeBcSupport.h')
-rw-r--r--NetworkPkg/UefiPxeBcDxe/PxeBcSupport.h22
1 files changed, 13 insertions, 9 deletions
diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcSupport.h b/NetworkPkg/UefiPxeBcDxe/PxeBcSupport.h
index 0a43aeb79b..5d611b55c9 100644
--- a/NetworkPkg/UefiPxeBcDxe/PxeBcSupport.h
+++ b/NetworkPkg/UefiPxeBcDxe/PxeBcSupport.h
@@ -1,7 +1,7 @@
/** @file
Support functions declaration for UefiPxeBc Driver.
- Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2007 - 2016, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
@@ -128,13 +128,15 @@ PxeBcIcmp6ErrorUpdate (
/**
This function is to configure a UDPv4 instance for UdpWrite.
- @param[in] Udp4 Pointer to EFI_UDP4_PROTOCOL.
- @param[in] StationIp Pointer to the station address.
- @param[in] SubnetMask Pointer to the subnet mask.
- @param[in] Gateway Pointer to the gateway address.
- @param[in, out] SrcPort Pointer to the source port.
- @param[in] DoNotFragment The flag of DoNotFragment bit in the IPv4
- packet.
+ @param[in] Udp4 The pointer to EFI_UDP4_PROTOCOL.
+ @param[in] StationIp The pointer to the station address.
+ @param[in] SubnetMask The pointer to the subnet mask.
+ @param[in] Gateway The pointer to the gateway address.
+ @param[in, out] SrcPort The pointer to the source port.
+ @param[in] DoNotFragment If TRUE, fragment is not enabled.
+ Otherwise, fragment is enabled.
+ @param[in] TTL The time to live field of the IP header.
+ @param[in] ToS The type of service field of the IP header.
@retval EFI_SUCCESS Successfully configured this instance.
@retval Others Failed to configure this instance.
@@ -147,7 +149,9 @@ PxeBcConfigUdp4Write (
IN EFI_IPv4_ADDRESS *SubnetMask,
IN EFI_IPv4_ADDRESS *Gateway,
IN OUT UINT16 *SrcPort,
- IN BOOLEAN DoNotFragment
+ IN BOOLEAN DoNotFragment,
+ IN UINT8 TTL,
+ IN UINT8 ToS
);