mirror of https://github.com/acidanthera/audk.git
MdeModulePkg: Source fixes and cleanup for ARMGCC compiles
- Fix EFI_IPv4_ADDRESS usages to use a macro to copy the structure instead of direct assignment, to avoid runtime alignment errors. - Fix a EFI_INPUT_KEY usage in TerminalDxe to use CopyMem() to copy the structure instead of direct assignment, to avoid runtime alignment error. - Delete excess local variables that are initialized but otherwise unused. - CompilerIntrinsicsLib library now imported for AARCH64, as well as ARM. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Randy Pawell <randy_pawell@hp.com> Reviewed-by: Olivier Martin <Olivier.Martin@arm.com> Reviewed-by: Feng Tian <feng.tian@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16471 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
40a0f8cb78
commit
35f910f08b
|
@ -2,6 +2,7 @@
|
||||||
NvmExpressDxe driver is used to manage non-volatile memory subsystem which follows
|
NvmExpressDxe driver is used to manage non-volatile memory subsystem which follows
|
||||||
NVM Express specification.
|
NVM Express specification.
|
||||||
|
|
||||||
|
(C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
|
||||||
Copyright (c) 2013, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2013, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
|
@ -852,7 +853,6 @@ NvmExpressBuildDevicePath (
|
||||||
IN OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath
|
IN OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
NVME_CONTROLLER_PRIVATE_DATA *Private;
|
|
||||||
NVME_NAMESPACE_DEVICE_PATH *Node;
|
NVME_NAMESPACE_DEVICE_PATH *Node;
|
||||||
|
|
||||||
//
|
//
|
||||||
|
@ -862,8 +862,6 @@ NvmExpressBuildDevicePath (
|
||||||
return EFI_INVALID_PARAMETER;
|
return EFI_INVALID_PARAMETER;
|
||||||
}
|
}
|
||||||
|
|
||||||
Private = NVME_CONTROLLER_PRIVATE_DATA_FROM_PASS_THRU (This);
|
|
||||||
|
|
||||||
if (NamespaceId == 0) {
|
if (NamespaceId == 0) {
|
||||||
return EFI_NOT_FOUND;
|
return EFI_NOT_FOUND;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
/** @file
|
/** @file
|
||||||
16550 UART Serial Port library functions
|
16550 UART Serial Port library functions
|
||||||
|
|
||||||
|
(C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
|
||||||
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
|
@ -184,7 +185,6 @@ GetSerialRegisterBase (
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
UINTN PciLibAddress;
|
UINTN PciLibAddress;
|
||||||
UINTN PrimaryBusNumber;
|
|
||||||
UINTN BusNumber;
|
UINTN BusNumber;
|
||||||
UINTN SubordinateBusNumber;
|
UINTN SubordinateBusNumber;
|
||||||
UINT32 ParentIoBase;
|
UINT32 ParentIoBase;
|
||||||
|
@ -233,7 +233,6 @@ GetSerialRegisterBase (
|
||||||
//
|
//
|
||||||
// Retrieve and verify the bus numbers in the PCI to PCI Bridge
|
// Retrieve and verify the bus numbers in the PCI to PCI Bridge
|
||||||
//
|
//
|
||||||
PrimaryBusNumber = PciRead8 (PciLibAddress + PCI_BRIDGE_PRIMARY_BUS_REGISTER_OFFSET);
|
|
||||||
BusNumber = PciRead8 (PciLibAddress + PCI_BRIDGE_SECONDARY_BUS_REGISTER_OFFSET);
|
BusNumber = PciRead8 (PciLibAddress + PCI_BRIDGE_SECONDARY_BUS_REGISTER_OFFSET);
|
||||||
SubordinateBusNumber = PciRead8 (PciLibAddress + PCI_BRIDGE_SUBORDINATE_BUS_REGISTER_OFFSET);
|
SubordinateBusNumber = PciRead8 (PciLibAddress + PCI_BRIDGE_SUBORDINATE_BUS_REGISTER_OFFSET);
|
||||||
if (BusNumber == 0 || BusNumber > SubordinateBusNumber) {
|
if (BusNumber == 0 || BusNumber > SubordinateBusNumber) {
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
/** @file
|
/** @file
|
||||||
IpIo Library.
|
IpIo Library.
|
||||||
|
|
||||||
|
(C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
|
||||||
Copyright (c) 2005 - 2009, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2005 - 2009, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
|
@ -703,7 +704,7 @@ IpIoCreateSndEntry (
|
||||||
|
|
||||||
Ip4TxData = &TxData->Ip4TxData;
|
Ip4TxData = &TxData->Ip4TxData;
|
||||||
|
|
||||||
CopyMem (&Ip4TxData->DestinationAddress, Dest, sizeof (EFI_IPv4_ADDRESS));
|
IP4_COPY_ADDRESS (&Ip4TxData->DestinationAddress, Dest);
|
||||||
|
|
||||||
Ip4TxData->OverrideData = &OverrideData->Ip4OverrideData;
|
Ip4TxData->OverrideData = &OverrideData->Ip4OverrideData;
|
||||||
Ip4TxData->OptionsLength = 0;
|
Ip4TxData->OptionsLength = 0;
|
||||||
|
@ -1765,8 +1766,8 @@ IpIoConfigIp (
|
||||||
NULL
|
NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
((EFI_IP4_CONFIG_DATA*) IpConfigData)->StationAddress = Ip4ModeData.ConfigData.StationAddress;
|
IP4_COPY_ADDRESS (&((EFI_IP4_CONFIG_DATA*) IpConfigData)->StationAddress, &Ip4ModeData.ConfigData.StationAddress);
|
||||||
((EFI_IP4_CONFIG_DATA*) IpConfigData)->SubnetMask = Ip4ModeData.ConfigData.SubnetMask;
|
IP4_COPY_ADDRESS (&((EFI_IP4_CONFIG_DATA*) IpConfigData)->SubnetMask, &Ip4ModeData.ConfigData.SubnetMask);
|
||||||
}
|
}
|
||||||
|
|
||||||
CopyMem (
|
CopyMem (
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
## @file
|
## @file
|
||||||
# EFI/PI Reference Module Package for All Architectures
|
# EFI/PI Reference Module Package for All Architectures
|
||||||
#
|
#
|
||||||
|
# (C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
|
||||||
# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
|
# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
#
|
#
|
||||||
# This program and the accompanying materials
|
# This program and the accompanying materials
|
||||||
|
@ -145,10 +146,10 @@
|
||||||
MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
|
MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
|
||||||
DebugLib|MdePkg/Library/UefiDebugLibStdErr/UefiDebugLibStdErr.inf
|
DebugLib|MdePkg/Library/UefiDebugLibStdErr/UefiDebugLibStdErr.inf
|
||||||
|
|
||||||
[LibraryClasses.ARM]
|
[LibraryClasses.ARM, LibraryClasses.AARCH64]
|
||||||
#
|
#
|
||||||
# It is not possible to prevent the ARM compiler for generic intrinsic functions.
|
# It is not possible to prevent ARM compiler calls to generic intrinsic functions.
|
||||||
# This library provides the instrinsic functions generate by a given compiler.
|
# This library provides the instrinsic functions generated by a given compiler.
|
||||||
# [LibraryClasses.ARM] and NULL mean link this library into all ARM images.
|
# [LibraryClasses.ARM] and NULL mean link this library into all ARM images.
|
||||||
#
|
#
|
||||||
NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
|
NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
CapsuleDataCoalesce() will do basic validation before coalesce capsule data
|
CapsuleDataCoalesce() will do basic validation before coalesce capsule data
|
||||||
into memory.
|
into memory.
|
||||||
|
|
||||||
|
(C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
|
||||||
Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
|
@ -960,7 +961,6 @@ CapsuleDataCoalesce (
|
||||||
UINT8 *DestPtr;
|
UINT8 *DestPtr;
|
||||||
UINTN DestLength;
|
UINTN DestLength;
|
||||||
UINT8 *RelocPtr;
|
UINT8 *RelocPtr;
|
||||||
UINT64 *AddDataPtr;
|
|
||||||
UINTN CapsuleTimes;
|
UINTN CapsuleTimes;
|
||||||
UINT64 SizeLeft;
|
UINT64 SizeLeft;
|
||||||
UINT64 CapsuleImageSize;
|
UINT64 CapsuleImageSize;
|
||||||
|
@ -986,7 +986,6 @@ CapsuleDataCoalesce (
|
||||||
CapsuleTimes = 0;
|
CapsuleTimes = 0;
|
||||||
CapsuleImageSize = 0;
|
CapsuleImageSize = 0;
|
||||||
PrivateDataPtr = NULL;
|
PrivateDataPtr = NULL;
|
||||||
AddDataPtr = NULL;
|
|
||||||
CapsuleHeader = NULL;
|
CapsuleHeader = NULL;
|
||||||
CapsuleBeginFlag = TRUE;
|
CapsuleBeginFlag = TRUE;
|
||||||
CapsuleSize = 0;
|
CapsuleSize = 0;
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
/** @file
|
/** @file
|
||||||
Implementation for EFI_SIMPLE_TEXT_INPUT_PROTOCOL protocol.
|
Implementation for EFI_SIMPLE_TEXT_INPUT_PROTOCOL protocol.
|
||||||
|
|
||||||
|
(C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
|
||||||
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
|
@ -847,7 +848,7 @@ EfiKeyFiFoRemoveOneKey (
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
*Output = TerminalDevice->EfiKeyFiFo->Data[Head];
|
CopyMem (Output, &TerminalDevice->EfiKeyFiFo->Data[Head], sizeof (EFI_INPUT_KEY));
|
||||||
|
|
||||||
TerminalDevice->EfiKeyFiFo->Head = (UINT8) ((Head + 1) % (FIFO_MAX_NUMBER + 1));
|
TerminalDevice->EfiKeyFiFo->Head = (UINT8) ((Head + 1) % (FIFO_MAX_NUMBER + 1));
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
/** @file
|
/** @file
|
||||||
Interface routine for Mtftp4.
|
Interface routine for Mtftp4.
|
||||||
|
|
||||||
|
(C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
|
||||||
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
|
@ -305,13 +306,13 @@ Mtftp4ConfigUnicastPort (
|
||||||
UdpConfig.ReceiveTimeout = 0;
|
UdpConfig.ReceiveTimeout = 0;
|
||||||
UdpConfig.TransmitTimeout = 0;
|
UdpConfig.TransmitTimeout = 0;
|
||||||
UdpConfig.UseDefaultAddress = Config->UseDefaultSetting;
|
UdpConfig.UseDefaultAddress = Config->UseDefaultSetting;
|
||||||
UdpConfig.StationAddress = Config->StationIp;
|
IP4_COPY_ADDRESS (&UdpConfig.StationAddress, &Config->StationIp);
|
||||||
UdpConfig.SubnetMask = Config->SubnetMask;
|
IP4_COPY_ADDRESS (&UdpConfig.SubnetMask, &Config->SubnetMask);
|
||||||
UdpConfig.StationPort = 0;
|
UdpConfig.StationPort = 0;
|
||||||
UdpConfig.RemotePort = 0;
|
UdpConfig.RemotePort = 0;
|
||||||
|
|
||||||
Ip = HTONL (Instance->ServerIp);
|
Ip = HTONL (Instance->ServerIp);
|
||||||
CopyMem (&UdpConfig.RemoteAddress, &Ip, sizeof (EFI_IPv4_ADDRESS));
|
IP4_COPY_ADDRESS (&UdpConfig.RemoteAddress, &Ip);
|
||||||
|
|
||||||
Status = UdpIo->Protocol.Udp4->Configure (UdpIo->Protocol.Udp4, &UdpConfig);
|
Status = UdpIo->Protocol.Udp4->Configure (UdpIo->Protocol.Udp4, &UdpConfig);
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
/** @file
|
/** @file
|
||||||
Routines to process Rrq (download).
|
Routines to process Rrq (download).
|
||||||
|
|
||||||
|
(C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
|
||||||
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
|
@ -413,13 +414,13 @@ Mtftp4RrqConfigMcastPort (
|
||||||
UdpConfig.ReceiveTimeout = 0;
|
UdpConfig.ReceiveTimeout = 0;
|
||||||
UdpConfig.TransmitTimeout = 0;
|
UdpConfig.TransmitTimeout = 0;
|
||||||
UdpConfig.UseDefaultAddress = Config->UseDefaultSetting;
|
UdpConfig.UseDefaultAddress = Config->UseDefaultSetting;
|
||||||
UdpConfig.StationAddress = Config->StationIp;
|
IP4_COPY_ADDRESS (&UdpConfig.StationAddress, &Config->StationIp);
|
||||||
UdpConfig.SubnetMask = Config->SubnetMask;
|
IP4_COPY_ADDRESS (&UdpConfig.SubnetMask, &Config->SubnetMask);
|
||||||
UdpConfig.StationPort = Instance->McastPort;
|
UdpConfig.StationPort = Instance->McastPort;
|
||||||
UdpConfig.RemotePort = 0;
|
UdpConfig.RemotePort = 0;
|
||||||
|
|
||||||
Ip = HTONL (Instance->ServerIp);
|
Ip = HTONL (Instance->ServerIp);
|
||||||
CopyMem (&UdpConfig.RemoteAddress, &Ip, sizeof (EFI_IPv4_ADDRESS));
|
IP4_COPY_ADDRESS (&UdpConfig.RemoteAddress, &Ip);
|
||||||
|
|
||||||
Status = McastIo->Protocol.Udp4->Configure (McastIo->Protocol.Udp4, &UdpConfig);
|
Status = McastIo->Protocol.Udp4->Configure (McastIo->Protocol.Udp4, &UdpConfig);
|
||||||
|
|
||||||
|
@ -451,7 +452,7 @@ Mtftp4RrqConfigMcastPort (
|
||||||
// join the multicast group
|
// join the multicast group
|
||||||
//
|
//
|
||||||
Ip = HTONL (Instance->McastIp);
|
Ip = HTONL (Instance->McastIp);
|
||||||
CopyMem (&Group, &Ip, sizeof (EFI_IPv4_ADDRESS));
|
IP4_COPY_ADDRESS (&Group, &Ip);
|
||||||
|
|
||||||
return McastIo->Protocol.Udp4->Groups (McastIo->Protocol.Udp4, TRUE, &Group);
|
return McastIo->Protocol.Udp4->Groups (McastIo->Protocol.Udp4, TRUE, &Group);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
/** @file
|
/** @file
|
||||||
Tcp request dispatcher implementation.
|
Tcp request dispatcher implementation.
|
||||||
|
|
||||||
|
(C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
|
||||||
Copyright (c) 2005 - 2014, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2005 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
|
@ -101,11 +102,11 @@ Tcp4GetMode (
|
||||||
|
|
||||||
AccessPoint->UseDefaultAddress = Tcb->UseDefaultAddr;
|
AccessPoint->UseDefaultAddress = Tcb->UseDefaultAddr;
|
||||||
|
|
||||||
CopyMem (&AccessPoint->StationAddress, &Tcb->LocalEnd.Ip, sizeof (EFI_IPv4_ADDRESS));
|
IP4_COPY_ADDRESS (&AccessPoint->StationAddress, &Tcb->LocalEnd.Ip);
|
||||||
AccessPoint->SubnetMask = Tcb->SubnetMask;
|
IP4_COPY_ADDRESS (&AccessPoint->SubnetMask, &Tcb->SubnetMask);
|
||||||
AccessPoint->StationPort = NTOHS (Tcb->LocalEnd.Port);
|
AccessPoint->StationPort = NTOHS (Tcb->LocalEnd.Port);
|
||||||
|
|
||||||
CopyMem (&AccessPoint->RemoteAddress, &Tcb->RemoteEnd.Ip, sizeof (EFI_IPv4_ADDRESS));
|
IP4_COPY_ADDRESS (&AccessPoint->RemoteAddress, &Tcb->RemoteEnd.Ip);
|
||||||
AccessPoint->RemotePort = NTOHS (Tcb->RemoteEnd.Port);
|
AccessPoint->RemotePort = NTOHS (Tcb->RemoteEnd.Port);
|
||||||
AccessPoint->ActiveFlag = (BOOLEAN) (Tcb->State != TCP_LISTEN);
|
AccessPoint->ActiveFlag = (BOOLEAN) (Tcb->State != TCP_LISTEN);
|
||||||
|
|
||||||
|
@ -458,7 +459,7 @@ Tcp4ConfigurePcb (
|
||||||
|
|
||||||
CopyMem (&Tcb->LocalEnd.Ip, &CfgData->AccessPoint.StationAddress, sizeof (IP4_ADDR));
|
CopyMem (&Tcb->LocalEnd.Ip, &CfgData->AccessPoint.StationAddress, sizeof (IP4_ADDR));
|
||||||
Tcb->LocalEnd.Port = HTONS (CfgData->AccessPoint.StationPort);
|
Tcb->LocalEnd.Port = HTONS (CfgData->AccessPoint.StationPort);
|
||||||
Tcb->SubnetMask = CfgData->AccessPoint.SubnetMask;
|
IP4_COPY_ADDRESS (&Tcb->SubnetMask, &CfgData->AccessPoint.SubnetMask);
|
||||||
|
|
||||||
if (CfgData->AccessPoint.ActiveFlag) {
|
if (CfgData->AccessPoint.ActiveFlag) {
|
||||||
CopyMem (&Tcb->RemoteEnd.Ip, &CfgData->AccessPoint.RemoteAddress, sizeof (IP4_ADDR));
|
CopyMem (&Tcb->RemoteEnd.Ip, &CfgData->AccessPoint.RemoteAddress, sizeof (IP4_ADDR));
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
/** @file
|
/** @file
|
||||||
|
|
||||||
|
(C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
|
||||||
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
|
@ -227,8 +228,8 @@ Udp4Configure (
|
||||||
// Save the configuration data.
|
// Save the configuration data.
|
||||||
//
|
//
|
||||||
CopyMem (&Instance->ConfigData, UdpConfigData, sizeof (Instance->ConfigData));
|
CopyMem (&Instance->ConfigData, UdpConfigData, sizeof (Instance->ConfigData));
|
||||||
Instance->ConfigData.StationAddress = Ip4ConfigData.StationAddress;
|
IP4_COPY_ADDRESS (&Instance->ConfigData.StationAddress, &Ip4ConfigData.StationAddress);
|
||||||
Instance->ConfigData.SubnetMask = Ip4ConfigData.SubnetMask;
|
IP4_COPY_ADDRESS (&Instance->ConfigData.SubnetMask, &Ip4ConfigData.SubnetMask);
|
||||||
|
|
||||||
//
|
//
|
||||||
// Try to allocate the required port resource.
|
// Try to allocate the required port resource.
|
||||||
|
@ -588,7 +589,7 @@ Udp4Transmit (
|
||||||
Udp4Header->Checksum = 0;
|
Udp4Header->Checksum = 0;
|
||||||
|
|
||||||
UdpSessionData = TxData->UdpSessionData;
|
UdpSessionData = TxData->UdpSessionData;
|
||||||
Override.Ip4OverrideData.SourceAddress = ConfigData->StationAddress;
|
IP4_COPY_ADDRESS (&Override.Ip4OverrideData.SourceAddress, &ConfigData->StationAddress);
|
||||||
|
|
||||||
if (UdpSessionData != NULL) {
|
if (UdpSessionData != NULL) {
|
||||||
//
|
//
|
||||||
|
@ -596,7 +597,7 @@ Udp4Transmit (
|
||||||
// UdpSessionData.
|
// UdpSessionData.
|
||||||
//
|
//
|
||||||
if (!EFI_IP4_EQUAL (&UdpSessionData->SourceAddress, &mZeroIp4Addr)) {
|
if (!EFI_IP4_EQUAL (&UdpSessionData->SourceAddress, &mZeroIp4Addr)) {
|
||||||
CopyMem (&Override.Ip4OverrideData.SourceAddress, &UdpSessionData->SourceAddress, sizeof (EFI_IPv4_ADDRESS));
|
IP4_COPY_ADDRESS (&Override.Ip4OverrideData.SourceAddress, &UdpSessionData->SourceAddress);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (UdpSessionData->SourcePort != 0) {
|
if (UdpSessionData->SourcePort != 0) {
|
||||||
|
@ -643,7 +644,7 @@ Udp4Transmit (
|
||||||
// Fill the IpIo Override data.
|
// Fill the IpIo Override data.
|
||||||
//
|
//
|
||||||
if (TxData->GatewayAddress != NULL) {
|
if (TxData->GatewayAddress != NULL) {
|
||||||
CopyMem (&Override.Ip4OverrideData.GatewayAddress, TxData->GatewayAddress, sizeof (EFI_IPv4_ADDRESS));
|
IP4_COPY_ADDRESS (&Override.Ip4OverrideData.GatewayAddress, TxData->GatewayAddress);
|
||||||
} else {
|
} else {
|
||||||
ZeroMem (&Override.Ip4OverrideData.GatewayAddress, sizeof (EFI_IPv4_ADDRESS));
|
ZeroMem (&Override.Ip4OverrideData.GatewayAddress, sizeof (EFI_IPv4_ADDRESS));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue