From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 92889A0C52; Wed, 24 Nov 2021 12:19:15 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 723B540F35; Wed, 24 Nov 2021 12:19:15 +0100 (CET) Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1anam02on2061.outbound.protection.outlook.com [40.107.96.61]) by mails.dpdk.org (Postfix) with ESMTP id 182644003C for ; Wed, 24 Nov 2021 12:19:13 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A8vLuAP58M0vprEWgyDp1LS8QXLjSv29QaI0Fn5Via+P2a6ahLjelWklhtdZXnHjBj7YML979XQkjD00FhllNy5AW1kFSpW03SwCsI+nD4BRZaNq8Ou7M8PSe4L8IR8cSPX5niOK9u6dpoDhuI40976tOp4Igo+KXJfUXjqn4OZMG7CLK6Bu8OmstZGZdg2eGLlygdJZ1B94AjjBen9XUAwxQ3UvRCn96S+5pybfGAC7imtoZ2wQcFihdNu735FCZBioGJ0CZcUkxQ9214LNY8HrNxz+YB40BzLupUNELCAUN76aRdnGF7JzU24VsSPWp+HqaLAdEFqQnX2yE8ikvA== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ZUap3Ita8pQi5aptwAuGV8G4zwyKjtLgHyUe7J05ai4=; b=gkSFYBsykC7SlRlZmeiZEF/4XsMhhYIbHN7w9PqC6avRUwladaQaVPgi7FpsyiifLEmg5nn2XHg9DPEVm990AIKKVTHsnlfpLo6un9bgyupnH+1kzita2nbosGLZDW0H4wamH1eYBg+O6x20sCBIcugFqP97OnJFj1f4yj1sJ1gNeTEulXfacx7w49u5nPBCf54vn+O7VMaHz+8n5r8M0do/s4gcEdvrT7zsyuvD2GQYIJomRGR6YOT3aqN3xJb0lG+ySQKLIV3U6kx/T1UYNJlRFuq/Au/ERmrxHpywBrLI9aHMORrBgnttvb9cLdslmu3o6FbCOs1DJLbqzDHn6A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZUap3Ita8pQi5aptwAuGV8G4zwyKjtLgHyUe7J05ai4=; b=XVnmm4xHSrDMDgLB6i27SWlvM+oQCm6+SYC8i51B1dxYUUUyQYRf9l1ww5MJ+mXd9Nvg992vy6JoFEr2uAY66IQ/c2ECsokdtE93jbcWHPsl9keAPP1SL6lwgwL3Manu6j4IT6djfhEjGvnX1ym0ETxBqIASRZvdaoXjadZs0cCph35DhUvyq17FJ5Vy7lDOZI+O2l3zZPNXq0N+bx+UrOtV+DkKQSZGx9l6X2N2a0yeMNTWnW/o+73UTG7qUhZPsjsXRth6iyM3AL68F6fWui3cAE1urw8Dy56ZsW1G/XMebqMgMIFVlaO7wYmdtjTByDhRGxLdM8i5nuk4b6D8iQ== Received: from DM4PR12MB5373.namprd12.prod.outlook.com (2603:10b6:5:39a::17) by DM4PR12MB5215.namprd12.prod.outlook.com (2603:10b6:5:397::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4734.20; Wed, 24 Nov 2021 11:19:11 +0000 Received: from DM4PR12MB5373.namprd12.prod.outlook.com ([fe80::10d0:8c16:3110:f8ac]) by DM4PR12MB5373.namprd12.prod.outlook.com ([fe80::10d0:8c16:3110:f8ac%7]) with mapi id 15.20.4734.022; Wed, 24 Nov 2021 11:19:11 +0000 From: "Xueming(Steven) Li" To: "olivier.matz@6wind.com" CC: Lior Margalit , Parav Pandit , "dev@dpdk.org" , "david.marchand@redhat.com" , "mdr@ashroe.eu" Subject: Re: [PATCH v2] kvargs: fix device iterator match from arguments Thread-Topic: [PATCH v2] kvargs: fix device iterator match from arguments Thread-Index: AQHX4RyZEGfJefscxUGUuH5PMqT9wqwShJkAgAADYgA= Date: Wed, 24 Nov 2021 11:19:11 +0000 Message-ID: <5fa4af1001a369b3ff95dfa7fec54f5af1b5d371.camel@nvidia.com> References: <20211122061250.3220823-1-xuemingl@nvidia.com> <20211124101740.3479061-1-xuemingl@nvidia.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.42.1 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: b3149c8a-41de-4405-8bc5-08d9af3c3dc5 x-ms-traffictypediagnostic: DM4PR12MB5215: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 0o6gRFaJPWDPWSPWVC/zxL9dX0IPuGW9psXtcfrsx+hfmIrHXROcxO2efgjw1o2fsYZ/xPFjAggdr0JRrpESuQwOh1mnxruS+yF0gHuJ55ywGVEPJmM/OVJt+Fot1hPLzaRu1GLqdJL0doR2jGTBj5ajyCvMbdG2iLp7MmWsE/G0CNDM55I17Sv4MgB5xhoPeEJFGsxoulIdPwtms30uFM1FW3GoAu/8Xx9PH4G1xiYqAEFZcQDg5sOPDqFzN9vHcwLBJ1UU8+slIxBgOn+LA5tKvn7kyql+0zQjJY+fTOjZQw/vF4acZx9yrGX924xYDtFMg+iuy29N0K5NZFSoa+f/mHS9B0FqXpQ7ir3Z+6QVnIv3URu8KkCJO5/03PD/aCsM6iTFS0twnANfTOSlFxS/O6J6bUwka6FZaYDCU/q6Xd6R/gSSMUmBsS57fB+7da3+6k/4qZ7M0hydEbqa01jATSgT1mFhbSmrDQiGCalv1QBCGZlq+J+htq+dfQABKDnp2CE7egRT0F9+F8zGPRORKH8c7JA+3QLsnaLbNFI+KEu76ndb+eaM1Z/NjweuuKON2f060nARwFpIdQibmi4kLd7gZ7oJJ38iyRiswBcrgISL015uYMChAIVxtejVXL0/J397U7zd+3XbNaWAEckC+UD8TkBsuSCEacVgu0qi80hHU1PIh77gNBb3bW3hsqRDF2/f9InsIxVjzU9c3A== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR12MB5373.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(2616005)(2906002)(26005)(71200400001)(8936002)(6486002)(122000001)(5660300002)(83380400001)(38100700002)(38070700005)(4001150100001)(91956017)(76116006)(36756003)(86362001)(6506007)(66946007)(6512007)(66476007)(6916009)(316002)(8676002)(64756008)(66556008)(66446008)(508600001)(186003)(54906003)(4326008); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dnZKUzFUYXgyeW9WbjR1ZGFjeGc3Q3RRV3Q4UHIrV2hQOEg0YXdPSVVrRlJI?= =?utf-8?B?VC9zMktsNWxsTUNWb3E3QzdSUGZuQW1GMitJR0pRaFlzNjNmajBmVnYrZlVH?= =?utf-8?B?SmpNZFd5MkF1NzFkR3RHVnBrdWxIdGhPOEpwMDdpaGlRQWhrMXlJNTVBNkxu?= =?utf-8?B?ajg3TUwrVEg4Zmo5eXhNSzhhTnEzaHY0eEFsZm1TSmxuVXQ0aW4xUXNFQ1V6?= =?utf-8?B?VFI5TjBhc0tpRG1wN2dDck5weFVGa1JHOGZyOStyeWFpWUZxY2kwYjlLWVdO?= =?utf-8?B?ZEYrd29sTFRKTWtTeVhERHhZRlVKaGMxbmZWQ2xreUE1UzFhdjU4d0E4Nmtp?= =?utf-8?B?T0Q3MWNKRjVFdDQrR0hyYVlRMUpHRVg1WUZadGJFTVd5UnJyL3ZLYVlNSnNm?= =?utf-8?B?ZkI4TGtNWmppR2xFN29tTjlHelhUSjhXVnFGa3RSNHphZUZaeUVmNEFXeWpD?= =?utf-8?B?M3F1THhxL2x2eWp2U1FOdENDTlBBWDdaN2hkanFhcDBhTVhISVl6WGtVcTgx?= =?utf-8?B?bjJFVTlvOHlMTFhlMEJWSXNKdU1KcUkrMGlsd0MrdEIzbVc3SlZMYzcvbTVp?= =?utf-8?B?RXIwT0tpaDFQS2NRU3RoVUhWcWx3QUl4U3lFL1dxRjBsQkVyYXlTWThqS0gv?= =?utf-8?B?dkhwdk5CblJJejZKbjcyc04xOGdPTnhIRVFBSUlUVGVEbGtjVnRDSTl1OW1k?= =?utf-8?B?SzV6Vzhxd1VwYzFGaUJCYTlXZVo2Vk9WZHE5LzhlcDNXdzFEbHFaS2UreVVK?= =?utf-8?B?MzR6UzhCR2NUOEZ4bXNYOTZjY3pJM2xBczk3RWdzcUk2ODVkRjFRWGIzdko3?= =?utf-8?B?Tmo3WXk3Um5QbzQraTZqVUtBczN0eHpjZkIxTGF6UVN2c0ord3hvZS9GRk9w?= =?utf-8?B?TTFoVHgvZ3FldnJXMXZHcUlxZDAyVWVHRkQ4a0xtSnF4b25rYTZ1K0VjME8x?= =?utf-8?B?NWFRdUtRTytZMzhoUjFTaUpvb1FadzdickpxRnN4aWRlMExHZDNVU0NpNEgr?= =?utf-8?B?VVBnR080c1dqSjROR3k5SXZXMk1ybFpDeGRicFlCU0N3cUNPY3BJcExpQXRk?= =?utf-8?B?UkJkS2xoOWh0RlVIYjJQZGI0MFFKYUhNdTJTYy9CR04wL1l1RUNNcGYzNWI1?= =?utf-8?B?ZDA0aGV6Sy9XQ1BWSlhpZjFha0diV2luZUZ0Z2xZcjZySVUyeUZVOERpQzhs?= =?utf-8?B?cU9NMnkxdVhxSHVIbzBwOXNnU0VmNWJJb2s3c1hEcDZrUUFYVzZTQmlYSi8y?= =?utf-8?B?MjNxRlNCYS8xLzhZWTZCcis1eHlIYlQ3aEJULy80b1dZdG1SbnJUQ0kySVBO?= =?utf-8?B?ZWVocENkWG9tbVo1aGtrejVzeXhKV3NxbXc2VXJEZHUzMGJWRmlwMit3TUJ5?= =?utf-8?B?aHF4V3FDdUc1N2k5MU0xN3JpZHNZNnVMS3RJRDArYWR1VlhTa29IN1lNWUt2?= =?utf-8?B?SFJIdFFTVzFYVitLWGRBU2txUWNWbi9CZmdUZXpWeDRnV2lzSUtoSGpsYXZT?= =?utf-8?B?a2djcCt6MHVuQ0FxdnpXQXVpejQ5WTlBQ2hPbHBzekt1bXppWkhvV2NOV2dx?= =?utf-8?B?alNuV3JNMUxDYTYzK0RsVzNkeFh2N2t5RXBwQjNvRGJuYVQyMENNNDJxdDIx?= =?utf-8?B?VVdGd1grMHZ2MHg2bGVIL05LSWJwTzduSEluMzNUeHk5QkxYMlEwSXBBaXp6?= =?utf-8?B?TlM3Q0kwdFRsTm9SN0pXQ2lKNGVRN3lpZGJBcHNNMWdld0VaUERTRWlmL0Vo?= =?utf-8?B?TlN1NkFPenlNVG4rYzJCdVA1WkdSeTlpajhDY2NRMGE5MXYzeXhUSGN0aUlX?= =?utf-8?B?Zzk1dWxuUG9nVmpHUjkwOVpqSnZWc0ZEbmlWTkplang4UXRUV0w0VWlOQWFs?= =?utf-8?B?ZmM4UUQ0SjIwQVhvYVdyUmNWRHlVb2s0T1kyajFJdnlwMnU5ZmFlbkhNSEc2?= =?utf-8?B?U1RWRjBnOWhHSk03eTB3aTVvVUIvdUxEVGNiNVROZTVJdlcrMWlPbzU5emNw?= =?utf-8?B?aWlCRHlBTW4xR3FRclc5TnozMk83d0VxRlJWVm4vQlFGaUVBa1Fkb3YwZ1lI?= =?utf-8?B?bm5QcHpmTENNQVdvamMzSkpLN0o1MXlGN0JBTy81OGl4YnhUMDZscGwxcmp1?= =?utf-8?B?L3dETHpWTEJ3QmJVTjlZdmE4by84VHVSVkt0aTByL2R2SlRFM0NHS3J3MW44?= =?utf-8?Q?ujLvyd7aZdq0TKmhzPlJ2XkBSD7Y28PtGbcXeIW9mHBW?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR12MB5373.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b3149c8a-41de-4405-8bc5-08d9af3c3dc5 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Nov 2021 11:19:11.8263 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 9o+iORm7Wi0tm55Sza40V4KDt2Nt/Y65HzcR9j83msimVqrjwTZPVDOTdRfqlUQCUk09vjrstHub+tvecuSV9A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5215 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org T24gV2VkLCAyMDIxLTExLTI0IGF0IDEyOjA3ICswMTAwLCBPbGl2aWVyIE1hdHogd3JvdGU6DQo+ IEhpIFh1ZW1pbmcsDQo+IA0KPiBPbiBXZWQsIE5vdiAyNCwgMjAyMSBhdCAwNjoxNzo0MFBNICsw ODAwLCBYdWVtaW5nIExpIHdyb3RlOg0KPiA+IERldmljZSBpdGVyYXRvciBSVEVfREVWX0ZPUkVB Q0goKSBmYWlsZWQgdG8gcmV0dXJuIGRldmljZXMgZnJvbQ0KPiA+IGNsYXNzaWZpZXIgbGlrZSAi Y2xhc3M9dmRwYSIsIGJlY2F1c2UgbWF0Y2hpbmcgbmFtZSBmcm9tIGVtcHR5IGt2YXJncw0KPiA+ IHJldHVybnMgbm8gcmVzdWx0LiBJZiBkZXZpY2UgbmFtZSBub3Qgc3BlY2lmaWVkIGluIGt2YXJn cywgdGhlIGZ1bmN0aW9uDQo+ID4gc2hvdWxkIGl0ZXJhdGUgYWxsIGRldmljZXMuDQo+ID4gDQo+ ID4gVGhpcyBwYXRjaCBhbGxvd3MgZW1wdHkgZGV2YXJncyBvciBkZXZhcmdzIHdpdGhvdXQgbmFt ZSBzcGVjaWZpZWQuDQo+ID4gDQo+ID4gRml4ZXM6IDZhZWJiOTQyOTA3ZCAoImt2YXJnczogYWRk IGZ1bmN0aW9uIHRvIGdldCBmcm9tIGtleSBhbmQgdmFsdWUiKQ0KPiA+IENjOiBvbGl2aWVyLm1h dHpANndpbmQuY29tDQo+ID4gDQo+ID4gU2lnbmVkLW9mZi1ieTogWHVlbWluZyBMaSA8eHVlbWlu Z2xAbnZpZGlhLmNvbT4NCj4gDQo+IEkganVzdCBzZW50IGEgdjMgd2l0aCB0aGUgdW5pdCB0ZXN0 Lg0KPiANCj4gSW4gY2FzZSB0aGVyZSBpcyBhbiBpc3N1ZSB3aXRoIGl0LCB5b3VyIHYyIGxvb2tz IGdvb2QgdG8gbWU6DQo+IEFja2VkLWJ5OiBPbGl2aWVyIE1hdHogPG9saXZpZXIubWF0ekA2d2lu ZC5jb20+DQo+IA0KPiBBcyBhIHNpZGUgbm90ZSwgSSB3YXMgd29uZGVyaW5nIGlmIHdlIHNob3Vs ZCBrZWVwDQo+IHJ0ZV9rdmFyZ3NfZ2V0X3dpdGhfdmFsdWUoKSBpbiBrdmFyZ3MgYXBpLCBzaW5j ZSB0aGVyZQ0KPiBpcyBubyBtb3JlIHVzZXIuIEkgdGhpbmsgdGhlcmUgaXQgY2FuIHN0aWxsIGJl IHVzZWZ1bCwgbGV0J3MNCj4ga2VlcCBpdCBmb3Igbm93Lg0KDQpBZ3JlZSwgbmljZSB0byBrZWVw Lg0KDQo+IA0KPiBUaGFua3MhDQo+IE9saXZpZXINCj4gDQo+ID4gLS0tDQo+ID4gMjEuMTEgc3Bl Y2lmaWMgYnVnLCBubyBjb3B5IHRvIHN0YWJsZS5vcmcNCj4gPiAtLS0NCj4gPiAgZHJpdmVycy9i dXMvYXV4aWxpYXJ5L2F1eGlsaWFyeV9wYXJhbXMuYyB8IDE0ICsrKysrKysrKy0tLS0tDQo+ID4g IGRyaXZlcnMvYnVzL3ZkZXYvdmRldl9wYXJhbXMuYyAgICAgICAgICAgfCAxNCArKysrKysrKyst LS0tLQ0KPiA+ICAyIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9u cygtKQ0KPiA+IA0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2J1cy9hdXhpbGlhcnkvYXV4aWxp YXJ5X3BhcmFtcy5jIGIvZHJpdmVycy9idXMvYXV4aWxpYXJ5L2F1eGlsaWFyeV9wYXJhbXMuYw0K PiA+IGluZGV4IGE5Yzc4NTNlZDFkLi45Y2JjMWY3Yzc3NyAxMDA2NDQNCj4gPiAtLS0gYS9kcml2 ZXJzL2J1cy9hdXhpbGlhcnkvYXV4aWxpYXJ5X3BhcmFtcy5jDQo+ID4gKysrIGIvZHJpdmVycy9i dXMvYXV4aWxpYXJ5L2F1eGlsaWFyeV9wYXJhbXMuYw0KPiA+IEBAIC0yNiwxMSArMjYsMTUgQEAg YXV4aWxpYXJ5X2Rldl9tYXRjaChjb25zdCBzdHJ1Y3QgcnRlX2RldmljZSAqZGV2LA0KPiA+ICB7 DQo+ID4gIAljb25zdCBzdHJ1Y3QgcnRlX2t2YXJncyAqa3ZsaXN0ID0gX2t2bGlzdDsNCj4gPiAg CWNvbnN0IGNoYXIgKmtleSA9IGF1eGlsaWFyeV9wYXJhbXNfa2V5c1tSVEVfQVVYSUxJQVJZX1BB UkFNX05BTUVdOw0KPiA+IC0NCj4gPiAtCWlmIChydGVfa3ZhcmdzX2dldF93aXRoX3ZhbHVlKGt2 bGlzdCwga2V5LCBkZXYtPm5hbWUpID09IE5VTEwpDQo+ID4gLQkJcmV0dXJuIC0xOw0KPiA+IC0N Cj4gPiAtCXJldHVybiAwOw0KPiA+ICsJY29uc3QgY2hhciAqbmFtZTsNCj4gPiArDQo+ID4gKwlp ZiAoa3ZsaXN0ID09IE5VTEwpDQo+ID4gKwkJcmV0dXJuIDA7DQo+ID4gKwluYW1lID0gcnRlX2t2 YXJnc19nZXQoa3ZsaXN0LCBrZXkpOw0KPiA+ICsJaWYgKG5hbWUgPT0gTlVMTCkNCj4gPiArCQkv KiBJdGVyYXRlIGFsbCBkZXZpY2VzIGlmIG5hbWUgbm90IHNwZWNpZmllZC4gKi8NCj4gPiArCQly ZXR1cm4gMDsNCj4gPiArCXJldHVybiBzdHJjbXAobmFtZSwgZGV2LT5uYW1lKTsNCj4gPiAgfQ0K PiA+ICANCj4gPiAgdm9pZCAqDQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvYnVzL3ZkZXYvdmRl dl9wYXJhbXMuYyBiL2RyaXZlcnMvYnVzL3ZkZXYvdmRldl9wYXJhbXMuYw0KPiA+IGluZGV4IDM3 ZDk1Mzk1ZTdhLi5iNGJhZWNiN2MwZCAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL2J1cy92ZGV2 L3ZkZXZfcGFyYW1zLmMNCj4gPiArKysgYi9kcml2ZXJzL2J1cy92ZGV2L3ZkZXZfcGFyYW1zLmMN Cj4gPiBAQCAtMjgsMTEgKzI4LDE1IEBAIHZkZXZfZGV2X21hdGNoKGNvbnN0IHN0cnVjdCBydGVf ZGV2aWNlICpkZXYsDQo+ID4gIHsNCj4gPiAgCWNvbnN0IHN0cnVjdCBydGVfa3ZhcmdzICprdmxp c3QgPSBfa3ZsaXN0Ow0KPiA+ICAJY29uc3QgY2hhciAqa2V5ID0gdmRldl9wYXJhbXNfa2V5c1tS VEVfVkRFVl9QQVJBTV9OQU1FXTsNCj4gPiAtDQo+ID4gLQlpZiAocnRlX2t2YXJnc19nZXRfd2l0 aF92YWx1ZShrdmxpc3QsIGtleSwgZGV2LT5uYW1lKSA9PSBOVUxMKQ0KPiA+IC0JCXJldHVybiAt MTsNCj4gPiAtDQo+ID4gLQlyZXR1cm4gMDsNCj4gPiArCWNvbnN0IGNoYXIgKm5hbWU7DQo+ID4g Kw0KPiA+ICsJaWYgKGt2bGlzdCA9PSBOVUxMKQ0KPiA+ICsJCXJldHVybiAwOw0KPiA+ICsJbmFt ZSA9IHJ0ZV9rdmFyZ3NfZ2V0KGt2bGlzdCwga2V5KTsNCj4gPiArCWlmIChuYW1lID09IE5VTEwp DQo+ID4gKwkJLyogSXRlcmF0ZSBhbGwgZGV2aWNlcyBpZiBuYW1lIG5vdCBzcGVjaWZpZWQuICov DQo+ID4gKwkJcmV0dXJuIDA7DQo+ID4gKwlyZXR1cm4gc3RyY21wKG5hbWUsIGRldi0+bmFtZSk7 DQo+ID4gIH0NCj4gPiAgDQo+ID4gIHZvaWQgKg0KPiA+IC0tIA0KPiA+IDIuMzQuMA0KPiA+IA0K DQo=