From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11olkn2033.outbound.protection.outlook.com [40.92.20.33]) by master.gitmailbox.com (Postfix) with ESMTPS id B950E40261 for ; Mon, 20 Dec 2021 01:23:25 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KArszEENbSMMu6B0NkKxJ/0ZTxORciChT4a8uxS2YnvoKN64OouC75gTrLsfZ0WG+GjUidMzCq5bjbWvz+uh2SInZxoBFBXEyU6TR/EErRyvGalRM8f8gyoASho04L8ZhA09wpY0LEVAIzPHgYiaCS0s7ge4Du+ZauaN31Ub35zZoML2qP61gu5qNEvID0l+ky0XhO5eGEmVvere0629SAWnxW4UUIR0G2KPXZinkMr3IzDTMAsBjZaZGQy4UeYbJIoim7DSlGVpDaqCWpLgoCVG7syA4322NBAqxjc0Q52aIRnOcGRL3oeTaRuFJSsram+tmd8QDqJ1Gf6V7XTqdQ== 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=P3zIBIuGb8KGWhXmZX8dUVmFYzDyYv51fNu/5Rqmt0w=; b=XRrfFZFv595E5apFKMOLHqoC7GnDdXQHFhn6lOrldvPRxNkNUpMi0SWxnwJbI0VP8R5UBUHU5MyX3/5NaGFfH0vO9ySsSPMUPcKKE1ELe1IoY0oYQ/uewh1t4bsvSRYgB6qA6GweP9wHAa89O942yjs7DuNrykL4kmakOBDSUCiYETUfFvIlG/rkUbKWzLPvqXoeRK50ZRwOnclnKZOBjjdGBJbHGLFkSd6PfcIQLeXs/LEoawOrM0eEHnbOvaLsG7AuB0SG4pa5sPbbbCvz8xl8spLa+GnShzBKdi6kADkbTd7sBY6PobUdBszvorAzFhPgGfKn+GRYBnPzoI5Txg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=P3zIBIuGb8KGWhXmZX8dUVmFYzDyYv51fNu/5Rqmt0w=; b=HTqHDco1gnDWfakt+jpG/ZGcL29rdJAgn1dBvBBCPMLK/21ujI0gmlu06FU0Y4ew1h2lsZalQING3DO80QoYqXx2K3dQnuOQIv7LJBm7596m/86Pj0Ub0/V5IKhTVVQn5nGT3kuups3j94XyFtPLkGqrbQ/EzsZuJgyWiUkAGHuE7RLTxzxVO4r8e/kDGEPdyUhW6iYzjok+ptOUKNmaTe2o0x+PZPaetEYbOaJU/jsPNC3NApmdqAFogAvAMNJZC+VJ+IhQ89oiV7/1qTPqHTlOaZvfItmppBX8AtJyygD8kxLSnfhEpBfJNtRHdtp2qGDB17KcUHck2tCj5mMzCA== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by DM8P223MB0031.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4801.17; Mon, 20 Dec 2021 01:23:24 +0000 Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::9c8d:fc63:9488:9775]) by DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::9c8d:fc63:9488:9775%7]) with mapi id 15.20.4801.020; Mon, 20 Dec 2021 01:23:24 +0000 From: Soft Works To: "ffmpegdev@gitmailbox.com" Subject: RE: [PATCH] avcodec/vpp_qsv: copy side data from input to output frame Thread-Topic: [PATCH] avcodec/vpp_qsv: copy side data from input to output frame Thread-Index: AQHX9T41m3PXEbDBzkSe812aDWdkcqw6lcHA Date: Mon, 20 Dec 2021 01:23:23 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-tmn: [JIKF9DKPQwRPeugDAFM2moyYPQJsLmXS] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 0c13407c-9335-4f41-2ade-08d9c357512b x-ms-traffictypediagnostic: DM8P223MB0031:EE_ x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ZuQTakVg43kjiP7UzW7Euoqt0BRTlx/40zJUfcSqhlt15irlogxHPSSi+3RdrrQ5PENxDr8IEsRZV24DIUEU9go3VG0fVfsCTQAe7MMC3jKoJIP0V1yDgqZdnn2JDEQvrjw6ZGGVrJf7BQ4WYcBXTf50e2GswFztMBLBLrsnTprFZsg7TcUwpMDL0wF2m3cus8dq6zC8H8Qqt53H7zIxM4OY+m7uD+cR6lRIZf/h0UQaAnoFPaNJu+S4sWs08Eib90SoB11wGznCNiwb6+We26BHReis+deepA+6iU72AbK69QTa2juu8aekLGWHxpABE8SiatDTi2i+weNuAe1KuxtfS2HlP+AxENNGeBgU9yrnGfaGJXEPb0ku9OKBeY8gUCsE4/VFOHzQv+jX/pf5zJE/+7Zo4/KqmdR0jT9aLno61cUqI8UmkpV+70B/M0Ap15L3fqxF3HCl6cS/2RzrM9/DxXu/o0osUcOCq9l4eDDO2PV0UpFr574wMSnd7sDpaiixE3RCG4SqDJGPxQG6ui4D6tXeFEyav3wvAppN7/AkpgTvmefLg66eokGPfG7d4t6FEQBTZSHOh1YYbqRcb0SHBQftIJw+P8s5i0BbBjyEnWzAuBOpdVpJI3EcMSDIRYZ0EzCcrD0dw1d+N4TfeW8h3N1hkgTYDUzeE7anafg= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dUx4ZXhQdy9YSldXUWtaSVhtbC80YUZZQUtiY1hKRGZ4dVB5em1sNVp2dDBy?= =?utf-8?B?ejBLeWxwVS9mYmZzODB3MnJSVkZ1dzFXRU9uZkRmdnBNUUhNZnFlMXJrU0pD?= =?utf-8?B?bFo1Z1loN2YrTmtYYlZpdnJCemtJUm91eHp3cGw1QkcxQVMvaktxNkhvcDg1?= =?utf-8?B?NTVMSG9DdlRERXgxZFUwWjE2Tmh0ZEtPRGxRWHdpK0FuRlVRYlRwL2FnSVY5?= =?utf-8?B?Q3B0RHV5VjFyQURCTkxJS2M2MDdoaG53RjJ5QXB1Y085Y09lUGUrRGoxK3k0?= =?utf-8?B?RzZwRml2bHFlZ3NBaU9maTkrVEpJYkg2RHNBMitXZEUyNXVCVkw2QytEcTlG?= =?utf-8?B?c2lSK2VzdUlsRk5sSjlLUFBzTWVjbGZRMkU2WVdmbGtTK1NBTnIvblRyQ0Nt?= =?utf-8?B?c3Z4NzNuZG1WY2VUanJwblVIOGZmRjBGMEwramNwM2cyay95NExkLzh0bXAy?= =?utf-8?B?U1RXOVprYXlkRllIUjJOa1BBYlNjNVZxQWsyeThzdHBEcVZCQVRoV2NYaVlj?= =?utf-8?B?RXBuNjZZRk1PL2s4MGticXJBQjc3VnZvVGsranpuS2p6ZUlDOHVkUzlaZjEy?= =?utf-8?B?Zk9GZk9BUVkyWkIwb0gxSytTMVNtbnk1Q1R5bGRsOEkvMUtpbHBKNXdJMDRr?= =?utf-8?B?S01hc1hjNUJQUDlCRDJ4aGtLMXM0anlEQ3lpaHhseU5paUEybkNMVHdTcU5B?= =?utf-8?B?M21Ibkt3ZUVXK2JuT3o2Qk11VS9MWVJlYnhZOW1UK2pob0VEV3NKVWMvQmpK?= =?utf-8?B?aUFGVGZBRWoxekVEVC94d3dLT0tmNEw3L3FVMEpNNjUwSDhIazJCMWZJeHBr?= =?utf-8?B?ZzE4SXZqTUNkVVl6bEZOYXZYOUJxTTRnaWEydElmVnVkZ0tERDVpTWdHSTF2?= =?utf-8?B?NDgwT096V1lnRXhwWSttZVc5ZUNFTTlOd0hIaDU1SEVQRUh1QitSOFNpaGsv?= =?utf-8?B?b2tkMGlWQUxHald1dXB2a3R3alZYa1U1dGxRdUp1TUsyNEhNc01UbVNtajNI?= =?utf-8?B?NE5MTTVPRDBCeTlkbjUvT0VhaE9rSU9LOUxCNlBNK1RWRStqY2x3UXJKSTB2?= =?utf-8?B?OWJvbVBzNWo4aklXN3l5WHZXVnc4RTYwSTQxM0VHYVNPcDRuY1RZcXVoZzZz?= =?utf-8?B?bGNoVFlqTFhpOXN0MWZ2aCtuVmIwajRpb0dsbXovRjVOTjl5MjRCSGsxenY1?= =?utf-8?B?ZytDblFUMGJsSEJ2WEZHdWlmTVdQRjl1SmpMZXk3WUYxeVNrbUMwSUJGQWt4?= =?utf-8?B?OHR4UUJWbmt4M0RST2VvRk1nU0tBbXpBSEFUZUxqUkFsT3BiZz09?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-1ff67.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 0c13407c-9335-4f41-2ade-08d9c357512b X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Dec 2021 01:23:24.0074 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8P223MB0031 Archived-At: List-Archive: List-Post: SGFsbG8sDQoNCmRpZXMgaXMgZWluIFRlc3QNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0t LQ0KPiBGcm9tOiBmZm1wZWdhZ2VudCA8ZmZtcGVnYWdlbnRAZ21haWwuY29tPg0KPiBTZW50OiBN b25kYXksIERlY2VtYmVyIDIwLCAyMDIxIDI6MDkgQU0NCj4gVG86IHNvZnR3b3JrekBob3RtYWls LmNvbQ0KPiBDYzogc29mdHdvcmt6IDxzb2Z0d29ya3pAaG90bWFpbC5jb20+OyBzb2Z0d29ya3og PHNvZnR3b3JrekBob3RtYWlsLmNvbT4NCj4gU3ViamVjdDogW1BBVENIXSBhdmNvZGVjL3ZwcF9x c3Y6IGNvcHkgc2lkZSBkYXRhIGZyb20gaW5wdXQgdG8gb3V0cHV0IGZyYW1lDQo+IA0KPiBGcm9t OiBzb2Z0d29ya3ogPHNvZnR3b3JrekBob3RtYWlsLmNvbT4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6 IHNvZnR3b3JreiA8c29mdHdvcmt6QGhvdG1haWwuY29tPg0KPiAtLS0NCj4gICAgIFFTVjogQ29w eSBzaWRlIGRhdGEgZnJvbSBpbnB1dCB0byBvdXRwdXQgZnJhbWUNCj4gDQo+ICAgICAoY2hlcnJ5 IHBpY2tlZCBmcm9tIGNvbW1pdCBhZTU1NmZhZmU4YTBkM2I4YTFmZmI3ZjY0MGMwYWJmMjkwNDI0 MTM5KQ0KPiANCj4gUHVibGlzaGVkLUFzOiBodHRwczovL2dpdGh1Yi5jb20vZmZzdGFnaW5nL0ZG bXBlZy9yZWxlYXNlcy90YWcvcHItZmZzdGFnaW5nLQ0KPiAxMCUyRnNvZnR3b3JreiUyRmFzZl9m aXhlcy12MQ0KPiBGZXRjaC1JdC1WaWE6IGdpdCBmZXRjaCBodHRwczovL2dpdGh1Yi5jb20vZmZz dGFnaW5nL0ZGbXBlZyBwci1mZnN0YWdpbmctDQo+IDEwL3NvZnR3b3Jrei9hc2ZfZml4ZXMtdjEN Cj4gUHVsbC1SZXF1ZXN0OiBodHRwczovL2dpdGh1Yi5jb20vZmZzdGFnaW5nL0ZGbXBlZy9wdWxs LzEwDQo+IA0KPiAgbGliYXZmaWx0ZXIvcXN2dnBwLmMgICAgICAgICB8ICA1ICsrKysNCj4gIGxp YmF2ZmlsdGVyL3ZmX292ZXJsYXlfcXN2LmMgfCAxOSArKysrKysrKystLS0NCj4gIGxpYmF2dXRp bC9mcmFtZS5jICAgICAgICAgICAgfCA1NyArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0t LS0tLS0NCj4gIGxpYmF2dXRpbC9mcmFtZS5oICAgICAgICAgICAgfCAxMiArKysrKysrKw0KPiAg NCBmaWxlcyBjaGFuZ2VkLCA2NCBpbnNlcnRpb25zKCspLCAyOSBkZWxldGlvbnMoLSkNCj4gDQo+ IGRpZmYgLS1naXQgYS9saWJhdmZpbHRlci9xc3Z2cHAuYyBiL2xpYmF2ZmlsdGVyL3FzdnZwcC5j DQo+IGluZGV4IGQxMjE4MzU1YzcuLmIyOTEyMTYyOTIgMTAwNjQ0DQo+IC0tLSBhL2xpYmF2Zmls dGVyL3FzdnZwcC5jDQo+ICsrKyBiL2xpYmF2ZmlsdGVyL3FzdnZwcC5jDQo+IEBAIC04NDksNiAr ODQ5LDExIEBAIGludCBmZl9xc3Z2cHBfZmlsdGVyX2ZyYW1lKFFTVlZQUENvbnRleHQgKnMsDQo+ IEFWRmlsdGVyTGluayAqaW5saW5rLCBBVkZyYW1lICpwaWNyDQo+ICAgICAgICAgICAgICAgICAg cmV0dXJuIEFWRVJST1IoRUFHQUlOKTsNCj4gICAgICAgICAgICAgIGJyZWFrOw0KPiAgICAgICAg ICB9DQo+ICsNCj4gKyAgICAgICAgcmV0ID0gYXZfZnJhbWVfY29weV9zaWRlX2RhdGEob3V0X2Zy YW1lLT5mcmFtZSwgaW5fZnJhbWUtPmZyYW1lLCAwKTsNCj4gKyAgICAgICAgaWYgKHJldCA8IDAp DQo+ICsgICAgICAgICAgICByZXR1cm4gcmV0Ow0KPiArDQo+ICAgICAgICAgIG91dF9mcmFtZS0+ ZnJhbWUtPnB0cyA9IGF2X3Jlc2NhbGVfcShvdXRfZnJhbWUtDQo+ID5zdXJmYWNlLkRhdGEuVGlt ZVN0YW1wLA0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ZGVmYXVsdF90Yiwgb3V0bGluay0NCj4gPnRpbWVfYmFzZSk7DQo+IA0KPiBkaWZmIC0tZ2l0IGEv bGliYXZmaWx0ZXIvdmZfb3ZlcmxheV9xc3YuYyBiL2xpYmF2ZmlsdGVyL3ZmX292ZXJsYXlfcXN2 LmMNCj4gaW5kZXggN2U3NmIzOWFhOS4uMDI1MThlMDIwYyAxMDA2NDQNCj4gLS0tIGEvbGliYXZm aWx0ZXIvdmZfb3ZlcmxheV9xc3YuYw0KPiArKysgYi9saWJhdmZpbHRlci92Zl9vdmVybGF5X3Fz di5jDQo+IEBAIC0yMzEsMTMgKzIzMSwyNCBAQCBzdGF0aWMgaW50IHByb2Nlc3NfZnJhbWUoRkZG cmFtZVN5bmMgKmZzKQ0KPiAgew0KPiAgICAgIEFWRmlsdGVyQ29udGV4dCAgKmN0eCA9IGZzLT5w YXJlbnQ7DQo+ICAgICAgUVNWT3ZlcmxheUNvbnRleHQgICpzID0gZnMtPm9wYXF1ZTsNCj4gKyAg ICBBVkZyYW1lICAgICAgICpmcmFtZTAgPSBOVUxMOw0KPiAgICAgIEFWRnJhbWUgICAgICAgICpm cmFtZSA9IE5VTEw7DQo+IC0gICAgaW50ICAgICAgICAgICAgICAgcmV0ID0gMCwgaTsNCj4gKyAg ICBpbnQgICAgICAgICAgICAgICByZXQgPSAwOw0KPiANCj4gLSAgICBmb3IgKGkgPSAwOyBpIDwg Y3R4LT5uYl9pbnB1dHM7IGkrKykgew0KPiArICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBj dHgtPm5iX2lucHV0czsgaSsrKSB7DQo+ICAgICAgICAgIHJldCA9IGZmX2ZyYW1lc3luY19nZXRf ZnJhbWUoZnMsIGksICZmcmFtZSwgMCk7DQo+IC0gICAgICAgIGlmIChyZXQgPT0gMCkNCj4gLSAg ICAgICAgICAgIHJldCA9IGZmX3FzdnZwcF9maWx0ZXJfZnJhbWUocy0+cXN2LCBjdHgtPmlucHV0 c1tpXSwgZnJhbWUpOw0KPiArDQo+ICsgICAgICAgIGlmIChyZXQgPT0gMCkgew0KPiArICAgICAg ICAgICAgQVZGcmFtZSAqdGVtcDsNCj4gKw0KPiArICAgICAgICAgICAgaWYgKGkgPT0gMCkNCj4g KyAgICAgICAgICAgICAgICBmcmFtZTAgPSBmcmFtZTsNCj4gKyAgICAgICAgICAgIGVsc2UNCj4g KyAgICAgICAgICAgICAgICByZXQgPSBhdl9mcmFtZV9jb3B5X3NpZGVfZGF0YShmcmFtZSwgZnJh bWUwLCAwKTsNCj4gKw0KPiArICAgICAgICAgICAgcmV0ID0gcmV0IDwgMCA/IHJldCA6IGZmX3Fz dnZwcF9maWx0ZXJfZnJhbWUocy0+cXN2LCBjdHgtDQo+ID5pbnB1dHNbaV0sIGZyYW1lKTsNCj4g KyAgICAgICAgfQ0KPiArDQo+ICAgICAgICAgIGlmIChyZXQgPCAwICYmIHJldCAhPSBBVkVSUk9S KEVBR0FJTikpDQo+ICAgICAgICAgICAgICBicmVhazsNCj4gICAgICB9DQo+IGRpZmYgLS1naXQg YS9saWJhdnV0aWwvZnJhbWUuYyBiL2xpYmF2dXRpbC9mcmFtZS5jDQo+IGluZGV4IDA5MTJhZDkx MzEuLmI2ODljOGE3YzkgMTAwNjQ0DQo+IC0tLSBhL2xpYmF2dXRpbC9mcmFtZS5jDQo+ICsrKyBi L2xpYmF2dXRpbC9mcmFtZS5jDQo+IEBAIC0yNTMsNiArMjUzLDM2IEBAIGludCBhdl9mcmFtZV9n ZXRfYnVmZmVyKEFWRnJhbWUgKmZyYW1lLCBpbnQgYWxpZ24pDQo+ICAgICAgcmV0dXJuIEFWRVJS T1IoRUlOVkFMKTsNCj4gIH0NCj4gDQo+ICtpbnQgYXZfZnJhbWVfY29weV9zaWRlX2RhdGEoQVZG cmFtZSogZHN0LCBjb25zdCBBVkZyYW1lKiBzcmMsIGludA0KPiBmb3JjZV9jb3B5KQ0KPiArew0K PiArICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBzcmMtPm5iX3NpZGVfZGF0YTsgaSsrKSB7 DQo+ICsgICAgICAgIGNvbnN0IEFWRnJhbWVTaWRlRGF0YSAqc2Rfc3JjID0gc3JjLT5zaWRlX2Rh dGFbaV07DQo+ICsgICAgICAgIEFWRnJhbWVTaWRlRGF0YSAqc2RfZHN0Ow0KPiArICAgICAgICBp ZiAoICAgc2Rfc3JjLT50eXBlID09IEFWX0ZSQU1FX0RBVEFfUEFOU0NBTg0KPiArICAgICAgICAg ICAgJiYgKHNyYy0+d2lkdGggIT0gZHN0LT53aWR0aCB8fCBzcmMtPmhlaWdodCAhPSBkc3QtPmhl aWdodCkpDQo+ICsgICAgICAgICAgICBjb250aW51ZTsNCj4gKyAgICAgICAgaWYgKGZvcmNlX2Nv cHkpIHsNCj4gKyAgICAgICAgICAgIHNkX2RzdCA9IGF2X2ZyYW1lX25ld19zaWRlX2RhdGEoZHN0 LCBzZF9zcmMtPnR5cGUsDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHNkX3NyYy0+c2l6ZSk7DQo+ICsgICAgICAgICAgICBpZiAoIXNkX2RzdCkgew0KPiAr ICAgICAgICAgICAgICAgIHdpcGVfc2lkZV9kYXRhKGRzdCk7DQo+ICsgICAgICAgICAgICAgICAg cmV0dXJuIEFWRVJST1IoRU5PTUVNKTsNCj4gKyAgICAgICAgICAgIH0NCj4gKyAgICAgICAgICAg IG1lbWNweShzZF9kc3QtPmRhdGEsIHNkX3NyYy0+ZGF0YSwgc2Rfc3JjLT5zaXplKTsNCj4gKyAg ICAgICAgfSBlbHNlIHsNCj4gKyAgICAgICAgICAgIEFWQnVmZmVyUmVmICpyZWYgPSBhdl9idWZm ZXJfcmVmKHNkX3NyYy0+YnVmKTsNCj4gKyAgICAgICAgICAgIHNkX2RzdCA9IGF2X2ZyYW1lX25l d19zaWRlX2RhdGFfZnJvbV9idWYoZHN0LCBzZF9zcmMtPnR5cGUsDQo+IHJlZik7DQo+ICsgICAg ICAgICAgICBpZiAoIXNkX2RzdCkgew0KPiArICAgICAgICAgICAgICAgIGF2X2J1ZmZlcl91bnJl ZigmcmVmKTsNCj4gKyAgICAgICAgICAgICAgICB3aXBlX3NpZGVfZGF0YShkc3QpOw0KPiArICAg ICAgICAgICAgICAgIHJldHVybiBBVkVSUk9SKEVOT01FTSk7DQo+ICsgICAgICAgICAgICB9DQo+ ICsgICAgICAgIH0NCj4gKyAgICAgICAgYXZfZGljdF9jb3B5KCZzZF9kc3QtPm1ldGFkYXRhLCBz ZF9zcmMtPm1ldGFkYXRhLCAwKTsNCj4gKyAgICB9DQo+ICsgICAgcmV0dXJuIDA7DQo+ICt9DQo+ ICsNCj4gIHN0YXRpYyBpbnQgZnJhbWVfY29weV9wcm9wcyhBVkZyYW1lICpkc3QsIGNvbnN0IEFW RnJhbWUgKnNyYywgaW50DQo+IGZvcmNlX2NvcHkpDQo+ICB7DQo+ICAgICAgaW50IHJldCwgaTsN Cj4gQEAgLTI5MSwzMSArMzIxLDggQEAgc3RhdGljIGludCBmcmFtZV9jb3B5X3Byb3BzKEFWRnJh bWUgKmRzdCwgY29uc3QgQVZGcmFtZQ0KPiAqc3JjLCBpbnQgZm9yY2VfY29weSkNCj4gDQo+ICAg ICAgYXZfZGljdF9jb3B5KCZkc3QtPm1ldGFkYXRhLCBzcmMtPm1ldGFkYXRhLCAwKTsNCj4gDQo+ IC0gICAgZm9yIChpID0gMDsgaSA8IHNyYy0+bmJfc2lkZV9kYXRhOyBpKyspIHsNCj4gLSAgICAg ICAgY29uc3QgQVZGcmFtZVNpZGVEYXRhICpzZF9zcmMgPSBzcmMtPnNpZGVfZGF0YVtpXTsNCj4g LSAgICAgICAgQVZGcmFtZVNpZGVEYXRhICpzZF9kc3Q7DQo+IC0gICAgICAgIGlmICggICBzZF9z cmMtPnR5cGUgPT0gQVZfRlJBTUVfREFUQV9QQU5TQ0FODQo+IC0gICAgICAgICAgICAmJiAoc3Jj LT53aWR0aCAhPSBkc3QtPndpZHRoIHx8IHNyYy0+aGVpZ2h0ICE9IGRzdC0+aGVpZ2h0KSkNCj4g LSAgICAgICAgICAgIGNvbnRpbnVlOw0KPiAtICAgICAgICBpZiAoZm9yY2VfY29weSkgew0KPiAt ICAgICAgICAgICAgc2RfZHN0ID0gYXZfZnJhbWVfbmV3X3NpZGVfZGF0YShkc3QsIHNkX3NyYy0+ dHlwZSwNCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Rf c3JjLT5zaXplKTsNCj4gLSAgICAgICAgICAgIGlmICghc2RfZHN0KSB7DQo+IC0gICAgICAgICAg ICAgICAgd2lwZV9zaWRlX2RhdGEoZHN0KTsNCj4gLSAgICAgICAgICAgICAgICByZXR1cm4gQVZF UlJPUihFTk9NRU0pOw0KPiAtICAgICAgICAgICAgfQ0KPiAtICAgICAgICAgICAgbWVtY3B5KHNk X2RzdC0+ZGF0YSwgc2Rfc3JjLT5kYXRhLCBzZF9zcmMtPnNpemUpOw0KPiAtICAgICAgICB9IGVs c2Ugew0KPiAtICAgICAgICAgICAgQVZCdWZmZXJSZWYgKnJlZiA9IGF2X2J1ZmZlcl9yZWYoc2Rf c3JjLT5idWYpOw0KPiAtICAgICAgICAgICAgc2RfZHN0ID0gYXZfZnJhbWVfbmV3X3NpZGVfZGF0 YV9mcm9tX2J1Zihkc3QsIHNkX3NyYy0+dHlwZSwNCj4gcmVmKTsNCj4gLSAgICAgICAgICAgIGlm ICghc2RfZHN0KSB7DQo+IC0gICAgICAgICAgICAgICAgYXZfYnVmZmVyX3VucmVmKCZyZWYpOw0K PiAtICAgICAgICAgICAgICAgIHdpcGVfc2lkZV9kYXRhKGRzdCk7DQo+IC0gICAgICAgICAgICAg ICAgcmV0dXJuIEFWRVJST1IoRU5PTUVNKTsNCj4gLSAgICAgICAgICAgIH0NCj4gLSAgICAgICAg fQ0KPiAtICAgICAgICBhdl9kaWN0X2NvcHkoJnNkX2RzdC0+bWV0YWRhdGEsIHNkX3NyYy0+bWV0 YWRhdGEsIDApOw0KPiAtICAgIH0NCj4gKyAgICBpZiAocmV0ID0gYXZfZnJhbWVfY29weV9zaWRl X2RhdGEoZHN0LCBzcmMsIGZvcmNlX2NvcHkpIDwgMCkNCj4gKyAgICAgICAgcmV0dXJuIHJldDsN Cj4gDQo+ICAgICAgcmV0ID0gYXZfYnVmZmVyX3JlcGxhY2UoJmRzdC0+b3BhcXVlX3JlZiwgc3Jj LT5vcGFxdWVfcmVmKTsNCj4gICAgICByZXQgfD0gYXZfYnVmZmVyX3JlcGxhY2UoJmRzdC0+cHJp dmF0ZV9yZWYsIHNyYy0+cHJpdmF0ZV9yZWYpOw0KPiBkaWZmIC0tZ2l0IGEvbGliYXZ1dGlsL2Zy YW1lLmggYi9saWJhdnV0aWwvZnJhbWUuaA0KPiBpbmRleCAzZjI5NWY2YjllLi42MWE1MTEwYmVl IDEwMDY0NA0KPiAtLS0gYS9saWJhdnV0aWwvZnJhbWUuaA0KPiArKysgYi9saWJhdnV0aWwvZnJh bWUuaA0KPiBAQCAtODIyLDYgKzgyMiwxOCBAQCBpbnQgYXZfZnJhbWVfY29weShBVkZyYW1lICpk c3QsIGNvbnN0IEFWRnJhbWUgKnNyYyk7DQo+ICAgKi8NCj4gIGludCBhdl9mcmFtZV9jb3B5X3By b3BzKEFWRnJhbWUgKmRzdCwgY29uc3QgQVZGcmFtZSAqc3JjKTsNCj4gDQo+ICsvKioNCj4gKyAq IENvcHkgb25seSBzaWRlLWRhdGEgZnJvbSBzcmMgdG8gZHN0Lg0KPiArICoNCj4gKyAqIEBwYXJh bSBkc3QgYSBmcmFtZSB0byB3aGljaCB0aGUgc2lkZSBkYXRhIHNob3VsZCBiZSBjb3BpZWQuDQo+ ICsgKiBAcGFyYW0gc3JjIGEgZnJhbWUgZnJvbSB3aGljaCB0byBjb3B5IHRoZSBzaWRlIGRhdGEu DQo+ICsgKiBAcGFyYW0gZm9yY2VfY29weSBkZXRlcm1pbmVzIHdoZXRoZXIgdG8gY29weSB0aGUg YWN0dWFsIGRhdGEgb3Igb25seSBqdXN0DQo+ICsgKiAgICAgICAgY3JlYXRlIHJlZmVyZW5jZXMg dG8gdGhlIGJ1ZmZlcnMuDQo+ICsgKg0KPiArICogQHJldHVybiA+PSAwIG9uIHN1Y2Nlc3MsIGEg bmVnYXRpdmUgQVZFUlJPUiBvbiBlcnJvci4NCj4gKyAqLw0KPiAraW50IGF2X2ZyYW1lX2NvcHlf c2lkZV9kYXRhKEFWRnJhbWUqIGRzdCwgY29uc3QgQVZGcmFtZSogc3JjLCBpbnQNCj4gZm9yY2Vf Y29weSk7DQo+ICsNCj4gIC8qKg0KPiAgICogR2V0IHRoZSBidWZmZXIgcmVmZXJlbmNlIGEgZ2l2 ZW4gZGF0YSBwbGFuZSBpcyBzdG9yZWQgaW4uDQo+ICAgKg0KPiANCj4gYmFzZS1jb21taXQ6IDEx YWE5Y2ExNTNkNDQ0Njg4N2ZmM2ViZDI2ZTVhM2MyNDNhMTlkODANCj4gLS0NCj4gZ2l0Z2l0Z2Fk Z2V0DQo=