From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20098.outbound.protection.outlook.com [40.107.2.98]) by dpdk.org (Postfix) with ESMTP id 6EB691B39A for ; Sun, 1 Jul 2018 09:16:08 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cgstowernetworks.onmicrosoft.com; s=selector1-cgstowernetworks-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hYkL8LLbqouDI5RkJiobBu5ipnLB587uh4rEgha6S6c=; b=LiyvnXKOu91Zf1nsU5ncqd1sY0SQ24x85tfk/HA48zVp1k6aVCd5PHEIBdPhoQ7uBQtx11nA24GH7oxCDlTJmgmU1B6zFmaJMtmkF/slduFz8qGnC0fKvEu2bgwZqLE7y6LTiHOHRmgLajQcxB/qCheo46Fzv+riv5/85yuu1CU= Received: from VI1PR0901MB1294.eurprd09.prod.outlook.com (10.167.211.144) by VI1PR0901MB0912.eurprd09.prod.outlook.com (10.167.199.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.906.23; Sun, 1 Jul 2018 07:16:05 +0000 Received: from VI1PR0901MB1294.eurprd09.prod.outlook.com ([fe80::444e:aca3:54d7:1d81]) by VI1PR0901MB1294.eurprd09.prod.outlook.com ([fe80::444e:aca3:54d7:1d81%4]) with mapi id 15.20.0906.026; Sun, 1 Jul 2018 07:16:04 +0000 From: Ido Goshen To: Ferruh Yigit , Bruce Richardson , John McNamara , Marko Kovacevic CC: "dev@dpdk.org" Thread-Topic: [PATCH v3] net/pcap: rx_iface_in stream type support Thread-Index: AQHUDg73V5woEUxAE0aRzMkw46THhqR0IcQAgAXSNVA= Date: Sun, 1 Jul 2018 07:16:04 +0000 Message-ID: References: <1530101043-97249-1-git-send-email-ido@cgstowernetworks.com> <0de1f427-26f5-1fbc-23a0-ae56dcca8e6f@intel.com> In-Reply-To: <0de1f427-26f5-1fbc-23a0-ae56dcca8e6f@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=Ido@cgstowernetworks.com; x-originating-ip: [81.218.57.230] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; VI1PR0901MB0912; 7:Xb5UpRyG13yIrUtIoZjWkAOVzUdjtkEZM5NU5qy4aAYMb3sNfAe0oGmGm9LYP3dNPaljUu467+IEx6Tk2Hbqy6Hcz331o1HeMD8jXpKQQJQwvgBPlc77dAaJpvypu+poPH50g1EyUpPG4rePQ72PoZHZR6b8JWsbc7fujBKjLd9HYjuT0/h8/UWeK0vakyeqNdO8P4oRq33W9d9O+uC1vU2ntMKtNrO/ah46zVzZ5eFBRrILhkRSxKrwqKxsBfw/ x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-correlation-id: 0d5f5752-8ee2-465c-9cf5-08d5df22823f x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(7021125)(8989117)(5600053)(711020)(4534165)(7022125)(4603075)(4627221)(201702281549075)(8990107)(7048125)(7024125)(7027125)(7028125)(7023125)(2017052603328)(7153060)(7193020); SRVR:VI1PR0901MB0912; x-ms-traffictypediagnostic: VI1PR0901MB0912: 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:(6040522)(2401047)(8121501046)(5005006)(3231254)(944501410)(52105095)(93006095)(93001095)(3002001)(10201501046)(149027)(150027)(6041310)(2016111802025)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(6043046)(6072148)(201708071742011)(7699016); SRVR:VI1PR0901MB0912; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0901MB0912; x-forefront-prvs: 07200C0526 x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(376002)(396003)(136003)(346002)(39830400003)(366004)(13464003)(199004)(189003)(186003)(66066001)(256004)(55016002)(53936002)(446003)(11346002)(9686003)(486006)(14444005)(8936002)(81156014)(81166006)(6116002)(8676002)(26005)(2906002)(5250100002)(6436002)(86362001)(68736007)(99286004)(3846002)(229853002)(4326008)(105586002)(478600001)(33656002)(97736004)(14454004)(74316002)(7736002)(316002)(305945005)(25786009)(76176011)(7696005)(102836004)(53546011)(6506007)(80792005)(2900100001)(476003)(6246003)(106356001)(72206003)(110136005)(5660300001); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR0901MB0912; H:VI1PR0901MB1294.eurprd09.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: cgstowernetworks.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: qtuQu5g/CoZmCsg5Ix9KHcrkmNd1Xk5lGPYnCKVj/5L9t1cucr2ilVzMoK95OMqFyjqQF0+ZkLKW5EB9uGCEP06GVPKcwPss1cAmbRwgGWJh56PutLWfK3T78YXcUrFcJp9nb8eORfvJk7e71Vq7xiQfBH++rQibgBskmKU0dr1emF08+eXlc/0n8YoQE/tYQSrLzVGXNRF/x8fHE/ydtrYxHEPUOI9TWfdcbFQoqEKxzbSd7uIeRD/W+RZthdNU7Es9coRxwGvgcADiquwrXv1STQfEIu0bZzu6iEcWhWzomZHJnpyShZXGW99yu+BOHQAGBUshlucj4SzihUqKcaqScKnQCJGNkLPoARwDIRE= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: cgstowernetworks.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0d5f5752-8ee2-465c-9cf5-08d5df22823f X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Jul 2018 07:16:04.8551 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fc9e9498-07e8-4b82-b4cf-365bba23cbbf X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0901MB0912 Subject: Re: [dpdk-dev] [PATCH v3] net/pcap: rx_iface_in stream type support 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: Sun, 01 Jul 2018 07:16:08 -0000 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogRmVycnVoIFlpZ2l0IDxm ZXJydWgueWlnaXRAaW50ZWwuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIEp1bmUgMjcsIDIwMTgg NDo1OSBQTQ0KPiBUbzogSWRvIEdvc2hlbiA8SWRvQGNnc3Rvd2VybmV0d29ya3MuY29tPjsgQnJ1 Y2UgUmljaGFyZHNvbg0KPiA8YnJ1Y2UucmljaGFyZHNvbkBpbnRlbC5jb20+OyBKb2huIE1jTmFt YXJhDQo+IDxqb2huLm1jbmFtYXJhQGludGVsLmNvbT47IE1hcmtvIEtvdmFjZXZpYw0KPiA8bWFy a28ua292YWNldmljQGludGVsLmNvbT4NCj4gQ2M6IGRldkBkcGRrLm9yZw0KPiBTdWJqZWN0OiBS ZTogW1BBVENIIHYzXSBuZXQvcGNhcDogcnhfaWZhY2VfaW4gc3RyZWFtIHR5cGUgc3VwcG9ydA0K PiANCj4gT24gNi8yNy8yMDE4IDE6MDQgUE0sIGlkbyBnb3NoZW4gd3JvdGU6DQo+ID4gRnJvbTog aWRvIGcgPGlkb0BjZ3N0b3dlcm5ldHdvcmtzLmNvbT4NCj4gPg0KPiA+IFN1cHBvcnQgcnggb2Yg aW4gZGlyZWN0aW9uIHBhY2tldHMgb25seSBVc2VmdWwgZm9yIGFwcHMgdGhhdCBhbHNvIHR4DQo+ ID4gdG8gZXRoX3BjYXAgcG9ydHMgaW4gb3JkZXIgdG8gbm90IHNlZSB0aGVtIGVjaG9lZCBiYWNr IGluIGFzIHJ4IHdoZW4NCj4gPiBvdXQgZGlyZWN0aW9uIGlzIGFsc28gY2FwdHVyZWQNCj4gDQo+ IENhbiB5b3UgcGxlYXNlIGFkZCB5b3VyIGNvbW1hbmQsIHdoaWNoIHdhcyBpbiBwcmV2aW91cyBt YWlscywgb24gaG93IHRvIHJlLQ0KPiBwcm9kdWNlIHRoZSBpc3N1ZSBvZiBjYXB0dXJpbmcgdHJh bnNmZXJyZWQgcGFja2V0cyBpbiBSeCBwYXRoOyBmb3IgZnV0dXJlLg0KDQpbaWRvZ10gSSB0aGlu ayBvbmUgY2FuIGp1c3QgdXNlIHRoZSBuZXcgZG9jIGV4YW1wbGUgYmVsb3cgKHRoZSBvbmUgdy9v IHRoZSBfaW4gb3B0aW9uKSBidXQgSSBjYW4gYWRkIGl0IGluIHRoZSBjb21taXQgbG9nIHRvby4u Lg0KPiANCj4gQW5kIG92ZXJhbGwgbG9va3MgZ29vZCwgdGhlcmUgYXJlIGEgZmV3IHN5bnRheCBj b21tZW50cyBiZWxvdy4NCj4gDQo+ID4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBpZG8gZyA8aWRvQGNn c3Rvd2VybmV0d29ya3MuY29tPg0KPiA+IC0tLQ0KPiA+IHYzOg0KPiA+ICogbWVyZ2UgdG8gdXBk YXRlZCBkcGRrLW5leHQtbmV0IGNvZGUNCj4gPiAqIHBjYXBfcmluZyBkb2MgdXBkYXRlDQo+ID4N Cj4gPiB2MjoNCj4gPiAqIGNsZWFuIGNoZWNrcGF0Y2ggd2FybmluZw0KPiA+DQo+ID4gIGRvYy9n dWlkZXMvbmljcy9wY2FwX3JpbmcucnN0ICAgfCAyNSArKysrKysrKysrKysrKysrKysrKysrLQ0K PiA+ICBkcml2ZXJzL25ldC9wY2FwL3J0ZV9ldGhfcGNhcC5jIHwgNDUNCj4gPiArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLQ0KPiA+ICAyIGZpbGVzIGNoYW5nZWQsIDY2 IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvZG9j L2d1aWRlcy9uaWNzL3BjYXBfcmluZy5yc3QNCj4gPiBiL2RvYy9ndWlkZXMvbmljcy9wY2FwX3Jp bmcucnN0IGluZGV4IDdmZDA2M2MuLjYyODJiZTYgMTAwNjQ0DQo+ID4gLS0tIGEvZG9jL2d1aWRl cy9uaWNzL3BjYXBfcmluZy5yc3QNCj4gPiArKysgYi9kb2MvZ3VpZGVzL25pY3MvcGNhcF9yaW5n LnJzdA0KPiA+IEBAIC03MSwxMSArNzEsMTkgQEAgVGhlIGRpZmZlcmVudCBzdHJlYW0gdHlwZXMg YXJlOg0KPiA+ICAgICAgICAgIHR4X3BjYXA9L3BhdGgvdG8vZmlsZS5wY2FwDQo+ID4NCj4gPiAg KiAgIHJ4X2lmYWNlOiBEZWZpbmVzIGEgcmVjZXB0aW9uIHN0cmVhbSBiYXNlZCBvbiBhIG5ldHdv cmsgaW50ZXJmYWNlIG5hbWUuDQo+ID4gLSAgICBUaGUgZHJpdmVyIHJlYWRzIHBhY2tldHMgY29t aW5nIGZyb20gdGhlIGdpdmVuIGludGVyZmFjZSB1c2luZyB0aGUgTGludXgNCj4ga2VybmVsIGRy aXZlciBmb3IgdGhhdCBpbnRlcmZhY2UuDQo+ID4gKyAgICBUaGUgZHJpdmVyIHJlYWRzIHBhY2tl dHMgZnJvbSB0aGUgZ2l2ZW4gaW50ZXJmYWNlIHVzaW5nIHRoZSBMaW51eCBrZXJuZWwNCj4gZHJp dmVyIGZvciB0aGF0IGludGVyZmFjZS4NCj4gPiArICAgIFRoZSBkcml2ZXIgY2FwdHVyZXMgYm90 aCB0aGUgaW5jb21pbmcgYW5kIG91dGdvaW5nIHBhY2tldHMgb24gdGhhdA0KPiBpbnRlcmZhY2Uu DQo+IA0KPiBUaGlzIGlzIG9ubHkgdHJ1ZSBpZiB0eF9pZmFjZSBwYXJhbWV0ZXIgZ2l2ZW4gZm9y IHRoYXQgaW50ZXJmYWNlLCByaWdodD8gSSBjYW4gYmUNCj4gZ29vZCB0byBjbGFyaWZ5IHRvIG5v dCBjb25mdXNlIHBlb3BsZS4gSSBhbSBmb3Iga2VlcGluZyBmaXJzdCBzZW50ZW5jZXMsIGFuZCBh ZGQNCj4gYSBub3RlIGFib3V0IHRoaXMgc3BlY2lhbCBjYXNlLCBzb21ldGhpbmcgbGlrZSAoZmVl bCBmcmVlIHRvIHVwZGF0ZSk6DQo+IA0KDQpbaWRvZ10gTm8sIFRoaXMgaXMgdHJ1ZSBpbmRpZmZl cmVudCB0byB3aGF0IHRoZSBvdGhlciBwYXJhbXMgYXJlLg0KaS5lLiANCkluIGNhc2UgaWZhY2Vf cnggaXMgZ2l2ZW4gdGhlIGRwZGsgYXBwIHdpbGwgc2VlIG5vdCBvbmx5IHBhY2tldHMgY29taW5n IGludG8gdGhhdCBpZmFjZSAoZS5nLiBlY2hvIHJlcXVlc3QpIGJ1dCBhbHNvIHdoYXQgbGludXgg YXBwcyBhcmUgc2VuZGluZyBvdXQgb2YgdGhhdCBpZmFjZSAoZS5nLiBlY2hvIHJlcGx5KQ0KSW4g Y2FzZSBpZmFjZV9yeF9pbiBpcyBnaXZlbiBpdCB3aWxsIHNlZSBvbmx5IGluY29taW5nIHRyYWZm aWMgKG9ubHkgdGhlIGVjaG8gcmVxdWVzdHMpDQpHaXZpbmcgdHhfaWZhY2Ugd2l0aCB0aGUgc2Ft ZSBpZmFjZSBqdXN0IGV4cG9zZXMgdGhhdCBiZWhhdmlvciBhbmQgbWFrZXMgaXQgd29yc3QgY2F1 c2UgaXQgd2lsbCBhbHNvIGNhcHR1cmUgYmFjayB3aGF0IHRoZSBkcGRrIGFwcCBpcyBzZW5kaW5n IHRvIHRoYXQgaWZhY2UgYW5kIG5vdCBvbmx5IHdoYXQgTGludXggc2VuZHMuDQpUaGVyZWZvcmUg SSB0aGluayB0aGUgZG9jdW1lbnRhdGlvbiBpcyBjb3JyZWN0Lg0KDQo+ICINCj4gVGhlIGRyaXZl ciByZWFkcyBwYWNrZXRzIGNvbWluZyBmcm9tIHRoZSBnaXZlbiBpbnRlcmZhY2UgdXNpbmcgdGhl IExpbnV4DQo+IGtlcm5lbCBkcml2ZXIgZm9yIHRoYXQgaW50ZXJmYWNlLg0KPiBXaGVuIHR4X2lm YWNlIGFyZ3VtZW50IGdpdmVuIGZvciBzYW1lIGludGVyZmFjZSwgVHggcGFja2V0cyBhbHNvIGNh cHR1cmVkLg0KPiAiDQo+IA0KPiA+ICAgICAgVGhlIHZhbHVlIGlzIGFuIGludGVyZmFjZSBuYW1l Lg0KPiA+DQo+ID4gICAgICAgICAgcnhfaWZhY2U9ZXRoMA0KPiA+DQo+ID4gKyogICByeF9pZmFj ZV9pbjogRGVmaW5lcyBhIHJlY2VwdGlvbiBzdHJlYW0gYmFzZWQgb24gYSBuZXR3b3JrIGludGVy ZmFjZQ0KPiBuYW1lLg0KPiA+ICsgICAgVGhlIGRyaXZlciByZWFkcyBwYWNrZXRzIGZyb20gdGhl IGdpdmVuIGludGVyZmFjZSB1c2luZyB0aGUgTGludXgga2VybmVsDQo+IGRyaXZlciBmb3IgdGhh dCBpbnRlcmZhY2UuDQo+ID4gKyAgICBUaGUgZHJpdmVyIGNhcHR1cmVzIG9ubHkgdGhlIGluY29t aW5nIHBhY2tldHMgb24gdGhhdCBpbnRlcmZhY2UuDQo+IA0KPiBBZ2FpbiBJIGFtIGZvciBrZWVw aW5nICIuLi4gcmVhZHMgcGFja2V0cyBjb21pbmcgZnJvbSB0aGUgZ2l2ZW4gaW50ZXJmYWNlIC4u LiINCj4gYW5kIGNsYXJpZnkgdGhlIGRpZmZlcmVuY2UgaW4gbmV4dCBzZW50ZW5jZXMgc3BlY2lm aWMgdG8gdHhfaWZhY2UgdXNhZ2UuDQo+IA0KPiA+ICsgICAgVGhlIHZhbHVlIGlzIGFuIGludGVy ZmFjZSBuYW1lLg0KPiA+ICsNCj4gPiArICAgICAgICByeF9pZmFjZV9pbj1ldGgwDQo+ID4gKw0K PiA+ICAqICAgdHhfaWZhY2U6IERlZmluZXMgYSB0cmFuc21pc3Npb24gc3RyZWFtIGJhc2VkIG9u IGEgbmV0d29yayBpbnRlcmZhY2UNCj4gbmFtZS4NCj4gPiAgICAgIFRoZSBkcml2ZXIgc2VuZHMg cGFja2V0cyB0byB0aGUgZ2l2ZW4gaW50ZXJmYWNlIHVzaW5nIHRoZSBMaW51eCBrZXJuZWwNCj4g ZHJpdmVyIGZvciB0aGF0IGludGVyZmFjZS4NCj4gPiAgICAgIFRoZSB2YWx1ZSBpcyBhbiBpbnRl cmZhY2UgbmFtZS4NCj4gPiBAQCAtMTIyLDYgKzEzMCwyMSBAQCBGb3J3YXJkIHBhY2tldHMgdGhy b3VnaCB0d28gbmV0d29yayBpbnRlcmZhY2VzOg0KPiA+ICAgICAgJFJURV9UQVJHRVQvYXBwL3Rl c3RwbWQgLWwgMC0zIC1uIDQgXA0KPiA+ICAgICAgICAgIC0tdmRldiAnbmV0X3BjYXAwLGlmYWNl PWV0aDAnIC0tdmRldj0nbmV0X3BjYXAxO2lmYWNlPWV0aDEnDQo+ID4NCj4gPiArRW5hYmxlIDIg dHggcXVldWVzIG9uIGEgbmV0d29yayBpbnRlcmZhY2U6PiArIC4uIGNvZGUtYmxvY2s6OiBjb25z b2xlDQo+ID4gKw0KPiA+ICsgICAgJFJURV9UQVJHRVQvYXBwL3Rlc3RwbWQgLWwgMC0zIC1uIDQg XA0KPiA+ICsgICAgICAgIC0tdmRldiAnbmV0X3BjYXAwLHJ4X2lmYWNlPWV0aDEsdHhfaWZhY2U9 ZXRoMSx0eF9pZmFjZT1ldGgxJyBcDQo+ID4gKyAgICAgICAgLS0gLS10eHEgMg0KPiA+ICsNCj4g PiArUmVhZCBvbmx5IGluY29taW5nIHBhY2tldHMgZnJvbSBhIG5ldHdvcmsgaW50ZXJmYWNlOg0K PiANCj4gVGhpcyB0aXRsZSBpcyBjb25mdXNpbmcsIHRoZSBzYW1wbGUgaXMgbm90IGZvciAicmVh ZCBvbmx5IGluY29taW5nIHBhY2tldHMiIGl0IFR4DQo+IGFsc28gSi4gSSB1bmRlcnN0YW5kIHdo YXQgeW91IG1lYW4sIGJ1dCBJIGJlbGlldmUgaXQgd291bGQgYmUgYmV0dGVyIHRvIGNsYXJpZnkN Cj4gdGhpcy4NCg0KW2lkb2ddIFdvdWxkIHRoaXMgbWFrZSBpdCBjbGVhcmVyPw0KIlJlYWQgb25s eSBpbmNvbWluZyBwYWNrZXRzIGZyb20gYSBuZXR3b3JrIGludGVyZmFjZSBhbmQgd3JpdGUgdGhl bSBiYWNrIHRvIHRoYXQgbmV0d29yayBpbnRlcmZhY2U6Ig0KDQo+IA0KPiA+ICsNCj4gPiArLi4g Y29kZS1ibG9jazo6IGNvbnNvbGUNCj4gPiArDQo+ID4gKyAgICAkUlRFX1RBUkdFVC9hcHAvdGVz dHBtZCAtbCAwLTMgLW4gNCBcDQo+ID4gKyAgICAgICAgLS12ZGV2ICduZXRfcGNhcDAscnhfaWZh Y2VfaW49ZXRoMSx0eF9pZmFjZT1ldGgxJw0KPiA+ICsNCj4gPiAgVXNpbmcgbGlicGNhcC1iYXNl ZCBQTUQgd2l0aCB0aGUgdGVzdHBtZCBBcHBsaWNhdGlvbg0KPiA+IF5eXl5eXl5eXl5eXl5eXl5e Xl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4NCj4gPg0KPiA+IGRpZmYgLS1naXQg YS9kcml2ZXJzL25ldC9wY2FwL3J0ZV9ldGhfcGNhcC5jDQo+ID4gYi9kcml2ZXJzL25ldC9wY2Fw L3J0ZV9ldGhfcGNhcC5jIGluZGV4IGIyMTkzMGIuLjljMzFjZWYgMTAwNjQ0DQo+ID4gLS0tIGEv ZHJpdmVycy9uZXQvcGNhcC9ydGVfZXRoX3BjYXAuYw0KPiA+ICsrKyBiL2RyaXZlcnMvbmV0L3Bj YXAvcnRlX2V0aF9wY2FwLmMNCj4gPiBAQCAtMjYsNiArMjYsNyBAQA0KPiA+ICAjZGVmaW5lIEVU SF9QQ0FQX1JYX1BDQVBfQVJHICAicnhfcGNhcCINCj4gPiAgI2RlZmluZSBFVEhfUENBUF9UWF9Q Q0FQX0FSRyAgInR4X3BjYXAiDQo+ID4gICNkZWZpbmUgRVRIX1BDQVBfUlhfSUZBQ0VfQVJHICJy eF9pZmFjZSINCj4gPiArI2RlZmluZSBFVEhfUENBUF9SWF9JRkFDRV9JTl9BUkcgInJ4X2lmYWNl X2luIg0KPiA+ICAjZGVmaW5lIEVUSF9QQ0FQX1RYX0lGQUNFX0FSRyAidHhfaWZhY2UiDQo+ID4g ICNkZWZpbmUgRVRIX1BDQVBfSUZBQ0VfQVJHICAgICJpZmFjZSINCj4gPg0KPiA+IEBAIC04Myw2 ICs4NCw3IEBAIHN0cnVjdCBwbWRfZGV2YXJncyB7DQo+ID4gIAlFVEhfUENBUF9SWF9QQ0FQX0FS RywNCj4gPiAgCUVUSF9QQ0FQX1RYX1BDQVBfQVJHLA0KPiA+ICAJRVRIX1BDQVBfUlhfSUZBQ0Vf QVJHLA0KPiA+ICsJRVRIX1BDQVBfUlhfSUZBQ0VfSU5fQVJHLA0KPiA+ICAJRVRIX1BDQVBfVFhf SUZBQ0VfQVJHLA0KPiA+ICAJRVRIX1BDQVBfSUZBQ0VfQVJHLA0KPiA+ICAJTlVMTA0KPiA+IEBA IC03MzksNiArNzQxLDI2IEBAIHN0cnVjdCBwbWRfZGV2YXJncyB7ICB9DQo+ID4NCj4gPiAgc3Rh dGljIGlubGluZSBpbnQNCj4gPiArc2V0X2lmYWNlX2RpcmVjdGlvbihjb25zdCBjaGFyICppZmFj ZSwNCj4gPiArCQlwY2FwX3QgKnBjYXAsDQo+ID4gKwkJcGNhcF9kaXJlY3Rpb25fdCBkaXJlY3Rp b24pDQo+IA0KPiBDYW4geW91IHBsZWFzZSBmb2xsb3cgc2FtZSBzeW50YXggaW4gdGhlIGNvZGUs IGxpa2U6DQo+IHNldF9pZmFjZV9kaXJlY3Rpb24oY29uc3QgY2hhciAqaWZhY2UsIHBjYXBfdCAq cGNhcCwNCj4gCXBjYXBfZGlyZWN0aW9uX3QgZGlyZWN0aW9uKQ0KW2lkb2ddIHdpbGwgZml4IHRo aXMgYXMgd2VsbCBhcyBhbGwgdGhlIGluZGVudGF0aW9ucyBhbmQgd2hpdGUgc3BhY2VzIGNvbW1l bnRzIGJlbG93DQoNCj4gDQo+ID4gK3sNCj4gPiArCWNvbnN0IGNoYXIgKmRpcmVjdGlvbl9zdHIg PSAoZGlyZWN0aW9uID09IFBDQVBfRF9JTikgPyAiSU4iIDogIk9VVCI7DQo+ID4gKwlpZiAocGNh cF9zZXRkaXJlY3Rpb24ocGNhcCwgZGlyZWN0aW9uKSA8IDApIHsNCj4gPiArCQlQTURfTE9HKEVS UiwNCj4gPiArCQkJCSJTZXR0aW5nICVzIHBjYXAgZGlyZWN0aW9uICVzIGZhaWxlZCAtICVzXG4i LA0KPiA+ICsJCQkJaWZhY2UsDQo+ID4gKwkJCQlkaXJlY3Rpb25fc3RyLA0KPiA+ICsJCQkJcGNh cF9nZXRlcnIocGNhcCkpOw0KPiANCj4gQ2FuIHlvdSBwbGVhc2UgZml4IHRoZSBpbmRlbnRhdGlv bnMgYWJvdmUsIGxpbmVzIGNhbiBiZSBqb2luZWQ6DQo+IA0KPiBQTURfTE9HKEVSUiwgIlNldHRp bmcgJXMgcGNhcCBkaXJlY3Rpb24gJXMgZmFpbGVkIC0gJXNcbiIsDQo+IAlpZmFjZSwgZGlyZWN0 aW9uX3N0ciwgcGNhcF9nZXRlcnIocGNhcCkpOw0KPiANCj4gPiArCQlyZXR1cm4gLTE7DQo+ID4g Kwl9DQo+ID4gKwlQTURfTE9HKElORk8sICJTZXR0aW5nICVzIHBjYXAgZGlyZWN0aW9uICVzXG4i LA0KPiA+ICsJCQlpZmFjZSwNCj4gPiArCQkJZGlyZWN0aW9uX3N0cik7DQo+IA0KPiBTYW1lIGhl cmUsIG9uZSB0YWIgaXMgZW5vdWdoIGZvciBuZXh0IGxpbmUgYW5kIGNhbiBqb2luIGxpbmVzDQo+ IA0KPiA+ICsJcmV0dXJuIDA7DQo+ID4gK30NCj4gPiArDQo+ID4gK3N0YXRpYyBpbmxpbmUgaW50 DQo+ID4gIG9wZW5faWZhY2UoY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICp2YWx1ZSwgdm9p ZCAqZXh0cmFfYXJncykgIHsNCj4gPiAgCWNvbnN0IGNoYXIgKmlmYWNlID0gdmFsdWU7DQo+ID4g QEAgLTc2MSw3ICs3ODMsMTcgQEAgc3RydWN0IHBtZF9kZXZhcmdzIHsgIHN0YXRpYyBpbmxpbmUg aW50DQo+ID4gb3Blbl9yeF9pZmFjZShjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKnZhbHVl LCB2b2lkICpleHRyYV9hcmdzKSAgew0KPiA+IC0JcmV0dXJuIG9wZW5faWZhY2Uoa2V5LCB2YWx1 ZSwgZXh0cmFfYXJncyk7DQo+ID4gKwlpbnQgcmV0ID0gb3Blbl9pZmFjZShrZXksIHZhbHVlLCBl eHRyYV9hcmdzKTsNCj4gPiArCWlmIChyZXQgPCAwKQ0KPiA+ICsJCXJldHVybiByZXQ7DQo+ID4g KwlpZiAoc3RyY21wKGtleSwgRVRIX1BDQVBfUlhfSUZBQ0VfSU5fQVJHKSA9PSAwKSB7DQo+ID4g KwkJc3RydWN0IHBtZF9kZXZhcmdzICpwbWQgPSBleHRyYV9hcmdzOw0KPiA+ICsJCXVuc2lnbmVk IGludCBxaWQgPSBwbWQtPm51bV9vZl9xdWV1ZSAtIDE7DQo+ID4gKwkJc2V0X2lmYWNlX2RpcmVj dGlvbihwbWQtPnF1ZXVlW3FpZF0ubmFtZSwNCj4gPiArCQkJCXBtZC0+cXVldWVbcWlkXS5wY2Fw LA0KPiA+ICsJCQkJUENBUF9EX0lOKTsNCj4gPiArCX0NCj4gDQo+IENhbiB5b3UgcGxlYXNlIHB1 dCBhbiBlbXB0eSBsaW5lIGFmdGVyIHZhcmlhYmxlcyBhbmQgYmVmb3JlIHJldHVybi4NCj4gDQo+ ID4gKwlyZXR1cm4gMDsNCj4gPiAgfQ0KPiA+DQo+ID4gIC8qDQo+ID4gQEAgLTk2NCwxMiArOTk2 LDE4IEBAIHN0cnVjdCBwbWRfZGV2YXJncyB7DQo+ID4gIAlpc19yeF9wY2FwID0gcnRlX2t2YXJn c19jb3VudChrdmxpc3QsIEVUSF9QQ0FQX1JYX1BDQVBfQVJHKSA/IDEgOg0KPiAwOw0KPiA+ICAJ cGNhcHMubnVtX29mX3F1ZXVlID0gMDsNCj4gPg0KPiA+IC0JaWYgKGlzX3J4X3BjYXApDQo+ID4g KwlpZiAoaXNfcnhfcGNhcCkgew0KPiA+ICAJCXJldCA9IHJ0ZV9rdmFyZ3NfcHJvY2Vzcyhrdmxp c3QsIEVUSF9QQ0FQX1JYX1BDQVBfQVJHLA0KPiA+ICAJCQkJJm9wZW5fcnhfcGNhcCwgJnBjYXBz KTsNCj4gPiAtCWVsc2UNCj4gPiArCX0gZWxzZSB7DQo+ID4gIAkJcmV0ID0gcnRlX2t2YXJnc19w cm9jZXNzKGt2bGlzdCwgRVRIX1BDQVBfUlhfSUZBQ0VfQVJHLA0KPiA+ICAJCQkJJm9wZW5fcnhf aWZhY2UsICZwY2Fwcyk7DQo+ID4gKwkJaWYgKHJldCA9PSAwKQ0KPiA+ICsJCQlyZXQgPSBydGVf a3ZhcmdzX3Byb2Nlc3Moa3ZsaXN0LA0KPiA+ICsJCQkJCUVUSF9QQ0FQX1JYX0lGQUNFX0lOX0FS RywNCj4gPiArCQkJCQkmb3Blbl9yeF9pZmFjZSwNCj4gPiArCQkJCQkmcGNhcHMpOw0KPiANCj4g SGVyZSBpZiBSWF9JRkFDRV9BUkcgYW5kIFJYX0lGQUNFX0lOX0FSRyB1c2VkIG1peGVkIChub3Ro aW5nIHNlZW1zDQo+IHByZXZlbnRzIHRoaXMpLCB0aGUgcXVldWUgb3JkZXIgY2FuIGJlIG5vdCBz YW1lIGFzIGFyZ3VtZW50IG9yZGVyLCBkbyB5b3UNCj4gdGhpbmsgaXMgdGhpcyBhIHByb2JsZW0/ DQpbaWRvZ10gR29vZCBjYXRjaCwgdGhleSBuZWVkIHRvIGJlIHBhcnNlZCB0b2dldGhlci4gSSds bCBmaXggaXQuDQoNCj4gDQo+ID4gKwl9DQo+ID4NCj4gPiAgCWlmIChyZXQgPCAwKQ0KPiA+ICAJ CWdvdG8gZnJlZV9rdmxpc3Q7DQo+ID4gQEAgLTEwMzUsNiArMTA3Myw3IEBAIHN0cnVjdCBwbWRf ZGV2YXJncyB7DQo+ID4gIAlFVEhfUENBUF9SWF9QQ0FQX0FSRyAiPTxzdHJpbmc+ICINCj4gPiAg CUVUSF9QQ0FQX1RYX1BDQVBfQVJHICI9PHN0cmluZz4gIg0KPiA+ICAJRVRIX1BDQVBfUlhfSUZB Q0VfQVJHICI9PGlmYz4gIg0KPiA+ICsJRVRIX1BDQVBfUlhfSUZBQ0VfSU5fQVJHICI9PGlmYz4g Ig0KPiA+ICAJRVRIX1BDQVBfVFhfSUZBQ0VfQVJHICI9PGlmYz4gIg0KPiA+ICAJRVRIX1BDQVBf SUZBQ0VfQVJHICI9PGlmYz4iKTsNCj4gPg0KPiA+DQoNCg==