From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM05-DM3-obe.outbound.protection.outlook.com (mail-eopbgr730051.outbound.protection.outlook.com [40.107.73.51]) by dpdk.org (Postfix) with ESMTP id A4EB41BDFA for ; Fri, 6 Jul 2018 16:28:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=09H9meGF0GOlWyhgS2sGQl6qK5OqpKCD/GUdKhcnXZ8=; b=jQLcugWdmz0DMgFT611vi/s+vi9yzS3ncXue4m2RRwgqkSUt6pVDKcoBB40Cqwu3q7sIB46/rzkJ2bFubpyngBuU5xmaMjFcIp1+CK/UfC5VvWhNsMPilSzdD7VciX9BjUkKcMkS+T8jLrASftguoblEQ2nZOXEwUgAhXBLAHa0= Received: from CY4PR0701MB3634.namprd07.prod.outlook.com (52.132.101.164) by CY4PR0701MB3811.namprd07.prod.outlook.com (52.132.102.157) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.930.20; Fri, 6 Jul 2018 14:28:54 +0000 Received: from CY4PR0701MB3634.namprd07.prod.outlook.com ([fe80::f0d4:1828:37f5:5927]) by CY4PR0701MB3634.namprd07.prod.outlook.com ([fe80::f0d4:1828:37f5:5927%2]) with mapi id 15.20.0930.016; Fri, 6 Jul 2018 14:28:54 +0000 From: "Verma, Shally" To: "Doherty, Declan" , "pablo.de.lara.guarch@intel.com" CC: "dev@dpdk.org" , "Athreya, Narayana Prasad" , "Murthy, Nidadavolu" , "Sahu, Sunila" , "Gupta, Ashish" , "Kartha, Umesh" Thread-Topic: [dpdk-dev] [PATCH v4 1/4] lib/cryptodev: add asymmetric algos in cryptodev Thread-Index: AQHUFHAX8g9R6E3wfkO5OPi8+keMSqSB2GkA Date: Fri, 6 Jul 2018 14:28:53 +0000 Message-ID: References: <1530631466-26427-1-git-send-email-shally.verma@caviumnetworks.com> <1530631466-26427-2-git-send-email-shally.verma@caviumnetworks.com> <9905afc5-3571-d6c8-c2b0-7c9804f0dbd6@intel.com> In-Reply-To: <9905afc5-3571-d6c8-c2b0-7c9804f0dbd6@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=Shally.Verma@cavium.com; x-originating-ip: [115.113.156.2] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; CY4PR0701MB3811; 7:yqSZKzox4PeoQNjgsuFkpegThyB7Jgir0Szn8mFG9Tg5khK7YqdFStBaRlU11nKMZ2ZFJrb+rvZdyu8ANCoFWrqyKa54BucqClwukje+QStHjyGeIfH67uGt4w4mSkfXsLNV2FqcS1k0I6mjJAJuWyIZ6Euf8cBMXDU2Won4VIQn1LnvFAfRZLh2098EiwaogRppR3OSsfCWTcDEs/Fl2oSngisxZQ/WXvzhlDzciCjf72SJIlaegGssypUUug0d x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR; x-forefront-antispam-report: SFV:SKI; SCL:-1; SFV:NSPM; SFS:(10009020)(136003)(346002)(39860400002)(366004)(396003)(376002)(51444003)(189003)(199004)(13464003)(6506007)(26005)(7696005)(81166006)(81156014)(76176011)(8676002)(66066001)(102836004)(186003)(8936002)(6116002)(55236004)(97736004)(229853002)(3846002)(6436002)(561944003)(9686003)(55016002)(33656002)(2906002)(7736002)(316002)(68736007)(106356001)(74316002)(305945005)(105586002)(5250100002)(478600001)(25786009)(2501003)(486006)(72206003)(54906003)(99286004)(476003)(14454004)(110136005)(446003)(4326008)(2900100001)(14444005)(256004)(5660300001)(53936002)(11346002)(86362001)(6246003)(107886003); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR0701MB3811; H:CY4PR0701MB3634.namprd07.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; x-ms-office365-filtering-correlation-id: 0c3b9158-0a09-4f75-b357-08d5e34ccd0f x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020); SRVR:CY4PR0701MB3811; x-ms-traffictypediagnostic: CY4PR0701MB3811: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(228905959029699); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(3002001)(10201501046)(3231254)(944501410)(52105095)(149027)(150027)(6041310)(20161123558120)(20161123564045)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:CY4PR0701MB3811; BCL:0; PCL:0; RULEID:; SRVR:CY4PR0701MB3811; x-forefront-prvs: 0725D9E8D0 received-spf: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: uwBz3L2sZ9WIrsNVsSbcdcqfvjjd9n+VC/2gMtMU4gk34/LvZMk7mj7E4pRCVcDhiguotDHRGGJ2TPrZ/aSbpsfeT4kICBcPiZj5ywHkeQ+U/cCUEdH1Lbvnh2n4T2xDW+5Zj3Nh0OzjZieebmAvUHotDBugK2PricH7JX1U8ALPSi8dGXvDXPE1ALbi5ToFHJhiZOzvwuIEJQ1x3CbYZkYx78PzsK/2g73/ZCGF3ptNTGbt8AYMKRFZj0hLW5YitkLx6n2Z50mhThne6kHvTECzVzqtSnqJOAbcZD40qEOXbniEkZeTLi26zjm543lFQyupplCdd6h1BEo6n/auGKWz/7jnFt1i71B2K6qqbf8= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0c3b9158-0a09-4f75-b357-08d5e34ccd0f X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Jul 2018 14:28:53.9233 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR0701MB3811 Subject: Re: [dpdk-dev] [PATCH v4 1/4] lib/cryptodev: add asymmetric algos in cryptodev 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: , X-List-Received-Date: Fri, 06 Jul 2018 14:28:57 -0000 SGkgRGVjbGFuDQoNCj4tLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPkZyb206IERvaGVydHks IERlY2xhbiBbbWFpbHRvOmRlY2xhbi5kb2hlcnR5QGludGVsLmNvbV0NCj5TZW50OiAwNSBKdWx5 IDIwMTggMjA6MjQNCj5UbzogVmVybWEsIFNoYWxseSA8U2hhbGx5LlZlcm1hQGNhdml1bS5jb20+ OyBwYWJsby5kZS5sYXJhLmd1YXJjaEBpbnRlbC5jb20NCj5DYzogZGV2QGRwZGsub3JnOyBBdGhy ZXlhLCBOYXJheWFuYSBQcmFzYWQgPE5hcmF5YW5hUHJhc2FkLkF0aHJleWFAY2F2aXVtLmNvbT47 IE11cnRoeSwgTmlkYWRhdm9sdQ0KPjxOaWRhZGF2b2x1Lk11cnRoeUBjYXZpdW0uY29tPjsgU2Fo dSwgU3VuaWxhIDxTdW5pbGEuU2FodUBjYXZpdW0uY29tPjsgR3VwdGEsIEFzaGlzaCA8QXNoaXNo Lkd1cHRhQGNhdml1bS5jb20+OyBLYXJ0aGEsDQo+VW1lc2ggPFVtZXNoLkthcnRoYUBjYXZpdW0u Y29tPg0KPlN1YmplY3Q6IFJlOiBbZHBkay1kZXZdIFtQQVRDSCB2NCAxLzRdIGxpYi9jcnlwdG9k ZXY6IGFkZCBhc3ltbWV0cmljIGFsZ29zIGluIGNyeXB0b2Rldg0KPg0KPkV4dGVybmFsIEVtYWls DQo+DQo+SGV5IFNoYWxseSwNCj4NCj5qdXN0IGEgZmV3IHRoaW5ncyBpbmxpbmUgYmVsb3cgbWFp bmx5IGNvbmNlcm5lZCB3aXRoIHRoZSBuZWVkIHRvIGJlIGFibGUNCj50byBzdXBwb3J0IHNlc3Np b24tbGVzcyBvcGVyYXRpb25zIGluIGZ1dHVyZSBQTURzLiBJIHRoaW5rIHdpdGggYSBmZXcNCj5t aW5vciBjaGFuZ2VzIHRvIHRoZSBBUEkgbm93IGl0IHNob3VsZCBhbGxvdyBzZXNzaW9uLWxlc3Mg dG8gYmUNCj5zdXBwb3J0ZWQgbGF0ZXIgd2l0aG91dCB0aGUgbmVlZCBmb3IgYSBtYWpvciByZXdv cmsgb2YgdGhlIEFQSXMsIEkgZG9uJ3QNCj50aGluayB0aGlzIHNob3VsZCBjYXVzZSBhbnkgbWFq b3IgcmV3b3JrIHRvIHlvdXIgUE1EIGp1c3QgdGhlIGFkb3B0aW9uDQo+b2Ygc29tZSBuZXcgbW9y ZSBleHBsaWNpdCBvcCB0eXBlcy4NCj4NCj5UaGFua3MNCj5EZWNsYW4NCj4NCj5PbiAwMy8wNy8y MDE4IDQ6MjQgUE0sIFNoYWxseSBWZXJtYSB3cm90ZToNCj4+IEFkZCBydGVfY3J5cHRvX2FzeW0u aCB3aXRoIHN1cHBvcnRlZCB4ZnJtcw0KPj4gYW5kIGFzc29jaWF0ZWQgb3Agc3RydWN0dXJlcyBh bmQgQVBJcw0KPj4NCj4+IEFQSSBjdXJyZW50bHkgc3VwcG9ydHM6DQo+PiAtIFJTQSBFbmNyeXB0 LCBEZWNyeXB0LCBTaWduIGFuZCBWZXJpZnkNCj4+IC0gTW9kdWxhciBFeHBvbmVudGlhdGlvbiBh bmQgSW52ZXJzaW9uDQo+PiAtIERTQSBTaWduIGFuZCBWZXJpZnkNCj4+IC0gRGVmZmllLWhlbGxt YW4gcHJpdmF0ZSBrZXkgZXhjaGFuZ2UNCj4+IC0gRGVmZmllLWhlbGxtYW4gcHVibGljIGtleSBl eGNoYW5nZQ0KPj4gLSBEZWZmaWUtaGVsbG1hbiBzaGFyZWQgc2VjcmV0IGNvbXB1dGUNCj4+IC0g RGVmZmllLWhlbGxtYW4gcHVibGljL3ByaXZhdGUga2V5IHBhaXIgZ2VuZXJhdGlvbg0KPj4gdXNp bmcgeGZvcm0gY2hhaW4NCj4+DQo+PiBTaWduZWQtb2ZmLWJ5OiBTaGFsbHkgVmVybWEgPHNoYWxs eS52ZXJtYUBjYXZpdW1uZXR3b3Jrcy5jb20+DQo+PiBTaWduZWQtb2ZmLWJ5OiBTdW5pbGEgU2Fo dSA8c3VuaWxhLnNhaHVAY2F2aXVtbmV0d29ya3MuY29tPg0KPj4gU2lnbmVkLW9mZi1ieTogQXNo aXNoIEd1cHRhIDxhc2hpc2guZ3VwdGFAY2F2aXVtbmV0d29ya3MuY29tPg0KPj4gU2lnbmVkLW9m Zi1ieTogVW1lc2ggS2FydGhhIDx1bWVzaC5rYXJ0aGFAY2F2aXVtbmV0d29ya3MuY29tPg0KPj4g LS0tDQo+PiAgIGxpYi9saWJydGVfY3J5cHRvZGV2L01ha2VmaWxlICAgICAgICAgIHwgICAxICsN Cj4+ICAgbGliL2xpYnJ0ZV9jcnlwdG9kZXYvbWVzb24uYnVpbGQgICAgICAgfCAgIDMgKy0NCj4+ ICAgbGliL2xpYnJ0ZV9jcnlwdG9kZXYvcnRlX2NyeXB0b19hc3ltLmggfCA0OTYgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrDQo+PiAgIDMgZmlsZXMgY2hhbmdlZCwgNDk5IGluc2Vy dGlvbnMoKyksIDEgZGVsZXRpb24oLSkNCj4+DQo+PiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9j cnlwdG9kZXYvTWFrZWZpbGUgYi9saWIvbGlicnRlX2NyDQo+DQo+Li4uDQo+DQo+PiArdHlwZWRl ZiBzdHJ1Y3QgcnRlX2NyeXB0b19wYXJhbV90IHsNCj4+ICsgICAgIHVpbnQ4X3QgKmRhdGE7DQo+ PiArICAgICAvKio8IHBvaW50ZXIgdG8gYnVmZmVyIGhvbGRpbmcgZGF0YSAqLw0KPj4gKyAgICAg cnRlX2lvdmFfdCBpb3ZhOw0KPj4gKyAgICAgLyoqPCBJTyBhZGRyZXNzIG9mIGRhdGEgYnVmZmVy ICovDQo+PiArICAgICBzaXplX3QgbGVuZ3RoOw0KPj4gKyAgICAgLyoqPCBsZW5ndGggb2YgZGF0 YSBpbiBieXRlcyAqLw0KPj4gK30gcnRlX2NyeXB0b19wYXJhbTsNCj4NCj5XaGF0IGlzIHRoZSBp bnRlbmRlZCB3YXkgZm9yIHRoaXMgbWVtb3J5IHRvIGJlIGFsbG9jYXRlZCwgDQoNCltTaGFsbHld IEl0IHNob3VsZCBiZSBwb2ludGVyIHRvIGZsYXQgYnVmZmVycyBhbmQgYWRkZWQgb25seSB0byBp bnB1dC9vdXRwdXQgZGF0YSB0by9mcm9tDQphc3ltbWV0cmljIGNyeXB0byBlbmdpbmUuDQoNCj4g aXQgc2VlbXMgbGlrZQ0KPnRoZXJlIG1pZ2h0IGJlIGEgbW9yZSBnZW5lcmFsIHJlcXVpcmVtZW50 IGluIERQREsgZm9yIElPIGFkZHJlc3NhYmxlDQo+bWVtb3J5IChjb21wcmVzc2lvbj8gb3RoZXIg aGFyZHdhcmUgYWNjZWxlYXRvcnMgaW1wbGVtZW50ZWQgb24gRlBHQXMpDQo+dGhhbiBqdXN0IGFz eW1tZXRyaWMgY3J5cHRvLCB3aWxsIHdlIGVuZCB1cCBuZWVkaW5nIHRvIHN1cHBvcnQgZmVhdHVy ZXMNCj5saWtlIHNjYXR0ZXIgZ2F0aGVyIGxpc3RzIGluIHRoaXMgc3RydWN0dXJlPyANCg0KW1No YWxseV0gSSBkb27igJl0IGFudGljaXBhdGUgdGhhdCB3ZSB3b3VsZCBuZWVkIHRvIHN1cHBvcnQg c2NhdHRlci1nYXRoZXIgZGF0YSBidWZmZXJzIGFzIGZhciBhcyBpdCBpcyB1c2VkIGZvciBhc3lt bWV0cmljLg0KQW5kIEknbSBub3QgYXdhcmUgaWYgd2UgaGF2ZSByZXF1aXJlbWVudCB0byBzdXBw b3J0IGl0IGZvciBhc3ltbWV0cmljIHByb2Nlc3Npbmcgc2luY2UgZGF0YSBzaXplIGlzIHVzdWFs bHkgc21hbGwgZm9yDQpzdWNoIG9wZXJhdGlvbnMuIFRodXMsIGFwcCBpcyBleHBlY3RlZCB0byBz ZW5kIGxpbmVhciBidWZmZXJzIGZvciBpbnB1dC9vdXRwdXQuDQoNCkRvZXMgdGhhdCBhbnN3ZXIg eW91ciBxdWVzdGlvbj8gT3IgZGlkIEkgbWlzcyBhbnl0aGluZz8NCg0KDQo+YnR3IEkgdGhpbmsg dGhpcyBpcw0KPnByb2JhYmx5IGZpbmUgZm9yIHRoZSBtb21lbnQgYXMgaXQgd2lsbCBiZSBleHBl cm1lbnRpYWwgYnV0IEkgdGhpbmsgaXQNCj53aWxsIG5lZWQgdG8gYmUgYWRkcmVzc2VkIGJlZm9y ZSB0aGUgcmVtb3ZhbCBvZiB0aGUgZXhwZXJtZW50aWFsIHRhZy4NCj4NCg0KLi4uDQoNCj4+ICsg ICAgIFJURV9DUllQVE9fQVNZTV9YRk9STV9NT0RJTlYsDQo+DQo+V291bGQgcHJlZmVyIGlmIHRo aXMgd2FzIF9NT0RfSU5WIDopDQo+DQo+PiArICAgICAvKio8IE1vZHVsYXIgSW52ZXJzZQ0KPj4g KyAgICAgICogUGVyZm9ybSBNb2R1bHVzIGludmVyc2UgYl4oLTEpIG1vZCBuDQo+PiArICAgICAg Ki8NCj4+ICsgICAgIFJURV9DUllQVE9fQVNZTV9YRk9STV9NT0RFWCwNCj4NCj5hbnkgdGhpcyB3 YXMgX01PRF9FWCA6KQ0KDQpbU2hhbGx5XSBmaW5lIHdpbGwgZG8gbmFtZSBjaGFuZ2UuDQoNCj4N Cj4+ICsgICAgIC8qKjwgTW9kdWxhciBFeHBvbmVudGlhdGlvbg0KPj4gKyAgICAgICogUGVyZm9y bSBNb2R1bGFyIEV4cG9uZW50aWF0aW9uIGJeZSBtb2Qgbg0KPj4gKyAgICAgICovDQo+PiArICAg ICBSVEVfQ1JZUFRPX0FTWU1fWEZPUk1fVFlQRV9MSVNUX0VORA0KPj4gKyAgICAgLyoqPCBFbmQg b2YgbGlzdCAqLw0KPj4gK307DQo+PiArDQo+PiArLyoqDQo+PiArICogQXN5bW1ldHJpYyBjcnlw dG8gb3BlcmF0aW9uIHR5cGUgdmFyaWFudHMNCj4+ICsgKi8NCj4+ICtlbnVtIHJ0ZV9jcnlwdG9f YXN5bV9vcF90eXBlIHsNCj4+ICsgICAgIFJURV9DUllQVE9fQVNZTV9PUF9FTkNSWVBULA0KPj4g KyAgICAgLyoqPCBBc3ltbWV0cmljIEVuY3J5cHQgb3BlcmF0aW9uICovDQo+PiArICAgICBSVEVf Q1JZUFRPX0FTWU1fT1BfREVDUllQVCwNCj4+ICsgICAgIC8qKjwgQXN5bW1ldHJpYyBEZWNyeXB0 IG9wZXJhdGlvbiAqLw0KPj4gKyAgICAgUlRFX0NSWVBUT19BU1lNX09QX1NJR04sDQo+PiArICAg ICAvKio8IFNpZ25hdHVyZSBHZW5lcmF0aW9uIG9wZXJhdGlvbiAqLw0KPj4gKyAgICAgUlRFX0NS WVBUT19BU1lNX09QX1ZFUklGWSwNCj4+ICsgICAgIC8qKjwgU2lnbmF0dXJlIFZlcmlmaWNhdGlv biBvcGVyYXRpb24gKi8NCj4+ICsgICAgIFJURV9DUllQVE9fQVNZTV9PUF9QUklWQVRFX0tFWV9H RU5FUkFURSwNCj4+ICsgICAgIC8qKjwgREggUHJpdmF0ZSBLZXkgZ2VuZXJhdGlvbiBvcGVyYXRp b24gKi8NCj4+ICsgICAgIFJURV9DUllQVE9fQVNZTV9PUF9QVUJMSUNfS0VZX0dFTkVSQVRFLA0K Pj4gKyAgICAgLyoqPCBESCBQdWJsaWMgS2V5IGdlbmVyYXRpb24gb3BlcmF0aW9uICovDQo+PiAr ICAgICBSVEVfQ1JZUFRPX0FTWU1fT1BfU0hBUkVEX1NFQ1JFVF9DT01QVVRFLA0KPj4gKyAgICAg LyoqPCBESCBTaGFyZWQgU2VjcmV0IGNvbXB1dGUgb3BlcmF0aW9uICovDQo+PiArICAgICBSVEVf Q1JZUFRPX0FTWU1fT1BfTElTVF9FTkQNCj4+ICt9Ow0KPj4gKw0KPg0KPkkgdGhpbmsgdGhhdCBo YXZpbmcgZ2VuZXJpYyBvcGVyYXRpb24gdHlwZXMgd2hpY2ggbWF5IG9yIG1heSBub3QgYXBwbHkN Cj50byBhbGwgb2YgdGhlIGRlZmluZWQgeGZvcm1zIGlzIGNvbmZ1c2luZyBmcm9tIGEgdXNlciBw ZXJzcGVjdGl2ZSBhbmQgaW4NCj50aGUgbG9uZ2VyIHRlcm0gd2lsbCBtYWtlIGl0IGltcG9zc2li bGUgdG8gc3VwcG9ydCBzZXNzaW9uLWxlc3MNCj5hc3ltbWV0cmljIG9wZXJhdGlvbnMuIElmIHdl IGluc3RlYWQgZG8gc29tZXRoaW5nIGxpa2UNCj4NCj4gICAgICAgIFJURV9DUllQVE9fQVNZTV9P UF9SU0FfRU5DUllQVCwNCj4gICAgICAgIFJURV9DUllQVE9fQVNZTV9PUF9SU0FfREVDUllQVCwN Cj4gICAgICAgIFJURV9DUllQVE9fQVNZTV9PUF9SU0FfU0lHTiwNCj4gICAgICAgIFJURV9DUllQ VE9fQVNZTV9PUF9SU0FfVkVSSUZZLA0KPiAgICAgICAgUlRFX0NSWVBUT19BU1lNX09QX0RIX0tF WV9HRU5FUkFURSwNCj4gICAgICAgIFJURV9DUllQVE9fQVNZTV9PUF9ESF9TSEFSRURfU0VDUkVU X0NPTVBVVEUsDQo+ICAgICAgICBldGMuLi4NCj4NCj5UaGVuIHRoZSBvcCB0eXBlIGJlY29tZXMg dmVyeSBleHBsaWNpdCBhbmQgd2lsbCBhbGxvdyBzZXNzaW9uLWxlc3MNCj5vcGVyYXRpb25zIHRv IGJlIHN1cHBvcnRlZCBieSBQTURzLiBUaGlzIHNob3VsZG4ndCBoYXZlIGFueSBpbXBhY3Qgb24N Cj55b3VyIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gb3RoZXIgdGhhbiB1cGRhdGluZyB0aGUgb3Ag dHlwZS4NCj4NCg0KW1NoYWxseV0gT2ssIHNvIHlvdSBzdWdnZXN0IHRvIG1lcmdlIHhmb3JtIGFu ZCBvcF90eXBlIChpbmNsdWRpbmcga2VlcGluZyBvcF90eXBlIGluIG9uZSBwbGFjZSkgIGZvciBz aW1wbGljaXR5IHNha2UuDQoNCklmIHdlIHRha2UgdGhpcyBjaGFuZ2UsIHRoZW4gSSB3aWxsIHBy ZWZlciB0byBrZWVwIGl0IGFzIHhmb3JtcyByYXRoZXIgdGhhbiBvcF90eXBlcywgc3VjaCBhcywN Cg0KZW51bSBydGVfY3J5cHRvX2FzeW1feGZvcm1fdHlwZXMgew0KUlRFX0NSWVBUT19BU1lNX1hG T1JNX1JTQV9FTkNSWVBULA0KUlRFX0NSWVBUT19BU1lNX1hGT1JNX1JTQV9TSUdOLA0KUlRFX0NS WVBUT19BU1lNX1hGT1JNX0RTQV9TSUdOLA0KUlRFX0NSWVBUT19BU1lNX1hGT1JNX0RTQV9WRVJJ RlksDQpSVEVfQ1JZUFRPX0FTWU1fWEZPUk1fREhfUFJJVl9LRVlfR0VORVJBVEUsDQpSVEVfQ1JZ UFRPX0FTWU1fWEZPUk1fREhfUFVCX0tFWV9HRU5FUkFURSwNClJURV9DUllQVE9fQVNZTV9YRk9S TV9ESF9TSEFSRURfU0VDUkVUX0NPTVBVVEUsIC4uLi4gYW5kIHNvIG9uLi4NCn0NCg0KVGhlc2Us IHdoZW4gc2V0IG9uIGEgcnRlX2NyeXB0b19hc3ltX3hmb3JtICwgd2lsbCB3b3JrIHNlYW1sZXNz bHkgZm9yIGJvdGggc2Vzc2lvbiBhbmQgc2Vzc2lvbi1sZXNzLiANCkkgYWxzbyBzZWUgYWR2YW50 YWdlIGhlcmUgdG8gc3VwcG9ydCB4Zm9ybSBjaGFpbmluZy4gSW4gdGhpcyBjYXNlLCBvcF90eXBl IGluIHJ0ZV9jcnlwdG9fYXN5bV94eF9vcF9wYXJhbXMgaXNuJ3QgbmVlZGVkIGFuZCB3aWxsIGJl IHJlbW92ZWQuDQpJdCB3aWxsIGFkZCBiaXQgb2YgcmVwZXRpdGlvbiB0aG91Z2gsIGxpa2UgUlNB X1NJR04gLyBEU0FfU0lHTiwgYnV0IHRoYXQgd291bGQgb2NjdXIgaW4gYW55IGNhc2UsIGlmIHdl IGFyZSBtZXJnaW5nIHR3byB0eXBlcy4NCkRvZXMgdGhhdCBzb3VuZCBva2F5PyANCg0KV2Ugd2Vy ZSBhYm91dCB0byBzdWJtaXQgT3BlbnNzbCBQTUQgd2l0aCBhc3ltIHN1cHBvcnQgdG9kYXkuIEJ1 dCBJIHdvdWxkIGhvbGQgYmFjayB0aWxsIHdlIGFsaWduIG9uIHRoaXMuDQouLi4NCg0KPi4uLi4N Cj4NCj4NCj4+ICsgKi8NCj4+ICtzdHJ1Y3QgcnRlX2NyeXB0b19kaF94Zm9ybSB7DQo+PiArICAg ICBlbnVtIHJ0ZV9jcnlwdG9fYXN5bV9vcF90eXBlIHR5cGU7DQo+PiArICAgICAvKio8IFNldHVw IHhmb3JtIGZvciBrZXkgZ2VuZXJhdGUgb3Igc2hhcmVkIHNlY3JldCBjb21wdXRlICovDQo+PiAr DQo+DQo+dGhlcmUgaXMgYW4gaW5jb25zaXN0ZW5jeSBoZXJlIGluIHRlcm1zIG9mIHdlcmUgdGhl IG9wX3R5cGUgaXMgZGVmaW5lZCwNCj5pbiB0aGlzIGNhc2UgaXQgaXMgaW4gdGhlIHhmb3JtIGJ1 dCBpdCBvdGhlciBjYXNlcyBSU0EsIERTQSBpdCBpcw0KPmRlZmluZWQgaW4gdGhlIG9wZXJhdGlv biBpbmZvcm1hdGlvbiBpdHNlbGYuIEkgZG9uJ3Qga25vdyBvZiBhbnkgcmVhc29uDQo+d2h5IGl0 IGlzIG5lZWRlZCBpbiB0aGUgeGZvcm0gYnV0IEkgdGhpbmsgaXQgbXVzdCBiZSBjb25zaXN0ZW50 IGFjcm9zcw0KPmFsbCBvcGVyYXRpb25zL3hmb3Jtcy4gSWRlYWxseSBmcm9tIG15IHBlcnNwZWN0 aXZlIGl0IHdvdWxkIGJlIGluIHRoZQ0KPnJ0ZV9jcnlwdG9fYXN5bV9vcCBzdHJ1Y3R1cmUsIHNl ZSBiZWxvdywgYXMgdGhpcyB3b3VsZCBhbGxvdw0KPnNlc3Npb24vc2Vzc2lvbi1sZXNzIG9wZXJh dGlvbnMgdG8gYmUgc3VwcG9ydGVkIHNlYW1sZXNzbHkuDQo+DQoNCltTaGFsbHldIFJlYXNvbiB3 YXMgeGZvcm0gY2hhaW5pbmcuIEFzIHBlciBGaW9uYSBmZWVkYmFjaywgd2UgaWRlbnRpZmllZCBy ZXF1aXJlbWVudCB0byBicmVhayBESCBLZXkgcGFpcg0KZ2VuZXJhdGlvbiBpbiB0byB0d28gIDog UFJJVl9LRVlfR0VORVJBVElPTiBhbmQgUFVCX0tFWV9HRU5FUkFUSU9OLCBzbyBJIGhhZCB0byBt b3ZlIHRoaXMgcGFyYW0gYXJvdW5kLg0KQnV0IHRoaXMgd2lsbCBiZSBhZGRyZXNzZWQgb25jZSB3 ZSBjaGFuZ2UgeGZvcm1fdHlwZXMgYXMgcGVyIHN1Z2dlc3Rpb24gYWJvdmUuDQoNCi4uLg0KDQo+ DQo+Li4uDQo+DQo+PiArLyoqDQo+PiArICogQXN5bW1ldHJpYyBDcnlwdG9ncmFwaGljIE9wZXJh dGlvbi4NCj4+ICsgKg0KPj4gKyAqIFN0cnVjdHVyZSBkZXNjcmliaW5nIGFzeW1tZXRyaWMgY3J5 cHRvIG9wZXJhdGlvbiBwYXJhbXMuDQo+PiArICoNCj4+ICsgKi8NCj4+ICtzdHJ1Y3QgcnRlX2Ny eXB0b19hc3ltX29wIHsNCj4+ICsgICAgIHN0cnVjdCBydGVfY3J5cHRvZGV2X2FzeW1fc2Vzc2lv biAqc2Vzc2lvbjsNCj4+ICsgICAgIC8qKjwgSGFuZGxlIGZvciB0aGUgaW5pdGlhbGlzZWQgc2Vz c2lvbiBjb250ZXh0ICovDQo+PiArDQo+PiArICAgICBfX2V4dGVuc2lvbl9fDQo+PiArICAgICB1 bmlvbiB7DQo+PiArICAgICAgICAgICAgIHN0cnVjdCBydGVfY3J5cHRvX3JzYV9vcF9wYXJhbSBy c2E7DQo+PiArICAgICAgICAgICAgIHN0cnVjdCBydGVfY3J5cHRvX21vZF9vcF9wYXJhbSBtb2Rl eDsNCj4+ICsgICAgICAgICAgICAgc3RydWN0IHJ0ZV9jcnlwdG9fbW9kX29wX3BhcmFtIG1vZGlu djsNCj4+ICsgICAgICAgICAgICAgc3RydWN0IHJ0ZV9jcnlwdG9fZGhfb3BfcGFyYW0gZGg7DQo+ PiArICAgICAgICAgICAgIHN0cnVjdCBydGVfY3J5cHRvX2RzYV9vcF9wYXJhbSBkc2E7DQo+PiAr ICAgICB9Ow0KPj4gK30gX19ydGVfY2FjaGVfYWxpZ25lZDsNCj4+ICsNCj5SZWxhdGluZyB0byBt eSBjb21tZW50IG9uIHBvc2l0aW9uIG9mIHRoZSBvcF90eXBlIGFuZCB0aGUgbWlub3IgY2hhbmdl DQo+b2YgaGF2aW5nIGFuIHVuaW9uIG9mIHNlc3Npb24veGZvcm0gaW4gdGhlIHJ0ZV9jcnlwdG9f YXN5bV9vcCBzdHJ1Y3R1cmUNCj53b3VsZCB0aGVuIGVuYWJsZSBzZXNzaW9ubGVzcyBzdXBwb3J0 IHRvIGJlIGFkZGVkIHNlYW1sZXNzIGluIHRoZSBmdXR1cmUNCj53aXRoIG1pbmltYWwgZWZmZWN0 IHRvIHRoZSBjdXJyZW50IHByb3Bvc2FsLg0KDQpbU2hhbGx5XSBBZ2FpbiwgdGhpcyB3aWxsIGFs c28gYmUgcmVzb2x2ZWQgd2l0aCBjaGFuZ2UgdG8geGZvcm1fdHlwZXMNCg0KPg0KPnN0cnVjdCBy dGVfY3J5cHRvX2FzeW1fb3Agew0KPi0gICAgICAgc3RydWN0IHJ0ZV9jcnlwdG9kZXZfYXN5bV9z ZXNzaW9uICpzZXNzaW9uOw0KPi0gICAgICAgLyoqPCBIYW5kbGUgZm9yIHRoZSBpbml0aWFsaXNl ZCBzZXNzaW9uIGNvbnRleHQgKi8NCj4rICAgICAgIGVudW0gcnRlX2NyeXB0b19hc3ltX29wX3R5 cGUgb3BfdHlwZTsNCj4rDQo+KyAgICAgICB1bmlvbiB7DQo+KyAgICAgICAgICAgICAgIHN0cnVj dCBydGVfY3J5cHRvZGV2X2FzeW1fc2Vzc2lvbiAqc2Vzc2lvbjsNCj4rICAgICAgICAgICAgICAg LyoqPCBIYW5kbGUgZm9yIHRoZSBpbml0aWFsaXNlZCBzZXNzaW9uIGNvbnRleHQgKi8NCj4rICAg ICAgICAgICAgICAgc3RydWN0IHJ0ZV9jcnlwdG9fYXN5bV94Zm9ybSAqeGZvcm07DQo+KyAgICAg ICB9Ow0KPg0KW1NoYWxseV0gT2suIFdpbGwgYWRkIHRoaXMgY2hhbmdlLiBCdXQgdGhlbiBJJ2xs IGhhdmUgdG8gY2hlY2sgaWYgY3J5cHRvIFBNRCBoYXMgc3VwcG9ydCB0byByZWZsZWN0IHdoaWNo IHR5cGUgb2YgbW9kZSBpdCBzdXBwb3J0cz8NCg0KVGhhbmtzIGZvciByZXZpZXcuDQpTaGFsbHkN Cg0KPiAgICAgICAgIF9fZXh0ZW5zaW9uX18NCj4NCj4NCj4+ICsjaWZkZWYgX19jcGx1c3BsdXMN Cj4+ICt9DQo+PiArI2VuZGlmDQo+PiArDQo+PiArI2VuZGlmIC8qIF9SVEVfQ1JZUFRPX0FTWU1f SF8gKi8NCj4+DQoNCg==