From 6e1e5405544724406f07344a5911298c3df44129 Mon Sep 17 00:00:00 2001 From: Feng Tian Date: Thu, 7 Aug 2014 08:54:34 +0000 Subject: [PATCH 1/1] 1) Add type cast for better coding style. 2) replace StrCpy() usage in Variable driver with StrnCpy(). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Feng Tian Reviewed-by: Eric Dong git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15770 6f19259b-4bc3-4df7-8a09-765794883524 --- .../Ata/AtaAtapiPassThru/AtaAtapiPassThru.c | 4 +-- MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c | 4 +-- .../Bus/Pci/NvmExpressDxe/NvmExpressHci.c | 2 +- .../Bus/Pci/PciBusDxe/PciDeviceSupport.c | 6 ++--- .../Bus/Pci/PciBusDxe/PciEnumeratorSupport.c | 6 ++--- MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c | 2 +- MdeModulePkg/Bus/Pci/UhciDxe/Uhci.c | 4 +-- MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c | 2 +- MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c | 8 +++--- MdeModulePkg/Bus/Pci/XhciPei/XhciSched.c | 8 +++--- MdeModulePkg/Core/Dxe/Event/Event.c | 2 +- MdeModulePkg/Core/Dxe/Mem/Page.c | 4 +-- MdeModulePkg/Core/Dxe/Mem/Pool.c | 6 ++--- MdeModulePkg/Core/PiSmmCore/Dispatcher.c | 2 +- MdeModulePkg/Core/PiSmmCore/PiSmmIpl.c | 4 +-- .../BaseSerialPortLib16550.c | 4 +-- .../DxePrintLibPrint2Protocol/PrintLib.c | 10 +++---- .../PiDxeS3BootScriptLib/BootScriptExecute.c | 4 +-- .../Universal/Acpi/AcpiTableDxe/Aml.c | 8 +++--- .../BootScriptExecutorDxe/ScriptExecute.c | 4 +-- MdeModulePkg/Universal/EbcDxe/EbcExecute.c | 4 +-- .../Universal/EbcDxe/Ia32/EbcSupport.c | 4 +-- .../Universal/EbcDxe/X64/EbcSupport.c | 6 ++--- MdeModulePkg/Universal/HiiDatabaseDxe/Font.c | 8 +++--- MdeModulePkg/Universal/HiiDatabaseDxe/Image.c | 12 ++++----- .../Universal/HiiDatabaseDxe/String.c | 26 +++++++++---------- .../Variable/EmuRuntimeDxe/EmuVariable.c | 10 +++---- .../Universal/Variable/RuntimeDxe/Variable.c | 12 ++++----- 28 files changed, 88 insertions(+), 88 deletions(-) diff --git a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c index 12a40d413e..6ccf0a3f01 100644 --- a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c +++ b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c @@ -717,7 +717,7 @@ AtaAtapiPassThruStart ( &Supports ); if (!EFI_ERROR (Status)) { - Supports &= EFI_PCI_DEVICE_ENABLE; + Supports &= (UINT64)EFI_PCI_DEVICE_ENABLE; Status = PciIo->Attributes ( PciIo, EfiPciIoAttributeOperationEnable, @@ -951,7 +951,7 @@ AtaAtapiPassThruStop ( &Supports ); if (!EFI_ERROR (Status)) { - Supports &= EFI_PCI_DEVICE_ENABLE; + Supports &= (UINT64)EFI_PCI_DEVICE_ENABLE; PciIo->Attributes ( PciIo, EfiPciIoAttributeOperationDisable, diff --git a/MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c b/MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c index 603d367ec5..3fcb0f9914 100644 --- a/MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c +++ b/MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c @@ -11,7 +11,7 @@ and companion host controller when UHCI or OHCI gets attached earlier than EHCI and a USB 2.0 device inserts. -Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 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 @@ -1754,7 +1754,7 @@ EhcDriverBindingStart ( &Supports ); if (!EFI_ERROR (Status)) { - Supports &= EFI_PCI_DEVICE_ENABLE; + Supports &= (UINT64)EFI_PCI_DEVICE_ENABLE; Status = PciIo->Attributes ( PciIo, EfiPciIoAttributeOperationEnable, diff --git a/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressHci.c b/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressHci.c index 8848d1a2a9..ac09fc2bd8 100644 --- a/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressHci.c +++ b/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressHci.c @@ -816,7 +816,7 @@ NvmeControllerInit ( ); if (!EFI_ERROR (Status)) { - Supports &= EFI_PCI_DEVICE_ENABLE; + Supports &= (UINT64)EFI_PCI_DEVICE_ENABLE; Status = PciIo->Attributes ( PciIo, EfiPciIoAttributeOperationEnable, diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciDeviceSupport.c b/MdeModulePkg/Bus/Pci/PciBusDxe/PciDeviceSupport.c index 0ff39a56c4..5ace222e60 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciDeviceSupport.c +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciDeviceSupport.c @@ -1,7 +1,7 @@ /** @file Supporting functions implementaion for PCI devices management. -Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 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 @@ -705,7 +705,7 @@ StartPciDevicesOnBridge ( 0, &Supports ); - Supports &= EFI_PCI_DEVICE_ENABLE; + Supports &= (UINT64)EFI_PCI_DEVICE_ENABLE; PciIoDevice->PciIo.Attributes ( &(PciIoDevice->PciIo), EfiPciIoAttributeOperationEnable, @@ -757,7 +757,7 @@ StartPciDevicesOnBridge ( 0, &Supports ); - Supports &= EFI_PCI_DEVICE_ENABLE; + Supports &= (UINT64)EFI_PCI_DEVICE_ENABLE; PciIoDevice->PciIo.Attributes ( &(PciIoDevice->PciIo), EfiPciIoAttributeOperationEnable, diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c b/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c index 26c9a33854..9e7ac74eb7 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c @@ -947,12 +947,12 @@ PciSetDeviceAttribute ( if (Option == EFI_SET_SUPPORTS) { - Attributes |= EFI_PCI_IO_ATTRIBUTE_MEMORY_WRITE_COMBINE | + Attributes |= (UINT64) (EFI_PCI_IO_ATTRIBUTE_MEMORY_WRITE_COMBINE | EFI_PCI_IO_ATTRIBUTE_MEMORY_CACHED | EFI_PCI_IO_ATTRIBUTE_MEMORY_DISABLE | EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE | EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM | - EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE; + EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE); if (IS_PCI_LPC (&PciIoDevice->Pci)) { Attributes |= EFI_PCI_IO_ATTRIBUTE_ISA_MOTHERBOARD_IO; @@ -1120,7 +1120,7 @@ DetermineDeviceAttribute ( // // Assume the PCI Root Bridge supports DAC // - PciIoDevice->Supports |= (EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE | + PciIoDevice->Supports |= (UINT64)(EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE | EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM | EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE); diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c b/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c index 2893f44d53..15d6443fd3 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c @@ -1448,7 +1448,7 @@ SupportPaletteSnoopAttributes ( // if (Operation == EfiPciIoAttributeOperationEnable) { PCI_DISABLE_COMMAND_REGISTER (Temp, EFI_PCI_COMMAND_VGA_PALETTE_SNOOP); - Temp->Attributes &= (~EFI_PCI_COMMAND_VGA_PALETTE_SNOOP); + Temp->Attributes &= (~(UINT64)EFI_PCI_COMMAND_VGA_PALETTE_SNOOP); } else { return EFI_UNSUPPORTED; } diff --git a/MdeModulePkg/Bus/Pci/UhciDxe/Uhci.c b/MdeModulePkg/Bus/Pci/UhciDxe/Uhci.c index 1c8ff0bc5b..34471ab921 100644 --- a/MdeModulePkg/Bus/Pci/UhciDxe/Uhci.c +++ b/MdeModulePkg/Bus/Pci/UhciDxe/Uhci.c @@ -2,7 +2,7 @@ The UHCI driver model and HC protocol routines. -Copyright (c) 2004 - 2012, Intel Corporation. All rights reserved.
+Copyright (c) 2004 - 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 @@ -1704,7 +1704,7 @@ UhciDriverBindingStart ( &Supports ); if (!EFI_ERROR (Status)) { - Supports &= EFI_PCI_DEVICE_ENABLE; + Supports &= (UINT64)EFI_PCI_DEVICE_ENABLE; Status = PciIo->Attributes ( PciIo, EfiPciIoAttributeOperationEnable, diff --git a/MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c b/MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c index 736c57a667..3224202bfe 100644 --- a/MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c +++ b/MdeModulePkg/Bus/Pci/XhciDxe/Xhci.c @@ -1969,7 +1969,7 @@ XhcDriverBindingStart ( &Supports ); if (!EFI_ERROR (Status)) { - Supports &= EFI_PCI_DEVICE_ENABLE; + Supports &= (UINT64)EFI_PCI_DEVICE_ENABLE; Status = PciIo->Attributes ( PciIo, EfiPciIoAttributeOperationEnable, diff --git a/MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c b/MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c index 370d9b81b2..e29e727e3c 100644 --- a/MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c +++ b/MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c @@ -2658,8 +2658,8 @@ XhcInitializeEndpointContext ( ((TRANSFER_RING *)(UINTN)Xhc->UsbDevContext[SlotId].EndpointTransferRing[Dci-1])->RingSeg0, sizeof (TRB_TEMPLATE) * TR_RING_TRB_NUMBER ); - PhyAddr &= ~(0x0F); - PhyAddr |= ((TRANSFER_RING *)(UINTN)Xhc->UsbDevContext[SlotId].EndpointTransferRing[Dci-1])->RingPCS; + PhyAddr &= ~((EFI_PHYSICAL_ADDRESS)0x0F); + PhyAddr |= (EFI_PHYSICAL_ADDRESS)((TRANSFER_RING *)(UINTN)Xhc->UsbDevContext[SlotId].EndpointTransferRing[Dci-1])->RingPCS; InputContext->EP[Dci-1].PtrLo = XHC_LOW_32BIT (PhyAddr); InputContext->EP[Dci-1].PtrHi = XHC_HIGH_32BIT (PhyAddr); @@ -2811,8 +2811,8 @@ XhcInitializeEndpointContext64 ( ((TRANSFER_RING *)(UINTN)Xhc->UsbDevContext[SlotId].EndpointTransferRing[Dci-1])->RingSeg0, sizeof (TRB_TEMPLATE) * TR_RING_TRB_NUMBER ); - PhyAddr &= ~(0x0F); - PhyAddr |= ((TRANSFER_RING *)(UINTN)Xhc->UsbDevContext[SlotId].EndpointTransferRing[Dci-1])->RingPCS; + PhyAddr &= ~((EFI_PHYSICAL_ADDRESS)0x0F); + PhyAddr |= (EFI_PHYSICAL_ADDRESS)((TRANSFER_RING *)(UINTN)Xhc->UsbDevContext[SlotId].EndpointTransferRing[Dci-1])->RingPCS; InputContext->EP[Dci-1].PtrLo = XHC_LOW_32BIT (PhyAddr); InputContext->EP[Dci-1].PtrHi = XHC_HIGH_32BIT (PhyAddr); diff --git a/MdeModulePkg/Bus/Pci/XhciPei/XhciSched.c b/MdeModulePkg/Bus/Pci/XhciPei/XhciSched.c index aedc2e8dc0..dde31e0f1a 100644 --- a/MdeModulePkg/Bus/Pci/XhciPei/XhciSched.c +++ b/MdeModulePkg/Bus/Pci/XhciPei/XhciSched.c @@ -1754,8 +1754,8 @@ XhcPeiSetConfigCmd ( ((TRANSFER_RING *) (UINTN) Xhc->UsbDevContext[SlotId].EndpointTransferRing[Dci-1])->RingSeg0, sizeof (TRB_TEMPLATE) * TR_RING_TRB_NUMBER ); - PhyAddr &= ~(0x0F); - PhyAddr |= ((TRANSFER_RING *) (UINTN) Xhc->UsbDevContext[SlotId].EndpointTransferRing[Dci-1])->RingPCS; + PhyAddr &= ~((EFI_PHYSICAL_ADDRESS)0x0F); + PhyAddr |= (EFI_PHYSICAL_ADDRESS)((TRANSFER_RING *) (UINTN) Xhc->UsbDevContext[SlotId].EndpointTransferRing[Dci-1])->RingPCS; InputContext->EP[Dci-1].PtrLo = XHC_LOW_32BIT (PhyAddr); InputContext->EP[Dci-1].PtrHi = XHC_HIGH_32BIT (PhyAddr); @@ -1948,8 +1948,8 @@ XhcPeiSetConfigCmd64 ( sizeof (TRB_TEMPLATE) * TR_RING_TRB_NUMBER ); - PhyAddr &= ~(0x0F); - PhyAddr |= ((TRANSFER_RING *) (UINTN) Xhc->UsbDevContext[SlotId].EndpointTransferRing[Dci-1])->RingPCS; + PhyAddr &= ~((EFI_PHYSICAL_ADDRESS)0x0F); + PhyAddr |= (EFI_PHYSICAL_ADDRESS)((TRANSFER_RING *) (UINTN) Xhc->UsbDevContext[SlotId].EndpointTransferRing[Dci-1])->RingPCS; InputContext->EP[Dci-1].PtrLo = XHC_LOW_32BIT (PhyAddr); InputContext->EP[Dci-1].PtrHi = XHC_HIGH_32BIT (PhyAddr); diff --git a/MdeModulePkg/Core/Dxe/Event/Event.c b/MdeModulePkg/Core/Dxe/Event/Event.c index 31003a2a56..a8c4c34d83 100644 --- a/MdeModulePkg/Core/Dxe/Event/Event.c +++ b/MdeModulePkg/Core/Dxe/Event/Event.c @@ -204,7 +204,7 @@ CoreDispatchEventNotifies ( CoreAcquireEventLock (); } - gEventPending &= ~(1 << Priority); + gEventPending &= ~(UINTN)(1 << Priority); CoreReleaseEventLock (); } diff --git a/MdeModulePkg/Core/Dxe/Mem/Page.c b/MdeModulePkg/Core/Dxe/Mem/Page.c index 90976a1f0f..f5067f663e 100644 --- a/MdeModulePkg/Core/Dxe/Mem/Page.c +++ b/MdeModulePkg/Core/Dxe/Mem/Page.c @@ -1,7 +1,7 @@ /** @file UEFI Memory page management functions. -Copyright (c) 2007 - 2013, Intel Corporation. All rights reserved.
+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 @@ -930,7 +930,7 @@ CoreFindFreePagesI ( // // Set MaxAddress to a page boundary // - MaxAddress &= ~EFI_PAGE_MASK; + MaxAddress &= ~(UINT64)EFI_PAGE_MASK; // // Set MaxAddress to end of the page diff --git a/MdeModulePkg/Core/Dxe/Mem/Pool.c b/MdeModulePkg/Core/Dxe/Mem/Pool.c index bc785a8b9c..7d250980f0 100644 --- a/MdeModulePkg/Core/Dxe/Mem/Pool.c +++ b/MdeModulePkg/Core/Dxe/Mem/Pool.c @@ -1,7 +1,7 @@ /** @file UEFI Memory pool management functions. -Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 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 @@ -274,7 +274,7 @@ CoreAllocatePoolI ( // if (Index >= MAX_POOL_LIST) { NoPages = EFI_SIZE_TO_PAGES(Size) + EFI_SIZE_TO_PAGES (DEFAULT_PAGE_ALLOCATION) - 1; - NoPages &= ~(EFI_SIZE_TO_PAGES (DEFAULT_PAGE_ALLOCATION) - 1); + NoPages &= ~(UINTN)(EFI_SIZE_TO_PAGES (DEFAULT_PAGE_ALLOCATION) - 1); Head = CoreAllocatePoolPages (PoolType, NoPages, DEFAULT_PAGE_ALLOCATION); goto Done; } @@ -473,7 +473,7 @@ CoreFreePoolI ( // Return the memory pages back to free memory // NoPages = EFI_SIZE_TO_PAGES(Size) + EFI_SIZE_TO_PAGES (DEFAULT_PAGE_ALLOCATION) - 1; - NoPages &= ~(EFI_SIZE_TO_PAGES (DEFAULT_PAGE_ALLOCATION) - 1); + NoPages &= ~(UINTN)(EFI_SIZE_TO_PAGES (DEFAULT_PAGE_ALLOCATION) - 1); CoreFreePoolPages ((EFI_PHYSICAL_ADDRESS) (UINTN) Head, NoPages); } else { diff --git a/MdeModulePkg/Core/PiSmmCore/Dispatcher.c b/MdeModulePkg/Core/PiSmmCore/Dispatcher.c index 753122ef5a..a4686306f6 100644 --- a/MdeModulePkg/Core/PiSmmCore/Dispatcher.c +++ b/MdeModulePkg/Core/PiSmmCore/Dispatcher.c @@ -519,7 +519,7 @@ SmmLoadImage ( // Align buffer on section boundry // ImageContext.ImageAddress += ImageContext.SectionAlignment - 1; - ImageContext.ImageAddress &= ~(ImageContext.SectionAlignment - 1); + ImageContext.ImageAddress &= ~((EFI_PHYSICAL_ADDRESS)(ImageContext.SectionAlignment - 1)); // // Load the image to our new buffer diff --git a/MdeModulePkg/Core/PiSmmCore/PiSmmIpl.c b/MdeModulePkg/Core/PiSmmCore/PiSmmIpl.c index 86adb1349d..b0e387401c 100644 --- a/MdeModulePkg/Core/PiSmmCore/PiSmmIpl.c +++ b/MdeModulePkg/Core/PiSmmCore/PiSmmIpl.c @@ -1,7 +1,7 @@ /** @file SMM IPL that produces SMM related runtime protocols and load the SMM Core into SMRAM - Copyright (c) 2009 - 2013, Intel Corporation. All rights reserved.
+ Copyright (c) 2009 - 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 @@ -952,7 +952,7 @@ ExecuteSmmCoreFromSmram ( } ImageContext.ImageAddress += ImageContext.SectionAlignment - 1; - ImageContext.ImageAddress &= ~(ImageContext.SectionAlignment - 1); + ImageContext.ImageAddress &= ~((EFI_PHYSICAL_ADDRESS)(ImageContext.SectionAlignment - 1)); // // Print debug message showing SMM Core load address. diff --git a/MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.c b/MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.c index fd20e1c258..2fc6031ab7 100644 --- a/MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.c +++ b/MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.c @@ -1,7 +1,7 @@ /** @file 16550 UART Serial Port library functions - Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.
+ Copyright (c) 2006 - 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 @@ -177,7 +177,7 @@ SerialPortInitialize ( } SerialPortWriteRegister (R_UART_LCR, (UINT8)(SerialPortReadRegister (R_UART_LCR) | B_UART_LCR_DLAB)); Divisor = SerialPortReadRegister (R_UART_BAUD_HIGH) << 8; - Divisor |= SerialPortReadRegister (R_UART_BAUD_LOW); + Divisor |= (UINTN)SerialPortReadRegister (R_UART_BAUD_LOW); SerialPortWriteRegister (R_UART_LCR, (UINT8)(SerialPortReadRegister (R_UART_LCR) & ~B_UART_LCR_DLAB)); if (Divisor != 115200 / PcdGet32 (PcdSerialBaudRate)) { Initialized = FALSE; diff --git a/MdeModulePkg/Library/DxePrintLibPrint2Protocol/PrintLib.c b/MdeModulePkg/Library/DxePrintLibPrint2Protocol/PrintLib.c index c0750ad176..caff040999 100644 --- a/MdeModulePkg/Library/DxePrintLibPrint2Protocol/PrintLib.c +++ b/MdeModulePkg/Library/DxePrintLibPrint2Protocol/PrintLib.c @@ -6,7 +6,7 @@ protocol related to this implementation, not in the public spec. So, this library instance is only for this code base. -Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved.
+Copyright (c) 2009 - 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 @@ -1235,7 +1235,7 @@ InternalPrintLibSPrintMarker ( // // Clear all the flag bits except those that may have been passed in // - Flags &= (OUTPUT_UNICODE | FORMAT_UNICODE | COUNT_ONLY_NO_PRINT); + Flags &= (UINTN)(OUTPUT_UNICODE | FORMAT_UNICODE | COUNT_ONLY_NO_PRINT); // // Set the default width to zero, and the default precision to 1 @@ -1343,7 +1343,7 @@ InternalPrintLibSPrintMarker ( // // Flag space, +, 0, L & l are invalid for type p. // - Flags &= ~(PREFIX_BLANK | PREFIX_SIGN | PREFIX_ZERO | LONG_TYPE); + Flags &= ~(UINTN)(PREFIX_BLANK | PREFIX_SIGN | PREFIX_ZERO | LONG_TYPE); if (sizeof (VOID *) > 4) { Flags |= LONG_TYPE; } @@ -1391,7 +1391,7 @@ InternalPrintLibSPrintMarker ( if ((Flags & RADIX_HEX) == 0) { Radix = 10; if (Comma) { - Flags &= (~PREFIX_ZERO); + Flags &= (~(UINTN)PREFIX_ZERO); Precision = 1; } if (Value < 0) { @@ -1460,7 +1460,7 @@ InternalPrintLibSPrintMarker ( ArgumentString = BASE_ARG (BaseListMarker, CHAR8 *); } if (ArgumentString == NULL) { - Flags &= (~ARGUMENT_UNICODE); + Flags &= (~(UINTN)ARGUMENT_UNICODE); ArgumentString = ""; } // diff --git a/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptExecute.c b/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptExecute.c index cba331a3bd..c32685984e 100644 --- a/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptExecute.c +++ b/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptExecute.c @@ -1,7 +1,7 @@ /** @file Interpret and execute the S3 data in S3 boot script. - Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.
+ Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions @@ -1312,7 +1312,7 @@ CheckAndOrMask ( switch (ScriptHeader->Width) { case S3BootScriptWidthUint8: - *AndMask = (UINT64) *(DataPtr + 1); + *AndMask = (UINT64) (*(UINT8*) (DataPtr + 1)); *OrMask = (UINT64) (*DataPtr); break; diff --git a/MdeModulePkg/Universal/Acpi/AcpiTableDxe/Aml.c b/MdeModulePkg/Universal/Acpi/AcpiTableDxe/Aml.c index a7b53e27bd..30f71bdda4 100644 --- a/MdeModulePkg/Universal/Acpi/AcpiTableDxe/Aml.c +++ b/MdeModulePkg/Universal/Acpi/AcpiTableDxe/Aml.c @@ -1,7 +1,7 @@ /** @file ACPI Sdt Protocol Driver - Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.
+ Copyright (c) 2010 - 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 @@ -282,13 +282,13 @@ AmlGetPkgLength ( break; case 2: RealLength = *(Buffer + 1); - RealLength |= (*(Buffer + 2)) << 8; + RealLength |= (UINTN)((*(Buffer + 2)) << 8); RealLength = (RealLength << 4) | (LeadByte & 0xF); break; case 3: RealLength = *(Buffer + 1); - RealLength |= (*(Buffer + 2)) << 8; - RealLength |= (*(Buffer + 3)) << 16; + RealLength |= (UINTN)((*(Buffer + 2)) << 8); + RealLength |= (UINTN)((*(Buffer + 3)) << 16); RealLength = (RealLength << 4) | (LeadByte & 0xF); break; default: diff --git a/MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/ScriptExecute.c b/MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/ScriptExecute.c index ab185874c0..6c1c304a15 100644 --- a/MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/ScriptExecute.c +++ b/MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/ScriptExecute.c @@ -4,7 +4,7 @@ This driver is dispatched by Dxe core and the driver will reload itself to ACPI reserved memory in the entry point. The functionality is to interpret and restore the S3 boot script -Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 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 @@ -280,7 +280,7 @@ ReadyToLockEventNotify ( // Align buffer on section boundry // ImageContext.ImageAddress += ImageContext.SectionAlignment - 1; - ImageContext.ImageAddress &= ~(ImageContext.SectionAlignment - 1); + ImageContext.ImageAddress &= ~((EFI_PHYSICAL_ADDRESS)(ImageContext.SectionAlignment - 1)); // // Load the image to our new buffer // diff --git a/MdeModulePkg/Universal/EbcDxe/EbcExecute.c b/MdeModulePkg/Universal/EbcDxe/EbcExecute.c index 69aee07ea9..433eea250f 100644 --- a/MdeModulePkg/Universal/EbcDxe/EbcExecute.c +++ b/MdeModulePkg/Universal/EbcDxe/EbcExecute.c @@ -3269,7 +3269,7 @@ ExecuteCMP ( if (Flag != 0) { VMFLAG_SET (VmPtr, VMFLAGS_CC); } else { - VMFLAG_CLEAR (VmPtr, VMFLAGS_CC); + VMFLAG_CLEAR (VmPtr, (UINT64)VMFLAGS_CC); } // // Advance the IP @@ -3448,7 +3448,7 @@ ExecuteCMPI ( if (Flag != 0) { VMFLAG_SET (VmPtr, VMFLAGS_CC); } else { - VMFLAG_CLEAR (VmPtr, VMFLAGS_CC); + VMFLAG_CLEAR (VmPtr, (UINT64)VMFLAGS_CC); } // // Advance the IP diff --git a/MdeModulePkg/Universal/EbcDxe/Ia32/EbcSupport.c b/MdeModulePkg/Universal/EbcDxe/Ia32/EbcSupport.c index 41dc3a8585..bddfbf630d 100644 --- a/MdeModulePkg/Universal/EbcDxe/Ia32/EbcSupport.c +++ b/MdeModulePkg/Universal/EbcDxe/Ia32/EbcSupport.c @@ -2,7 +2,7 @@ This module contains EBC support routines that are customized based on the target ia32 processor. -Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 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 @@ -267,7 +267,7 @@ EbcInterpret ( VmContext.StackTop = (UINT8*)VmContext.StackPool + (STACK_REMAIN_SIZE); VmContext.Gpr[0] = (UINT64)(UINTN) ((UINT8*)VmContext.StackPool + STACK_POOL_SIZE); VmContext.HighStackBottom = (UINTN)VmContext.Gpr[0]; - VmContext.Gpr[0] &= ~(sizeof (UINTN) - 1); + VmContext.Gpr[0] &= ~((VM_REGISTER)(sizeof (UINTN) - 1)); VmContext.Gpr[0] -= sizeof (UINTN); // diff --git a/MdeModulePkg/Universal/EbcDxe/X64/EbcSupport.c b/MdeModulePkg/Universal/EbcDxe/X64/EbcSupport.c index 3f99a1a6e2..bdde5e41fa 100644 --- a/MdeModulePkg/Universal/EbcDxe/X64/EbcSupport.c +++ b/MdeModulePkg/Universal/EbcDxe/X64/EbcSupport.c @@ -2,7 +2,7 @@ This module contains EBC support routines that are customized based on the target x64 processor. -Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 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 @@ -215,7 +215,7 @@ EbcInterpret ( // // Align the stack on a natural boundary. // - VmContext.Gpr[0] &= ~(sizeof (UINTN) - 1); + VmContext.Gpr[0] &= ~(VM_REGISTER)(sizeof (UINTN) - 1); // // Put a magic value in the stack gap, then adjust down again. @@ -359,7 +359,7 @@ ExecuteEbcImageEntryPoint ( // // Align the stack on a natural boundary - VmContext.Gpr[0] &= ~(sizeof(UINTN) - 1); + VmContext.Gpr[0] &= ~(VM_REGISTER)(sizeof(UINTN) - 1); // VmContext.LowStackTop = (UINTN) VmContext.Gpr[0]; diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/Font.c b/MdeModulePkg/Universal/HiiDatabaseDxe/Font.c index eef31d5bb8..6cc350c42d 100644 --- a/MdeModulePkg/Universal/HiiDatabaseDxe/Font.c +++ b/MdeModulePkg/Universal/HiiDatabaseDxe/Font.c @@ -757,12 +757,12 @@ FindGlyphBlock ( break; case EFI_HII_GIBT_EXT1: - BlockPtr += *(BlockPtr + sizeof (EFI_HII_GLYPH_BLOCK) + sizeof (UINT8)); + BlockPtr += *(UINT8*)((UINTN)BlockPtr + sizeof (EFI_HII_GLYPH_BLOCK) + sizeof (UINT8)); break; case EFI_HII_GIBT_EXT2: CopyMem ( &Length16, - BlockPtr + sizeof (EFI_HII_GLYPH_BLOCK) + sizeof (UINT8), + (UINT8*)((UINTN)BlockPtr + sizeof (EFI_HII_GLYPH_BLOCK) + sizeof (UINT8)), sizeof (UINT16) ); BlockPtr += Length16; @@ -770,7 +770,7 @@ FindGlyphBlock ( case EFI_HII_GIBT_EXT4: CopyMem ( &Length32, - BlockPtr + sizeof (EFI_HII_GLYPH_BLOCK) + sizeof (UINT8), + (UINT8*)((UINTN)BlockPtr + sizeof (EFI_HII_GLYPH_BLOCK) + sizeof (UINT8)), sizeof (UINT32) ); BlockPtr += Length32; @@ -793,7 +793,7 @@ FindGlyphBlock ( BufferLen = BITMAP_LEN_1_BIT (LocalCell.Width, LocalCell.Height); if (CharCurrent == CharValue) { return WriteOutputParam ( - BlockPtr + sizeof (EFI_HII_GIBT_GLYPH_BLOCK) - sizeof (UINT8), + (UINT8*)((UINTN)BlockPtr + sizeof (EFI_HII_GIBT_GLYPH_BLOCK) - sizeof (UINT8)), BufferLen, &LocalCell, GlyphBuffer, diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/Image.c b/MdeModulePkg/Universal/HiiDatabaseDxe/Image.c index ed0cf83c48..560cf8fe2c 100644 --- a/MdeModulePkg/Universal/HiiDatabaseDxe/Image.c +++ b/MdeModulePkg/Universal/HiiDatabaseDxe/Image.c @@ -79,13 +79,13 @@ GetImageIdOrAddress ( } switch (((EFI_HII_IMAGE_BLOCK *) ImageBlock)->BlockType) { case EFI_HII_IIBT_EXT1: - Length8 = *(ImageBlock + sizeof (EFI_HII_IMAGE_BLOCK) + sizeof (UINT8)); + Length8 = *(UINT8*)((UINTN)ImageBlock + sizeof (EFI_HII_IMAGE_BLOCK) + sizeof (UINT8)); ImageBlock += Length8; break; case EFI_HII_IIBT_EXT2: CopyMem ( &Length16, - ImageBlock + sizeof (EFI_HII_IMAGE_BLOCK) + sizeof (UINT8), + (UINT8*)((UINTN)ImageBlock + sizeof (EFI_HII_IMAGE_BLOCK) + sizeof (UINT8)), sizeof (UINT16) ); ImageBlock += Length16; @@ -93,7 +93,7 @@ GetImageIdOrAddress ( case EFI_HII_IIBT_EXT4: CopyMem ( &Length32, - ImageBlock + sizeof (EFI_HII_IMAGE_BLOCK) + sizeof (UINT8), + (UINT8*)((UINTN)ImageBlock + sizeof (EFI_HII_IMAGE_BLOCK) + sizeof (UINT8)), sizeof (UINT32) ); ImageBlock += Length32; @@ -920,19 +920,19 @@ HiiGetImage ( if (BlockType == EFI_HII_IIBT_IMAGE_1BIT || BlockType == EFI_HII_IIBT_IMAGE_1BIT_TRANS) { Output1bitPixel ( Image, - (UINT8 *) (ImageBlock + sizeof (EFI_HII_IIBT_IMAGE_1BIT_BLOCK) - sizeof (UINT8)), + (UINT8 *) ((UINTN)ImageBlock + sizeof (EFI_HII_IIBT_IMAGE_1BIT_BLOCK) - sizeof (UINT8)), (EFI_HII_IMAGE_PALETTE_INFO *) PaletteInfo ); } else if (BlockType == EFI_HII_IIBT_IMAGE_4BIT || BlockType == EFI_HII_IIBT_IMAGE_4BIT_TRANS) { Output4bitPixel ( Image, - (UINT8 *) (ImageBlock + sizeof (EFI_HII_IIBT_IMAGE_4BIT_BLOCK) - sizeof (UINT8)), + (UINT8 *) ((UINTN)ImageBlock + sizeof (EFI_HII_IIBT_IMAGE_4BIT_BLOCK) - sizeof (UINT8)), (EFI_HII_IMAGE_PALETTE_INFO *) PaletteInfo ); } else { Output8bitPixel ( Image, - (UINT8 *) (ImageBlock + sizeof (EFI_HII_IIBT_IMAGE_8BIT_BLOCK) - sizeof (UINT8)), + (UINT8 *) ((UINTN)ImageBlock + sizeof (EFI_HII_IIBT_IMAGE_8BIT_BLOCK) - sizeof (UINT8)), (EFI_HII_IMAGE_PALETTE_INFO *) PaletteInfo ); } diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/String.c b/MdeModulePkg/Universal/HiiDatabaseDxe/String.c index f3c0555cbc..1f4be0c405 100644 --- a/MdeModulePkg/Universal/HiiDatabaseDxe/String.c +++ b/MdeModulePkg/Universal/HiiDatabaseDxe/String.c @@ -2,7 +2,7 @@ Implementation for EFI_HII_STRING_PROTOCOL. -Copyright (c) 2007 - 2012, Intel Corporation. All rights reserved.
+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 @@ -335,7 +335,7 @@ FindStringBlock ( case EFI_HII_SIBT_STRINGS_SCSU: CopyMem (&StringCount, BlockHdr + sizeof (EFI_HII_STRING_BLOCK), sizeof (UINT16)); - StringTextPtr = BlockHdr + sizeof (EFI_HII_SIBT_STRINGS_SCSU_BLOCK) - sizeof (UINT8); + StringTextPtr = (UINT8*)((UINTN)BlockHdr + sizeof (EFI_HII_SIBT_STRINGS_SCSU_BLOCK) - sizeof (UINT8)); BlockSize += StringTextPtr - BlockHdr; for (Index = 0; Index < StringCount; Index++) { @@ -355,10 +355,10 @@ FindStringBlock ( case EFI_HII_SIBT_STRINGS_SCSU_FONT: CopyMem ( &StringCount, - BlockHdr + sizeof (EFI_HII_STRING_BLOCK) + sizeof (UINT8), + (UINT8*)((UINTN)BlockHdr + sizeof (EFI_HII_STRING_BLOCK) + sizeof (UINT8)), sizeof (UINT16) ); - StringTextPtr = BlockHdr + sizeof (EFI_HII_SIBT_STRINGS_SCSU_FONT_BLOCK) - sizeof (UINT8); + StringTextPtr = (UINT8*)((UINTN)BlockHdr + sizeof (EFI_HII_SIBT_STRINGS_SCSU_FONT_BLOCK) - sizeof (UINT8)); BlockSize += StringTextPtr - BlockHdr; for (Index = 0; Index < StringCount; Index++) { @@ -425,7 +425,7 @@ FindStringBlock ( BlockSize += Offset; CopyMem ( &StringCount, - BlockHdr + sizeof (EFI_HII_STRING_BLOCK) + sizeof (UINT8), + (UINT8*)((UINTN)BlockHdr + sizeof (EFI_HII_STRING_BLOCK) + sizeof (UINT8)), sizeof (UINT16) ); for (Index = 0; Index < StringCount; Index++) { @@ -465,7 +465,7 @@ FindStringBlock ( break; case EFI_HII_SIBT_SKIP1: - SkipCount = (UINT16) (*(BlockHdr + sizeof (EFI_HII_STRING_BLOCK))); + SkipCount = (UINT16) (*(UINT8*)((UINTN)BlockHdr + sizeof (EFI_HII_STRING_BLOCK))); CurrentStringId = (UINT16) (CurrentStringId + SkipCount); BlockSize += sizeof (EFI_HII_SIBT_SKIP1_BLOCK); break; @@ -479,7 +479,7 @@ FindStringBlock ( case EFI_HII_SIBT_EXT1: CopyMem ( &Length8, - BlockHdr + sizeof (EFI_HII_STRING_BLOCK) + sizeof (UINT8), + (UINT8*)((UINTN)BlockHdr + sizeof (EFI_HII_STRING_BLOCK) + sizeof (UINT8)), sizeof (UINT8) ); BlockSize += Length8; @@ -494,7 +494,7 @@ FindStringBlock ( // BlockHdr += sizeof (EFI_HII_SIBT_EXT2_BLOCK); CopyMem (&FontId, BlockHdr, sizeof (UINT8)); - BlockHdr += sizeof (UINT8); + BlockHdr ++; CopyMem (&FontSize, BlockHdr, sizeof (UINT16)); BlockHdr += sizeof (UINT16); CopyMem (&FontStyle, BlockHdr, sizeof (EFI_HII_FONT_STYLE)); @@ -535,7 +535,7 @@ FindStringBlock ( case EFI_HII_SIBT_EXT4: CopyMem ( &Length32, - BlockHdr + sizeof (EFI_HII_STRING_BLOCK) + sizeof (UINT8), + (UINT8*)((UINTN)BlockHdr + sizeof (EFI_HII_STRING_BLOCK) + sizeof (UINT8)), sizeof (UINT32) ); @@ -1080,7 +1080,7 @@ SetStringWorker ( BlockPtr += sizeof (EFI_HII_SIBT_EXT2_BLOCK); *BlockPtr = LocalFont->FontId; - BlockPtr += sizeof (UINT8); + BlockPtr ++; CopyMem (BlockPtr, &GlobalFont->FontInfo->FontSize, sizeof (UINT16)); BlockPtr += sizeof (UINT16); CopyMem (BlockPtr, &GlobalFont->FontInfo->FontStyle, sizeof (UINT32)); @@ -1442,7 +1442,7 @@ HiiNewString ( *BlockPtr = EFI_HII_SIBT_STRING_UCS2_FONT; BlockPtr += sizeof (EFI_HII_STRING_BLOCK); *BlockPtr = LocalFont->FontId; - BlockPtr += sizeof (UINT8); + BlockPtr ++; CopyMem (BlockPtr, (EFI_STRING) String, StrSize ((EFI_STRING) String)); BlockPtr += StrSize ((EFI_STRING) String); @@ -1486,7 +1486,7 @@ HiiNewString ( BlockPtr += sizeof (EFI_HII_SIBT_EXT2_BLOCK); *BlockPtr = LocalFont->FontId; - BlockPtr += sizeof (UINT8); + BlockPtr ++; CopyMem (BlockPtr, &((EFI_FONT_INFO *) StringFontInfo)->FontSize, sizeof (UINT16)); BlockPtr += sizeof (UINT16); CopyMem (BlockPtr, &((EFI_FONT_INFO *) StringFontInfo)->FontStyle, sizeof (EFI_HII_FONT_STYLE)); @@ -1503,7 +1503,7 @@ HiiNewString ( *BlockPtr = EFI_HII_SIBT_STRING_UCS2_FONT; BlockPtr += sizeof (EFI_HII_STRING_BLOCK); *BlockPtr = LocalFont->FontId; - BlockPtr += sizeof (UINT8); + BlockPtr ++; CopyMem (BlockPtr, (EFI_STRING) String, StrSize ((EFI_STRING) String)); BlockPtr += StrSize ((EFI_STRING) String); diff --git a/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c b/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c index ae31e3ac59..e0768404f9 100644 --- a/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c +++ b/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c @@ -3,7 +3,7 @@ Emulation Variable services operate on the runtime volatile memory. The nonvolatile variable space doesn't exist. -Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 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 @@ -320,9 +320,9 @@ UpdateVariableInfo ( ASSERT (gVariableInfo != NULL); CopyGuid (&gVariableInfo->VendorGuid, VendorGuid); - gVariableInfo->Name = AllocatePool (StrSize (VariableName)); + gVariableInfo->Name = AllocateZeroPool (StrSize (VariableName)); ASSERT (gVariableInfo->Name != NULL); - StrCpy (gVariableInfo->Name, VariableName); + StrnCpy (gVariableInfo->Name, VariableName, StrLen (VariableName)); gVariableInfo->Volatile = Volatile; gBS->InstallConfigurationTable (&gEfiVariableGuid, gVariableInfo); @@ -358,9 +358,9 @@ UpdateVariableInfo ( ASSERT (Entry->Next != NULL); CopyGuid (&Entry->Next->VendorGuid, VendorGuid); - Entry->Next->Name = AllocatePool (StrSize (VariableName)); + Entry->Next->Name = AllocateZeroPool (StrSize (VariableName)); ASSERT (Entry->Next->Name != NULL); - StrCpy (Entry->Next->Name, VariableName); + StrnCpy (Entry->Next->Name, VariableName, StrLen (VariableName)); Entry->Next->Volatile = Volatile; } diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c index 9101da37a6..fc7fbab5d6 100644 --- a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c +++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c @@ -139,9 +139,9 @@ UpdateVariableInfo ( ASSERT (gVariableInfo != NULL); CopyGuid (&gVariableInfo->VendorGuid, VendorGuid); - gVariableInfo->Name = AllocatePool (StrSize (VariableName)); + gVariableInfo->Name = AllocateZeroPool (StrSize (VariableName)); ASSERT (gVariableInfo->Name != NULL); - StrCpy (gVariableInfo->Name, VariableName); + StrnCpy (gVariableInfo->Name, VariableName, StrLen (VariableName)); gVariableInfo->Volatile = Volatile; } @@ -175,9 +175,9 @@ UpdateVariableInfo ( ASSERT (Entry->Next != NULL); CopyGuid (&Entry->Next->VendorGuid, VendorGuid); - Entry->Next->Name = AllocatePool (StrSize (VariableName)); + Entry->Next->Name = AllocateZeroPool (StrSize (VariableName)); ASSERT (Entry->Next->Name != NULL); - StrCpy (Entry->Next->Name, VariableName); + StrnCpy (Entry->Next->Name, VariableName, StrLen (VariableName)); Entry->Next->Volatile = Volatile; } @@ -2251,7 +2251,7 @@ VariableLockRequestToLock ( return EFI_ACCESS_DENIED; } - Entry = AllocateRuntimePool (sizeof (*Entry) + StrSize (VariableName)); + Entry = AllocateRuntimeZeroPool (sizeof (*Entry) + StrSize (VariableName)); if (Entry == NULL) { return EFI_OUT_OF_RESOURCES; } @@ -2261,7 +2261,7 @@ VariableLockRequestToLock ( AcquireLockOnlyAtBootTime(&mVariableModuleGlobal->VariableGlobal.VariableServicesLock); Entry->Name = (CHAR16 *) (Entry + 1); - StrCpy (Entry->Name, VariableName); + StrnCpy (Entry->Name, VariableName, StrLen (VariableName)); CopyGuid (&Entry->Guid, VendorGuid); InsertTailList (&mLockedVariableList, &Entry->Link); -- 2.39.2