From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 37F1FA2EDB for ; Wed, 2 Oct 2019 04:47:13 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 5ED3B343C; Wed, 2 Oct 2019 04:47:12 +0200 (CEST) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80078.outbound.protection.outlook.com [40.107.8.78]) by dpdk.org (Postfix) with ESMTP id 698833423 for ; Wed, 2 Oct 2019 04:47:11 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Yg0K7eDRnO0cy2OpR+2k0uNM5NxVyLU6I+MbQOhXRS3BUgr1dmLWHMSXtwDdNTGmS20DEmRhCiZTdJtP8gRP7I+6ePk95Xh9SDpDFPmKvnGMeXnQAjt6+XzLkbysVrzhH678nEeScKz7lSPjyitsDFW8zmeGADMwhqrlTZP94mQfM0qS9sfsglrx0mvIKOKVzAxraj936HOdFOpuh4a1MHYV3bXeJYo9nFaunZXSmIMg3i6X2aVreZYHqBd835i+mwsTg5Eh0WFwx9rujjtVktOEXi6UcoalDUtiDHG15+/xCEv0HlZbC2W3eY0jEr7PImgvyJ6kS2DvkGTzylqoIA== 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-SenderADCheck; bh=2fgdcQUeiQUmt2+m/C/ApCvix7n3fVJd4osYqO01QKk=; b=l5ZrLCJND6bsWy3GNFYlHqDfPwm8rlKZWQn/HgymZBiIATEth9kwExkG7UzhQkh8A79Np3Qfa2+ZcoVHeckS7/98zLmuSlJIryQVk60Qn/ZNpJ/M9Ok172rzAdNIEW92jkB94gOjl2srrBcVZVhKk7e9K1OU9bE0D9+5YyciHqcH2YMR3cF61Y+KAABTNY5YgQviin7T37vmBXqIClI+rL5MszUtGrTkMXQAsx5fiDi4lFe14nD/5rCLVKJT+VvSIKGeL3Id+re9dZH1E/RYcfl9R16QoclJSyFNZMH1eroWtHMuYsE+zO1cnB6VO3w9sc1SNdcZoCwUDgAcAINr6A== 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=2fgdcQUeiQUmt2+m/C/ApCvix7n3fVJd4osYqO01QKk=; b=jgvaiS4E0wd9qLoKsbwONdyhBKAUOFG763NuJTHXWt3Co28HAqNYwGk22hn206jkXo6PH9HyGYUc/9ufbRtz7vAFm0K27GEhwDbE9xgW3ZdE5+nMBY5Tg5PRfNw+3nebs25kG/XCEe+AZV3DdtUijFbO/LjYKvVOw670mxPZP8Y= Received: from VI1PR0401MB2541.eurprd04.prod.outlook.com (10.168.62.139) by VI1PR0401MB2640.eurprd04.prod.outlook.com (10.168.61.135) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2305.20; Wed, 2 Oct 2019 02:47:09 +0000 Received: from VI1PR0401MB2541.eurprd04.prod.outlook.com ([fe80::4103:5f1e:64f9:50df]) by VI1PR0401MB2541.eurprd04.prod.outlook.com ([fe80::4103:5f1e:64f9:50df%8]) with mapi id 15.20.2305.023; Wed, 2 Oct 2019 02:47:09 +0000 From: Hemant Agrawal To: "Ananyev, Konstantin" , "Zhang, Roy Fan" , "dev@dpdk.org" CC: "Doherty, Declan" , Akhil Goyal Thread-Topic: [dpdk-dev] [PATCH 01/10] security: introduce CPU Crypto action type and API Thread-Index: AQHVdos1aaZRcKagTk6d9jNRhcnwu6dC4VyAgAEYgACAAfKVAIAAvHbg Date: Wed, 2 Oct 2019 02:47:09 +0000 Message-ID: References: <20190903154046.55992-1-roy.fan.zhang@intel.com> <20190906131330.40185-1-roy.fan.zhang@intel.com> <20190906131330.40185-2-roy.fan.zhang@intel.com> <1f111d3d-99fb-658f-964d-06a8a3873dfb@nxp.com> <2601191342CEEE43887BDE71AB977258019196CD7B@irsmsx105.ger.corp.intel.com> <60d2000a-a0c6-63cd-8c66-d9d7135e63b9@nxp.com> <2601191342CEEE43887BDE71AB977258019196F46F@irsmsx105.ger.corp.intel.com> In-Reply-To: <2601191342CEEE43887BDE71AB977258019196F46F@irsmsx105.ger.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=hemant.agrawal@nxp.com; x-originating-ip: [182.69.100.14] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 966f0add-3046-4cec-3edc-08d746e2d211 x-ms-office365-filtering-ht: Tenant x-ms-traffictypediagnostic: VI1PR0401MB2640:|VI1PR0401MB2640: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 0178184651 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(346002)(39860400002)(376002)(396003)(366004)(136003)(199004)(189003)(8676002)(2501003)(81166006)(81156014)(44832011)(14444005)(256004)(316002)(2906002)(6246003)(55016002)(9686003)(54906003)(110136005)(486006)(66446008)(66556008)(66476007)(8936002)(66946007)(76116006)(71200400001)(71190400001)(64756008)(66066001)(446003)(476003)(11346002)(33656002)(86362001)(186003)(7696005)(99286004)(76176011)(7736002)(25786009)(14454004)(74316002)(305945005)(4326008)(6116002)(52536014)(3846002)(15650500001)(5660300002)(229853002)(478600001)(6506007)(26005)(102836004)(6436002); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0401MB2640; H:VI1PR0401MB2541.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: t5LIrxQWqP3XxMjoDADI/wNCTGnghhQG6KT+dPi7nMp6KWEYDRNYJXyjZUOT8uoM6F4+X2vnw5GyOKiMTZMcfSMYDZRA9eBpbQ1OcBxyikGt4w8eUB3RtVM0BjMIlVJa9tH079HFOIyCLw99R1Jz0TtMyRZL+RUZSblJIHgpnsgcpGURGs2dd/gggltnl9jPeS5Ixel4RB2RNmYl3M23vgEiuX5yPOrCLxcg93zGdkChkpTpcrxmRLDWe36eq277WpELkRlT8ACf7UKp8GWAUP/Elaz7IeU82VWS4XadCJCtScr8sXjPHZAJQubOm3K25MuHwk1xzQfVuEGDN1H4j5eOO6ojIm3qe+PW143StuKGvcGycPPZfNRA8isLxyxohqRUC+WZBCdp4+8hJy8NlLpaFTnelH2vTjWyBcovIsw= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 966f0add-3046-4cec-3edc-08d746e2d211 X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Oct 2019 02:47:09.5544 (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: +bpFoK6TeN1C0MhyIbIuqhFKacl1CHKCBPbfsuxsjlz29b6sTVBYKPoPpDvgOUHJQLFJqGlmZyr8AZKHcBEbxw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0401MB2640 Subject: Re: [dpdk-dev] [PATCH 01/10] security: introduce CPU Crypto action type and API X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" SGkgS29uc3RhbnRpbiwNCg0KPiA+ID4+PiBUaGlzIHBhdGNoIGludHJvZHVjZSBuZXcgUlRFX1NF Q1VSSVRZX0FDVElPTl9UWVBFX0NQVV9DUllQVE8NCj4gPiA+Pj4gYWN0aW9uIHR5cGUgdG8gc2Vj dXJpdHkgbGlicmFyeS4gVGhlIHR5cGUgcmVwcmVzZW50cyBwZXJmb3JtaW5nDQo+ID4gPj4+IGNy eXB0byBvcGVyYXRpb24gd2l0aCBDUFUgY3ljbGVzLiBUaGUgcGF0Y2ggYWxzbyBpbmNsdWRlcyBh IG5ldw0KPiA+ID4+PiBBUEkgdG8gcHJvY2VzcyBjcnlwdG8gb3BlcmF0aW9ucyBpbiBidWxrIGFu ZCB0aGUgZnVuY3Rpb24gcG9pbnRlcnMgZm9yDQo+IFBNRHMuDQo+ID4gPj4+DQo+ID4gPj4+IFNp Z25lZC1vZmYtYnk6IEZhbiBaaGFuZyA8cm95LmZhbi56aGFuZ0BpbnRlbC5jb20+DQo+ID4gPj4+ IC0tLQ0KPiA+ID4+PiAgICBsaWIvbGlicnRlX3NlY3VyaXR5L3J0ZV9zZWN1cml0eS5jICAgICAg ICAgICB8IDE2ICsrKysrKysrKw0KPiA+ID4+PiAgICBsaWIvbGlicnRlX3NlY3VyaXR5L3J0ZV9z ZWN1cml0eS5oICAgICAgICAgICB8IDUxDQo+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0N Cj4gPiA+Pj4gICAgbGliL2xpYnJ0ZV9zZWN1cml0eS9ydGVfc2VjdXJpdHlfZHJpdmVyLmggICAg fCAxOSArKysrKysrKysrKw0KPiA+ID4+PiAgICBsaWIvbGlicnRlX3NlY3VyaXR5L3J0ZV9zZWN1 cml0eV92ZXJzaW9uLm1hcCB8ICAxICsNCj4gPiA+Pj4gICAgNCBmaWxlcyBjaGFuZ2VkLCA4NiBp bnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pDQo+ID4gPj4+DQo+ID4gPj4+IGRpZmYgLS1naXQg YS9saWIvbGlicnRlX3NlY3VyaXR5L3J0ZV9zZWN1cml0eS5jDQo+ID4gPj4+IGIvbGliL2xpYnJ0 ZV9zZWN1cml0eS9ydGVfc2VjdXJpdHkuYw0KPiA+ID4+PiBpbmRleCBiYzgxY2UxNWQuLjBmODVj MWI1OSAxMDA2NDQNCj4gPiA+Pj4gLS0tIGEvbGliL2xpYnJ0ZV9zZWN1cml0eS9ydGVfc2VjdXJp dHkuYw0KPiA+ID4+PiArKysgYi9saWIvbGlicnRlX3NlY3VyaXR5L3J0ZV9zZWN1cml0eS5jDQo+ ID4gPj4+IEBAIC0xNDEsMyArMTQxLDE5IEBAIHJ0ZV9zZWN1cml0eV9jYXBhYmlsaXR5X2dldChz dHJ1Y3QNCj4gPiA+Pj4gcnRlX3NlY3VyaXR5X2N0eCAqaW5zdGFuY2UsDQo+ID4gPj4+DQo+ID4g Pj4+ICAgIAlyZXR1cm4gTlVMTDsNCj4gPiA+Pj4gICAgfQ0KPiA+ID4+PiArDQo+ID4gPj4+ICt2 b2lkDQo+ID4gPj4+ICtydGVfc2VjdXJpdHlfcHJvY2Vzc19jcHVfY3J5cHRvX2J1bGsoc3RydWN0 IHJ0ZV9zZWN1cml0eV9jdHgNCj4gKmluc3RhbmNlLA0KPiA+ID4+PiArCQlzdHJ1Y3QgcnRlX3Nl Y3VyaXR5X3Nlc3Npb24gKnNlc3MsDQo+ID4gPj4+ICsJCXN0cnVjdCBydGVfc2VjdXJpdHlfdmVj IGJ1ZltdLCB2b2lkICppdltdLCB2b2lkICphYWRbXSwNCj4gPiA+Pj4gKwkJdm9pZCAqZGlnZXN0 W10sIGludCBzdGF0dXNbXSwgdWludDMyX3QgbnVtKSB7DQo+ID4gPj4+ICsJdWludDMyX3QgaTsN Cj4gPiA+Pj4gKw0KPiA+ID4+PiArCWZvciAoaSA9IDA7IGkgPCBudW07IGkrKykNCj4gPiA+Pj4g KwkJc3RhdHVzW2ldID0gLTE7DQo+ID4gPj4+ICsNCj4gPiA+Pj4gKwlSVEVfRlVOQ19QVFJfT1Jf UkVUKCppbnN0YW5jZS0+b3BzLT5wcm9jZXNzX2NwdV9jcnlwdG9fYnVsayk7DQo+ID4gPj4+ICsJ aW5zdGFuY2UtPm9wcy0+cHJvY2Vzc19jcHVfY3J5cHRvX2J1bGsoc2VzcywgYnVmLCBpdiwNCj4g PiA+Pj4gKwkJCWFhZCwgZGlnZXN0LCBzdGF0dXMsIG51bSk7DQo+ID4gPj4+ICt9DQo+ID4gPj4+ IGRpZmYgLS1naXQgYS9saWIvbGlicnRlX3NlY3VyaXR5L3J0ZV9zZWN1cml0eS5oDQo+ID4gPj4+ IGIvbGliL2xpYnJ0ZV9zZWN1cml0eS9ydGVfc2VjdXJpdHkuaA0KPiA+ID4+PiBpbmRleCA5Njgw NmUzYTIuLjVhMGY4OTAxYiAxMDA2NDQNCj4gPiA+Pj4gLS0tIGEvbGliL2xpYnJ0ZV9zZWN1cml0 eS9ydGVfc2VjdXJpdHkuaA0KPiA+ID4+PiArKysgYi9saWIvbGlicnRlX3NlY3VyaXR5L3J0ZV9z ZWN1cml0eS5oDQo+ID4gPj4+IEBAIC0xOCw2ICsxOCw3IEBAIGV4dGVybiAiQyIgew0KPiA+ID4+ PiAgICAjZW5kaWYNCj4gPiA+Pj4NCj4gPiA+Pj4gICAgI2luY2x1ZGUgPHN5cy90eXBlcy5oPg0K PiA+ID4+PiArI2luY2x1ZGUgPHN5cy91aW8uaD4NCj4gPiA+Pj4NCj4gPiA+Pj4gICAgI2luY2x1 ZGUgPG5ldGluZXQvaW4uaD4NCj4gPiA+Pj4gICAgI2luY2x1ZGUgPG5ldGluZXQvaXAuaD4NCj4g PiA+Pj4gQEAgLTI3Miw2ICsyNzMsMjAgQEAgc3RydWN0IHJ0ZV9zZWN1cml0eV9wZGNwX3hmb3Jt IHsNCj4gPiA+Pj4gICAgCXVpbnQzMl90IGhmbl90aHJlc2hvbGQ7DQo+ID4gPj4+ICAgIH07DQo+ ID4gPj4+DQo+ID4gPj4+ICtzdHJ1Y3QgcnRlX3NlY3VyaXR5X2NwdV9jcnlwdG9feGZvcm0gew0K PiA+ID4+PiArCS8qKiBGb3IgY2lwaGVyL2F1dGhlbnRpY2F0aW9uIGNyeXB0byBvcGVyYXRpb24g dGhlIGF1dGhlbnRpY2F0aW9uDQo+IG1heQ0KPiA+ID4+PiArCSAqIGNvdmVyIG1vcmUgY29udGVu dCB0aGVuIHRoZSBjaXBoZXIuIEUuZy4sIGZvciBJUFNlYyBFU1AgZW5jcnlwdGlvbg0KPiA+ID4+ PiArCSAqIHdpdGggQUVTLUNCQyBhbmQgU0hBMS1ITUFDLCB0aGUgZW5jcnlwdGlvbiBoYXBwZW5z IGFmdGVyIHRoZQ0KPiBFU1ANCj4gPiA+Pj4gKwkgKiBoZWFkZXIgYnV0IHdob2xlIHBhY2tldCAo YXBhcnQgZnJvbSBNQUMgaGVhZGVyKSBpcw0KPiBhdXRoZW50aWNhdGVkLg0KPiA+ID4+PiArCSAq IFRoZSBjaXBoZXJfb2Zmc2V0IGZpZWxkIGlzIHVzZWQgdG8gZGVkdWN0IHRoZSBjaXBoZXIgZGF0 YSBwb2ludGVyDQo+ID4gPj4+ICsJICogZnJvbSB0aGUgYnVmZmVyIHRvIGJlIHByb2Nlc3NlZC4N Cj4gPiA+Pj4gKwkgKg0KPiA+ID4+PiArCSAqIE5PVEUgdGhpcyBwYXJhbWV0ZXIgc2hhbGwgYmUg aWdub3JlZCBieSBBRUFEIGFsZ29yaXRobXMsIHNpbmNlIGl0DQo+ID4gPj4+ICsJICogdXNlcyB0 aGUgc2FtZSBvZmZzZXQgZm9yIGNpcGhlciBhbmQgYXV0aGVudGljYXRpb24uDQo+ID4gPj4+ICsJ ICovDQo+ID4gPj4+ICsJaW50MzJfdCBjaXBoZXJfb2Zmc2V0Ow0KPiA+ID4+PiArfTsNCj4gPiA+ Pj4gKw0KPiA+ID4+PiAgICAvKioNCj4gPiA+Pj4gICAgICogU2VjdXJpdHkgc2Vzc2lvbiBhY3Rp b24gdHlwZS4NCj4gPiA+Pj4gICAgICovDQo+ID4gPj4+IEBAIC0yODYsMTAgKzMwMSwxNCBAQCBl bnVtIHJ0ZV9zZWN1cml0eV9zZXNzaW9uX2FjdGlvbl90eXBlIHsNCj4gPiA+Pj4gICAgCS8qKjwg QWxsIHNlY3VyaXR5IHByb3RvY29sIHByb2Nlc3NpbmcgaXMgcGVyZm9ybWVkIGlubGluZSBkdXJp bmcNCj4gPiA+Pj4gICAgCSAqIHRyYW5zbWlzc2lvbg0KPiA+ID4+PiAgICAJICovDQo+ID4gPj4+ IC0JUlRFX1NFQ1VSSVRZX0FDVElPTl9UWVBFX0xPT0tBU0lERV9QUk9UT0NPTA0KPiA+ID4+PiAr CVJURV9TRUNVUklUWV9BQ1RJT05fVFlQRV9MT09LQVNJREVfUFJPVE9DT0wsDQo+ID4gPj4+ICAg IAkvKio8IEFsbCBzZWN1cml0eSBwcm90b2NvbCBwcm9jZXNzaW5nIGluY2x1ZGluZyBjcnlwdG8g aXMgcGVyZm9ybWVkDQo+ID4gPj4+ICAgIAkgKiBvbiBhIGxvb2thc2lkZSBhY2NlbGVyYXRvcg0K PiA+ID4+PiAgICAJICovDQo+ID4gPj4+ICsJUlRFX1NFQ1VSSVRZX0FDVElPTl9UWVBFX0NQVV9D UllQVE8NCj4gPiA+Pj4gKwkvKio8IENyeXB0byBwcm9jZXNzaW5nIGZvciBzZWN1cml0eSBwcm90 b2NvbCBpcyBwcm9jZXNzZWQgYnkgQ1BVDQo+ID4gPj4+ICsJICogc3luY2hyb25vdXNseQ0KPiA+ ID4+PiArCSAqLw0KPiA+ID4+IHRob3VnaCB5b3UgYXJlIG5hbWluZyBpdCBjcHUgY3J5cHRvLCBi dXQgaXQgaXMgbW9yZSBsaWtlIHJhdyBwYWNrZXQNCj4gPiA+PiBjcnlwdG8sIHdoZXJlIHlvdSB3 YW50IHRvIHNraXAgbWJ1Zi9jcnlwdG8gb3BzIGFuZCBkaXJlY3RseSB3YW50cw0KPiA+ID4+IHRv IHdvcmsgb24gcmF3IGJ1ZmZlci4NCj4gPiA+IFllcywgYnV0IHdlIGRvIHdhdCB0byBkbyB0aGF0 IChza2lwIG1idWYvY3J5cHRvIG9wcyBhbmQgdXNlIHJhdw0KPiA+ID4gYnVmZmVyKSwgYmVjYXVz ZSB0aGlzIEFQSSBpcyBkZXN0aW5lZCBmb3IgU1cgYmFja2VkIGltcGxlbWVudGF0aW9uLg0KPiA+ ID4gRm9yIHRoYXQgY2FzZSBjcnlwdG8tb3BzICwgbWJ1ZiwgZW5xdWV1ZS9kZXF1ZXVlIGFyZSBq dXN0IHVubmVjZXNzYXJ5DQo+IG92ZXJoZWFkLg0KPiA+IEkgYWdyZWUsIHdlIGFyZSBhbHNvIHBs YW5uaW5nIHRvIHRha2UgYWR2YW50YWdlIG9mIGl0IGZvciBzb21lDQo+ID4gc3BlY2lmaWMgdXNl LWNhc2VzIGluIGZ1dHVyZS4NCj4gPiA+Pj4gICAgfTsNCj4gPiA+Pj4NCj4gPiA+Pj4gICAgLyoq IFNlY3VyaXR5IHNlc3Npb24gcHJvdG9jb2wgZGVmaW5pdGlvbiAqLyBAQCAtMzE1LDYgKzMzNCw3 IEBADQo+ID4gPj4+IHN0cnVjdCBydGVfc2VjdXJpdHlfc2Vzc2lvbl9jb25mIHsNCj4gPiA+Pj4g ICAgCQlzdHJ1Y3QgcnRlX3NlY3VyaXR5X2lwc2VjX3hmb3JtIGlwc2VjOw0KPiA+ID4+PiAgICAJ CXN0cnVjdCBydGVfc2VjdXJpdHlfbWFjc2VjX3hmb3JtIG1hY3NlYzsNCj4gPiA+Pj4gICAgCQlz dHJ1Y3QgcnRlX3NlY3VyaXR5X3BkY3BfeGZvcm0gcGRjcDsNCj4gPiA+Pj4gKwkJc3RydWN0IHJ0 ZV9zZWN1cml0eV9jcHVfY3J5cHRvX3hmb3JtIGNwdWNyeXB0bzsNCj4gPiA+Pj4gICAgCX07DQo+ ID4gPj4+ICAgIAkvKio8IENvbmZpZ3VyYXRpb24gcGFyYW1ldGVycyBmb3Igc2VjdXJpdHkgc2Vz c2lvbiAqLw0KPiA+ID4+PiAgICAJc3RydWN0IHJ0ZV9jcnlwdG9fc3ltX3hmb3JtICpjcnlwdG9f eGZvcm07IEBAIC02MzksNiArNjU5LDM1DQo+ID4gPj4+IEBAIGNvbnN0IHN0cnVjdCBydGVfc2Vj dXJpdHlfY2FwYWJpbGl0eSAqDQo+ID4gPj4+ICAgIHJ0ZV9zZWN1cml0eV9jYXBhYmlsaXR5X2dl dChzdHJ1Y3QgcnRlX3NlY3VyaXR5X2N0eCAqaW5zdGFuY2UsDQo+ID4gPj4+ICAgIAkJCSAgICBz dHJ1Y3QgcnRlX3NlY3VyaXR5X2NhcGFiaWxpdHlfaWR4ICppZHgpOw0KPiA+ID4+Pg0KPiA+ID4+ PiArLyoqDQo+ID4gPj4+ICsgKiBTZWN1cml0eSB2ZWN0b3Igc3RydWN0dXJlLCBjb250YWlucyBw b2ludGVyIHRvIHZlY3RvciBhcnJheQ0KPiA+ID4+PiArYW5kIHRoZSBsZW5ndGgNCj4gPiA+Pj4g KyAqIG9mIHRoZSBhcnJheQ0KPiA+ID4+PiArICovDQo+ID4gPj4+ICtzdHJ1Y3QgcnRlX3NlY3Vy aXR5X3ZlYyB7DQo+ID4gPj4+ICsJc3RydWN0IGlvdmVjICp2ZWM7DQo+ID4gPj4+ICsJdWludDMy X3QgbnVtOw0KPiA+ID4+PiArfTsNCj4gPiA+Pj4gKw0KPiA+ID4+IEp1c3Qgd29uZGVyaW5nIGlm IHlvdSB3YW50IHRvIGNoYW5nZSBpdCB0byAqaW5fdmVjIGFuZCAqb3V0X3ZlYywNCj4gPiA+PiB0 aGF0IHdpbGwgYmUgaGVscGZ1bCBpbiBmdXR1cmUsIGlmIHRoZSBvdXQtb2YtcGxhY2UgcHJvY2Vz c2luZyBpcw0KPiA+ID4+IHJlcXVpcmVkIGZvciBDUFUgdXNlY2FzZSBhcyB3ZWxsPw0KPiA+ID4g SSBzdXBwb3NlIHRoaXMgaXMgZG9hYmxlLCB0aG91Z2ggcmlnaHQgbm93IHdlIGRvbid0IHBsYW4g dG8gc3VwcG9ydCBzdWNoDQo+IG1vZGVsLg0KPiA+IFRoZXkgd2lsbCBjb21lIGhhbmR5IGluIGZ1 dHVyZS4gSSBwbGFuIHRvIHVzZSBpdCBpbiBmdXR1cmUgYW5kIHdlIGNhbg0KPiA+IHNraXAgdGhl IEFQSS9BQkkgYnJlYWthZ2UsIGlmIHRoZSBwbGFjZWhvbGRlciBhcmUgcHJlc2VudA0KPiA+ID4N Cj4gPiA+Pj4gKy8qKg0KPiA+ID4+PiArICogUHJvY2Vzc2luZyBidWxrIGNyeXB0byB3b3JrbG9h ZCB3aXRoIENQVQ0KPiA+ID4+PiArICoNCj4gPiA+Pj4gKyAqIEBwYXJhbQlpbnN0YW5jZQlzZWN1 cml0eSBpbnN0YW5jZS4NCj4gPiA+Pj4gKyAqIEBwYXJhbQlzZXNzCQlzZWN1cml0eSBzZXNzaW9u DQo+ID4gPj4+ICsgKiBAcGFyYW0JYnVmCQlhcnJheSBvZiBidWZmZXIgU0dMIHZlY3RvcnMNCj4g PiA+Pj4gKyAqIEBwYXJhbQlpdgkJYXJyYXkgb2YgSVYgcG9pbnRlcnMNCj4gPiA+Pj4gKyAqIEBw YXJhbQlhYWQJCWFycmF5IG9mIEFBRCBwb2ludGVycw0KPiA+ID4+PiArICogQHBhcmFtCWRpZ2Vz dAkJYXJyYXkgb2YgZGlnZXN0IHBvaW50ZXJzDQo+ID4gPj4+ICsgKiBAcGFyYW0Jc3RhdHVzCQlh cnJheSBvZiBzdGF0dXMgZm9yIHRoZSBmdW5jdGlvbiB0bw0KPiByZXR1cm4NCj4gPiA+Pj4gKyAq IEBwYXJhbQludW0JCW51bWJlciBvZiBlbGVtZW50cyBpbiBlYWNoIGFycmF5DQo+ID4gPj4+ICsg Kg0KPiA+ID4+PiArICovDQo+ID4gPj4+ICtfX3J0ZV9leHBlcmltZW50YWwNCj4gPiA+Pj4gK3Zv aWQNCj4gPiA+Pj4gK3J0ZV9zZWN1cml0eV9wcm9jZXNzX2NwdV9jcnlwdG9fYnVsayhzdHJ1Y3Qg cnRlX3NlY3VyaXR5X2N0eA0KPiAqaW5zdGFuY2UsDQo+ID4gPj4+ICsJCXN0cnVjdCBydGVfc2Vj dXJpdHlfc2Vzc2lvbiAqc2VzcywNCj4gPiA+Pj4gKwkJc3RydWN0IHJ0ZV9zZWN1cml0eV92ZWMg YnVmW10sIHZvaWQgKml2W10sIHZvaWQgKmFhZFtdLA0KPiA+ID4+PiArCQl2b2lkICpkaWdlc3Rb XSwgaW50IHN0YXR1c1tdLCB1aW50MzJfdCBudW0pOw0KPiA+ID4+PiArDQo+ID4gPj4gV2h5IG5v dCBtYWtlIHRoZSByZXR1cm4gYXMgaW50LCB0byBpbmRpY2F0ZSB3aGV0aGVyIHRoaXMgQVBJDQo+ ID4gPj4gY29tcGxldGVseSBmYWlsZWQgb3IgcHJvY2Vzc2VkIG9yIGhhdmUgc29tZSB2YWxpZCBz dGF0dXMgdG8gbG9vayBpbnRvPw0KPiA+ID4gR29vZCBwb2ludCwgd2lsbCBjaGFuZ2UgYXMgc3Vn Z2VzdGVkLg0KPiA+DQo+ID4gSSBoYXZlIGFub3RoZXIgc3VnZ2VzdGlvbnMgdy5yLnQgaXYsIGFh ZCwgZGlnZXN0IGV0Yy4gV2h5IG5vdCBwdXQgdGhlbQ0KPiA+IGluIGEgc3RydWN0dXJlLCBzbyB0 aGF0IHlvdSB3aWxsDQo+ID4NCj4gPiBiZSBhYmxlIHRvIGFkZC9yZW1vdmUgdGhlIHZhcmlhYmxl IHdpdGhvdXQgYnJlYWtpbmcgdGhlIEFQSSBwcm90b3R5cGUuDQo+IA0KPiANCj4gSnVzdCB0byBj b25maXJtLCB5b3UgYXJlIHRhbGtpbmcgYWJvdXQgc29tZXRoaW5nIGxpa2U6DQo+IA0KPiBzdHJ1 Y3QgcnRlX3NlY3VyaXR5X3ZlYyB7DQo+ICAgIHN0cnVjdCBpb3ZlYyAqdmVjOw0KPiAgICB1aW50 MzJfdCBudW07DQo+IH07DQoNCltIZW1hbnRdIE15IGlkZWEgaXM6DQogc3RydWN0IHJ0ZV9zZWN1 cml0eV92ZWMgew0KICAgIHN0cnVjdCBpb3ZlYyAqdmVjOw0KICAgIHN0cnVjdCBpb3ZlYyAqb3V0 X3ZlYzsNCiAgICB1aW50MzJfdCBudW1faW47DQogICAgdWludDMyX3QgbnVtX291dDsgDQp9Ow0K DQo+IA0KPiBzdHJ1Y3QgcnRlX3NlY3VyaXR5X3N5bV92ZWMgew0KPiAgICAgICBzdHJ1Y3QgcnRl X3NlY3VyaXR5X3ZlYyBidWY7DQo+ICAgICAgIHZvaWQgKml2Ow0KPiAgICAgICB2b2lkICphYWQ7 DQo+ICAgICAgIHZvaWQgKmRpZ2VzdDsNCj4gfTsNCj4gDQpbSGVtYW50XSAgb3IgbGVhdmUgdGhl IHJ0ZV9zZWN1cml0eV92ZWMgYWx0b2dldGhlciBhbmQgbWFrZSBpdCBwYXJ0IG9mIHJ0ZV9zZWN1 cml0eV9zeW1fdmVjIGl0c2VsZi4NCg0KPiBydGVfc2VjdXJpdHlfcHJvY2Vzc19jcHVfY3J5cHRv X2J1bGsoc3RydWN0IHJ0ZV9zZWN1cml0eV9jdHggKmluc3RhbmNlLA0KPiAJc3RydWN0IHJ0ZV9z ZWN1cml0eV9zZXNzaW9uICpzZXNzLCBzdHJ1Y3QgcnRlX3NlY3VyaXR5X3N5bV92ZWMgYnVmW10s DQo+ICAgICAgICAgICAgICAgIGludCBzdGF0dXNbXSwgdWludDMyX3QgbnVtKTsNCj4gDQo+ID8N Cj4gV2UgdGhvdWdodCBhYm91dCBzdWNoIHdheSwgdGhvdWdoIGZvciBQTUQgaXQgd291bGQgYmUg bW9yZSBwbGF1c2libGUgdG8NCj4gaGF2ZSBzYW1lIHR5cGUgb2YgcGFyYW1zIGdyb3VwZWQgdG9n ZXRoZXIsIGkuZS4gdm9pZCAqaW5bXSwgdm9pZCAqb3V0W10sIHZvaWQNCj4gKmRpZ2VzdFtdLCAu Li4NCj4gQW5vdGhlciB0aGluZyAtIGFib3ZlIGdyb3VwaW5nIHdvdWxkbid0IGhlbHAgdG8gYXZv aWQgQUJJIGJyZWFrYWdlLCBpbiBjYXNlDQo+IHdlJ2xsIG5lZWQgdG8gYWRkIG5ldyBmaWVsZCBp bnRvIHJ0ZV9zZWN1cml0eV9zeW1fdmVjICh0aG91Z2ggaXQgbWlnaHQgaGVscA0KPiB0byBhdm9p ZCBBUEkgYnJlYWthZ2UpLg0KPiANCj4gSW4gdGhlb3J5IG90aGVyIHdheSBpcyBhbHNvIHBvc3Np YmxlOg0KPiBzdHJ1Y3QgcnRlX3NlY3VyaXR5X3N5bV92ZWMgew0KPiAgICAgICBzdHJ1Y3QgcnRl X3NlY3VyaXR5X3ZlYyAqYnVmOw0KPiAgICAgICB2b2lkICoqaXY7DQo+ICAgICAgIHZvaWQgKiph YWQ7DQo+ICAgICAgIHZvaWQgKipkaWdlc3Q7DQo+IH07DQo+IA0KPiBydGVfc2VjdXJpdHlfcHJv Y2Vzc19jcHVfY3J5cHRvX2J1bGsoc3RydWN0IHJ0ZV9zZWN1cml0eV9jdHggKmluc3RhbmNlLA0K PiAJc3RydWN0IHJ0ZV9zZWN1cml0eV9zZXNzaW9uICpzZXNzLCBzdHJ1Y3QgcnRlX3NlY3VyaXR5 X3N5bV92ZWMgKmJ1ZiwNCj4gICAgICAgICAgICAgICAgaW50IHN0YXR1c1tdLCB1aW50MzJfdCBu dW0pOw0KPiANCj4gQW5kIHRoYXQgbWlnaHQgaGVscCBmb3IgYm90aCBBQkkgYW5kIEFQSSBzdGFi aWxpdHksIGJ1dCBpdCBsb29rcyByZWFsbHkgd2VpcmQNCj4gdGhhdCB3YXkgKGF0IGxlYXN0IHRv IG1lKS4NCg0KW0hlbWFudF0gSSBhbSBmaW5lIGVpdGhlciB3YXkuIA0KDQo+IEFsc28gdGhpcyBB UEkgaXMgZXhwZXJpbWVudGFsIGFuZCBJIHN1cHBvc2UgbmVlZHMgdG8gc3RheSBleHBlcmltZW50 YWwgZm9yDQo+IGZldyByZWxlYXNlcyBiZWZvcmUgd2UgYXJlIHN1cmUgbm90aGluZyBpbXBvcnRh bnQgaXMgbWlzc2luZywgc28gcHJvYmFibHkNCj4gQVBJL0FCSSBzdGFiaWxpdHkgaXMgbm90IHRo YXQgaGlnaCBjb25jZXJuIGZvciBpdCByaWdodCBub3cuDQo+IA0KPiBLb25zdGFudGluDQo+IA0K PiANCg==