public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Gao, Zhichao" <zhichao.gao@intel.com>
To: "devel@edk2.groups.io" <devel@edk2.groups.io>,
	"Gao, Zhichao" <zhichao.gao@intel.com>
Cc: "Carsey, Jaben" <jaben.carsey@intel.com>,
	"Ni, Ray" <ray.ni@intel.com>, Andrew Fish <afish@apple.com>
Subject: Re: [edk2-devel] [PATCH V2] ShellPkg/UefiHandleParsingLib: Fix incorrect reallocate pool
Date: Mon, 2 Sep 2019 08:51:19 +0000	[thread overview]
Message-ID: <3CE959C139B4C44DBEA1810E3AA6F9000B833EE7@SHSMSX101.ccr.corp.intel.com> (raw)
In-Reply-To: <15B3A870E6EA7BDB.7925@groups.io>

Hi Ray,

Please help to review this patch.

Thanks,
Zhichao

> -----Original Message-----
> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
> Gao, Zhichao
> Sent: Monday, July 22, 2019 2:58 PM
> To: devel@edk2.groups.io
> Cc: Carsey, Jaben <jaben.carsey@intel.com>; Ni, Ray <ray.ni@intel.com>;
> Andrew Fish <afish@apple.com>
> Subject: [edk2-devel] [PATCH V2] ShellPkg/UefiHandleParsingLib: Fix
> incorrect reallocate pool
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1965
> 
> For function InsertNewGuidNameMapping, it rellocate the mGuidList with
> new size
> "mGuidListCount+1 * sizeof(GUID_INFO_BLOCK)". That isn't its purpose and
> would cause a overflow operation in "mGuidList[mGuidListCount - 1].xxx =
> xxx". Its purpose is to increase 1 block size of mGuidList. Change it to
> "(mGuidListCount + 1) * sizeof (GUID_INFO_BLOCK)".
> 
> Adjust the coding style of this function.
> 
> Cc: Jaben Carsey <jaben.carsey@intel.com>
> Cc: Ray Ni <ray.ni@intel.com>
> Cc: Andrew Fish <afish@apple.com>
> Signed-off-by: Zhichao Gao <zhichao.gao@intel.com>
> ---
> 
> V2:
> Update the copyright.
> 
>  .../UefiHandleParsingLib/UefiHandleParsingLib.c    | 14 +++++++++-----
>  1 file changed, 9 insertions(+), 5 deletions(-)
> 
> diff --git a/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c
> b/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c
> index f179c41092..43c19b9a91 100644
> --- a/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c
> +++ b/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c
> @@ -1,7 +1,7 @@
>  /** @file
>    Provides interface to advanced shell functionality for parsing both handle
> and protocol database.
> 
> -  Copyright (c) 2010 - 2017, Intel Corporation. All rights reserved.<BR>
> +  Copyright (c) 2010 - 2019, Intel Corporation. All rights
> + reserved.<BR>
>    (C) Copyright 2013-2015 Hewlett-Packard Development Company, L.P.<BR>
>    (C) Copyright 2015-2016 Hewlett Packard Enterprise Development LP<BR>
>    SPDX-License-Identifier: BSD-2-Clause-Patent @@ -2462,17 +2462,21 @@
> InsertNewGuidNameMapping(
>    IN CONST DUMP_PROTOCOL_INFO DumpFunc OPTIONAL
>    )
>  {
> -  ASSERT(Guid   != NULL);
> -  ASSERT(NameID != 0);
> +  ASSERT (Guid   != NULL);
> +  ASSERT (NameID != 0);
> 
> -  mGuidList = ReallocatePool(mGuidListCount * sizeof(GUID_INFO_BLOCK),
> mGuidListCount+1 * sizeof(GUID_INFO_BLOCK), mGuidList);
> +  mGuidList = ReallocatePool (
> +                mGuidListCount * sizeof (GUID_INFO_BLOCK),
> +                (mGuidListCount + 1) * sizeof (GUID_INFO_BLOCK),
> +                mGuidList
> +                );
>    if (mGuidList == NULL) {
>      mGuidListCount = 0;
>      return (EFI_OUT_OF_RESOURCES);
>    }
>    mGuidListCount++;
> 
> -  mGuidList[mGuidListCount - 1].GuidId   =
> AllocateCopyPool(sizeof(EFI_GUID), Guid);
> +  mGuidList[mGuidListCount - 1].GuidId   = AllocateCopyPool (sizeof
> (EFI_GUID), Guid);
>    mGuidList[mGuidListCount - 1].StringId = NameID;
>    mGuidList[mGuidListCount - 1].DumpInfo = DumpFunc;
> 
> --
> 2.21.0.windows.1
> 
> 
> 


  parent reply	other threads:[~2019-09-02  8:51 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-22  6:57 [PATCH V2] ShellPkg/Pci.c: Update supported link speed to PCI4.0 Gao, Zhichao
2019-07-22  6:57 ` [PATCH V2] ShellPkg/UefiHandleParsingLib: Fix incorrect reallocate pool Gao, Zhichao
2019-07-22  6:57 ` [PATCH V2] ShellPkg/UefiShellDriver1CommandsLib: Make array big enough Gao, Zhichao
     [not found] ` <15B3A871197D540E.29669@groups.io>
2019-07-26  7:46   ` FW: [edk2-devel] " Gao, Zhichao
     [not found]   ` <15B4E567EC0F1559.24302@groups.io>
2019-08-14  8:33     ` Gao, Zhichao
2019-08-14  8:41       ` Augustine, Linson
2019-08-14 15:03         ` Carsey, Jaben
     [not found] ` <15B3A870E6EA7BDB.7925@groups.io>
2019-07-26  7:46   ` FW: [edk2-devel] [PATCH V2] ShellPkg/UefiHandleParsingLib: Fix incorrect reallocate pool Gao, Zhichao
2019-09-02  8:51   ` Gao, Zhichao [this message]
2019-09-04 18:18     ` Ni, Ray

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3CE959C139B4C44DBEA1810E3AA6F9000B833EE7@SHSMSX101.ccr.corp.intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox