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 E6E3DA00BE; Tue, 7 Jul 2020 23:03:31 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 35A561DE23; Tue, 7 Jul 2020 23:03:31 +0200 (CEST) Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2076.outbound.protection.outlook.com [40.107.21.76]) by dpdk.org (Postfix) with ESMTP id 7AC001DE01 for ; Tue, 7 Jul 2020 23:03:29 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=c7/D84xVP2V3QMRGcD7IwLOSPDUOZR5TS8zkuCiMs8hfV3Vrz4cPxLMBlTxKae6XB2Zd7ppEatJtS3AKHWpr+a6+J1b2SRJgn0Q01DwF5V4AEAcnIU7BhduC5Ke0mUdrUHqSIFl6q16Ga3xo0+nhqdQJ8b6Q86079WjU+i1O1Ym4zneXMPnFjh8C9TRW9N4KpRFKzRAnjoAdKOzKTcKXFPufxtureIr6aciigazeok74TjtqXpiO0IWl8l14TZAuZzujGo5ggG8wbgfFOEnPhZAXeq7NrmMC4BIRIBlQGzRoKTDBEh9wJ/OMw44uK2Ls154Z/3GcN1CRdIWVpahBEQ== 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=T2IeJ9gmo9HhVHvNt2JECz4mOyqEEvnAnJyjRqmWlR8=; b=lF/0zMjUW3H3eaW7V5zWSKclZq3/2fiM+yrKhADhCoOnppqCQKol/xjYUTlrOR7wuxGupsDhbjz15d85zm3350oTrionkOtt1vnfmYGTAqMIg0tUEPSaFxNDITNtlfxp4uY0sn5EC2kXZ9dLMVrDq+YMxDq/KXlHgVfVmQ/xvPg8pq167HJW+1YdCBFKjLv1y+6KN9UkBJ3qeMDOJt2oR0BL+zKBzb/X+nC96t1Hyl+BfZaIIhCSEEWU9Ku7s2f9QodpQfB47vuCxhyMvETfu2pc8bE6PV4qFaQGE9s9ST2ZjJlrRHACU8RxUx8YE+yc/O1eCV4EZDzLw8rcTmJxRw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mellanox.com; dmarc=pass action=none header.from=mellanox.com; dkim=pass header.d=mellanox.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=T2IeJ9gmo9HhVHvNt2JECz4mOyqEEvnAnJyjRqmWlR8=; b=TIVgkk4nb1ozZoKFcVNGk0xuQafmr5U65mJ/GVpHMYGFaMIz3YSGVz3z646nsIa9PzNsXPzLi3o6NmwBHXFS+dsm2EmRgPH5ub1N7Yu2Rcv90GHGix0DG65u3n3Se86RcXKZ6NJDBuoKUNuOZAckKGkrbcSTsYweddTIRvcI+bY= Received: from AM6PR05MB5176.eurprd05.prod.outlook.com (2603:10a6:20b:63::30) by AM7PR05MB6850.eurprd05.prod.outlook.com (2603:10a6:20b:1a0::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.24; Tue, 7 Jul 2020 21:03:27 +0000 Received: from AM6PR05MB5176.eurprd05.prod.outlook.com ([fe80::9024:accb:4d6b:805f]) by AM6PR05MB5176.eurprd05.prod.outlook.com ([fe80::9024:accb:4d6b:805f%3]) with mapi id 15.20.3153.029; Tue, 7 Jul 2020 21:03:27 +0000 From: Ori Kam To: Jerin Jacob CC: Andrey Vesnovaty , Andrey Vesnovaty , Thomas Monjalon , Ferruh Yigit , Andrew Rybchenko , dpdk-dev Thread-Topic: [dpdk-dev] [PATCH] add flow shared action API Thread-Index: AQHWUGkQL3wvR30Pj0qctUDdToyRSqj19SQAgAFAmICAACgNAIABbUtwgAF7yQCAADVjIIAAFrWAgADZbYCAAD4lkIAA4RkAgAAQKSA= Date: Tue, 7 Jul 2020 21:03:27 +0000 Message-ID: References: <20200702120511.16315-1-andreyv@mellanox.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=mellanox.com; x-originating-ip: [147.236.152.129] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 25ec43f5-a436-4b41-e3ab-08d822b9320c x-ms-traffictypediagnostic: AM7PR05MB6850: x-ld-processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-forefront-prvs: 0457F11EAF x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: QA5elIHE4FMk2gehRA/Jtp+hf9igrt24G9yWaWa/dLD+POyQPm2wKEOT3yV1FNbPMCcBsGcCehElGUEWKQBE3Ll18yrRUQsBquL90jOB9DHp2c8GgnV2PcB1u2vwcqXNKHJpQzRBPnhW7SFqgqvopjVE41Gw0+PEMxlOZKzFoaDXHPMGQ3Axz+b8JGs0a2x6OYyc2q4+3mnaHeojiVpCsx6mmgzV9+pjNnvYE6/xO5ikUL0sHfGhiRNoNV8cyRf5cdI+6JFBT8zJY/GG0iVAqzGzsK/3domkph0uzP2D+EqOZ0CPrb/XdPJK/uPeWE8lWr2762PiTZRrgr63Jku2Gzaaj/oRkTT4I3pKTrZ+4Mr6Vxw7zp7sKcZzZMUBSGLi x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM6PR05MB5176.eurprd05.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(396003)(39850400004)(366004)(376002)(136003)(346002)(316002)(9686003)(54906003)(86362001)(8676002)(83380400001)(26005)(53546011)(6506007)(5660300002)(52536014)(33656002)(6916009)(66556008)(66476007)(66446008)(2906002)(64756008)(478600001)(55016002)(66946007)(4326008)(186003)(8936002)(7696005)(76116006)(71200400001)(21314003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: vImOr7yYHwVgV3UqTHP+fTurwC5d1yJexBF2gAMJPy64D5XMjFrGhu3IFFgMjxLjtLPAdjH9o3Ur6zV8cQJKbXr9RlJGzIQInNlN+f94rIfLpVH1fKbnnNFSr1Nmcqkg5+1iDt5cAV83FNiuThoLA1RRv+TyQJTtIpwp1FGTxjVovPWasQ8FbU+nB6v8WtidmZJVMSaLLIjNoXIdSnrKMtz2dGG+Rb1XFjNqF9lBuWKDNSIfLPstQtF/t4KegNL97GZBeQ6/fs+ehliNc14ejiumi5sLwC4MbnI4AyloOnZyhzg8icj8Vm6P+sf8cjzx6cUvEXi206WAXULzQvlsVj/iWT34fLL5JZX9LF+EXBiP/kQSeklc5NfxfMNAmLmU7Re1c9SwIBPkGJAZFBB2x0/Tkjka+e+Iv6CjBSqwVdgEKYghzucbkN/hmR+fNwsj4yEc6GQ5HE970AKvuabEDodwwu968FcovUDCspR5n/NxRZaYcEMzIsXu8S5tStVm Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AM6PR05MB5176.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 25ec43f5-a436-4b41-e3ab-08d822b9320c X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Jul 2020 21:03:27.6175 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: i8CAPZWMrOPFv8LoLUQNeDSH8RuqmGFHJXMEzdj4v7wmLci1X8gEhnzB5fmLy1iTEPyAGeRZMl82uKtVOyGKaA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR05MB6850 Subject: Re: [dpdk-dev] [PATCH] add flow shared action 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" SGkgSmVyaW4sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogSmVyaW4g SmFjb2IgPGplcmluamFjb2JrQGdtYWlsLmNvbT4NCj4gDQo+IE9uIFR1ZSwgSnVsIDcsIDIwMjAg YXQgMTE6NTEgQU0gT3JpIEthbSA8b3Jpa2FAbWVsbGFub3guY29tPiB3cm90ZToNCj4gPg0KPiA+ IEhpIEplcmluLA0KPiA+ICBUaGFua3MgeW91IGZvciB5b3VyIHF1aWNrIHJlcGx5Lg0KPiA+DQo+ ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTogSmVyaW4gSmFjb2Ig PGplcmluamFjb2JrQGdtYWlsLmNvbT4NCj4gPiA+IFN1YmplY3Q6IFJlOiBbZHBkay1kZXZdIFtQ QVRDSF0gYWRkIGZsb3cgc2hhcmVkIGFjdGlvbiBBUEkNCj4gPiA+DQo+ID4gPiBPbiBNb24sIEp1 bCA2LCAyMDIwIGF0IDc6MDIgUE0gQW5kcmV5IFZlc25vdmF0eQ0KPiA+ID4gPGFuZHJleS52ZXNu b3ZhdHlAZ21haWwuY29tPiB3cm90ZToNCj4gPiA+ID4NCj4gPiA+ID4gSGksIEplcmluLg0KPiA+ ID4NCj4gPiA+IEhpIE9yaSBhbmQgQW5kcmV5LA0KPiA+ID4NCj4gPiA+DQo+ID4gPiA+DQo+ID4g PiA+IFBsZWFzZSBzZWUgYmVsb3cgT3JpJ3Mgc3VnZ2VzdGlvbiBiZWxvdyB0byBpbXBsZW1lbnQg eW91cg0KPiA+ID4gcnRlX2Zsb3dfYWN0aW9uX3VwZGF0ZSgpIGlkZWENCj4gPiA+ID4gd2l0aCBz b21lIEFQSSBjaGFuZ2VzIG9mIHJ0ZV9mbG93X3NoYXJlZF9hY3Rpb25feHh4IEFQSSBjaGFuZ2Vz Lg0KPiA+ID4gPg0KPiA+ID4gPiBPbiBNb24sIEp1bCA2LCAyMDIwIGF0IDM6MjggUE0gT3JpIEth bSA8b3Jpa2FAbWVsbGFub3guY29tPiB3cm90ZToNCj4gPiA+ID4+DQo+ID4gPiA+PiBIaSBKZXJp biwNCj4gPiA+ID4+DQo+ID4gPiA+PiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4g PiA+PiA+IEZyb206IEplcmluIEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+DQo+ID4gPiA+ PiA+IFNlbnQ6IE1vbmRheSwgSnVseSA2LCAyMDIwIDEyOjAwIFBNDQo+ID4gPiA+PiA+IFN1Ympl Y3Q6IFJlOiBbZHBkay1kZXZdIFtQQVRDSF0gYWRkIGZsb3cgc2hhcmVkIGFjdGlvbiBBUEkNCj4g PiA+ID4+ID4NCj4gPiA+ID4+ID4gT24gU3VuLCBKdWwgNSwgMjAyMCBhdCAzOjU2IFBNIE9yaSBL YW0gPG9yaWthQG1lbGxhbm94LmNvbT4gd3JvdGU6DQo+ID4gPiA+PiA+ID4NCj4gPiA+ID4+ID4g PiBIaSBKZXJpbiwNCj4gPiA+ID4+ID4gPiBQU0IsDQo+ID4gPiA+PiA+ID4NCj4gPiA+ID4+ID4g PiBUaGFua3MsDQo+ID4gPiA+PiA+ID4gT3JpDQo+ID4gPiA+PiA+ID4NCj4gPiA+ID4+ID4gPiA+ IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiA+PiA+ID4gPiBGcm9tOiBKZXJpbiBK YWNvYiA8amVyaW5qYWNvYmtAZ21haWwuY29tPg0KPiA+ID4gPj4gPiA+ID4gU2VudDogU2F0dXJk YXksIEp1bHkgNCwgMjAyMCAzOjMzIFBNDQo+ID4gPiA+PiA+ID4gPiBkcGRrLWRldiA8ZGV2QGRw ZGsub3JnPg0KPiA+ID4gPj4gPiA+ID4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1BBVENIXSBh ZGQgZmxvdyBzaGFyZWQgYWN0aW9uIEFQSQ0KPiA+ID4gPj4gPiA+ID4NCj4gPiA+ID4+ID4gPiA+ IE9uIFNhdCwgSnVsIDQsIDIwMjAgYXQgMzo0MCBQTSBBbmRyZXkgVmVzbm92YXR5DQo+ID4gPiA+ PiA+ID4gPiA8YW5kcmV5LnZlc25vdmF0eUBnbWFpbC5jb20+IHdyb3RlOg0KPiA+ID4gPj4gPiA+ ID4gPg0KPiA+ID4gPj4gPiA+ID4gPg0KPiA+ID4gPj4gPiA+ID4gPiBUaGFua3MsDQo+ID4gPiA+ PiA+ID4gPiA+DQo+ID4gPiA+PiA+ID4gPiA+IEFuZHJleSBWZXNub3ZhdHkNCj4gPiA+ID4+ID4g PiA+ID4gKCs5NzIpNTI2Nzc1NTEyIHwgU2t5cGU6IGFuZHJleTc3NTUxMg0KPiA+ID4gPj4gPiA+ ID4gPg0KPiA+ID4gPj4gPiA+DQo+ID4gPiA+PiA+ID4NCj4gPiA+ID4+ID4gPiBbLi5OaXAgLi5d DQo+ID4gPiA+PiA+ID4NCj4gPiA+ID4+ID4gPiA+ID4gSSBuZWVkIHRvIG1lbnRpb24gdGhlIGxv Y2tpbmcgaXNzdWUgb25jZSBhZ2Fpbi4NCj4gPiA+ID4+ID4gPiA+ID4gSWYgdGhlcmUgaXMgYSBu ZWVkIHRvIG1haW50YWluICJzaGFyZWQgc2Vzc2lvbiIgaW4gdGhlIGdlbmVyaWMNCj4gPiA+IHJ0 ZV9mbG93DQo+ID4gPiA+PiA+IGxheWVyDQo+ID4gPiA+PiA+ID4gPiBhbGwNCj4gPiA+ID4+ID4g PiA+ID4gY2FsbHMgdG8gZmxvd19jcmVhdGUoKSB3aXRoIHNoYXJlZCBhY3Rpb24gJiBhbGwgZGVs ZXRlIG5lZWQgdG8gdGFrZQ0KPiA+ID4gPj4gPiA+ID4gc2hhcmVkc2Vzc2lvbg0KPiA+ID4gPj4g PiA+ID4gPiBtYW5hZ2VtZW50IGxvY2tzIGF0IGxlYXN0IGZvciB2ZXJpZmljYXRpb24uIExvY2sg cGFydGl0aW9uaW5nIGlzDQo+IGFsc28NCj4gPiA+IGJpdA0KPiA+ID4gPj4gPiA+ID4gcHJvYmxl bWF0aWMNCj4gPiA+ID4+ID4gPiA+ID4gc2luY2Ugb25lIGZsb3cgbWF5IGhhdmUgbW9yZSB0aGFu IG9uZSBzaGFyZWQgYWN0aW9uLg0KPiA+ID4gPj4gPiA+ID4NCj4gPiA+ID4+ID4gPiA+IFRoZW4s IEkgdGhpbmsgYmV0dGVyIGFwcHJvYWNoIHdvdWxkIGJlIHRvIGludHJvZHVjZQ0KPiA+ID4gPj4g PiA+ID4gcnRlX2Zsb3dfYWN0aW9uX3VwZGF0ZSgpIHB1YmxpYw0KPiA+ID4gPj4gPiA+ID4gQVBJ IHdoaWNoIGNhbiBlaXRoZXIgdGFrZSAiY29uc3Qgc3RydWN0IHJ0ZV9mbG93X2FjdGlvbiBbXSIg T1INCj4gc2hhcmVkDQo+ID4gPiA+PiA+ID4gPiBjb250ZXh0IElELCB0byBjYXRlciB0bw0KPiA+ ID4gPj4gPiA+ID4gYm90aCBjYXNlcyBvciBzb21ldGhpbmcgb24gc2ltaWxhciBsaW5lcy4gVGhp cyB3b3VsZCBhbGxvdyBIVydzDQo+ID4gPiA+PiA+ID4gPiB3aXRob3V0IGhhdmUgIHRoZSBzaGFy ZWQgY29udGV4dCBJRA0KPiA+ID4gPj4gPiA+ID4gdG8gdXNlIHRoZSBhY3Rpb24gdXBkYXRlLg0K PiA+ID4gPj4gPiA+DQo+ID4gPiA+PiA+ID4gQ2FuIHlvdSBwbGVhc2UgZXhwbGFpbiB5b3VyIGlk ZWE/DQo+ID4gPiA+PiA+DQo+ID4gPiA+PiA+IEkgc2VlIHR3byB0eXBlcyBvZiBIVyBzY2hlbWVz IHN1cHBvcnRpbmcgYWN0aW9uIHVwZGF0ZXMgd2l0aG91dA0KPiBnb2luZw0KPiA+ID4gPj4gPiB0 aHJvdWdoIGNhbGwgYHJ0ZV9mbG93X2Rlc3Ryb3koKWAgYW5kIGNhbGwgYHJ0ZV9mbG93X2NyZWF0 ZSgpYA0KPiA+ID4gPj4gPiAtIFRoZSBzaGFyZWQgSFcgYWN0aW9uIGNvbnRleHQgZmVhdHVyZQ0K PiA+ID4gPj4gPiAtIFRoZSBIVyBoYXMgInBhdHRlcm4iIGFuZCAiYWN0aW9uIiBtYXBwZWQgdG8g ZGlmZmVyZW50IEhXIG9iamVjdHMNCj4gYW5kDQo+ID4gPiA+PiA+IGFjdGlvbiBjYW4gYmUgdXBk YXRlZCBhbnkgdGltZS4NCj4gPiA+ID4+ID4gT3RoZXIgdGhhbiBhYm92ZS1tZW50aW9uZWQgUlNT IHVzZSBjYXNlLCBhbm90aGVyIHVzZSBjYXNlIHdvdWxkIGJlDQo+IHRvDQo+ID4gPiA+PiA+IGEp IGNyZWF0ZSBydGVfZmxvdyBhbmQgc2V0IHRoZSBhY3Rpb24gYXMgRFJPUCAoS2luZCBvZiByZXNl cnZpbmcgdGhlDQo+IEhXDQo+ID4gPiBvYmplY3QpDQo+ID4gPiA+PiA+IGIpIFVwZGF0ZSB0aGUg YWN0aW9uIG9ubHkgd2hlbiB0aGUgcmVzdCBvZiB0aGUgcmVxdWlyZW1lbnRzIHJlYWR5Lg0KPiA+ ID4gPj4gPg0KPiA+ID4gPj4gPiBBbnkgQVBJIHNjaGVtYXRpYyB0aGF0IHN1cHBvcnRzIGJvdGgg bm90aW9ucyBvZiBIVyBpcyBmaW5lIHdpdGggbWUuDQo+ID4gPiA+PiA+DQo+ID4gPiA+PiBJIGhh dmUgYW4gaWRlYSBpZiB0aGUgQVBJIHdpbGwgYmUgY2hhbmdlZCB0byBzb21ldGhpbmcgbGlrZSB0 aGlzLA0KPiA+ID4gPj4gUnRlX2Zsb3dfc2hhcmVkX2FjdGlvbl91cGRhdGUodWludDE2X3BvcnQg cG9ydCwgcnRlX3NoYXJlZF9jdHggKmN0eCwNCj4gPiA+IHJ0ZV9mbG93X2FjdGlvbiAqYWN0aW9u LCBlcnJvcikNCj4gPiA+ID4+IFRoaXMgd2lsbCBlbmFibGUgdGhlIGFwcGxpY2F0aW9uIHRvIHNl bmQgYSBkaWZmZXJlbnQgYWN0aW9uIHRoYW4gdGhlDQo+IG9yaWdpbmFsDQo+ID4gPiBvbmUgdG8g YmUgc3dpdGNoZWQuDQo+ID4gPiA+PiBBc3N1bWluZyB0aGUgUE1EIHN1cHBvcnRzIHRoaXMuDQo+ ID4gPiA+PiBEb2VzIGl0IGFuc3dlciB5b3VyIGNvbmNlcm5zPw0KPiA+ID4gPg0KPiA+ID4gPg0K PiA+ID4gPiBUaGlzIGFsbG93cyBib3RoOg0KPiA+ID4gPiAxLiBVcGRhdGUgYWN0aW9uIGNvbmZp Z3VyYXRpb24NCj4gPiA+ID4gMi4gUmVwbGFjZSBhY3Rpb24gYnkgc29tZSBvdGhlciBhY3Rpb24N Cj4gPiA+ID4gRm9yIDIgcHVyZSBzb2Z0d2FyZSBpbXBsZW1lbnRhdGlvbiBtYXkgY2FyYXRlIHNo cmVkIGFjdGlvbiAodGhhdCBjYW4gYmUNCj4gPiA+IHNoYXJlZA0KPiA+ID4gPiB3aXRoIG9uZSBm bG93IG9ubHksIGRlcGVuZHMgb24gUE1EKSBhbmQgbGF0ZXIgb24NCj4gPiA+IHJ0ZV9mbG93X3No YXJlZF9hY3Rpb25fdXBkYXRlIG1heSByZXBsYWNlIHRoaXMNCj4gPiA+ID4gYWN0aW9uIHdpdGgg c29tZSBvdGhlciBhY3Rpb24gYnkgaGFuZGxlIHJldHVybmVkIGZyb20NCj4gPiA+IHJ0ZV9mbG93 X3NoYXJlZF9hY3Rpb25fY3JlYXRlDQo+ID4gPiA+IERvZXNpZ24gYmV0d2VlbiAxIGFuZCAyIGlz IHBlciBQTUQuDQo+ID4gPg0KPiA+ID4gc3RydWN0IHJ0ZV9mbG93ICogb2JqZWN0IGhvbGRzIHRo ZSBkcml2ZXIgcmVwcmVzZW50YXRpb24gb2YgdGhlDQo+ID4gPiBwYXR0ZXJuICsgYWN0aW9uLg0K PiA+ID4gU28gaW4gb3JkZXIgdG8gdXBkYXRlIHRoZSBhY3Rpb24sIHdlIHdvdWxkIG5lZWQgc3Ry dWN0IHJ0ZV9mbG93ICogaW4gQVBJLg0KPiA+ID4NCj4gPiBXaHkgaXMgdGhhdD8gVGhlIGlkZWEg aXMgdG8gY2hhbmdlIHRoZSBhY3Rpb24sIHRoZSBhY3Rpb24gaXRzZWxmIGlzIGNvbm5lY3RlZCB0 bw0KPiBmbG93cy4NCj4gPiBUaGUgUE1EIGNhbiBzYXZlIGluIHRoZSBzaGFyZWRfY3R4IGFsbCBm bG93cyB0aGF0IGFyZSBjb25uZWN0ZWQgdG8gdGhpcw0KPiBhY3Rpb24uDQo+ID4NCj4gPiA+IEkg dGhpbmssIHNpbXBsZSBBUEkgY2hhbmdlIHdvdWxkIGJlIHRvIGFjY29tbW9kYXRlICJydGVfc2hh cmVkX2N0eA0KPiA+ID4gKmN0eCwgcnRlX2Zsb3dfYWN0aW9uICphY3Rpb24iIG1vZGVzDQo+ID4g PiB3aXRob3V0IGludHJvZHVjaW5nIHRoZSBlbXVsYXRpb24gZm9yIG9uZSBvciBvdGhlciBtb2Rl LCB3aWxsIGJlLg0KPiA+ID4NCj4gPiA+IGVudW0gcnRlX2Zsb3dfYWN0aW9uX3VwZGF0ZV90eXBl IHsNCj4gPiA+ICAgICAgICAgICAgICAgUlRFX0ZMT1dfQUNUSU9OX1VQREFURV9UWVBFX1NIQVJF RF9BQ1RJT04sDQo+ID4gPiAgICAgICAgICAgICAgIFJURV9GTE9XX0FDVElPTl9VUERBVEVfVFlQ RV9BQ1RJT04sDQo+ID4gPiB9Ow0KPiA+ID4NCj4gPiA+IHN0cnVjdCBydGVfZmxvd19hY3Rpb25f dXBkYXRlX3R5cGVfcGFyYW0gew0KPiA+ID4gICAgICAgICAgZW51bSBydGVfZmxvd19hY3Rpb25f dXBkYXRlX3R5cGUgdHlwZTsNCj4gPiA+ICAgICAgICAgIHVuaW9uIHsNCj4gPiA+ICAgICAgICAg ICAgICAgICAgICAgIHN0cnVjdCBydGVfZmxvd19hY3Rpb25fdXBkYXRlX3R5cGVfc2hhcmVkX2Fj dGlvbl9wYXJhbSB7DQo+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0ZV9z aGFyZWRfY3R4ICpjdHg7DQo+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgfSBzaGFyZWRfYWN0 aW9uOw0KPiA+ID4gICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBydGVfZmxvd19hY3Rpb25f dXBkYXRlX3R5cGVfc2hhcmVkX2FjdGlvbl9wYXJhbSB7DQo+ID4gPiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHJ0ZV9mbG93ICpmbG93LA0KPiA+ID4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcnRlX2Zsb3dfYWN0aW9uICphY3Rpb247DQo+ID4gPiAgICAgICAgICAg ICAgICAgICAgICAgfSBhY3Rpb247DQo+ID4gPiAgICAgICAgICB9DQo+ID4gPiB9DQo+ID4gPg0K PiA+IFRoYW5rIHlvdSBmb3IgdGhlIGlkZWEgYnV0IEkgZmFsbCB0byBzZWUgaG93IHlvdXIgc3Vn Z2VzdGVkIEFQSSBpcyBzaW1wbGVyIHRoYW4NCj4gdGhlIG9uZSBzdWdnZXN0ZWQgYnkgbWU/DQo+ IA0KPiBNeSB0aG91Z2h0IHByb2Nlc3Mgd2l0aCB0aGUgYmVsb3ctcHJvcG9zZWQgQVBJWzFdIGlz IHRoYXQgSXQgaXMNCj4gZGljdGF0ZXMgIl9zaGFyZWRfYWN0aW9uXyIgaW4gQVBJIG5hbWUgYXMN Cj4gd2VsbCBhcyBhcmd1bWVudHMuIEkganVzdCB0aG91Z2h0IG9mIGV4cHJlc3NpbmcgaXQgYXMg ZWl0aGVyLW9yIGNhc2UNCj4gaGVuY2UgSSB0aG91Z2h0IFsyXSBpcyBiZXR0ZXIuIGkuZSBUaGUg UE1EIGRvZXMgbm90IHN1cHBvcnQNCj4gc2hhcmVkX2FjdGlvbiwgbm90IGV2ZW4gbmVlZCB0byBj cmVhdGUgb25lIHRvIHVzZQ0KPiBydGVfZmxvd19hY3Rpb25fdXBkYXRlKCkgdG8gYXZvaWQgdGhl IGNvbmZ1c2lvbi4gVGhvdWdodHM/DQo+IA0KPiBbMV0NCj4gcnRlX2Zsb3dfc2hhcmVkX2FjdGlv bl91cGRhdGUodWludDE2X3BvcnQgcG9ydCwgcnRlX3NoYXJlZF9jdHggKmN0eCwNCj4gcnRlX2Zs b3dfYWN0aW9uICphY3Rpb24sIGVycm9yKQ0KPiANCj4gWzJdDQo+IHJ0ZV9mbG93X2FjdGlvbl91 cGRhdGUodWludDE2X3BvcnQgcG9ydCwgc3RydWN0DQo+IHJ0ZV9mbG93X2FjdGlvbl91cGRhdGVf dHlwZV9wYXJhbSAgKnBhcmFtLCBlcnJvcikNCj4gDQpMZXQgbWUgc2VlIGlmIEkgdW5kZXJzdGFu ZCB5b3UgY29ycmVjdGx5LCB5b3VyIHN1Z2dlc3Rpb24gaXMgdG8gYWxsb3cNCnRoZSBhcHBsaWNh dGlvbiB0byBjaGFuZ2Ugb25lIGFjdGlvbiBpbiBvbmUgZmxvdywgYnV0IGluc3RlYWQgb2YgY3Jl YXRpbmcgDQp0aGUgY29udGV4dCB0aGUgYXBwbGljYXRpb24gd2lsbCBqdXN0IHN1cHBseSB0aGUg cnRlX2Zsb3cgYW5kIHRoZSBuZXcgYWN0aW9ucw0KZG8gSSB1bmRlcnN0YW5kIGNvcnJlY3RseT8N Cg0KSWYgc28gdGhpcyBpdCBpcyBhIG5pY2UgaWRlYSwgYnV0IHRoZXJlIGFyZSBzb21lIGlzc3Vl cyB3aXRoIGl0LA0KMS4gVGhlIFBNRCBtdXN0IHNhdmUgdGhlIGZsb3cgd2hpY2ggd2lsbCByZXN1 bHQgaW4gbWVtb3J5IGNvbnN1bXB0aW9uLg0KMi4gQXNzdW1lIHRoYXQgdHdvIGZsb3dzIGFyZSB1 c2luZyB0aGUgc2FtZSBSU1MgYWN0aW9uIGZvciBleGFtcGxlLCBzbyB0aGUgUE1EDQpyZXVzZSB0 aGUgUlNTIG9iamVjdCBoZSBjcmVhdGVkIGZvciB0aGUgZmlyc3QgZmxvdyBhbHNvIGZvciB0aGUg c2Vjb25kLiBOb3cgY2hhbmdpbmcNCnRoaXMgUlNTIGZsb3cgbWF5IHJlc3VsdCBpbiBhbHNvIGNo YW5naW5nIHRoZSBzZWNvbmQgZmxvdy4gKHRoaXMgY2FuIGJlIHNvbHZlZCBieSBhbHdheXMgDQpj cmVhdGluZyBuZXcgYWN0aW9uKQ0KMy4gSXQgZG9lc24ndCBoYW5kbGUgdGhlIG1haW4gdXNlIGNh c2UgdGhhdCB0aGUgYXBwbGljYXRpb24gd2FudHMgdG8gY2hhbmdlIG51bWJlciBvZg0KZmxvd3Mg YXQgdGhlIHNhbWUgdGltZSwgd2hpY2ggaXMgdGhlIGlkZWEgb2YgdGhpcyBmZWF0dXJlLg0KDQpJ IGFsc28gdGhpbmsgdGhhdCBhbGwgUE1EIHRoYXQgc3VwcG9ydCBvcHRpb24gMiBjYW4gIHN1cHBv cnQgb3B0aW9uIDEgc2luY2UNCnRoZXkgY2FuIHNhdmUgaW4gdGhlIGN0eCBhIGxpc3Qgb2YgZmxv d3MgYW5kIHNpbXBseSBhcHBseSB0aGVtIGFnYWluLiBTbyBieQ0KZGVmaW5pdGlvbiBpZiBQTUQg c3VwcG9ydHMgWzJdIGl0IGFsc28gc3VwcG9ydCBbMV0gd2hpbGUgdGhlIG90aGVyIA0Kd2F5IGlz IG5vdCBjb3JyZWN0IHNpbmNlIGl0IGZvcmNlcyB0aGUgUE1EIHRvIHNhdmUgZmxvd3Mgd2hpY2gg bGlrZSBJIHNhaWQgd2FzdGUgbWVtb3J5Lg0KDQpJIHN1Z2dlc3QgdGhhdCB3ZSB3aWxsIGdvIHdp dGggb3B0aW9uIFsxXSwgYW5kIGlmIG5lZWRlZCBpbiB0aGUgZnV0dXJlIHdlIHdpbGwgdXBkYXRl IHRoZSBjb2RlLg0KdXNpbmcgb3B0aW9uIFsyXSB3aWxsIHJlc3VsdCBpbiBkZWFkIGNvZGUgc2lu Y2UgYXQgbGVhc3QgZm9yIHRoZSBjdXJyZW50IHRpbWUgbm8gUE1EIHdpbGwgaW1wbGVtZW50IHRo aXMNCkFQSS4gDQoNCkkgY2FuIHN1Z2dlc3Qgb25lIG1vcmUgdGhpbmcgbWF5YmUgdG8gY2hhbmdl IHRoZSBuYW1lIGZyb20gc2hhcmVkX2N0eCB0byBqdXN0IGN0eA0Kd2hpY2ggaW1wbGljaXRseSBt ZWFuIGl0IGNhbiBiZSBzaGFyZWQgYnV0IG5vdCBhIG11c3QuIFdoYXQgZG8geW91IHRoaW5rPyAo YnV0IGFnYWluDQpJIHRoaW5rIGJ5IGRlZmluaXRpb24gaWYgYSBQTUQgY2FuIGltcGxlbWVudCBu dW1iZXIgWzJdIGl0IGNhbiBhbHNvIGltcGxlbWVudCBpdCB0byBudW1iZXINCm9mIGZsb3dzIHVz aW5nIEFQSSBbMl0uDQoNCj4gPiBJbiBteSBzdWdnZXN0aW9uIHRoZSBQTUQgc2ltcGx5IG5lZWRz IHRvIGNoZWNrIGlmIHRoZSBuZXcgYWN0aW9uIGFuZA0KPiBjaGFuZ2UgdGhlDQo+ID4gY29udGV4 dCBhbmQgdG8gdGhhdCBhY3Rpb24sIG9yIGp1c3QgY2hhbmdlIHBhcmFtZXRlcnMgaW4gdGhlIGFj dGlvbiwgaWYgaXQgaXMgdGhlDQo+IHNhbWUgYWN0aW9uLg0KPiA+DQo+ID4gTGV0J3MgZ28gd2l0 aCB0aGUgb3JpZ2luYWwgcGF0Y2ggQVBJIG1vZGlmaWVkIHRvIHN1cHBvcnQgbGlrZSB5b3UgcmVx dWVzdGVkDQo+IGFsc28gY2hhbmdpbmcgdGhlIGFjdGlvbiwNCj4gPiBiYXNlZCBvbiBteSBjb21t ZW50cy4NCj4gPg0KPiA+ID4gcnRlX2Zsb3dfYWN0aW9uX3VwZGF0ZSh1aW50MTZfcG9ydCBwb3J0 LCBzdHJ1Y3QNCj4gPiA+IHJ0ZV9mbG93X2FjdGlvbl91cGRhdGVfdHlwZV9wYXJhbSAgKnBhcmFt LCBlcnJvcikNCj4gPiA+DQo+ID4gPiA+DQpbLi5uaXAuLl0NCg0KQmVzdCwNCk9yaQ0K