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 94F45A0577; Sun, 5 Apr 2020 14:54:59 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C2477276C; Sun, 5 Apr 2020 14:54:58 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 6128AFFA for ; Sun, 5 Apr 2020 14:54:57 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 035CndQV032450 for ; Sun, 5 Apr 2020 05:54:56 -0700 Received: from pps.reinject (localhost [127.0.0.1]) by mx0b-0016f401.pphosted.com with ESMTP id 306srm2sm2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Sun, 05 Apr 2020 05:54:56 -0700 Received: from m0045851.ppops.net (m0045851.ppops.net [127.0.0.1]) by pps.reinject (8.16.0.36/8.16.0.36) with SMTP id 035CsuGq004058 for ; Sun, 5 Apr 2020 05:54:56 -0700 Received: from sc-exch02.marvell.com ([199.233.58.182]) by mx0b-0016f401.pphosted.com with ESMTP id 306srm2skv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Sun, 05 Apr 2020 05:54:55 -0700 Received: from SC-EXCH01.marvell.com (10.93.176.81) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Sun, 5 Apr 2020 05:54:53 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.172) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Sun, 5 Apr 2020 05:54:53 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JP8p5prdBmwdjjtzq1P8FGV4pQIcKNUhaE/Nnu4oGyt29sHvTAZg9I3THspbyCWqgdobf2EgjxzbAcgdxYtVegebkUEeP2NjdKqYskGKuc1elugmCzJgOsOHYuQTzzud6TPgfviJvVcDmUpy82bvZ+olG/jAntYbYtRXw3umkylEvmKaMc09NVujp3FIq4UcrHFhAJwOtNjiQFYEniwz9d9qg9Qchk7VIjlB7vofSFzRBWPmJqH0P/ds//67Yl+IOPYY1gl6dUI0FjfgnT6MHjcWesQe1N88EaovcD5ZvhYKsygLuIHKgX44OqufH0t9Exkki0+PHeBUMxWksAHXSw== 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=Av7vIFW1ZKJepWdsxhzNy0se02rs4ih4G87qRwjRqNg=; b=eEYPub7po8wRzZpDEzQp3ydXpYxmvp8xCWl0TMGzZVE/nDKRgfJVLTqQ1VbOKuJb8BuG4FS4DM6+ymGSrHrKcjMOLOfHIYKFT+gOuJ6KNlaRg7/Og9SIkbvA9x4W/+3gUY+gAXf7D8mvSyWm+EnPIPjoScile926k+3sOe4V9IkyoyoGeefOsH4UaPRr7Uk8LT0CYRJFnWwwcxQ4bjJ8r45zFu2Fe52Yl0UzSqDGlg4cPTze1uakXt53cwht8ADQrhZhzstk8+8GVxXIuxPpSIHSp3FV2Ewv9X42rQj0h+aic6LeekapVEX+bSnJN1C8aI5kcqGXvIRCjYyr6B5seA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Av7vIFW1ZKJepWdsxhzNy0se02rs4ih4G87qRwjRqNg=; b=SBIvqVEkXSYN9+hodWMXWHRUKLRe7qUJV9ckFVA71bdrUPAFtFBZ3ZK4fJSDGuqckRwxXYHFzUGa5wOX26mCfOf4GQjLnamiDRQviO1VsJGoHIRToGSYkUgNsPgHJqNYIzxI7+lJLhM+cgWPSAj0WVtSNV2daKVxghXYNdNi4zc= Received: from MN2PR18MB2877.namprd18.prod.outlook.com (2603:10b6:208:3b::26) by MN2PR18MB2398.namprd18.prod.outlook.com (2603:10b6:208:ae::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2878.20; Sun, 5 Apr 2020 12:54:51 +0000 Received: from MN2PR18MB2877.namprd18.prod.outlook.com ([fe80::648f:e7fa:f95e:191b]) by MN2PR18MB2877.namprd18.prod.outlook.com ([fe80::648f:e7fa:f95e:191b%2]) with mapi id 15.20.2878.016; Sun, 5 Apr 2020 12:54:51 +0000 From: Anoob Joseph To: Lukasz Wojciechowski , "dev@dpdk.org" CC: Narayana Prasad Raju Athreya , "Lukas Bartosik [C]" Thread-Topic: [EXT] Re: [dpdk-dev] [PATCH 01/13] librte_security: fix verification of parameters Thread-Index: AQHWCebGveY8vKweqE27n3GY+Pp4YqhqeQDA Date: Sun, 5 Apr 2020 12:54:51 +0000 Message-ID: References: <20200312151654.7218-1-l.wojciechow@partner.samsung.com> <20200312151654.7218-2-l.wojciechow@partner.samsung.com> In-Reply-To: Accept-Language: en-IN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [27.34.244.203] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 5e68a68d-abae-4b06-7dd4-08d7d96087f7 x-ms-traffictypediagnostic: MN2PR18MB2398: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:800; x-forefront-prvs: 03648EFF89 x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR18MB2877.namprd18.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(10009020)(4636009)(39850400004)(376002)(366004)(396003)(136003)(346002)(54906003)(110136005)(66946007)(81156014)(316002)(76116006)(2906002)(53546011)(6506007)(81166006)(478600001)(86362001)(966005)(8676002)(7696005)(26005)(8936002)(33656002)(15650500001)(19627235002)(186003)(66556008)(66476007)(52536014)(9686003)(55016002)(5660300002)(4326008)(66446008)(64756008)(107886003)(71200400001)(21314003); DIR:OUT; SFP:1101; received-spf: None (protection.outlook.com: marvell.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: aeuwt0yK0jnS+XQtxwgrYjVZjWeGDZbi9SbCusNrxkIoNFBVd3adQsybsD9+uXvvAp6SG1QNySZkP84tep9P8EhE4H+ltpbk1ikXZ3mHUc+2ldET4lWDI6l+LTNzW1ssfYODtxk/0fqpNQ/hi41nefldNoYpsHflCE8ahHyfQkI3pDLvPMwMWspK4rp6k2ZrjkPUVqe9kPIzyYSm8B006FGiE5OoTvC/qB4m3lLAK5moO/PNy28lLSmPpbAQ/e/MBHqRNV9ilYaX5tSz/D0rSJtNUzy43C+5tDCqqj6MkjH1F2Ap8YuTZAc3QAl8UYbDzi5Y4VW35cKppvUakX2QtP6JMusJOlt6u/uQMEPS/9fXT0XjjVxEAz5t8++ariq7nTXk+VZAGFyHXzkOwXojnSzQ92Lr8Z8118qXRc8le+huMjSAtBj6vkXZ4AfTJqikP2m3knmMMV7VZQ09fOhz9Z1HilmPJ1lt1xDC62pgZE8peUonEaf95JsfmBdIGfYWs5mdKB5gmPc27jYY6CKDoyTA+bjgHOO6CPUUSC4s4z4iN2tpxJ7zxVr9vJKhEDug x-ms-exchange-antispam-messagedata: Cq+s9m9KaZXDGxuiws+t0i8mcF0Spbzyybj47fmfZSdCXytO3JHu7fiIQNPYNrXodwAwH8pg8BlgPHFZeuGOkyibelSjmXAJANtl2SFjX5JUAVQyu+w71Gwlshdpbzshqq8jxIsMurl0ccycUnn1rg== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 5e68a68d-abae-4b06-7dd4-08d7d96087f7 X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Apr 2020 12:54:51.5477 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: pq9c345fcSMLrgtFtJ1yWvUlwHlyQpTcXsYE7PRPEYNY1Gy1Zhf9ROT0L4mOmg5om87SOyAVONmRbWOCaAreug== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR18MB2398 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138, 18.0.676 definitions=2020-04-05_04:2020-04-03, 2020-04-05 signatures=0 Subject: Re: [dpdk-dev] [EXT] Re: [PATCH 01/13] librte_security: fix verification of parameters 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" SGkgTHVrYXN6LA0KDQpQbGVhc2Ugc2VlIGlubGluZS4NCg0KVGhhbmtzLA0KQW5vb2INCg0KPiAt LS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBMdWthc3ogV29qY2llY2hvd3NraSA8 bC53b2pjaWVjaG93QHBhcnRuZXIuc2Ftc3VuZy5jb20+DQo+IFNlbnQ6IFNhdHVyZGF5LCBBcHJp bCA0LCAyMDIwIDEyOjA2IEFNDQo+IFRvOiBBbm9vYiBKb3NlcGggPGFub29iakBtYXJ2ZWxsLmNv bT47IGRldkBkcGRrLm9yZw0KPiBDYzogTmFyYXlhbmEgUHJhc2FkIFJhanUgQXRocmV5YSA8cGF0 aHJleWFAbWFydmVsbC5jb20+OyBMdWthcyBCYXJ0b3NpayBbQ10NCj4gPGxiYXJ0b3Npa0BtYXJ2 ZWxsLmNvbT4NCj4gU3ViamVjdDogW0VYVF0gUmU6IFtkcGRrLWRldl0gW1BBVENIIDAxLzEzXSBs aWJydGVfc2VjdXJpdHk6IGZpeCB2ZXJpZmljYXRpb24gb2YNCj4gcGFyYW1ldGVycw0KPiANCj4g RXh0ZXJuYWwgRW1haWwNCj4gDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gSGkgQW5vb2IsDQo+IA0KPiBU aGFuayB5b3UgdmVyeSBtdWNoIGZvciB5b3VyIHJldmlldy4NCj4gUGxlYXNlIHNlZSBteSBhbnN3 ZXJzIGlubGluZS4NCj4gDQo+IEJlc3QgcmVnYXJkcywNCj4gTHVrYXN6DQo+IA0KPiANCj4gVyBk bml1IDE3LjAzLjIwMjAgb8KgMTM6NTksIEFub29iIEpvc2VwaCBwaXN6ZToNCj4gPiBIaSBMdWth c3osDQo+ID4NCj4gPiBQbGVhc2Ugc2VlIGlubGluZS4NCj4gPg0KPiA+IFRoYW5rcywNCj4gPiBB bm9vYg0KPiA+DQo+ID4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+IEZyb206IGRl diA8ZGV2LWJvdW5jZXNAZHBkay5vcmc+IE9uIEJlaGFsZiBPZiBMdWthc3ogV29qY2llY2hvd3Nr aQ0KPiA+PiBTZW50OiBUaHVyc2RheSwgTWFyY2ggMTIsIDIwMjAgODo0NyBQTQ0KPiA+PiBUbzog ZGV2QGRwZGsub3JnDQo+ID4+IFN1YmplY3Q6IFtkcGRrLWRldl0gW1BBVENIIDAxLzEzXSBsaWJy dGVfc2VjdXJpdHk6IGZpeCB2ZXJpZmljYXRpb24NCj4gPj4gb2YgcGFyYW1ldGVycw0KPiA+IFtB bm9vYl0gSSBiZWxpZXZlIHRoZSB0aXRsZSBoYXMgdG8gYmU6ICJzZWN1cml0eTogZml4IHZlcmlm aWNhdGlvbiBvZiBwYXJhbWV0ZXJzIg0KPiA+DQo+ID4gQWxzbywgeW91IGNhbiBhZGQgIkZpeGVz IiBhcyB3ZWxsLg0KPiANCj4gSSBjaGFuZ2VkIHRoZSB0aXRsZSBhbmQgd2lsbCBwdXNoIHRoZSBu ZXcgb24gaW4gMm5kIHZlcnNpb24gb2YgdGhlIHBhY2hlcyBhZnRlciBJJ2xsDQo+IGZpeCBhbGwg b3RoZXIgaXNzdWVzLg0KPiANCj4gSG93IGRvIHlvdSBhZGQgYSAiRml4ZXMiIHRhZyB0byBhIHBh dGNoPw0KDQpbQW5vb2JdIA0KDQpDaGVjayB0aGUgYmVsb3cgbGluay4gSXQgZXhwbGFpbnMgdGhl IGZvcm1hdCBvZiB0aGUgcGF0Y2ggd2l0aCBmaXhlcy4NCmh0dHBzOi8vZG9jLmRwZGsub3JnL2d1 aWRlcy9jb250cmlidXRpbmcvcGF0Y2hlcy5odG1sI2NvbW1pdC1tZXNzYWdlcy1ib2R5DQogDQo+ IA0KPiA+DQo+ID4+IFRoaXMgcGF0Y2ggYWRkcyB2ZXJpZmljYXRpb24gb2YgdGhlIHBhcmFtZXRl cnMgdG8gdGhlIHJldF9zZWN1cml0eSBBUEkNCj4gZnVuY3Rpb25zLg0KPiA+PiBBbGwgcmVxdWly ZWQgcGFyYW1ldGVycyBhcmUgY2hlY2tlZCBpZiB0aGV5IGFyZSBub3QgTlVMTC4NCj4gPj4NCj4g Pj4gQ2hlY2tzIHZlcmlmeSBmdWxsIGNoYWluIG9mIHBvaW50ZXJzLCBlLmcuIGluIGNhc2Ugb2Yg dmVyaWZpY2F0aW9uIG9mDQo+ID4+ICJpbnN0YW5jZS0+b3BzLQ0KPiA+Pj4gc2Vzc2lvbl9YWFgi LCB0aGV5IGNoZWNrIGFsc28gImluc3RhbmNlIiBhbmQgImluc3RhbmNlLT5vcHMiLg0KPiA+PiBT aWduZWQtb2ZmLWJ5OiBMdWthc3ogV29qY2llY2hvd3NraQ0KPiA+PiA8bC53b2pjaWVjaG93QHBh cnRuZXIuc2Ftc3VuZy5jb20+DQo+ID4+IENoYW5nZS1JZDogSTE3MjRjOTI2YTFhMGExM2ZkMTZk NzZmMTk4NDJhMGI0MGZiZWExYjINCj4gPj4gLS0tDQo+ID4+ICAgbGliL2xpYnJ0ZV9zZWN1cml0 eS9ydGVfc2VjdXJpdHkuYyB8IDU4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQ0KPiA+ PiAgIDEgZmlsZSBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkNCj4g Pj4NCj4gPj4gZGlmZiAtLWdpdCBhL2xpYi9saWJydGVfc2VjdXJpdHkvcnRlX3NlY3VyaXR5LmMN Cj4gPj4gYi9saWIvbGlicnRlX3NlY3VyaXR5L3J0ZV9zZWN1cml0eS5jDQo+ID4+IGluZGV4IGJj ODFjZTE1ZC4uNDBhMGU5Y2U1IDEwMDY0NA0KPiA+PiAtLS0gYS9saWIvbGlicnRlX3NlY3VyaXR5 L3J0ZV9zZWN1cml0eS5jDQo+ID4+ICsrKyBiL2xpYi9saWJydGVfc2VjdXJpdHkvcnRlX3NlY3Vy aXR5LmMNCj4gPj4gQEAgLTEsNiArMSw3IEBADQo+ID4+ICAgLyogU1BEWC1MaWNlbnNlLUlkZW50 aWZpZXI6IEJTRC0zLUNsYXVzZQ0KPiA+PiAgICAqIENvcHlyaWdodCAyMDE3IE5YUC4NCj4gPj4g ICAgKiBDb3B5cmlnaHQoYykgMjAxNyBJbnRlbCBDb3Jwb3JhdGlvbi4NCj4gPj4gKyAqIENvcHly aWdodCAoYykgMjAyMCBTYW1zdW5nIEVsZWN0cm9uaWNzIENvLiwgTHRkIEFsbCBSaWdodHMNCj4g Pj4gKyBSZXNlcnZlZA0KPiA+PiAgICAqLw0KPiA+Pg0KPiA+PiAgICNpbmNsdWRlIDxydGVfbWFs bG9jLmg+DQo+ID4+IEBAIC05LDYgKzEwLDEyIEBADQo+ID4+ICAgI2luY2x1ZGUgInJ0ZV9zZWN1 cml0eS5oIg0KPiA+PiAgICNpbmNsdWRlICJydGVfc2VjdXJpdHlfZHJpdmVyLmgiDQo+ID4+DQo+ ID4+ICsvKiBNYWNybyB0byBjaGVjayBmb3IgaW52YWxpZCBwb2ludGVycyAqLw0KPiA+PiArI2Rl ZmluZSBSVEVfUFRSX09SX0VSUl9SRVQocHRyLCByZXR2YWwpIGRvIHsJXA0KPiA+PiArCWlmICgo cHRyKSA9PSBOVUxMKQkJCVwNCj4gPj4gKwkJcmV0dXJuIHJldHZhbDsJCQlcDQo+ID4+ICt9IHdo aWxlICgwKQ0KPiA+PiArDQo+ID4+ICAgc3RydWN0IHJ0ZV9zZWN1cml0eV9zZXNzaW9uICoNCj4g Pj4gICBydGVfc2VjdXJpdHlfc2Vzc2lvbl9jcmVhdGUoc3RydWN0IHJ0ZV9zZWN1cml0eV9jdHgg Kmluc3RhbmNlLA0KPiA+PiAgIAkJCSAgICBzdHJ1Y3QgcnRlX3NlY3VyaXR5X3Nlc3Npb25fY29u ZiAqY29uZiwgQEAgLTE2LDEwDQo+ID4+ICsyMywxMSBAQCBydGVfc2VjdXJpdHlfc2Vzc2lvbl9j cmVhdGUoc3RydWN0IHJ0ZV9zZWN1cml0eV9jdHgNCj4gPj4gKyppbnN0YW5jZSwgIHsNCj4gPj4g ICAJc3RydWN0IHJ0ZV9zZWN1cml0eV9zZXNzaW9uICpzZXNzID0gTlVMTDsNCj4gPj4NCj4gPj4g LQlpZiAoY29uZiA9PSBOVUxMKQ0KPiA+PiAtCQlyZXR1cm4gTlVMTDsNCj4gPj4gLQ0KPiA+PiAt CVJURV9GVU5DX1BUUl9PUl9FUlJfUkVUKCppbnN0YW5jZS0+b3BzLT5zZXNzaW9uX2NyZWF0ZSwg TlVMTCk7DQo+ID4+ICsJUlRFX1BUUl9PUl9FUlJfUkVUKGluc3RhbmNlLCBOVUxMKTsNCj4gPj4g KwlSVEVfUFRSX09SX0VSUl9SRVQoaW5zdGFuY2UtPm9wcywgTlVMTCk7DQo+ID4+ICsJUlRFX1BU Ul9PUl9FUlJfUkVUKGluc3RhbmNlLT5vcHMtPnNlc3Npb25fY3JlYXRlLCBOVUxMKTsNCj4gPiBb QW5vb2JdIFRoZSBhYm92ZSB0aHJlZSBsaW5lcyBhcmUgcmVwZWF0ZWQgZm9yIGV2ZXJ5IG9wIE5V TEwgY2hlY2suIENhbiB3ZQ0KPiBpbnRyb2R1Y2Ugb25lIG1hY3JvIGZvciBkb2luZyBhbGwgdGhl IHRocmVlIGNoZWNrcz8gSW4gY2FzZSBpZiBpdCBkb2Vzbid0IGNvbWUNCj4gb2ZmIHdlbGwsIHdl IGNhbiBzdGljayB0byBpbmRpdmlkdWFsIGNoZWNrcy4NCj4gPg0KPiBEb25lLiBXaWxsIGFwcGVh ciBpbiAybmQgdmVyc2lvbiBvZiBwYXRjaGVzLg0KPiA+PiArCVJURV9QVFJfT1JfRVJSX1JFVChj b25mLCBOVUxMKTsNCj4gPj4gKwlSVEVfUFRSX09SX0VSUl9SRVQobXAsIE5VTEwpOw0KPiA+Pg0K PiA+PiAgIAlpZiAocnRlX21lbXBvb2xfZ2V0KG1wLCAodm9pZCAqKikmc2VzcykpDQo+ID4+ICAg CQlyZXR1cm4gTlVMTDsNCj4gPj4gQEAgLTM4LDE0ICs0NiwyMCBAQCBydGVfc2VjdXJpdHlfc2Vz c2lvbl91cGRhdGUoc3RydWN0DQo+ID4+IHJ0ZV9zZWN1cml0eV9jdHggKmluc3RhbmNlLA0KPiA+ PiAgIAkJCSAgICBzdHJ1Y3QgcnRlX3NlY3VyaXR5X3Nlc3Npb24gKnNlc3MsDQo+ID4+ICAgCQkJ ICAgIHN0cnVjdCBydGVfc2VjdXJpdHlfc2Vzc2lvbl9jb25mICpjb25mKSAgew0KPiA+PiAtCVJU RV9GVU5DX1BUUl9PUl9FUlJfUkVUKCppbnN0YW5jZS0+b3BzLT5zZXNzaW9uX3VwZGF0ZSwgLQ0K PiA+PiBFTk9UU1VQKTsNCj4gPj4gKwlSVEVfUFRSX09SX0VSUl9SRVQoaW5zdGFuY2UsIC1FSU5W QUwpOw0KPiA+PiArCVJURV9QVFJfT1JfRVJSX1JFVChpbnN0YW5jZS0+b3BzLCAtRUlOVkFMKTsN Cj4gPj4gKwlSVEVfUFRSX09SX0VSUl9SRVQoaW5zdGFuY2UtPm9wcy0+c2Vzc2lvbl91cGRhdGUs IC1FTk9UU1VQKTsNCj4gPj4gKwlSVEVfUFRSX09SX0VSUl9SRVQoc2VzcywgLUVJTlZBTCk7DQo+ ID4+ICsJUlRFX1BUUl9PUl9FUlJfUkVUKGNvbmYsIC1FSU5WQUwpOw0KPiA+PiAgIAlyZXR1cm4g aW5zdGFuY2UtPm9wcy0+c2Vzc2lvbl91cGRhdGUoaW5zdGFuY2UtPmRldmljZSwgc2VzcywNCj4g Pj4gY29uZik7ICB9DQo+ID4+DQo+ID4+ICAgdW5zaWduZWQgaW50DQo+ID4+ICAgcnRlX3NlY3Vy aXR5X3Nlc3Npb25fZ2V0X3NpemUoc3RydWN0IHJ0ZV9zZWN1cml0eV9jdHggKmluc3RhbmNlKSAg ew0KPiA+PiAtCVJURV9GVU5DX1BUUl9PUl9FUlJfUkVUKCppbnN0YW5jZS0+b3BzLT5zZXNzaW9u X2dldF9zaXplLCAwKTsNCj4gPj4gKwlSVEVfUFRSX09SX0VSUl9SRVQoaW5zdGFuY2UsIDApOw0K PiA+PiArCVJURV9QVFJfT1JfRVJSX1JFVChpbnN0YW5jZS0+b3BzLCAwKTsNCj4gPj4gKwlSVEVf UFRSX09SX0VSUl9SRVQoaW5zdGFuY2UtPm9wcy0+c2Vzc2lvbl9nZXRfc2l6ZSwgMCk7DQo+ID4+ ICAgCXJldHVybiBpbnN0YW5jZS0+b3BzLT5zZXNzaW9uX2dldF9zaXplKGluc3RhbmNlLT5kZXZp Y2UpOw0KPiA+PiAgIH0NCj4gPj4NCj4gPj4gQEAgLTU0LDcgKzY4LDExIEBAIHJ0ZV9zZWN1cml0 eV9zZXNzaW9uX3N0YXRzX2dldChzdHJ1Y3QNCj4gPj4gcnRlX3NlY3VyaXR5X2N0eCAqaW5zdGFu Y2UsDQo+ID4+ICAgCQkJICAgICAgIHN0cnVjdCBydGVfc2VjdXJpdHlfc2Vzc2lvbiAqc2VzcywN Cj4gPj4gICAJCQkgICAgICAgc3RydWN0IHJ0ZV9zZWN1cml0eV9zdGF0cyAqc3RhdHMpICB7DQo+ ID4+IC0JUlRFX0ZVTkNfUFRSX09SX0VSUl9SRVQoKmluc3RhbmNlLT5vcHMtPnNlc3Npb25fc3Rh dHNfZ2V0LCAtDQo+ID4+IEVOT1RTVVApOw0KPiA+PiArCVJURV9QVFJfT1JfRVJSX1JFVChpbnN0 YW5jZSwgLUVJTlZBTCk7DQo+ID4+ICsJUlRFX1BUUl9PUl9FUlJfUkVUKGluc3RhbmNlLT5vcHMs IC1FSU5WQUwpOw0KPiA+PiArCVJURV9QVFJfT1JfRVJSX1JFVChpbnN0YW5jZS0+b3BzLT5zZXNz aW9uX3N0YXRzX2dldCwgLUVOT1RTVVApOw0KPiA+PiArCS8vIFBhcmFtZXRlciBzZXNzIGNhbiBi ZSBOVUxMIGluIGNhc2Ugb2YgZ2V0dGluZyBnbG9iYWwgc3RhdGlzdGljcy4NCj4gPiBbQW5vb2Jd IENoZWNrcGF0Y2ggZXJyb3IuDQo+ID4gRVJST1I6Qzk5X0NPTU1FTlRTOiBkbyBub3QgdXNlIEM5 OSAvLyBjb21tZW50cw0KPiBEb25lLiBXaWxsIGFwcGVhciBpbiAybmQgdmVyc2lvbiBvZiBwYXRj aGVzLg0KPiA+DQo+ID4+ICsJUlRFX1BUUl9PUl9FUlJfUkVUKHN0YXRzLCAtRUlOVkFMKTsNCj4g Pj4gICAJcmV0dXJuIGluc3RhbmNlLT5vcHMtPnNlc3Npb25fc3RhdHNfZ2V0KGluc3RhbmNlLT5k ZXZpY2UsIHNlc3MsDQo+ID4+IHN0YXRzKTsgfQ0KPiA+Pg0KPiA+PiBAQCAtNjQsNyArODIsMTAg QEAgcnRlX3NlY3VyaXR5X3Nlc3Npb25fZGVzdHJveShzdHJ1Y3QNCj4gPj4gcnRlX3NlY3VyaXR5 X2N0eCAqaW5zdGFuY2UsICB7DQo+ID4+ICAgCWludCByZXQ7DQo+ID4+DQo+ID4+IC0JUlRFX0ZV TkNfUFRSX09SX0VSUl9SRVQoKmluc3RhbmNlLT5vcHMtPnNlc3Npb25fZGVzdHJveSwgLQ0KPiA+ PiBFTk9UU1VQKTsNCj4gPj4gKwlSVEVfUFRSX09SX0VSUl9SRVQoaW5zdGFuY2UsIC1FSU5WQUwp Ow0KPiA+PiArCVJURV9QVFJfT1JfRVJSX1JFVChpbnN0YW5jZS0+b3BzLCAtRUlOVkFMKTsNCj4g Pj4gKwlSVEVfUFRSX09SX0VSUl9SRVQoaW5zdGFuY2UtPm9wcy0+c2Vzc2lvbl9kZXN0cm95LCAt RU5PVFNVUCk7DQo+ID4+ICsJUlRFX1BUUl9PUl9FUlJfUkVUKHNlc3MsIC1FSU5WQUwpOw0KPiA+ Pg0KPiA+PiAgIAlpZiAoaW5zdGFuY2UtPnNlc3NfY250KQ0KPiA+PiAgIAkJaW5zdGFuY2UtPnNl c3NfY250LS07DQo+ID4+IEBAIC04MSw3ICsxMDIsMTEgQEAgcnRlX3NlY3VyaXR5X3NldF9wa3Rf bWV0YWRhdGEoc3RydWN0DQo+ID4+IHJ0ZV9zZWN1cml0eV9jdHggKmluc3RhbmNlLA0KPiA+PiAg IAkJCSAgICAgIHN0cnVjdCBydGVfc2VjdXJpdHlfc2Vzc2lvbiAqc2VzcywNCj4gPj4gICAJCQkg ICAgICBzdHJ1Y3QgcnRlX21idWYgKm0sIHZvaWQgKnBhcmFtcykgIHsNCj4gPj4gLQlSVEVfRlVO Q19QVFJfT1JfRVJSX1JFVCgqaW5zdGFuY2UtPm9wcy0+c2V0X3BrdF9tZXRhZGF0YSwgLQ0KPiA+ PiBFTk9UU1VQKTsNCj4gPj4gKwlSVEVfUFRSX09SX0VSUl9SRVQoaW5zdGFuY2UsIC1FSU5WQUwp Ow0KPiA+PiArCVJURV9QVFJfT1JfRVJSX1JFVChpbnN0YW5jZS0+b3BzLCAtRUlOVkFMKTsNCj4g Pj4gKwlSVEVfUFRSX09SX0VSUl9SRVQoaW5zdGFuY2UtPm9wcy0+c2V0X3BrdF9tZXRhZGF0YSwg LUVOT1RTVVApOw0KPiA+IFtBbm9vYl0gc2V0X3BrdF9tZXRhZGF0YSgpIGFuZCBnZXRfdXNlcmRh dGEoKSBhcmUgZGF0YXBhdGggb3BzLiBTbyBjYW4geW91DQo+IGludHJvZHVjZSBhIGNvbmZpZyBv cHRpb24gdG8gZW5hYmxlL2Rpc2FibGUgdGhlIGNoZWNrcy4NCj4gPg0KPiA+IFBsZWFzZSBjaGVj aywNCj4gPiBodHRwczovL3VybGRlZmVuc2UucHJvb2Zwb2ludC5jb20vdjIvdXJsP3U9aHR0cHMt M0FfX3Byb3RlY3QyLmZpcmVleWUuDQo+ID4gY29tX3VybC0zRmstM0RjNTJkOGMzMi0yRDk4ZTE0 MDk3LTJEYzUyYzA3N2QtMkQwY2M0N2EzMGQ0NDYtDQo+IDJEYzFiOWQ4NzMNCj4gPiBlM2U1OWNj NC0yNnUtM0RodHRwLTNBX19jb2RlLmRwZGsub3JnX2RwZGtfbGF0ZXN0X3NvdXJjZV9saWJfbGli cnRlLTVGDQo+ID4gZXRoZGV2X3J0ZS01RmV0aGRldi5oLQ0KPiAyM0w0MzcyJmQ9RHdJRGFRJmM9 bktqV2VjMmI2UjBtT3lQYXo3eHRmUSZyPWpQZkINCj4gPiA4cnd3dmlSU3h5TFdzMm42Qi0NCj4g V1lMbjF2OVN5VE1yVDVFUXFoMlRVJm09YVRvMThGRHZxSFFCZ2hPQWhiaTd4MGY2RXVYNw0KPiA+ DQo+IHdaSFRVdHNSUmxvWjlCdyZzPVRYcHY2dVFaVzFXd0JfQXYzdkNhSGVVYWliUXpBMHlwVVVx blB5NWFRbEUNCj4gJmU9DQo+IENvdWxkIHlvdSBleHBsYWluIGEgYml0IGZ1cnRoZXI/DQo+IA0K PiBEbyB5b3UgcHJvcG9zZSB0byBtYWtlIGNoZWNrcyBpbnNpZGUgI2lmZGVmIFJURV9MSUJSVEVf U0VDVVJJVFlfREVCVUcgb3INCj4gc28/DQoNCltBbm9vYl0gWWVzLiBZb3Ugd2lsbCBuZWVkIHRv IGludHJvZHVjZSBhIG5ldyBjb25maWcgZmxhZyAoUlRFX0xJQlJURV9TRUNVUklUWV9ERUJVRykg YW5kIGJhc2VkIG9uIHRoYXQsIHRoZSBlcnJvciBjaGVja3MgY2FuIGJlIGVuYWJsZWQvZGlzYWJs ZWQuDQogDQo+IEFuZCBkbyB5b3UgaGF2ZSBhbGwgY2hlY2tzIG9yIGp1c3Qgc2VzcyBhbmQgbSBv biBtaW5kPw0KDQpbQW5vb2JdIEkgdGhpbmsgd2Ugc2hvdWxkIGhhdmUgYWxsIGNoZWNrcyB1bmRl ciB0aGUgY29uZmlnIG9wdGlvbi4NCg0KPiANCj4gVGhlIGluc3RhbmNlLT5vcHMtPmZ1bmN0aW9u IGNoZWNrcyB3ZXJlIGFscmVhZHkgdGhlcmUgd2l0aG91dCBhbnkgY29uZmlnDQo+IG9wdGlvbnMg aW4gYWxsIEFQSSBmdW5jdGlvbnMuDQoNCltBbm9vYl0gTXVzdCBoYXZlIHNsaXBwZWQgdGhyb3Vn aC4gVGhhbmtzIGZvciBwb2ludGluZyBpdCBvdXQuDQoNCj4gDQo+ID4NCj4gPj4gKwlSVEVfUFRS X09SX0VSUl9SRVQoc2VzcywgLUVJTlZBTCk7DQo+ID4+ICsJUlRFX1BUUl9PUl9FUlJfUkVUKG0s IC1FSU5WQUwpOw0KPiA+PiAgIAlyZXR1cm4gaW5zdGFuY2UtPm9wcy0+c2V0X3BrdF9tZXRhZGF0 YShpbnN0YW5jZS0+ZGV2aWNlLA0KPiA+PiAgIAkJCQkJICAgICAgIHNlc3MsIG0sIHBhcmFtcyk7 DQo+ID4+ICAgfQ0KPiA+PiBAQCAtOTEsNyArMTE2LDkgQEAgcnRlX3NlY3VyaXR5X2dldF91c2Vy ZGF0YShzdHJ1Y3QgcnRlX3NlY3VyaXR5X2N0eA0KPiA+PiAqaW5zdGFuY2UsIHVpbnQ2NF90IG1k KSAgew0KPiA+PiAgIAl2b2lkICp1c2VyZGF0YSA9IE5VTEw7DQo+ID4+DQo+ID4+IC0JUlRFX0ZV TkNfUFRSX09SX0VSUl9SRVQoKmluc3RhbmNlLT5vcHMtPmdldF91c2VyZGF0YSwgTlVMTCk7DQo+ ID4+ICsJUlRFX1BUUl9PUl9FUlJfUkVUKGluc3RhbmNlLCBOVUxMKTsNCj4gPj4gKwlSVEVfUFRS X09SX0VSUl9SRVQoaW5zdGFuY2UtPm9wcywgTlVMTCk7DQo+ID4+ICsJUlRFX1BUUl9PUl9FUlJf UkVUKGluc3RhbmNlLT5vcHMtPmdldF91c2VyZGF0YSwgTlVMTCk7DQo+ID4+ICAgCWlmIChpbnN0 YW5jZS0+b3BzLT5nZXRfdXNlcmRhdGEoaW5zdGFuY2UtPmRldmljZSwgbWQsICZ1c2VyZGF0YSkp DQo+ID4+ICAgCQlyZXR1cm4gTlVMTDsNCj4gPj4NCj4gPj4gQEAgLTEwMSw3ICsxMjgsOSBAQCBy dGVfc2VjdXJpdHlfZ2V0X3VzZXJkYXRhKHN0cnVjdCBydGVfc2VjdXJpdHlfY3R4DQo+ID4+ICpp bnN0YW5jZSwgdWludDY0X3QgbWQpICBjb25zdCBzdHJ1Y3QgcnRlX3NlY3VyaXR5X2NhcGFiaWxp dHkgKg0KPiA+PiBydGVfc2VjdXJpdHlfY2FwYWJpbGl0aWVzX2dldChzdHJ1Y3QgcnRlX3NlY3Vy aXR5X2N0eCAqaW5zdGFuY2UpICB7DQo+ID4+IC0JUlRFX0ZVTkNfUFRSX09SX0VSUl9SRVQoKmlu c3RhbmNlLT5vcHMtPmNhcGFiaWxpdGllc19nZXQsIE5VTEwpOw0KPiA+PiArCVJURV9QVFJfT1Jf RVJSX1JFVChpbnN0YW5jZSwgTlVMTCk7DQo+ID4+ICsJUlRFX1BUUl9PUl9FUlJfUkVUKGluc3Rh bmNlLT5vcHMsIE5VTEwpOw0KPiA+PiArCVJURV9QVFJfT1JfRVJSX1JFVChpbnN0YW5jZS0+b3Bz LT5jYXBhYmlsaXRpZXNfZ2V0LCBOVUxMKTsNCj4gPj4gICAJcmV0dXJuIGluc3RhbmNlLT5vcHMt PmNhcGFiaWxpdGllc19nZXQoaW5zdGFuY2UtPmRldmljZSk7DQo+ID4+ICAgfQ0KPiA+Pg0KPiA+ PiBAQCAtMTEzLDcgKzE0MiwxMCBAQCBydGVfc2VjdXJpdHlfY2FwYWJpbGl0eV9nZXQoc3RydWN0 DQo+ID4+IHJ0ZV9zZWN1cml0eV9jdHggKmluc3RhbmNlLA0KPiA+PiAgIAljb25zdCBzdHJ1Y3Qg cnRlX3NlY3VyaXR5X2NhcGFiaWxpdHkgKmNhcGFiaWxpdHk7DQo+ID4+ICAgCXVpbnQxNl90IGkg PSAwOw0KPiA+Pg0KPiA+PiAtCVJURV9GVU5DX1BUUl9PUl9FUlJfUkVUKCppbnN0YW5jZS0+b3Bz LT5jYXBhYmlsaXRpZXNfZ2V0LCBOVUxMKTsNCj4gPj4gKwlSVEVfUFRSX09SX0VSUl9SRVQoaW5z dGFuY2UsIE5VTEwpOw0KPiA+PiArCVJURV9QVFJfT1JfRVJSX1JFVChpbnN0YW5jZS0+b3BzLCBO VUxMKTsNCj4gPj4gKwlSVEVfUFRSX09SX0VSUl9SRVQoaW5zdGFuY2UtPm9wcy0+Y2FwYWJpbGl0 aWVzX2dldCwgTlVMTCk7DQo+ID4+ICsJUlRFX1BUUl9PUl9FUlJfUkVUKGlkeCwgTlVMTCk7DQo+ ID4+ICAgCWNhcGFiaWxpdGllcyA9IGluc3RhbmNlLT5vcHMtPmNhcGFiaWxpdGllc19nZXQoaW5z dGFuY2UtPmRldmljZSk7DQo+ID4+DQo+ID4+ICAgCWlmIChjYXBhYmlsaXRpZXMgPT0gTlVMTCkN Cj4gPj4gQEAgLTEyMSw3ICsxNTMsNyBAQCBydGVfc2VjdXJpdHlfY2FwYWJpbGl0eV9nZXQoc3Ry dWN0DQo+ID4+IHJ0ZV9zZWN1cml0eV9jdHggKmluc3RhbmNlLA0KPiA+Pg0KPiA+PiAgIAl3aGls ZSAoKGNhcGFiaWxpdHkgPSAmY2FwYWJpbGl0aWVzW2krK10pLT5hY3Rpb24NCj4gPj4gICAJCQkh PSBSVEVfU0VDVVJJVFlfQUNUSU9OX1RZUEVfTk9ORSkgew0KPiA+PiAtCQlpZiAoY2FwYWJpbGl0 eS0+YWN0aW9uICA9PSBpZHgtPmFjdGlvbiAmJg0KPiA+PiArCQlpZiAoY2FwYWJpbGl0eS0+YWN0 aW9uID09IGlkeC0+YWN0aW9uICYmDQo+ID4+ICAgCQkJCWNhcGFiaWxpdHktPnByb3RvY29sID09 IGlkeC0+cHJvdG9jb2wpIHsNCj4gPj4gICAJCQlpZiAoaWR4LT5wcm90b2NvbCA9PSBSVEVfU0VD VVJJVFlfUFJPVE9DT0xfSVBTRUMpDQo+IHsNCj4gPj4gICAJCQkJaWYgKGNhcGFiaWxpdHktPmlw c2VjLnByb3RvID09DQo+ID4+IC0tDQo+ID4+IDIuMTcuMQ0KPiANCj4gLS0NCj4gDQo+IEx1a2Fz eiBXb2pjaWVjaG93c2tpDQo+IFByaW5jaXBhbCBTb2Z0d2FyZSBFbmdpbmVlcg0KPiANCj4gU2Ft c3VuZyBSJkQgSW5zdGl0dXRlIFBvbGFuZA0KPiBTYW1zdW5nIEVsZWN0cm9uaWNzDQo+IE9mZmlj ZSArNDggMjIgMzc3IDg4IDI1DQo+IGwud29qY2llY2hvd0BwYXJ0bmVyLnNhbXN1bmcuY29tDQoN Cg==