From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mailout06.t-online.de (mailout06.t-online.de [194.25.134.19]) by sourceware.org (Postfix) with ESMTPS id 05AD13857C48 for ; Fri, 14 May 2021 07:27:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 05AD13857C48 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=t-online.de Authentication-Results: sourceware.org; spf=none smtp.mailfrom=Christian.Franke@t-online.de Received: from fwd33.aul.t-online.de (fwd33.aul.t-online.de [172.20.27.144]) by mailout06.t-online.de (Postfix) with SMTP id 23918BBD7C for ; Fri, 14 May 2021 09:27:30 +0200 (CEST) Received: from [192.168.2.105] (V8eaROZcwh9nY2M0mubyf3dvL00ISxBDoCLmxTGHObdUdR9bbhE8hXCiNkzockwZUZ@[79.230.169.184]) by fwd33.t-online.de with (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384 encrypted) esmtp id 1lhSEL-23rSwy0; Fri, 14 May 2021 09:27:29 +0200 Subject: Re: [PATCH setup] Add new option '--compact-os' To: "cygwin-apps@cygwin.com" References: <5d57a3f5-b595-2196-12ed-1c409d46be2a@t-online.de> <02f5ecb0-433b-262d-f56e-c5394c5f07bd@dronecode.org.uk> <97cd8370-dd40-4536-e98c-453b71d119d5@dronecode.org.uk> From: Christian Franke Message-ID: <4b45c450-75af-1ac4-0bd6-86ad0211dcba@t-online.de> Date: Fri, 14 May 2021 09:27:29 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 SeaMonkey/2.53.6 MIME-Version: 1.0 In-Reply-To: <97cd8370-dd40-4536-e98c-453b71d119d5@dronecode.org.uk> Content-Type: multipart/mixed; boundary="------------B7D8A1E62F0AF50E083915C7" X-ID: V8eaROZcwh9nY2M0mubyf3dvL00ISxBDoCLmxTGHObdUdR9bbhE8hXCiNkzockwZUZ X-TOI-EXPURGATEID: 150726::1620977249-00013209-EAE3EC25/0/0 CLEAN NORMAL X-TOI-MSGID: c2e1c57b-cd8b-49dd-a63a-b3fcb0dbaecf X-Spam-Status: No, score=-8.5 required=5.0 tests=BAYES_00, FREEMAIL_FROM, GIT_PATCH_0, KAM_DMARC_STATUS, KAM_LAZY_DOMAIN_SECURITY, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: cygwin-apps@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin package maintainer discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 May 2021 07:27:34 -0000 This is a multi-part message in MIME format. --------------B7D8A1E62F0AF50E083915C7 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Jon Turney wrote: > On 12/05/2021 18:50, Christian Franke wrote: >> Jon Turney wrote: >>> On 08/05/2021 21:03, Christian Franke wrote: >>> ... >>>> +#include "compactos.h" >>>> + >>>> +#ifndef FSCTL_SET_EXTERNAL_BACKING >>> >>> There should be a comment here saying "not yet provided by w32api" >>> or similar. >> >> ... or we wait for a release of w32api headers with the patch >> mentioned above :-) > > No, I think this way is better, since I build the setup releases on > Fedora, and so don't have any control about when the w32api package > I'm building against gets updated > > (and furthermore it's an old Fedora at the moment, since the x86 MinGW > toolchain in recent Fedora isn't built with SJLJ exception handling...) > I see. BTW: Mingw-w64 upstream pushed my patch yesterday. Attached is a new patch for setup which also allows to select the compression algorithm. --------------B7D8A1E62F0AF50E083915C7 Content-Type: text/plain; charset=UTF-8; name="0001-Add-new-option-compact-os-ALGORITHM.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-Add-new-option-compact-os-ALGORITHM.patch" RnJvbSBkNjVkYjhkY2JlM2IwN2EwNmFkYmY1NDg0ZGNiNWFiOThlMTY1YjA0IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDaHJpc3RpYW4gRnJhbmtlIDxjaHJpc3RpYW4uZnJh bmtlQHQtb25saW5lLmRlPgpEYXRlOiBGcmksIDE0IE1heSAyMDIxIDA5OjEwOjA2ICswMjAw ClN1YmplY3Q6IFtQQVRDSF0gQWRkIG5ldyBvcHRpb24gJy0tY29tcGFjdC1vcyBBTEdPUklU SE0nLgoKSWYgc3BlY2lmaWVkLCBzZWxlY3RlZCBDb21wYWN0IE9TIGNvbXByZXNzaW9uIGFs Z29yaXRobSBpcyBhcHBsaWVkCnRvIGZpbGVzIGJlbG93IC9iaW4sIC9zYmluIGFuZCAvdXNy LiAgTW9zdCBETEwgZmlsZXMgYXJlIGV4Y2x1ZGVkCmJlY2F1c2UgcmViYXNlIHdpbGwgb3Bl biB0aGVzZSBmaWxlcyBhZ2FpbiBmb3Igd3JpdGluZy4KLS0tCiBNYWtlZmlsZS5hbSAgICAg ICAgICB8ICAyICsKIGNvbXBhY3Rvcy5jYyAgICAgICAgIHwgNjMgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKwogY29tcGFjdG9zLmggICAgICAgICAgfCAyNSArKysrKysrKysr KysrCiBpb19zdHJlYW1fY3lnZmlsZS5jYyB8IDg4ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKystCiBpb19zdHJlYW1fY3lnZmlsZS5oICB8ICAyICsKIDUg ZmlsZXMgY2hhbmdlZCwgMTc4IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVh dGUgbW9kZSAxMDA2NDQgY29tcGFjdG9zLmNjCiBjcmVhdGUgbW9kZSAxMDA2NDQgY29tcGFj dG9zLmgKCmRpZmYgLS1naXQgYS9NYWtlZmlsZS5hbSBiL01ha2VmaWxlLmFtCmluZGV4IGQx MGFkNmIuLjYzZTk2ZGEgMTAwNjQ0Ci0tLSBhL01ha2VmaWxlLmFtCisrKyBiL01ha2VmaWxl LmFtCkBAIC0xMDgsNiArMTA4LDggQEAgaW5pbGludF9TT1VSQ0VTID0gXAogCWFyY2hpdmVf dGFyX2ZpbGUuY2MgXAogCWNob29zZS5jYyBcCiAJY2hvb3NlLmggXAorCWNvbXBhY3Rvcy5j YyBcCisJY29tcGFjdG9zLmggXAogCWNvbXByZXNzLmNjIFwKIAljb21wcmVzcy5oIFwKIAlj b21wcmVzc19iei5jYyBcCmRpZmYgLS1naXQgYS9jb21wYWN0b3MuY2MgYi9jb21wYWN0b3Mu Y2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWVkMmE3MwotLS0gL2Rl di9udWxsCisrKyBiL2NvbXBhY3Rvcy5jYwpAQCAtMCwwICsxLDYzIEBACisvLworLy8gY29t cGFjdG9zLmNjCisvLworLy8gQ29weXJpZ2h0IChDKSAyMDIxIENocmlzdGlhbiBGcmFua2UK Ky8vCisvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUCisvLworCisjaW5jbHVkZSAi Y29tcGFjdG9zLmgiCisKKy8qIE5vdCB5ZXQgcHJvdmlkZWQgYnkgdzMyYXBpIGhlYWRlcnMu ICovCisjaWZuZGVmIEZTQ1RMX1NFVF9FWFRFUk5BTF9CQUNLSU5HCisjZGVmaW5lIEZTQ1RM X1NFVF9FWFRFUk5BTF9CQUNLSU5HIFwKKyAgQ1RMX0NPREUoRklMRV9ERVZJQ0VfRklMRV9T WVNURU0sIDE5NSwgTUVUSE9EX0JVRkZFUkVELCBGSUxFX1NQRUNJQUxfQUNDRVNTKQorI2Vu ZGlmCisKKyNpZm5kZWYgV09GX0NVUlJFTlRfVkVSU0lPTgorI2RlZmluZSBXT0ZfQ1VSUkVO VF9WRVJTSU9OIDEKKwordHlwZWRlZiBzdHJ1Y3QgX1dPRl9FWFRFUk5BTF9JTkZPIHsKKyAg RFdPUkQgVmVyc2lvbjsKKyAgRFdPUkQgUHJvdmlkZXI7Cit9IFdPRl9FWFRFUk5BTF9JTkZP OworCisjZW5kaWYKKworI2lmbmRlZiBXT0ZfUFJPVklERVJfRklMRQorI2RlZmluZSBXT0Zf UFJPVklERVJfRklMRSAyCisjZGVmaW5lIEZJTEVfUFJPVklERVJfQ1VSUkVOVF9WRVJTSU9O IDEKKwordHlwZWRlZiBzdHJ1Y3QgX0ZJTEVfUFJPVklERVJfRVhURVJOQUxfSU5GT19WMSB7 CisgIERXT1JEIFZlcnNpb247CisgIERXT1JEIEFsZ29yaXRobTsKKyAgRFdPUkQgRmxhZ3M7 Cit9IEZJTEVfUFJPVklERVJfRVhURVJOQUxfSU5GT19WMTsKKworI2VuZGlmCisKKyNpZm5k ZWYgRVJST1JfQ09NUFJFU1NJT05fTk9UX0JFTkVGSUNJQUwKKyNkZWZpbmUgRVJST1JfQ09N UFJFU1NJT05fTk9UX0JFTkVGSUNJQUwgMzQ0CisjZW5kaWYKKworaW50IENvbXBhY3RPc0Nv bXByZXNzRmlsZShIQU5ETEUgaCwgRFdPUkQgYWxnb3JpdGhtKQoreworICBzdHJ1Y3Qgewor ICAgIFdPRl9FWFRFUk5BTF9JTkZPIFdvZjsKKyAgICBGSUxFX1BST1ZJREVSX0VYVEVSTkFM X0lORk9fVjEgRmlsZVByb3ZpZGVyOworICB9IHdmcDsKKyAgd2ZwLldvZi5WZXJzaW9uID0g V09GX0NVUlJFTlRfVkVSU0lPTjsKKyAgd2ZwLldvZi5Qcm92aWRlciA9IFdPRl9QUk9WSURF Ul9GSUxFOworICB3ZnAuRmlsZVByb3ZpZGVyLlZlcnNpb24gPSBGSUxFX1BST1ZJREVSX0NV UlJFTlRfVkVSU0lPTjsKKyAgd2ZwLkZpbGVQcm92aWRlci5BbGdvcml0aG0gPSBhbGdvcml0 aG07CisgIHdmcC5GaWxlUHJvdmlkZXIuRmxhZ3MgPSAwOworCisgIGlmICghRGV2aWNlSW9D b250cm9sKGgsIEZTQ1RMX1NFVF9FWFRFUk5BTF9CQUNLSU5HLCAmd2ZwLCBzaXplb2Yod2Zw KSwgMCwgMCwgMCwgMCkpCisgICAgeworICAgICAgaWYgKEdldExhc3RFcnJvcigpICE9IEVS Uk9SX0NPTVBSRVNTSU9OX05PVF9CRU5FRklDSUFMKQorICAgICAgICByZXR1cm4gLTE7Cisg ICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgcmV0dXJuIDE7Cit9CmRpZmYgLS1naXQgYS9j b21wYWN0b3MuaCBiL2NvbXBhY3Rvcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAuLmYxODc3MTgKLS0tIC9kZXYvbnVsbAorKysgYi9jb21wYWN0b3MuaApAQCAtMCww ICsxLDI1IEBACisvLworLy8gY29tcGFjdG9zLmgKKy8vCisvLyBDb3B5cmlnaHQgKEMpIDIw MjEgQ2hyaXN0aWFuIEZyYW5rZQorLy8KKy8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBN SVQKKy8vCisKKyNpZm5kZWYgQ09NUEFDVE9TX0gKKyNkZWZpbmUgQ09NUEFDVE9TX0gKKwor I2luY2x1ZGUgPHdpbmRvd3MuaD4KKworLyogTm90IHlldCBwcm92aWRlZCBieSB3MzJhcGkg aGVhZGVycy4gKi8KKyNpZm5kZWYgRklMRV9QUk9WSURFUl9DT01QUkVTU0lPTl9YUFJFU1M0 SworI2RlZmluZSBGSUxFX1BST1ZJREVSX0NPTVBSRVNTSU9OX1hQUkVTUzRLICAwCisjZGVm aW5lIEZJTEVfUFJPVklERVJfQ09NUFJFU1NJT05fTFpYICAgICAgIDEKKyNkZWZpbmUgRklM RV9QUk9WSURFUl9DT01QUkVTU0lPTl9YUFJFU1M4SyAgMgorI2RlZmluZSBGSUxFX1BST1ZJ REVSX0NPTVBSRVNTSU9OX1hQUkVTUzE2SyAzCisjZW5kaWYKKworLy8gUmV0dXJuczogMT1j b21wcmVzc2VkLCAwPW5vdCBjb21wcmVzc2VkLCAtMT1lcnJvcgoraW50IENvbXBhY3RPc0Nv bXByZXNzRmlsZShIQU5ETEUgaCwgRFdPUkQgYWxnb3JpdGhtKTsKKworI2VuZGlmIC8vIENP TVBBQ1RPU19ICmRpZmYgLS1naXQgYS9pb19zdHJlYW1fY3lnZmlsZS5jYyBiL2lvX3N0cmVh bV9jeWdmaWxlLmNjCmluZGV4IDJkMDcxNmYuLjk3ZTcwZGIgMTAwNjQ0Ci0tLSBhL2lvX3N0 cmVhbV9jeWdmaWxlLmNjCisrKyBiL2lvX3N0cmVhbV9jeWdmaWxlLmNjCkBAIC0xOCw2ICsx OCw5IEBACiAjaW5jbHVkZSAiZmlsZW1hbmlwLmgiCiAjaW5jbHVkZSAibWtkaXIuaCIKICNp bmNsdWRlICJtb3VudC5oIgorI2luY2x1ZGUgImNvbXBhY3Rvcy5oIgorCisjaW5jbHVkZSAi Z2V0b3B0KysvU3RyaW5nT3B0aW9uLmgiCiAKICNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNs dWRlIDxlcnJuby5oPgpAQCAtMjcsNiArMzAsNDUgQEAKICNpbmNsdWRlICJJT1N0cmVhbVBy b3ZpZGVyLmgiCiAjaW5jbHVkZSAiTG9nU2luZ2xldG9uLmgiCiAKKy8qIE9wdGlvbiAnLS1j b21wYWN0LW9zIEFMR09SSVRITScgKi8KK2NsYXNzIENvbXBhY3RPc1N0cmluZ09wdGlvbiA6 IHB1YmxpYyBTdHJpbmdPcHRpb24KK3sKK3B1YmxpYzoKKyAgQ29tcGFjdE9zU3RyaW5nT3B0 aW9uICgpOworICB2aXJ0dWFsIFJlc3VsdCBQcm9jZXNzIChjaGFyIGNvbnN0ICpvcHRhcmcs IGludCBwcmVmaXhJbmRleCkgLyogb3ZlcnJpZGUgKi87CisgIG9wZXJhdG9yIGludCAoKSBj b25zdCB7IHJldHVybiBpbnR2YWw7IH0KK3ByaXZhdGU6CisgIGludCBpbnR2YWw7Cit9Owor CitDb21wYWN0T3NTdHJpbmdPcHRpb246OkNvbXBhY3RPc1N0cmluZ09wdGlvbiAoKQorOiBT dHJpbmdPcHRpb24gKCIiLCAnXDAnLCAiY29tcGFjdC1vcyIsCisgICAgIkNvbXByZXNzIGlu c3RhbGxlZCBmaWxlcyB3aXRoIENvbXBhY3QgT1MgIgorICAgICIoeHByZXNzNGssIHhwcmVz czhrLCB4cHJlc3MxNmssIGx6eCkiLCBmYWxzZSksCisgIGludHZhbCAoLTEpCit7Cit9CisK K09wdGlvbjo6UmVzdWx0IENvbXBhY3RPc1N0cmluZ09wdGlvbjo6UHJvY2VzcyAoY2hhciBj b25zdCAqb3B0YXJnLCBpbnQgcHJlZml4SW5kZXgpCit7CisgIFJlc3VsdCByZXMgPSBTdHJp bmdPcHRpb246OlByb2Nlc3MgKG9wdGFyZywgcHJlZml4SW5kZXgpOworICBpZiAocmVzICE9 IE9rKQorICAgIHJldHVybiByZXM7CisgIGNvbnN0IHN0ZDo6c3RyaW5nJiBzdHJ2YWwgPSAq dGhpczsKKyAgaWYgKHN0cnZhbCA9PSAieHByZXNzNGsiKQorICAgIGludHZhbCA9IEZJTEVf UFJPVklERVJfQ09NUFJFU1NJT05fWFBSRVNTNEs7CisgIGVsc2UgaWYgKHN0cnZhbCA9PSAi eHByZXNzOGsiKQorICAgIGludHZhbCA9IEZJTEVfUFJPVklERVJfQ09NUFJFU1NJT05fWFBS RVNTOEs7CisgIGVsc2UgaWYgKHN0cnZhbCA9PSAieHByZXNzMTZrIikKKyAgICBpbnR2YWwg PSBGSUxFX1BST1ZJREVSX0NPTVBSRVNTSU9OX1hQUkVTUzE2SzsKKyAgZWxzZSBpZiAoc3Ry dmFsID09ICJsengiKQorICAgIGludHZhbCA9IEZJTEVfUFJPVklERVJfQ09NUFJFU1NJT05f TFpYOworICBlbHNlCisgICAgcmV0dXJuIEZhaWxlZDsKKyAgcmV0dXJuIE9rOworfQorCitz dGF0aWMgQ29tcGFjdE9zU3RyaW5nT3B0aW9uIENvbXBhY3RPc09wdGlvbjsKIAogLyogY29t cGxldGVseSBwcml2YXRlIGlvc3RyZWFtIHJlZ2lzdHJhdGlvbiBjbGFzcyAqLwogY2xhc3Mg Q3lnRmlsZVByb3ZpZGVyIDogcHVibGljIElPU3RyZWFtUHJvdmlkZXIKQEAgLTU5LDcgKzEw MSw4IEBAIEN5Z0ZpbGVQcm92aWRlciBDeWdGaWxlUHJvdmlkZXI6OnRoZUluc3RhbmNlID0g Q3lnRmlsZVByb3ZpZGVyKCk7CiAKIAogc3RkOjpzdHJpbmcgaW9fc3RyZWFtX2N5Z2ZpbGU6 OmN3ZCgiLyIpOwotICAKK2Jvb2wgaW9fc3RyZWFtX2N5Z2ZpbGU6OmNvbXBhY3Rfb3NfaXNf YXZhaWxhYmxlID0gKE9TTWFqb3JWZXJzaW9uICgpID49IDEwKTsKKwogLy8gTm9ybWFsaXNl IGEgdW5peCBzdHlsZSBwYXRoIHJlbGF0aXZlIHRvIAogLy8gY3dkLgogc3RkOjpzdHJpbmcK QEAgLTEyMCw3ICsxNjMsMjYgQEAgZ2V0X3Jvb3RfZGlyX25vdyAoKQogICByZWFkX21vdW50 cyAoc3RkOjpzdHJpbmcgKCkpOwogfQogCi1pb19zdHJlYW1fY3lnZmlsZTo6aW9fc3RyZWFt X2N5Z2ZpbGUgKGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1lLCBjb25zdCBzdGQ6OnN0cmluZyYg bW9kZSwgbW9kZV90IHBlcm1zKSA6IGZwKCksIGxhc3RlcnIgKDApLCBmbmFtZSgpLCB3bmFt ZSAoTlVMTCkKK3N0YXRpYyBib29sCitjb21wYWN0b3NfaXNfdXNlbGVzcyAoY29uc3Qgc3Rk OjpzdHJpbmcmIG5hbWUpCit7CisgIGNvbnN0IGNoYXIgKiBjb25zdCBwID0gbmFtZS5jX3N0 cigpOworICBpZiAoISghc3RybmNtcCAocCwgIi9iaW4vIiwgNSkgfHwgIXN0cm5jbXAgKHAs ICIvc2Jpbi8iLCA2KSB8fCAhc3RybmNtcCAocCwgIi91c3IvIiwgNSkpKQorICAgIHJldHVy biB0cnVlOyAvKiBGaWxlIGlzIG5vdCBpbiBSL08gdHJlZS4gKi8KKyAgY29uc3Qgc2l6ZV90 IGxlbiA9IG5hbWUuc2l6ZSgpOyAvKiA+PSA1ICovCisgIGlmICghc3RyY21wIChwICsgKGxl biAtIDQpLCAiLmRsbCIpIHx8ICFzdHJjbXAgKHAgKyAobGVuIC0gMyksICIuc28iKSkgewor ICAgIGlmICghc3RyY21wIChwICsgKGxlbiAtIDExKSwgImN5Z3dpbjEuZGxsIikgfHwgc3Ry c3RyIChwICsgNSwgIi9zeXMtcm9vdC9taW5ndy8iKSkKKyAgICAgIHJldHVybiBmYWxzZTsg LyogSWdub3JlZCBieSByZWJhc2UuICovCisgICAgcmV0dXJuIHRydWU7IC8qIFJlYmFzZSB3 aWxsIG9wZW4gZmlsZSBmb3Igd3JpdGluZyB3aGljaCB1bmNvbXByZXNzZXMgdGhlIGZpbGUu ICovCisgIH0KKyAgaWYgKCFzdHJjbXAgKHAgKyAobGVuIC0gNCksICIuYnoyIikgfHwgIXN0 cmNtcCAocCArIChsZW4gLSAzKSwgIi5neiIpCisgICAgICB8fCAhc3RyY21wIChwICsgKGxl biAtIDMpLCAiLnh6IikpCisgICAgcmV0dXJuIHRydWU7IC8qIEZpbGUgaXMgYWxyZWFkeSBj b21wcmVzc2VkLiAqLworICByZXR1cm4gZmFsc2U7Cit9CisKK2lvX3N0cmVhbV9jeWdmaWxl Ojppb19zdHJlYW1fY3lnZmlsZSAoY29uc3Qgc3RkOjpzdHJpbmcmIG5hbWUsIGNvbnN0IHN0 ZDo6c3RyaW5nJiBtb2RlLCBtb2RlX3QgcGVybXMpCis6IGZwKCksIGxhc3RlcnIgKDApLCBm bmFtZSgpLCB3bmFtZSAoTlVMTCksIGNvbXBhY3Rfb3NfYWxnb3JpdGhtKC0xKQogewogICBl cnJubyA9IDA7CiAgIGlmICghbmFtZS5zaXplKCkpCkBAIC0xNTMsNiArMjE1LDEwIEBAIGlv X3N0cmVhbV9jeWdmaWxlOjppb19zdHJlYW1fY3lnZmlsZSAoY29uc3Qgc3RkOjpzdHJpbmcm IG5hbWUsIGNvbnN0IHN0ZDo6c3RyaW5nCiAJTG9nIChMT0dfVElNRVNUQU1QKSA8PCAiaW9f c3RyZWFtX2N5Z2ZpbGU6IGZvcGVuKCIgPDwgbmFtZSA8PCAiKSBmYWlsZWQgIiA8PCBlcnJu byA8PCAiICIKIAkgIDw8IHN0cmVycm9yKGVycm5vKSA8PCBlbmRMb2c7CiAgICAgICB9CisK KyAgICAgIGlmIChtb2RlWzBdID09ICd3JyAmJiBjb21wYWN0X29zX2lzX2F2YWlsYWJsZSAm JiBDb21wYWN0T3NPcHRpb24gPj0gMAorCSAgJiYgIWNvbXBhY3Rvc19pc191c2VsZXNzIChu YW1lKSkKKwljb21wYWN0X29zX2FsZ29yaXRobSA9IENvbXBhY3RPc09wdGlvbjsKICAgICB9 CiB9CiAKQEAgLTM2Nyw2ICs0MzMsMjQgQEAgaW9fc3RyZWFtX2N5Z2ZpbGU6OnNldF9tdGlt ZSAodGltZV90IG10aW1lKQogCQkgICBGSUxFX0FUVFJJQlVURV9OT1JNQUwgfCBGSUxFX0ZM QUdfQkFDS1VQX1NFTUFOVElDUywgMCk7CiAgIGlmIChoID09IElOVkFMSURfSEFORExFX1ZB TFVFKQogICAgIHJldHVybiAxOworCisgIGlmIChjb21wYWN0X29zX2FsZ29yaXRobSA+PSAw KQorICAgIHsKKyAgICAgIC8qIENvbXBhY3QgT1MgbXVzdCBiZSBhcHBsaWVkIGFmdGVyIGxh c3QgV3JpdGVGaWxlKCkKKwkgYW5kIGJlZm9yZSBTZXRGaWxlVGltZSgpLiAqLworICAgICAg aW50IHJjID0gQ29tcGFjdE9zQ29tcHJlc3NGaWxlIChoLCBjb21wYWN0X29zX2FsZ29yaXRo bSk7CisgICAgICBpZiAocmMgPCAwKQorCXsKKwkgIERXT1JEIGVyciA9IEdldExhc3RFcnJv cigpOworCSAgTG9nIChMT0dfVElNRVNUQU1QKSA8PCAiQ29tcGFjdCBPUyBkaXNhYmxlZCBh ZnRlciBlcnJvciAiIDw8IGVycgorCQkJICAgICAgPDwgIiBvbiAiIDw8IGZuYW1lIDw8IGVu ZExvZzsKKwkgIGNvbXBhY3Rfb3NfaXNfYXZhaWxhYmxlID0gZmFsc2U7CisJfQorICAgICAg ZWxzZQorCUxvZyAoTE9HX0JBQkJMRSkgPDwgIkNvbXBhY3QgT1MgYWxnb3JpdGhtICIgPDwg Y29tcGFjdF9vc19hbGdvcml0aG0KKwkJCSA8PCAocmMgPT0gMCA/ICIgbm90IiA6ICIiKSA8 PCAiIGFwcGxpZWQgdG8gIiA8PCBmbmFtZSA8PCBlbmRMb2c7CisgICAgfQorCiAgIFNldEZp bGVUaW1lIChoLCAwLCAwLCAmZnRpbWUpOwogICBDbG9zZUhhbmRsZSAoaCk7CiAgIHJldHVy biAwOwpkaWZmIC0tZ2l0IGEvaW9fc3RyZWFtX2N5Z2ZpbGUuaCBiL2lvX3N0cmVhbV9jeWdm aWxlLmgKaW5kZXggMWVjZTI0Mi4uYjk3NzkwOSAxMDA2NDQKLS0tIGEvaW9fc3RyZWFtX2N5 Z2ZpbGUuaAorKysgYi9pb19zdHJlYW1fY3lnZmlsZS5oCkBAIC02MSw3ICs2MSw5IEBAIHBy aXZhdGU6CiAgIHN0ZDo6c3RyaW5nIGZuYW1lOwogICB3Y2hhcl90ICp3bmFtZTsKICAgd2No YXJfdCAqd19zdHIgKCk7CisgIGludCBjb21wYWN0X29zX2FsZ29yaXRobTsKICAgc3RhdGlj IHN0ZDo6c3RyaW5nIGN3ZDsKKyAgc3RhdGljIGJvb2wgY29tcGFjdF9vc19pc19hdmFpbGFi bGU7CiB9OwogCiAjZW5kaWYgLyogU0VUVVBfSU9fU1RSRUFNX0NZR0ZJTEVfSCAqLwotLSAK Mi4zMS4xCgo= --------------B7D8A1E62F0AF50E083915C7--