From nobody Sat Nov 2 14:37:46 2024 Delivered-To: importer@patchew.org Received-SPF: none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) client-ip=198.145.21.10; envelope-from=edk2-devel-bounces@lists.01.org; helo=ml01.01.org; Authentication-Results: mx.zoho.com; spf=none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) smtp.mailfrom=edk2-devel-bounces@lists.01.org; Return-Path: Received: from ml01.01.org (ml01.01.org [198.145.21.10]) by mx.zohomail.com with SMTPS id 1488268651593980.0638289723379; Mon, 27 Feb 2017 23:57:31 -0800 (PST) Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id D0B7181F1A; Mon, 27 Feb 2017 23:57:29 -0800 (PST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 3C594819DC for ; Mon, 27 Feb 2017 23:57:29 -0800 (PST) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 27 Feb 2017 23:57:28 -0800 Received: from shwdeopenpsi014.ccr.corp.intel.com ([10.239.9.13]) by orsmga003.jf.intel.com with ESMTP; 27 Feb 2017 23:57:27 -0800 X-Original-To: edk2-devel@lists.01.org X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.35,218,1484035200"; d="scan'208";a="938873553" From: Hao Wu To: edk2-devel@lists.01.org Date: Tue, 28 Feb 2017 15:57:25 +0800 Message-Id: <1488268645-18140-1-git-send-email-hao.a.wu@intel.com> X-Mailer: git-send-email 1.9.5.msysgit.0 Subject: [edk2] [PATCH] BaseTools/GenVtf & VolInfo: Fix build fail for 'snprintf' not defined X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Hao Wu , Liming Gao MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" X-ZohoMail: RSF_4 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Function snprintf() is not supported in Visual Studio 2013 or older version. The commit replaces the use of snprintf() with sprintf() to avoid build failure for VS compilers. Cc: Yonghong Zhu Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu Reviewed-by: Liming Gao Reviewed-by: Yonghong Zhu =20 --- BaseTools/Source/C/GenVtf/GenVtf.c | 59 +++-----------------------------= ---- BaseTools/Source/C/VolInfo/VolInfo.c | 24 ++------------- 2 files changed, 8 insertions(+), 75 deletions(-) diff --git a/BaseTools/Source/C/GenVtf/GenVtf.c b/BaseTools/Source/C/GenVtf= /GenVtf.c index acc142a..ff0e7cf 100644 --- a/BaseTools/Source/C/GenVtf/GenVtf.c +++ b/BaseTools/Source/C/GenVtf/GenVtf.c @@ -2,7 +2,7 @@ This file contains functions required to generate a boot strap file (BSF) = also=20 known as the Volume Top File (VTF) =20 -Copyright (c) 1999 - 2016, Intel Corporation. All rights reserved.
+Copyright (c) 1999 - 2017, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made availabl= e=20 under the terms and conditions of the BSD License which accompanies this=20 distribution. The full text of the license may be found at @@ -1045,7 +1045,6 @@ Arguments: Returns: =20 EFI_INVALID_PARAMETER - The parameter is invalid - EFI_OUT_OF_RESOURCES - Resource can not be allocated EFI_SUCCESS - The function completed successfully =20 --*/ @@ -1063,8 +1062,7 @@ Returns: CHAR8 Buff4[10]; CHAR8 Buff5[10]; CHAR8 Token[50]; - CHAR8 *FormatString; - INTN FormatLength; + CHAR8 FormatString[MAX_LINE_LEN]; =20 Fp =3D fopen (LongFilePath (VtfInfo->CompSymName), "rb"); =20 @@ -1076,30 +1074,8 @@ Returns: // // Generate the format string for fscanf // - FormatLength =3D snprintf ( - NULL, - 0, - "%%%us %%%us %%%us %%%us %%%us %%%us %%%us", - (unsigned) sizeof (Buff1) - 1, - (unsigned) sizeof (Buff2) - 1, - (unsigned) sizeof (OffsetStr) - 1, - (unsigned) sizeof (Buff3) - 1, - (unsigned) sizeof (Buff4) - 1, - (unsigned) sizeof (Buff5) - 1, - (unsigned) sizeof (Token) - 1 - ) + 1; - - FormatString =3D (CHAR8 *) malloc (FormatLength); - if (FormatString =3D=3D NULL) { - fclose (Fp); - - Error (NULL, 0, 4001, "Resource", "memory cannot be allocated!"); - return EFI_OUT_OF_RESOURCES; - } - - snprintf ( + sprintf ( FormatString, - FormatLength, "%%%us %%%us %%%us %%%us %%%us %%%us %%%us", (unsigned) sizeof (Buff1) - 1, (unsigned) sizeof (Buff2) - 1, @@ -1136,10 +1112,6 @@ Returns: =20 memcpy ((VOID *) RelativeAddress, (VOID *) CompStartAddress, sizeof (UIN= T64)); =20 - if (FormatString !=3D NULL) { - free (FormatString); - } - if (Fp !=3D NULL) { fclose (Fp); } @@ -2242,8 +2214,7 @@ Returns: CHAR8 Section[MAX_LONG_FILE_PATH]; CHAR8 Token[MAX_LONG_FILE_PATH]; CHAR8 BaseToken[MAX_LONG_FILE_PATH]; - CHAR8 *FormatString; - INTN FormatLength; + CHAR8 FormatString[MAX_LINE_LEN]; UINT64 TokenAddress; long StartLocation; =20 @@ -2324,27 +2295,8 @@ Returns: // // Generate the format string for fscanf // - FormatLength =3D snprintf ( - NULL, - 0, - "%%%us | %%%us | %%%us | %%%us\n", - (unsigned) sizeof (Type) - 1, - (unsigned) sizeof (Address) - 1, - (unsigned) sizeof (Section) - 1, - (unsigned) sizeof (Token) - 1 - ) + 1; - - FormatString =3D (CHAR8 *) malloc (FormatLength); - if (FormatString =3D=3D NULL) { - fclose (SourceFile); - fclose (DestFile); - Error (NULL, 0, 4001, "Resource", "memory cannot be allocated!"); - return EFI_ABORTED; - } - - snprintf ( + sprintf ( FormatString, - FormatLength, "%%%us | %%%us | %%%us | %%%us\n", (unsigned) sizeof (Type) - 1, (unsigned) sizeof (Address) - 1, @@ -2383,7 +2335,6 @@ Returns: } } =20 - free (FormatString); fclose (SourceFile); fclose (DestFile); return EFI_SUCCESS; diff --git a/BaseTools/Source/C/VolInfo/VolInfo.c b/BaseTools/Source/C/VolI= nfo/VolInfo.c index 71917af..2647cbb 100644 --- a/BaseTools/Source/C/VolInfo/VolInfo.c +++ b/BaseTools/Source/C/VolInfo/VolInfo.c @@ -1,7 +1,7 @@ /** @file The tool dumps the contents of a firmware volume =20 -Copyright (c) 1999 - 2016, Intel Corporation. All rights reserved.
+Copyright (c) 1999 - 2017, 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 @@ -2242,8 +2242,7 @@ Returns: { FILE *Fptr; CHAR8 Line[MAX_LINE_LEN]; - CHAR8 *FormatString; - INTN FormatLength; + CHAR8 FormatString[MAX_LINE_LEN]; GUID_TO_BASENAME *GPtr; =20 if ((Fptr =3D fopen (LongFilePath (FileName), "r")) =3D=3D NULL) { @@ -2254,23 +2253,8 @@ Returns: // // Generate the format string for fscanf // - FormatLength =3D snprintf ( - NULL, - 0, - "%%%us %%%us", - (unsigned) sizeof (GPtr->Guid) - 1, - (unsigned) sizeof (GPtr->BaseName) - 1 - ) + 1; - - FormatString =3D (CHAR8 *) malloc (FormatLength); - if (FormatString =3D=3D NULL) { - fclose (Fptr); - return EFI_OUT_OF_RESOURCES; - } - - snprintf ( + sprintf ( FormatString, - FormatLength, "%%%us %%%us", (unsigned) sizeof (GPtr->Guid) - 1, (unsigned) sizeof (GPtr->BaseName) - 1 @@ -2282,7 +2266,6 @@ Returns: // GPtr =3D malloc (sizeof (GUID_TO_BASENAME)); if (GPtr =3D=3D NULL) { - free (FormatString); fclose (Fptr); return EFI_OUT_OF_RESOURCES; } @@ -2299,7 +2282,6 @@ Returns: } } =20 - free (FormatString); fclose (Fptr); return EFI_SUCCESS; } --=20 1.9.5.msysgit.0 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel