From patchwork Mon May 24 09:56:53 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1482697 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=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=85.214.62.61; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=WS+dIiF8; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4FpXgn5c2Fz9s24 for ; Mon, 24 May 2021 19:57:25 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 573FE82E95; Mon, 24 May 2021 11:57:13 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="WS+dIiF8"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 2134A82E99; Mon, 24 May 2021 11:57:07 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FROM,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL, SPF_HELO_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id EBB4582E92 for ; Mon, 24 May 2021 11:57:03 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=xypron.glpk@gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1621850221; bh=WhRPMMWucR5MniH4BRzzVCexJNwq1hzEKBymn84UoSU=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=WS+dIiF8eMUCXfnHtAmtLTSmChs6YG0HE+qnk2L2juklSuzYOPkb+uNLBFlzsEhSH STAJZq//vIf55k1qKa+A3IKP36zfjCblNghP4u2/7EtzKijP2pwLdPGxBtby+sCLYa UeskSKYiW90XAuYG/xBjj0+smoU5OGJ26bOHTnbI= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from LT02.fritz.box ([62.143.247.63]) by mail.gmx.net (mrgmx004 [212.227.17.184]) with ESMTPSA (Nemesis) id 1MtOGa-1lRw3847qw-00umew; Mon, 24 May 2021 11:57:01 +0200 From: Heinrich Schuchardt To: Alexander Graf Cc: AKASHI Takahiro , Ilias Apalodimas , u-boot@lists.denx.de, Heinrich Schuchardt Subject: [PATCH 1/4] efi_loader: simplify show_efi_boot_opt_data() Date: Mon, 24 May 2021 11:56:53 +0200 Message-Id: <20210524095656.161437-2-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210524095656.161437-1-xypron.glpk@gmx.de> References: <20210524095656.161437-1-xypron.glpk@gmx.de> MIME-Version: 1.0 X-Provags-ID: V03:K1:mXHPROwbj4nte/q8n3Ha5T86IJe8waFNxy6drBWHbwAxD6P6UQd NQNlUbrK/4o+kdim5tDKSfsLZwKy/7HIYQSRl2Ly2zuDxJbOBaXufv6X9aMjQbnUbuoUn9q mmsGrpTuQpsKHlzBENDY2H/A/EJOK9TZaitpgzBfD1GP72VkacdJfPG7GVjsr+IJIIA6TTJ fZnUMdTIPfTKN36k/DDHw== X-UI-Out-Filterresults: notjunk:1;V03:K0:hhY4hicqDK0=:L2ZWfzbj2VO6XNuLGBHmZf L4E2qfPUJ1IalSf/z1OrWM3ANgX4TPA2PorzGDE9e8nrvqNAZkDceiynEMO9Z8hHOAzOMx/0s a1syv63Ggl0jVePruepmbMLAkK3LeS4xfVU8Kh2t7gnpUWON5L5tuD1mYYOXfEkFFqwm/5xX/ wPl4TgVH4jJErfmgiGLcctMjQNeJIvmVX4YTxVhl2ceE179V9yOJlMMUFFwxsXO3HxmGSDulF 94XMhGc83Ka3R4Mhzb7yoJHHcp6AqkgeVTwZVZvHaAVKPO+SOmB+4x5rUvmReejjm85YCTHxg N+PsnJTsdWzOwi4Psmfocs38li97lh+VZlLmC2dkUzdMzN5/pDTSroCl8fBCRbJW5dRuNSYCX f4JeInWcBzHwc9RdvfoG2mP5W9evUouxtq9g3sBCmjTDN0HsqGqTJAr0p3QgNKsLKWTwBi2ta bPgD69XzDN4/CX4tPQ8P6PKmz6gPmocjJX65GcTlyWguV7TJolW3GXoQxvLqmy/jlkKG/4pRb stnAyWE7BsJYv7M0HmG9I9iYLGscnEhmVZgWw3ayx7ckmO3JVwHcBMkSe8Wf6GvcNzI0BbPla phjMDx+5oBZNHsnkTJw50eD2pKyYQ/wt8ck3RZfNlmKgjvSVy1dJRixTRkeNJPwpUZIYAvm+l 5Mrs/Qlgr2gLVRM/n0RhrHJkgZ9geo0OL6Z9wBAb4eI0uYxZdXjoLP21UTtB5N2O/7SUdsC5z sez9FbnDkkjbqsIFRDtG43zB7vHo3hfHqxmiZoMZzD9R/l9gXMvgXCBj8aWy4BhHA7S/Md0Ve syLzSHmgeED9r8sm9R4ihTI5k0/VJ8tCaGrAvZcy8sYwtzd0toD2kcYUJGlsJxmfx2ufJzZEW OwzCRiuxIp4xr+wK9flB93kZlo9X/TZ0J360VnQVkJGHfd0/12h7ry5L2soaB99ss1tkXkUko myvNJtE4S0WH1t5PFUTEGnFXbE5N0FCbuQB4PYjNdrjcb2enoijH+OKRB/XVaFjAqhZgu/bvM AznjxySPxBbQVYs5naSP7B9FaFIoh+TSM52/tX4tFMqGRXgAd+bb2GKaRK9rPxFkkCsZQW140 VRXzu7n4urb4KBRBqwITCligMTfSq1f/spnKOXNZ/PJKJhJtFV2e3kUX371fOV5KEuO1ga/Gn 7XhdLlzL/FEOXqVsP7veiTA7TmNWJPNZaK9okdtbkAjpfUbSrmcgF7CWU3sIQTm5CKdXA= X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 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" X-Virus-Scanned: clamav-milter 0.102.4 at phobos.denx.de X-Virus-Status: Clean To print a UTF-16 string use %ls instead of converting string to UTF-8. Signed-off-by: Heinrich Schuchardt Reviewed-by: Ilias Apalodimas --- cmd/efidebug.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) -- 2.30.2 diff --git a/cmd/efidebug.c b/cmd/efidebug.c index 0bf7b8856c..9444eca49c 100644 --- a/cmd/efidebug.c +++ b/cmd/efidebug.c @@ -1147,8 +1147,6 @@ static void show_efi_boot_opt_data(u16 *varname16, void *data, size_t *size) { struct efi_device_path *initrd_path = NULL; struct efi_load_option lo; - char *label, *p; - size_t label_len16, label_len; u16 *dp_str; efi_status_t ret; efi_uintn_t initrd_dp_size; @@ -1160,14 +1158,6 @@ static void show_efi_boot_opt_data(u16 *varname16, void *data, size_t *size) return; } - label_len16 = u16_strlen(lo.label); - label_len = utf16_utf8_strnlen(lo.label, label_len16); - label = malloc(label_len + 1); - if (!label) - return; - p = label; - utf16_utf8_strncpy(&p, lo.label, label_len16); - printf("%ls:\nattributes: %c%c%c (0x%08x)\n", varname16, /* ACTIVE */ @@ -1177,7 +1167,7 @@ static void show_efi_boot_opt_data(u16 *varname16, void *data, size_t *size) /* HIDDEN */ lo.attributes & LOAD_OPTION_HIDDEN ? 'H' : '-', lo.attributes); - printf(" label: %s\n", label); + printf(" label: %ls\n", lo.label); dp_str = efi_dp_str(lo.file_path); printf(" file_path: %ls\n", dp_str); @@ -1194,7 +1184,6 @@ static void show_efi_boot_opt_data(u16 *varname16, void *data, size_t *size) printf(" data:\n"); print_hex_dump(" ", DUMP_PREFIX_OFFSET, 16, 1, lo.optional_data, *size, true); - free(label); } /** From patchwork Mon May 24 09:56:54 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1482699 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=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=fR0zAFA0; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4FpXhC5SP5z9s24 for ; Mon, 24 May 2021 19:57:47 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 58AC082EB7; Mon, 24 May 2021 11:57:26 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="fR0zAFA0"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id E950382E9E; Mon, 24 May 2021 11:57:10 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FROM,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from mout.gmx.net (mout.gmx.net [212.227.15.18]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 01D6C82E94 for ; Mon, 24 May 2021 11:57:03 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=xypron.glpk@gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1621850221; bh=ZWD4GW48L9f6vEnGIjdTDIXeLB1RDcj/7Ot642q4f8w=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=fR0zAFA0G+o2xwecCmHW1fHOJJT5DokiIsT7F+hwOAA3Kccq5WiB66jJ4/9ifNkC8 XfIL7ZKX+sN0Jq+v/WQdJivc3fWl9gE0qG60/yKvP9kCkqOEGxh95f0jhMoYAMjAdz f9FzA4TxctXqyD9MyiMUd67B3E42ANWzVuRxyYoc= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from LT02.fritz.box ([62.143.247.63]) by mail.gmx.net (mrgmx004 [212.227.17.184]) with ESMTPSA (Nemesis) id 1MwfWa-1lVDJH0wf4-00y6aE; Mon, 24 May 2021 11:57:01 +0200 From: Heinrich Schuchardt To: Alexander Graf Cc: AKASHI Takahiro , Ilias Apalodimas , u-boot@lists.denx.de, Heinrich Schuchardt Subject: [PATCH 2/4] efi_loader: simplify show_efi_boot_order() Date: Mon, 24 May 2021 11:56:54 +0200 Message-Id: <20210524095656.161437-3-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210524095656.161437-1-xypron.glpk@gmx.de> References: <20210524095656.161437-1-xypron.glpk@gmx.de> MIME-Version: 1.0 X-Provags-ID: V03:K1:7T3jIHur/lVqZNeYAruSMFXbi9sQguZk/cj+xiCISiqnqy67nVj Vb0kcFJSoY2ndAxaymAfgKublCZpjRjynsraFq4seZCoCz+Lg2KdZHQ3MjhcV1j99TaRXwO W1C4o8zznkxsnwxzJ/NlIA/BkdUrmLNAGjt/b3TWRhO3ZT2l0kt21bXZgfrU249p8fvv+NE k8rmxIQUWhRw3Gnj12mNg== X-UI-Out-Filterresults: notjunk:1;V03:K0:Kd8MX2fisHg=:Q/pvUAoO8LKZuHHcDoaKJI iWxHduujH7cUIUon4mhYWy6JUzsHbgPYe+RGPqbVno2LFz6NRPRVG8hoAcGehYzTLkhRrxvNQ iGr1/fVeStWlQqfowXHki/MfhlOSCEbdZpYJU04PsZfNqwmeiCkyXFr82MAhlpfG9VWXC5abk tWgAO5SDI+D1dJH8STkxi7FKi8TxjYS+rCQsTTTrbkeiZcu8wiCcoxY34g2S5CtipOIy+VY/r iZfbdF5+UZObS7MLl32U8JGN8ZiNx2sNPc7a4cuOphhmvWPPl3bXtnLz/c47MMglIZF9izZC8 1cmdq8TXEiztMy2dEouDyO5EPx4uWDaPQ0PmPE3JveGSuv0TsfHfZdFVUL70Lh8ph26mp4YeR d66t9Pw8hJHyG+RuQUsJ3OOo2e7SCgthlYe6Qe/Ndvampj0f4+tH3pf/o/QChAr2uGPLtXqsy 82BeYbj3gBaeabQ9uZg2O5sVMS1BZ5AQvA2GRfwlu/cLAz2QcK7+CuFhzPQ1LSXGot5kffAIF 4ajsntI0D5x/4G7gN7Yxj/LZc/GKgizD8WVURXCUkdwnkNOv4ds4YAAhHKaJBnwhxphwAovHS jR6SQ9SOeImZTiPKtOgFu4gQK9554LikWvnWA3JM6OlOKaekRzuMPufof0Mk95bXUSOqzkUaH cB4KBsA7jhJhN4w/7iER9eKfPFLdYXdgKfv2o2HsZOadxRJAQleTX8+56Vty8EHaffkUPReyv 9+oxWoWCENc6e1UKYoul5K2yrOTjwtHuKFLHAvjm6W9t3eX4n5e5m8LQGQhzkbj4TrHRfMsBD xSwuQ6TFyGMbKK2pFX2UvkbmVICe5cnHECMDpz8AcC3AvtqxXk+FfNQVpkDlTiv7A+pkNe/XB 5wweMwk5G8lx4JqPqjZ22O5VjChezzNoINTkM8lU8YqNioXh/91SUb/k+xyzkRCRZQe8uAJIy VIrlyYil1LhBMC7U2MIZcFh00zmA+t/i57MoYcO9VnEAgOHUREM2tFsDY/QmipcR2KmyToQ/w JtmVQV3Ad6YUOAObqyMaOMHxSeNGj8fB6b/OPrDygJW+FQClNuZqXvP+WqSCNCoqY8Q1Wu5ld GxKtrkmCEr9fyZKUuSY94l53xBsGx2k1ZZk X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 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" X-Virus-Scanned: clamav-milter 0.102.4 at phobos.denx.de X-Virus-Status: Clean To print a UTF-16 string use %ls instead of converting string to UTF-8. Signed-off-by: Heinrich Schuchardt Reviewed-by: Ilias Apalodimas --- cmd/efidebug.c | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) -- 2.30.2 diff --git a/cmd/efidebug.c b/cmd/efidebug.c index 9444eca49c..4c0facd26c 100644 --- a/cmd/efidebug.c +++ b/cmd/efidebug.c @@ -1317,8 +1317,6 @@ static int show_efi_boot_order(void) u16 var_name16[9], *p16; void *data; struct efi_load_option lo; - char *label, *p; - size_t label_len16, label_len; efi_status_t ret; size = 0; @@ -1380,18 +1378,7 @@ static int show_efi_boot_order(void) goto out; } - label_len16 = u16_strlen(lo.label); - label_len = utf16_utf8_strnlen(lo.label, label_len16); - label = malloc(label_len + 1); - if (!label) { - free(data); - ret = CMD_RET_FAILURE; - goto out; - } - p = label; - utf16_utf8_strncpy(&p, lo.label, label_len16); - printf("%2d: %s: %s\n", i + 1, var_name, label); - free(label); + printf("%2d: %s: %ls\n", i + 1, var_name, lo.label); free(data); } From patchwork Mon May 24 09:56:55 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1482698 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=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=85.214.62.61; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=JkRf+A8p; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4FpXgz4kgWz9sPf for ; Mon, 24 May 2021 19:57:35 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 9DE6A82EA1; Mon, 24 May 2021 11:57:22 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="JkRf+A8p"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id B1C8282E9B; Mon, 24 May 2021 11:57:11 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FROM,SPF_HELO_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 243F382E98 for ; Mon, 24 May 2021 11:57:04 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=xypron.glpk@gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1621850221; bh=CFzh01qt6Lo4KI6vpa8ARgIrWiEGDYr5RLqdBJSWmIQ=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=JkRf+A8pB7MPTrKLYtNeeeOrhMJaM5zddUetuSArV0lJph82/LaoJUiickdhxevWE K5raCDqxpsXZQ/HryOqhQevkMG2Sde1crq091QwFiJJurmyyIDm7xCAu+rEwpzIOJN xEeaNL0j4K4E5g6dXSMtoN2JRE6GBJzwbtdwZ7K4= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from LT02.fritz.box ([62.143.247.63]) by mail.gmx.net (mrgmx004 [212.227.17.184]) with ESMTPSA (Nemesis) id 1MbirE-1lAPCN1qiU-00dFm6; Mon, 24 May 2021 11:57:01 +0200 From: Heinrich Schuchardt To: Alexander Graf Cc: AKASHI Takahiro , Ilias Apalodimas , u-boot@lists.denx.de, Heinrich Schuchardt Subject: [PATCH 3/4] efi_loader: use efi_create_indexed_name() Date: Mon, 24 May 2021 11:56:55 +0200 Message-Id: <20210524095656.161437-4-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210524095656.161437-1-xypron.glpk@gmx.de> References: <20210524095656.161437-1-xypron.glpk@gmx.de> MIME-Version: 1.0 X-Provags-ID: V03:K1:9VWn7ne1FDKGL5wZQmUzsfM3V36KV9lGVt+55dLVZWzA7L2zVgD OQVG3Q9Gr6DgGWYMhr1xAphQq2Rt01i5fquXNXcjJWMHl4JOH5sxRVKs5CeFQ3yPz2kkrPy uapOtk8EygUNlv+U8AFb1Nhx1KRreMc11xoHnkuKTXWklqyuYbtFWGDPo0ooshEWxUh4JLZ b8bgeiNbu1J/CMpHRMhaQ== X-UI-Out-Filterresults: notjunk:1;V03:K0:x8HDazbxLKc=:KXL6Z1s5wI9C4fP9IKCNot ZUC6VKGXia5AOJSMyz+k9lHjcgcaW9lQ/lHgbfx8UMZ9hZvGTiNqUXyzLeiN/EcXEKjf/r/Bv RTf18YYl6WYbwqojtcgu0/ez3DmeCa2LxR6XYGDI5EhkU6DTWQaPT4HsYEpNH7NeCnX66p/np z23aC2IW/E1gwPjGHeyv9s2qYq4cdfGwCThj8QNeWEmttU/n8/XjGRJpf+Zeg1I/hTnO/XEwf J92ty8VSUGv+JbmNSEabD7huWrH9xk34PAOlwpC3lzyBl66VVgKdIRKqXZobGVnDF/sBFrLDV qMRP20a+AlSNbjz393lkxgRA7q7S8legzyAArKpt7Pn0PYHxvSZaLcI+bEnDF2T+0DjL2rPj8 RNxTOJRBywc0BAe0Gd32e3kKkzwkmWgq34uD+AV8abIWo+gQkoZVtIr6jKOm40vjyOsIeaRJb Uw2nuKL9pYxL9ME/QTw0Iq2vhHgu4SieuZrxscTKJ629zYF9tS8tpHQoTR5tOUF3gwesyQhSg LuXWbdzdeprRrhO/FViPQehR2wA9leowk1YlM+Q5XHih78PaMXn7MiuZCp3l7H5XeLP6dTNuo rGa45JOOrkK2wT8h6Ou9mGtiy2aeDV0pseRI4+HRjhYhAU1Rs3ZK7A5ChPNkb/3bYWM9IeYbU YC6nvwV6Lg6jyxKt486hilDxLvWiCdlVdK7vr5SGxyneFcCMvmGVJQ6NtU/xvp9EJVLwY7zAx 2ArkGXPd0JjdlhGjQMRqqsExelTdwq3sULdKf3FlayqKgwu+K/dbcipJrP53ptCR3Bmi2QSc9 E7pn6sZfXcInxHnAj8oJxM7267JBul11QS/00DgE1ywZ1rGVosMbpwqoynnQxwNA+beRZA92s NgYr6o6GL+Ra/WPplRroyNZmu71BGuSfWi83pVI1wczEuBdY7gqYHyQD2k0oUjczJ+HVUEOlU aHe2L6oTGkN6sBatOCP+Gs4thg80oioOi4azvwhfnMggzOXGDogbrjSTYpX4UityJCN95LM1t 8mwVP+dG88/P08HSiSEchvhE573srwwV5mXOCDWnqE3eTNwH9NWSXi1jlA4zzd6k/1wixbMuY i243moXJB3Tm5C+dfA/RH+ZO19L/9B/nBGyIalwOKz/zFAribtS3kJqDyz7ARtM5YZD1Y5p5A rhhdMgUSUuWm9L5jY3m6202jbPo78FP1dZ8t/BHuowoQXQtNGz57VIDwcXadv5pPZJasQ= X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 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" X-Virus-Scanned: clamav-milter 0.102.4 at phobos.denx.de X-Virus-Status: Clean Simplify the creation of indexed variable names like 'Boot0000' by using function efi_create_indexed_name(). Signed-off-by: Heinrich Schuchardt Reviewed-by: Ilias Apalodimas --- cmd/efidebug.c | 37 ++++++++++++++----------------------- 1 file changed, 14 insertions(+), 23 deletions(-) -- 2.30.2 diff --git a/cmd/efidebug.c b/cmd/efidebug.c index 4c0facd26c..9c3ba73d61 100644 --- a/cmd/efidebug.c +++ b/cmd/efidebug.c @@ -227,8 +227,7 @@ static int do_efi_capsule_res(struct cmd_tbl *cmdtp, int flag, { int capsule_id; char *endp; - char var_name[12]; - u16 var_name16[12], *p; + u16 var_name16[12]; efi_guid_t guid; struct efi_capsule_result_variable_header *result = NULL; efi_uintn_t size; @@ -259,9 +258,8 @@ static int do_efi_capsule_res(struct cmd_tbl *cmdtp, int flag, if (capsule_id < 0 || capsule_id > 0xffff) return CMD_RET_USAGE; - sprintf(var_name, "Capsule%04X", capsule_id); - p = var_name16; - utf8_utf16_strncpy(&p, var_name, 9); + efi_create_indexed_name(var_name16, sizeof(var_name16), + "Capsule", capsule_id); } size = 0; @@ -954,8 +952,7 @@ static int do_efi_boot_add(struct cmd_tbl *cmdtp, int flag, { int id; char *endp; - char var_name[9]; - u16 var_name16[9], *p; + u16 var_name16[9]; efi_guid_t guid; size_t label_len, label_len16; u16 *label; @@ -988,9 +985,8 @@ static int do_efi_boot_add(struct cmd_tbl *cmdtp, int flag, if (*endp != '\0' || id > 0xffff) return CMD_RET_USAGE; - sprintf(var_name, "Boot%04X", id); - p = var_name16; - utf8_utf16_strncpy(&p, var_name, 9); + efi_create_indexed_name(var_name16, sizeof(var_name16), + "Boot", id); /* label */ label_len = strlen(argv[2]); @@ -1107,8 +1103,7 @@ static int do_efi_boot_rm(struct cmd_tbl *cmdtp, int flag, efi_guid_t guid; int id, i; char *endp; - char var_name[9]; - u16 var_name16[9], *p; + u16 var_name16[9]; efi_status_t ret; if (argc == 1) @@ -1120,10 +1115,8 @@ static int do_efi_boot_rm(struct cmd_tbl *cmdtp, int flag, if (*endp != '\0' || id > 0xffff) return CMD_RET_FAILURE; - sprintf(var_name, "Boot%04X", id); - p = var_name16; - utf8_utf16_strncpy(&p, var_name, 9); - + efi_create_indexed_name(var_name16, sizeof(var_name16), + "Boot", id); ret = EFI_CALL(efi_set_variable(var_name16, &guid, 0, 0, NULL)); if (ret) { printf("Cannot remove %ls\n", var_name16); @@ -1313,8 +1306,7 @@ static int show_efi_boot_order(void) u16 *bootorder; efi_uintn_t size; int num, i; - char var_name[9]; - u16 var_name16[9], *p16; + u16 var_name16[9]; void *data; struct efi_load_option lo; efi_status_t ret; @@ -1344,16 +1336,15 @@ static int show_efi_boot_order(void) num = size / sizeof(u16); for (i = 0; i < num; i++) { - sprintf(var_name, "Boot%04X", bootorder[i]); - p16 = var_name16; - utf8_utf16_strncpy(&p16, var_name, 9); + efi_create_indexed_name(var_name16, sizeof(var_name16), + "Boot", i); size = 0; ret = EFI_CALL(efi_get_variable(var_name16, &efi_global_variable_guid, NULL, &size, NULL)); if (ret != EFI_BUFFER_TOO_SMALL) { - printf("%2d: %s: (not defined)\n", i + 1, var_name); + printf("%2d: %ls: (not defined)\n", i + 1, var_name16); continue; } @@ -1378,7 +1369,7 @@ static int show_efi_boot_order(void) goto out; } - printf("%2d: %s: %ls\n", i + 1, var_name, lo.label); + printf("%2d: %ls: %ls\n", i + 1, var_name16, lo.label); free(data); } From patchwork Mon May 24 09:56:56 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1482700 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=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=85.214.62.61; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=AJ5xfixu; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4FpXhQ0gDQz9s24 for ; Mon, 24 May 2021 19:57:57 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 715E882EBC; Mon, 24 May 2021 11:57:31 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="AJ5xfixu"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 372DD82E99; Mon, 24 May 2021 11:57:13 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FROM,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from mout.gmx.net (mout.gmx.net [212.227.15.18]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 445C882E95 for ; Mon, 24 May 2021 11:57:04 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=xypron.glpk@gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1621850221; bh=PMp+qL+d448G3Yl50Ki7f5J+hXuRxn03HLOuuJ+PvpM=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=AJ5xfixuNmPSoRPW40EtP6NmKLG44wNBt7w8gUARzxIOGMUFsMCGhS63/7a/hN2NZ PeFo95ZPKEphCWf8S40WtrgNq319hmVrM14Yrgg28p7jJD5swSinbEozWE1ts/NnuP 1VLLnPVzkUMtMCYipcF/izJ3ti6dFIeNQXqtHJrs= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from LT02.fritz.box ([62.143.247.63]) by mail.gmx.net (mrgmx004 [212.227.17.184]) with ESMTPSA (Nemesis) id 1MiJV6-1lGzqV2nOI-00fTla; Mon, 24 May 2021 11:57:01 +0200 From: Heinrich Schuchardt To: Alexander Graf Cc: AKASHI Takahiro , Ilias Apalodimas , u-boot@lists.denx.de, Heinrich Schuchardt Subject: [PATCH 4/4] efi_loader: simplify accessing variables Date: Mon, 24 May 2021 11:56:56 +0200 Message-Id: <20210524095656.161437-5-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210524095656.161437-1-xypron.glpk@gmx.de> References: <20210524095656.161437-1-xypron.glpk@gmx.de> MIME-Version: 1.0 X-Provags-ID: V03:K1:vTbzmqzr816AhdBPQgWEUnJon1MGt+w9WtSXnRKsWXYkirZkjL+ PsIDZf/1Zi5PH0XPFRSwXh1Piijmp698Zi7D6XK+VAB8EfZ6dSmKwFndqvIYh4vcC3U2rws AgZYPtRWtR32I4YWIy6E39gnTZ4fAV1N4QgDaH5TqaerF4nf0sn/inzbTVTDEcyW2GGWv+q nKmjr11WXyUeFtIAONOKQ== X-UI-Out-Filterresults: notjunk:1;V03:K0:bcKq3KYkqlI=:IQY261VTxDrIq+kwO+ZFmJ fG27PRltsVzr6uFxtNRGoxU0dsXc7Tl3GUvfLZeEIIdZVA6GffoRtgjL7gzuyEEKszwcwFumb 1Khbyy7qOY5clAeza+TYnCKrn5v7qI086NkrorGIOtaogShShG4teCM9h9IaKDuwy6I7kRpSc 0pdu57n1QiBGrG2AY4Hyw5PyxZSn/xY2R2YWvBQFgNy3laQsRaI66FTRvKs4ffXxQp6hULP8G RB0ndQRNXRW2+hLvuDjLAnYpcnD2jdHQBpDXL6SJvCa1aKsBxhq7nxzHEWS3YHU9qJkCG4vTm RMPQ92KxNxgr8OThqESIe66ZUly3yyCRut1qicoKD75rCI+75fJLRM6ozvb09dIAqfKZFSP0b nJUln6WeEK1Nkr1ydz8UqOKM8UbFDfxEMXrMKgwDCQ7GWSOY6jB5pbAPZReMpKNR8hi2OKiIx LOSCeBgya9mOquvq2+LqO+LkKlcaraFwNja/S8bL/z1tuZ2mYcWTgLtVrs6SNzLiweKCUvRwH 8Zm1VKfO7+YuX980vGp9hMIARwk0/i40s2tGOJUYLFW99IPJYvqoHpTO2hRmWp51kVBsTRA1a yuuokVjIgkucOBp7DpXGDZ2jPA/1YvsY4uUkx+oYxmM0mmuEv5Qw823NX/JmzTHCPLkFvxVYf KBTJkclYgR1gEPYp7H0e+3bLHhQCP5b74sJpEWfWCNLKdUU1KfkA1ddBhOCLIm8rYQvNApKYR fod7ic8ByrAglBFxg+Uw7YAfMGTSYZx0kb7RTpjAenyBe/Bmr9jLqozLJea/nb0j7vWBWLMBS J0+QNW5asFIq/b3HwtOZkdmgG8mBegBF6FfOhOutu65Z6CawuAsMekiGgWTeYsCHwwiALJpuZ /xlrald9d4PW3bJ1HuMSUEdoBA6vXwy5S5+AwtmNeqrMgm+7kGY75GRdGWJm93xrsIaGnZNaU 8B+Zd0j6ihPrFFS/Wqx3Shpq/ZKXjzylrCdh812WWfAxJGPNZx7hZik9xT7ttAx5e7bU9MkTC iGl9/B1Ociug1slLpr0FDzkf9kSlh2pZ4EqJ7sCe1XBZNWmmcHgqGEF8R1GR3kFXUXrulurNw aiiDi6e6v7o/aFq11RVzrezwUpo+UJdgZt4 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 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" X-Virus-Scanned: clamav-milter 0.102.4 at phobos.denx.de X-Virus-Status: Clean Use efi_get_variable_int() instead of EFI_CALL(RT->get_variable()). Use efi_set_variable_int() instead of EFI_CALL(efi_set_variable()). Signed-off-by: Heinrich Schuchardt Tested-by: Ilias Apalodimas Reviewed-by: Ilias Apalodimas --- cmd/efidebug.c | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) -- 2.30.2 diff --git a/cmd/efidebug.c b/cmd/efidebug.c index 9c3ba73d61..c6352719dd 100644 --- a/cmd/efidebug.c +++ b/cmd/efidebug.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include @@ -239,8 +240,9 @@ static int do_efi_capsule_res(struct cmd_tbl *cmdtp, int flag, guid = efi_guid_capsule_report; if (argc == 1) { size = sizeof(var_name16); - ret = EFI_CALL(RT->get_variable(L"CapsuleLast", &guid, NULL, - &size, var_name16)); + ret = efi_get_variable_int(L"CapsuleLast", &guid, NULL, + &size, var_name16, NULL); + if (ret != EFI_SUCCESS) { if (ret == EFI_NOT_FOUND) printf("CapsuleLast doesn't exist\n"); @@ -263,13 +265,13 @@ static int do_efi_capsule_res(struct cmd_tbl *cmdtp, int flag, } size = 0; - ret = EFI_CALL(RT->get_variable(var_name16, &guid, NULL, &size, NULL)); + ret = efi_get_variable_int(var_name16, &guid, NULL, &size, NULL, NULL); if (ret == EFI_BUFFER_TOO_SMALL) { result = malloc(size); if (!result) return CMD_RET_FAILURE; - ret = EFI_CALL(RT->get_variable(var_name16, &guid, NULL, &size, - result)); + ret = efi_get_variable_int(var_name16, &guid, NULL, &size, + result, NULL); } if (ret != EFI_SUCCESS) { free(result); @@ -1062,11 +1064,11 @@ static int do_efi_boot_add(struct cmd_tbl *cmdtp, int flag, goto out; } - ret = EFI_CALL(efi_set_variable(var_name16, &guid, - EFI_VARIABLE_NON_VOLATILE | - EFI_VARIABLE_BOOTSERVICE_ACCESS | - EFI_VARIABLE_RUNTIME_ACCESS, - size, data)); + ret = efi_set_variable_int(var_name16, &guid, + EFI_VARIABLE_NON_VOLATILE | + EFI_VARIABLE_BOOTSERVICE_ACCESS | + EFI_VARIABLE_RUNTIME_ACCESS, + size, data, false); if (ret != EFI_SUCCESS) { printf("Cannot set %ls\n", var_name16); r = CMD_RET_FAILURE; @@ -1117,7 +1119,8 @@ static int do_efi_boot_rm(struct cmd_tbl *cmdtp, int flag, efi_create_indexed_name(var_name16, sizeof(var_name16), "Boot", id); - ret = EFI_CALL(efi_set_variable(var_name16, &guid, 0, 0, NULL)); + ret = efi_set_variable_int(var_name16, &guid, 0, 0, NULL, + false); if (ret) { printf("Cannot remove %ls\n", var_name16); return CMD_RET_FAILURE; @@ -1416,11 +1419,11 @@ static int do_efi_boot_next(struct cmd_tbl *cmdtp, int flag, guid = efi_global_variable_guid; size = sizeof(u16); - ret = EFI_CALL(efi_set_variable(L"BootNext", &guid, + ret = efi_set_variable_int(L"BootNext", &guid, EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS, - size, &bootnext)); + size, &bootnext, false); if (ret != EFI_SUCCESS) { printf("Cannot set BootNext\n"); r = CMD_RET_FAILURE; @@ -1477,11 +1480,11 @@ static int do_efi_boot_order(struct cmd_tbl *cmdtp, int flag, } guid = efi_global_variable_guid; - ret = EFI_CALL(efi_set_variable(L"BootOrder", &guid, + ret = efi_set_variable_int(L"BootOrder", &guid, EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS, - size, bootorder)); + size, bootorder, true); if (ret != EFI_SUCCESS) { printf("Cannot set BootOrder\n"); r = CMD_RET_FAILURE;