From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 0F782940FF5 for ; Wed, 15 Nov 2023 03:12:40 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=mxFD8trEMrcd99wpgm72xROBpzZC/AtSyGuqXnKgpdI=; c=relaxed/simple; d=groups.io; h=ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:Received-SPF:From:To:CC:Subject:Date:Message-ID:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding:Content-Type; s=20140610; t=1700017959; v=1; b=NvA2xynzeH7U2CvLTf9V0ziqAzqymV9zF/CY9Gh+FgzVaC40i487ypt8TkoGAj+dJOhWQU7w 4KDNDkLTZkwFOLNjczoYRjaeWGyEOpOh1gXAFZNiGZSloTfXh3oSuicJPpoDoDJ5bNBVqa4eEs6 nkwID7HLwvIznE2XlsbK+Ha8= X-Received: by 127.0.0.2 with SMTP id wVFyYY7687511xTyYXTgmYQq; Tue, 14 Nov 2023 19:12:39 -0800 X-Received: from NAM12-MW2-obe.outbound.protection.outlook.com (NAM12-MW2-obe.outbound.protection.outlook.com [40.107.244.50]) by mx.groups.io with SMTP id smtpd.web11.4948.1700017958899229720 for ; Tue, 14 Nov 2023 19:12:39 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gBSh/iL/7lobSHwGJSYxpXD3O+dwtOI9Sa7QOGG1RYjoXYCkJj/sZEZ/gcudYyOmTL2IgTybKSe+ZPOScOYvpGq0xY2NUNTFgpJv2jYdOjkffm3aYtG0VX7zR9jd2K4p7BRTpWDe8GmPXgvbs5zcA9UK0+Yxwo8t9XAILny3MDO1Vx4zkDKxkEUU5LUvT1KIp+RPJxHW1La+TCHgKb9u+8jZgFvybuM07WjypWLgHw8yG0uakd8FWc2vglxHTNg+o1/YHLGdlmZTWJNSEk1wpZj0kHQ3aINvI/QlfiPCXEquP2EKHC0o264weYdyHqH3bJD9xY1qIsijReBNGcK76A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=s9sPUcM6jFK7l3o0epI4/HvePuFMSrRaWbfS+SqIvlQ=; b=U2qhO6BWkqZAWwxDTqN9bVpJ2aXbVqZmgv91WRNnCTJ3nquPxRgLWhGlBbQqksqS9FSkABe8pHDiaP7cMGkbUwEcUMEBOM6jwbTWARg19gnk54BWwRk7/arclhJP1tSfx4EzIMPekdMo5w/aGywjeWchOvTMzcWZIk2ocu/0T5SCWhoM2zignPoqma4V0QMKJwI9NhcGV8YSIBP8/vu8RY6gOXW0i2a1X3lh/Xo9/fMaRqHE6abh6+Y9mzQklQOToYFbsKk4De1+J1bfrcxia4mLIhJr9CE5RF0NCjzrp/aaEdHLLEXQeM529EVoyFs+wer0NHSaRGzzn/nMVmwF+g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.118.232) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) X-Received: from CH0PR03CA0070.namprd03.prod.outlook.com (2603:10b6:610:cc::15) by MN0PR12MB6367.namprd12.prod.outlook.com (2603:10b6:208:3d3::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7002.17; Wed, 15 Nov 2023 03:12:34 +0000 X-Received: from DS2PEPF0000343B.namprd02.prod.outlook.com (2603:10b6:610:cc:cafe::1c) by CH0PR03CA0070.outlook.office365.com (2603:10b6:610:cc::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7002.17 via Frontend Transport; Wed, 15 Nov 2023 03:12:34 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.118.232) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.118.232 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.118.232; helo=mail.nvidia.com; pr=C X-Received: from mail.nvidia.com (216.228.118.232) by DS2PEPF0000343B.mail.protection.outlook.com (10.167.18.38) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7002.19 via Frontend Transport; Wed, 15 Nov 2023 03:12:34 +0000 X-Received: from drhqmail202.nvidia.com (10.126.190.181) by mail.nvidia.com (10.127.129.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Tue, 14 Nov 2023 19:12:25 -0800 X-Received: from drhqmail201.nvidia.com (10.126.190.180) by drhqmail202.nvidia.com (10.126.190.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Tue, 14 Nov 2023 19:12:25 -0800 X-Received: from ashishsingha-lnx.nvidia.com (10.127.8.13) by mail.nvidia.com (10.126.190.180) with Microsoft SMTP Server id 15.2.986.41 via Frontend Transport; Tue, 14 Nov 2023 19:12:24 -0800 From: "Ashish Singhal via groups.io" To: , , , , , CC: Ashish Singhal Subject: [edk2-devel] [PATCH v2 1/2] EmbeddedPkg: Fix Android Boot Command Line Length Bug Date: Tue, 14 Nov 2023 20:12:21 -0700 Message-ID: <3ab879ada6d9f2b01496ecc05102510564888044.1700008662.git.ashishsingha@nvidia.com> MIME-Version: 1.0 X-NVConfidentiality: public X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PEPF0000343B:EE_|MN0PR12MB6367:EE_ X-MS-Office365-Filtering-Correlation-Id: 516d446b-97d3-419c-a407-08dbe588b6a6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: NyTCUyhgszbFpfAOw6pHW71nOD0ZiKZkhK5uIwEFfssRIDP1ibenEteBZ0GrUs1/SWlmSKIbJrSn8nIa1OvyOiaUhIYN3bHzEb8Y1dNHVc+n1dy338lEz4qTgvqgt5OYtLfBNOKUf6oCws5FnKxJwZolcthJmYhi+zWghjsLTWfxMlf+KvrmJ+PYTy2KorgkVVefAP82g3kENYius0KE1M81KSjDRqjNknaTS1uL7MOmzZHclhc8+Yz20wk+R/7TzprWq1B7PR6yzqMFF5HpdNTJp2wBbcgQvyeQ0n3ht/EOKMN8FM2APoIJeNvBaz1rYL5SkbWVzvyWKmlP0sWIeq6SLq2alHyzshKIqiqAiWrOJ1aYgLHfjnPTI7Mdg7ZD/v29XDWb89GgpKGTjrPedaaPl7GkEmeuJFPDQ/YP5yLof8MZng92HCowDIoPv6BnqDJtNAvFoGRsrOmspHHz7K2Jfm/1oDiv4Uu2XvPY7i/yH93bLxDfojZEgGJyRk/t3ZMghcP7PHAhfSambObLlvGi3OaftZT6o5h8ns7P/SoPUL7vq5Y8Tsrscsc0NXcaZQjoXlkhFWDkN2NnVNmTbpqPjz+Bhkwe+KG2hT3VClJPIj5oj0R8sA2Dzv4TZQNkpLQFI9WC2BRpG/Bjcwz33mLtXGrM7gLkM5sWuOUoWRLRrT/Zu1SFGmG47fOd1PNwiDRJkveIU21Nwye8lVXX1zaMsQjbuauTtBTql5livqG9KVipVVMdE3h7WEVIx1iS3ecQ0cxyVr+Hxrfh2czOQQ== X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Nov 2023 03:12:34.4338 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 516d446b-97d3-419c-a407-08dbe588b6a6 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.118.232];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: DS2PEPF0000343B.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB6367 Precedence: Bulk List-Subscribe: List-Help: 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,ashishsingha@nvidia.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: 33HAPhy7Tn4iSR8Da6gdSAYhx7686176AA= Content-Transfer-Encoding: quoted-printable Content-Type: text/plain X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=NvA2xynz; dmarc=none; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io Curently, AndroidBootImgLib expects input kernel command line to never exceed 256 unicode characters where the image header allows for 512 ascii characters. If image header allows 512 ascii characters, similar number of unicode characters should be allowed at the minimum. Signed-off-by: Ashish Singhal --- .../AndroidBootImgLib/AndroidBootImgLib.c | 31 +++++++++++-------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c b/Em= beddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c index 1359a66db2..f63648e60d 100644 --- a/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c +++ b/EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.c @@ -322,11 +322,12 @@ AndroidBootImgGetFdt ( EFI_STATUS AndroidBootImgUpdateArgs ( IN VOID *BootImg, - OUT VOID *KernelArgs + OUT VOID **KernelArgs ) { CHAR8 ImageKernelArgs[ANDROID_BOOTIMG_KERNEL_ARGS_SIZE]; EFI_STATUS Status; + UINT32 NewKernelArgSize; =20 // Get kernel arguments from Android boot image Status =3D AndroidBootImgGetKernelArgs (BootImg, ImageKernelArgs); @@ -334,16 +335,23 @@ AndroidBootImgUpdateArgs ( return Status; } =20 + NewKernelArgSize =3D ANDROID_BOOTIMG_KERNEL_ARGS_SIZE; + *KernelArgs =3D AllocateZeroPool (sizeof (CHAR16) * NewKernelArgSiz= e); + if (*KernelArgs =3D=3D NULL) { + DEBUG ((DEBUG_ERROR, "Fail to allocate memory\n")); + return EFI_OUT_OF_RESOURCES; + } + AsciiStrToUnicodeStrS ( ImageKernelArgs, - KernelArgs, - ANDROID_BOOTIMG_KERNEL_ARGS_SIZE >> 1 + *KernelArgs, + NewKernelArgSize ); // Append platform kernel arguments if (mAndroidBootImg->AppendArgs) { Status =3D mAndroidBootImg->AppendArgs ( - KernelArgs, - ANDROID_BOOTIMG_KERNEL_ARGS_SIZE + *KernelArgs, + NewKernelArgSize ); } =20 @@ -616,6 +624,10 @@ AndroidBootImgBoot ( UINTN RamdiskSize; IN VOID *FdtBase; =20 + if ((Buffer =3D=3D NULL) || (BufferSize =3D=3D 0)) { + return EFI_INVALID_PARAMETER; + } + NewKernelArg =3D NULL; ImageHandle =3D NULL; =20 @@ -637,14 +649,7 @@ AndroidBootImgBoot ( goto Exit; } =20 - NewKernelArg =3D AllocateZeroPool (ANDROID_BOOTIMG_KERNEL_ARGS_SIZE); - if (NewKernelArg =3D=3D NULL) { - DEBUG ((DEBUG_ERROR, "Fail to allocate memory\n")); - Status =3D EFI_OUT_OF_RESOURCES; - goto Exit; - } - - Status =3D AndroidBootImgUpdateArgs (Buffer, NewKernelArg); + Status =3D AndroidBootImgUpdateArgs (Buffer, &NewKernelArg); if (EFI_ERROR (Status)) { goto Exit; } --=20 2.17.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 (#111229): https://edk2.groups.io/g/devel/message/111229 Mute This Topic: https://groups.io/mt/102598724/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-