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 X-Spam-Level: X-Spam-Status: No, score=-17.2 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_2 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E2355C433EF for ; Fri, 10 Sep 2021 09:46:26 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 3B355611B0 for ; Fri, 10 Sep 2021 09:46:26 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 3B355611B0 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.denx.de Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 60CE08360F; Fri, 10 Sep 2021 11:46:23 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=nxp.com 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; unprotected) header.d=nxp.com header.i=@nxp.com header.b="kVms4UdW"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 328C883634; Fri, 10 Sep 2021 11:46:20 +0200 (CEST) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on0627.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe0d::627]) (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 5131883633 for ; Fri, 10 Sep 2021 11:46:15 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=ye.li@nxp.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bmyhnINMLNoQgs0NZ5Pc1vXR9JUnfpzkCzbSHPJ3xZ3KX65UppyNJryahh/mYy9AeCI+0/83GGBuWP1lW1zMV3rA0DG7xYtxZDw+yUqIKMcrNy1j2Z4cOrKmhB6PWC7J++3a6zMRuA5rx4Jvry0OSDS+NvtKG9bMDedWOOfvjwFYeEsRdSBmlq/rvQpqIVbwf4cWul6k1AEfbnG47i1Kar3/0XIIfAAjlkN2f5v5lWDGZMFXUUOoasjxvlAcdzLLKxZMMEl/KG/Ih4PdYviyvaAmyTKwFXcmxinJoUiMtoTUOyW9QG3+1ZEYBCh4YbiKZk8uPnwP8f9jylZTQ/OyVQ== 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; bh=xTbxFm6L0hN2JhUylaDSw5O7nW5xcRUd/B2ZiNGb9Kc=; b=GsIlBRcD8t47dCxM8nFUA8PR+3TAzfFLFUAVUO91xbYkS4PWTY0Ewnluh/Nu8/N1U/4BsU38WnLF0FUBaPXdrhUtvS4LlQ2u4hENkEkVLgfRmqAktrjuOZNaUYo6PtGZobBt4z6HqBe8M0gH862EWsuf6xKcFippi6nZlIx4pg4a50/KWp/uoeaVz9ptrSb7pMt+MY5uiQ4vTvc3aj71as+jh3KjyJXtofCACt7nWLM+j88LuhjolYBjfb79yGu5aNU6QdKFwtmX5L4JcNZJqgvvDeeVlD7iavLk45Xjk+wtataAvOiYQFduLz1Ma1Fv0wdeFHDCOju3VUGttdqwcw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xTbxFm6L0hN2JhUylaDSw5O7nW5xcRUd/B2ZiNGb9Kc=; b=kVms4UdWtD8iPDiBdkBPIa9Mwpsde2+TimgBINbGvgmwG9DoC0/+h7HU6HrAZfR1quKQd6s+nLbpNjNlP8YTvGmc90Kt3XT+R9yPysiIcPycjFvAHLaMk5pflWW2nWZ7DVlaGHWQ+hcPdpl6LkqsQg0EZk+V6uE7D5Vv20EoIrs= Received: from VI1PR04MB7069.eurprd04.prod.outlook.com (2603:10a6:800:127::19) by VI1PR0401MB2432.eurprd04.prod.outlook.com (2603:10a6:800:2f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.14; Fri, 10 Sep 2021 09:46:13 +0000 Received: from VI1PR04MB7069.eurprd04.prod.outlook.com ([fe80::4c5c:821b:b2a3:ceec]) by VI1PR04MB7069.eurprd04.prod.outlook.com ([fe80::4c5c:821b:b2a3:ceec%5]) with mapi id 15.20.4500.017; Fri, 10 Sep 2021 09:46:13 +0000 From: Ye Li To: Gaurav Jain , "u-boot@lists.denx.de" CC: "olteanv@gmail.com" , Priyanka Jain , Pankaj Gupta , Mingkai Hu , Meenakshi Aggarwal , Silvano Di Ninno , "sjg@chromium.org" , Ji Luo , "festevam@gmail.com" , dl-uboot-imx , Shengzhou Liu , Rajesh Bhagat , Franck Lenormand , Varun Sethi , Alison Wang , Peng Fan , Wasim Khan , Pramod Kumar , "sbabic@denx.de" , Horia Geanta , Andy Tang , Sahil Malhotra , Adrian Alonso Subject: Re: [PATCH v2 02/15] crypto/fsl: Add CAAM support for bkek, random number generation Thread-Topic: [PATCH v2 02/15] crypto/fsl: Add CAAM support for bkek, random number generation Thread-Index: AQHXoJHsG9g1UAaffku/21pr19wwNqudED0A Date: Fri, 10 Sep 2021 09:46:13 +0000 Message-ID: <1631267172.43076.56.camel@nxp.com> References: <20210903070319.13484-1-gaurav.jain@nxp.com> <20210903070319.13484-3-gaurav.jain@nxp.com> In-Reply-To: <20210903070319.13484-3-gaurav.jain@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Evolution 3.18.5.2-0ubuntu3.2 authentication-results: nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=none action=none header.from=nxp.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 34b6b63e-60b2-458c-bd44-08d9743fd3bd x-ms-traffictypediagnostic: VI1PR0401MB2432: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5516; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: bS0BDCXmV1Ep3CHEhLjtV01HXxs6CmPo1wSUdiCAYd0NaUJFFWKKA8fJa6wIWkHKxHSAtHvtElJxjzTUmVItYe0pBqjD8YeqILoXbONz3OfAdAzy9NRpyowny/8qwRtD7CE4h9xCQVzYd3A8WsIuGX9HZJio0YtbzXXYifTZRmNUolpg85W++W4MucODT/hIgXbtsfpEOHvgSDu7IM/NzyXrqUibubxUu7pwM0nW9E77dq5pD/YJXIRtVzj3XD0PZ9jg6RpBHLYaFdRZLyLWlan3HuvG+5SgIeFxJdX5JGcaEeMrcWofUDslRgUO7M3twXEIRGSC+tJKlePXCkJYQFF9cKCguUJi7sYoajhEUL67CVPicvcGSU5tpKnSc5rQiKfmEBlhPfvx+cUtUIJ8H0T2bZwNiHGrdpTAVbpMW5BaO20JiSOzpozl/IvorJk7r6fRDmZoN3MsTqRVQD6C+/7653ZVhjn1bPFFE3ZFw9AY2JKcw8WNm3OU0WG8wern6+67IHQVCoTRTswoQvo5kjQXdZ7qSGTuxs/pdNhhjXGoCuOGKd67Pwgy7vO8ZYehDE7VZGhEfjYgxPSCIzukS+jFJV7ot8PZicSWKxweDhlrDTHN+cSfWmE1cqSUFSgAcayGl/HWwMsDvH0ZIR93l2Mq/PR/yMreyTMfTRRlJFC+0TYBjTmxZmWQeUMIYT2whE8NsjuegqOd7ldQN6AljBOPWGmWWpuI+GRDBH5UYvs= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR04MB7069.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(376002)(366004)(396003)(346002)(39860400002)(86362001)(6506007)(26005)(186003)(478600001)(66946007)(83380400001)(66476007)(66556008)(91956017)(76116006)(2616005)(122000001)(64756008)(54906003)(8676002)(8936002)(5660300002)(38100700002)(2906002)(6512007)(4326008)(38070700005)(316002)(36756003)(44832011)(6486002)(103116003)(71200400001)(110136005)(66446008)(99106002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SlpGQXpHc240a2tZS2Z2QzFKU3JKdWNZaGc1dmk0eWhtL0NObnhDNERpeFU2?= =?utf-8?B?bjVtMHlrUHU1aFlhTGl4d0VlNEJBQ0lEdm9ZUnN2QVNjSmc0RzhtOXJaWFFj?= =?utf-8?B?R2prRVYxaUNiam5ZS05yaHpiZDFRUG11YWZNU1VXZSt0QTN1dHJVcVlXN21u?= =?utf-8?B?MlVXcmJ4amlMSkIxamFRb2IxK09CYTJZM0lLTVFTSjM2V0lnRWQyVkYxSjlq?= =?utf-8?B?MUd0NE05OWhyV0dNYkVHRzc2VU5idjV5cWhMVTBybVBIV2p3V3dsb1ZYenAy?= =?utf-8?B?VHBUR242K0kwQ1N6ZkJFT1I2TlF2a0RNZEF3MXlzQ0tVaXRza1ovREtieTkw?= =?utf-8?B?eU55OGk0SGRvOE14Tm40ZU9oTklmVUFkSWpyVWthbzdLaEhSbVV4Rk9uT0lY?= =?utf-8?B?SG43VnVBckdTajI3OEJMWnpTMDRKemVXQmszV3ZndXpKVnRtekFETXhjRzY0?= =?utf-8?B?SXZxd3dNQzRzMmRwY09CYUhIeXFCTW8rUXAzdjlFdmp6Yit0dDgzUGVkdUVD?= =?utf-8?B?ZUlOQnJHYmpOMEw1ZjE5eXp5VTNqWUg0NjVaRVdhQU5obnJzQ2lmZWo1SVNC?= =?utf-8?B?MWQ2MVRZd0krWFl5VUFCbXpKVU44aXl2N3hMR3hxV3BNclBoakNaWFJnL3pL?= =?utf-8?B?aWxJcms4SnJpWFg4V0NUUUJXWXh6cjlUbnllZU5pYk45Z2Rzdi9DNTBhR2JP?= =?utf-8?B?K2RnUUxCZVBiNFJxL0Q5dm51TnBBME43WUZPM1RPZEc3UUlEamt6dXRmcHA1?= =?utf-8?B?V1puL0pTVEV2YTNQeDZnTE50UFZwUWRXSGhMQXN0bXpDZW5mVTNuU0MxclQr?= =?utf-8?B?c2J6M2dha0hyTThjd3VDSDRDYndhejNXMU9mNVVYUzhNR0tJYXMxcjY5bkda?= =?utf-8?B?WkJCR2doVFRjKzFYSjFhNU1qcm1IcnF1bFB4bFEwaG9PdmttRThrTDR0TDNx?= =?utf-8?B?RUlmNU5tdlVXSjMwV2xtYWtpS1k0Y0lWSzlPM0gvV3R6clpjQ3dEVUQ4clFp?= =?utf-8?B?eEdTOXkvM25FNlEvVHFVWG5KOUhpM2g3L3QxbXlPU1JUVlpralhuQTdmbC9h?= =?utf-8?B?cVlhaUY0Rmt1TE5ZVDZ2YXJ0V0RQc0swRDdyMzJ1cE92b2ZjTTNZQnh6Z216?= =?utf-8?B?T2NWeDYxOFRoanN4SWd2VytoQ3N5Vk43dXdOeGhRWDVzclJPNndRb0dCRlYr?= =?utf-8?B?RVNOcVhaUWdEWEZLdUhpeHp2SmdZN2kwcllnR05CTWlHMERJY0JoOEl2dDEw?= =?utf-8?B?TWtYM3hBcUt1Rk96bFZpU0pid3dLM3FYdVY4UlB1M2pmOHdvWXZKd0hiMG5X?= =?utf-8?B?K1dyY2Vlc1Q1bE1tNmZ4QXd3NmZ2NEVsREc3UmJlRjhQU0pQYmgwSjZBaWgy?= =?utf-8?B?Q0tQU3VpbTRZMFhicnBXdnoxbWVOd0tnSHpSTEVTcnd1OFZwSkVSQlIzU0w5?= =?utf-8?B?QVVQelIvL0M5aHJFRjVna25CS0lIVmdXMEVqUGlzVWo5NnBKQ0FLUWh6ZEda?= =?utf-8?B?SlExTW4zajM5a1V6T2g3dVc3QU5qam05YzA0R2JoMmFXb3hyNEJndm5paTh0?= =?utf-8?B?bFV2RXV6TlU2MHdFZXhiSFdtMHZaWjdJUVFHVXprdUZLQmlrNVNlaWRoNXMv?= =?utf-8?B?Wmg1ZVFSb2ZkTitycDJvYWtKaVlVQkdXbFMzd01aN3cxT2YwaXowckErN3Rp?= =?utf-8?B?d09vbEJlT0dRTVk3Nm9RbFFuQ3Rhek1naFk1UW1jajRFOUU0cW01YUhha3FL?= =?utf-8?Q?2oOZ8AV2PHNOXyTuHz5eQ0O9BEXLp7BG/3jwlKS?= Content-Type: text/plain; charset="utf-8" Content-ID: <4B9C53FE99C2C04F97B5D5FC96CA856E@eurprd04.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB7069.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 34b6b63e-60b2-458c-bd44-08d9743fd3bd X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Sep 2021 09:46:13.2261 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: SGMV9xedA4u6rjayYSoZDHfR1z5+u7/HWqOxuFfn9fUPUsb5/U6Stm6QdnHDOrGd X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0401MB2432 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.103.2 at phobos.denx.de X-Virus-Status: Clean T24gRnJpLCAyMDIxLTA5LTAzIGF0IDEyOjMzICswNTMwLCBHYXVyYXYgSmFpbiB3cm90ZToNCj4g YWRkZWQgYXBpIGFuZCBkZXNjcmlwdG9yIGZvciBibG9iIGtleSBlbmNyeXB0aW9uIGtleShia2Vr KQ0KPiBnZW5lcmF0aW9uLg0KPiBhZGRlZCBhcGkgZm9yIHJhbmRvbSBudW1iZXIgZ2VuZXJhdGlv bi4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IEdhdXJhdiBKYWluIDxnYXVyYXYuamFpbkBueHAuY29t Pg0KPiBTaWduZWQtb2ZmLWJ5OiBKaSBMdW8gPGppLmx1b0BueHAuY29tPg0KDQpSZXZpZXdlZC1i eTogWWUgTGkgPHllLmxpQG54cC5jb20+DQoNCkJlc3QgcmVnYXJkcywNClllIExpDQoNCj4gLS0t DQo+IMKgZHJpdmVycy9jcnlwdG8vZnNsL2Rlc2MuaMKgwqDCoMKgwqB8wqDCoDUgKysrDQo+IMKg ZHJpdmVycy9jcnlwdG8vZnNsL2ZzbF9ibG9iLmMgfCA4Mg0KPiArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKw0KPiDCoGRyaXZlcnMvY3J5cHRvL2ZzbC9qb2JkZXNjLmPCoMKgfCAy MCArKysrKysrLS0NCj4gwqBkcml2ZXJzL2NyeXB0by9mc2wvam9iZGVzYy5owqDCoHzCoMKgNCAr Kw0KPiDCoDQgZmlsZXMgY2hhbmdlZCwgMTA4IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0p DQo+IA0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9jcnlwdG8vZnNsL2Rlc2MuaCBiL2RyaXZlcnMv Y3J5cHRvL2ZzbC9kZXNjLmgNCj4gaW5kZXggNTcwNWM0Zjk0NC4uNTk1OGViZDNhYyAxMDA2NDQN Cj4gLS0tIGEvZHJpdmVycy9jcnlwdG8vZnNsL2Rlc2MuaA0KPiArKysgYi9kcml2ZXJzL2NyeXB0 by9mc2wvZGVzYy5oDQo+IEBAIC00LDYgKzQsNyBAQA0KPiDCoCAqIERlZmluaXRpb25zIHRvIHN1 cHBvcnQgQ0FBTSBkZXNjcmlwdG9yIGluc3RydWN0aW9uIGdlbmVyYXRpb24NCj4gwqAgKg0KPiDC oCAqIENvcHlyaWdodCAyMDA4LTIwMTQgRnJlZXNjYWxlIFNlbWljb25kdWN0b3IsIEluYy4NCj4g KyAqIENvcHlyaWdodCAyMDIxIE5YUA0KPiDCoCAqDQo+IMKgICogQmFzZWQgb24gZGVzYy5oIGZp bGUgaW4gbGludXggZHJpdmVycy9jcnlwdG8vY2FhbQ0KPiDCoCAqLw0KPiBAQCAtMTUsNiArMTYs NyBAQA0KPiDCoA0KPiDCoCNkZWZpbmUgS0VZX0JMT0JfU0laRQkJMzINCj4gwqAjZGVmaW5lIE1B Q19TSVpFCQkJMTYNCj4gKyNkZWZpbmUgQktFS19TSVpFCQkzMg0KPiDCoA0KPiDCoC8qIE1heCBz aXplIG9mIGFueSBDQUFNIGRlc2NyaXB0b3IgaW4gMzItYml0IHdvcmRzLCBpbmNsdXNpdmUgb2YN Cj4gaGVhZGVyICovDQo+IMKgI2RlZmluZSBNQVhfQ0FBTV9ERVNDU0laRQk2NA0KPiBAQCAtNDYz LDYgKzQ2NSw5IEBADQo+IMKgI2RlZmluZSBPUF9QUk9USU5GT19IQVNIX1NIQTM4NAkweDAwMDAw MjAwDQo+IMKgI2RlZmluZSBPUF9QUk9USU5GT19IQVNIX1NIQTUxMgkweDAwMDAwMjgwDQo+IMKg DQo+ICsvKiBQUk9USU5GTyBmaWVsZHMgZm9yIEJsb2IgT3BlcmF0aW9ucyAqLw0KPiArI2RlZmlu ZSBPUF9QUk9USU5GT19NS1ZCCTB4MDAwMDAwMDINCj4gKw0KPiDCoC8qIEZvciBub24tcHJvdG9j b2wvYWxnLW9ubHkgb3AgY29tbWFuZHMgKi8NCj4gwqAjZGVmaW5lIE9QX0FMR19UWVBFX1NISUZU CTI0DQo+IMKgI2RlZmluZSBPUF9BTEdfVFlQRV9NQVNLCSgweDcgPDwgT1BfQUxHX1RZUEVfU0hJ RlQpDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2NyeXB0by9mc2wvZnNsX2Jsb2IuYw0KPiBiL2Ry aXZlcnMvY3J5cHRvL2ZzbC9mc2xfYmxvYi5jDQo+IGluZGV4IGU4MjAyY2M1NjkuLmU4YmMwMDlk YWYgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvY3J5cHRvL2ZzbC9mc2xfYmxvYi5jDQo+ICsrKyBi L2RyaXZlcnMvY3J5cHRvL2ZzbC9mc2xfYmxvYi5jDQo+IEBAIC0xLDYgKzEsNyBAQA0KPiDCoC8v IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wKw0KPiDCoC8qDQo+IMKgICogQ29weXJp Z2h0IDIwMTQgRnJlZXNjYWxlIFNlbWljb25kdWN0b3IsIEluYy4NCj4gKyAqIENvcHlyaWdodCAy MDIxIE5YUA0KPiDCoCAqDQo+IMKgICovDQo+IMKgDQo+IEBAIC0xNTIsNiArMTUzLDg3IEBAIGlu dCBibG9iX2VuY2FwKHU4ICprZXlfbW9kLCB1OCAqc3JjLCB1OCAqZHN0LA0KPiB1MzIgbGVuKQ0K PiDCoAlyZXR1cm4gcmV0Ow0KPiDCoH0NCj4gwqANCj4gK2ludCBkZXJpdmVfYmxvYl9rZWsodTgg KmJrZWtfYnVmLCB1OCAqa2V5X21vZCwgdTMyIGtleV9zeikNCj4gK3sNCj4gKwlpbnQgcmV0LCBz aXplOw0KPiArCXUzMiAqZGVzYzsNCj4gKw0KPiArCWlmICghSVNfQUxJR05FRCgodWludHB0cl90 KWJrZWtfYnVmLCBBUkNIX0RNQV9NSU5BTElHTikgfHwNCj4gKwnCoMKgwqDCoCFJU19BTElHTkVE KCh1aW50cHRyX3Qpa2V5X21vZCwgQVJDSF9ETUFfTUlOQUxJR04pKSB7DQo+ICsJCXB1dHMoIkVy cm9yOiBkZXJpdmVfYmtlazogQWRkcmVzcyBhcmd1bWVudHMgYXJlIG5vdA0KPiBhbGlnbmVkIVxu Iik7DQo+ICsJCXJldHVybiAtRUlOVkFMOw0KPiArCX0NCj4gKw0KPiArCXByaW50ZigiXG5CbG9i IGtleSBlbmNyeXB0aW9uIGtleShia2VrKVxuIik7DQo+ICsJZGVzYyA9IG1hbGxvY19jYWNoZV9h bGlnbmVkKHNpemVvZihpbnQpICoNCj4gTUFYX0NBQU1fREVTQ1NJWkUpOw0KPiArCWlmICghZGVz Yykgew0KPiArCQlwcmludGYoIk5vdCBlbm91Z2ggbWVtb3J5IGZvciBkZXNjcmlwdG9yDQo+IGFs bG9jYXRpb25cbiIpOw0KPiArCQlyZXR1cm4gLUVOT01FTTsNCj4gKwl9DQo+ICsNCj4gKwlzaXpl ID0gQUxJR04oa2V5X3N6LCBBUkNIX0RNQV9NSU5BTElHTik7DQo+ICsJZmx1c2hfZGNhY2hlX3Jh bmdlKCh1bnNpZ25lZCBsb25nKWtleV9tb2QsICh1bnNpZ25lZA0KPiBsb25nKWtleV9tb2QgKyBz aXplKTsNCj4gKw0KPiArCS8qIGNvbnN0cnVjdCBibG9iIGtleSBlbmNyeXB0aW9uIGtleShia2Vr KSBkZXJpdmUgZGVzY3JpcHRvcg0KPiAqLw0KPiArCWlubGluZV9jbnN0cl9qb2JkZXNjX2Rlcml2 ZV9ia2VrKGRlc2MsIGJrZWtfYnVmLCBrZXlfbW9kLA0KPiBrZXlfc3opOw0KPiArDQo+ICsJc2l6 ZSA9IEFMSUdOKHNpemVvZihpbnQpICogTUFYX0NBQU1fREVTQ1NJWkUsDQo+IEFSQ0hfRE1BX01J TkFMSUdOKTsNCj4gKwlmbHVzaF9kY2FjaGVfcmFuZ2UoKHVuc2lnbmVkIGxvbmcpZGVzYywgKHVu c2lnbmVkIGxvbmcpZGVzYw0KPiArIHNpemUpOw0KPiArCXNpemUgPSBBTElHTihCS0VLX1NJWkUs IEFSQ0hfRE1BX01JTkFMSUdOKTsNCj4gKwlpbnZhbGlkYXRlX2RjYWNoZV9yYW5nZSgodW5zaWdu ZWQgbG9uZylia2VrX2J1ZiwNCj4gKwkJCQkodW5zaWduZWQgbG9uZylia2VrX2J1ZiArIHNpemUp Ow0KPiArDQo+ICsJLyogcnVuIGRlc2NyaXB0b3IgKi8NCj4gKwlyZXQgPSBydW5fZGVzY3JpcHRv cl9qcihkZXNjKTsNCj4gKwlpZiAocmV0IDwgMCkgew0KPiArCQlwcmludGYoIkVycm9yOiAlcyBm YWlsZWQgMHgleFxuIiwgX19mdW5jX18sIHJldCk7DQo+ICsJfSBlbHNlIHsNCj4gKwkJaW52YWxp ZGF0ZV9kY2FjaGVfcmFuZ2UoKHVuc2lnbmVkIGxvbmcpYmtla19idWYsDQo+ICsJCQkJCSh1bnNp Z25lZCBsb25nKWJrZWtfYnVmICsNCj4gc2l6ZSk7DQo+ICsJCXB1dHMoImRlcml2ZSBia2VrIHN1 Y2Nlc3NmdWwuXG4iKTsNCj4gKwl9DQo+ICsNCj4gKwlmcmVlKGRlc2MpOw0KPiArCXJldHVybiBy ZXQ7DQo+ICt9DQo+ICsNCj4gK2ludCBod3JuZ19nZW5lcmF0ZSh1OCAqZHN0LCB1MzIgbGVuKQ0K PiArew0KPiArCWludCByZXQsIHNpemU7DQo+ICsJdTMyICpkZXNjOw0KPiArDQo+ICsJaWYgKCFJ U19BTElHTkVEKCh1aW50cHRyX3QpZHN0LCBBUkNIX0RNQV9NSU5BTElHTikpIHsNCj4gKwkJcHV0 cygiRXJyb3I6IGNhYW1faHdybmdfdGVzdDogQWRkcmVzcyBhcmd1bWVudHMgYXJlDQo+IG5vdCBh bGlnbmVkIVxuIik7DQo+ICsJCXJldHVybiAtRUlOVkFMOw0KPiArCX0NCj4gKw0KPiArCXByaW50 ZigiXG5STkcgZ2VuZXJhdGVcbiIpOw0KPiArCWRlc2MgPSBtYWxsb2NfY2FjaGVfYWxpZ25lZChz aXplb2YoaW50KSAqDQo+IE1BWF9DQUFNX0RFU0NTSVpFKTsNCj4gKwlpZiAoIWRlc2MpIHsNCj4g KwkJcHJpbnRmKCJOb3QgZW5vdWdoIG1lbW9yeSBmb3IgZGVzY3JpcHRvcg0KPiBhbGxvY2F0aW9u XG4iKTsNCj4gKwkJcmV0dXJuIC1FTk9NRU07DQo+ICsJfQ0KPiArDQo+ICsJaW5saW5lX2Nuc3Ry X2pvYmRlc2Nfcm5nKGRlc2MsIGRzdCwgbGVuKTsNCj4gKw0KPiArCXNpemUgPSBBTElHTihzaXpl b2YoaW50KSAqIE1BWF9DQUFNX0RFU0NTSVpFLA0KPiBBUkNIX0RNQV9NSU5BTElHTik7DQo+ICsJ Zmx1c2hfZGNhY2hlX3JhbmdlKCh1bnNpZ25lZCBsb25nKWRlc2MsICh1bnNpZ25lZCBsb25nKWRl c2MNCj4gKyBzaXplKTsNCj4gKwlzaXplID0gQUxJR04obGVuLCBBUkNIX0RNQV9NSU5BTElHTik7 DQo+ICsJaW52YWxpZGF0ZV9kY2FjaGVfcmFuZ2UoKHVuc2lnbmVkIGxvbmcpZHN0LCAodW5zaWdu ZWQNCj4gbG9uZylkc3QgKyBzaXplKTsNCj4gKw0KPiArCXJldCA9IHJ1bl9kZXNjcmlwdG9yX2py KGRlc2MpOw0KPiArCWlmIChyZXQgPCAwKSB7DQo+ICsJCXByaW50ZigiRXJyb3I6IFJORyBnZW5l cmF0ZSBmYWlsZWQgMHgleFxuIiwgcmV0KTsNCj4gKwl9IGVsc2Ugew0KPiArCQlpbnZhbGlkYXRl X2RjYWNoZV9yYW5nZSgodW5zaWduZWQgbG9uZylkc3QsDQo+ICsJCQkJCSh1bnNpZ25lZCBsb25n KWRzdCArIHNpemUpOw0KPiArCQlwdXRzKCJSTkcgZ2VuZXJhdGlvbiBzdWNjZXNzZnVsLlxuIik7 DQo+ICsJfQ0KPiArDQo+ICsJZnJlZShkZXNjKTsNCj4gKwlyZXR1cm4gcmV0Ow0KPiArfQ0KPiAr DQo+IMKgI2lmZGVmIENPTkZJR19DTURfREVLQkxPQg0KPiDCoGludCBibG9iX2Rlayhjb25zdCB1 OCAqc3JjLCB1OCAqZHN0LCB1OCBsZW4pDQo+IMKgew0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9j cnlwdG8vZnNsL2pvYmRlc2MuYw0KPiBiL2RyaXZlcnMvY3J5cHRvL2ZzbC9qb2JkZXNjLmMNCj4g aW5kZXggYzM1MGIzMjg1Ni4uZDU4OTM3YzI4NCAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9jcnlw dG8vZnNsL2pvYmRlc2MuYw0KPiArKysgYi9kcml2ZXJzL2NyeXB0by9mc2wvam9iZGVzYy5jDQo+ IEBAIC00LDcgKzQsNyBAQA0KPiDCoCAqIEJhc2ljIGpvYiBkZXNjcmlwdG9yIGNvbnN0cnVjdGlv bg0KPiDCoCAqDQo+IMKgICogQ29weXJpZ2h0IDIwMTQgRnJlZXNjYWxlIFNlbWljb25kdWN0b3Is IEluYy4NCj4gLSAqIENvcHlyaWdodCAyMDE4IE5YUA0KPiArICogQ29weXJpZ2h0IDIwMTgsIDIw MjEgTlhQDQo+IMKgICoNCj4gwqAgKi8NCj4gwqANCj4gQEAgLTIwNyw3ICsyMDcsNyBAQCB2b2lk IGlubGluZV9jbnN0cl9qb2JkZXNjX2hhc2godWludDMyX3QgKmRlc2MsDQo+IMKgCWFwcGVuZF9z dG9yZShkZXNjLCBkbWFfYWRkcl9vdXQsIHN0b3JlbGVuLA0KPiDCoAkJwqDCoMKgwqDCoExEU1Rf Q0xBU1NfMl9DQ0IgfCBMRFNUX1NSQ0RTVF9CWVRFX0NPTlRFWFQpOw0KPiDCoH0NCj4gLSNpZm5k ZWYgQ09ORklHX1NQTF9CVUlMRA0KPiArDQo+IMKgdm9pZCBpbmxpbmVfY25zdHJfam9iZGVzY19i bG9iX2VuY2FwKHVpbnQzMl90ICpkZXNjLCB1aW50OF90DQo+ICprZXlfaWRuZnIsDQo+IMKgCQkJ CcKgwqDCoMKgwqB1aW50OF90ICpwbGFpbl90eHQsIHVpbnQ4X3QNCj4gKmVuY19ibG9iLA0KPiDC oAkJCQnCoMKgwqDCoMKgdWludDMyX3QgaW5fc3opDQo+IEBAIC0yNTUsNyArMjU1LDcgQEAgdm9p ZCBpbmxpbmVfY25zdHJfam9iZGVzY19ibG9iX2RlY2FwKHVpbnQzMl90DQo+ICpkZXNjLCB1aW50 OF90ICprZXlfaWRuZnIsDQo+IMKgDQo+IMKgCWFwcGVuZF9vcGVyYXRpb24oZGVzYywgT1BfVFlQ RV9ERUNBUF9QUk9UT0NPTCB8DQo+IE9QX1BDTElEX0JMT0IpOw0KPiDCoH0NCj4gLSNlbmRpZg0K PiArDQo+IMKgLyoNCj4gwqAgKiBEZXNjcmlwdG9yIHRvIGluc3RhbnRpYXRlIFJORyBTdGF0ZSBI YW5kbGUgMCBpbiBub3JtYWwgbW9kZSBhbmQNCj4gwqAgKiBsb2FkIHRoZSBKREtFSywgVERLRUsg YW5kIFREU0sgcmVnaXN0ZXJzDQo+IEBAIC0zMzQsMyArMzM0LDE3IEBAIHZvaWQgaW5saW5lX2Nu c3RyX2pvYmRlc2NfcGtoYV9yc2FleHAodWludDMyX3QNCj4gKmRlc2MsDQo+IMKgCWFwcGVuZF9m aWZvX3N0b3JlKGRlc2MsIGRtYV9hZGRyX291dCwgb3V0X3NpeiwNCj4gwqAJCQnCoMKgTERTVF9D TEFTU18xX0NDQiB8IEZJRk9TVF9UWVBFX1BLSEFfQik7DQo+IMKgfQ0KPiArDQo+ICt2b2lkIGlu bGluZV9jbnN0cl9qb2JkZXNjX2Rlcml2ZV9ia2VrKHVpbnQzMl90ICpkZXNjLCB2b2lkDQo+ICpi a2VrX291dCwNCj4gKwkJCQnCoMKgwqDCoMKgwqB2b2lkICprZXlfbW9kLCB1aW50MzJfdA0KPiBr ZXlfc3opDQo+ICt7DQo+ICsJZG1hX2FkZHJfdCBkbWFfa2V5X21vZCA9IHZpcnRfdG9fcGh5cyhr ZXlfbW9kKTsNCj4gKwlkbWFfYWRkcl90IGRtYV9ia2VrX291dCA9IHZpcnRfdG9fcGh5cyhia2Vr X291dCk7DQo+ICsNCj4gKwlpbml0X2pvYl9kZXNjKGRlc2MsIDApOw0KPiArCWFwcGVuZF9sb2Fk KGRlc2MsIGRtYV9rZXlfbW9kLCBrZXlfc3osCUxEU1RfQ0xBU1NfMl9DDQo+IENCIHwNCj4gKwkJ CQkJCUxEU1RfU1JDRFNUX0JZVEVfS0VZDQo+ICk7DQo+ICsJYXBwZW5kX3NlcV9vdXRfcHRyX2lu dGxlbihkZXNjLCBkbWFfYmtla19vdXQsIEJLRUtfU0laRSwgMCk7DQo+ICsJYXBwZW5kX29wZXJh dGlvbihkZXNjLCBPUF9UWVBFX0VOQ0FQX1BST1RPQ09MIHwNCj4gT1BfUENMSURfQkxPQiB8DQo+ ICsJCQkJCQkJT1BfUFJPVElORk9fDQo+IE1LVkIpOw0KPiArfQ0KPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9jcnlwdG8vZnNsL2pvYmRlc2MuaA0KPiBiL2RyaXZlcnMvY3J5cHRvL2ZzbC9qb2JkZXNj LmgNCj4gaW5kZXggYzQ1MDFhYmQyNi4uYTcyMGQ2OGU4MiAxMDA2NDQNCj4gLS0tIGEvZHJpdmVy cy9jcnlwdG8vZnNsL2pvYmRlc2MuaA0KPiArKysgYi9kcml2ZXJzL2NyeXB0by9mc2wvam9iZGVz Yy5oDQo+IEBAIC0xLDYgKzEsNyBAQA0KPiDCoC8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBH UEwtMi4wKyAqLw0KPiDCoC8qDQo+IMKgICogQ29weXJpZ2h0IDIwMTQgRnJlZXNjYWxlIFNlbWlj b25kdWN0b3IsIEluYy4NCj4gKyAqIENvcHlyaWdodCAyMDIxIE5YUA0KPiDCoCAqDQo+IMKgICov DQo+IMKgDQo+IEBAIC00OSw0ICs1MCw3IEBAIHZvaWQgaW5saW5lX2Nuc3RyX2pvYmRlc2NfcGto YV9yc2FleHAodWludDMyX3QNCj4gKmRlc2MsDQo+IMKgCQkJCcKgwqDCoMKgwqDCoHN0cnVjdCBw a19pbl9wYXJhbXMgKnBraW4sDQo+IHVpbnQ4X3QgKm91dCwNCj4gwqAJCQkJwqDCoMKgwqDCoMKg dWludDMyX3Qgb3V0X3Npeik7DQo+IMKgDQo+ICt2b2lkIGlubGluZV9jbnN0cl9qb2JkZXNjX2Rl cml2ZV9ia2VrKHVpbnQzMl90ICpkZXNjLCB2b2lkDQo+ICpia2VrX291dCwNCj4gKwkJCQnCoMKg wqDCoMKgwqB2b2lkICprZXlfbW9kLCB1aW50MzJfdA0KPiBrZXlfc3opOw0KPiArDQo+IMKgI2Vu ZGlm