From nobody Fri Mar 29 15:46:08 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+43435+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+43435+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1562666027; cv=none; d=zoho.com; s=zohoarc; b=NRrjkliqPxx/FY+Iww/bSIhrKwudnDP4zDTOeZosaN+eX/Z+ywDqOo/J8Y0lTMK2ZMyLQ++ITnFnBaYb3D1yCNgo4yfsJ98Iq7u76UvlCPkDRq5rbjvTrBheQrcnX93rLJahMD0xdIzt8KALmmLnEzUqOqcSmzwdc9kURKw5Z4M= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1562666027; h=Cc:Date:From:List-Id:List-Unsubscribe:Message-ID:Reply-To:Sender:Subject:To:ARC-Authentication-Results; bh=fgb4xTYFdbYn1A/XKJ4Sx6tzerX3VFPMrL81lHDf1hU=; b=IwQCZerXb+gZIhluqpHATbod5vhO54G+PNwsEJynjfAtxAQfP0QPOh3fwTb5bV1p0iSU3DSpDbGrC+a3CjR7eBqOTzBqvCn/WwzQqb5dmWjY2biBpDWaWj8bGQ1Su6bpLdqqz0Ogq9O0IptQVZbH2OOnwZFgQhNpMrJQk9pUyAU= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+43435+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1562666027389519.0327366862414; Tue, 9 Jul 2019 02:53:47 -0700 (PDT) Return-Path: X-Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by groups.io with SMTP; Tue, 09 Jul 2019 02:53:46 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False X-Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 09 Jul 2019 02:53:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.63,470,1557212400"; d="scan'208";a="167938993" X-Received: from shwde7172.ccr.corp.intel.com ([10.239.158.22]) by orsmga003.jf.intel.com with ESMTP; 09 Jul 2019 02:53:44 -0700 From: "Liming Gao" To: devel@edk2.groups.io Cc: gaozhic , Bob Feng Subject: [edk2-devel] [Patch v3] BaseTools: Fix GCC compiler failure in new added tools. Date: Tue, 9 Jul 2019 17:53:33 +0800 Message-Id: <1562666013-13188-1-git-send-email-liming.gao@intel.com> Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,liming.gao@intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1562666026; bh=xPdg6A9izHghEOZ2nZP1g1Tbq64JWiCWZmhR+G1ocf4=; h=Cc:Date:From:Reply-To:Subject:To; b=PX9xGxS2cgiQChYw01ZqZQ2d5UbO47ueh0dMYLyjswkc+hhD4Zr3HZClSYXD+qJlu+4 EUYtOtSr/EZIkqC+Lm1pBm86eVLfmWHwtYX+uGeRkwcpMh6DbddGSBUglGe45FSMQh2i/ 1kcHD/nTTU+uRcBBDUB3NzRsxujziQ28UJw= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: gaozhic GCC 7 or 8 reports some warnings in new added FCE/FMMT/BlmLib. Signed-off-by: Liming Gao Cc: Bob Feng --- In V2:=20 Fix GCC8 compiler issue. In V3: Fix snprintf wrong replacement. BaseTools/Source/C/BfmLib/BfmLib.c | 117 +++++++++++------= ---- BaseTools/Source/C/FCE/BinaryParse.c | 2 +- BaseTools/Source/C/FMMT/FirmwareModuleManagement.c | 2 +- BaseTools/Source/C/FMMT/FmmtLib.c | 117 +++++++++++------= ---- 4 files changed, 122 insertions(+), 116 deletions(-) diff --git a/BaseTools/Source/C/BfmLib/BfmLib.c b/BaseTools/Source/C/BfmLib= /BfmLib.c index 9dedda3da2..8d0ec9038c 100644 --- a/BaseTools/Source/C/BfmLib/BfmLib.c +++ b/BaseTools/Source/C/BfmLib/BfmLib.c @@ -9,6 +9,9 @@ =20 #include "BinFileManager.h" =20 +#define STR_LEN_MAX_4K 4096 +#define STR_LEN_MAX_1K 1024 + #define EFI_TEST_FFS_ATTRIBUTES_BIT(FvbAttributes, TestAttributes, Bit) \ ( \ (BOOLEAN) ( \ @@ -116,7 +119,7 @@ LibInitializeFvStruct ( =20 for (Index =3D 0; Index < MAX_NUMBER_OF_FILES_IN_FV; Index ++) { memset (Fv->FfsAttuibutes[Index].FfsName, '\0', _MAX_PATH); - memset (Fv->FfsAttuibutes[Index].UiName, '\0', _MAX_PATH); + memset (Fv->FfsAttuibutes[Index].UiName, '\0', _MAX_PATH * sizeof (CHA= R16)); =20 Fv->FfsAttuibutes[Index].IsLeaf =3D TRUE; Fv->FfsAttuibutes[Index].TotalSectionNum =3D 0; @@ -2399,153 +2402,153 @@ LibFvHeaderAttributeToStr ( =20 LocalStr =3D NULL; =20 - LocalStr =3D (CHAR8 *) malloc (1024 * 4); + LocalStr =3D (CHAR8 *) malloc (STR_LEN_MAX_4K); =20 if (LocalStr =3D=3D NULL) { printf ("Out of resource, memory allocation failed. \n"); return EFI_OUT_OF_RESOURCES; } =20 - memset (LocalStr, '\0', 1024 * 4); + memset (LocalStr, '\0', STR_LEN_MAX_4K); =20 if (Attr =3D=3D 0 || InfFile =3D=3D NULL) { free (LocalStr); return EFI_INVALID_PARAMETER; } =20 - strncat (LocalStr, "[attributes] \n", sizeof("[attributes] \n")); + strncat (LocalStr, "[attributes] \n", STR_LEN_MAX_4K - strlen (LocalStr)= - 1); =20 if (Attr & EFI_FVB2_READ_DISABLED_CAP) { - strncat (LocalStr, "EFI_READ_DISABLED_CAP =3D TRUE \n", sizeof ("EFI_R= EAD_DISABLED_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_DISABLED_CAP =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_READ_ENABLED_CAP) { - strncat (LocalStr, "EFI_READ_ENABLED_CAP =3D TRUE \n", sizeof ("EFI_RE= AD_ENABLED_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_ENABLED_CAP =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_READ_STATUS) { - strncat (LocalStr, "EFI_READ_STATUS =3D TRUE \n", sizeof ("EFI_READ_ST= ATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_STATUS =3D TRUE \n", STR_LEN_MAX_4K - str= len (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_WRITE_DISABLED_CAP) { - strncat (LocalStr, "EFI_WRITE_DISABLED_CAP =3D TRUE \n", sizeof ("EFI_= WRITE_DISABLED_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_WRITE_DISABLED_CAP =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_WRITE_ENABLED_CAP) { - strncat (LocalStr, "EFI_WRITE_ENABLED_CAP =3D TRUE \n", sizeof ("EFI_W= RITE_ENABLED_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_WRITE_ENABLED_CAP =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_WRITE_STATUS) { - strncat (LocalStr, "EFI_WRITE_STATUS =3D TRUE \n", sizeof ("EFI_WRITE_= STATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_WRITE_STATUS =3D TRUE \n", STR_LEN_MAX_4K - st= rlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_LOCK_CAP) { - strncat (LocalStr, "EFI_LOCK_CAP =3D TRUE \n", sizeof ("EFI_LOCK_CAP = =3D TRUE \n")); + strncat (LocalStr, "EFI_LOCK_CAP =3D TRUE \n", STR_LEN_MAX_4K - strlen= (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_LOCK_STATUS) { - strncat (LocalStr, "EFI_LOCK_STATUS =3D TRUE \n", sizeof ("EFI_LOCK_ST= ATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_LOCK_STATUS =3D TRUE \n", STR_LEN_MAX_4K - str= len (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_STICKY_WRITE) { - strncat (LocalStr, "EFI_STICKY_WRITE =3D TRUE \n", sizeof ("EFI_STICKY= _WRITE =3D TRUE \n")); + strncat (LocalStr, "EFI_STICKY_WRITE =3D TRUE \n", STR_LEN_MAX_4K - st= rlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_MEMORY_MAPPED) { - strncat (LocalStr, "EFI_MEMORY_MAPPED =3D TRUE \n", sizeof ("EFI_MEMOR= Y_MAPPED =3D TRUE \n")); + strncat (LocalStr, "EFI_MEMORY_MAPPED =3D TRUE \n", STR_LEN_MAX_4K - s= trlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_ERASE_POLARITY) { - strncat (LocalStr, "EFI_ERASE_POLARITY =3D 1 \n", sizeof ("EFI_ERASE_P= OLARITY =3D 1 \n")); + strncat (LocalStr, "EFI_ERASE_POLARITY =3D 1 \n", STR_LEN_MAX_4K - str= len (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_READ_LOCK_CAP) { - strncat (LocalStr, "EFI_READ_LOCK_CAP =3D TRUE \n", sizeof ("EFI_READ_= LOCK_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_LOCK_CAP =3D TRUE \n", STR_LEN_MAX_4K - s= trlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_READ_LOCK_STATUS) { - strncat (LocalStr, "EFI_READ_LOCK_STATUS =3D TRUE \n", sizeof ("EFI_RE= AD_LOCK_STATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_LOCK_STATUS =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_WRITE_LOCK_CAP) { - strncat (LocalStr, "EFI_WRITE_LOCK_CAP =3D TRUE \n", sizeof ("EFI_WRIT= E_LOCK_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_WRITE_LOCK_CAP =3D TRUE \n", STR_LEN_MAX_4K - = strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_WRITE_LOCK_STATUS) { - strncat (LocalStr, "EFI_WRITE_LOCK_STATUS =3D TRUE \n", sizeof ("EFI_W= RITE_LOCK_STATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_WRITE_LOCK_STATUS =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_LOCK_STATUS) { - strncat (LocalStr, "EFI_READ_LOCK_STATUS =3D TRUE \n", sizeof ("EFI_RE= AD_LOCK_STATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_LOCK_STATUS =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } =20 // // Alignment // if (Attr & EFI_FVB2_ALIGNMENT_1) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1 =3D TRUE \n", sizeof ("EFI_FV= B2_ALIGNMENT_1 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1 =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_2) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2 =3D TRUE \n", sizeof ("EFI_FV= B2_ALIGNMENT_2 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2 =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_4) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4 =3D TRUE \n", sizeof ("EFI_FV= B2_ALIGNMENT_4 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4 =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_8) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8 =3D TRUE \n", sizeof ("EFI_FV= B2_ALIGNMENT_8 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8 =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_16) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16 =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_16 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16 =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_32) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32 =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_32 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32 =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_64) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64 =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_64 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64 =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_128) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128 =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_128 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128 =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_256) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256 =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_256 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256 =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_512) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512 =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_512 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512 =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_1K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1K =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_1K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1K =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_2K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2K =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_2K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2K =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_4K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4K =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_4K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4K =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_8K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8K =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_8K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8K =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_16K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16K =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_16K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16K =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_32K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32K =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_32K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32K =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_64K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64K =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_64K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64K =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_128K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128K =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_128K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128K =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_256K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256K =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_256K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256K =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_512K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512K =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_512K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512K =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_1M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1M =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_1M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1M =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_2M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2M =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_2M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2M =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_4M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4M =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_4M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4M =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_8M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8M =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_8M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8M =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_16M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16M =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_16M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16M =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_32M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32M =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_32M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32M =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_64M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64M =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_64M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64M =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_128M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128M =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_128M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128M =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_256M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256M =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_256M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256M =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_512M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512M =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_512M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512M =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_1G) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1G =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_1G =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1G =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_2G) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2G =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_2G =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2G =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } =20 if (fwrite (LocalStr, 1, (size_t) strlen (LocalStr), InfFile) !=3D (size= _t) strlen (LocalStr)) { @@ -2592,7 +2595,7 @@ LibFvHeaderOptionToStr ( // // This section will not over 1024 bytes and each line will never over 1= 28 bytes. // - LocalStr =3D (CHAR8 *) malloc (1024); + LocalStr =3D (CHAR8 *) malloc (STR_LEN_MAX_1K); BlockSize =3D (CHAR8 *) malloc (128); NumOfBlocks =3D (CHAR8 *) malloc (128); =20 @@ -2611,18 +2614,18 @@ LibFvHeaderOptionToStr ( return EFI_OUT_OF_RESOURCES; } =20 - memset (LocalStr, '\0', 1024); + memset (LocalStr, '\0', STR_LEN_MAX_1K); memset (BlockSize, '\0', 128); memset (NumOfBlocks, '\0', 128); =20 - strncat (LocalStr, "[options] \n", sizeof("[Options] \n")); + strncat (LocalStr, "[options] \n", STR_LEN_MAX_1K - strlen (LocalStr) - = 1); =20 sprintf (BlockSize, "EFI_BLOCK_SIZE =3D 0x%x \n", BlockMap->Length); - strncat (LocalStr, BlockSize, strlen(BlockSize)); + strncat (LocalStr, BlockSize, STR_LEN_MAX_1K - strlen (LocalStr) - 1); =20 if (IsRootFv) { sprintf (NumOfBlocks, "EFI_NUM_BLOCKS =3D 0x%x \n", BlockMap->NumBlocks= ); - strncat (LocalStr, NumOfBlocks, strlen(NumOfBlocks)); + strncat (LocalStr, NumOfBlocks, STR_LEN_MAX_1K - strlen (LocalStr) - 1); } =20 if (fwrite (LocalStr, 1, (size_t) strlen (LocalStr), InfFile) !=3D (size= _t) strlen (LocalStr)) { diff --git a/BaseTools/Source/C/FCE/BinaryParse.c b/BaseTools/Source/C/FCE/= BinaryParse.c index e9f8ee6826..97d6ecf93b 100644 --- a/BaseTools/Source/C/FCE/BinaryParse.c +++ b/BaseTools/Source/C/FCE/BinaryParse.c @@ -1240,7 +1240,7 @@ Done: ) { continue; } - sprintf (FileNameArry, "%s%c%s", FolderName, OS_SEP, pDirent->d_name= ); + snprintf (FileNameArry, MAX_FILENAME_LEN, "%s%c%s", FolderName, OS_S= EP, pDirent->d_name); FfsFile =3D fopen (FileNameArry, "rb"); Status =3D ReadFfsHeader (FfsFile, (UINT32 *)&FileSize); if (EFI_ERROR (Status)) { diff --git a/BaseTools/Source/C/FMMT/FirmwareModuleManagement.c b/BaseTools= /Source/C/FMMT/FirmwareModuleManagement.c index 63ae3c45a4..6648fbd54f 100644 --- a/BaseTools/Source/C/FMMT/FirmwareModuleManagement.c +++ b/BaseTools/Source/C/FMMT/FirmwareModuleManagement.c @@ -1572,7 +1572,7 @@ FmmtImageDelete ( // If decrease operation executed, we should adjust th= e ffs list. It will bring in more complex. // //FvInFd->FfsNumbers -=3D 1; - memset(FvInFd->FfsAttuibutes[Index].UiName, '\0', _MAX= _PATH); + memset(FvInFd->FfsAttuibutes[Index].UiName, '\0', _MAX= _PATH * sizeof (CHAR16)); if (FvInFd->FfsAttuibutes[Index].FvLevel > 1) { for (j =3D Index - 1; j >=3D 0; j--) { if (FvInFd->FfsAttuibutes[j].FvLevel =3D=3D FvI= nFd->FfsAttuibutes[Index].FvLevel - 1) { diff --git a/BaseTools/Source/C/FMMT/FmmtLib.c b/BaseTools/Source/C/FMMT/Fm= mtLib.c index f87042114b..e236810c59 100644 --- a/BaseTools/Source/C/FMMT/FmmtLib.c +++ b/BaseTools/Source/C/FMMT/FmmtLib.c @@ -9,6 +9,9 @@ =20 #include "FirmwareModuleManagement.h" =20 +#define STR_LEN_MAX_4K 4096 +#define STR_LEN_MAX_1K 1024 + #define EFI_TEST_FFS_ATTRIBUTES_BIT(FvbAttributes, TestAttributes, Bit) \ ( \ (BOOLEAN) ( \ @@ -155,7 +158,7 @@ LibInitializeFvStruct ( =20 for (Index =3D 0; Index < MAX_NUMBER_OF_FILES_IN_FV; Index ++) { memset (Fv->FfsAttuibutes[Index].FfsName, '\0', _MAX_PATH); - memset (Fv->FfsAttuibutes[Index].UiName, '\0', _MAX_PATH); + memset (Fv->FfsAttuibutes[Index].UiName, '\0', _MAX_PATH * sizeof (CHA= R16)); memset (&Fv->FfsAttuibutes[Index].GuidName, '\0', sizeof(EFI_GUID)); Fv->FfsAttuibutes[Index].UiNameSize =3D 0; Fv->FfsAttuibutes[Index].IsLeaf =3D TRUE; @@ -2504,153 +2507,153 @@ LibFvHeaderAttributeToStr ( =20 LocalStr =3D NULL; =20 - LocalStr =3D (CHAR8 *) malloc (1024 * 4); + LocalStr =3D (CHAR8 *) malloc (STR_LEN_MAX_4K); =20 if (LocalStr =3D=3D NULL) { printf ("Memory allocate error!\n"); return EFI_OUT_OF_RESOURCES; } =20 - memset (LocalStr, '\0', 1024 * 4); + memset (LocalStr, '\0', STR_LEN_MAX_4K); =20 if (Attr =3D=3D 0 || InfFile =3D=3D NULL) { free (LocalStr); return EFI_INVALID_PARAMETER; } =20 - strncat (LocalStr, "[attributes] \n", sizeof("[attributes] \n")); + strncat (LocalStr, "[attributes] \n", STR_LEN_MAX_4K - strlen (LocalStr)= - 1); =20 if (Attr & EFI_FVB2_READ_DISABLED_CAP) { - strncat (LocalStr, "EFI_READ_DISABLED_CAP =3D TRUE \n", sizeof ("EFI_R= EAD_DISABLED_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_DISABLED_CAP =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_READ_ENABLED_CAP) { - strncat (LocalStr, "EFI_READ_ENABLED_CAP =3D TRUE \n", sizeof ("EFI_RE= AD_ENABLED_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_ENABLED_CAP =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_READ_STATUS) { - strncat (LocalStr, "EFI_READ_STATUS =3D TRUE \n", sizeof ("EFI_READ_ST= ATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_STATUS =3D TRUE \n", STR_LEN_MAX_4K - str= len (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_WRITE_DISABLED_CAP) { - strncat (LocalStr, "EFI_WRITE_DISABLED_CAP =3D TRUE \n", sizeof ("EFI_= WRITE_DISABLED_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_WRITE_DISABLED_CAP =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_WRITE_ENABLED_CAP) { - strncat (LocalStr, "EFI_WRITE_ENABLED_CAP =3D TRUE \n", sizeof ("EFI_W= RITE_ENABLED_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_WRITE_ENABLED_CAP =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_WRITE_STATUS) { - strncat (LocalStr, "EFI_WRITE_STATUS =3D TRUE \n", sizeof ("EFI_WRITE_= STATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_WRITE_STATUS =3D TRUE \n", STR_LEN_MAX_4K - st= rlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_LOCK_CAP) { - strncat (LocalStr, "EFI_LOCK_CAP =3D TRUE \n", sizeof ("EFI_LOCK_CAP = =3D TRUE \n")); + strncat (LocalStr, "EFI_LOCK_CAP =3D TRUE \n", STR_LEN_MAX_4K - strlen= (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_LOCK_STATUS) { - strncat (LocalStr, "EFI_LOCK_STATUS =3D TRUE \n", sizeof ("EFI_LOCK_ST= ATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_LOCK_STATUS =3D TRUE \n", STR_LEN_MAX_4K - str= len (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_STICKY_WRITE) { - strncat (LocalStr, "EFI_STICKY_WRITE =3D TRUE \n", sizeof ("EFI_STICKY= _WRITE =3D TRUE \n")); + strncat (LocalStr, "EFI_STICKY_WRITE =3D TRUE \n", STR_LEN_MAX_4K - st= rlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_MEMORY_MAPPED) { - strncat (LocalStr, "EFI_MEMORY_MAPPED =3D TRUE \n", sizeof ("EFI_MEMOR= Y_MAPPED =3D TRUE \n")); + strncat (LocalStr, "EFI_MEMORY_MAPPED =3D TRUE \n", STR_LEN_MAX_4K - s= trlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_ERASE_POLARITY) { - strncat (LocalStr, "EFI_ERASE_POLARITY =3D 1 \n", sizeof ("EFI_ERASE_P= OLARITY =3D 1 \n")); + strncat (LocalStr, "EFI_ERASE_POLARITY =3D 1 \n", STR_LEN_MAX_4K - str= len (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_READ_LOCK_CAP) { - strncat (LocalStr, "EFI_READ_LOCK_CAP =3D TRUE \n", sizeof ("EFI_READ_= LOCK_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_LOCK_CAP =3D TRUE \n", STR_LEN_MAX_4K - s= trlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_READ_LOCK_STATUS) { - strncat (LocalStr, "EFI_READ_LOCK_STATUS =3D TRUE \n", sizeof ("EFI_RE= AD_LOCK_STATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_LOCK_STATUS =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_WRITE_LOCK_CAP) { - strncat (LocalStr, "EFI_WRITE_LOCK_CAP =3D TRUE \n", sizeof ("EFI_WRIT= E_LOCK_CAP =3D TRUE \n")); + strncat (LocalStr, "EFI_WRITE_LOCK_CAP =3D TRUE \n", STR_LEN_MAX_4K - = strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_WRITE_LOCK_STATUS) { - strncat (LocalStr, "EFI_WRITE_LOCK_STATUS =3D TRUE \n", sizeof ("EFI_W= RITE_LOCK_STATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_WRITE_LOCK_STATUS =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } =20 if (Attr & EFI_FVB2_LOCK_STATUS) { - strncat (LocalStr, "EFI_READ_LOCK_STATUS =3D TRUE \n", sizeof ("EFI_RE= AD_LOCK_STATUS =3D TRUE \n")); + strncat (LocalStr, "EFI_READ_LOCK_STATUS =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } =20 // // Alignment // if (Attr & EFI_FVB2_ALIGNMENT_1) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1 =3D TRUE \n", sizeof ("EFI_FV= B2_ALIGNMENT_1 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1 =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_2) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2 =3D TRUE \n", sizeof ("EFI_FV= B2_ALIGNMENT_2 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2 =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_4) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4 =3D TRUE \n", sizeof ("EFI_FV= B2_ALIGNMENT_4 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4 =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_8) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8 =3D TRUE \n", sizeof ("EFI_FV= B2_ALIGNMENT_8 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8 =3D TRUE \n", STR_LEN_MAX_4K = - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_16) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16 =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_16 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16 =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_32) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32 =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_32 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32 =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_64) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64 =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_64 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64 =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_128) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128 =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_128 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128 =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_256) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256 =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_256 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256 =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_512) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512 =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_512 =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512 =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_1K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1K =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_1K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1K =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_2K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2K =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_2K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2K =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_4K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4K =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_4K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4K =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_8K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8K =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_8K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8K =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_16K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16K =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_16K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16K =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_32K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32K =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_32K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32K =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_64K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64K =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_64K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64K =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_128K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128K =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_128K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128K =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_256K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256K =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_256K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256K =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_512K) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512K =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_512K =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512K =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_1M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1M =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_1M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1M =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_2M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2M =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_2M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2M =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_4M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4M =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_4M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_4M =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_8M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8M =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_8M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_8M =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_16M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16M =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_16M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_16M =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_32M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32M =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_32M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_32M =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_64M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64M =3D TRUE \n", sizeof ("EFI_= FVB2_ALIGNMENT_64M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_64M =3D TRUE \n", STR_LEN_MAX_4= K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_128M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128M =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_128M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_128M =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_256M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256M =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_256M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_256M =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_512M) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512M =3D TRUE \n", sizeof ("EFI= _FVB2_ALIGNMENT_512M =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_512M =3D TRUE \n", STR_LEN_MAX_= 4K - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_1G) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1G =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_1G =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_1G =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } else if (Attr & EFI_FVB2_ALIGNMENT_2G) { - strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2G =3D TRUE \n", sizeof ("EFI_F= VB2_ALIGNMENT_2G =3D TRUE \n")); + strncat (LocalStr, "EFI_FVB2_ALIGNMENT_2G =3D TRUE \n", STR_LEN_MAX_4K= - strlen (LocalStr) - 1); } =20 if (fwrite (LocalStr, 1, (size_t) strlen (LocalStr), InfFile) !=3D (size= _t) strlen (LocalStr)) { @@ -2696,7 +2699,7 @@ LibFvHeaderOptionToStr ( // // This section will not over 1024 bytes and each line will never over 1= 28 bytes. // - LocalStr =3D (CHAR8 *) malloc (1024); + LocalStr =3D (CHAR8 *) malloc (STR_LEN_MAX_1K); TempStr =3D (CHAR8 *) malloc (128); =20 if (LocalStr =3D=3D NULL || @@ -2712,18 +2715,18 @@ LibFvHeaderOptionToStr ( } =20 BlockMap =3D FvHeader->BlockMap; - memset (LocalStr, '\0', 1024); + memset (LocalStr, '\0', STR_LEN_MAX_1K); memset (TempStr, '\0', 128); =20 - strncat (LocalStr, "[options] \n", sizeof("[Options] \n")); + strncat (LocalStr, "[options] \n", STR_LEN_MAX_1K - strlen (LocalStr) - = 1); =20 =20 snprintf (TempStr, 128, "EFI_BLOCK_SIZE =3D 0x%x \n", BlockMap->Length); - strncat (LocalStr, TempStr, strlen(TempStr)); + strncat (LocalStr, TempStr, STR_LEN_MAX_1K - strlen (LocalStr) - 1); =20 if (IsRootFv) { snprintf (TempStr, 128, "EFI_NUM_BLOCKS =3D 0x%x \n", BlockMap->NumBloc= ks); - strncat (LocalStr, TempStr, strlen(TempStr)); + strncat (LocalStr, TempStr, STR_LEN_MAX_1K - strlen (LocalStr) - 1); } =20 if (fwrite (LocalStr, 1, (size_t) strlen (LocalStr), InfFile) !=3D (size= _t) strlen (LocalStr)) { --=20 2.13.0.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#43435): https://edk2.groups.io/g/devel/message/43435 Mute This Topic: https://groups.io/mt/32403705/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-