From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.2 required=5.0 tests=ALL_TRUSTED, DKIM_ADSP_NXDOMAIN,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.4 Received: (qmail 9873 invoked from network); 22 Jun 2022 22:28:06 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 22 Jun 2022 22:28:06 -0000 Content-Type: multipart/mixed; boundary="===============6029853831255469332==" MIME-Version: 1.0 Subject: =?utf8?q?=5BPR_PATCH=5D_musl=3A_update_realpath/readlink_and_add_gettid?= To: ml@inbox.vuxu.org From: oreo639 Reply-to: ml@inbox.vuxu.org Message-ID: Date: Thu, 23 Jun 2022 00:28:05 +0200 List-Id: GitHub notification mails are now in MIME to allow UTF8. --===============6029853831255469332== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYSBuZXcgcHVsbCByZXF1ZXN0IGJ5IG9yZW82MzkgYWdhaW5zdCBtYXN0ZXIgb24g dGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL29yZW82Mzkv dm9pZC1wYWNrYWdlcyBtdXNsCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFj a2FnZXMvcHVsbC8zNzY0NgoKbXVzbDogdXBkYXRlIHJlYWxwYXRoL3JlYWRsaW5rIGFuZCBhZGQg Z2V0dGlkCjwhLS0gVW5jb21tZW50IHJlbGV2YW50IHNlY3Rpb25zIGFuZCBkZWxldGUgb3B0aW9u cyB3aGljaCBhcmUgbm90IGFwcGxpY2FibGUgLS0+DQoNCiMjIyMgVGVzdGluZyB0aGUgY2hhbmdl cw0KLSBJIHRlc3RlZCB0aGUgY2hhbmdlcyBpbiB0aGlzIFBSOiAqKk5PKioNCg0KRXZlcnl0aGlu ZyBidWlsZHMuDQpUaGUgcmVhbHBhdGgvcmVhZGxpbmsgcGF0Y2hlcyB3ZXJlIHN0YXRlZCB0byBi ZSB3b3JraW5nIGhlcmUgKGxldCBtZSBrbm93IGlmIHRoZXJlIGFyZSBhbnkgaXNzdWVzIHRob3Vn aCk6DQpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMzMz NzINCg0KQWZhaWN0LCB2ZXJ5IGxpdHRsZSByZWxhdGVkIHRvICBgX19wdGhyZWFkX3NlbGYoKS0+ dGlkYCBjaGFuZ2VkLCBidXQgaXQgc2hvdWxkIHN0aWxsIGJlIHRlc3RlZC4NCg0KSSdtIG5vdCBy dW5uaW5nIG11c2wgYXRtIHRob3VnaCBzbyBpdHMgYSBsaXR0bGUgaGFyZCBmb3IgbWUgdG8gdGVz dCBpdCBjdXJyZW50bHkuDQoNCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFj a2FnZXMvcHVsbC8zNzYyOCNpc3N1ZWNvbW1lbnQtMTE2MzYwNzcwMg0KDQo8IS0tDQojIyMjIE5l dyBwYWNrYWdlDQotIFRoaXMgbmV3IHBhY2thZ2UgY29uZm9ybXMgdG8gdGhlIFtxdWFsaXR5IHJl cXVpcmVtZW50c10oaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9i bG9iL21hc3Rlci9NYW51YWwubWQjcXVhbGl0eS1yZXF1aXJlbWVudHMpOiAqKllFUyoqfCoqTk8q Kg0KLS0+DQoNCjwhLS0gTm90ZTogSWYgdGhlIGJ1aWxkIGlzIGxpa2VseSB0byB0YWtlIG1vcmUg dGhhbiAyIGhvdXJzLCBwbGVhc2UgYWRkIGNpIHNraXAgdGFnIGFzIGRlc2NyaWJlZCBpbg0KaHR0 cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9DT05U UklCVVRJTkcubWQjY29udGludW91cy1pbnRlZ3JhdGlvbg0KYW5kIHRlc3QgYXQgbGVhc3Qgb25l IG5hdGl2ZSBidWlsZCBhbmQsIGlmIHN1cHBvcnRlZCwgYXQgbGVhc3Qgb25lIGNyb3NzIGJ1aWxk Lg0KSWdub3JlIHRoaXMgc2VjdGlvbiBpZiB0aGlzIFBSIGlzIG5vdCBza2lwcGluZyBDSS4NCi0t Pg0KPCEtLQ0KIyMjIyBMb2NhbCBidWlsZCB0ZXN0aW5nDQotIEkgYnVpbHQgdGhpcyBQUiBsb2Nh bGx5IGZvciBteSBuYXRpdmUgYXJjaGl0ZWN0dXJlLCAoQVJDSC1MSUJDKQ0KLSBJIGJ1aWx0IHRo aXMgUFIgbG9jYWxseSBmb3IgdGhlc2UgYXJjaGl0ZWN0dXJlcyAoaWYgc3VwcG9ydGVkLiBtYXJr IGNyb3NzYnVpbGRzKToNCiAgLSBhYXJjaDY0LW11c2wNCiAgLSBhcm12N2wNCiAgLSBhcm12Nmwt bXVzbA0KLS0+DQoKCkEgcGF0Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxp bnV4L3ZvaWQtcGFja2FnZXMvcHVsbC8zNzY0Ni5wYXRjaCBpcyBhdHRhY2hlZA== --===============6029853831255469332== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-musl-37646.patch" RnJvbSAxZDQzY2VjMzBjYzliMTQwOTg1MDEwZTUwNzE1NTAyNmI5NzRhYzQ3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBvcmVvNjM5IDwzMTkxNjM3OStPcmVvNjM5QHVzZXJzLm5vcmVw bHkuZ2l0aHViLmNvbT4KRGF0ZTogV2VkLCAyMiBKdW4gMjAyMiAxNToxMjoxMiAtMDcwMApTdWJq ZWN0OiBbUEFUQ0hdIG11c2w6IHVwZGF0ZSByZWFscGF0aC9yZWFkbGluayBhbmQgYWRkIGdldHRp ZAoKLS0tCiBzcmNwa2dzL211c2wvcGF0Y2hlcy9nZXR0aWQucGF0Y2ggICAgICAgICAgICAgfCAg NDkgKysrKwogLi4udGx5X2luc3RlYWRfb2ZfdXNpbmdfcHJvY2ZzX3JlYWRsaW5rLnBhdGNoIHwg MjE5ICsrKysrKysrKysrKysrKysrKwogLi4uaW5fcmVhZGxpbmtfc3lzY2FsbF93aXRoX3plcm9f YnVmZmVyLnBhdGNoIHwgIDU5ICsrKysrCiBzcmNwa2dzL211c2wvdGVtcGxhdGUgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgIDIgKy0KIDQgZmlsZXMgY2hhbmdlZCwgMzI4IGluc2VydGlvbnMo KyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL211c2wvcGF0Y2hl cy9nZXR0aWQucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL211c2wvcGF0Y2hlcy9p bXBsZW1lbnRfcmVhbHBhdGhfZGlyZWN0bHlfaW5zdGVhZF9vZl91c2luZ19wcm9jZnNfcmVhZGxp bmsucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL211c2wvcGF0Y2hlcy93b3JrX2Fy b3VuZF9saW51eF9idWdfaW5fcmVhZGxpbmtfc3lzY2FsbF93aXRoX3plcm9fYnVmZmVyLnBhdGNo CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXNsL3BhdGNoZXMvZ2V0dGlkLnBhdGNoIGIvc3JjcGtn cy9tdXNsL3BhdGNoZXMvZ2V0dGlkLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwMC4uYmI4YmY1OTA1Yjg4Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9tdXNs L3BhdGNoZXMvZ2V0dGlkLnBhdGNoCkBAIC0wLDAgKzEsNDkgQEAKK0Zyb20gZDQ5Y2YwNzU0MWJi NTRhNWFjN2FlYzFmZWVjODUxNGRiMzNkYjhlYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zy b206IFJpY2ggRmVsa2VyIDxkYWxpYXNAYWVyaWZhbC5jeD4KK0RhdGU6IE1vbiwgMTcgQXVnIDIw MjAgMjA6MTI6NTMgLTA0MDAKK1N1YmplY3Q6IFtQQVRDSF0gYWRkIGdldHRpZCBmdW5jdGlvbgor Cit0aGlzIGlzIGEgcHJlcmVxdWlzaXRlIGZvciBhZGRpdGlvbiBvZiBvdGhlciBpbnRlcmZhY2Vz IHRoYXQgdXNlCitrZXJuZWwgdGlkcywgaW5jbHVkaW5nIGZ1dGV4IGFuZCBTSUdFVl9USFJFQURf SUQuCisKK3RoZXJlIGlzIHNvbWUgYW1iaWd1aXR5IGFzIHRvIHdoZXRoZXIgdGhlIHNlbWFudGlj IHJldHVybiB0eXBlIHNob3VsZAorYmUgaW50IG9yIHBpZF90LiBlaXRoZXIgd2F5LCBmdXRleCBB UEkgaW1wb3NlcyBhIGNvbnRyYWN0IHRoYXQgdGhlCit2YWx1ZXMgZml0IGluIGludCAoZXhjbHVk aW5nIHNvbWUgdXBwZXIgcmVzZXJ2ZWQgYml0cykuIGdsaWJjIHVzZWQKK3BpZF90LCBzbyBpbiB0 aGUgaW50ZXJlc3Qgb2Ygbm90IGhhdmluZyBncmF0dWl0b3VzIG1pc21hdGNoICh0aGUKK3VuZGVy bHlpbmcgdHlwZXMgYXJlIHRoZSBzYW1lIGFueXdheSksIHBpZF90IGlzIHVzZWQgaGVyZSBhcyB3 ZWxsLgorCit3aGlsZSBjb25jZXB0dWFsbHkgdGhpcyBpcyBhIHN5c2NhbGwsIHRoZSBjb3B5IHN0 b3JlZCBpbiB0aGUgdGhyZWFkCitzdHJ1Y3R1cmUgaXMgYWx3YXlzIHZhbGlkIGluIGFsbCBjb250 ZXh0cyB3aGVyZSBpdCdzIHZhbGlkIHRvIGNhbGwKK2xpYmMgZnVuY3Rpb25zLCBzbyBpdCdzIHVz ZWQgdG8gYXZvaWQgdGhlIHN5c2NhbGwuCistLS0KKyBpbmNsdWRlL3VuaXN0ZC5oICAgfCAxICsK KyBzcmMvbGludXgvZ2V0dGlkLmMgfCA4ICsrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA5IGlu c2VydGlvbnMoKykKKyBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL2xpbnV4L2dldHRpZC5jCisKK2Rp ZmYgLS1naXQgYS9pbmNsdWRlL3VuaXN0ZC5oIGIvaW5jbHVkZS91bmlzdGQuaAoraW5kZXggN2Jj YmZmOTQzLi4wNzU4NGEyM2UgMTAwNjQ0CistLS0gYS9pbmNsdWRlL3VuaXN0ZC5oCisrKysgYi9p bmNsdWRlL3VuaXN0ZC5oCitAQCAtMTkwLDYgKzE5MCw3IEBAIGludCBzeW5jZnMoaW50KTsKKyBp bnQgZXVpZGFjY2Vzcyhjb25zdCBjaGFyICosIGludCk7CisgaW50IGVhY2Nlc3MoY29uc3QgY2hh ciAqLCBpbnQpOworIHNzaXplX3QgY29weV9maWxlX3JhbmdlKGludCwgb2ZmX3QgKiwgaW50LCBv ZmZfdCAqLCBzaXplX3QsIHVuc2lnbmVkKTsKKytwaWRfdCBnZXR0aWQodm9pZCk7CisgI2VuZGlm CisgCisgI2lmIGRlZmluZWQoX0xBUkdFRklMRTY0X1NPVVJDRSkgfHwgZGVmaW5lZChfR05VX1NP VVJDRSkKK2RpZmYgLS1naXQgYS9zcmMvbGludXgvZ2V0dGlkLmMgYi9zcmMvbGludXgvZ2V0dGlk LmMKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMDAuLjcwNzY3MTM3ZQorLS0t IC9kZXYvbnVsbAorKysrIGIvc3JjL2xpbnV4L2dldHRpZC5jCitAQCAtMCwwICsxLDggQEAKKysj ZGVmaW5lIF9HTlVfU09VUkNFCisrI2luY2x1ZGUgPHVuaXN0ZC5oPgorKyNpbmNsdWRlICJwdGhy ZWFkX2ltcGwuaCIKKysKKytwaWRfdCBnZXR0aWQodm9pZCkKKyt7CisrCXJldHVybiBfX3B0aHJl YWRfc2VsZigpLT50aWQ7CisrfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXNsL3BhdGNoZXMvaW1w bGVtZW50X3JlYWxwYXRoX2RpcmVjdGx5X2luc3RlYWRfb2ZfdXNpbmdfcHJvY2ZzX3JlYWRsaW5r LnBhdGNoIGIvc3JjcGtncy9tdXNsL3BhdGNoZXMvaW1wbGVtZW50X3JlYWxwYXRoX2RpcmVjdGx5 X2luc3RlYWRfb2ZfdXNpbmdfcHJvY2ZzX3JlYWRsaW5rLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uNTY5YTFmNTJjN2NkCi0tLSAvZGV2L251bGwKKysrIGIv c3JjcGtncy9tdXNsL3BhdGNoZXMvaW1wbGVtZW50X3JlYWxwYXRoX2RpcmVjdGx5X2luc3RlYWRf b2ZfdXNpbmdfcHJvY2ZzX3JlYWRsaW5rLnBhdGNoCkBAIC0wLDAgKzEsMjE5IEBACitGcm9tIDI5 ZmY3NTk5YTQ0ODIzMmYyNTI3ODQxYzIzNjI2NDNkMjQ2Y2VlMzYgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCitGcm9tOiBSaWNoIEZlbGtlciA8ZGFsaWFzQGFlcmlmYWwuY3g+CitEYXRlOiBNb24s IDMwIE5vdiAyMDIwIDEyOjE0OjQ3IC0wNTAwCitTdWJqZWN0OiBbUEFUQ0hdIGltcGxlbWVudCBy ZWFscGF0aCBkaXJlY3RseSBpbnN0ZWFkIG9mIHVzaW5nIHByb2NmcyByZWFkbGluaworCitpbmFi aWxpdHkgdG8gdXNlIHJlYWxwYXRoIGluIGNocm9vdC9jb250YWluZXIgd2l0aG91dCBwcm9jZnMg YWNjZXNzCithbmQgYXQgZWFybHkgYm9vdCBwcmlvciB0byBtb3VudCBvZiAvcHJvYyBoYXMgYmVl biBhbiBvbmdvaW5nIGlzc3VlLAorYW5kIGl0IHR1cm5zIG91dCByZWFscGF0aCB3YXMgb25lIG9m IHRoZSBsYXN0IHJlbWFpbmluZyBpbnRlcmZhY2VzCit0aGF0IG5lZWRlZCBwcm9jZnMgZm9yIGl0 cyBjb3JlIGZ1bmN0aW9uYWxpdHkuIGR1cmluZyBpbnZlc3RpZ2F0aW9uCit3aGlsZSByZWltcGxl bWVudGluZywgaXQgd2FzIGRldGVybWluZWQgdGhhdCB0aGVyZSB3ZXJlIGFsc28gc2VyaW91cwor cHJvYmxlbXMgd2l0aCB0aGUgcHJvY2ZzLWJhc2VkIGltcGxlbWVudGF0aW9uLiBtb3N0IHNlcmlv dXNseSBpdCB3YXMKK3Vuc2FmZSBvbiBwcmUtT19QQVRIIGtlcm5lbHMsIGFuZCB1bmxpa2Ugb3Ro ZXIgcGxhY2VzIHdoZXJlIE9fUEFUSCB3YXMKK3VzZWQsIHRoZSB1bnNhZmV0eSB3YXMgaGFyZCBv ciBpbXBvc3NpYmxlIHRvIGZpeCBiZWNhdXNlIE9fTk9GT0xMT1cKK2Nhbid0IGJlIHVzZWQgKHNp bmNlIHRoZSB3aG9sZSBwdXJwb3NlIHdhcyB0byBmb2xsb3cgc3ltbGlua3MpLgorCit0aGUgbmV3 IGltcGxlbWVudGF0aW9uIGlzIGEgZGlyZWN0IG9uZSwgcGVyZm9ybWluZyByZWFkbGluayBvbiBl YWNoCitwYXRoIGNvbXBvbmVudCB0byByZXNvbHZlIGl0LiBhbiBleHBsaWNpdCBzdGFjaywgYXMg b3Bwb3NlZCB0bworcmVjdXJzaW9uLCBpcyB1c2VkIHRvIHJlcHJlc2VudCB0aGUgcmVtYWluaW5n IGNvbXBvbmVudHMgdG8gYmUKK3Byb2Nlc3NlZC4gdGhlIHN0YWNrIHN0YXJ0cyBvdXQgaG9sZGlu ZyBqdXN0IHRoZSBpbnB1dCBzdHJpbmcsIGFuZAorcmVhZGluZyBhIGxpbmsgcHVzaGVzIHRoZSBs aW5rIGNvbnRlbnRzIG9udG8gdGhlIHN0YWNrLgorCit1bmxpa2UgbWFueSBvdGhlciBpbXBsZW1l bnRhdGlvbnMsIHRoaXMgb25lIGRvZXMgbm90IGNhbGwgZ2V0Y3dkCitpbml0aWFsbHkgZm9yIHJl bGF0aXZlIHBhdGhuYW1lcy4gaW5zdGVhZCBpdCBhY2N1bXVsYXRlcyBpbml0aWFsIC4uCitjb21w b25lbnRzIHRvIGJlIGFwcGxpZWQgdG8gdGhlIHdvcmtpbmcgZGlyZWN0b3J5IGlmIHRoZSByZXN1 bHQgaXMKK3N0aWxsIGEgcmVsYXRpdmUgcGF0aC4gdGhpcyBhdm9pZHMgY2FsbGluZyBnZXRjd2Qg KHdoaWNoIG1heSBmYWlsKSBhdAorYWxsIHdoZW4gc3ltbGluayB0cmF2ZXJzYWwgd2lsbCBldmVu dHVhbGx5IHlpZWxkIGFuIGFic29sdXRlIHBhdGguIGl0CithbHNvIGRvZXNuJ3QgdXNlIGFueSBm b3JtIG9mIHN0YXQgb3BlcmF0aW9uOyBpbnN0ZWFkIGl0IGFycmFuZ2VzIGZvcgorcmVhZGxpbmsg dG8gdGVsbCBpdCB3aGVuIGEgbm9uLWRpcmVjdG9yeSBpcyB1c2VkIGluIGEgY29udGV4dCB3aGVy ZSBhCitkaXJlY3RvcnkgaXMgbmVlZGVkLiB0aGlzIG1pbmltaXplcyB0aGUgbnVtYmVyIG9mIHN5 c2NhbGxzIG5lZWRlZCwKK2F2b2lkcyBhY2Nlc3NpbmcgaW5vZGVzIHdoZW4gdGhlIGRpcmVjdG9y eSB0YWJsZSBzdWZmaWNlcywgYW5kIHJlZHVjZXMKK3RoZSBhbW91bnQgb2YgY29kZSBwdWxsZWQg aW4gZm9yIHN0YXRpYyBsaW5raW5nLgorLS0tCisgc3JjL21pc2MvcmVhbHBhdGguYyB8IDE1OSAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQorIDEgZmlsZSBjaGFu Z2VkLCAxMzYgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9z cmMvbWlzYy9yZWFscGF0aC5jIGIvc3JjL21pc2MvcmVhbHBhdGguYworaW5kZXggZDI3MDhlNTlk Li5kYjhiNzRkYzggMTAwNjQ0CistLS0gYS9zcmMvbWlzYy9yZWFscGF0aC5jCisrKysgYi9zcmMv bWlzYy9yZWFscGF0aC5jCitAQCAtMSw0MyArMSwxNTYgQEAKKyAjaW5jbHVkZSA8c3RkbGliLmg+ CisgI2luY2x1ZGUgPGxpbWl0cy5oPgorLSNpbmNsdWRlIDxzeXMvc3RhdC5oPgorLSNpbmNsdWRl IDxmY250bC5oPgorICNpbmNsdWRlIDxlcnJuby5oPgorICNpbmNsdWRlIDx1bmlzdGQuaD4KKyAj aW5jbHVkZSA8c3RyaW5nLmg+CistI2luY2x1ZGUgInN5c2NhbGwuaCIKKysKKytzdGF0aWMgc2l6 ZV90IHNsYXNoX2xlbihjb25zdCBjaGFyICpzKQorK3sKKysJY29uc3QgY2hhciAqczAgPSBzOwor Kwl3aGlsZSAoKnMgPT0gJy8nKSBzKys7CisrCXJldHVybiBzLXMwOworK30KKyAKKyBjaGFyICpy ZWFscGF0aChjb25zdCBjaGFyICpyZXN0cmljdCBmaWxlbmFtZSwgY2hhciAqcmVzdHJpY3QgcmVz b2x2ZWQpCisgeworLQlpbnQgZmQ7CistCXNzaXplX3QgcjsKKy0Jc3RydWN0IHN0YXQgc3QxLCBz dDI7CistCWNoYXIgYnVmWzE1KzMqc2l6ZW9mKGludCldOworLQljaGFyIHRtcFtQQVRIX01BWF07 CisrCWNoYXIgc3RhY2tbUEFUSF9NQVgrMV07CisrCWNoYXIgb3V0cHV0W1BBVEhfTUFYXTsKKysJ c2l6ZV90IHAsIHEsIGwsIGwwLCBjbnQ9MCwgbnVwPTA7CisrCWludCBjaGVja19kaXI9MDsKKyAK KyAJaWYgKCFmaWxlbmFtZSkgeworIAkJZXJybm8gPSBFSU5WQUw7CisgCQlyZXR1cm4gMDsKKyAJ fQorKwlsID0gc3RybmxlbihmaWxlbmFtZSwgc2l6ZW9mIHN0YWNrKTsKKysJaWYgKCFsKSB7Cisr CQllcnJubyA9IEVOT0VOVDsKKysJCXJldHVybiAwOworKwl9CisrCWlmIChsID49IFBBVEhfTUFY KSBnb3RvIHRvb2xvbmc7CisrCXAgPSBzaXplb2Ygc3RhY2sgLSBsIC0gMTsKKysJcSA9IDA7Cisr CW1lbWNweShzdGFjaytwLCBmaWxlbmFtZSwgbCsxKTsKKysKKysJLyogTWFpbiBsb29wLiBFYWNo IGl0ZXJhdGlvbiBwb3BzIHRoZSBuZXh0IHBhcnQgZnJvbSBzdGFjayBvZgorKwkgKiByZW1haW5p bmcgcGF0aCBjb21wb25lbnRzIGFuZCBjb25zdW1lcyBhbnkgc2xhc2hlcyB0aGF0IGZvbGxvdy4K KysJICogSWYgbm90IGEgbGluaywgaXQncyBtb3ZlZCB0byBvdXRwdXQ7IGlmIGEgbGluaywgY29u dGVudHMgYXJlCisrCSAqIHB1c2hlZCB0byB0aGUgc3RhY2suICovCisrcmVzdGFydDoKKysJZm9y ICg7IDsgcCs9c2xhc2hfbGVuKHN0YWNrK3ApKSB7CisrCQkvKiBJZiBzdGFjayBzdGFydHMgd2l0 aCAvLCB0aGUgd2hvbGUgY29tcG9uZW50IGlzIC8gb3IgLy8KKysJCSAqIGFuZCB0aGUgb3V0cHV0 IHN0YXRlIG11c3QgYmUgcmVzZXQuICovCisrCQlpZiAoc3RhY2tbcF0gPT0gJy8nKSB7CisrCQkJ Y2hlY2tfZGlyPTA7CisrCQkJbnVwPTA7CisrCQkJcT0wOworKwkJCW91dHB1dFtxKytdID0gJy8n OworKwkJCXArKzsKKysJCQkvKiBJbml0aWFsIC8vIGlzIHNwZWNpYWwuICovCisrCQkJaWYgKHN0 YWNrW3BdID09ICcvJyAmJiBzdGFja1twKzFdICE9ICcvJykKKysJCQkJb3V0cHV0W3ErK10gPSAn Lyc7CisrCQkJY29udGludWU7CisrCQl9CisrCisrCQljaGFyICp6ID0gX19zdHJjaHJudWwoc3Rh Y2srcCwgJy8nKTsKKysJCWwwID0gbCA9IHotKHN0YWNrK3ApOworIAorLQlmZCA9IHN5c19vcGVu KGZpbGVuYW1lLCBPX1BBVEh8T19OT05CTE9DS3xPX0NMT0VYRUMpOworLQlpZiAoZmQgPCAwKSBy ZXR1cm4gMDsKKy0JX19wcm9jZmRuYW1lKGJ1ZiwgZmQpOworKwkJaWYgKCFsICYmICFjaGVja19k aXIpIGJyZWFrOworIAorLQlyID0gcmVhZGxpbmsoYnVmLCB0bXAsIHNpemVvZiB0bXAgLSAxKTsK Ky0JaWYgKHIgPCAwKSBnb3RvIGVycjsKKy0JdG1wW3JdID0gMDsKKysJCS8qIFNraXAgYW55IC4g Y29tcG9uZW50IGJ1dCBwcmVzZXJ2ZSBjaGVja19kaXIgc3RhdHVzLiAqLworKwkJaWYgKGw9PTEg JiYgc3RhY2tbcF09PScuJykgeworKwkJCXAgKz0gbDsKKysJCQljb250aW51ZTsKKysJCX0KKyAK Ky0JZnN0YXQoZmQsICZzdDEpOworLQlyID0gc3RhdCh0bXAsICZzdDIpOworLQlpZiAocjwwIHx8 IHN0MS5zdF9kZXYgIT0gc3QyLnN0X2RldiB8fCBzdDEuc3RfaW5vICE9IHN0Mi5zdF9pbm8pIHsK Ky0JCWlmICghcikgZXJybm8gPSBFTE9PUDsKKy0JCWdvdG8gZXJyOworKwkJLyogQ29weSBuZXh0 IGNvbXBvbmVudCBvbnRvIG91dHB1dCBhdCBsZWFzdCB0ZW1wb3JhcmlseSwgdG8KKysJCSAqIGNh bGwgcmVhZGxpbmssIGJ1dCB3YWl0IHRvIGFkdmFuY2Ugb3V0cHV0IHBvc2l0aW9uIHVudGlsCisr CQkgKiBkZXRlcm1pbmluZyBpdCdzIG5vdCBhIGxpbmsuICovCisrCQlpZiAocSAmJiBvdXRwdXRb cS0xXSAhPSAnLycpIHsKKysJCQlpZiAoIXApIGdvdG8gdG9vbG9uZzsKKysJCQlzdGFja1stLXBd ID0gJy8nOworKwkJCWwrKzsKKysJCX0KKysJCWlmIChxK2wgPj0gUEFUSF9NQVgpIGdvdG8gdG9v bG9uZzsKKysJCW1lbWNweShvdXRwdXQrcSwgc3RhY2srcCwgbCk7CisrCQlvdXRwdXRbcStsXSA9 IDA7CisrCQlwICs9IGw7CisrCisrCQlpbnQgdXAgPSAwOworKwkJaWYgKGwwPT0yICYmIHN0YWNr W3AtMl09PScuJyAmJiBzdGFja1twLTFdPT0nLicpIHsKKysJCQl1cCA9IDE7CisrCQkJLyogQW55 IG5vbi0uLiBwYXRoIGNvbXBvbmVudHMgd2UgY291bGQgY2FuY2VsIHN0YXJ0CisrCQkJICogYWZ0 ZXIgbnVwIHJlcGV0aXRpb25zIG9mIHRoZSAzLWJ5dGUgc3RyaW5nICIuLi8iOworKwkJCSAqIGlm IHRoZXJlIGFyZSBub25lLCBhY2N1bXVsYXRlIC4uIGNvbXBvbmVudHMgdG8KKysJCQkgKiBsYXRl ciBhcHBseSB0byBjd2QsIGlmIG5lZWRlZC4gKi8KKysJCQlpZiAocSA8PSAzKm51cCkgeworKwkJ CQludXArKzsKKysJCQkJcSArPSBsOworKwkJCQljb250aW51ZTsKKysJCQl9CisrCQkJLyogV2hl biBwcmV2aW91cyBjb21wb25lbnRzIGFyZSBhbHJlYWR5IGtub3duIHRvIGJlCisrCQkJICogZGly ZWN0b3JpZXMsIHByb2Nlc3NpbmcgLi4gY2FuIHNraXAgcmVhZGxpbmsuICovCisrCQkJaWYgKCFj aGVja19kaXIpIGdvdG8gc2tpcF9yZWFkbGluazsKKysJCX0KKysJCXNzaXplX3QgayA9IHJlYWRs aW5rKG91dHB1dCwgc3RhY2ssIHApOworKwkJaWYgKGs9PXApIGdvdG8gdG9vbG9uZzsKKysJCWlm ICghaykgeworKwkJCWVycm5vID0gRU5PRU5UOworKwkJCXJldHVybiAwOworKwkJfQorKwkJaWYg KGs8MCkgeworKwkJCWlmIChlcnJubyAhPSBFSU5WQUwpIHJldHVybiAwOworK3NraXBfcmVhZGxp bms6CisrCQkJY2hlY2tfZGlyID0gMDsKKysJCQlpZiAodXApIHsKKysJCQkJd2hpbGUocSAmJiBv dXRwdXRbcS0xXSE9Jy8nKSBxLS07CisrCQkJCWlmIChxPjEgJiYgKHE+MiB8fCBvdXRwdXRbMF0h PScvJykpIHEtLTsKKysJCQkJY29udGludWU7CisrCQkJfQorKwkJCWlmIChsMCkgcSArPSBsOwor KwkJCWNoZWNrX2RpciA9IHN0YWNrW3BdOworKwkJCWNvbnRpbnVlOworKwkJfQorKwkJaWYgKCsr Y250ID09IFNZTUxPT1BfTUFYKSB7CisrCQkJZXJybm8gPSBFTE9PUDsKKysJCQlyZXR1cm4gMDsK KysJCX0KKysKKysJCS8qIElmIGxpbmsgY29udGVudHMgZW5kIGluIC8sIHN0cmlwIGFueSBzbGFz aGVzIGFscmVhZHkgb24KKysJCSAqIHN0YWNrIHRvIGF2b2lkIC8tPi8vIG9yIC8vLT4vLy8gb3Ig c3B1cmlvdXMgdG9vbG9uZy4gKi8KKysJCWlmIChzdGFja1trLTFdPT0nLycpIHdoaWxlIChzdGFj a1twXT09Jy8nKSBwKys7CisrCQlwIC09IGs7CisrCQltZW1tb3ZlKHN0YWNrK3AsIHN0YWNrLCBr KTsKKysKKysJCS8qIFNraXAgdGhlIHN0YWNrIGFkdmFuY2VtZW50IGluIGNhc2Ugd2UgaGF2ZSBh IG5ldworKwkJICogYWJzb2x1dGUgYmFzZSBwYXRoLiAqLworKwkJZ290byByZXN0YXJ0OworIAl9 CisgCistCV9fc3lzY2FsbChTWVNfY2xvc2UsIGZkKTsKKy0JcmV0dXJuIHJlc29sdmVkID8gc3Ry Y3B5KHJlc29sdmVkLCB0bXApIDogc3RyZHVwKHRtcCk7CistZXJyOgorLQlfX3N5c2NhbGwoU1lT X2Nsb3NlLCBmZCk7CisrIAlvdXRwdXRbcV0gPSAwOworKworKwlpZiAob3V0cHV0WzBdICE9ICcv JykgeworKwkJaWYgKCFnZXRjd2Qoc3RhY2ssIHNpemVvZiBzdGFjaykpIHJldHVybiAwOworKwkJ bCA9IHN0cmxlbihzdGFjayk7CisrCQkvKiBDYW5jZWwgYW55IGluaXRpYWwgLi4gY29tcG9uZW50 cy4gKi8KKysJCXAgPSAwOworKwkJd2hpbGUgKG51cC0tKSB7CisrCQkJd2hpbGUobD4xICYmIHN0 YWNrW2wtMV0hPScvJykgbC0tOworKwkJCWlmIChsPjEpIGwtLTsKKysJCQlwICs9IDI7CisrCQkJ aWYgKHA8cSkgcCsrOworKwkJfQorKwkJaWYgKHEtcCAmJiBzdGFja1tsLTFdIT0nLycpIHN0YWNr W2wrK10gPSAnLyc7CisrCQlpZiAobCArIChxLXApICsgMSA+PSBQQVRIX01BWCkgZ290byB0b29s b25nOworKwkJbWVtbW92ZShvdXRwdXQgKyBsLCBvdXRwdXQgKyBwLCBxIC0gcCArIDEpOworKwkJ bWVtY3B5KG91dHB1dCwgc3RhY2ssIGwpOworKwkJcSA9IGwgKyBxLXA7CisrCX0KKysKKysJaWYg KHJlc29sdmVkKSByZXR1cm4gbWVtY3B5KHJlc29sdmVkLCBvdXRwdXQsIHErMSk7CisrCWVsc2Ug cmV0dXJuIHN0cmR1cChvdXRwdXQpOworKworK3Rvb2xvbmc6CisrCWVycm5vID0gRU5BTUVUT09M T05HOworIAlyZXR1cm4gMDsKKyB9CmRpZmYgLS1naXQgYS9zcmNwa2dzL211c2wvcGF0Y2hlcy93 b3JrX2Fyb3VuZF9saW51eF9idWdfaW5fcmVhZGxpbmtfc3lzY2FsbF93aXRoX3plcm9fYnVmZmVy LnBhdGNoIGIvc3JjcGtncy9tdXNsL3BhdGNoZXMvd29ya19hcm91bmRfbGludXhfYnVnX2luX3Jl YWRsaW5rX3N5c2NhbGxfd2l0aF96ZXJvX2J1ZmZlci5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMDAuLjMyODY0MzJlYmVhMgotLS0gL2Rldi9udWxsCisrKyBiL3Ny Y3BrZ3MvbXVzbC9wYXRjaGVzL3dvcmtfYXJvdW5kX2xpbnV4X2J1Z19pbl9yZWFkbGlua19zeXNj YWxsX3dpdGhfemVyb19idWZmZXIucGF0Y2gKQEAgLTAsMCArMSw1OSBAQAorRnJvbSBlMmZhNzIw YmU3MDI0Y2NlNGZjNDg5ZjM4Nzc0NzZkMzVkYTQ4ZWUyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQorRnJvbTogUmljaCBGZWxrZXIgPGRhbGlhc0BhZXJpZmFsLmN4PgorRGF0ZTogTW9uLCAyMyBO b3YgMjAyMCAxOTo0NDoxOSAtMDUwMAorU3ViamVjdDogW1BBVENIXSB3b3JrIGFyb3VuZCBsaW51 eCBidWcgaW4gcmVhZGxpbmsgc3lzY2FsbCB3aXRoIHplcm8gYnVmZmVyCisgc2l6ZQorCitsaW51 eCBmYWlscyB3aXRoIEVJTlZBTCB3aGVuIGEgemVybyBidWZmZXIgc2l6ZSBpcyBwYXNzZWQgdG8g dGhlCitzeXNjYWxsLiB0aGlzIGlzIG5vbi1jb25mb3JtaW5nIGJlY2F1c2UgUE9TSVggYWxyZWFk eSBkZWZpbmVzIEVJTlZBTAord2l0aCBhIHNpZ25pZmljYW50bHkgZGlmZmVyZW50IG1lYW5pbmc6 IHRoZSB0YXJnZXQgaXMgbm90IGEgc3ltbGluay4KKworc2luY2UgdGhlIHJlcXVlc3QgaXMgc2Vt YW50aWNhbGx5IHZhbGlkLCBwYXRjaCBpdCB1cCBieSB1c2luZyBhIGR1bW15CitidWZmZXIgb2Yg bGVuZ3RoIG9uZSwgYW5kIHRydW5jYXRpbmcgdGhlIHJldHVybiB2YWx1ZSB0byB6ZXJvIGlmIGl0 CitzdWNjZWVkcy4KKy0tLQorIHNyYy91bmlzdGQvcmVhZGxpbmsuYyAgIHwgMTEgKysrKysrKysr LS0KKyBzcmMvdW5pc3RkL3JlYWRsaW5rYXQuYyB8ICA5ICsrKysrKysrLQorIDIgZmlsZXMgY2hh bmdlZCwgMTcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3Ny Yy91bmlzdGQvcmVhZGxpbmsuYyBiL3NyYy91bmlzdGQvcmVhZGxpbmsuYworaW5kZXggYTE1MmQ1 MjQ5Li4zMmY0NTM3ZjkgMTAwNjQ0CistLS0gYS9zcmMvdW5pc3RkL3JlYWRsaW5rLmMKKysrKyBi L3NyYy91bmlzdGQvcmVhZGxpbmsuYworQEAgLTQsOSArNCwxNiBAQAorIAorIHNzaXplX3QgcmVh ZGxpbmsoY29uc3QgY2hhciAqcmVzdHJpY3QgcGF0aCwgY2hhciAqcmVzdHJpY3QgYnVmLCBzaXpl X3QgYnVmc2l6ZSkKKyB7CisrCWNoYXIgZHVtbXlbMV07CisrCWlmICghYnVmc2l6ZSkgeworKwkJ YnVmID0gZHVtbXk7CisrCQlidWZzaXplID0gMTsKKysJfQorICNpZmRlZiBTWVNfcmVhZGxpbmsK Ky0JcmV0dXJuIHN5c2NhbGwoU1lTX3JlYWRsaW5rLCBwYXRoLCBidWYsIGJ1ZnNpemUpOworKwlp bnQgciA9IF9fc3lzY2FsbChTWVNfcmVhZGxpbmssIHBhdGgsIGJ1ZiwgYnVmc2l6ZSk7CisgI2Vs c2UKKy0JcmV0dXJuIHN5c2NhbGwoU1lTX3JlYWRsaW5rYXQsIEFUX0ZEQ1dELCBwYXRoLCBidWYs IGJ1ZnNpemUpOworKwlpbnQgciA9IF9fc3lzY2FsbChTWVNfcmVhZGxpbmthdCwgQVRfRkRDV0Qs IHBhdGgsIGJ1ZiwgYnVmc2l6ZSk7CisgI2VuZGlmCisrCWlmIChidWYgPT0gZHVtbXkgJiYgciA+ IDApIHIgPSAwOworKwlyZXR1cm4gX19zeXNjYWxsX3JldChyKTsKKyB9CitkaWZmIC0tZ2l0IGEv c3JjL3VuaXN0ZC9yZWFkbGlua2F0LmMgYi9zcmMvdW5pc3RkL3JlYWRsaW5rYXQuYworaW5kZXgg OWFmNDVjZDVhLi5mNzlkM2QxNDIgMTAwNjQ0CistLS0gYS9zcmMvdW5pc3RkL3JlYWRsaW5rYXQu YworKysrIGIvc3JjL3VuaXN0ZC9yZWFkbGlua2F0LmMKK0BAIC0zLDUgKzMsMTIgQEAKKyAKKyBz c2l6ZV90IHJlYWRsaW5rYXQoaW50IGZkLCBjb25zdCBjaGFyICpyZXN0cmljdCBwYXRoLCBjaGFy ICpyZXN0cmljdCBidWYsIHNpemVfdCBidWZzaXplKQorIHsKKy0JcmV0dXJuIHN5c2NhbGwoU1lT X3JlYWRsaW5rYXQsIGZkLCBwYXRoLCBidWYsIGJ1ZnNpemUpOworKwljaGFyIGR1bW15WzFdOwor KwlpZiAoIWJ1ZnNpemUpIHsKKysJCWJ1ZiA9IGR1bW15OworKwkJYnVmc2l6ZSA9IDE7CisrCX0K KysJaW50IHIgPSBfX3N5c2NhbGwoU1lTX3JlYWRsaW5rYXQsIGZkLCBwYXRoLCBidWYsIGJ1ZnNp emUpOworKwlpZiAoYnVmID09IGR1bW15ICYmIHIgPiAwKSByID0gMDsKKysJcmV0dXJuIF9fc3lz Y2FsbF9yZXQocik7CisgfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXNsL3RlbXBsYXRlIGIvc3Jj cGtncy9tdXNsL3RlbXBsYXRlCmluZGV4IGQzMGM5OWE1NjNhMC4uNWJkYzVjNDhlNjIzIDEwMDY0 NAotLS0gYS9zcmNwa2dzL211c2wvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tdXNsL3RlbXBsYXRl CkBAIC0yLDcgKzIsNyBAQAogcGtnbmFtZT1tdXNsCiByZXZlcnRzPSIxLjIuMF8xIgogdmVyc2lv bj0xLjEuMjQKLXJldmlzaW9uPTkKK3JldmlzaW9uPTEwCiBhcmNocz0iKi1tdXNsIgogYm9vdHN0 cmFwPXllcwogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQo= --===============6029853831255469332==--