From patchwork Tue Jun 11 19:43:27 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1114206 X-Patchwork-Delegate: xypron.glpk@gmx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="VqMhPG2g"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 45NgYv44Z3z9s1c for ; Wed, 12 Jun 2019 05:49:23 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 266F9C220FA; Tue, 11 Jun 2019 19:49:17 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=FREEMAIL_FROM, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 2BCE6C2212C; Tue, 11 Jun 2019 19:49:03 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id E6052C21DD9; Tue, 11 Jun 2019 19:49:00 +0000 (UTC) Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) by lists.denx.de (Postfix) with ESMTPS id 915F3C21D8E for ; Tue, 11 Jun 2019 19:49:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1560282540; bh=EePUGGqKz6Og8iyjm8nJuLqJK0++y719MgRKtXnav2A=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=VqMhPG2g4he9VtRgHp1ATyO8mckRSsh6nO+iEQvHeZHQM5jOXGziVjVlVzeVsZPlp J3ekVH9W0yLosZ5ghWFXS8Q346K2Doq38n6ikp1s+DGqxhMGpy3i01UH4IMH7aPr5U PIr9OZcz862osEuUqUYPG045SB0So05Aie6vr2rk= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from LT02.fritz.box ([84.118.159.3]) by mail.gmx.com (mrgmx102 [212.227.17.174]) with ESMTPSA (Nemesis) id 0M8pKi-1hmvDx2VW0-00CBkP; Tue, 11 Jun 2019 21:43:53 +0200 From: Heinrich Schuchardt To: Alexander Graf Date: Tue, 11 Jun 2019 21:43:27 +0200 Message-Id: <20190611194330.8724-2-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190611194330.8724-1-xypron.glpk@gmx.de> References: <20190611194330.8724-1-xypron.glpk@gmx.de> MIME-Version: 1.0 X-Provags-ID: V03:K1:kjCbwKx2IauGCMxDTDDkdngqQBpvAOpV+ewh+ejqADwmcVlynAz ewedXEf+/o2dAnAJgQb9+WBVg3F29bONCE4QI7NqAnBBvzON3snSBvqrtnQi+Q0ocSAf1zV W7G3/q/49zFc0CrTXt85NhfYy1WLP2xFo8qtgzthqW77gsWDgSRrDgncLEv7DjzMROAhxhJ sszL7yti9MjHEjIllTLmQ== X-UI-Out-Filterresults: notjunk:1; V03:K0:cp9xm2n2I58=:UoOz7pvWSyB0YaTJAjPNHv 9G74d3Pr+rli6bFozbIA+x/HJmqdsLEaBhKkHEdhnZUHsxbUjjFs8am9bPqQJ0CHpLZMZpQ0Z JfPbXdLolPn+7PqrDnAHnvbvhMIjLCgplL6o5jGnuBPYi9EuNxadPWCT0KNz8u6NFDRhTUCm1 DPByqWt3zzFBALajItZQ32wYPd8cJPayVxPQp7RPjb31t0bsdQ884l8gW3tYSPEQwv4jvB1JG hEDQzvtGvP6voyx7r2eSXcIX3K0blW6Vqe51QD1uO7zwyiy4/gJKlj3kNwyd4x/4W20e+ABW/ CgA5NRbTYQLYUe3XzGNC45j3SC+4s3ffgq3RYv90iwKInk59hIFW32BNSOD+dT9bM8eTDuLRS N8QH5AIDkCmS56GBhFvp2lC1BPM72XQuho+mK+4GKDuweTJ13UL7icMlSRINvfldw0J2Tgd5A xoEIUr0/ACQ5In+4vauYS+SgKVDZvtGEfvyl+KXtRaPjy9sstOTCYcHy6PgTz8uriEt/9Cw5F 4MQdpl5HX2ypIMbimxU6MjAQyMF0kjWDOJP6VUeR3XttqBWviWhDpM1VnsMi+54VirnSkb0l4 3vPOZ/YWMGpxuVW6Gs9ULnWOWSvOd16URv8EsPWCbUjt7SSwLFrRC4Ovb8NTDnfhGSmZiZqe9 4PkrB1hh9NdOLLPMrw8DkVFD6Vuqy/XNTTSva1i5yuO2Gel2BA0P3ubsdqTWOgGWo5Ua+yxf6 FTIMu4JqonR93xlq6do1Pk69bYZn435tEXtzdOb8aBQNTNJoV1tIj6IpHCo479YNu3F/AUIAH jwACwopvV8O3ovidxwPsMBUY4bsHup+gs75F0k/v4aD8JMtt+gvPHzYHhnxsAeDtwryhjAbWI KwT6+/h3qN5JJmrY60Xl1WOJEb+lKT7RuhoDVv/rpQQ9Swcrq8g5zoBrLJAnkDMEjXOSszMVD C+vEvg7wceiIRoZYg1ISgaAIEnDlbXDIYuxIyIGGPR7b3ceRRTzZW Cc: u-boot@lists.denx.de, Heinrich Schuchardt Subject: [U-Boot] [PATCH 1/4] efi_loader: LoadImage w/o SourceBuffer and DevicePath X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" If both SourceBuffer and DevicePath are NULL, LoadImage() must return EFI_INVALID_PARAMETER. Signed-off-by: Heinrich Schuchardt --- lib/efi_loader/efi_boottime.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) -- 2.20.1 diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c index fa01bbda70..7bb0fc2e52 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c @@ -1856,17 +1856,10 @@ efi_status_t EFIAPI efi_load_image(bool boot_policy, EFI_ENTRY("%d, %p, %pD, %p, %zd, %p", boot_policy, parent_image, file_path, source_buffer, source_size, image_handle); - if (!image_handle || !efi_search_obj(parent_image)) { - ret = EFI_INVALID_PARAMETER; - goto error; - } - - if (!source_buffer && !file_path) { - ret = EFI_NOT_FOUND; - goto error; - } - /* The parent image handle must refer to a loaded image */ - if (!parent_image->type) { + if (!image_handle || (!source_buffer && !file_path) || + !efi_search_obj(parent_image) || + /* The parent image handle must refer to a loaded image */ + !parent_image->type) { ret = EFI_INVALID_PARAMETER; goto error; } From patchwork Tue Jun 11 19:43:28 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1114202 X-Patchwork-Delegate: xypron.glpk@gmx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="VPfT22H/"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 45NgRs6rmhz9sND for ; Wed, 12 Jun 2019 05:44:07 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 01A3BC22115; Tue, 11 Jun 2019 19:44:03 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=FREEMAIL_FROM, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id E4F16C21DD7; Tue, 11 Jun 2019 19:44:01 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id CC700C21DD7; Tue, 11 Jun 2019 19:44:00 +0000 (UTC) Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) by lists.denx.de (Postfix) with ESMTPS id 76AD4C21D8E for ; Tue, 11 Jun 2019 19:44:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1560282239; bh=KH/kuN7KH3q/HTWkJf9RDWwN4WGAa0mTN40MFK+fvGE=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=VPfT22H/XaXFaA7keW3Z+F0fNXOCwm7AloFDcRlMJ3QCm8YRvzYH8pJlJI83k1jGC vHqetBo4x1esjUVbcIoE36qRcNfddRk/c2huRoGjrEJP3oNTjqpCHdBs1xBXyJ7maA l81wGFBoBnF8BCMsgwtVeCMLgg2yov/E1ZOxGSJA= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from LT02.fritz.box ([84.118.159.3]) by mail.gmx.com (mrgmx102 [212.227.17.174]) with ESMTPSA (Nemesis) id 0LsOsW-1icpUN11aq-011wzN; Tue, 11 Jun 2019 21:43:59 +0200 From: Heinrich Schuchardt To: Alexander Graf Date: Tue, 11 Jun 2019 21:43:28 +0200 Message-Id: <20190611194330.8724-3-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190611194330.8724-1-xypron.glpk@gmx.de> References: <20190611194330.8724-1-xypron.glpk@gmx.de> MIME-Version: 1.0 X-Provags-ID: V03:K1:ojq6sQ66HP7pzNoCQuT0EEbx3HthJczYjmAHT9AtPPRk4npoHsR ZFOnjHtBCPG5ERAbMF2hpeH6YLc57XPVz/s1dZ8MkM0S4yTwlg42/0PSuGTK6nGGP/KyM+B CFa0kkbtwStkuESmQ9etCifpSX6L3dBfOhTJwBrDPo7+tWx0oX9usmhLVsjKiwB1OpuOuLo wqOyEHsghxpnh1Qa8T7AA== X-UI-Out-Filterresults: notjunk:1; V03:K0:e0HrWuhh6Vo=:m1JGEuP7rtRuQ9qkNte0N8 vy+e02S+fal47CqoKPoKMYEgDa/BzZ+zI6UReb6lSDBnhHyTpiZmrJ3UCjpsl9DjSXhr2hhXB OjlM0xEjKpq0AA5ds8s7pCgznCXbBXYDrdsjKS5JjN7GwwUxlWaOn1NOvDjUlUBCIqSYJYhjB qhS1SRBzPhVZgrcJycJgj3VI4F7a8rMAHDA01lwdUToDYfeBLu1vaiyInQvScAYgXv7BJS8uT 9Ts9ZuBQkfZQ1ih4OZ6oBeQ5lQENR9RjXOt1UbwFitTcRffs7jV9ADpkYxhPrDvnVxTvzVT6C rR/xYOMlI+EbLTpg4ocEoalcmWhIi+JZNBpn2oEea4xAA1CsRHlncjLxoZNge8c/p2/Ca50HK UfqBT0FFLSffbgfJXIhth588M2ABqicApDLbuRIiCEs2XRJsMU/CBBQNc82vFNqFlXeWxH3qN DkQMz2QNBHTMt4RVX5LZnzWPr99ls6IbGrdYdSxI/vx4bxyEifaolCogsi+8H5MXBs5M3jpAj djLbNJn6ZJoyobCLfgYkt3jCp5hQXuUXArKTdXbyiQkA7gkHzNzUTY9WTHy1fJ6m3uZHA8ZlL AtiUyopiw0jvMrnDPZ6PFytT8N6xtZUHZu5f574+UIKZR9vvjP8iKmHjkhEtzZTibsNldC3xH ULFNdxdkurb+ZWbViPI2o76B09MJHPV1/FvbzSU0T6SfLBb6vqx9sMPan4BWzSotEcEnlqtLv HQ+avP4erTV+Yqtvo8nS3XU5FOYLbPmYoPQs21zFjXUgsPUgFJNOi23bS1MNXzZYD44qLl8CU 2ZewsQDFi9tZ0CvLjs2GeKs4eAd1brAANYc5T8EJ3HbEwnh8w3mEkqpQV3cvGZERb6utBa6F5 r6W12PAn58ius7DqNBm5kLt2ggxr17coUh32Lt6o4F3YPXA0WZILop6FyLZdWSJFNfoJY5yuI Y0QEsfJ/msrUveBJkdiJODXEkZjOOOZtBRK5zekNp1VkButDAtk15 Cc: u-boot@lists.denx.de, Heinrich Schuchardt Subject: [U-Boot] [PATCH 2/4] efi_loader: LoadImage must return EFI_NOT_FOUND X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" If the file path does not relate to an existing file, LoadImage() must return EFI_NOT_FOUND. Signed-off-by: Heinrich Schuchardt --- lib/efi_loader/efi_boottime.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.20.1 diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c index 7bb0fc2e52..251dfc4ecc 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c @@ -1779,7 +1779,7 @@ efi_status_t efi_load_image_from_path(struct efi_device_path *file_path, /* Open file */ f = efi_file_from_path(file_path); if (!f) - return EFI_DEVICE_ERROR; + return EFI_NOT_FOUND; /* Get file size */ bs = 0; From patchwork Tue Jun 11 19:43:29 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1114203 X-Patchwork-Delegate: xypron.glpk@gmx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="EqpS5gaE"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 45NgSG63zvz9sDB for ; Wed, 12 Jun 2019 05:44:30 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 7CDB5C22187; Tue, 11 Jun 2019 19:44:24 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=FREEMAIL_FROM, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 932AEC2213B; Tue, 11 Jun 2019 19:44:23 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 61743C22129; Tue, 11 Jun 2019 19:44:09 +0000 (UTC) Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) by lists.denx.de (Postfix) with ESMTPS id 1C24BC22187 for ; Tue, 11 Jun 2019 19:44:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1560282245; bh=wQo11fReYHNdtrgngytMZ0Q7f5bv2P4J0RYpKG+42Zg=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=EqpS5gaEDhZ2M1YXXUBIJbHG2gzhBYcvvctg+eFmj1ixc/E01GIdCBoc3XH5eVBk6 KZLJQID3E1cTD/9VgcqkBgUcGJAYaZlxortB4yFn8Oannzc5hPAlNSmTJM1kSdQW+o 6Y5TWdhVb6/61FHvgTriMEmOB6OQ6zJ3t9HsuG04= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from LT02.fritz.box ([84.118.159.3]) by mail.gmx.com (mrgmx102 [212.227.17.174]) with ESMTPSA (Nemesis) id 0LbgyV-1iLzPr3KUl-00lFS2; Tue, 11 Jun 2019 21:44:04 +0200 From: Heinrich Schuchardt To: Alexander Graf Date: Tue, 11 Jun 2019 21:43:29 +0200 Message-Id: <20190611194330.8724-4-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190611194330.8724-1-xypron.glpk@gmx.de> References: <20190611194330.8724-1-xypron.glpk@gmx.de> MIME-Version: 1.0 X-Provags-ID: V03:K1:PqZg3a8x0V5tBOEtYa0O9RCclEz+YfZ/GfwczHNlwz9tWUVuvsV fT00ydLwYlfSS/l24FoSSSjsJqe0A3S6LODGUbJzEVtDPTfF5OuMaGPeyEFqa8aYFCLJ0Gk O4pxYzP/qVvQty0Ph64Eiq2ZYrXPcg+v6mYi/PkJsOIxYQxrcFunQVFCQKGBwsgFqvoRKK6 PoKmpwKez7/3FPND5X8ug== X-UI-Out-Filterresults: notjunk:1; V03:K0:UFddTxeyyc8=:ohjuyR59YHgVtxjfO58nGr IA78i2+W62p+RJRH/oWz+J86t/qikh8SVKOFy7tj1DtMmw1Hgef+tANaHwQWFDBU6Skv5lj41 y4AIYv6eua0O7gaaoqsFIisWQFmpQopvvZnUIy8vG2m3QD/zOSYHp7J0LipzwTl49UtFs18zo l/wM3302Ohs5GI+r8FBakNF6cfGIgKt9fIehFXMBk3L3jUrSIoz4eefVHnrxx2ORLK2AHVUC/ FwSfVFHFl35RJcQ9kTug9SxvkJqgqNSCI0G9ZQOBabCfmUWjs+vdhUhMOYx+hBIa6susGNMUk M5QU/l/4DDe/3x8ASecUSVpbk0fyBpINKrzYJ6LY4Eycz/tjFxlWaVzGIbC56hE8hqyFRh2cm /VMrqbZ5i2g1SCej4zCMnRFGg1Yy25m0QjQxO8/y8FlH6wrlqoZ0uxZIpNngfDIfSHmT28hIH 4OIGwN/0TJCscglOAYq51ZXtyb45Lu9rgIvUaIdoW2+ypvIVR4sQwwjqfsd3b97Wj7cqx4pAN z3HsDCkz8gqQHgd1gc2b/X0dHNrQ3lpafwKiEWZsTTI20YXRFCPfwFWOpZxjy743qlVMQdTN5 5IS2yg/aPiAbZotjJHrcclA4JoGjUkym58UCPRb9Iq8aCRg2EBduiKic459n1x28wMassjfzQ U3MApE3vhVLIdSlZzJisdbtyVmXzk0TKLxjwmqSSzw2ugBlskYJMqQLl/Dcp5QvLMUV3qe+31 C8vF8bNovzsPycM+vGGCqfS0dok7LbJ3lj4vAoG74F4yIGiGK1su+6CusCr37BMYC0JGLhKKg OiIXjfqyvYsldNGO/SV68/6efvsVoneyDNEJEydbSBrZXi+piBQIkse5IVKQhU3ZDWLLY75sv UZU2qqbL/88mv63JM+h9/AqbEgB2+WsPq0exRJjh1tXq41dQObMtG0aiMiFwT67s1lTLcTeqd gupjzrw1VPQfzHQVS1nLF6pkiaKn7XdTFgFZfvNPz3aCVJQX1Zepk Cc: u-boot@lists.denx.de, Heinrich Schuchardt Subject: [U-Boot] [PATCH 3/4] efi_loader: loaded images cannot be started twice X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" If an image already has been started, return EFI_INVALID_PARAMETER when StartImage() is called for the same handle again. Signed-off-by: Heinrich Schuchardt --- lib/efi_loader/efi_boottime.c | 3 +++ 1 file changed, 3 insertions(+) -- 2.20.1 diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c index 251dfc4ecc..275850a1a8 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c @@ -2863,6 +2863,9 @@ efi_status_t EFIAPI efi_start_image(efi_handle_t image_handle, EFI_ENTRY("%p, %p, %p", image_handle, exit_data_size, exit_data); /* Check parameters */ + if (image_obj->header.type != EFI_OBJECT_TYPE_LOADED_IMAGE) + return EFI_EXIT(EFI_INVALID_PARAMETER); + ret = EFI_CALL(efi_open_protocol(image_handle, &efi_guid_loaded_image, &info, NULL, NULL, EFI_OPEN_PROTOCOL_GET_PROTOCOL)); From patchwork Tue Jun 11 19:43:30 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1114204 X-Patchwork-Delegate: xypron.glpk@gmx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="EuYYTHiB"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 45NgSq5vRqz9s1c for ; Wed, 12 Jun 2019 05:44:59 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 7F64DC22187; Tue, 11 Jun 2019 19:44:38 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=FREEMAIL_FROM, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 9D453C21DD9; Tue, 11 Jun 2019 19:44:33 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 03E31C22115; Tue, 11 Jun 2019 19:44:14 +0000 (UTC) Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) by lists.denx.de (Postfix) with ESMTPS id 5F89DC22186 for ; Tue, 11 Jun 2019 19:44:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1560282250; bh=6AfyH11v3Y7NmwHVKG5BBxm4ANM2d50vaB3UQ4n59xs=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=EuYYTHiBInJWCAmT0VuYAhwEhMQ6EmXF/VW//mZQQAHTH8ffwQoEHscK9u+bMCCGC zjnEFhanpJsm/SvubENUd2moQOW1kKBFfYCg09/X1Klp6syz9v2vAeNryhXBp7ZMt+ QGVvdDyuWaBu+LSCyaZ0LbfVnwKiH7zsEoGO4SqU= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from LT02.fritz.box ([84.118.159.3]) by mail.gmx.com (mrgmx102 [212.227.17.174]) with ESMTPSA (Nemesis) id 0MH5Sw-1hoaTY1F8E-00DpNX; Tue, 11 Jun 2019 21:44:10 +0200 From: Heinrich Schuchardt To: Alexander Graf Date: Tue, 11 Jun 2019 21:43:30 +0200 Message-Id: <20190611194330.8724-5-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190611194330.8724-1-xypron.glpk@gmx.de> References: <20190611194330.8724-1-xypron.glpk@gmx.de> MIME-Version: 1.0 X-Provags-ID: V03:K1:Xn0+Ibb7tT3AFglXSI5y5H2CZH+y2v01vzB5MKY3hJ0d3FKKN2N bzkuKGlfwR8L7aRYQvApvwT9CZGGxFAFSohA2AKLVxVKtRu7Bn9g6b8OKosIjvi9iXBWCVz dJCGcRBrYaChK7vBrZ6+hWmknLMbTaVLUiOz7xQ/NTn4GKNKFW0FWVIth/JPLIBUwniPsBb nFrFEphtLOAkdw9vsB6KA== X-UI-Out-Filterresults: notjunk:1; V03:K0:BXHhiLACjaY=:sUBpv1vErnAkwQYsicNnMs WIRtjWsP7p/kzkrmBH3dPl2E/UixserwHo30FqGUG33gcl2IlqPHpunhWSexcu1jUaaH8Jee9 A9f9zOd0r3gRUgiAm3jxXfC/dEPAHurf9zO7SaX83FRGf8Is4GMEyJO1wSHaK3yUhuptbLFEl kuPl0iK4Eddm1sU2pnIv/KS0mQyS8ASk0T1L8iO7QUt4cd2ZyA6+VWwLcRIk8YU4baK9dScKv TmnJ85zWePQtAQHw6GKf7OwtaLlfn0hEDoq9gJr7o7acG1+R07rSJePMphum5IOJlYz/qXH8w DDNO2alcvVDabWhwkO7romcRH+Xltl3Wyw+XyNXooU3xsiqOBk8VJJPYA44D9SxNUZrl9hjr9 1q66WkveToU31KAA7OZZ2EACN5ODNlbNOQG3CaGhu9el7w1RY1RJFnHgL3Mmtfqs3BveZPjQA nOV7uzouz4UcbonlnqZJ2vxgyqtulco+bK7BFuvA2+zQMFOae0iQs3+rIAsPoVGg5Xk+VlEKC rMfuAMgN5XVqsiCFgiHzQ1N39XoBCDmf3BM2kqb76EGKLGCNJNAlIymp+e5TNdgmmmOKS+eqd HZcZeMkAE7GNJdCWjl/tpubRi6Q8uyJ36LjsB/XBJ/zfG5ztXmrhAqxtEk8zhr05s4DK+hVQa egDu83zziEcP0Vg4cjzRZRpVSePNvOBUMNDAcTgtFvXBNln0l8ONmVSHjVglWcKGyiVRaeo15 3ocKmSpoyM7RxHXVTSvTGjg2gvM8RCmUQY6YtnyMEVYHtMRi4ikT+Nej1yomKF+3wtmyflWk8 6YFYbyHAtJghcDvvlQ2wkM5P8CmXXPrdzSS+p60zGA5p/S0z3Wqekk3vuEUr6+xp69pmdw3Ko YEWvU9zPGGmKkgnKkcRtCeRw3CldrU3av/5XTmlbtPLTWwSZvAWQGZUXQEke5y/I3hjf0tDdk CQX33SUDJ35IE1WdVv7eesLNKjAW64r21Bb0Ibr6YB6zsNglv7GlT Cc: u-boot@lists.denx.de, Heinrich Schuchardt Subject: [U-Boot] [PATCH 4/4] efi_loader: correct ExitBootServices() X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Always use EFI_EXIT() to return from the function. Signed-off-by: Heinrich Schuchardt --- lib/efi_loader/efi_boottime.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) -- 2.20.1 diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c index 275850a1a8..b26291b919 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c @@ -1933,16 +1933,19 @@ static efi_status_t EFIAPI efi_exit_boot_services(efi_handle_t image_handle, efi_uintn_t map_key) { struct efi_event *evt; + efi_status_t ret = EFI_SUCCESS; EFI_ENTRY("%p, %zx", image_handle, map_key); /* Check that the caller has read the current memory map */ - if (map_key != efi_memory_map_key) - return EFI_INVALID_PARAMETER; + if (map_key != efi_memory_map_key) { + ret = EFI_INVALID_PARAMETER; + goto out; + } /* Check if ExitBootServices has already been called */ if (!systab.boottime) - return EFI_EXIT(EFI_SUCCESS); + goto out; /* Stop all timer related activities */ timers_enabled = false; @@ -1990,8 +1993,8 @@ static efi_status_t EFIAPI efi_exit_boot_services(efi_handle_t image_handle, /* Give the payload some time to boot */ efi_set_watchdog(0); WATCHDOG_RESET(); - - return EFI_EXIT(EFI_SUCCESS); +out: + return EFI_EXIT(ret); } /**