From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Petr Lautrbach To: git-commits@fedoraproject.org Subject: [rpms/libselinux] f45: Add support for UTF-8 in file context specifications Date: Mon, 07 Sep 2026 11:30:10 GMT Message-ID: <178878061096.1.15318368593067249068.rpms-libselinux-eba19434caf5@fedoraproject.org> List-ID: X-Git-Repo: rpms/libselinux X-Git-Branch: f45 X-Git-Rev: eba19434caf5f2b4f0424a1be603da70b160df2b ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvbGlic2VsaW51eAogICAgICAgICAgICBCcmFuY2ggOiBmNDUKICAgICAgICAg ICAgQ29tbWl0IDogZWJhMTk0MzRjYWY1ZjJiNGYwNDI0YTFiZTYwM2RhNzBiMTYwZGYyYgogICAg ICAgICAgICBBdXRob3IgOiBQZXRyIExhdXRyYmFjaCA8bGF1dHJiYWNoQHJlZGhhdC5jb20+CiAg ICAgICAgICAgIERhdGUgICA6IDIwMjYtMDktMDdUMTE6NDc6NTgrMDI6MDAKICAgICAgICAgICAg U3RhdHMgIDogKzI0MS8tMSBpbiA0IGZpbGUocykKICAgICAgICAgICAgVVJMICAgIDogaHR0cHM6 Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9saWJzZWxpbnV4L2MvZWJhMTk0MzRjYWY1ZjJi NGYwNDI0YTFiZTYwM2RhNzBiMTYwZGYyYj9icmFuY2g9ZjQ1CgogICAgICAgICAgICBMb2c6CiAg ICAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBVVEYtOCBpbiBmaWxlIGNvbnRleHQgc3BlY2lmaWNh dGlvbnMKCkZpeGVzOiByaGJ6IzI0Mjc1NTAKCi0tLQpkaWZmIC0tZ2l0IGEvMDAwMy1saWJzZWxp bnV4LXJlc3RvcmVjb25feGF0dHItcmVzZXQtZGlyX3hhdHRyX2xpc3Qtb24tLnBhdGNoIGIvMDAw My1saWJzZWxpbnV4LXJlc3RvcmVjb25feGF0dHItcmVzZXQtZGlyX3hhdHRyX2xpc3Qtb24tLnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAwZDdhNTIKLS0tIC9kZXYv bnVsbAorKysgYi8wMDAzLWxpYnNlbGludXgtcmVzdG9yZWNvbl94YXR0ci1yZXNldC1kaXJfeGF0 dHJfbGlzdC1vbi0ucGF0Y2gKQEAgLTAsMCArMSw2MCBAQAorRnJvbSBhMjUxNjk0MDNjNjg1OGIw NzI3YWU4NzVmZmFmOGI2ZWE4ZmJkMjQ2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTog Vml0IE1vanppcyA8dm1vanppc0ByZWRoYXQuY29tPgorRGF0ZTogVGh1LCA2IEF1ZyAyMDI2IDIx OjM3OjM1ICswMjAwCitTdWJqZWN0OiBbUEFUQ0hdIGxpYnNlbGludXg6IHJlc3RvcmVjb25feGF0 dHI6IHJlc2V0IGRpcl94YXR0cl9saXN0IG9uIGV2ZXJ5CisgY2FsbAorQ29udGVudC10eXBlOiB0 ZXh0L3BsYWluCisKK3NlbGludXhfcmVzdG9yZWNvbl94YXR0cigzKSBkb2N1bWVudHMgdGhhdCAi eGF0dHJfbGlzdCBtdXN0IGJlIHNldCB0bworTlVMTCBiZWZvcmUgY2FsbGluZyBzZWxpbnV4X3Jl c3RvcmVjb25feGF0dHIoMykuIFRoZSBjYWxsZXIgaXMKK3Jlc3BvbnNpYmxlIGZvciBmcmVlaW5n IHRoZSByZXR1cm5lZCB4YXR0cl9saXN0IGVudHJpZXMuIiBDb21taXQKK2I1YTIzZDdmMzBjMSAo ImxpYnNlbGludXg6IHJlc3RvcmVjb25feGF0dHI6IGNsZWFyIGRpcl94YXR0cl8qIGFmdGVyCitm cmVlaW5nIikgcmVzZXQgdGhlIGRpcl94YXR0cl9saXN0L2Rpcl94YXR0cl9sYXN0IHN0YXRpY3Mg YWZ0ZXIKK2ZyZWVpbmcgdGhlbSBvbiB0aGUgaW50ZXJuYWwgZXJyb3ItY2xlYW51cCBwYXRoIG9m IHRoZSByZWN1cnNpdmUKK3dhbGssIGJ1dCBub3Qgb24gdGhlIG5vcm1hbCBzdWNjZXNzIHBhdGgu CisKK0FmdGVyIGEgc3VjY2Vzc2Z1bCBjYWxsLCBkaXJfeGF0dHJfbGlzdC9kaXJfeGF0dHJfbGFz dCBhcmUgbGVmdAorcG9pbnRpbmcgYXQgdGhlIGp1c3QtcmV0dXJuZWQsIG5vdyBjYWxsZXItb3du ZWQgbGlzdC4gT25jZSB0aGUgY2FsbGVyCitmcmVlcyBpdCBhcyByZXF1aXJlZCBhbmQgY2FsbHMg dGhlIGZ1bmN0aW9uIGFnYWluLCBhZGRfeGF0dHJfZW50cnkoKQorZmluZHMgZGlyX3hhdHRyX2xp c3Qgbm9uLU5VTEwgYW5kIGFwcGVuZHMgdGhlIG5leHQgZW50cnkgdGhyb3VnaAorZGlyX3hhdHRy X2xhc3QtPm5leHQsIGEgZGFuZ2xpbmcgcG9pbnRlciBpbnRvIG1lbW9yeSB0aGUgY2FsbGVyIGhh cworYWxyZWFkeSBmcmVlZCAtIGEgdXNlLWFmdGVyLWZyZWUgd3JpdGUuCisKK1Jlc2V0IGJvdGgg cG9pbnRlcnMgdG8gTlVMTCBhdCB0aGUgdG9wIG9mIGV2ZXJ5IGNhbGwgaW5zdGVhZCBvZiBvbmx5 CitpbiB0aGUgZXJyb3IgcGF0aDogYnkgdGhlIEFQSSBkZXNjcmlwdGlvbiwgYW55IGxpc3QgZnJv bSBhIHByaW9yIGNhbGwKK2lzIG5vdCB2YWxpZC4KKworQ28tQXV0aG9yZWQtQnk6IENsYXVkZSBT b25uZXQgNSA8bm9yZXBseUBhbnRocm9waWMuY29tPgorCitTaWduZWQtb2ZmLWJ5OiBWaXQgTW9q emlzIDx2bW9qemlzQHJlZGhhdC5jb20+CitBY2tlZC1ieTogU3RlcGhlbiBTbWFsbGV5IDxzdGVw aGVuLnNtYWxsZXkud29ya0BnbWFpbC5jb20+CistLS0KKyBsaWJzZWxpbnV4L3NyYy9zZWxpbnV4 X3Jlc3RvcmVjb24uYyB8IDEyICsrKysrKysrKysrKworIDEgZmlsZSBjaGFuZ2VkLCAxMiBpbnNl cnRpb25zKCspCisKK2RpZmYgLS1naXQgYS9saWJzZWxpbnV4L3NyYy9zZWxpbnV4X3Jlc3RvcmVj b24uYyBiL2xpYnNlbGludXgvc3JjL3NlbGludXhfcmVzdG9yZWNvbi5jCitpbmRleCBkNDhkNWE4 M2VkNmUuLmRhNjFmOWRlNTlmNiAxMDA2NDQKKy0tLSBhL2xpYnNlbGludXgvc3JjL3NlbGludXhf cmVzdG9yZWNvbi5jCisrKysgYi9saWJzZWxpbnV4L3NyYy9zZWxpbnV4X3Jlc3RvcmVjb24uYwor QEAgLTE5NjMsNiArMTk2MywxOCBAQCBpbnQgc2VsaW51eF9yZXN0b3JlY29uX3hhdHRyKGNvbnN0 IGNoYXIgKnBhdGhuYW1lLCB1bnNpZ25lZCBpbnQgeGF0dHJfZmxhZ3MsCisgCWlmICghZmNfc2Vo YW5kbGUpCisgCQlyZXR1cm4gLTE7CisgCisrCS8qCisrCSAqIFRoZSBBUEkgY29udHJhY3QgcmVx dWlyZXMgdGhlIGNhbGxlciB0byBoYXZlIGFscmVhZHkgZnJlZWQgYW55CisrCSAqIHhhdHRyX2xp c3QgcmV0dXJuZWQgYnkgYSBwcmV2aW91cyBjYWxsIGJlZm9yZSBjYWxsaW5nIGFnYWluLgorKwkg KiBGb3JnZXQgb3VyIG93biBoZWFkL3RhaWwgcG9pbnRlcnMgdG8gdGhhdCBub3cgY2FsbGVyLW93 bmVkIG1lbW9yeQorKwkgKiBoZXJlIGluc3RlYWQgb2YgY2FycnlpbmcgdGhlbSBvdmVyOiBsZWF2 aW5nIHRoZW0gc2V0IHdvdWxkIG1ha2UKKysJICogdGhlIG5leHQgYWRkX3hhdHRyX2VudHJ5KCkg YXBwZW5kIGEgbmV3IGVudHJ5IHRocm91Z2gKKysJICogZGlyX3hhdHRyX2xhc3QsIHdoaWNoIHdv dWxkIGJlIGRhbmdsaW5nIG9uY2UgdGhlIGNhbGxlciBoYXMgZnJlZWQKKysJICogaXQsIHJlc3Vs dGluZyBpbiBhIHVzZS1hZnRlci1mcmVlLgorKwkgKi8KKysJZGlyX3hhdHRyX2xpc3QgPSBOVUxM OworKwlkaXJfeGF0dHJfbGFzdCA9IE5VTEw7CisrCisgCWlmIChsc3RhdChwYXRobmFtZSwgJnNi KSA8IDApIHsKKyAJCWlmIChlcnJubyA9PSBFTk9FTlQpCisgCQkJcmV0dXJuIDA7CistLSAKKzIu NTUuMAorCgpkaWZmIC0tZ2l0IGEvMDAwNC1BZGQtc3VwcG9ydC1mb3ItVVRGLTgtaW4tZmlsZS1j b250ZXh0LXNwZWNpZmljYXRpb25zLnBhdGNoIGIvMDAwNC1BZGQtc3VwcG9ydC1mb3ItVVRGLTgt aW4tZmlsZS1jb250ZXh0LXNwZWNpZmljYXRpb25zLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAuLmMxYTEwNmQKLS0tIC9kZXYvbnVsbAorKysgYi8wMDA0LUFkZC1zdXBw b3J0LWZvci1VVEYtOC1pbi1maWxlLWNvbnRleHQtc3BlY2lmaWNhdGlvbnMucGF0Y2gKQEAgLTAs MCArMSwxNzUgQEAKK0Zyb20gM2NhM2VmMzg4Y2M2NTkzYjJiMDdiYzA2NjE3ZTMzZTQ4ZGZmOWI1 ZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IFBldHIgTGF1dHJiYWNoIDxsYXV0cmJh Y2hAcmVkaGF0LmNvbT4KK0RhdGU6IEZyaSwgNCBTZXAgMjAyNiAxNDoxMTozMCArMDIwMAorU3Vi amVjdDogW1BBVENIXSBBZGQgc3VwcG9ydCBmb3IgVVRGLTggaW4gZmlsZSBjb250ZXh0IHNwZWNp ZmljYXRpb25zCitNSU1FLVZlcnNpb246IDEuMAorQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBj aGFyc2V0PVVURi04CitDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0CitDb250ZW50LXR5 cGU6IHRleHQvcGxhaW4KKworSW1wbGVtZW50IHN1cHBvcnQgZm9yIFVURi04IHN5bWJvbHMgaW4g ZmlsZSBzcGVjaWZpY2F0aW9ucy4gU3RyaW5ncworcmVwcmVzZW50aW5nIHBhdGhzIGFyZSBwcm9j ZXNzZWQgYXMgYnl0ZXMgc28gaWYgdXNlcnMgbmVlZCB0byB1c2UKK3dpbGRjYXJkcyBvbiBub24t YXNjaWkgc3ltYm9scywgdGhleSBuZWVkIHRvIHB1dCB0aGVtIGluIHBjcmUgZ3JvdXBzLAorZS5n LiAiL29wdC/Fvmx1xaVvdSjEjSkrIgorCitUaGlzIGJyaW5ncyBzb21lIG92ZXJoZWFkIGFuZCBz byBpdCdzIHBvc3NpYmxlIHRvIGRpc2FibGUgVVRGLTggc3VwcG9ydAorYnVpbGQgdGltZSB1c2lu ZyBESVNBQkxFX1VURj15IGVudmlyb25tZW50IHZhcmlhYmxlLgorCitGaXhlczoKKyAgICAjIGNh dCB1bmljb2RlLmNpbAorICAgIChmaWxlY29uICIvb3B0L8W+bHXFpW91xI1rw70oLy4qKT8iIGFu eSAoc3lzdGVtX3Ugb2JqZWN0X3IgdXNlcl9ob21lX3QgKChzMCkgKHMwKSkpKQorCisgICAgIyBz ZW1vZHVsZSAtaSB1bmljb2RlLmNpbAorICAgIC9zYmluL3NldGZpbGVzOiAvdmFyL2xpYi9zZWxp bnV4L2ZpbmFsL3RhcmdldGVkL2NvbnRleHRzL2ZpbGVzL2ZpbGVfY29udGV4dHM6ICBsaW5lIDIx NDUgZXJyb3IgZHVlIHRvOiBOb24tQVNDSUkgY2hhcmFjdGVycyBmb3VuZAorICAgIC9zYmluL3Nl dGZpbGVzOiAvdmFyL2xpYi9zZWxpbnV4L2ZpbmFsL3RhcmdldGVkL2NvbnRleHRzL2ZpbGVzL2Zp bGVfY29udGV4dHM6ICBsaW5lIDIxNDUgZXJyb3IgZHVlIHRvOiBOb24tQVNDSUkgY2hhcmFjdGVy cyBmb3VuZAorICAgIC92YXIvbGliL3NlbGludXgvZmluYWwvdGFyZ2V0ZWQvY29udGV4dHMvZmls ZXMvZmlsZV9jb250ZXh0czogSW52YWxpZCBhcmd1bWVudAorICAgIGxpYnNlbWFuYWdlLnNlbWFu YWdlX3ZhbGlkYXRlX2FuZF9jb21waWxlX2Zjb250ZXh0czogc2V0ZmlsZXMgcmV0dXJuZWQgZXJy b3IgY29kZSAxLgorICAgIHNlbW9kdWxlOiAgRmFpbGVkIQorCisgICAgIyBzZW1hbmFnZSBmY29u dGV4dCAtLWFkZCAtdCB1c2VyX2hvbWVfdCAiL29wdC/Fvmx1xaVvdcSNa8O9KC8uKik/IgorICAg IC9zYmluL3NldGZpbGVzOiAvdmFyL2xpYi9zZWxpbnV4L2ZpbmFsL3RhcmdldGVkL2NvbnRleHRz L2ZpbGVzL2ZpbGVfY29udGV4dHMubG9jYWw6ICBsaW5lIDQgZXJyb3IgZHVlIHRvOiBOb24tQVND SUkgY2hhcmFjdGVycyBmb3VuZAorICAgIC9zYmluL3NldGZpbGVzOiAvdmFyL2xpYi9zZWxpbnV4 L2ZpbmFsL3RhcmdldGVkL2NvbnRleHRzL2ZpbGVzL2ZpbGVfY29udGV4dHMubG9jYWw6ICBsaW5l IDQgZXJyb3IgZHVlIHRvOiBOb24tQVNDSUkgY2hhcmFjdGVycyBmb3VuZAorICAgIC92YXIvbGli L3NlbGludXgvZmluYWwvdGFyZ2V0ZWQvY29udGV4dHMvZmlsZXMvZmlsZV9jb250ZXh0czogSW52 YWxpZCBhcmd1bWVudAorICAgIGxpYnNlbWFuYWdlLnNlbWFuYWdlX3ZhbGlkYXRlX2FuZF9jb21w aWxlX2Zjb250ZXh0czogc2V0ZmlsZXMgcmV0dXJuZWQgZXJyb3IgY29kZSAxLgorICAgIE9TRXJy b3I6IEVycm9yCisKK1NpZ25lZC1vZmYtYnk6IFBldHIgTGF1dHJiYWNoIDxsYXV0cmJhY2hAcmVk aGF0LmNvbT4KK0Fja2VkLWJ5OiBTdGVwaGVuIFNtYWxsZXkgPHN0ZXBoZW4uc21hbGxleS53b3Jr QGdtYWlsLmNvbT4KKy0tLQorIGxpYnNlbGludXgvTWFrZWZpbGUgICAgICAgICAgICB8ICA0ICsr CisgbGlic2VsaW51eC9zcmMvbGFiZWxfc3VwcG9ydC5jIHwgODMgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgODcgaW5zZXJ0aW9ucygrKQorCitk aWZmIC0tZ2l0IGEvbGlic2VsaW51eC9NYWtlZmlsZSBiL2xpYnNlbGludXgvTWFrZWZpbGUKK2lu ZGV4IGFlZWRlMmI1NmU4ZS4uMGY4NDEyY2NmMWVhIDEwMDY0NAorLS0tIGEvbGlic2VsaW51eC9N YWtlZmlsZQorKysrIGIvbGlic2VsaW51eC9NYWtlZmlsZQorQEAgLTMsNiArMyw3IEBAIFNVQkRJ UlMgPSBpbmNsdWRlIHNyYyB1dGlscyBtYW4KKyBQS0dfQ09ORklHID89IHBrZy1jb25maWcKKyBE SVNBQkxFX1NFVFJBTlMgPz0gbgorIERJU0FCTEVfUlBNID89IG4KKytESVNBQkxFX1VURiA/PSBu CisgQU5EUk9JRF9IT1NUID89IG4KKyBMQUJFTF9CQUNLRU5EX0FORFJPSUQgPz0gbgorIGlmZXEg KCQoQU5EUk9JRF9IT1NUKSx5KQorQEAgLTIxLDYgKzIyLDkgQEAgZW5kaWYKKyBpZmVxICgkKERJ U0FCTEVfWDExKSx5KQorIAlESVNBQkxFX0ZMQUdTKz0gLUROT19YX0JBQ0tFTkQKKyBlbmRpZgor K2lmZXEgKCQoRElTQUJMRV9VVEYpLHkpCisrCURJU0FCTEVfRkxBR1MrPSAtRE5PX1VURgorK2Vu ZGlmCisgZXhwb3J0IERJU0FCTEVfU0VUUkFOUyBESVNBQkxFX1JQTSBESVNBQkxFX0ZMQUdTIEFO RFJPSURfSE9TVCBESVNBQkxFX1gxMSBMQUJFTF9CQUNLRU5EX0FORFJPSUQKKyAKKyBVU0VfUENS RTIgPz0geQorZGlmZiAtLWdpdCBhL2xpYnNlbGludXgvc3JjL2xhYmVsX3N1cHBvcnQuYyBiL2xp YnNlbGludXgvc3JjL2xhYmVsX3N1cHBvcnQuYworaW5kZXggYWVhNWVkMTliNDVhLi5hMjI5Mzcz YWYwOWMgMTAwNjQ0CistLS0gYS9saWJzZWxpbnV4L3NyYy9sYWJlbF9zdXBwb3J0LmMKKysrKyBi L2xpYnNlbGludXgvc3JjL2xhYmVsX3N1cHBvcnQuYworQEAgLTEzLDYgKzEzLDc2IEBACisgI2lu Y2x1ZGUgPGVycm5vLmg+CisgI2luY2x1ZGUgImxhYmVsX2ludGVybmFsLmgiCisgCisrI2lmbmRl ZiBOT19VVEYKKysKKysjZGVmaW5lIFVURjh0YWlsKHgpICgoeCkgPj0gMHg4MCAmJiAoeCkgPD0g MHhCRikKKysKKytzdGF0aWMgc2l6ZV90IHV0ZjhfY2hhcl9sZW4oY29uc3QgdW5zaWduZWQgY2hh ciAqcykKKyt7CisrCS8qIHJmYzM2MjkKKysJICogIFVURjgtb2N0ZXRzID0gKiggVVRGOC1jaGFy ICkKKysJICogIFVURjgtY2hhciAgID0gVVRGOC0xIC8gVVRGOC0yIC8gVVRGOC0zIC8gVVRGOC00 CisrCSAqICBVVEY4LTEgICAgICA9ICV4MDAtN0YKKysJICogIFVURjgtMiAgICAgID0gJXhDMi1E RiBVVEY4LXRhaWwKKysJICogIFVURjgtMyAgICAgID0gJXhFMCAleEEwLUJGIFVURjgtdGFpbCAv ICV4RTEtRUMgMiggVVRGOC10YWlsICkgLworKwkgKiAgICAgICAgICAgICAgICAleEVEICV4ODAt OUYgVVRGOC10YWlsIC8gJXhFRS1FRiAyKCBVVEY4LXRhaWwgKQorKwkgKiAgVVRGOC00ICAgICAg PSAleEYwICV4OTAtQkYgMiggVVRGOC10YWlsICkgLyAleEYxLUYzIDMoIFVURjgtdGFpbCApIC8K KysJICogICAgICAgICAgICAgICAgJXhGNCAleDgwLThGIDIoIFVURjgtdGFpbCApCisrCSAqICBV VEY4LXRhaWwgICA9ICV4ODAtQkYKKysJICovCisrCWlmIChzWzBdID09ICdcMCcpCisrCQlyZXR1 cm4gMDsKKysKKysJaWYgKHNbMF0gPCAweDgwKQorKwkJcmV0dXJuIDE7CisrCisrCWlmIChzWzBd IDwgMHhDMiB8fCBzWzFdID09ICdcMCcpCisrCQlyZXR1cm4gMDsKKysKKysJaWYgKHNbMF0gPD0g MHhERiAmJiBVVEY4dGFpbChzWzFdKSkKKysJCXJldHVybiAyOworKworKwlpZiAoc1syXSA9PSAn XDAnKQorKwkJcmV0dXJuIDA7CisrCisrCS8qICV4RTAgJXhBMC1CRiBVVEY4LXRhaWwgKi8KKysJ aWYgKHNbMF0gPT0gMHhFMCAmJiBzWzFdID49IDB4QTAgJiYgc1sxXSA8PSAweEJGICYmIFVURjh0 YWlsKHNbMl0pKQorKwkJcmV0dXJuIDM7CisrCisrCS8qICV4RTEtRUMgMiggVVRGOC10YWlsICkg Ki8KKysJaWYgKHNbMF0gPj0gMHhFMSAmJiBzWzBdIDw9IDB4RUMgJiYgVVRGOHRhaWwoc1sxXSkg JiYgVVRGOHRhaWwoc1syXSkpCisrCQlyZXR1cm4gMzsKKysKKysJLyogJXhFRCAleDgwLTlGIFVU RjgtdGFpbCAqLworKwlpZiAoc1swXSA9PSAweEVEICYmIHNbMV0gPj0gMHg4MCAmJiBzWzFdIDw9 IDB4OUYgJiYgVVRGOHRhaWwoc1syXSkpCisrCQlyZXR1cm4gMzsKKysKKysJLyogJXhFRS1FRiAy KCBVVEY4LXRhaWwgKSAqLworKwlpZiAoc1swXSA+PSAweEVFICYmIHNbMF0gPD0gMHhFRiAmJiBV VEY4dGFpbChzWzFdKSAmJiBVVEY4dGFpbChzWzJdKSkKKysJCXJldHVybiAzOworKworKwlpZiAo c1szXSA9PSAnXDAnKQorKwkJcmV0dXJuIDA7CisrCisrCS8qICV4RjAgJXg5MC1CRiAyKCBVVEY4 LXRhaWwgKSAqLworKwlpZiAoc1swXSA9PSAweEYwICYmIHNbMV0gPj0gMHg5MCAmJiBzWzFdIDw9 IDB4QkYgJiYgVVRGOHRhaWwoc1syXSkgJiYKKysJICAgIFVURjh0YWlsKHNbM10pKQorKwkJcmV0 dXJuIDQ7CisrCisrCS8qICV4RjEtRjMgMyggVVRGOC10YWlsICkgKi8KKysJaWYgKHNbMF0gPj0g MHhGMSAmJiBzWzBdIDw9IDB4RjMgJiYgVVRGOHRhaWwoc1sxXSkgJiYgVVRGOHRhaWwoc1syXSkg JiYKKysJICAgIFVURjh0YWlsKHNbM10pKQorKwkJcmV0dXJuIDQ7CisrCisrCS8qICV4RjQgJXg4 MC04RiAyKCBVVEY4LXRhaWwgKSAqLworKwlpZiAoc1swXSA9PSAweEY0ICYmIHNbMV0gPj0gMHg4 MCAmJiBzWzFdIDw9IDB4OEYgJiYgVVRGOHRhaWwoc1syXSkgJiYKKysJICAgIFVURjh0YWlsKHNb M10pKQorKwkJcmV0dXJuIDQ7CisrCisrCXJldHVybiAwOworK30KKysjZW5kaWYKKysKKyAvKgor ICAqIFJlYWQgYW4gZW50cnkgZnJvbSBhIHNwZWMgZmlsZSAoZS5nLiBmaWxlX2NvbnRleHRzKQor ICAqIGVudHJ5IC0gQnVmZmVyIHRvIGFsbG9jYXRlIGZvciB0aGUgZW50cnkuCitAQCAtMzYsNiAr MTA2LDcgQEAgc3RhdGljIGlubGluZSBpbnQgcmVhZF9zcGVjX2VudHJ5KGNoYXIgKiplbnRyeSwg Y29uc3QgY2hhciAqKnB0ciwgc2l6ZV90ICpsZW4sCisgCSpsZW4gPSAwOworIAorIAl3aGlsZSAo IWlzc3BhY2UoKHVuc2lnbmVkIGNoYXIpKipwdHIpICYmICoqcHRyICE9ICdcMCcpIHsKKysjaWZk ZWYgTk9fVVRGCisgCQlpZiAoIWlzYXNjaWkoKHVuc2lnbmVkIGNoYXIpKipwdHIpKSB7CisgCQkJ ZXJybm8gPSBFSU5WQUw7CisgCQkJKmVycmJ1ZiA9ICJOb24tQVNDSUkgY2hhcmFjdGVycyBmb3Vu ZCI7CitAQCAtNDMsNiArMTE0LDE4IEBAIHN0YXRpYyBpbmxpbmUgaW50IHJlYWRfc3BlY19lbnRy eShjaGFyICoqZW50cnksIGNvbnN0IGNoYXIgKipwdHIsIHNpemVfdCAqbGVuLAorIAkJfQorIAkJ KCpwdHIpKys7CisgCQkoKmxlbikrKzsKKysjZWxzZQorKwkJc2l6ZV90IGNoYXJfbGVuID0gdXRm OF9jaGFyX2xlbigoY29uc3QgdW5zaWduZWQgY2hhciAqKSpwdHIpOworKworKwkJaWYgKGNoYXJf bGVuID09IDApIHsKKysJCQllcnJubyA9IEVJTlZBTDsKKysJCQkqZXJyYnVmID0gIkludmFsaWQg VVRGLTggZW5jb2RpbmciOworKwkJCXJldHVybiAtMTsKKysJCX0KKysKKysJCSpwdHIgKz0gY2hh cl9sZW47CisrCQkqbGVuICs9IGNoYXJfbGVuOworKyNlbmRpZgorIAl9CisgCisgCWlmICgqbGVu KSB7CistLSAKKzIuNTUuMAorCgpkaWZmIC0tZ2l0IGEvY2hhbmdlbG9nIGIvY2hhbmdlbG9nCmlu ZGV4IGFhM2U2MGYuLjEzZDQwY2YgMTAwNjQ0Ci0tLSBhL2NoYW5nZWxvZworKysgYi9jaGFuZ2Vs b2cKQEAgLTEsMyArMSw2IEBACisqIE1vbiBTZXAgMDcgMjAyNiBQZXRyIExhdXRyYmFjaCA8bGF1 dHJiYWNoQHJlZGhhdC5jb20+IC0gMy4xMS01CistIEFkZCBzdXBwb3J0IGZvciBVVEYtOCBpbiBm aWxlIGNvbnRleHQgc3BlY2lmaWNhdGlvbnMKKwogKiBGcmkgQXVnIDA3IDIwMjYgUGV0ciBMYXV0 cmJhY2ggPGxhdXRyYmFjaEByZWRoYXQuY29tPiAtIDMuMTEtNAogLSBSZWJ1aWx0IGZvciBTV0lH LTQuNS4wCiAKCmRpZmYgLS1naXQgYS9saWJzZWxpbnV4LnNwZWMgYi9saWJzZWxpbnV4LnNwZWMK aW5kZXggNzZmOWU5OC4uZDk0NmIxMyAxMDA2NDQKLS0tIGEvbGlic2VsaW51eC5zcGVjCisrKyBi L2xpYnNlbGludXguc3BlYwpAQCAtNCw3ICs0LDcgQEAKIFN1bW1hcnk6IFNFTGludXggbGlicmFy eSBhbmQgc2ltcGxlIHV0aWxpdGllcwogTmFtZTogbGlic2VsaW51eAogVmVyc2lvbjogMy4xMQot UmVsZWFzZTogNCV7P2Rpc3R9CitSZWxlYXNlOiA1JXs/ZGlzdH0KIExpY2Vuc2U6IExpY2Vuc2VS ZWYtRmVkb3JhLVB1YmxpYy1Eb21haW4KICMgaHR0cHM6Ly9naXRodWIuY29tL1NFTGludXhQcm9q ZWN0L3NlbGludXgvd2lraS9SZWxlYXNlcwogU291cmNlMDogaHR0cHM6Ly9naXRodWIuY29tL1NF TGludXhQcm9qZWN0L3NlbGludXgvcmVsZWFzZXMvZG93bmxvYWQvJXt2ZXJzaW9ufS9saWJzZWxp bnV4LSV7dmVyc2lvbn0udGFyLmd6CkBAIC0yMSw2ICsyMSw4IEBAIFVybDogaHR0cHM6Ly9naXRo dWIuY29tL1NFTGludXhQcm9qZWN0L3NlbGludXgvd2lraQogIyBQYXRjaCBsaXN0IHN0YXJ0CiBQ YXRjaDAwMDE6IDAwMDEtVXNlLVNIQS0yLWluc3RlYWQtb2YtU0hBLTEucGF0Y2gKIFBhdGNoMDAw MjogMDAwMi1saWJzZWxpbnV4LVJlcGxhY2UtUHlTdHJpbmdfRnJvbVN0cmluZy13aXRoLVB5VW5p Y29kLnBhdGNoCitQYXRjaDAwMDM6IDAwMDMtbGlic2VsaW51eC1yZXN0b3JlY29uX3hhdHRyLXJl c2V0LWRpcl94YXR0cl9saXN0LW9uLS5wYXRjaAorUGF0Y2gwMDA0OiAwMDA0LUFkZC1zdXBwb3J0 LWZvci1VVEYtOC1pbi1maWxlLWNvbnRleHQtc3BlY2lmaWNhdGlvbnMucGF0Y2gKICMgUGF0Y2gg bGlzdCBlbmQKIEJ1aWxkUmVxdWlyZXM6IGdjYyBtYWtlCiBCdWlsZFJlcXVpcmVzOiBydWJ5LWRl dmVsIHJ1YnkgbGlic2Vwb2wtc3RhdGljID49ICV7bGlic2Vwb2x2ZXJ9IHN3aWcgcGNyZTItZGV2 ZWwK