From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from hqnvemgate24.nvidia.com (hqnvemgate24.nvidia.com [216.228.121.143]) by mx.groups.io with SMTP id smtpd.web10.244.1599844147677623186 for ; Fri, 11 Sep 2020 10:09:07 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@nvidia.com header.s=n1 header.b=KxbRFetb; spf=pass (domain: nvidia.com, ip: 216.228.121.143, mailfrom: jbrasen@nvidia.com) Received: from hqpgpgate102.nvidia.com (Not Verified[216.228.121.13]) by hqnvemgate24.nvidia.com (using TLS: TLSv1.2, DES-CBC3-SHA) id ; Fri, 11 Sep 2020 10:06:49 -0700 Received: from hqmail.nvidia.com ([172.20.161.6]) by hqpgpgate102.nvidia.com (PGP Universal service); Fri, 11 Sep 2020 10:09:07 -0700 X-PGP-Universal: processed; by hqpgpgate102.nvidia.com on Fri, 11 Sep 2020 10:09:07 -0700 Received: from HQMAIL105.nvidia.com (172.20.187.12) by HQMAIL101.nvidia.com (172.20.187.10) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Fri, 11 Sep 2020 17:09:06 +0000 Received: from hqnvemgw03.nvidia.com (10.124.88.68) by HQMAIL105.nvidia.com (172.20.187.12) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Fri, 11 Sep 2020 17:09:06 +0000 Received: from jbrasen-ux.nvidia.com (Not Verified[10.20.23.99]) by hqnvemgw03.nvidia.com with Trustwave SEG (v7,5,8,10121) id ; Fri, 11 Sep 2020 10:09:06 -0700 From: "Jeff Brasen" To: CC: , , Jeff Brasen Subject: [PATCH] MdeModulePkg/HiiDatabase: Do not modify CONST string Date: Fri, 11 Sep 2020 11:08:42 -0600 Message-ID: <0cb9d71f50baf3c98522b5d20e4083da458050da.1599843970.git.jbrasen@nvidia.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-NVConfidentiality: public Return-Path: jbrasen@nvidia.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1599844010; bh=R/dzHHy5ekX2c9qwRuOmyazB1/pMRCiVQz/Sf2WAjrc=; h=X-PGP-Universal:From:To:CC:Subject:Date:Message-ID:X-Mailer: MIME-Version:X-NVConfidentiality:Content-Transfer-Encoding: Content-Type; b=KxbRFetbe6IwGicqTMza08r6xxIn+mxYRm6YM/MVFNQyH1C+3GoVObS8uJFimuikp 3zhEGSi5JnC+9ioUiUWLirPwbsO6X01mzTs+D9JivXNz6pz4gMHyTC5lESSjzClbSM 6TktX8VJz6YP4IBL9wMxs1w/86ZrVNj/cK40kb30n9WmflaJCiPhVG64/kpMXD+ENr Oezl/UVImu7IODGXmtE1Sja63UVl8BbIcjlQEnHVvL38MmgIjHryI2DWSnndf1wdMr 3E49BMkiyHJzVGEyi/4VHoSvjWlGTGtXfE61AJZmwxGoH5kBDRMQHxeIBSaIV1BRCj ZSUVAvMDQ5F3w== Content-Transfer-Encoding: quoted-printable Content-Type: text/plain Update function behavior to not modify the incoming string that is marked as CONST in the prototype. Signed-off-by: Jeff Brasen --- .../Universal/HiiDatabaseDxe/ConfigRouting.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c b/MdeMod= ulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c index 2cad6d29f4..d492b769d5 100644 --- a/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c +++ b/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c @@ -5497,7 +5497,6 @@ HiiBlockToConfig ( UINTN Index;=0D UINT8 *TemBuffer;=0D CHAR16 *TemString;=0D - CHAR16 TemChar;=0D =0D TmpBuffer =3D NULL;=0D =0D @@ -5564,10 +5563,13 @@ HiiBlockToConfig ( //=0D // Copy and an additional '&' to =0D //=0D - TemChar =3D *StringPtr;=0D - *StringPtr =3D '\0';=0D - AppendToMultiString(Config, ConfigRequest);=0D - *StringPtr =3D TemChar;=0D + TemString =3D AllocateCopyPool (sizeof (CHAR16) * (StringPtr - ConfigReq= uest + 1), ConfigRequest);=0D + if (TemString =3D=3D NULL) {=0D + return EFI_OUT_OF_RESOURCES;=0D + }=0D + TemString[StringPtr - ConfigRequest] =3D '\0';=0D + AppendToMultiString(Config, TemString);=0D + FreePool (TemString);=0D =0D //=0D // Parse each if exists=0D --=20 2.25.1