From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id E60944261C for ; Tue, 24 May 2022 13:41:57 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 6426568B47C; Tue, 24 May 2022 16:41:55 +0300 (EEST) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12olkn2032.outbound.protection.outlook.com [40.92.22.32]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A321668A6C2 for ; Tue, 24 May 2022 16:41:48 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LBiuDZVK8YAs/FwOnJW3NKkNm9YYrV93/1L4M/91heYdp6KCfxFYDNb36GPiqGBcaTqsvNAT2aHbwFJ92GfT0s2a+eugJdXwIuk5bJq99IGTy0eJWdK65zB+YgCYrCrh1JOGuvNbeej7FT7OFDNLDSCqb0ZNOutlV0wIMdigftELJ4lVvsaY0N7918eD5Lx+yTGVT+sAmj14bgWCIJSuCojG0z2l5TCfMeA+ckHHkehyRPJT1MJJJnTGH4MiLrA5VMiXF1c62teerHs9oHMCZJDSUlNyHsMY312OAcs6soRUk6xvsJJrnLCOHnwGVLe4bUigIZp79/yITRiF+k10AA== 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=wvsuYF2vpDwsbwqwlgOvkG0qP6I/D1Xql0FUdemDGNo=; b=Et8pscozZm49Txja8JNPysqNFMxmID/E1xvlmTiQ7ZTd1i6K3uxD4aai3/qBUaazCrX4kMt6T+ZPFZpmBZ6H+HWiOJ2TMw1fORKQdqCwTfHlCXgWOEDB4apqdtRrYHH4W/ZOICsZV+C5nOQOYTSKsNDk2zRCfCk4OfA6F3gSp3aJ0afYX6nGVh/WCK4HtVCdvBM+O0HN6jrxSClyrXGfjUUJFvqJIY8rKDJfLPJQhNN9xBAqHKwBS22cdRXoTwct0yIO/D//Toajkn/Xd59CCjtaYJOdnJp6gcsSSL9lr9qsnW+XlzowsG4IvANFryMaD3MYpZPTAH/kLYVOrrVMTA== 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=wvsuYF2vpDwsbwqwlgOvkG0qP6I/D1Xql0FUdemDGNo=; b=QG9SR53RjXiGFy83gWSgEoE4L/RcaiwKXKMJYquLZgg7XFr9Jq0QPMV8q91imJNm8Tx9KcZbGeB6rVr1WlinNw6Vk455B2MJqlhrqdmEi1NneLh2VMoNOD6sMYTmCzC8RpyXBFkbABMH+eLvC0XddsheZAEpq3bUC9rmS04vnHHDVlBNqvfFzjD/Y0PzYenYYN5hG16DNf9BTuxrtGFi1pYCVD41C6o9Xgn5XOAANibjlHR16ZPwDWmysqbWQVDjut7uYfPuwYb7XVHy8WMWHgp6ByCk02NnRULGMm1SbxeC7tgk+Q1v55vd/UmhjVgkG/+iLXKt8BYqIWwQbv58Qw== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by BL3P223MB0009.NAMP223.PROD.OUTLOOK.COM (2603:10b6:208:348::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5273.14; Tue, 24 May 2022 13:41:45 +0000 Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::c536:493f:7cda:53dc]) by DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::c536:493f:7cda:53dc%3]) with mapi id 15.20.5273.023; Tue, 24 May 2022 13:41:44 +0000 From: Soft Works To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH v5 2/2] avformat/os_support: Support long file names on Windows Thread-Index: AQHYb0papJvtAAwdf0ug/lBO8AorRa0twSqAgAAAyjCAABC/gIAABQcQgAAL3ICAAA158IAACD+AgAABOWA= Date: Tue, 24 May 2022 13:41:44 +0000 Message-ID: References: <5313aeec0ee25dfe6255d75e37db29e436c906fb.1653381808.git.ffmpegagent@gmail.com> <4ada51e4-2dc8-76a3-31a9-a98f5f3a7d7@martin.st> <82336d75-db8e-53b2-79a8-78bae51d5ee0@martin.st> In-Reply-To: <82336d75-db8e-53b2-79a8-78bae51d5ee0@martin.st> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-tmn: [OEJl1rmU8tQdu/ghbxcfG6wv3EZrxZau] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 3fa06a18-7caf-44e6-ae34-08da3d8b248a x-ms-traffictypediagnostic: BL3P223MB0009:EE_ x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: qzqhXM1A2RZw4ws/rM2lIRh2jaHCPguEmqfgpihj1O/maG3q//R4D1SBcQeYX2mxTEYjQaPeSXXKCiAHFYjWFltlcsJWOkCJqTk5syX7b1Bd5bXWlzsaDa87Q7uILf9tkcVN3F5jF/imNkIrU6Wd8wH1EYtpDVWXRi9mAYBUogr9m7Nv5+wk/lF3i2O547laokYggzbY5IRbLHJ7Obr2D/wt4M/mEkwtsSHq2MN+BPceMTe8SW5R1NteJGAT8uNax5octm1y9wip5VgBHwKFGM/hdLJtWKEIRbFOxPoXAoxuOBfVhHvwkWZ/QlrngnBEXhw+E9hY38XkwHP9TyQ1LvZcbs0DLO66WOh3ZmJMcXbVCI7PJ9PwnGSbk4sVSWMkEFDQv+4BT/DDPh/KKjCdg6zMC1jNBFAX7ju8OUGvefbGQLvBZoZeblgrHL0/O886WbyS97hARuo0V1Zqq8NpKsH2MSl4QDXI8H28GkDYa1gVTDAB82z1CA40A6wiiQA5uKpYqOOCvTrICu1t0/12kyVRlGWRa1aol5LFUYi7y4PxObxctbjIRKX2cBYODjOxL/VNP0HIvgPAsdt+sj/wOp4xx0L64T4w1w9DiDMTsb8dOHFfaxsT+RMFuD7JvUoW x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Zm9VcDQvNG1uNXJOVlBhWUdYdFRRZHdRQTc1ZFZ3MXdXckVOckNGUWI5cUh3?= =?utf-8?B?UE1JdTZWbGZpVTJ0cDUvWmV6WXBDczdVaWxEV3I5dFB4WTRkTDFuMENaWFNr?= =?utf-8?B?cW1zS3J6dENaaTJwSjM2NC9za2hVY0tJU2FJNlcwSjdCVEoydWRVajdmei9F?= =?utf-8?B?RFBKUDNRamFUVTlOb0plZEwzUW1KTEN5VlZYMEx1RWMvNFNnejc0b002b1RT?= =?utf-8?B?YVc0Qy9pa0ZnclZsWnBOWU9TbkJtNW0xcTY4eEVsRG1ER0hXNHlFNTFabnc3?= =?utf-8?B?T2t0bWZNTWJ6SXp6dE5nckY2L1hoMjR0ekJKdWJlbHU4MVBmcDhuSUh3R3Q0?= =?utf-8?B?dThFNldwQWluaEkzcGR6OE5SMkl2UzJKeER0WWZLS0JhTVFaN29Id1E5bWtp?= =?utf-8?B?MnZmVkR1SWpkWmNQMmJocitWQW1tRDhJaTgxZElQNjRKTVJLT3RvZGx0YlBX?= =?utf-8?B?dkdzK25VRWVBenVOK1JOLzdTV244WmM2Z05RNVBuVVFDaVM0Z0haRTkzYmI3?= =?utf-8?B?WktLMTE0MUcrWXVHcmVYQ2Q1TDRLS29xOVdpYmhBdU12S2llMVhhTlp0akRn?= =?utf-8?B?SHAxNXhoWUo4U1p4WWp6TGlMbWtrWS94MlErUDFQa2Job3BhWnhKMVlBZXY5?= =?utf-8?B?ZE1SQnJZOVhuVlBGZUlZY0lTenlnZy81eUk5TzZCWmkxd09zWm0wQmQreU9j?= =?utf-8?B?dUpxYnV5K250V3ltT0VsQ0l6enZwQVA4dXhLbGZwUG1SV2RzdkozRUluVnBa?= =?utf-8?B?VnorR05uSklFRnROQnppNW9venN2V09ibjQrTTR4QUpUVWpHODkzOXBWanJY?= =?utf-8?B?bmFLV2c0MnlTaUpTdU9nTTJ4Z3hvVVpQTTl5ZnQ5UUhOT3FKU0lRUDBBcC9N?= =?utf-8?B?QzZvVHJ2aG5peGdoZmhaSG96ME0wdXlTc0V1WHpnV3YvUmZWL3FJLzVwZm94?= =?utf-8?B?MXhOWnA3cWw3c3ZHbjFrbllVWWVqVDFPbEtLYzVPZDVFckh0bUZGdlhxbFQ0?= =?utf-8?B?OWtCVkdrRnl3bTZTS3MwQnZ3S3Eyam9BWUsvUmtLU0hpZzZQaDZCYjZPamVv?= =?utf-8?B?bUdZU0V1RklOUlhsSm5Rc3ZCeEZXT2wrNXBUQTlpcDR3RFdJUkcxMklGK3Fy?= =?utf-8?B?QU5jazJXTFNFZU0rRytDVGZjOHhxejZCMS9DTFJRRDFiamlHTGxQeUJUNnRK?= =?utf-8?B?N01JTmoyVFVMeUVrbDBNVmtnUVp3L0hOZHR2M2t0YWhHK3p6LzcwQ1J1U0xJ?= =?utf-8?B?OEZVS0JsSFVtMzd1bThpSG5ZdlIyeW81TFp5c0dVZVJQQjhOOUhCZWZGSTVm?= =?utf-8?B?ZUNlNG0rVEFpWERXelZHMW9VaGdodkZXd1RBa1VXR2lvTHpMd1crd1FiUDRz?= =?utf-8?B?QlB0a0JsRDB4MUd5ZHFGL21qMzhrUURGWGNQc212alFYeitZM0JJV1FVZkd5?= =?utf-8?B?bHdCN3NmaUdlR0Y3SGxUb0t4L0o0VU52Y3NhK3lpbWI4b2ovM0c1bGtWTXRQ?= =?utf-8?B?UjVWREZFb0F6WDlMckdyZzJkTU5TdHFaTE9aVm4xcFRSOTFYaUlmbERMSjNS?= =?utf-8?B?S2hsMTFpM2dDdjErMGNYLzhUd3JOUENmSXV2Si80RExtY2tGTmg3bW53cFpi?= =?utf-8?B?NkRpUkw0QnNad2xIQ1RyYSt6NnczS1dEbWY0NVR3ZjdoZDNCaXlNcFRKaGwx?= =?utf-8?B?NEFCN1JXSUd1cllqOG13OGFydFNXWW9yM1hUU3oxaDBvS1YvOVJPL2wwNWV5?= =?utf-8?B?V1grTjNXZzIwa29ZWVFWYXArNHo5QzFQWGM5U09mTWdHcVlyenV4MFBWN3h3?= =?utf-8?B?UUw1OEVFeTg5VXFPSDlLUE4rTDdMYXdYN3d0Y1hyV2hMR2pwMkJqTUo0bHR5?= =?utf-8?B?Um5RaXgyT21KYTBHQUlkZkZQMWZzRFl0SncyTTIzUzV3UnFIcUpHSC9RYUND?= =?utf-8?Q?lemdojWEicI=3D?= 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: 3fa06a18-7caf-44e6-ae34-08da3d8b248a X-MS-Exchange-CrossTenant-originalarrivaltime: 24 May 2022 13:41:44.9007 (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: BL3P223MB0009 Subject: Re: [FFmpeg-devel] [PATCH v5 2/2] avformat/os_support: Support long file names on Windows X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Hendrik Leppkes Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZmZtcGVnLWRldmVsIDxm Zm1wZWctZGV2ZWwtYm91bmNlc0BmZm1wZWcub3JnPiBPbiBCZWhhbGYgT2YgTWFydGluDQo+IFN0 b3JzasO2DQo+IFNlbnQ6IFR1ZXNkYXksIE1heSAyNCwgMjAyMiAyOjQ0IFBNDQo+IFRvOiBTb2Z0 IFdvcmtzIDxzb2Z0d29ya3pAaG90bWFpbC5jb20+DQo+IENjOiBIZW5kcmlrIExlcHBrZXMgPGgu bGVwcGtlc0BnbWFpbC5jb20+OyBGRm1wZWcgZGV2ZWxvcG1lbnQgZGlzY3Vzc2lvbnMNCj4gYW5k IHBhdGNoZXMgPGZmbXBlZy1kZXZlbEBmZm1wZWcub3JnPg0KPiBTdWJqZWN0OiBSZTogW0ZGbXBl Zy1kZXZlbF0gW1BBVENIIHY1IDIvMl0gYXZmb3JtYXQvb3Nfc3VwcG9ydDogU3VwcG9ydA0KPiBs b25nIGZpbGUgbmFtZXMgb24gV2luZG93cw0KPiANCj4gT24gVHVlLCAyNCBNYXkgMjAyMiwgU29m dCBXb3JrcyB3cm90ZToNCj4gDQo+ID4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+ IEZyb206IE1hcnRpbiBTdG9yc2rDtiA8bWFydGluQG1hcnRpbi5zdD4NCj4gPj4gU2VudDogVHVl c2RheSwgTWF5IDI0LCAyMDIyIDE6MjYgUE0NCj4gPj4gVG86IFNvZnQgV29ya3MgPHNvZnR3b3Jr ekBob3RtYWlsLmNvbT4NCj4gPj4gQ2M6IEZGbXBlZyBkZXZlbG9wbWVudCBkaXNjdXNzaW9ucyBh bmQgcGF0Y2hlcyA8ZmZtcGVnLQ0KPiBkZXZlbEBmZm1wZWcub3JnPjsNCj4gPj4gSGVuZHJpayBM ZXBwa2VzIDxoLmxlcHBrZXNAZ21haWwuY29tPg0KPiA+PiBTdWJqZWN0OiBSRTogW0ZGbXBlZy1k ZXZlbF0gW1BBVENIIHY1IDIvMl0gYXZmb3JtYXQvb3Nfc3VwcG9ydDogU3VwcG9ydA0KPiA+PiBs b25nIGZpbGUgbmFtZXMgb24gV2luZG93cw0KPiA+Pg0KPiA+PiBPbiBUdWUsIDI0IE1heSAyMDIy LCBTb2Z0IFdvcmtzIHdyb3RlOg0KPiA+Pg0KPiA+Pj4+IGJ1dCBDbGFuZyBkb2Vzbid0LiAoSXQn cyBwb3NzaWJsZSB0byB1c2UgaXQNCj4gPj4+PiBpbiBDbGFuZyB0b28gaWYgeW91IGVuYWJsZSBp dCB3aXRoIC1mbXMtZXh0ZW5zaW9ucyB0aG91Z2guKQ0KPiA+Pj4NCj4gPj4+IElzIGl0IHBvc3Np YmxlIHRvIGNvbXBpbGUgZmZtcGVnIGZvciBXaW5kb3dzIHVzaW5nIENsYW5nPw0KPiA+Pj4gQW5k IGlmIHllcywgZG9lcyBpdCBldmVuIHdvcmsgd2l0aG91dCB0aGF0IGZsYWc/DQo+ID4+PiAoYXNz dW1pbmcgaXQgd2FzIGludHJvZHVjZWQgaW4gb3JkZXIgdG8gYmUgYWJsZSB0bw0KPiA+Pj4gY29t cGlsZSBXaW5kb3dzIHN0dWZmKS4NCj4gPj4NCj4gPj4gWWVzLCBpdCBpcyBwb3NzaWJsZSB0byBi dWlsZCBpdCB3aXRoIENsYW5nIHdpdGhvdXQgYW55IGN1c3RvbSBleHRyYQ0KPiBmbGFncw0KPiA+ PiB0byBlbmFibGUgbm9uZGVmYXVsdCBtb2Rlcy4gSW4gZmFjdCwgaXQncyB0ZXN0ZWQgY29udGlu dW91c2x5IG9uIEZBVEUNCj4gdG9vOg0KPiA+Pg0KPiA+PiBodHRwOi8vZmF0ZS5mZm1wZWcub3Jn L2hpc3RvcnkuY2dpP3Nsb3Q9eDg2XzY0LW1pbmd3MzItY2xhbmctdHJ1bmsNCj4gPj4NCj4gPj4g QWxzbyBmb3Igb3RoZXIgYXJjaGl0ZWN0dXJlcywgZS5nLjoNCj4gPj4NCj4gPj4gaHR0cDovL2Zh dGUuZmZtcGVnLm9yZy9oaXN0b3J5LmNnaT9zbG90PWFhcmNoNjQtbWluZ3czMi1jbGFuZy10cnVu aw0KPiA+DQo+ID4NCj4gPiBPSywgdGhhbmtzIGZvciB0aGUgcG9pbnRlcnMuIEknbSBub3Qgc3Vy ZSB3aGV0aGVyIGl0IHdvdWxkIGJlDQo+ID4gYWNjZXB0YWJsZSB0byByZXF1aXJlIHRoaXMgY29t cGlsYXRpb24gZmxhZyBmb3IgV2luZG93cyBidWlsZHM/DQo+IA0KPiBJIHdvdWxkIHZlcnkgbXVj aCBwcmVmZXIgbm90IHRvIHJlcXVpcmUgYWRkaW5nIC1mbXMtZXh0ZW5zaW9ucyB3aGVuDQo+IGJ1 aWxkaW5nIHdpdGggQ2xhbmcgLSB0aGF0IG9wdGlvbiB1bmxvY2tzIGEgbG90IG9mIHN0dWZmIHRo YXQgd2UgZ2VuZXJhbGx5DQo+IHNob3VsZG4ndCBiZSBlbmFibGluZy4NCg0KT0ssIHN1cmUsIGl0 IGFsd2F5cyBzbWVsbHMgd2hlbiBkb2luZyBzb21ldGhpbmcgbGlrZSB0aGF0IGp1c3QgdG8NCmFj aGlldmUgYSBzaW5nbGUgdGhpbmcuDQoNCj4gDQo+ID4gQ2FuIHlvdSB0aGluayBvZiBhbnkgb3Ro ZXIgaWRlYXM/DQo+IA0KPiBSaWdodCBub3csIG1haW5seSBkb2luZyBhICNkZWZpbmUgZmZfc3Rh dF9zdHJ1Y3Qgd2hpY2ggd291bGQgcmVxdWlyZQ0KPiB1cGRhdGluZyB0aGUgY2FsbGluZyBjb2Rl LiBJdCdzIG5vdCBpZGVhbCBidXQgd29yc2UgdGhpbmdzIGhhdmUgYmVlbiBkb25lDQo+IGFueXdh eSAodGhlcmUncyBub3QgdGhhdCBtYW55IHN0YXQgY2FsbHMpLg0KPiANCj4gSSB3YXMgZXhwbG9y aW5nIHRoZSBpZGVhIG9mIGp1c3QgcmVkZWZpbmluZyB0aGUgc3RydWN0LCBidXQgZS5nLiAidHlw ZWRlZg0KPiBzdHJ1Y3QgX3N0YXRpNjQgd2luMzJfc3RhdCIsIGJ1dCB0aGF0IG9ubHkgd29ya3Mg d2hlbiByZWZlcnJpbmcgdG8gdGhlDQo+IHR5cGUgYXMgIndpbjMyX3N0YXQiLCBub3QgInN0cnVj dCB3aW4zMl9zdGF0Ii4gU28gdGhhdCBkb2Vzbid0IHNlZW0gbGlrZSBhDQo+IGdvb2QgcGF0aCBm b3J3YXJkIGVpdGhlci4NCj4gDQo+IEknZCBwcmVmZXIgdG8gc2xvdyBkb3duIGFuZCB0aGluayBt b3JlIGFib3V0IG90aGVyIGFsdGVybmF0aXZlcyBoZXJlLA0KPiByYXRoZXIgdGhhbiBydXNoaW5n IGZvcndhcmQgd2l0aCBhZGRpbmcgLWZtcy1leHRlbnNpb25zLg0KDQpJIGhhdmUgYSBuZXcgaWRl YSwgc2VlIGJlbG93DQoNCj4gQWxzbyBub3RlIHRoYXQgY3VycmVudGx5LCB3ZSBkb24ndCBldmVu IGhhdmUgYSBwcm9wZXIgYXV0b21hdGljIHJlZGlyZWN0DQo+IGZyb20gc3RhdCB0byB3aW4zMl9z dGF0LCBzZWUgdGhlIGlmZGVmIGluIGxpYmF2Zm9ybWF0L2ZpbGUuYy4gDQoNClllcywgdGhhdCBj YW4gYmUgZHJvcHBlZCAob25jZSB3ZSBnb3QgaXQpLi4uDQoNCg0KV2hhdCBkbyB5b3UgdGhpbmsg b2YgdGhlIGZvbGxvd2luZzoNCg0KV2UgY291bGQgZGVmaW5lIG91ciBvd24gd2luMzJfc3RhdCBz dHJ1Y3QsIGJ1dCBub3QgaW4gYSB3YXkgdGhhdCBtYXRjaGVzDQp0aGUgV2luZG93cyBBUEksIGp1 c3QgbWF0Y2hpbmcgdGhlIFBPU0lYIGRlZmluaXRpb24gKGxpa2UgdGhlIGNvbnN1bWluZyANCmNv ZGUgZXhwZWN0cyksIGUuZy46DQoNCnN0cnVjdCB3aW5fMzJzdGF0IHsNCiAgICBkZXZfdCAgICAg ICAgICBzdF9kZXY7ICAgICAvKiBJRCBvZiBkZXZpY2UgY29udGFpbmluZyBmaWxlICovDQogICAg aW5vX3QgICAgICAgICAgc3RfaW5vOyAgICAgLyogaW5vZGUgbnVtYmVyICovDQogICAgdW5zaWdu ZWQgc2hvcnQgc3RfbW9kZTsgICAgLyogcHJvdGVjdGlvbiAqLw0KICAgIHNob3J0ICAgICAgICAg IHN0X25saW5rOyAgIC8qIG51bWJlciBvZiBoYXJkIGxpbmtzICovDQogICAgc2hvcnQgICAgICAg ICAgc3RfdWlkOyAgICAgLyogdXNlciBJRCBvZiBvd25lciAqLw0KICAgIHNob3J0ICAgICAgICAg IHN0X2dpZDsgICAgIC8qIGdyb3VwIElEIG9mIG93bmVyICovDQogICAgZGV2X3QgICAgICAgICAg c3RfcmRldjsgICAgLyogZGV2aWNlIElEIChpZiBzcGVjaWFsIGZpbGUpICovDQogICAgb2ZmX3Qg ICAgICAgICAgc3Rfc2l6ZTsgICAgLyogdG90YWwgc2l6ZSwgaW4gYnl0ZXMgKi8NCiAgICB0aW1l X3QgICAgICAgICBzdF9hdGltZTsgICAvKiB0aW1lIG9mIGxhc3QgYWNjZXNzICovDQogICAgdGlt ZV90ICAgICAgICAgc3RfbXRpbWU7ICAgLyogdGltZSBvZiBsYXN0IG1vZGlmaWNhdGlvbiAqLw0K ICAgIHRpbWVfdCAgICAgICAgIHN0X2N0aW1lOyAgIC8qIHRpbWUgb2YgbGFzdCBzdGF0dXMgY2hh bmdlICovDQp9Ow0KDQpBbmQgdGhlbiwgaW4gb3VyIHdpbjMyX3N0YXQoKSBmdW5jdGlvbiwgd2Ug Y2FsbCB0aGUgd2luIGFwaSB3aXRoDQp0aGUgInJpZ2h0IiBzdHJ1Y3QgYW5kIHNpbXBseSBjb3B5 IG92ZXIgdGhlIHZhbHVlcy4uOg0KDQpzdGF0aWMgaW50IHdpbjMyX3N0YXQoY29uc3QgY2hhciAq ZmlsZW5hbWVfdXRmOCwgc3RydWN0IHN0YXQgKnBhcikNCnsNCiAgICB3Y2hhcl90ICpmaWxlbmFt ZV93Ow0KICAgIGludCByZXQ7DQogICAgc3RydWN0IF9zdGF0aTY0IHdpbnN0YXQ7DQoNCiAgICBp ZiAoZ2V0X2V4dGVuZGVkX3dpbjMyX3BhdGgoZmlsZW5hbWVfdXRmOCwgJmZpbGVuYW1lX3cpKQ0K ICAgICAgICByZXR1cm4gLTE7DQoNCiAgICBpZiAoZmlsZW5hbWVfdykgew0KICAgICAgICByZXQg PSBfd3N0YXQ2NChmaWxlbmFtZV93LCAmd2luc3RhdCk7DQogICAgICAgIGF2X2ZyZWUoZmlsZW5h bWVfdyk7DQogICAgfSBlbHNlDQogICAgICAgIHJldCA9IF9zdGF0NjQoZmlsZW5hbWVfdXRmOCwg JndpbnN0YXQpOw0KDQogICAgcGFyLT5zdF9kZXYgICA9IHdpbnN0YXQuc3RfZGV2Ow0KICAgIHBh ci0+c3RfaW5vICAgPSB3aW5zdGF0LnN0X2lubzsNCiAgICBwYXItPnN0X21vZGUgID0gd2luc3Rh dC5zdF9tb2RlOw0KICAgIHBhci0+c3RfbmxpbmsgPSB3aW5zdGF0LnN0X25saW5rOw0KICAgIHBh ci0+c3RfdWlkICAgPSB3aW5zdGF0LnN0X3VpZDsNCiAgICBwYXItPnN0X2dpZCAgID0gd2luc3Rh dC5zdF9naWQ7DQogICAgcGFyLT5zdF9yZGV2ICA9IHdpbnN0YXQuc3RfcmRldjsNCiAgICBwYXIt PnN0X3NpemUgID0gd2luc3RhdC5zdF9zaXplOw0KICAgIHBhci0+c3RfYXRpbWUgPSB3aW5zdGF0 LnN0X2F0aW1lOw0KICAgIHBhci0+c3RfbXRpbWUgPSB3aW5zdGF0LnN0X210aW1lOw0KICAgIHBh ci0+c3RfY3RpbWUgPSB3aW5zdGF0LnN0X2N0aW1lOw0KDQogICAgcmV0dXJuIHJldDsNCn0NCg0K VGhpcyB3b3VsZCBiZSBzYWZlIGFuZCB3aXRob3V0IGFueSB3ZWlyZG5lc3MgKGp1c3QgYSBiaXQg bW9yZQ0KY29kZSkuDQoNCldoYXQgZG8geW91IHRoaW5rIGFib3V0IGl0Pw0KDQoNClRoYW5rcywN CnN3DQoNCg0KDQoNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKaHR0 cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVnLWRldmVsCgpUbyB1bnN1YnNj cmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3IgZW1haWwKZmZtcGVnLWRldmVsLXJlcXVlc3RAZmZt cGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4K