From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by dpdk.space (Postfix) with ESMTP id E290EA05D3
	for <public@inbox.dpdk.org>; Mon, 20 May 2019 13:13:16 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 7B7FB5F17;
	Mon, 20 May 2019 13:13:15 +0200 (CEST)
Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com
 [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 01F135B16
 for <dev@dpdk.org>; Mon, 20 May 2019 13:13:13 +0200 (CEST)
Received: from pps.filterd (m0045851.ppops.net [127.0.0.1])
 by mx0b-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id
 x4KB5alk008161; Mon, 20 May 2019 04:13:13 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com;
 h=from : to : cc :
 subject : date : message-id : references : in-reply-to : content-type :
 content-id : content-transfer-encoding : mime-version; s=pfpt0818;
 bh=9HcEQbE0ABNdRjv49tECUH6tK7IFyX31pnMePFWM0mo=;
 b=wQdD0u3INMwBPRZ+/7XSBkWx21gI9ltR0PAyj2mL5ZRsJH0fhmr6YLH0h6P+k/+E3opP
 FzaVbRV5FWdec+qh2+u0N7unpCjQZsutVpTyynIt4X6jERaS4ELOAYEx/zJ9AInOyLU9
 uvVFcx8FID+UO0OPtYrcJAZ2awUbWZQAQVSGGBO15ksAOpL8qDHglDQlvopMvLjqe2XE
 i80k3bpp3OyYLNG9CxEFPlCPfIAQKGMY0+3BiBK8Q419AcNhPBjZskXl4OTv221HlDyw
 NKCFrkLZVy5ET8aF2oWRv+/xUJ+h9MmSKj8RecvVtCjrHtbP7QAt2CqDQcJs67Wduaw2 lQ== 
Received: from sc-exch01.marvell.com ([199.233.58.181])
 by mx0b-0016f401.pphosted.com with ESMTP id 2sjhjjqtxv-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT);
 Mon, 20 May 2019 04:13:13 -0700
Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH01.marvell.com
 (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 20 May
 2019 04:13:11 -0700
Received: from NAM03-DM3-obe.outbound.protection.outlook.com (104.47.41.55) by
 SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server
 (TLS) id
 15.0.1367.3 via Frontend Transport; Mon, 20 May 2019 04:13:11 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=marvell.onmicrosoft.com; s=selector2-marvell-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9HcEQbE0ABNdRjv49tECUH6tK7IFyX31pnMePFWM0mo=;
 b=HPJNql2uSjgGDFzPUFmnggCFHkBaCelnyhqiAiIBIUHUijnVG4hFKxrhJVHglTEJBWMnBNGVR6O4VWgdY8XcDkLEwWke6QwadSd/9sA8UU+ne6WXSD6WeiAk3YB1ew6jSxP34z31d7q1d/LROsDwqHBA8DnmPc/EMH/dzUEA0Yg=
Received: from BYAPR18MB2469.namprd18.prod.outlook.com (20.179.92.83) by
 BYAPR18MB2535.namprd18.prod.outlook.com (20.179.93.31) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.1900.17; Mon, 20 May 2019 11:13:09 +0000
Received: from BYAPR18MB2469.namprd18.prod.outlook.com
 ([fe80::59d6:ffdf:b32:fa81]) by BYAPR18MB2469.namprd18.prod.outlook.com
 ([fe80::59d6:ffdf:b32:fa81%7]) with mapi id 15.20.1900.020; Mon, 20 May 2019
 11:13:09 +0000
From: Lukas Bartosik <lbartosik@marvell.com>
To: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>
CC: "dev@dpdk.org" <dev@dpdk.org>, Anoob Joseph <anoobj@marvell.com>
Thread-Topic: [PATCH] ipsec: include high order bytes of esn in pkt len
Thread-Index: AQHU/2TUHUWfnIXK1EmxywaUF5PLy6ZypK6AgAFWf4A=
Date: Mon, 20 May 2019 11:13:08 +0000
Message-ID: <542ee1f8-1ed5-de5a-68f5-6326c2a1da4b@marvell.com>
References: <1556636155-26299-1-git-send-email-lbartosik@marvell.com>
 <2601191342CEEE43887BDE71AB9772580161635D0D@irsmsx105.ger.corp.intel.com>
In-Reply-To: <2601191342CEEE43887BDE71AB9772580161635D0D@irsmsx105.ger.corp.intel.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [199.233.58.37]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 51c3068d-b147-4696-70f6-08d6dd1423ed
x-microsoft-antispam: BCL:0; PCL:0;
 RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600141)(711020)(4605104)(2017052603328)(7193020);
 SRVR:BYAPR18MB2535; 
x-ms-traffictypediagnostic: BYAPR18MB2535:
x-microsoft-antispam-prvs: <BYAPR18MB2535EE999EA591C40FAE199BAF060@BYAPR18MB2535.namprd18.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-forefront-prvs: 004395A01C
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(346002)(366004)(396003)(376002)(136003)(39850400004)(199004)(189003)(6436002)(54906003)(102836004)(4326008)(53546011)(6506007)(76176011)(229853002)(316002)(6512007)(31686004)(99286004)(6486002)(25786009)(8936002)(8676002)(186003)(66066001)(81166006)(446003)(2616005)(11346002)(5660300002)(476003)(305945005)(2906002)(7736002)(71190400001)(71200400001)(26005)(81156014)(30864003)(256004)(14444005)(68736007)(73956011)(76116006)(486006)(66556008)(64756008)(66446008)(66476007)(53936002)(6246003)(36756003)(66946007)(14454004)(107886003)(6116002)(3846002)(478600001)(31696002)(86362001)(6916009);
 DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2535;
 H:BYAPR18MB2469.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; A:1; MX:1; 
