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] f44: Add support for UTF-8 in file context specifications Date: Mon, 07 Sep 2026 12:34:54 GMT Message-ID: <178878449417.1.17540295020505260680.rpms-libselinux-b756484481d4@fedoraproject.org> List-ID: X-Git-Repo: rpms/libselinux X-Git-Branch: f44 X-Git-Rev: b756484481d400807162729464a9ecb85c97ed3c ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvbGlic2VsaW51eAogICAgICAgICAgICBCcmFuY2ggOiBmNDQKICAgICAgICAg ICAgQ29tbWl0IDogYjc1NjQ4NDQ4MWQ0MDA4MDcxNjI3Mjk0NjRhOWVjYjg1Yzk3ZWQzYwogICAg ICAgICAgICBBdXRob3IgOiBQZXRyIExhdXRyYmFjaCA8bGF1dHJiYWNoQHJlZGhhdC5jb20+CiAg ICAgICAgICAgIERhdGUgICA6IDIwMjYtMDktMDdUMTQ6MTA6NTgrMDI6MDAKICAgICAgICAgICAg U3RhdHMgIDogKzI5OC8tMSBpbiA1IGZpbGUocykKICAgICAgICAgICAgVVJMICAgIDogaHR0cHM6 Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9saWJzZWxpbnV4L2MvYjc1NjQ4NDQ4MWQ0MDA4 MDcxNjI3Mjk0NjRhOWVjYjg1Yzk3ZWQzYz9icmFuY2g9ZjQ0CgogICAgICAgICAgICBMb2c6CiAg ICAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBVVEYtOCBpbiBmaWxlIGNvbnRleHQgc3BlY2lmaWNh dGlvbnMKCkZpeGVzOiByaGJ6IzI0Mjc1NTAKCi0tLQpkaWZmIC0tZ2l0IGEvMDAwMi1saWJzZWxp bnV4LVJlcGxhY2UtUHlTdHJpbmdfRnJvbVN0cmluZy13aXRoLVB5VW5pY29kLnBhdGNoIGIvMDAw Mi1saWJzZWxpbnV4LVJlcGxhY2UtUHlTdHJpbmdfRnJvbVN0cmluZy13aXRoLVB5VW5pY29kLnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdiMTlhYmEKLS0tIC9kZXYv bnVsbAorKysgYi8wMDAyLWxpYnNlbGludXgtUmVwbGFjZS1QeVN0cmluZ19Gcm9tU3RyaW5nLXdp dGgtUHlVbmljb2QucGF0Y2gKQEAgLTAsMCArMSw1NiBAQAorRnJvbSBkYzk4ZWJhMTg0ZTYzNzIw Y2M1M2NjOWI5MjFlNTM1YzA5NTExMDdkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTog UGV0ciBMYXV0cmJhY2ggPGxhdXRyYmFjaEByZWRoYXQuY29tPgorRGF0ZTogVGh1LCA2IEF1ZyAy MDI2IDE2OjI4OjMwICswMjAwCitTdWJqZWN0OiBbUEFUQ0hdIGxpYnNlbGludXg6IFJlcGxhY2Ug UHlTdHJpbmdfRnJvbVN0cmluZyB3aXRoCisgUHlVbmljb2RlX0Zyb21TdHJpbmcgZm9yIFNXSUcg NC41LjAgY29tcGF0aWJpbGl0eQorTUlNRS1WZXJzaW9uOiAxLjAKK0NvbnRlbnQtVHlwZTogdGV4 dC9wbGFpbjsgY2hhcnNldD1VVEYtOAorQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAor Q29udGVudC10eXBlOiB0ZXh0L3BsYWluCisKK1NXSUcgNC41LjAgcmVtb3ZlZCBQeXRob24gMiBD IEFQSSBjb21wYXRpYmlsaXR5IG1hY3JvcyAoUHlJbnRfKiwKK1B5U3RyaW5nXyosIFNXSUdfUHl0 aG9uX3N0cl8qKSBmcm9tIGl0cyBydW50aW1lIGhlYWRlciBweWhlYWQuc3dnLgorVGhlc2UgbWFj cm9zIHByZXZpb3VzbHkgbWFwcGVkIGRlcHJlY2F0ZWQgUHl0aG9uIDIgQyBBUEkgbmFtZXMgdG8g dGhlaXIKK1B5dGhvbiAzIGVxdWl2YWxlbnRzLgorCitGaXhlczogaHR0cHM6Ly9naXRodWIuY29t L1NFTGludXhQcm9qZWN0L3NlbGludXgvaXNzdWVzLzUzOAorQXV0aG9yZWQtYnk6IEppdGthIFBs ZXNuw61rb3bDoSA8anBsZXNuaWtAcmVkaGF0LmNvbT4KK1NpZ25lZC1vZmYtYnk6IFBldHIgTGF1 dHJiYWNoIDxsYXV0cmJhY2hAcmVkaGF0LmNvbT4KKy0tLQorIGxpYnNlbGludXgvc3JjL3NlbGlu dXhzd2lnX3B5dGhvbi5pIHwgNiArKystLS0KKyAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25z KCspLCAzIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zcmMvc2VsaW51 eHN3aWdfcHl0aG9uLmkgYi9saWJzZWxpbnV4L3NyYy9zZWxpbnV4c3dpZ19weXRob24uaQoraW5k ZXggMDNlZDI5NmQ1Yjg1Li4xN2EyNjIwZDQ2ZjcgMTAwNjQ0CistLS0gYS9saWJzZWxpbnV4L3Ny Yy9zZWxpbnV4c3dpZ19weXRob24uaQorKysrIGIvbGlic2VsaW51eC9zcmMvc2VsaW51eHN3aWdf cHl0aG9uLmkKK0BAIC02OSw3ICs2OSw3IEBAIGRlZiBpbnN0YWxsKHNyYywgZGVzdCk6CisgCVB5 T2JqZWN0KiBsaXN0ID0gUHlMaXN0X05ldygqJDIpOworIAlpbnQgaTsKKyAJZm9yIChpID0gMDsg aSA8ICokMjsgaSsrKSB7CistCQlQeUxpc3RfU2V0SXRlbShsaXN0LCBpLCBQeVN0cmluZ19Gcm9t U3RyaW5nKCgqJDEpW2ldKSk7CisrCQlQeUxpc3RfU2V0SXRlbShsaXN0LCBpLCBQeVVuaWNvZGVf RnJvbVN0cmluZygoKiQxKVtpXSkpOworIAl9CisgCSRyZXN1bHQgPSBTV0lHX0FwcGVuZE91dHB1 dCgkcmVzdWx0LCBsaXN0KTsKKyB9CitAQCAtMTAyLDcgKzEwMiw3IEBAIGRlZiBpbnN0YWxsKHNy YywgZGVzdCk6CisgCQkJbGVuKys7CisgCQlwbGlzdCA9IFB5TGlzdF9OZXcobGVuKTsKKyAJCWZv ciAoaSA9IDA7IGkgPCBsZW47IGkrKykgeworLQkJCVB5TGlzdF9TZXRJdGVtKHBsaXN0LCBpLCBQ eVN0cmluZ19Gcm9tU3RyaW5nKCgqJDEpW2ldKSk7CisrCQkJUHlMaXN0X1NldEl0ZW0ocGxpc3Qs IGksIFB5VW5pY29kZV9Gcm9tU3RyaW5nKCgqJDEpW2ldKSk7CisgCQl9CisgCX0gZWxzZSB7Cisg CQlwbGlzdCA9IFB5TGlzdF9OZXcoMCk7CitAQCAtMTE5LDcgKzExOSw3IEBAIGRlZiBpbnN0YWxs KHNyYywgZGVzdCk6CisgCWlmICgqJDEpIHsKKyAJCXBsaXN0ID0gUHlMaXN0X05ldyhyZXN1bHQp OworIAkJZm9yIChpID0gMDsgaSA8IHJlc3VsdDsgaSsrKSB7CistCQkJUHlMaXN0X1NldEl0ZW0o cGxpc3QsIGksIFB5U3RyaW5nX0Zyb21TdHJpbmcoKCokMSlbaV0pKTsKKysJCQlQeUxpc3RfU2V0 SXRlbShwbGlzdCwgaSwgUHlVbmljb2RlX0Zyb21TdHJpbmcoKCokMSlbaV0pKTsKKyAJCX0KKyAJ fSBlbHNlIHsKKyAJCXBsaXN0ID0gUHlMaXN0X05ldygwKTsKKy0tIAorMi41NS4wCisKCmRpZmYg LS1naXQgYS8wMDAzLWxpYnNlbGludXgtcmVzdG9yZWNvbl94YXR0ci1yZXNldC1kaXJfeGF0dHJf bGlzdC1vbi0ucGF0Y2ggYi8wMDAzLWxpYnNlbGludXgtcmVzdG9yZWNvbl94YXR0ci1yZXNldC1k aXJfeGF0dHJfbGlzdC1vbi0ucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MC4uMDBkN2E1MgotLS0gL2Rldi9udWxsCisrKyBiLzAwMDMtbGlic2VsaW51eC1yZXN0b3JlY29u X3hhdHRyLXJlc2V0LWRpcl94YXR0cl9saXN0LW9uLS5wYXRjaApAQCAtMCwwICsxLDYwIEBACitG cm9tIGEyNTE2OTQwM2M2ODU4YjA3MjdhZTg3NWZmYWY4YjZlYThmYmQyNDYgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCitGcm9tOiBWaXQgTW9qemlzIDx2bW9qemlzQHJlZGhhdC5jb20+CitEYXRl OiBUaHUsIDYgQXVnIDIwMjYgMjE6Mzc6MzUgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSF0gbGlic2Vs aW51eDogcmVzdG9yZWNvbl94YXR0cjogcmVzZXQgZGlyX3hhdHRyX2xpc3Qgb24gZXZlcnkKKyBj YWxsCitDb250ZW50LXR5cGU6IHRleHQvcGxhaW4KKworc2VsaW51eF9yZXN0b3JlY29uX3hhdHRy KDMpIGRvY3VtZW50cyB0aGF0ICJ4YXR0cl9saXN0IG11c3QgYmUgc2V0IHRvCitOVUxMIGJlZm9y ZSBjYWxsaW5nIHNlbGludXhfcmVzdG9yZWNvbl94YXR0cigzKS4gVGhlIGNhbGxlciBpcworcmVz cG9uc2libGUgZm9yIGZyZWVpbmcgdGhlIHJldHVybmVkIHhhdHRyX2xpc3QgZW50cmllcy4iIENv bW1pdAorYjVhMjNkN2YzMGMxICgibGlic2VsaW51eDogcmVzdG9yZWNvbl94YXR0cjogY2xlYXIg ZGlyX3hhdHRyXyogYWZ0ZXIKK2ZyZWVpbmciKSByZXNldCB0aGUgZGlyX3hhdHRyX2xpc3QvZGly X3hhdHRyX2xhc3Qgc3RhdGljcyBhZnRlcgorZnJlZWluZyB0aGVtIG9uIHRoZSBpbnRlcm5hbCBl cnJvci1jbGVhbnVwIHBhdGggb2YgdGhlIHJlY3Vyc2l2ZQord2FsaywgYnV0IG5vdCBvbiB0aGUg bm9ybWFsIHN1Y2Nlc3MgcGF0aC4KKworQWZ0ZXIgYSBzdWNjZXNzZnVsIGNhbGwsIGRpcl94YXR0 cl9saXN0L2Rpcl94YXR0cl9sYXN0IGFyZSBsZWZ0Citwb2ludGluZyBhdCB0aGUganVzdC1yZXR1 cm5lZCwgbm93IGNhbGxlci1vd25lZCBsaXN0LiBPbmNlIHRoZSBjYWxsZXIKK2ZyZWVzIGl0IGFz IHJlcXVpcmVkIGFuZCBjYWxscyB0aGUgZnVuY3Rpb24gYWdhaW4sIGFkZF94YXR0cl9lbnRyeSgp CitmaW5kcyBkaXJfeGF0dHJfbGlzdCBub24tTlVMTCBhbmQgYXBwZW5kcyB0aGUgbmV4dCBlbnRy eSB0aHJvdWdoCitkaXJfeGF0dHJfbGFzdC0+bmV4dCwgYSBkYW5nbGluZyBwb2ludGVyIGludG8g bWVtb3J5IHRoZSBjYWxsZXIgaGFzCithbHJlYWR5IGZyZWVkIC0gYSB1c2UtYWZ0ZXItZnJlZSB3 cml0ZS4KKworUmVzZXQgYm90aCBwb2ludGVycyB0byBOVUxMIGF0IHRoZSB0b3Agb2YgZXZlcnkg Y2FsbCBpbnN0ZWFkIG9mIG9ubHkKK2luIHRoZSBlcnJvciBwYXRoOiBieSB0aGUgQVBJIGRlc2Ny aXB0aW9uLCBhbnkgbGlzdCBmcm9tIGEgcHJpb3IgY2FsbAoraXMgbm90IHZhbGlkLgorCitDby1B dXRob3JlZC1CeTogQ2xhdWRlIFNvbm5ldCA1IDxub3JlcGx5QGFudGhyb3BpYy5jb20+CisKK1Np Z25lZC1vZmYtYnk6IFZpdCBNb2p6aXMgPHZtb2p6aXNAcmVkaGF0LmNvbT4KK0Fja2VkLWJ5OiBT dGVwaGVuIFNtYWxsZXkgPHN0ZXBoZW4uc21hbGxleS53b3JrQGdtYWlsLmNvbT4KKy0tLQorIGxp YnNlbGludXgvc3JjL3NlbGludXhfcmVzdG9yZWNvbi5jIHwgMTIgKysrKysrKysrKysrCisgMSBm aWxlIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKykKKworZGlmZiAtLWdpdCBhL2xpYnNlbGludXgv c3JjL3NlbGludXhfcmVzdG9yZWNvbi5jIGIvbGlic2VsaW51eC9zcmMvc2VsaW51eF9yZXN0b3Jl Y29uLmMKK2luZGV4IGQ0OGQ1YTgzZWQ2ZS4uZGE2MWY5ZGU1OWY2IDEwMDY0NAorLS0tIGEvbGli c2VsaW51eC9zcmMvc2VsaW51eF9yZXN0b3JlY29uLmMKKysrKyBiL2xpYnNlbGludXgvc3JjL3Nl bGludXhfcmVzdG9yZWNvbi5jCitAQCAtMTk2Myw2ICsxOTYzLDE4IEBAIGludCBzZWxpbnV4X3Jl c3RvcmVjb25feGF0dHIoY29uc3QgY2hhciAqcGF0aG5hbWUsIHVuc2lnbmVkIGludCB4YXR0cl9m bGFncywKKyAJaWYgKCFmY19zZWhhbmRsZSkKKyAJCXJldHVybiAtMTsKKyAKKysJLyoKKysJICog VGhlIEFQSSBjb250cmFjdCByZXF1aXJlcyB0aGUgY2FsbGVyIHRvIGhhdmUgYWxyZWFkeSBmcmVl ZCBhbnkKKysJICogeGF0dHJfbGlzdCByZXR1cm5lZCBieSBhIHByZXZpb3VzIGNhbGwgYmVmb3Jl IGNhbGxpbmcgYWdhaW4uCisrCSAqIEZvcmdldCBvdXIgb3duIGhlYWQvdGFpbCBwb2ludGVycyB0 byB0aGF0IG5vdyBjYWxsZXItb3duZWQgbWVtb3J5CisrCSAqIGhlcmUgaW5zdGVhZCBvZiBjYXJy eWluZyB0aGVtIG92ZXI6IGxlYXZpbmcgdGhlbSBzZXQgd291bGQgbWFrZQorKwkgKiB0aGUgbmV4 dCBhZGRfeGF0dHJfZW50cnkoKSBhcHBlbmQgYSBuZXcgZW50cnkgdGhyb3VnaAorKwkgKiBkaXJf eGF0dHJfbGFzdCwgd2hpY2ggd291bGQgYmUgZGFuZ2xpbmcgb25jZSB0aGUgY2FsbGVyIGhhcyBm cmVlZAorKwkgKiBpdCwgcmVzdWx0aW5nIGluIGEgdXNlLWFmdGVyLWZyZWUuCisrCSAqLworKwlk aXJfeGF0dHJfbGlzdCA9IE5VTEw7CisrCWRpcl94YXR0cl9sYXN0ID0gTlVMTDsKKysKKyAJaWYg KGxzdGF0KHBhdGhuYW1lLCAmc2IpIDwgMCkgeworIAkJaWYgKGVycm5vID09IEVOT0VOVCkKKyAJ CQlyZXR1cm4gMDsKKy0tIAorMi41NS4wCisKCmRpZmYgLS1naXQgYS8wMDA0LUFkZC1zdXBwb3J0 LWZvci1VVEYtOC1pbi1maWxlLWNvbnRleHQtc3BlY2lmaWNhdGlvbnMucGF0Y2ggYi8wMDA0LUFk ZC1zdXBwb3J0LWZvci1VVEYtOC1pbi1maWxlLWNvbnRleHQtc3BlY2lmaWNhdGlvbnMucGF0Y2gK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzFhMTA2ZAotLS0gL2Rldi9udWxs CisrKyBiLzAwMDQtQWRkLXN1cHBvcnQtZm9yLVVURi04LWluLWZpbGUtY29udGV4dC1zcGVjaWZp Y2F0aW9ucy5wYXRjaApAQCAtMCwwICsxLDE3NSBAQAorRnJvbSAzY2EzZWYzODhjYzY1OTNiMmIw N2JjMDY2MTdlMzNlNDhkZmY5YjVlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogUGV0 ciBMYXV0cmJhY2ggPGxhdXRyYmFjaEByZWRoYXQuY29tPgorRGF0ZTogRnJpLCA0IFNlcCAyMDI2 IDE0OjExOjMwICswMjAwCitTdWJqZWN0OiBbUEFUQ0hdIEFkZCBzdXBwb3J0IGZvciBVVEYtOCBp biBmaWxlIGNvbnRleHQgc3BlY2lmaWNhdGlvbnMKK01JTUUtVmVyc2lvbjogMS4wCitDb250ZW50 LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKK0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rp bmc6IDhiaXQKK0NvbnRlbnQtdHlwZTogdGV4dC9wbGFpbgorCitJbXBsZW1lbnQgc3VwcG9ydCBm b3IgVVRGLTggc3ltYm9scyBpbiBmaWxlIHNwZWNpZmljYXRpb25zLiBTdHJpbmdzCityZXByZXNl bnRpbmcgcGF0aHMgYXJlIHByb2Nlc3NlZCBhcyBieXRlcyBzbyBpZiB1c2VycyBuZWVkIHRvIHVz ZQord2lsZGNhcmRzIG9uIG5vbi1hc2NpaSBzeW1ib2xzLCB0aGV5IG5lZWQgdG8gcHV0IHRoZW0g aW4gcGNyZSBncm91cHMsCitlLmcuICIvb3B0L8W+bHXFpW91KMSNKSsiCisKK1RoaXMgYnJpbmdz IHNvbWUgb3ZlcmhlYWQgYW5kIHNvIGl0J3MgcG9zc2libGUgdG8gZGlzYWJsZSBVVEYtOCBzdXBw b3J0CitidWlsZCB0aW1lIHVzaW5nIERJU0FCTEVfVVRGPXkgZW52aXJvbm1lbnQgdmFyaWFibGUu CisKK0ZpeGVzOgorICAgICMgY2F0IHVuaWNvZGUuY2lsCisgICAgKGZpbGVjb24gIi9vcHQvxb5s dcWlb3XEjWvDvSgvLiopPyIgYW55IChzeXN0ZW1fdSBvYmplY3RfciB1c2VyX2hvbWVfdCAoKHMw KSAoczApKSkpCisKKyAgICAjIHNlbW9kdWxlIC1pIHVuaWNvZGUuY2lsCisgICAgL3NiaW4vc2V0 ZmlsZXM6IC92YXIvbGliL3NlbGludXgvZmluYWwvdGFyZ2V0ZWQvY29udGV4dHMvZmlsZXMvZmls ZV9jb250ZXh0czogIGxpbmUgMjE0NSBlcnJvciBkdWUgdG86IE5vbi1BU0NJSSBjaGFyYWN0ZXJz IGZvdW5kCisgICAgL3NiaW4vc2V0ZmlsZXM6IC92YXIvbGliL3NlbGludXgvZmluYWwvdGFyZ2V0 ZWQvY29udGV4dHMvZmlsZXMvZmlsZV9jb250ZXh0czogIGxpbmUgMjE0NSBlcnJvciBkdWUgdG86 IE5vbi1BU0NJSSBjaGFyYWN0ZXJzIGZvdW5kCisgICAgL3Zhci9saWIvc2VsaW51eC9maW5hbC90 YXJnZXRlZC9jb250ZXh0cy9maWxlcy9maWxlX2NvbnRleHRzOiBJbnZhbGlkIGFyZ3VtZW50Cisg ICAgbGlic2VtYW5hZ2Uuc2VtYW5hZ2VfdmFsaWRhdGVfYW5kX2NvbXBpbGVfZmNvbnRleHRzOiBz ZXRmaWxlcyByZXR1cm5lZCBlcnJvciBjb2RlIDEuCisgICAgc2Vtb2R1bGU6ICBGYWlsZWQhCisK KyAgICAjIHNlbWFuYWdlIGZjb250ZXh0IC0tYWRkIC10IHVzZXJfaG9tZV90ICIvb3B0L8W+bHXF pW91xI1rw70oLy4qKT8iCisgICAgL3NiaW4vc2V0ZmlsZXM6IC92YXIvbGliL3NlbGludXgvZmlu YWwvdGFyZ2V0ZWQvY29udGV4dHMvZmlsZXMvZmlsZV9jb250ZXh0cy5sb2NhbDogIGxpbmUgNCBl cnJvciBkdWUgdG86IE5vbi1BU0NJSSBjaGFyYWN0ZXJzIGZvdW5kCisgICAgL3NiaW4vc2V0Zmls ZXM6IC92YXIvbGliL3NlbGludXgvZmluYWwvdGFyZ2V0ZWQvY29udGV4dHMvZmlsZXMvZmlsZV9j b250ZXh0cy5sb2NhbDogIGxpbmUgNCBlcnJvciBkdWUgdG86IE5vbi1BU0NJSSBjaGFyYWN0ZXJz IGZvdW5kCisgICAgL3Zhci9saWIvc2VsaW51eC9maW5hbC90YXJnZXRlZC9jb250ZXh0cy9maWxl cy9maWxlX2NvbnRleHRzOiBJbnZhbGlkIGFyZ3VtZW50CisgICAgbGlic2VtYW5hZ2Uuc2VtYW5h Z2VfdmFsaWRhdGVfYW5kX2NvbXBpbGVfZmNvbnRleHRzOiBzZXRmaWxlcyByZXR1cm5lZCBlcnJv ciBjb2RlIDEuCisgICAgT1NFcnJvcjogRXJyb3IKKworU2lnbmVkLW9mZi1ieTogUGV0ciBMYXV0 cmJhY2ggPGxhdXRyYmFjaEByZWRoYXQuY29tPgorQWNrZWQtYnk6IFN0ZXBoZW4gU21hbGxleSA8 c3RlcGhlbi5zbWFsbGV5LndvcmtAZ21haWwuY29tPgorLS0tCisgbGlic2VsaW51eC9NYWtlZmls ZSAgICAgICAgICAgIHwgIDQgKysKKyBsaWJzZWxpbnV4L3NyYy9sYWJlbF9zdXBwb3J0LmMgfCA4 MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA4 NyBpbnNlcnRpb25zKCspCisKK2RpZmYgLS1naXQgYS9saWJzZWxpbnV4L01ha2VmaWxlIGIvbGli c2VsaW51eC9NYWtlZmlsZQoraW5kZXggYWVlZGUyYjU2ZThlLi4wZjg0MTJjY2YxZWEgMTAwNjQ0 CistLS0gYS9saWJzZWxpbnV4L01ha2VmaWxlCisrKysgYi9saWJzZWxpbnV4L01ha2VmaWxlCitA QCAtMyw2ICszLDcgQEAgU1VCRElSUyA9IGluY2x1ZGUgc3JjIHV0aWxzIG1hbgorIFBLR19DT05G SUcgPz0gcGtnLWNvbmZpZworIERJU0FCTEVfU0VUUkFOUyA/PSBuCisgRElTQUJMRV9SUE0gPz0g bgorK0RJU0FCTEVfVVRGID89IG4KKyBBTkRST0lEX0hPU1QgPz0gbgorIExBQkVMX0JBQ0tFTkRf QU5EUk9JRCA/PSBuCisgaWZlcSAoJChBTkRST0lEX0hPU1QpLHkpCitAQCAtMjEsNiArMjIsOSBA QCBlbmRpZgorIGlmZXEgKCQoRElTQUJMRV9YMTEpLHkpCisgCURJU0FCTEVfRkxBR1MrPSAtRE5P X1hfQkFDS0VORAorIGVuZGlmCisraWZlcSAoJChESVNBQkxFX1VURikseSkKKysJRElTQUJMRV9G TEFHUys9IC1ETk9fVVRGCisrZW5kaWYKKyBleHBvcnQgRElTQUJMRV9TRVRSQU5TIERJU0FCTEVf UlBNIERJU0FCTEVfRkxBR1MgQU5EUk9JRF9IT1NUIERJU0FCTEVfWDExIExBQkVMX0JBQ0tFTkRf QU5EUk9JRAorIAorIFVTRV9QQ1JFMiA/PSB5CitkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zcmMv bGFiZWxfc3VwcG9ydC5jIGIvbGlic2VsaW51eC9zcmMvbGFiZWxfc3VwcG9ydC5jCitpbmRleCBh ZWE1ZWQxOWI0NWEuLmEyMjkzNzNhZjA5YyAxMDA2NDQKKy0tLSBhL2xpYnNlbGludXgvc3JjL2xh YmVsX3N1cHBvcnQuYworKysrIGIvbGlic2VsaW51eC9zcmMvbGFiZWxfc3VwcG9ydC5jCitAQCAt MTMsNiArMTMsNzYgQEAKKyAjaW5jbHVkZSA8ZXJybm8uaD4KKyAjaW5jbHVkZSAibGFiZWxfaW50 ZXJuYWwuaCIKKyAKKysjaWZuZGVmIE5PX1VURgorKworKyNkZWZpbmUgVVRGOHRhaWwoeCkgKCh4 KSA+PSAweDgwICYmICh4KSA8PSAweEJGKQorKworK3N0YXRpYyBzaXplX3QgdXRmOF9jaGFyX2xl bihjb25zdCB1bnNpZ25lZCBjaGFyICpzKQorK3sKKysJLyogcmZjMzYyOQorKwkgKiAgVVRGOC1v Y3RldHMgPSAqKCBVVEY4LWNoYXIgKQorKwkgKiAgVVRGOC1jaGFyICAgPSBVVEY4LTEgLyBVVEY4 LTIgLyBVVEY4LTMgLyBVVEY4LTQKKysJICogIFVURjgtMSAgICAgID0gJXgwMC03RgorKwkgKiAg VVRGOC0yICAgICAgPSAleEMyLURGIFVURjgtdGFpbAorKwkgKiAgVVRGOC0zICAgICAgPSAleEUw ICV4QTAtQkYgVVRGOC10YWlsIC8gJXhFMS1FQyAyKCBVVEY4LXRhaWwgKSAvCisrCSAqICAgICAg ICAgICAgICAgICV4RUQgJXg4MC05RiBVVEY4LXRhaWwgLyAleEVFLUVGIDIoIFVURjgtdGFpbCAp CisrCSAqICBVVEY4LTQgICAgICA9ICV4RjAgJXg5MC1CRiAyKCBVVEY4LXRhaWwgKSAvICV4RjEt RjMgMyggVVRGOC10YWlsICkgLworKwkgKiAgICAgICAgICAgICAgICAleEY0ICV4ODAtOEYgMigg VVRGOC10YWlsICkKKysJICogIFVURjgtdGFpbCAgID0gJXg4MC1CRgorKwkgKi8KKysJaWYgKHNb MF0gPT0gJ1wwJykKKysJCXJldHVybiAwOworKworKwlpZiAoc1swXSA8IDB4ODApCisrCQlyZXR1 cm4gMTsKKysKKysJaWYgKHNbMF0gPCAweEMyIHx8IHNbMV0gPT0gJ1wwJykKKysJCXJldHVybiAw OworKworKwlpZiAoc1swXSA8PSAweERGICYmIFVURjh0YWlsKHNbMV0pKQorKwkJcmV0dXJuIDI7 CisrCisrCWlmIChzWzJdID09ICdcMCcpCisrCQlyZXR1cm4gMDsKKysKKysJLyogJXhFMCAleEEw LUJGIFVURjgtdGFpbCAqLworKwlpZiAoc1swXSA9PSAweEUwICYmIHNbMV0gPj0gMHhBMCAmJiBz WzFdIDw9IDB4QkYgJiYgVVRGOHRhaWwoc1syXSkpCisrCQlyZXR1cm4gMzsKKysKKysJLyogJXhF MS1FQyAyKCBVVEY4LXRhaWwgKSAqLworKwlpZiAoc1swXSA+PSAweEUxICYmIHNbMF0gPD0gMHhF QyAmJiBVVEY4dGFpbChzWzFdKSAmJiBVVEY4dGFpbChzWzJdKSkKKysJCXJldHVybiAzOworKwor KwkvKiAleEVEICV4ODAtOUYgVVRGOC10YWlsICovCisrCWlmIChzWzBdID09IDB4RUQgJiYgc1sx XSA+PSAweDgwICYmIHNbMV0gPD0gMHg5RiAmJiBVVEY4dGFpbChzWzJdKSkKKysJCXJldHVybiAz OworKworKwkvKiAleEVFLUVGIDIoIFVURjgtdGFpbCApICovCisrCWlmIChzWzBdID49IDB4RUUg JiYgc1swXSA8PSAweEVGICYmIFVURjh0YWlsKHNbMV0pICYmIFVURjh0YWlsKHNbMl0pKQorKwkJ cmV0dXJuIDM7CisrCisrCWlmIChzWzNdID09ICdcMCcpCisrCQlyZXR1cm4gMDsKKysKKysJLyog JXhGMCAleDkwLUJGIDIoIFVURjgtdGFpbCApICovCisrCWlmIChzWzBdID09IDB4RjAgJiYgc1sx XSA+PSAweDkwICYmIHNbMV0gPD0gMHhCRiAmJiBVVEY4dGFpbChzWzJdKSAmJgorKwkgICAgVVRG OHRhaWwoc1szXSkpCisrCQlyZXR1cm4gNDsKKysKKysJLyogJXhGMS1GMyAzKCBVVEY4LXRhaWwg KSAqLworKwlpZiAoc1swXSA+PSAweEYxICYmIHNbMF0gPD0gMHhGMyAmJiBVVEY4dGFpbChzWzFd KSAmJiBVVEY4dGFpbChzWzJdKSAmJgorKwkgICAgVVRGOHRhaWwoc1szXSkpCisrCQlyZXR1cm4g NDsKKysKKysJLyogJXhGNCAleDgwLThGIDIoIFVURjgtdGFpbCApICovCisrCWlmIChzWzBdID09 IDB4RjQgJiYgc1sxXSA+PSAweDgwICYmIHNbMV0gPD0gMHg4RiAmJiBVVEY4dGFpbChzWzJdKSAm JgorKwkgICAgVVRGOHRhaWwoc1szXSkpCisrCQlyZXR1cm4gNDsKKysKKysJcmV0dXJuIDA7Cisr fQorKyNlbmRpZgorKworIC8qCisgICogUmVhZCBhbiBlbnRyeSBmcm9tIGEgc3BlYyBmaWxlIChl LmcuIGZpbGVfY29udGV4dHMpCisgICogZW50cnkgLSBCdWZmZXIgdG8gYWxsb2NhdGUgZm9yIHRo ZSBlbnRyeS4KK0BAIC0zNiw2ICsxMDYsNyBAQCBzdGF0aWMgaW5saW5lIGludCByZWFkX3NwZWNf ZW50cnkoY2hhciAqKmVudHJ5LCBjb25zdCBjaGFyICoqcHRyLCBzaXplX3QgKmxlbiwKKyAJKmxl biA9IDA7CisgCisgCXdoaWxlICghaXNzcGFjZSgodW5zaWduZWQgY2hhcikqKnB0cikgJiYgKipw dHIgIT0gJ1wwJykgeworKyNpZmRlZiBOT19VVEYKKyAJCWlmICghaXNhc2NpaSgodW5zaWduZWQg Y2hhcikqKnB0cikpIHsKKyAJCQllcnJubyA9IEVJTlZBTDsKKyAJCQkqZXJyYnVmID0gIk5vbi1B U0NJSSBjaGFyYWN0ZXJzIGZvdW5kIjsKK0BAIC00Myw2ICsxMTQsMTggQEAgc3RhdGljIGlubGlu ZSBpbnQgcmVhZF9zcGVjX2VudHJ5KGNoYXIgKiplbnRyeSwgY29uc3QgY2hhciAqKnB0ciwgc2l6 ZV90ICpsZW4sCisgCQl9CisgCQkoKnB0cikrKzsKKyAJCSgqbGVuKSsrOworKyNlbHNlCisrCQlz aXplX3QgY2hhcl9sZW4gPSB1dGY4X2NoYXJfbGVuKChjb25zdCB1bnNpZ25lZCBjaGFyICopKnB0 cik7CisrCisrCQlpZiAoY2hhcl9sZW4gPT0gMCkgeworKwkJCWVycm5vID0gRUlOVkFMOworKwkJ CSplcnJidWYgPSAiSW52YWxpZCBVVEYtOCBlbmNvZGluZyI7CisrCQkJcmV0dXJuIC0xOworKwkJ fQorKworKwkJKnB0ciArPSBjaGFyX2xlbjsKKysJCSpsZW4gKz0gY2hhcl9sZW47CisrI2VuZGlm CisgCX0KKyAKKyAJaWYgKCpsZW4pIHsKKy0tIAorMi41NS4wCisKCmRpZmYgLS1naXQgYS9jaGFu Z2Vsb2cgYi9jaGFuZ2Vsb2cKaW5kZXggNTVlZjBmZC4uNjA0YmI5MiAxMDA2NDQKLS0tIGEvY2hh bmdlbG9nCisrKyBiL2NoYW5nZWxvZwpAQCAtMSwzICsxLDYgQEAKKyogTW9uIFNlcCAwNyAyMDI2 IFBldHIgTGF1dHJiYWNoIDxsYXV0cmJhY2hAcmVkaGF0LmNvbT4gLSAzLjExLTIKKy0gQWRkIHN1 cHBvcnQgZm9yIFVURi04IGluIGZpbGUgY29udGV4dCBzcGVjaWZpY2F0aW9ucworCiAqIFdlZCBK dWwgMDEgMjAyNiBQZXRyIExhdXRyYmFjaCA8bGF1dHJiYWNoQHJlZGhhdC5jb20+IC0gMy4xMS0x CiAtIFNFTGludXggdXNlcnNwYWNlIDMuMTEgcmVsZWFzZQogCgpkaWZmIC0tZ2l0IGEvbGlic2Vs aW51eC5zcGVjIGIvbGlic2VsaW51eC5zcGVjCmluZGV4IDRlMGY3MmYuLjhlYmU5NWUgMTAwNjQ0 Ci0tLSBhL2xpYnNlbGludXguc3BlYworKysgYi9saWJzZWxpbnV4LnNwZWMKQEAgLTQsNyArNCw3 IEBACiBTdW1tYXJ5OiBTRUxpbnV4IGxpYnJhcnkgYW5kIHNpbXBsZSB1dGlsaXRpZXMKIE5hbWU6 IGxpYnNlbGludXgKIFZlcnNpb246IDMuMTEKLVJlbGVhc2U6IDElez9kaXN0fQorUmVsZWFzZTog MiV7P2Rpc3R9CiBMaWNlbnNlOiBMaWNlbnNlUmVmLUZlZG9yYS1QdWJsaWMtRG9tYWluCiAjIGh0 dHBzOi8vZ2l0aHViLmNvbS9TRUxpbnV4UHJvamVjdC9zZWxpbnV4L3dpa2kvUmVsZWFzZXMKIFNv dXJjZTA6IGh0dHBzOi8vZ2l0aHViLmNvbS9TRUxpbnV4UHJvamVjdC9zZWxpbnV4L3JlbGVhc2Vz L2Rvd25sb2FkLyV7dmVyc2lvbn0vbGlic2VsaW51eC0le3ZlcnNpb259LnRhci5negpAQCAtMjAs NiArMjAsOSBAQCBVcmw6IGh0dHBzOi8vZ2l0aHViLmNvbS9TRUxpbnV4UHJvamVjdC9zZWxpbnV4 L3dpa2kKICMgJCBpPTE7IGZvciBqIGluIDAwKnBhdGNoOyBkbyBwcmludGYgIlBhdGNoJTA0ZDog JXNcbiIgJGkgJGo7IGk9JCgoaSsxKSk7ZG9uZQogIyBQYXRjaCBsaXN0IHN0YXJ0CiBQYXRjaDAw MDE6IDAwMDEtVXNlLVNIQS0yLWluc3RlYWQtb2YtU0hBLTEucGF0Y2gKK1BhdGNoMDAwMjogMDAw Mi1saWJzZWxpbnV4LVJlcGxhY2UtUHlTdHJpbmdfRnJvbVN0cmluZy13aXRoLVB5VW5pY29kLnBh dGNoCitQYXRjaDAwMDM6IDAwMDMtbGlic2VsaW51eC1yZXN0b3JlY29uX3hhdHRyLXJlc2V0LWRp cl94YXR0cl9saXN0LW9uLS5wYXRjaAorUGF0Y2gwMDA0OiAwMDA0LUFkZC1zdXBwb3J0LWZvci1V VEYtOC1pbi1maWxlLWNvbnRleHQtc3BlY2lmaWNhdGlvbnMucGF0Y2gKICMgUGF0Y2ggbGlzdCBl bmQKIEJ1aWxkUmVxdWlyZXM6IGdjYyBtYWtlCiBCdWlsZFJlcXVpcmVzOiBydWJ5LWRldmVsIHJ1 YnkgbGlic2Vwb2wtc3RhdGljID49ICV7bGlic2Vwb2x2ZXJ9IHN3aWcgcGNyZTItZGV2ZWwK