diff mbox

[edk2,v3,3/6] ArmPkg/LinuxLoader: eliminate calls to deprecated string functions

Message ID 1477646896-21444-4-git-send-email-ard.biesheuvel@linaro.org
State Accepted
Commit 9fbbbd1222225981c25ede166426c37920901559
Headers show

Commit Message

Ard Biesheuvel Oct. 28, 2016, 9:28 a.m. UTC
Remove calls to deprecated string functions like AsciiStrCpy() and
UnicodeStrToAsciiStr()

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

Tested-by: Ryan Harkin <ryan.harkin@linaro.org>

Reviewed-by: Laszlo Ersek <lersek@redhat.com>

---
 ArmPkg/Application/LinuxLoader/Arm/LinuxAtag.c | 2 +-
 ArmPkg/Application/LinuxLoader/LinuxLoader.c   | 6 ++++--
 2 files changed, 5 insertions(+), 3 deletions(-)

-- 
2.7.4

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Comments

Leif Lindholm Oct. 28, 2016, 10:52 a.m. UTC | #1
On Fri, Oct 28, 2016 at 10:28:13AM +0100, Ard Biesheuvel wrote:
> Remove calls to deprecated string functions like AsciiStrCpy() and

> UnicodeStrToAsciiStr()

> 

> Contributed-under: TianoCore Contribution Agreement 1.0

> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

> Tested-by: Ryan Harkin <ryan.harkin@linaro.org>

> Reviewed-by: Laszlo Ersek <lersek@redhat.com>


Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>


> ---

>  ArmPkg/Application/LinuxLoader/Arm/LinuxAtag.c | 2 +-

>  ArmPkg/Application/LinuxLoader/LinuxLoader.c   | 6 ++++--

>  2 files changed, 5 insertions(+), 3 deletions(-)

> 

> diff --git a/ArmPkg/Application/LinuxLoader/Arm/LinuxAtag.c b/ArmPkg/Application/LinuxLoader/Arm/LinuxAtag.c

> index fd7ee9c8624d..0b3e2489c758 100644

> --- a/ArmPkg/Application/LinuxLoader/Arm/LinuxAtag.c

> +++ b/ArmPkg/Application/LinuxLoader/Arm/LinuxAtag.c

> @@ -72,7 +72,7 @@ SetupCmdlineTag (

>      mLinuxKernelCurrentAtag->header.type = ATAG_CMDLINE;

>  

>      /* place CommandLine into tag */

> -    AsciiStrCpy (mLinuxKernelCurrentAtag->body.cmdline_tag.cmdline, CmdLine);

> +    AsciiStrCpyS (mLinuxKernelCurrentAtag->body.cmdline_tag.cmdline, LineLength, CmdLine);

>  

>      // move pointer to next tag

>      mLinuxKernelCurrentAtag = next_tag_address (mLinuxKernelCurrentAtag);

> diff --git a/ArmPkg/Application/LinuxLoader/LinuxLoader.c b/ArmPkg/Application/LinuxLoader/LinuxLoader.c

> index 70b960b66f0e..76697c3a8c9d 100644

> --- a/ArmPkg/Application/LinuxLoader/LinuxLoader.c

> +++ b/ArmPkg/Application/LinuxLoader/LinuxLoader.c

> @@ -61,6 +61,7 @@ LinuxLoaderEntryPoint (

>    LIST_ENTRY                          *ResourceLink;

>    SYSTEM_MEMORY_RESOURCE              *Resource;

>    EFI_PHYSICAL_ADDRESS                SystemMemoryBase;

> +  UINTN                               Length;

>  

>    Status = gBS->LocateProtocol (

>                    &gEfiDevicePathFromTextProtocolGuid,

> @@ -182,12 +183,13 @@ LinuxLoaderEntryPoint (

>    }

>  

>    if (LinuxCommandLine != NULL) {

> -    AsciiLinuxCommandLine = AllocatePool ((StrLen (LinuxCommandLine) + 1) * sizeof (CHAR8));

> +    Length = StrLen (LinuxCommandLine) + 1;

> +    AsciiLinuxCommandLine = AllocatePool (Length);

>      if (AsciiLinuxCommandLine == NULL) {

>        Status = EFI_OUT_OF_RESOURCES;

>        goto Error;

>      }

> -    UnicodeStrToAsciiStr (LinuxCommandLine, AsciiLinuxCommandLine);

> +    UnicodeStrToAsciiStrS (LinuxCommandLine, AsciiLinuxCommandLine, Length);

>    }

>  

>    //

> -- 

> 2.7.4

> 

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
diff mbox

Patch

diff --git a/ArmPkg/Application/LinuxLoader/Arm/LinuxAtag.c b/ArmPkg/Application/LinuxLoader/Arm/LinuxAtag.c
index fd7ee9c8624d..0b3e2489c758 100644
--- a/ArmPkg/Application/LinuxLoader/Arm/LinuxAtag.c
+++ b/ArmPkg/Application/LinuxLoader/Arm/LinuxAtag.c
@@ -72,7 +72,7 @@  SetupCmdlineTag (
     mLinuxKernelCurrentAtag->header.type = ATAG_CMDLINE;
 
     /* place CommandLine into tag */
-    AsciiStrCpy (mLinuxKernelCurrentAtag->body.cmdline_tag.cmdline, CmdLine);
+    AsciiStrCpyS (mLinuxKernelCurrentAtag->body.cmdline_tag.cmdline, LineLength, CmdLine);
 
     // move pointer to next tag
     mLinuxKernelCurrentAtag = next_tag_address (mLinuxKernelCurrentAtag);
diff --git a/ArmPkg/Application/LinuxLoader/LinuxLoader.c b/ArmPkg/Application/LinuxLoader/LinuxLoader.c
index 70b960b66f0e..76697c3a8c9d 100644
--- a/ArmPkg/Application/LinuxLoader/LinuxLoader.c
+++ b/ArmPkg/Application/LinuxLoader/LinuxLoader.c
@@ -61,6 +61,7 @@  LinuxLoaderEntryPoint (
   LIST_ENTRY                          *ResourceLink;
   SYSTEM_MEMORY_RESOURCE              *Resource;
   EFI_PHYSICAL_ADDRESS                SystemMemoryBase;
+  UINTN                               Length;
 
   Status = gBS->LocateProtocol (
                   &gEfiDevicePathFromTextProtocolGuid,
@@ -182,12 +183,13 @@  LinuxLoaderEntryPoint (
   }
 
   if (LinuxCommandLine != NULL) {
-    AsciiLinuxCommandLine = AllocatePool ((StrLen (LinuxCommandLine) + 1) * sizeof (CHAR8));
+    Length = StrLen (LinuxCommandLine) + 1;
+    AsciiLinuxCommandLine = AllocatePool (Length);
     if (AsciiLinuxCommandLine == NULL) {
       Status = EFI_OUT_OF_RESOURCES;
       goto Error;
     }
-    UnicodeStrToAsciiStr (LinuxCommandLine, AsciiLinuxCommandLine);
+    UnicodeStrToAsciiStrS (LinuxCommandLine, AsciiLinuxCommandLine, Length);
   }
 
   //