received-spf: None (protection.outlook.com: marvell.com does not designate
 permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: arPjykzB0DWfzjWtXCoFLUtUfVzv8cuEFfYM9wiS1c0or0b18wpWXQWzR4G4JNzpdQDntWUyevr6YL1vfp5yyalbCo7QGw3vvqu4YmJDT216Yf28AVllhQsMHvN8dtIN1QduVaMILaK6v49uyAtmaqAvdlxeEMSrXWkqfj9luTdntHH6DPEH94X6TohPdNw5nEZdcqHeUdoE5Hyg2e6KzWoJXu0T/uJ9uybrvwkWGzmgxfHRpIVarL+xMI7LiwdlAQaXAHaN/GbRGz9/INkSlz4MFRd+BAtkme+zcqrks4Tv7NFM5zERJV1s3hVaivOgTVims6R8j0rukTuIqIuEASarPlUA5n2U8BnAaWejOaOxroY25RauUaZcEdcOZAnoH6BakO1pSTdErBmIM8YeF/0jK0MRv+yjFGXByyiVBBE=
Content-Type: text/plain; charset="utf-8"
Content-ID: <662693239D17ED4AAC93A447F676B973@namprd18.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: 51c3068d-b147-4696-70f6-08d6dd1423ed
X-MS-Exchange-CrossTenant-originalarrivaltime: 20 May 2019 11:13:08.9572 (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-Transport-CrossTenantHeadersStamped: BYAPR18MB2535
X-OriginatorOrg: marvell.com
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, ,
 definitions=2019-05-20_05:, , signatures=0
Subject: Re: [dpdk-dev] [PATCH] ipsec: include high order bytes of esn in
	pkt len
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

SGkgS29uc3RhbnRpbiwNCg0KVGhhbmsgeW91IGZvciB0aGUgcmV2aWV3Lg0KSSB3aWxsIHNlbmQg
YSByZXZpc2VkIHBhdGNoIHdoaWNoIGFkZHJlc3NlcyB5b3VyIGNvbW1lbnRzLg0KDQpUaGFua3Ms
DQpMdWthc3oNCg0KT24gMTkuMDUuMjAxOSAxNjo0NywgQW5hbnlldiwgS29uc3RhbnRpbiB3cm90
ZToNCj4gDQo+IEhpIEx1a2FzeiwNCj4gVGhhbmtzIGZvciBjbGFyaWZpY2F0aW9ucy4NCj4gTG9v
a3MgZ29vZCBpbiBnZW5lcmFsLg0KPiBGZXcgc21hbGwgY29tbWVudHMgYmVsb3cuDQo+IEtvbnN0
YW50aW4NCj4gIA0KPj4gV2hlbiBlc24gaXMgdXNlZCB0aGVuIGhpZ2gtb3JkZXIgMzIgYml0cyBh
cmUgaW5jbHVkZWQgaW4gSUNWDQo+PiBjYWxjdWxhdGlvbiBob3dldmVyIGFyZSBub3QgdHJhbnNt
aXR0ZWQuIFVwZGF0ZSBwYWNrZXQgbGVuZ3RoDQo+PiB0byBiZSBjb25zaXN0ZW50IHdpdGggYXV0
aCBkYXRhIG9mZnNldCBhbmQgbGVuZ3RoIGJlZm9yZSBjcnlwdG8NCj4+IG9wZXJhdGlvbi4gSGln
aC1vcmRlciAzMiBiaXRzIG9mIGVzbiB3aWxsIGJlIHJlbW92ZWQgZnJvbSBwYWNrZXQNCj4+IGxl
bmd0aCBpbiBjcnlwdG8gcG9zdCBwcm9jZXNzaW5nLg0KPj4NCj4+IENoYW5nZS1JZDogSTViYTUw
ZTM0MTA1OWE4ZDZhNWU0Y2U3YzYyNmRmZTdiOTE3Mzc0MGINCj4+IFNpZ25lZC1vZmYtYnk6IEx1
a2FzeiBCYXJ0b3NpayA8bGJhcnRvc2lrQG1hcnZlbGwuY29tPg0KPj4gLS0tDQo+PiAgbGliL2xp
YnJ0ZV9pcHNlYy9lc3BfaW5iLmMgIHwgNTYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKy0tLS0tLS0tDQo+PiAgbGliL2xpYnJ0ZV9pcHNlYy9lc3Bfb3V0Yi5jIHwgMzEgKysr
KysrKysrKysrKysrKysrKysrKysrKw0KPj4gIGxpYi9saWJydGVfaXBzZWMvc2EuYyAgICAgICB8
ICA0ICsrLS0NCj4+ICBsaWIvbGlicnRlX2lwc2VjL3NhLmggICAgICAgfCAgOCArKysrKysrDQo+
PiAgNCBmaWxlcyBjaGFuZ2VkLCA4NyBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkNCj4+
DQo+PiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9pcHNlYy9lc3BfaW5iLmMgYi9saWIvbGlicnRl
X2lwc2VjL2VzcF9pbmIuYw0KPj4gaW5kZXggNGUwZTEyYS4uZWI4OTllMyAxMDA2NDQNCj4+IC0t
LSBhL2xpYi9saWJydGVfaXBzZWMvZXNwX2luYi5jDQo+PiArKysgYi9saWIvbGlicnRlX2lwc2Vj
L2VzcF9pbmIuYw0KPj4gQEAgLTE2LDcgKzE2LDggQEANCj4+ICAjaW5jbHVkZSAicGFkLmgiDQo+
Pg0KPj4gIHR5cGVkZWYgdWludDE2X3QgKCplc3BfaW5iX3Byb2Nlc3NfdCkoY29uc3Qgc3RydWN0
IHJ0ZV9pcHNlY19zYSAqc2EsDQo+PiAtCXN0cnVjdCBydGVfbWJ1ZiAqbWJbXSwgdWludDMyX3Qg
c3FuW10sIHVpbnQzMl90IGRyW10sIHVpbnQxNl90IG51bSk7DQo+PiArCXN0cnVjdCBydGVfbWJ1
ZiAqbWJbXSwgdWludDMyX3Qgc3FuW10sIHVpbnQzMl90IGRyW10sIHVpbnQxNl90IG51bSwNCj4+
ICsJdWludDhfdCBpc19pbmxpbmUpOw0KPj4NCj4+ICAvKg0KPj4gICAqIGhlbHBlciBmdW5jdGlv
biB0byBmaWxsIGNyeXB0b19zeW0gb3AgZm9yIGNpcGhlcithdXRoIGFsZ29yaXRobXMuDQo+PiBA
QCAtMTgxLDYgKzE4MiwxNSBAQCBpbmJfcGt0X3ByZXBhcmUoY29uc3Qgc3RydWN0IHJ0ZV9pcHNl
Y19zYSAqc2EsIGNvbnN0IHN0cnVjdCByZXBsYXlfc3FuICpyc24sDQo+PiAgCWljdi0+dmEgPSBy
dGVfcGt0bWJ1Zl9tdG9kX29mZnNldChtbCwgdm9pZCAqLCBpY3Zfb2ZzKTsNCj4+ICAJaWN2LT5w
YSA9IHJ0ZV9wa3RtYnVmX2lvdmFfb2Zmc2V0KG1sLCBpY3Zfb2ZzKTsNCj4+DQo+PiArCS8qDQo+
PiArCSAqIGlmIGVzbiBpcyB1c2VkIHRoZW4gaGlnaC1vcmRlciAzMiBiaXRzIGFyZSBhbHNvIHVz
ZWQgaW4gSUNWDQo+PiArCSAqIGNhbGN1bGF0aW9uIGJ1dCBhcmUgbm90IHRyYW5zbWl0dGVkLCB1
cGRhdGUgcGFja2V0IGxlbmd0aA0KPj4gKwkgKiB0byBiZSBjb25zaXN0ZW50IHdpdGggYXV0aCBk
YXRhIGxlbmd0aCBhbmQgb2Zmc2V0LCB0aGlzIHdpbGwNCj4+ICsJICogYmUgc3VidHJhY3RlZCBm
cm9tIHBhY2tldCBsZW5ndGggaW4gcG9zdCBjcnlwdG8gcHJvY2Vzc2luZw0KPiANCj4gSGVyZSBh
bmQgaW4gc2V2ZXJhbCBvdGhlciBjb21tZW50cyBiZWxvdyAtIHlvdSByZXBlYXQgYmFzaWNhbGx5
IHRoZSBzYW1lIHRoaW5nLg0KPiBTZWVtcyBhIGJpdCBleGNlc3NpdmUuIEkgc3VwcG9zZSBqdXN0
IHRvIHB1dCBpbiBpbiBvbmUgcGxhY2UsIG9yIHByb2JhYmx5IGV2ZW4NCj4gaW4gcGF0Y2ggZGVz
Y3JpcHRpb24gd2lsbCBiZSBlbm91Z2guDQo+IA0KPj4gKwkgKi8NCj4+ICsJbWItPnBrdF9sZW4g
Kz0gc2EtPnNxaF9sZW47DQo+PiArCW1sLT5kYXRhX2xlbiArPSBzYS0+c3FoX2xlbjsNCj4+ICsN
Cj4+ICAJaW5iX3BrdF94cHJlcGFyZShzYSwgc3FuLCBpY3YpOw0KPj4gIAlyZXR1cm4gcGxlbjsN
Cj4+ICB9DQo+PiBAQCAtMzczLDE0ICszODMsMjAgQEAgdHVuX3Byb2Nlc3Nfc3RlcDMoc3RydWN0
IHJ0ZV9tYnVmICptYiwgdWludDY0X3QgdHhvZl9tc2ssIHVpbnQ2NF90IHR4b2ZfdmFsKQ0KPj4g
ICAqLw0KPj4gIHN0YXRpYyBpbmxpbmUgdWludDE2X3QNCj4+ICB0dW5fcHJvY2Vzcyhjb25zdCBz
dHJ1Y3QgcnRlX2lwc2VjX3NhICpzYSwgc3RydWN0IHJ0ZV9tYnVmICptYltdLA0KPj4gLQl1aW50
MzJfdCBzcW5bXSwgdWludDMyX3QgZHJbXSwgdWludDE2X3QgbnVtKQ0KPj4gKwl1aW50MzJfdCBz
cW5bXSwgdWludDMyX3QgZHJbXSwgdWludDE2X3QgbnVtLCB1aW50OF90IGlzX2lubGluZSkNCj4+
ICB7DQo+PiAgCXVpbnQzMl90IGFkaiwgaSwgaywgdGw7DQo+PiAgCXVpbnQzMl90IGhsW251bV07
DQo+PiAgCXN0cnVjdCBlc3BfdGFpbCBlc3B0W251bV07DQo+PiAgCXN0cnVjdCBydGVfbWJ1ZiAq
bWxbbnVtXTsNCj4+DQo+PiAtCWNvbnN0IHVpbnQzMl90IHRsZW4gPSBzYS0+aWN2X2xlbiArIHNp
emVvZihlc3B0WzBdKTsNCj4+ICsJLyoNCj4+ICsJICogcmVtb3ZlIGhpZ2gtb3JkZXIgMzIgYml0
cyBvZiBlc24gZnJvbSBwYWNrZXQgbGVuZ3RoDQo+PiArCSAqIHdoaWNoIHdhcyBhZGRlZCBiZWZv
cmUgY3J5cHRvIHByb2Nlc3NpbmcsIHRoaXMgZG9lc24ndA0KPj4gKwkgKiBhcHBseSB0byBpbmxp
bmUgY2FzZQ0KPj4gKwkgKi8NCj4gDQo+IFRoaXMgY29tbWVudCBzZWVtcyBhIGJpdCBtaXNsZWFk
aW5nLCBhcyB3ZSBoYXZlIHJlbW92ZSBub3Qgb25seSBzcWgsDQo+IGJ1dCBhbHNvIGljdiwgZXNw
dCwgcGFkZGluZy4NCj4gDQo+PiArCWNvbnN0IHVpbnQzMl90IHRsZW4gPSBzYS0+aWN2X2xlbiAr
IHNpemVvZihlc3B0WzBdKSArDQo+PiArCQkJCShpc19pbmxpbmUgPyAwIDogc2EtPnNxaF9sZW4p
Ow0KPj4gIAljb25zdCB1aW50MzJfdCBjb2ZzID0gc2EtPmN0cC5jaXBoZXIub2Zmc2V0Ow0KPj4N
Cj4+ICAJLyoNCj4+IEBAIC00MjAsNyArNDM2LDcgQEAgdHVuX3Byb2Nlc3MoY29uc3Qgc3RydWN0
IHJ0ZV9pcHNlY19zYSAqc2EsIHN0cnVjdCBydGVfbWJ1ZiAqbWJbXSwNCj4+ICAgKi8NCj4+ICBz
dGF0aWMgaW5saW5lIHVpbnQxNl90DQo+PiAgdHJzX3Byb2Nlc3MoY29uc3Qgc3RydWN0IHJ0ZV9p
cHNlY19zYSAqc2EsIHN0cnVjdCBydGVfbWJ1ZiAqbWJbXSwNCj4+IC0JdWludDMyX3Qgc3FuW10s
IHVpbnQzMl90IGRyW10sIHVpbnQxNl90IG51bSkNCj4+ICsJdWludDMyX3Qgc3FuW10sIHVpbnQz
Ml90IGRyW10sIHVpbnQxNl90IG51bSwgdWludDhfdCBpc19pbmxpbmUpDQo+PiAgew0KPj4gIAlj
aGFyICpucDsNCj4+ICAJdWludDMyX3QgaSwgaywgbDIsIHRsOw0KPj4gQEAgLTQyOCw3ICs0NDQs
MTMgQEAgdHJzX3Byb2Nlc3MoY29uc3Qgc3RydWN0IHJ0ZV9pcHNlY19zYSAqc2EsIHN0cnVjdCBy
dGVfbWJ1ZiAqbWJbXSwNCj4+ICAJc3RydWN0IGVzcF90YWlsIGVzcHRbbnVtXTsNCj4+ICAJc3Ry
dWN0IHJ0ZV9tYnVmICptbFtudW1dOw0KPj4NCj4+IC0JY29uc3QgdWludDMyX3QgdGxlbiA9IHNh
LT5pY3ZfbGVuICsgc2l6ZW9mKGVzcHRbMF0pOw0KPj4gKwkvKg0KPj4gKwkgKiByZW1vdmUgaGln
aC1vcmRlciAzMiBiaXRzIG9mIGVzbiBmcm9tIHBhY2tldCBsZW5ndGgNCj4+ICsJICogd2hpY2gg
d2FzIGFkZGVkIGJlZm9yZSBjcnlwdG8gcHJvY2Vzc2luZywgdGhpcyBkb2Vzbid0DQo+PiArCSAq
IGFwcGx5IHRvIGlubGluZSBjYXNlDQo+PiArCSAqLw0KPj4gKwljb25zdCB1aW50MzJfdCB0bGVu
ID0gc2EtPmljdl9sZW4gKyBzaXplb2YoZXNwdFswXSkgKw0KPj4gKwkJCQkoaXNfaW5saW5lID8g
MCA6IHNhLT5zcWhfbGVuKTsNCj4+ICAJY29uc3QgdWludDMyX3QgY29mcyA9IHNhLT5jdHAuY2lw
aGVyLm9mZnNldDsNCj4+DQo+PiAgCS8qDQo+PiBAQCAtNDk2LDggKzUxOCw4IEBAIGVzcF9pbmJf
cnNuX3VwZGF0ZShzdHJ1Y3QgcnRlX2lwc2VjX3NhICpzYSwgY29uc3QgdWludDMyX3Qgc3FuW10s
DQo+PiAgICogcHJvY2VzcyBncm91cCBvZiBFU1AgaW5ib3VuZCBwYWNrZXRzLg0KPj4gICAqLw0K
Pj4gIHN0YXRpYyBpbmxpbmUgdWludDE2X3QNCj4+IC1lc3BfaW5iX3BrdF9wcm9jZXNzKGNvbnN0
IHN0cnVjdCBydGVfaXBzZWNfc2Vzc2lvbiAqc3MsDQo+PiAtCXN0cnVjdCBydGVfbWJ1ZiAqbWJb
XSwgdWludDE2X3QgbnVtLCBlc3BfaW5iX3Byb2Nlc3NfdCBwcm9jZXNzKQ0KPj4gK2VzcF9pbmJf
cGt0X3Byb2Nlc3MoY29uc3Qgc3RydWN0IHJ0ZV9pcHNlY19zZXNzaW9uICpzcywgc3RydWN0IHJ0
ZV9tYnVmICptYltdLA0KPj4gKwl1aW50MTZfdCBudW0sIHVpbnQ4X3QgaXNfaW5saW5lLCBlc3Bf
aW5iX3Byb2Nlc3NfdCBwcm9jZXNzKQ0KPj4gIHsNCj4+ICAJdWludDMyX3QgaywgbjsNCj4+ICAJ
c3RydWN0IHJ0ZV9pcHNlY19zYSAqc2E7DQo+PiBAQCAtNTA3LDcgKzUyOSw3IEBAIGVzcF9pbmJf
cGt0X3Byb2Nlc3MoY29uc3Qgc3RydWN0IHJ0ZV9pcHNlY19zZXNzaW9uICpzcywNCj4+ICAJc2Eg
PSBzcy0+c2E7DQo+Pg0KPj4gIAkvKiBwcm9jZXNzIHBhY2tldHMsIGV4dHJhY3Qgc2VxIG51bWJl
cnMgKi8NCj4+IC0JayA9IHByb2Nlc3Moc2EsIG1iLCBzcW4sIGRyLCBudW0pOw0KPj4gKwlrID0g
cHJvY2VzcyhzYSwgbWIsIHNxbiwgZHIsIG51bSwgaXNfaW5saW5lKTsNCj4+DQo+PiAgCS8qIGhh
bmRsZSB1bnByb2Nlc3NlZCBtYnVmcyAqLw0KPj4gIAlpZiAoayAhPSBudW0gJiYgayAhPSAwKQ0K
Pj4gQEAgLTUzMyw3ICs1NTUsMTQgQEAgdWludDE2X3QNCj4+ICBlc3BfaW5iX3R1bl9wa3RfcHJv
Y2Vzcyhjb25zdCBzdHJ1Y3QgcnRlX2lwc2VjX3Nlc3Npb24gKnNzLA0KPj4gIAlzdHJ1Y3QgcnRl
X21idWYgKm1iW10sIHVpbnQxNl90IG51bSkNCj4+ICB7DQo+PiAtCXJldHVybiBlc3BfaW5iX3Br
dF9wcm9jZXNzKHNzLCBtYiwgbnVtLCB0dW5fcHJvY2Vzcyk7DQo+PiArCXJldHVybiBlc3BfaW5i
X3BrdF9wcm9jZXNzKHNzLCBtYiwgbnVtLCAwLCB0dW5fcHJvY2Vzcyk7DQo+IA0KPiBUbyBtYWtl
IHRoaW5ncyBhIGJpdCBjbGVhbmVyLCBjYW4gSSBzdWdnZXN0IHRoZSBmb2xsb3dpbmc6DQo+IDEu
IG1ha2UgZXNwX2luYl9wa3RfcHJvY2VzcygpIHRha2UgYXMgYSBwYXJhbWV0ZXJzOiANCj4gICAg
IGNvbnN0IHN0cnVjdCBydGVfaXBzZWNfc2EgKnNhIChpbnN0ZWFkIG9mIGNvbnN0IHN0cnVjdCBy
dGVfaXBzZWNfc2Vzc2lvbiAqc3MpDQo+ICAgICB1aW50MzJfdCBzcWhfbGVuIGluc3RlYWQgb2Yg
aXNfaW5sbmUNCj4gDQo+IFNvIGhlcmUgaXQgd291bGQgYmVjb21lOg0KPiANCj4gc2EgPSBzcy0+
c2E7DQo+IHJldHVybiBlc3BfaW5iX3BrdF9wcm9jZXNzKHNzLCBtYiwgbnVtLCBzYS0+c3FoX2xl
biwgdHVuX3Byb2Nlc3MpOw0KPiANCj4gRm9yIGlubGluZSBpdCB3b3VsZCBiZToNCj4gDQo+IHNh
ID0gc3MtPnNhOw0KPiByZXR1cm4gZXNwX2luYl9wa3RfcHJvY2VzcyhzcywgbWIsIG51bSwgMCwg
dHVuX3Byb2Nlc3MpOw0KPiANCj4gDQo+PiArfQ0KPj4gKw0KPj4gK3VpbnQxNl90DQo+PiAraW5s
aW5lX2luYl90dW5fcGt0X3Byb2Nlc3MoY29uc3Qgc3RydWN0IHJ0ZV9pcHNlY19zZXNzaW9uICpz
cywNCj4+ICsJc3RydWN0IHJ0ZV9tYnVmICptYltdLCB1aW50MTZfdCBudW0pDQo+PiArew0KPj4g
KwlyZXR1cm4gZXNwX2luYl9wa3RfcHJvY2VzcyhzcywgbWIsIG51bSwgMSwgdHVuX3Byb2Nlc3Mp
Ow0KPj4gIH0NCj4+DQo+PiAgLyoNCj4+IEBAIC01NDMsNSArNTcyLDEyIEBAIHVpbnQxNl90DQo+
PiAgZXNwX2luYl90cnNfcGt0X3Byb2Nlc3MoY29uc3Qgc3RydWN0IHJ0ZV9pcHNlY19zZXNzaW9u
ICpzcywNCj4+ICAJc3RydWN0IHJ0ZV9tYnVmICptYltdLCB1aW50MTZfdCBudW0pDQo+PiAgew0K
Pj4gLQlyZXR1cm4gZXNwX2luYl9wa3RfcHJvY2VzcyhzcywgbWIsIG51bSwgdHJzX3Byb2Nlc3Mp
Ow0KPj4gKwlyZXR1cm4gZXNwX2luYl9wa3RfcHJvY2VzcyhzcywgbWIsIG51bSwgMCwgdHJzX3By
b2Nlc3MpOw0KPj4gK30NCj4+ICsNCj4+ICt1aW50MTZfdA0KPj4gK2lubGluZV9pbmJfdHJzX3Br
dF9wcm9jZXNzKGNvbnN0IHN0cnVjdCBydGVfaXBzZWNfc2Vzc2lvbiAqc3MsDQo+PiArCXN0cnVj
dCBydGVfbWJ1ZiAqbWJbXSwgdWludDE2X3QgbnVtKQ0KPj4gK3sNCj4+ICsJcmV0dXJuIGVzcF9p
bmJfcGt0X3Byb2Nlc3Moc3MsIG1iLCBudW0sIDEsIHRyc19wcm9jZXNzKTsNCj4+ICB9DQo+PiBk
aWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9pcHNlYy9lc3Bfb3V0Yi5jIGIvbGliL2xpYnJ0ZV9pcHNl
Yy9lc3Bfb3V0Yi5jDQo+PiBpbmRleCBjNzk4YmM0Li43MWE1OTVlIDEwMDY0NA0KPj4gLS0tIGEv
bGliL2xpYnJ0ZV9pcHNlYy9lc3Bfb3V0Yi5jDQo+PiArKysgYi9saWIvbGlicnRlX2lwc2VjL2Vz
cF9vdXRiLmMNCj4+IEBAIC0yMjEsNiArMjIxLDcgQEAgZXNwX291dGJfdHVuX3ByZXBhcmUoY29u
c3Qgc3RydWN0IHJ0ZV9pcHNlY19zZXNzaW9uICpzcywgc3RydWN0IHJ0ZV9tYnVmICptYltdLA0K
Pj4gIAl1aW50MzJfdCBpLCBrLCBuOw0KPj4gIAl1aW50NjRfdCBzcW47DQo+PiAgCXJ0ZV9iZTY0
X3Qgc3FjOw0KPj4gKwlzdHJ1Y3QgcnRlX21idWYgKm1sOw0KPj4gIAlzdHJ1Y3QgcnRlX2lwc2Vj
X3NhICpzYTsNCj4+ICAJc3RydWN0IHJ0ZV9jcnlwdG9kZXZfc3ltX3Nlc3Npb24gKmNzOw0KPj4g
IAl1bmlvbiBzeW1fb3BfZGF0YSBpY3Y7DQo+PiBAQCAtMjQ2LDYgKzI0NywxOSBAQCBlc3Bfb3V0
Yl90dW5fcHJlcGFyZShjb25zdCBzdHJ1Y3QgcnRlX2lwc2VjX3Nlc3Npb24gKnNzLCBzdHJ1Y3Qg
cnRlX21idWYgKm1iW10sDQo+Pg0KPj4gIAkJLyogc3VjY2Vzcywgc2V0dXAgY3J5cHRvIG9wICov
DQo+PiAgCQlpZiAocmMgPj0gMCkgew0KPj4gKwkJCS8qDQo+PiArCQkJICogaWYgZXNuIGlzIHVz
ZWQgdGhlbiBoaWdoLW9yZGVyIDMyIGJpdHMgYXJlIGFsc28NCj4+ICsJCQkgKiB1c2VkIGluIElD
ViBjYWxjdWxhdGlvbiBidXQgYXJlIG5vdCB0cmFuc21pdHRlZCwNCj4+ICsJCQkgKiB1cGRhdGUg
cGFja2V0IGxlbmd0aCB0byBiZSBjb25zaXN0ZW50IHdpdGggYXV0aA0KPj4gKwkJCSAqIGRhdGEg
bGVuZ3RoIGFuZCBvZmZzZXQsIHRoaXMgd2lsbCBiZSBzdWJ0cmFjdGVkDQo+PiArCQkJICogZnJv
bSBwYWNrZXQgbGVuZ3RoIGluIHBvc3QgY3J5cHRvIHByb2Nlc3NpbmcNCj4+ICsJCQkgKi8NCj4+
ICsJCQlpZiAoc2EtPnNxaF9sZW4pIHsNCj4+ICsJCQkJbWJbaV0tPnBrdF9sZW4gKz0gc2EtPnNx
aF9sZW47DQo+PiArCQkJCW1sID0gcnRlX3BrdG1idWZfbGFzdHNlZyhtYltpXSk7DQo+PiArCQkJ
CW1sLT5kYXRhX2xlbiArPSBzYS0+c3FoX2xlbjsNCj4+ICsJCQl9DQo+IA0KPiBUaGF0IG1lYW5z
IHdlIGhhdmUgdG8gZ28gdGhyb3VnaCBvdXIgJ25leHQnIGxpc3Qgb25jZSBhZ2Fpbi4NCj4gU2Vl
bXMgc3Vib3B0aW1hbC4NCj4gSSB0aGluayB3b3VsZCBiZSBiZXR0ZXIgdG8gbWFrZSBvdXRiX3R1
bl9wa3RfcHJlcGFyZSgpIHRvIHRha2Ugc3FoX2xlbiBhcyBleHRyYSBwYXJhbWV0ZXIuDQo+IFRo
ZW4gaW5zaWRlIGl0IHdlIGNhbiBqdXN0Og0KPiB0bGVuID0gcGRsZW4gKyBzYS0+aWN2X2xlbiAr
IHNxaF9sZW47IA0KPiAuLi4NCj4gaWYgKHRsZW4gKyBzYS0+YWFkX2xlbiA+IHJ0ZV9wa3RtYnVm
X3RhaWxyb29tKG1sKSkNCj4gICAgICAgICAgICAgICAgIHJldHVybiAtRU5PU1BDOyANCj4gLi4u
DQo+IG1sLT5kYXRhX2xlbiArPSB0bGVuOw0KPiBtYi0+cGt0X2xlbiArPSB0bGVuOw0KPiAuLi4N
Cj4gcGRvZnMgKz0gcGRsZW4gICsgc3FoX2xlbjsNCj4gDQo+IFNhbWUgZm9yIHRyYW5zcG9ydCBt
b2RlLg0KPiANCj4gDQo+PiArDQo+PiAgCQkJb3V0Yl9wa3RfeHByZXBhcmUoc2EsIHNxYywgJmlj
dik7DQo+PiAgCQkJbGtzZF9ub25lX2NvcF9wcmVwYXJlKGNvcFtrXSwgY3MsIG1iW2ldKTsNCj4+
ICAJCQlvdXRiX2NvcF9wcmVwYXJlKGNvcFtrXSwgc2EsIGl2LCAmaWN2LCAwLCByYyk7DQo+PiBA
QCAtMzU2LDYgKzM3MCw3IEBAIGVzcF9vdXRiX3Ryc19wcmVwYXJlKGNvbnN0IHN0cnVjdCBydGVf
aXBzZWNfc2Vzc2lvbiAqc3MsIHN0cnVjdCBydGVfbWJ1ZiAqbWJbXSwNCj4+ICAJdWludDMyX3Qg
aSwgaywgbiwgbDIsIGwzOw0KPj4gIAl1aW50NjRfdCBzcW47DQo+PiAgCXJ0ZV9iZTY0X3Qgc3Fj
Ow0KPj4gKwlzdHJ1Y3QgcnRlX21idWYgKm1sOw0KPj4gIAlzdHJ1Y3QgcnRlX2lwc2VjX3NhICpz
YTsNCj4+ICAJc3RydWN0IHJ0ZV9jcnlwdG9kZXZfc3ltX3Nlc3Npb24gKmNzOw0KPj4gIAl1bmlv
biBzeW1fb3BfZGF0YSBpY3Y7DQo+PiBAQCAtMzg0LDYgKzM5OSwxOSBAQCBlc3Bfb3V0Yl90cnNf
cHJlcGFyZShjb25zdCBzdHJ1Y3QgcnRlX2lwc2VjX3Nlc3Npb24gKnNzLCBzdHJ1Y3QgcnRlX21i
dWYgKm1iW10sDQo+Pg0KPj4gIAkJLyogc3VjY2Vzcywgc2V0dXAgY3J5cHRvIG9wICovDQo+PiAg
CQlpZiAocmMgPj0gMCkgew0KPj4gKwkJCS8qDQo+PiArCQkJICogaWYgZXNuIGlzIHVzZWQgdGhl
biBoaWdoLW9yZGVyIDMyIGJpdHMgYXJlIGFsc28NCj4+ICsJCQkgKiB1c2VkIGluIElDViBjYWxj
dWxhdGlvbiBidXQgYXJlIG5vdCB0cmFuc21pdHRlZCwNCj4+ICsJCQkgKiB1cGRhdGUgcGFja2V0
IGxlbmd0aCB0byBiZSBjb25zaXN0ZW50IHdpdGggYXV0aA0KPj4gKwkJCSAqIGRhdGEgbGVuZ3Ro
IGFuZCBvZmZzZXQsIHRoaXMgd2lsbCBiZSBzdWJ0cmFjdGVkDQo+PiArCQkJICogZnJvbSBwYWNr
ZXQgbGVuZ3RoIGluIHBvc3QgY3J5cHRvIHByb2Nlc3NpbmcNCj4+ICsJCQkgKi8NCj4+ICsJCQlp
ZiAoc2EtPnNxaF9sZW4pIHsNCj4+ICsJCQkJbWJbaV0tPnBrdF9sZW4gKz0gc2EtPnNxaF9sZW47
DQo+PiArCQkJCW1sID0gcnRlX3BrdG1idWZfbGFzdHNlZyhtYltpXSk7DQo+PiArCQkJCW1sLT5k
YXRhX2xlbiArPSBzYS0+c3FoX2xlbjsNCj4+ICsJCQl9DQo+PiArDQo+PiAgCQkJb3V0Yl9wa3Rf
eHByZXBhcmUoc2EsIHNxYywgJmljdik7DQo+PiAgCQkJbGtzZF9ub25lX2NvcF9wcmVwYXJlKGNv
cFtrXSwgY3MsIG1iW2ldKTsNCj4+ICAJCQlvdXRiX2NvcF9wcmVwYXJlKGNvcFtrXSwgc2EsIGl2
LCAmaWN2LCBsMiArIGwzLCByYyk7DQo+PiBAQCAtNDI1LDYgKzQ1Myw5IEBAIGVzcF9vdXRiX3Nx
aF9wcm9jZXNzKGNvbnN0IHN0cnVjdCBydGVfaXBzZWNfc2Vzc2lvbiAqc3MsIHN0cnVjdCBydGVf
bWJ1ZiAqbWJbXSwNCj4+ICAJZm9yIChpID0gMDsgaSAhPSBudW07IGkrKykgew0KPj4gIAkJaWYg
KChtYltpXS0+b2xfZmxhZ3MgJiBQS1RfUlhfU0VDX09GRkxPQURfRkFJTEVEKSA9PSAwKSB7DQo+
PiAgCQkJbWwgPSBydGVfcGt0bWJ1Zl9sYXN0c2VnKG1iW2ldKTsNCj4+ICsJCQkvKiByZW1vdmUg
aGlnaC1vcmRlciAzMiBiaXRzIG9mIGVzbiBmcm9tIHBhY2tldCBsZW4gKi8NCj4+ICsJCQltYltp
XS0+cGt0X2xlbiAtPSBzYS0+c3FoX2xlbjsNCj4+ICsJCQltbC0+ZGF0YV9sZW4gLT0gc2EtPnNx
aF9sZW47DQo+PiAgCQkJaWN2ID0gcnRlX3BrdG1idWZfbXRvZF9vZmZzZXQobWwsIHZvaWQgKiwN
Cj4+ICAJCQkJbWwtPmRhdGFfbGVuIC0gaWN2X2xlbik7DQo+PiAgCQkJcmVtb3ZlX3NxaChpY3Ys
IGljdl9sZW4pOw0KPj4gZGlmZiAtLWdpdCBhL2xpYi9saWJydGVfaXBzZWMvc2EuYyBiL2xpYi9s
aWJydGVfaXBzZWMvc2EuYw0KPj4gaW5kZXggODQ2ZTMxNy4uZmYwMTM1OCAxMDA2NDQNCj4+IC0t
LSBhL2xpYi9saWJydGVfaXBzZWMvc2EuYw0KPj4gKysrIGIvbGliL2xpYnJ0ZV9pcHNlYy9zYS5j
DQo+PiBAQCAtNjEwLDEwICs2MTAsMTAgQEAgaW5saW5lX2NyeXB0b19wa3RfZnVuY19zZWxlY3Qo
Y29uc3Qgc3RydWN0IHJ0ZV9pcHNlY19zYSAqc2EsDQo+PiAgCXN3aXRjaCAoc2EtPnR5cGUgJiBt
c2spIHsNCj4+ICAJY2FzZSAoUlRFX0lQU0VDX1NBVFBfRElSX0lCIHwgUlRFX0lQU0VDX1NBVFBf
TU9ERV9UVU5MVjQpOg0KPj4gIAljYXNlIChSVEVfSVBTRUNfU0FUUF9ESVJfSUIgfCBSVEVfSVBT
RUNfU0FUUF9NT0RFX1RVTkxWNik6DQo+PiAtCQlwZi0+cHJvY2VzcyA9IGVzcF9pbmJfdHVuX3Br
dF9wcm9jZXNzOw0KPj4gKwkJcGYtPnByb2Nlc3MgPSBpbmxpbmVfaW5iX3R1bl9wa3RfcHJvY2Vz
czsNCj4+ICAJCWJyZWFrOw0KPj4gIAljYXNlIChSVEVfSVBTRUNfU0FUUF9ESVJfSUIgfCBSVEVf
SVBTRUNfU0FUUF9NT0RFX1RSQU5TKToNCj4+IC0JCXBmLT5wcm9jZXNzID0gZXNwX2luYl90cnNf
cGt0X3Byb2Nlc3M7DQo+PiArCQlwZi0+cHJvY2VzcyA9IGlubGluZV9pbmJfdHJzX3BrdF9wcm9j
ZXNzOw0KPj4gIAkJYnJlYWs7DQo+PiAgCWNhc2UgKFJURV9JUFNFQ19TQVRQX0RJUl9PQiB8IFJU
RV9JUFNFQ19TQVRQX01PREVfVFVOTFY0KToNCj4+ICAJY2FzZSAoUlRFX0lQU0VDX1NBVFBfRElS
X09CIHwgUlRFX0lQU0VDX1NBVFBfTU9ERV9UVU5MVjYpOg0KPj4gZGlmZiAtLWdpdCBhL2xpYi9s
aWJydGVfaXBzZWMvc2EuaCBiL2xpYi9saWJydGVfaXBzZWMvc2EuaA0KPj4gaW5kZXggZmZiNWZi
NC4uMjBjMGE2NSAxMDA2NDQNCj4+IC0tLSBhL2xpYi9saWJydGVfaXBzZWMvc2EuaA0KPj4gKysr
IGIvbGliL2xpYnJ0ZV9pcHNlYy9zYS5oDQo+PiBAQCAtMTQzLDkgKzE0MywxNyBAQCBlc3BfaW5i
X3R1bl9wa3RfcHJvY2Vzcyhjb25zdCBzdHJ1Y3QgcnRlX2lwc2VjX3Nlc3Npb24gKnNzLA0KPj4g
IAlzdHJ1Y3QgcnRlX21idWYgKm1iW10sIHVpbnQxNl90IG51bSk7DQo+Pg0KPj4gIHVpbnQxNl90
DQo+PiAraW5saW5lX2luYl90dW5fcGt0X3Byb2Nlc3MoY29uc3Qgc3RydWN0IHJ0ZV9pcHNlY19z
ZXNzaW9uICpzcywNCj4+ICsJc3RydWN0IHJ0ZV9tYnVmICptYltdLCB1aW50MTZfdCBudW0pOw0K
Pj4gKw0KPj4gK3VpbnQxNl90DQo+PiAgZXNwX2luYl90cnNfcGt0X3Byb2Nlc3MoY29uc3Qgc3Ry
dWN0IHJ0ZV9pcHNlY19zZXNzaW9uICpzcywNCj4+ICAJc3RydWN0IHJ0ZV9tYnVmICptYltdLCB1
aW50MTZfdCBudW0pOw0KPj4NCj4+ICt1aW50MTZfdA0KPj4gK2lubGluZV9pbmJfdHJzX3BrdF9w
cm9jZXNzKGNvbnN0IHN0cnVjdCBydGVfaXBzZWNfc2Vzc2lvbiAqc3MsDQo+PiArCXN0cnVjdCBy
dGVfbWJ1ZiAqbWJbXSwgdWludDE2X3QgbnVtKTsNCj4+ICsNCj4+ICAvKiBvdXRib3VuZCBwcm9j
ZXNzaW5nICovDQo+Pg0KPj4gIHVpbnQxNl90DQo+PiAtLQ0KPj4gMi43LjQNCj4g