From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id EC6C6C433FE for ; Fri, 11 Nov 2022 17:02:51 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 4BB5F806EE; Fri, 11 Nov 2022 18:02:49 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=arm.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=armh.onmicrosoft.com header.i=@armh.onmicrosoft.com header.b="94qn73Im"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=armh.onmicrosoft.com header.i=@armh.onmicrosoft.com header.b="94qn73Im"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 0D83C806FB; Fri, 11 Nov 2022 18:02:47 +0100 (CET) Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2078.outbound.protection.outlook.com [40.107.22.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id E8B74806E3 for ; Fri, 11 Nov 2022 18:02:42 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=Anders.Dellien@arm.com ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=fsIAG4cLf6eUtdb5yxKQm1lXagMxcjW+nMOeqaCIw6EaAPBMNzOjp11oKnR5cME+Nj88HX9Wq5xt0K53xFRs49EmYS4zr7BERs2VpkryB9ux0jyJKdFuhrY+mefoVLOSLusUDTlubfTSrd+rbt1AzdFP3a4gCmLx3G7Cknu9GGhQSiIcCXyUB8ztwuPiZBj++g/vDel3loMFg97GqAFZOpSm6lKzo5PUXRDcRmwQLmwOyC6wa3x3k9Lx4n8DrFRa/z16AcIn6lUzvV330QNnyX1vRBaJ8cs6I9h+ZI9HNepaqk7Yb7bOQv1WzMazbkfIuwMGHkxa8zqVFrEz6JjEXA== ARC-Message-Signature: i=2; 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=dIM7Wz6TZ+0sstLESZdC4a0gWeKLWv+jmZcEvdcCUFs=; b=YV3kmjI1Ja6FKm+CekVJar2523RVdmJzUxvo/LkLJklAXz3PrV50+hS1f6vDahbuX0UKOp5Es3kk14v6tvI1cyF5Q26DqujgFAjScckUdDvtrxnL7Nv0ca9UNwk+ZCUh5jz0objD5XiNtmv2zmTe0ov/tBq+AJ5VtPAaSXSPnFRA6JIKrEkV96dYZvsFTPY7hSC92cO4XyHL5uO+gnEqTe6rHUHiRx+23cp7Q3Puuxhe+0DHe4AzvlEbfApoAq0/Suo9pFFuMHogSxkaTCrDUmdZLChHCI2firxzRYD+u+lUrHnn+EDey0atlmT2fZ3CYpTqVcH+PIATfFqW0CocIw== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=lists.denx.de smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=dIM7Wz6TZ+0sstLESZdC4a0gWeKLWv+jmZcEvdcCUFs=; b=94qn73Imbjtz8wJ/L+qr9TBe9jQvgiDB9RfGn8m1bbp5YoYuwMZ6cgIGpho9G+2q9uYgAK+H/fuwU8Ah/0IJg1I5CpUvLAO6qjMQms2N41/2PeKQKbsjcI77iXJkTFPXeZ9PuIz0As8vLtOGFLIQZRr1h/4OpE7AZsBLEH0InXs= Received: from DU2PR04CA0043.eurprd04.prod.outlook.com (2603:10a6:10:234::18) by PAVPR08MB9556.eurprd08.prod.outlook.com (2603:10a6:102:311::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5813.13; Fri, 11 Nov 2022 17:02:40 +0000 Received: from DBAEUR03FT063.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:234:cafe::12) by DU2PR04CA0043.outlook.office365.com (2603:10a6:10:234::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5813.13 via Frontend Transport; Fri, 11 Nov 2022 17:02:40 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT063.mail.protection.outlook.com (100.127.142.255) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5813.12 via Frontend Transport; Fri, 11 Nov 2022 17:02:40 +0000 Received: ("Tessian outbound 73ab5f36653e:v130"); Fri, 11 Nov 2022 17:02:40 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: f1c2f6b57f8171bc X-CR-MTA-TID: 64aa7808 Received: from 387c76d343e3.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 5EEBEE98-4EE6-4205-AB02-F14F265E1159.1; Fri, 11 Nov 2022 17:02:28 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 387c76d343e3.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 11 Nov 2022 17:02:28 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d/pP1CnSVRsHp+eK24jPc4IVkz8zsjXQRg8jgLhXhFCpSzR5fwZrCAmuLo4FSfwRbRkqZYtaUsLWmAsVlW9YI19xoudslQT9akd8iI8pHeeehGhBhvYUPIY1dqnRTKGuk/+UMHd9cf+sT6oEHek8uobEteuXA87gfzcFhaniwLnQM1M3OpVxCiQqIWnomv+fZvwuSQn7Alti39ZnOAYs7wYBRcX2EAlAtkfqR5ZiHJJYX4GKtB+T0ZgVGBgcTnRYRfhM0a0lxGgG3hDPSCVuErToqdjdPz4MSGD3+30Xh8dQ8F8eOeXL8StSnLr2UMs58CHr8H70O0WXB3dNDjaD1Q== 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=dIM7Wz6TZ+0sstLESZdC4a0gWeKLWv+jmZcEvdcCUFs=; b=L36Q62+ymiuQH3v46K9/T2UUdUj1lmCQz0ufbmBeLzuGaZOwiUrEWM79HltvjdqVReP1lLVlWIBTXzKj4jVf/mUA4deGjnnnJYICOnaW2iDaiyhvcTYmdwp4gf/LqXVAGB6jCl28X9+2vbEPZSqDH4UM3fZAiMHQ2VmbgITtCPM0BSH5yYek6IRcEJB0p6OenlHFVhRl4NGDqAncX+rP3OHPbLuTwl1Pz/wlbrUw1h3Rx+aDjdSY3edMos/+8tOfC/rIrkiQmGeR6D5pX/R1Gj1kqws3nMeVUJbYxW5QkRQ/OpsERhQf6S9PGo7sEddpi/ioCu8oISC69aJGJ5YH2Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=dIM7Wz6TZ+0sstLESZdC4a0gWeKLWv+jmZcEvdcCUFs=; b=94qn73Imbjtz8wJ/L+qr9TBe9jQvgiDB9RfGn8m1bbp5YoYuwMZ6cgIGpho9G+2q9uYgAK+H/fuwU8Ah/0IJg1I5CpUvLAO6qjMQms2N41/2PeKQKbsjcI77iXJkTFPXeZ9PuIz0As8vLtOGFLIQZRr1h/4OpE7AZsBLEH0InXs= Received: from VI1PR08MB5517.eurprd08.prod.outlook.com (2603:10a6:803:139::23) by AS8PR08MB8707.eurprd08.prod.outlook.com (2603:10a6:20b:563::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5813.11; Fri, 11 Nov 2022 17:02:26 +0000 Received: from VI1PR08MB5517.eurprd08.prod.outlook.com ([fe80::4697:72b:cf2b:2611]) by VI1PR08MB5517.eurprd08.prod.outlook.com ([fe80::4697:72b:cf2b:2611%2]) with mapi id 15.20.5813.013; Fri, 11 Nov 2022 17:02:26 +0000 From: Anders Dellien To: Abdellatif El Khlifi CC: nd , "u-boot@lists.denx.de" Subject: Re: [PATCH v7 02/10] lib: uuid: introduce uuid_str_to_le_bin function Thread-Topic: [PATCH v7 02/10] lib: uuid: introduce uuid_str_to_le_bin function Thread-Index: AQHY8t41DBRHql8w5EuBvlIe6Ftxla4598dN Date: Fri, 11 Nov 2022 17:02:26 +0000 Message-ID: References: <20221013103857.614-1-abdellatif.elkhlifi@arm.com> <20221107192055.21669-1-abdellatif.elkhlifi@arm.com> <20221107192055.21669-3-abdellatif.elkhlifi@arm.com> In-Reply-To: <20221107192055.21669-3-abdellatif.elkhlifi@arm.com> Accept-Language: en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: VI1PR08MB5517:EE_|AS8PR08MB8707:EE_|DBAEUR03FT063:EE_|PAVPR08MB9556:EE_ X-MS-Office365-Filtering-Correlation-Id: d3cb073d-2061-4577-e5f7-08dac4068afd x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: m3pUFxtgv4qfMcg3dlag6pqwBadbgn4L4xYOHrlSvMN7KO1hCV7DAVqeePuqpO+mOVfGhzbwqMIh9dE56JXw6s+ps8eRMvH+ySYLuYgyAtO+wXKHD7czBf6Q2x8z3Bv4KLQ8WIP2pMAuAhVVRB+P9BSUSfy7sRsXB3AevwK+4GIxhJBcU9lTdj43d6X/UsM1bKO76JAVF/SmpwgwnLJc6k4POSareB0VQ8DgIaT3cAbPWHIKLHXWLgH1E19IcX4NBM6NyyIhwR7h75GCZUJ9Mnv+k8q7ve1YQTad45DUkZzMDTu4uSO2y8wZTWAgRc7oiyI0IfhnJdHqcOcwPcGxmZ/PyRq7VjR4a7qcRXSTb793bbG6RH/9rI2CpVa6rf9LVfoVpbzlaCme1DyhZPbTpMHdX54bLAbXN2vWNFd//oJo/x/TBMqlG86d6B7jA/8sVWcx/ql7je4kgSQu4G1FrnBdjWW1+3agQmosAvt0CmxA+IEIIQc+MorkugO1d9w/0JdpGbIhkOeHOUtB72yobwV25GYO+3ASEEBJRHOSjyc+AwLkKGJIiEkwRZFP2Vb4Sdt4AOHrtUtw2okTnPsIT91bwgNhBpzOP5kFD1Xew9xSWN9r76mrN9sEapCT1DvKaC+XylBBBhVC81h7gOyIl7U2jEuYsdw5IPwVLKbm1ewir/M8deNnA67Zs9u6Aw9NFIc5+lX65JI57wEFx/AzlG+fqerIm2ESc6kPzDbGVreLtlAzBsMi5Jly6H+KcUyf8e4e/lvKiYpgJgTRu3T7+Q== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR08MB5517.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(136003)(39860400002)(376002)(366004)(396003)(346002)(451199015)(38100700002)(9686003)(186003)(26005)(7696005)(4326008)(122000001)(83380400001)(52536014)(71200400001)(53546011)(2906002)(6506007)(55016003)(76116006)(316002)(478600001)(5660300002)(91956017)(41300700001)(6862004)(9326002)(54906003)(8936002)(66446008)(8676002)(64756008)(66476007)(6636002)(66556008)(66946007)(33656002)(86362001)(38070700005); DIR:OUT; SFP:1101; MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8707 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT063.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: bdea7afb-0e48-4b4c-4435-08dac406829a X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1aRTJH9AXsaD+szmbNZ56y/P6wNKGq69rDL0a8b5ndWZFRWAwBi/0byJji9siBidbsx56sVnI9AhprCaQ21+0/QU3J2ipsor9Iv9fa0FiRDpLihADudKmEjc3KQVvh9IVf+9+7mZeC3cJnpFfOC+3IQhhR0wARFF2orYN5dv8XnVFdmETEqkvCAezqzsimukDwPzVw1DhpVq0gRptrPq58TcFqut3EsX2oK985zoy/jVnLZPj3/47vHiUeTrrUZt6MYkWGszFqasAXM8MEPy967UimESW6LYUTbvr49FOHJ4ILF+c/xe79c6OF/myrWmaDTtuCFMpt6a1uA/CgdwLEaLKYl00UGYdK23+wzTIQbd42n26JnYwGjhiAaUm5VTtNBR7p34qXkWgU2/WlY2nJKnCNs4nj/66KGjZsOomUNTJHZ62H5/a15KxiUjnTQI/4fV+OqYuJWywdu/MiqCvHV54r+qwnnZB5+nZ6AmpLZ+O9mo0LoGfBqcp1C3yvEOJ9worG3WhK3W96PVK3RptICyafCYs2BTXpKih8Wlid6lqBQvlepcvagqtcRtIaQCD+aHTXlqLChY7c6usFFXS2xsY+wEq+vpmnJax7OI5QQsPAFW2CKU6aflK5ADxTYmIROy1SdAnsq8AqiGMu71aF0S+q78Cyp8sUxZKur/+6q9MxB18uKspOtcWLSHOGQYOe6gEAScniNfLFK0LmTZXxSJ83t0BubheVT9HKaNqUtqsig5cYlbxC1dtq0ppxRht8flKyzHv8kgSjSBAd3ocw== X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230022)(4636009)(346002)(376002)(136003)(39860400002)(396003)(451199015)(46966006)(36840700001)(40470700004)(6862004)(70206006)(52536014)(70586007)(8936002)(4326008)(5660300002)(41300700001)(336012)(9326002)(40480700001)(86362001)(33656002)(2906002)(8676002)(47076005)(40460700003)(478600001)(9686003)(83380400001)(6506007)(26005)(7696005)(55016003)(53546011)(186003)(316002)(81166007)(356005)(82740400003)(54906003)(6636002)(36860700001)(82310400005); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Nov 2022 17:02:40.7089 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d3cb073d-2061-4577-e5f7-08dac4068afd X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT063.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9556 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.39 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 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.103.6 at phobos.denx.de X-Virus-Status: Clean Hi Abdel, From: U-Boot on behalf of Abdellatif El Khli= fi Date: Monday, 7 November 2022 at 19:22 To: Abdellatif El Khlifi Cc: Drew Reed , Achin Gupta , ilias= .apalodimas@linaro.org , jens.wiklander@linaro= .org , nd , sjg@chromium.org , trini@konsulko.com , u-boot@lists.denx.de = , Vishnu Banavath , Xueliang= Zhong Subject: [PATCH v7 02/10] lib: uuid: introduce uuid_str_to_le_bin function convert UUID string to little endian binary data Signed-off-by: Abdellatif El Khlifi Cc: Tom Rini Cc: Simon Glass Cc: Ilias Apalodimas Cc: Jens Wiklander --- Changelog: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D v7: * rename be_uuid_str_to_le_bin() to uuid_str_to_le_bin() * make uuid_str_to_le_bin() implementation similar to uuid_str_to_bin() by using same APIs v4: * rename ffa_uuid_str_to_bin to be_uuid_str_to_le_bin and put in a standalone commit (the current) v3: * introduce ffa_uuid_str_to_bin (provided by arm_ffa: introduce Arm FF-A low-level driver) include/uuid.h | 8 ++++++++ lib/uuid.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) diff --git a/include/uuid.h b/include/uuid.h index 4a4883d3b5..293a8eb0a5 100644 --- a/include/uuid.h +++ b/include/uuid.h @@ -2,6 +2,8 @@ /* * Copyright (C) 2014 Samsung Electronics * Przemyslaw Marczak + * (C) Copyright 2022 ARM Limited + * Abdellatif El Khlifi */ #ifndef __UUID_H__ #define __UUID_H__ @@ -44,4 +46,10 @@ int uuid_guid_get_bin(const char *guid_str, unsigned cha= r *guid_bin); const char *uuid_guid_get_str(const unsigned char *guid_bin); void gen_rand_uuid(unsigned char *uuid_bin); void gen_rand_uuid_str(char *uuid_str, int str_format); + +/** + * uuid_str_to_le_bin - Converts a UUID string to little endian binary dat= a + */ +int uuid_str_to_le_bin(const char *uuid_str, unsigned char *uuid_bin); + #endif diff --git a/lib/uuid.c b/lib/uuid.c index 465e1ac38f..cde5ae2bb7 100644 --- a/lib/uuid.c +++ b/lib/uuid.c @@ -1,6 +1,8 @@ // SPDX-License-Identifier: GPL-2.0+ /* * Copyright 2011 Calxeda, Inc. + * (C) Copyright 2022 ARM Limited + * Abdellatif El Khlifi */ #include @@ -346,6 +348,50 @@ int uuid_str_to_bin(const char *uuid_str, unsigned cha= r *uuid_bin, return 0; } +/** + * uuid_str_to_le_bin() - Convert string UUID to little endian binary data= . + * @uuid_str: pointer to UUID string + * @uuid_bin: pointer to allocated array for little endian output [16B] + * + * UUID string is 36 characters (36 bytes): + * + * xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx + * + * where x is a hexadecimal character. Fields are separated by '-'s. + * When converting to a little endian binary UUID, the string fields are r= eversed. + * + * Return: + * + * uuid_bin filled with little endian UUID data + * On success 0 is returned. Otherwise, failure code. + */ +int uuid_str_to_le_bin(const char *uuid_str, unsigned char *uuid_bin) +{ + u16 tmp16; + u32 tmp32; + u64 tmp64; + + if (!uuid_str_valid(uuid_str) || !uuid_bin) + return -EINVAL; + + tmp32 =3D cpu_to_le32(hextoul(uuid_str, NULL)); + memcpy(uuid_bin, &tmp32, 4); + + tmp16 =3D cpu_to_le16(hextoul(uuid_str + 9, NULL)); + memcpy(uuid_bin + 4, &tmp16, 2); + + tmp16 =3D cpu_to_le16(hextoul(uuid_str + 14, NULL)); + memcpy(uuid_bin + 6, &tmp16, 2); + + tmp16 =3D cpu_to_le16(hextoul(uuid_str + 19, NULL)); + memcpy(uuid_bin + 8, &tmp16, 2); + + tmp64 =3D cpu_to_le64(hextoul(uuid_str + 24, NULL)); + memcpy(uuid_bin + 10, (char *)&tmp64, 6); I think we might risk overflow here on platforms where =93ulong=94 happens = to be 32 bits. + + return 0; +} + /* * uuid_bin_to_str() - convert big endian binary data to string UUID or GU= ID. * -- 2.17.1