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: Yaakov Selkowitz To: git-commits@fedoraproject.org Subject: [rpms/open-vm-tools] f45: Merge remote-tracking branch 'centos-stream/c10s' into eln Date: Wed, 23 Sep 2026 22:13:08 GMT Message-ID: <179020158871.1.4864526929176483327.rpms-open-vm-tools-39e4b4e07eec@fedoraproject.org> List-ID: X-Git-Repo: rpms/open-vm-tools X-Git-Branch: f45 X-Git-Rev: 39e4b4e07eec32459089c03fbbd39864854424ea QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvb3Blbi12bS10b29s cwpCcmFuY2ggOiBmNDUKQ29tbWl0IDogMzllNGI0ZTA3ZWVjMzI0NTkwODljMDNmYmJkMzk4NjQ4 NTQ0MjRlYQpBdXRob3IgOiBZYWFrb3YgU2Vsa293aXR6IDx5c2Vsa293aUByZWRoYXQuY29tPgpE YXRlICAgOiAyMDI2LTAyLTI2VDIwOjU3OjAzLTA1OjAwClN0YXRzICA6ICs3ODYvLTc5IGluIDUg ZmlsZShzKQpVUkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL29wZW4t dm0tdG9vbHMvYy8zOWU0YjRlMDdlZWMzMjQ1OTA4OWMwM2ZiYmQzOTg2NDg1NDQyNGVhP2JyYW5j aD1mNDUKCkxvZzoKTWVyZ2UgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnY2VudG9zLXN0cmVhbS9j MTBzJyBpbnRvIGVsbgoKLS0tCmRpZmYgLS1naXQgYS8uZ2l0aWdub3JlIGIvLmdpdGlnbm9yZQpp bmRleCBkMzJjMjRkLi44NDg4MWZiIDEwMDY0NAotLS0gYS8uZ2l0aWdub3JlCisrKyBiLy5naXRp Z25vcmUKQEAgLTQxLDMgKzQxLDQgQEAKIC9vcGVuLXZtLXRvb2xzLTEyLjUuMC0yNDI3Njg0Ni50 YXIuZ3oKIC9vcGVuLXZtLXRvb2xzLTEzLjAuMC0yNDY5NjQwOS50YXIuZ3oKIC9vcGVuLXZtLXRv b2xzLTEzLjAuNS0yNDkxNTY5NS50YXIuZ3oKKy9vcGVuLXZtLXRvb2xzLTEzLjAuMTAtMjUwNTYx NTEudGFyLmd6CgpkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy5zcGVjIGIvb3Blbi12bS10b29s cy5zcGVjCmluZGV4IDAwNDFkMmYuLmZhYjQ0MjYgMTAwNjQ0Ci0tLSBhL29wZW4tdm0tdG9vbHMu c3BlYworKysgYi9vcGVuLXZtLXRvb2xzLnNwZWMKQEAgLTE5LDggKzE5LDggQEAKICMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjCiAKICVnbG9iYWwgbWFqb3J2ZXJzaW9uICAgIDEzLjAKLSVnbG9iYWwg bWlub3J2ZXJzaW9uICAgIDUKLSVnbG9iYWwgdG9vbHNidWlsZCAgICAgIDI0OTE1Njk1CislZ2xv YmFsIG1pbm9ydmVyc2lvbiAgICAxMAorJWdsb2JhbCB0b29sc2J1aWxkICAgICAgMjUwNTYxNTEK ICVnbG9iYWwgdG9vbHN2ZXJzaW9uICAgICV7bWFqb3J2ZXJzaW9ufS4le21pbm9ydmVyc2lvbn0K ICVnbG9iYWwgdG9vbHNkYWVtb24gICAgIHZtdG9vbHNkCiAlZ2xvYmFsIHZnYXV0aGRhZW1vbiAg ICB2Z2F1dGhkCkBAIC03OCw4ICs3OCw2IEBAIEV4Y2x1c2l2ZUFyY2g6ICAgICV7aXg4Nn0geDg2 XzY0IGFhcmNoNjQKIAogIyBQYXRjaGVzCiAjUGF0Y2gwOiAgICAgICAgICAgPHBhdGNoLW5hbWUw Pi5wYXRjaAotIyBGb3IgUkhFTC05OTc4MSAtIENsb3VkLWluaXQgcmVjZWl2ZXMgVEVSTSBzaWdu YWwgZnJvbSBQSUQgMSBpbiB0aGUgbWlkZGxlIG9mIHJ1bm5pbmcgdXNlciBkYXRhIFtyaGVsLTEw XQotUGF0Y2gxOiBvdnQtSGFuZGxlLW5ldy1jbG91ZC1pbml0LWVycm9yLWNvZGUtYW5kLXN0YXR1 cy5wYXRjaAogUGF0Y2gyOiAwMDAxLUZpeC1kaXNjYXJkZWQtcXVhbGlmaWVycy13YXJuaW5nLWVy cm9yLnBhdGNoCiAKIEJ1aWxkUmVxdWlyZXM6ICAgIGF1dG9jb25mCkBAIC02MjUsNiArNjIzLDEx IEBAIGZpCiAle19iaW5kaXJ9L3Ztd2FyZS12Z2F1dGgtc21va2V0ZXN0CiAKICVjaGFuZ2Vsb2cK KyogTW9uIEZlYiAxNiAyMDI2IEJvIFlhbmcgPGJveWFuZ0ByZWRoYXQuY29tPiAtIDEzLjAuMTAt MQorLSBSZWJhc2UgdG8gMTMuMC4xMCBbUkhFTC0xNDQ1NzddCistIFJlc29sdmVzOiBSSEVMLTE0 NDU3NworICAoW0VTWGldW1JIRUwxMF0gb3Blbi12bS10b29scyB2ZXJzaW9uIDEzLjAuMTAgaGFz IGJlZW4gcmVsZWFzZWQgLSBwbGVhc2UgcmViYXNlKQorCiAqIE1vbiBOb3YgMDMgMjAyNSBCbyBZ YW5nIDxib3lhbmdAcmVkaGF0LmNvbT4gLSAxMy4wLjUtMQogLSBSZWJhc2UgdG8gMTMuMC41IFtS SEVMLTExODUwNF0KIC0gUmVzb2x2ZXM6IFJIRUwtMTE4NTA0CgpkaWZmIC0tZ2l0IGEvb3Z0LUhh bmRsZS1uZXctY2xvdWQtaW5pdC1lcnJvci1jb2RlLWFuZC1zdGF0dXMucGF0Y2ggYi9vdnQtSGFu ZGxlLW5ldy1jbG91ZC1pbml0LWVycm9yLWNvZGUtYW5kLXN0YXR1cy5wYXRjaApkZWxldGVkIGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggNTQ3M2MwYi4uMDAwMDAwMAotLS0gYS9vdnQtSGFuZGxlLW5l dy1jbG91ZC1pbml0LWVycm9yLWNvZGUtYW5kLXN0YXR1cy5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDc0ICswLDAgQEAKLUZyb20gNmM0MTMwNzU0YjE4M2M5MjliNTA5MmJhYjUxNmM2MzkxOTc0 ZGRjYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IFBlbmdwZW5nIFN1biA8cGVuZ3Bl bmcuc3VuQGJyb2FkY29tLmNvbT4KLURhdGU6IFdlZCwgMjcgQXVnIDIwMjUgMTQ6MTk6NTggKzA4 MDAKLVN1YmplY3Q6IFtQQVRDSCAxLzJdIEhhbmRsZSBuZXcgY2xvdWQtaW5pdCBlcnJvciBjb2Rl IGFuZCBzdGF0dXMKLQotUkgtQXV0aG9yOiBBbmkgU2luaGEgPGFuaXNpbmhhQHJlZGhhdC5jb20+ Ci1SSC1NZXJnZVJlcXVlc3Q6IDEyOiBIYW5kbGUgbmV3IGNsb3VkLWluaXQgZXJyb3IgY29kZSBh bmQgc3RhdHVzCi1SSC1KaXJhOiBSSEVMLTk5NzgxCi1SSC1BY2tlZC1ieTogeGlhY2hlbiA8eGlh Y2hlbkByZWRoYXQuY29tPgotUkgtQWNrZWQtYnk6IE1pcm9zbGF2IFJlemFuaW5hIDxtcmV6YW5p bkByZWRoYXQuY29tPgotUkgtQ29tbWl0OiBbMS8xXSA0MGE3MDU1MDczNjNiOWU1MDhmY2M1MDI1 MGQ1MWM4ZWNhN2U4MWEzIChhbmlzaW5oYS9jZW50b3Mtb3Blbi12bS10b29scykKLQotIC0gQSBu ZXcgZXJyb3IgY29kZSBbMV0gd2FzIGludHJvZHVjZWQgaW4gY2xvdWQtaW5pdCB2MjMuNCwgUmVk SGF0IHRlYW0gcmVwb3J0ZWQKLXRoYXQgb3VyIE9WVCBjb2RlIHNoYWxsIGhhbmRsZSB0aGlzIG5l dyBlcnJvciBjb2RlIHByb3Blcmx5LCBzZWUKLWh0dHBzOi8vZ2l0aHViLmNvbS92bXdhcmUvb3Bl bi12bS10b29scy9pc3N1ZXMvNzY4LgotVGhpcyBjaGFuZ2UgZm9sbG93cyB0aGUgYmFja3dhcmRz LWNvbXBhdGlibGUgd2F5IGluCi1odHRwczovL2Nsb3VkaW5pdC5yZWFkdGhlZG9jcy5pby9lbi9s YXRlc3QvZXhwbGFuYXRpb24vcmV0dXJuX2NvZGVzLmh0bWwKLXRvIGNoZWNrIHRoYXQgdGhlIHJl dHVybiBjb2RlIGlzIG5vdCBlcXVhbCB0byAxLgotCi0gLSBSdW5uaW5nIHN0YXR1cyBoYXMgYmVl biBjaGFuZ2VkIGZyb20gIm5vdCBydW4iIHRvICJub3Qgc3RhcnRlZCIgaW4KLWNsb3VkLWluaXQg djI0LjEsIHNlZSBkZXRhaWxzIGluCi1odHRwczovL2dpdGh1Yi5jb20vY2Fub25pY2FsL2Nsb3Vk LWluaXQvY29tbWl0L2QxNzUxNzBhZWRjMTM5OGI4NWFjNzY3NTczYjg3NzNhNWEyZTdjNmYuCi1U aGlzIGNoYW5nZSBhZGRzICJub3Qgc3RhcnRlZCIgbWF0Y2ggdG8gQ0xPVURJTklUX1NUQVRVU19O T1RfUlVOLgotCi1UaGlzIHBhdGNoIHdhcyBzZW50IGJ5IEpvaG4gV29sZmUgb3ZlciBlbWFpbCBh bmQgaGFzIGJlZW4gcHVzaGVkIHVwc3RyZWFtIGhlcmU6Ci1odHRwczovL2dpdGh1Yi5jb20vdm13 YXJlL29wZW4tdm0tdG9vbHMvYmxvYi9IYW5kbGUtbmV3LWNsb3VkLWluaXQtZXJyb3ItY29kZS5w YXRjaC8KLQotQWRkcmVzc2VzIG9wZW4tdm0tdG9vbHMgaXNzdWUgaHR0cHM6Ly9naXRodWIuY29t L3Ztd2FyZS9vcGVuLXZtLXRvb2xzL2lzc3Vlcy83NjgKLQotVGhpcyBjaGFuZ2UgaGFzIGJlZW4g dGVzdGVkIGludGVybmFsbHkgYnkgQW15IENoZW4gYW5kIGlzIHNlZW4gdG8gZml4IHRoZQotb3Jp Z2luYWwgaXNzdWUuCi0KLTEuIGh0dHBzOi8vY2xvdWRpbml0LnJlYWR0aGVkb2NzLmlvL2VuL2xh dGVzdC9leHBsYW5hdGlvbi9mYWlsdXJlX3N0YXRlcy5odG1sI2Vycm9yLWNvZGVzCi0KLVNpZ25l ZC1vZmYtYnk6IEFuaSBTaW5oYSA8YW5pc2luaGFAcmVkaGF0LmNvbT4KLS0tLQotIG9wZW4tdm0t dG9vbHMvbGliRGVwbG95UGtnL2xpbnV4RGVwbG95bWVudC5jIHwgMTAgKysrKysrKy0tLQotIDEg ZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1n aXQgYS9vcGVuLXZtLXRvb2xzL2xpYkRlcGxveVBrZy9saW51eERlcGxveW1lbnQuYyBiL29wZW4t dm0tdG9vbHMvbGliRGVwbG95UGtnL2xpbnV4RGVwbG95bWVudC5jCi1pbmRleCA0NGNhYzhlZi4u ODJlODM5NTcgMTAwNjQ0Ci0tLS0gYS9vcGVuLXZtLXRvb2xzL2xpYkRlcGxveVBrZy9saW51eERl cGxveW1lbnQuYwotKysrIGIvb3Blbi12bS10b29scy9saWJEZXBsb3lQa2cvbGludXhEZXBsb3lt ZW50LmMKLUBAIC0xMzEzLDYgKzEzMTMsNyBAQCBzdGF0aWMgQ0xPVURJTklUX1NUQVRVU19DT0RF Ci0gR2V0Q2xvdWRpbml0U3RhdHVzKCkgewotICAgIC8vIENsb3VkLWluaXQgZXhlY3V0aW9uIHN0 YXR1cyBtZXNzYWdlcwotICAgIHN0YXRpYyBjb25zdCBjaGFyKiBOT1RfUlVOID0gIm5vdCBydW4i OwotKyAgIHN0YXRpYyBjb25zdCBjaGFyKiBOT1RfU1RBUlRFRCA9ICJub3Qgc3RhcnRlZCI7Ci0g ICAgc3RhdGljIGNvbnN0IGNoYXIqIFJVTk5JTkcgPSAicnVubmluZyI7Ci0gICAgc3RhdGljIGNv bnN0IGNoYXIqIERPTkUgPSAiZG9uZSI7Ci0gICAgc3RhdGljIGNvbnN0IGNoYXIqIEVSUk9SID0g ImVycm9yIjsKLUBAIC0xMzI2LDEzICsxMzI3LDE2IEBAIEdldENsb3VkaW5pdFN0YXR1cygpIHsK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UsCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsb3VkaW5pdFN0YXR1c0Nt ZE91dHB1dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUFY X0xFTkdUSF9DTE9VRElOSVRfU1RBVFVTKTsKLS0gICBpZiAoZm9ya0V4ZWNSZXN1bHQgIT0gMCkg ewotLSAgICAgIHNMb2cobG9nX2luZm8sICJVbmFibGUgdG8gZ2V0IGNsb3VkLWluaXQgc3RhdHVz LiIpOwotLSAgICAgIHJldHVybiBDTE9VRElOSVRfU1RBVFVTX1VOS05PV047Ci0rICAgaWYgKGZv cmtFeGVjUmVzdWx0ID09IDEpIHsKLSsgICAgICBzTG9nKGxvZ19pbmZvLCAiQ2xvdWQtaW5pdCBl eHBlcmllbmNlZCB1bnJlY292ZXJhYmxlIGVycm9yLiIpOwotKyAgICAgIHJldHVybiBDTE9VRElO SVRfU1RBVFVTX0VSUk9SOwotICAgIH0gZWxzZSB7Ci0gICAgICAgaWYgKHN0cnN0cihjbG91ZGlu aXRTdGF0dXNDbWRPdXRwdXQsIE5PVF9SVU4pICE9IE5VTEwpIHsKLSAgICAgICAgICBzTG9nKGxv Z19pbmZvLCAiQ2xvdWQtaW5pdCBzdGF0dXMgaXMgJyVzJy4iLCBOT1RfUlVOKTsKLSAgICAgICAg ICByZXR1cm4gQ0xPVURJTklUX1NUQVRVU19OT1RfUlVOOwotKyAgICAgIH0gZWxzZSBpZiAoc3Ry c3RyKGNsb3VkaW5pdFN0YXR1c0NtZE91dHB1dCwgTk9UX1NUQVJURUQpICE9IE5VTEwpIHsKLSsg ICAgICAgICBzTG9nKGxvZ19pbmZvLCAiQ2xvdWQtaW5pdCBzdGF0dXMgaXMgJyVzJy4iLCBOT1Rf U1RBUlRFRCk7Ci0rICAgICAgICAgcmV0dXJuIENMT1VESU5JVF9TVEFUVVNfTk9UX1JVTjsKLSAg ICAgICB9IGVsc2UgaWYgKHN0cnN0cihjbG91ZGluaXRTdGF0dXNDbWRPdXRwdXQsIFJVTk5JTkcp ICE9IE5VTEwpIHsKLSAgICAgICAgICBzTG9nKGxvZ19pbmZvLCAiQ2xvdWQtaW5pdCBzdGF0dXMg aXMgJyVzJy4iLCBSVU5OSU5HKTsKLSAgICAgICAgICByZXR1cm4gQ0xPVURJTklUX1NUQVRVU19S VU5OSU5HOwotLS0gCi0yLjQ3LjMKLQoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3VyY2VzCmlu ZGV4IDc4N2ZjMWMuLmVmNzI1Y2YgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291cmNlcwpA QCAtMSw0ICsxLDQgQEAKLVNIQTUxMiAob3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUudGFy Lmd6KSA9IGU4YTBjODIzZTg0MzBlM2RmMDg3M2Y4MDMxNzA0NTM2ZTczYmVjMjFkNGNkMzdjMzdh MzcwNTNmZTJhNTExNmFlMWQyZmRmYTA1ZWFlOTU5MTBjMjIyMzhjOTY3YWNjOTZmNjYwM2UxZGQ4 Mjg5ZjJjYTkyNjUwNzA0MGM3NTdhCitTSEE1MTIgKG9wZW4tdm0tdG9vbHMtMTMuMC4xMC0yNTA1 NjE1MS50YXIuZ3opID0gYzMzMmZkMmVmYjNiYzE2ZjJmYmI3N2I3YjBkMGY0YTViYjI1MWI1YjQ4 MjgyNjBiYjZjYmQ5NjkwM2EzOGQ0OTJmOTA3MjdkYWQ1NGVmOTVlNDQyY2YzZGNjMDQzMDMyZTU1 ODFlNjRlM2FlZTRhZmI1NWI5ZGI1NjhhMjkyNTkKIFNIQTUxMiAoYXRrbW0tMi4yOC40LTIuZWwx MC5zcmMucnBtKSA9IDU1OTUzYzMyMjFjMjI4NDMzZTcyMGIyODUxN2MxZDIzZmFiYTEwOTFlYjVk ODFiZTY1MjJjMDk2YjdjZjQyODI4ZWFlZmUxYzMzMGFhMmNhMGIwNTgxODhjZjRkZGQ4NTQ5NDYz ZDU4MTc5NDlhNWEzMWVmZWFkNzIwOTdkMDRlCiBTSEE1MTIgKGNhaXJvbW0tMS4xNC41LTUuZWwx MC5zcmMucnBtKSA9IDJkMDM2ZTgzYzYzZGQyOWExOTMzNTQyZGUyMjc0ZDc0YjRlNjMxMDBkOTBk ZmQ1NTllYWJkZDAwMzMzYWM0ZGQxY2EyNWQ4MTBmNTE4MGMxYzFhZmQ3MWNkOTg1Mzc2ZTc3MDBi ZWFmZjRmMzg1MTMyMjAwYzc1NjMzYmZjOTgwCiBTSEE1MTIgKGdsaWJtbTIuNC0yLjY2LjYtNS5l bDEwLnNyYy5ycG0pID0gNzhjZDVkNTRmMWVmOWZhZjJiZTc1ZjIyNTUwYjVlYzYwYjU1ZjZjNDM0 NWRmOTFkYjk1ODg5NzYyZjYwNmEwNjQ5OTA1MDc3OTM0NTI3Yjk4YmEzMjUyMTJiYjQ2MGExOWRl YWRlZjllZWExNWJiMGM1MDkxNWU1NjA2MjFkNGMKCmRpZmYgLS1naXQgYS8wMDAxLUZpeC1kaXNj YXJkZWQtcXVhbGlmaWVycy13YXJuaW5nLWVycm9yLnBhdGNoIGIvMDAwMS1GaXgtZGlzY2FyZGVk LXF1YWxpZmllcnMtd2FybmluZy1lcnJvci5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwLi4yYTljNzRmCi0tLSAvZGV2L251bGwKKysrIGIvMDAwMS1GaXgtZGlzY2FyZGVk LXF1YWxpZmllcnMtd2FybmluZy1lcnJvci5wYXRjaApAQCAtMCwwICsxLDc3NiBAQAorRnJvbSAw ZTgwY2I4NmJiNDc1ZjY2N2RhZjdlYjYzYTQyMTYyYmI4NGFiMDdhIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQorRnJvbTogTWlyb3NsYXYgUmV6YW5pbmEgPG1yZXphbmluQHJlZGhhdC5jb20+CitE YXRlOiBUdWUsIDkgRGVjIDIwMjUgMTI6MjI6MDIgKzAxMDAKK1N1YmplY3Q6IFtQQVRDSF0gRml4 IGRpc2NhcmRlZC1xdWFsaWZpZXJzIHdhcm5pbmcgZXJyb3IKKworTmV3IGdjYyByZXBvcnRzIHdh cm5pbmcgd2hlbiBwb2ludGVyIGxvb3NlcyBjb25zdCBxdWFsaWZpZXIuCisKK0luIGFkZGl0aW9u LCBoYW5kbGUgbmV3IGdfZnJlZSBkZWZpbml0aW9uLgorCitTaWduZWQtb2ZmLWJ5OiBNaXJvc2xh diBSZXphbmluYSA8bXJlemFuaW5AcmVkaGF0LmNvbT4KKy0tLQorIG9wZW4tdm0tdG9vbHMtMTMu MC41LTI0OTE1Njk1L2NvbmZpZy9sdG1haW4uc2ggICAgIHwgIDQgKystLQorIC4uLi9saWIvZmls ZS9maWxlTG9ja1Bvc2l4LmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQorIC4uLi9s aWIvZmlsZS9maWxlTG9ja1ByaW1pdGl2ZS5jICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KKyBv cGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvZmlsZS9maWxlUG9zaXguYyB8ICA0ICsr LS0KKyAuLi4vbGliL2ZpbGUvZmlsZVN0YW5kQWxvbmUuYyAgICAgICAgICAgICAgICAgICAgICB8 ICA4ICsrKystLS0tCisgLi4uL2xpYi9nbGliVXRpbHMvZmlsZUxvZ2dlci5jICAgICAgICAgICAg ICAgICAgICAgfCAgOCArKysrLS0tLQorIC4uLi9saWIvaGdmcy9oZ2ZzRXNjYXBlLmMgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgMTQgKysrKysrKy0tLS0tLS0KKyAuLi4vbGliL2hnZnNTZXJ2 ZXIvaGdmc1NlcnZlckxpbnV4LmMgICAgICAgICAgICAgICB8ICA0ICsrLS0KKyBvcGVuLXZtLXRv b2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvbWlzYy9jb2Rlc2V0LmMgICB8ICAyICstCisgLi4uL2xp Yi9taXNjL2NvZGVzZXRPbGQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQorIC4u Li9saWIvbWlzYy9ob3N0aW5mb1Bvc2l4LmMgICAgICAgICAgICAgICAgICAgICAgIHwgMTQgKysr KysrKy0tLS0tLS0KKyBvcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvbWlzYy9tYWNo aW5lSUQuYyB8ICAyICstCisgb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL21pc2Mv c3RydXRpbC5jICAgfCAgOCArKysrLS0tLQorIC4uLi9saWIvbmljSW5mby9uaWNJbmZvUG9zaXgu YyAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KKyAuLi4vbGliL3Byb2NNZ3IvcHJvY01nclBv c2l4LmMgICAgICAgICAgICAgICAgICAgICB8ICA4ICsrKystLS0tCisgLi4uL2xpYi9wcm9jTWdy L3Byb2NNZ3JTb2xhcmlzLmMgICAgICAgICAgICAgICAgICAgfCAgMiArLQorIC4uLi9saWIvcnBj Q2hhbm5lbC9nbGliX3N0dWJzLmMgICAgICAgICAgICAgICAgICAgIHwgIDMgKysrCisgb3Blbi12 bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3VzZXIvdXRpbC5jICAgICAgfCAgMiArLQorIC4u Li9saWJndWVzdFN0b3JlQ2xpZW50L2d1ZXN0U3RvcmVDbGllbnRMaWIuYyAgICAgIHwgIDQgKyst LQorIG9wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYnZtdG9vbHMvaTE4bi5jICAgIHwg IDQgKystLQorIC4uLi9tb2R1bGVzL3NvbGFyaXMvdm1oZ2ZzL3Zub2RlLmMgICAgICAgICAgICAg ICAgIHwgIDIgKy0KKyAuLi4vY29tcG9uZW50TWdyL2NvbXBvbmVudE1nckluc3RhbGxBY3Rpb24u YyAgICAgICB8ICA0ICsrLS0KKyAuLi4vc2VydmljZXMvcGx1Z2lucy9kbmRjcC9jb3B5UGFzdGVV SVgxMS5jcHAgICAgICB8ICAyICstCisgLi4uL3NlcnZpY2VzL3BsdWdpbnMvZG5kY3AvZG5kL2Ru ZFhkZy5jICAgICAgICAgICAgfCAgMiArLQorIC4uLi9wbHVnaW5zL2RuZGNwL2RuZEd1ZXN0L2d1 ZXN0Q29weVBhc3RlU3JjLmNjICAgIHwgIDIgKy0KKyAuLi4vcGx1Z2lucy9kbmRjcC9kbmRHdWVz dC92bUd1ZXN0RG5EU3JjLmNjICAgICAgICB8ICAyICstCisgLi4uL3NlcnZpY2VzL3BsdWdpbnMv ZG5kY3AvZG5kVUlYMTEuY3BwICAgICAgICAgICAgfCAgMiArLQorIC4uLi9zZXJ2aWNlcy9wbHVn aW5zL2d1ZXN0SW5mby9wZXJmTW9uTGludXguYyAgICAgIHwgIDIgKy0KKyAuLi4vc2VydmljZXMv cGx1Z2lucy92aXgvdml4VG9vbHMuYyAgICAgICAgICAgICAgICB8ICA4ICsrKystLS0tCisgLi4u L3Rlc3RzL3ZtcnBjZGJnL2RlYnVnQ2hhbm5lbC5jICAgICAgICAgICAgICAgICAgfCAgMiArLQor IG9wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3ZnYXV0aC9jb21tb24vaTE4bi5jIHwgIDIg Ky0KKyAuLi4vdm1ibG9ja21vdW50ZXIvdm1ibG9ja21vdW50ZXIuYyAgICAgICAgICAgICAgICB8 ICAyICstCisgb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvdm1oZ2ZzLWZ1c2UvY29uZmln LmMgfCAgMiArLQorIG9wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3hmZXJsb2dzL3hmZXJs b2dzLmMgIHwgIDggKysrKy0tLS0KKyAzNCBmaWxlcyBjaGFuZ2VkLCA3MyBpbnNlcnRpb25zKCsp LCA3MCBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0 OTE1Njk1L2NvbmZpZy9sdG1haW4uc2ggYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9j b25maWcvbHRtYWluLnNoCitpbmRleCAyYzE1MzA5Li4wOTg5OWYxIDEwMDc1NQorLS0tIGEvb3Bl bi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvY29uZmlnL2x0bWFpbi5zaAorKysrIGIvb3Blbi12 bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvY29uZmlnL2x0bWFpbi5zaAorQEAgLTQ0NzYsMTEgKzQ0 NzYsMTEgQEAgRU9GCisgCSAgICBjYXQgPDwiRU9GIgorICAgeworICAgICBjaGFyKiBwOworLSAg ICB3aGlsZSAoKHAgPSBzdHJjaHIgKG5ld2FyZ3pbMF0sICdcXCcpKSAhPSBOVUxMKQorKyAgICB3 aGlsZSAoKHAgPSAoY2hhciAqKSBzdHJjaHIgKG5ld2FyZ3pbMF0sICdcXCcpKSAhPSBOVUxMKQor ICAgICAgIHsKKyAJKnAgPSAnLyc7CisgICAgICAgfQorLSAgICB3aGlsZSAoKHAgPSBzdHJjaHIg KGx0X2FyZ3ZfemVybywgJ1xcJykpICE9IE5VTEwpCisrICAgIHdoaWxlICgocCA9IChjaGFyICop IHN0cmNociAobHRfYXJndl96ZXJvLCAnXFwnKSkgIT0gTlVMTCkKKyAgICAgICB7CisgCSpwID0g Jy8nOworICAgICAgIH0KK2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5 NS9saWIvZmlsZS9maWxlTG9ja1Bvc2l4LmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5 NS9saWIvZmlsZS9maWxlTG9ja1Bvc2l4LmMKK2luZGV4IGE3MzczYjQuLjBlZWNjNDIgMTAwNjQ0 CistLS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvZmlsZS9maWxlTG9ja1Bv c2l4LmMKKysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9maWxlL2ZpbGVM b2NrUG9zaXguYworQEAgLTE3Miw3ICsxNzIsNyBAQCBGaWxlUmVhZFNsYXNoUHJvYyhjb25zdCBj aGFyICpwcm9jUGF0aCwgIC8vIElOOgorIAorICAgIGJ1ZmZlcltsZW5dID0gJ1wwJzsKKyAKKy0g ICBwID0gc3RyY2hyKGJ1ZmZlciwgJ1xuJyk7CisrICAgcCA9IChjaGFyICopIHN0cmNocihidWZm ZXIsICdcbicpOworIAorICAgIGlmIChwICE9IE5VTEwpIHsKKyAgICAgICAqcCA9ICdcMCc7CitA QCAtMjQ4LDcgKzI0OCw3IEBAIEZpbGVMb2NrUHJvY2Vzc0Rlc2NyaXB0b3IocGlkX3QgcGlkKSAg Ly8gSU46CisgCisgICAgICAgKihwIC0gMSkgPSAnXDAnOworIAorLSAgICAgIHEgPSBzdHJyY2hy KHAgKyAxLCAnKScpOworKyAgICAgIHEgPSAoY2hhciAqKSBzdHJyY2hyKHAgKyAxLCAnKScpOwor ICAgICAgIGlmIChxID09IE5VTEwpIHsKKyAgICAgICAgICBnb3RvIGJhaWw7CisgICAgICAgfQor ZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9maWxlL2ZpbGVM b2NrUHJpbWl0aXZlLmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvZmlsZS9m aWxlTG9ja1ByaW1pdGl2ZS5jCitpbmRleCAxOTNmYzM2Li43NTcxY2VkIDEwMDY0NAorLS0tIGEv b3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL2ZpbGUvZmlsZUxvY2tQcmltaXRpdmUu YworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL2ZpbGUvZmlsZUxvY2tQ cmltaXRpdmUuYworQEAgLTIzOCw3ICsyMzgsNyBAQCBGaWxlTG9ja1BhcnNlQXJncyhjaGFyICph cmd2W10sICAgICAgIC8vIElOOgorIAorICAgIHdoaWxlIChhcmdDb3VudCkgeworICAgICAgIHVp bnQzMiBpOworLSAgICAgIGNoYXIgKnAgPSBzdHJjaHIoYXJndlthcmdQb3NdLCAnPScpOworKyAg ICAgIGNoYXIgKnAgPSAoY2hhciAqKSBzdHJjaHIoYXJndlthcmdQb3NdLCAnPScpOworIAorICAg ICAgIC8qIFZhbGlkYXRlIHRoZSAibmFtZT12YWx1ZSIgZm9ybSAqLworICAgICAgIGlmICgocCA9 PSBOVUxMKSB8fCAocCA9PSBhcmd2W2FyZ1Bvc10pIHx8IChwWzFdID09ICdcMCcpKSB7CitkaWZm IC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL2ZpbGUvZmlsZVBvc2l4 LmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvZmlsZS9maWxlUG9zaXguYwor aW5kZXggM2I1MDBlYi4uNWQwZjc3MiAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41 LTI0OTE1Njk1L2xpYi9maWxlL2ZpbGVQb3NpeC5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAu NS0yNDkxNTY5NS9saWIvZmlsZS9maWxlUG9zaXguYworQEAgLTE1MTAsNyArMTUxMCw3IEBAIEZp bGVfR2V0Vk1GU01vdW50SW5mbyhjb25zdCBjaGFyICpwYXRoTmFtZSwgICAgLy8gSU46CisgICAg ICAgICogVGhpcyB3aWxsIGNvdmVyIGJvdGggTkZTdjMgYW5kIE5GU3Y0LjEuCisgICAgICAgICov CisgICAgICAgaWYgKHN0cm5jbXAoZnNBdHRycy0+ZnNUeXBlLCBGU19ORlNfT05fRVNYLCBGU19O RlNfUFJFRklYX0xFTikgPT0gMCkgeworLSAgICAgICAgIGNoYXIgKnNlcCA9IHN0cmNocihmc0F0 dHJzLT5sb2dpY2FsRGV2aWNlLCAnICcpOworKyAgICAgICAgIGNoYXIgKnNlcCA9IChjaGFyICop IHN0cmNocihmc0F0dHJzLT5sb2dpY2FsRGV2aWNlLCAnICcpOworIAorICAgICAgICAgIGlmIChz ZXApIHsKKyAgICAgICAgICAgICAqc2VwKysgPSAwOworQEAgLTIzMzksNyArMjMzOSw3IEBAIEZp bGVQb3NpeE5lYXJlc3RFeGlzdGluZ0FuY2VzdG9yKGNoYXIgY29uc3QgKnBhdGgpICAvLyBJTjog RmlsZSBwYXRoCisgICAgICAgICAgYnJlYWs7CisgICAgICAgfQorIAorLSAgICAgIHB0ciA9IHN0 cnJjaHIocmVzdWx0LCBESVJTRVBDKTsKKysgICAgICBwdHIgPSAoY2hhciAqKSBzdHJyY2hyKHJl c3VsdCwgRElSU0VQQyk7CisgICAgICAgaWYgKHB0ciA9PSBOVUxMKSB7CisgICAgICAgICAgcHRy ID0gcmVzdWx0OworICAgICAgIH0KK2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0y NDkxNTY5NS9saWIvZmlsZS9maWxlU3RhbmRBbG9uZS5jIGIvb3Blbi12bS10b29scy0xMy4wLjUt MjQ5MTU2OTUvbGliL2ZpbGUvZmlsZVN0YW5kQWxvbmUuYworaW5kZXggNmQzY2JhMi4uMWZhNGFi NiAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9maWxlL2Zp bGVTdGFuZEFsb25lLmMKKysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9m aWxlL2ZpbGVTdGFuZEFsb25lLmMKK0BAIC03MTUsOSArNzE1LDkgQEAgRmlsZV9SZXBsYWNlRXh0 ZW5zaW9uKGNvbnN0IGNoYXIgKnBhdGhOYW1lLCAgICAgIC8vIElOOgorIAorICAgIHAgPSBGaWxl RmluZExhc3REaXJzZXAocmVzdWx0LCBwYXRoTmFtZUxlbik7CisgICAgaWYgKHAgPT0gTlVMTCkg eworLSAgICAgICBwID0gc3RycmNocihyZXN1bHQsICcuJyk7CisrICAgICAgIHAgPSAoY2hhciAq KSBzdHJyY2hyKHJlc3VsdCwgJy4nKTsKKyAgICB9IGVsc2UgeworLSAgICAgICBwID0gc3RycmNo cihwLCAnLicpOworKyAgICAgICBwID0gKGNoYXIgKikgc3RycmNocihwLCAnLicpOworICAgIH0K KyAKKyAgICBpZiAocCA9PSBOVUxMKSB7CitAQCAtNzkwLDkgKzc5MCw5IEBAIEZpbGVfUmVtb3Zl RXh0ZW5zaW9uKGNvbnN0IGNoYXIgKnBhdGhOYW1lKSAgLy8gSU46CisgCisgICAgcCA9IEZpbGVG aW5kTGFzdERpcnNlcChyZXN1bHQsIHN0cmxlbihwYXRoTmFtZSkpOworICAgIGlmIChwID09IE5V TEwpIHsKKy0gICAgICAgcCA9IHN0cnJjaHIocmVzdWx0LCAnLicpOworKyAgICAgICBwID0gKGNo YXIgKikgc3RycmNocihyZXN1bHQsICcuJyk7CisgICAgfSBlbHNlIHsKKy0gICAgICAgcCA9IHN0 cnJjaHIocCwgJy4nKTsKKysgICAgICAgcCA9IChjaGFyICopIHN0cnJjaHIocCwgJy4nKTsKKyAg ICB9CisgCisgICAgQVNTRVJUKHAgIT0gTlVMTCk7CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29s cy0xMy4wLjUtMjQ5MTU2OTUvbGliL2dsaWJVdGlscy9maWxlTG9nZ2VyLmMgYi9vcGVuLXZtLXRv b2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvZ2xpYlV0aWxzL2ZpbGVMb2dnZXIuYworaW5kZXggZjFi MGRjNy4uNTk2MDViYiAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1 L2xpYi9nbGliVXRpbHMvZmlsZUxvZ2dlci5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0y NDkxNTY5NS9saWIvZ2xpYlV0aWxzL2ZpbGVMb2dnZXIuYworQEAgLTE2Nyw3ICsxNjcsNyBAQCBG aWxlTG9nZ2VyR2V0UGF0aChGaWxlTG9nZ2VyICpkYXRhLAorICAgIGZvciAoaSA9IDA7IGkgPCBH X05fRUxFTUVOVFModmFycyk7IGkgKz0gMikgeworICAgICAgIGNoYXIgKmxhc3QgPSBsb2dwYXRo OworICAgICAgIGNoYXIgKnN0YXJ0OworLSAgICAgIHdoaWxlICgoc3RhcnQgPSBzdHJzdHIobGFz dCwgdmFyc1tpXSkpICE9IE5VTEwpIHsKKysgICAgICB3aGlsZSAoKHN0YXJ0ID0gKGNoYXIgKikg c3Ryc3RyKGxhc3QsIHZhcnNbaV0pKSAhPSBOVUxMKSB7CisgICAgICAgICAgZ2NoYXIgKnRtcDsK KyAgICAgICAgICBjaGFyICplbmQgPSBzdGFydCArIHN0cmxlbih2YXJzW2ldKTsKKyAgICAgICAg ICBzaXplX3Qgb2Zmc2V0ID0gKHN0YXJ0IC0gbGFzdCkgKyBzdHJsZW4odmFyc1tpKzFdKTsKK0BA IC0xOTIsMTEgKzE5MiwxMSBAQCBGaWxlTG9nZ2VyR2V0UGF0aChGaWxlTG9nZ2VyICpkYXRhLAor ICAgICAqIGJhY2tpbmcgdXAgb2xkIGxvZyBmaWxlcy4KKyAgICAgKi8KKyAgICBpZiAoaW5kZXgg IT0gMCAmJiAhaGFzSW5kZXgpIHsKKy0gICAgICBjaGFyICpzZXAgPSBzdHJyY2hyKGxvZ3BhdGgs ICcuJyk7CistICAgICAgY2hhciAqcGF0aHNlcCA9IHN0cnJjaHIobG9ncGF0aCwgJy8nKTsKKysg ICAgICBjaGFyICpzZXAgPSAoY2hhciAqKSBzdHJyY2hyKGxvZ3BhdGgsICcuJyk7CisrICAgICAg Y2hhciAqcGF0aHNlcCA9IChjaGFyICopIHN0cnJjaHIobG9ncGF0aCwgJy8nKTsKKyAKKyAgICAg ICBpZiAocGF0aHNlcCA9PSBOVUxMKSB7CistICAgICAgICAgcGF0aHNlcCA9IHN0cnJjaHIobG9n cGF0aCwgJ1xcJyk7CisrICAgICAgICAgcGF0aHNlcCA9IChjaGFyICopIHN0cnJjaHIobG9ncGF0 aCwgJ1xcJyk7CisgICAgICAgfQorIAorICAgICAgIGlmIChzZXAgIT0gTlVMTCAmJiBzZXAgPiBw YXRoc2VwKSB7CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGli L2hnZnMvaGdmc0VzY2FwZS5jIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL2hn ZnMvaGdmc0VzY2FwZS5jCitpbmRleCBjNGQzOWIxLi5jZTQ3NWQ5IDEwMDY0NAorLS0tIGEvb3Bl bi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL2hnZnMvaGdmc0VzY2FwZS5jCisrKysgYi9v cGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvaGdmcy9oZ2ZzRXNjYXBlLmMKK0BAIC0x OTgsNyArMTk4LDcgQEAgSGdmc0FkZEVzY2FwZUNoYXJhY3RlcihjaGFyIGNvbnN0ICogYnVmSW4s ICAgICAgLy8gSU46IGlucHV0IG5hbWUKKyAgICAgICBpZiAob3V0cHV0U3BhY2UgPCAyKSB7Cisg ICAgICAgICAgcmV0dXJuIEZBTFNFOworICAgICAgIH0KKy0gICAgICBpbGxlZ2FsID0gc3RyY2hy KEhHRlNfSUxMRUdBTF9DSEFSUywgYnVmSW5bZXNjYXBlQ29udGV4dC0+cHJvY2Vzc2VkT2Zmc2V0 XSk7CisrICAgICAgaWxsZWdhbCA9IChjaGFyICopIHN0cmNocihIR0ZTX0lMTEVHQUxfQ0hBUlMs IGJ1ZkluW2VzY2FwZUNvbnRleHQtPnByb2Nlc3NlZE9mZnNldF0pOworICAgICAgIGVzY2FwZUNv bnRleHQtPnByb2Nlc3NlZE9mZnNldCsrOyAgLy8gU2tpcCBpbGxlZ2FsIGlucHV0IGNoYXJhY3Rl cgorICAgICAgIEFTU0VSVChpbGxlZ2FsICE9IE5VTEwpOworICAgICAgIGVzY2FwZUNvbnRleHQt Pm91dHB1dEJ1ZmZlcltlc2NhcGVDb250ZXh0LT5vdXRwdXRPZmZzZXRdID0KK0BAIC01ODMsMTIg KzU4MywxMiBAQCBIZ2ZzSXNFc2NhcGVTZXF1ZW5jZShjaGFyIGNvbnN0ICpidWZJbiwgICAvLyBJ TjogaW5wdXQgbmFtZQorICAgICAgICAgIGlmIChidWZJbltvZmZzZXQgLSAyXSA9PSBIR0ZTX0VT Q0FQRV9TVUJTVElUVUVfQ0hBUikgeworICAgICAgICAgICAgIHJldHVybiBUUlVFOworICAgICAg ICAgIH0KKy0gICAgICAgICBzdWJzdGl0dXRlID0gc3RyY2hyKEhHRlNfU1VCU1RJVFVURV9DSEFS UywgYnVmSW5bb2Zmc2V0IC0gMl0pOworKyAgICAgICAgIHN1YnN0aXR1dGUgPSAoY2hhciAqKSBz dHJjaHIoSEdGU19TVUJTVElUVVRFX0NIQVJTLCBidWZJbltvZmZzZXQgLSAyXSk7CisgICAgICAg ICAgaWYgKHN1YnN0aXR1dGUgIT0gTlVMTCkgeworICAgICAgICAgICAgIHJldHVybiBUUlVFOwor ICAgICAgICAgIH0KKyAgICAgICB9CistICAgICAgc3Vic3RpdHV0ZSA9IHN0cmNocihIR0ZTX1NV QlNUSVRVVEVfQ0hBUlMsIGJ1ZkluW29mZnNldCAtIDFdKTsKKysgICAgICBzdWJzdGl0dXRlID0g KGNoYXIgKikgc3RyY2hyKEhHRlNfU1VCU1RJVFVURV9DSEFSUywgYnVmSW5bb2Zmc2V0IC0gMV0p OworICAgICAgIGlmIChzdWJzdGl0dXRlICE9IE5VTEwpIHsKKyAgICAgICAgICByZXR1cm4gVFJV RTsKKyAgICAgICB9CitAQCAtODgyLDEyICs4ODIsMTIgQEAgSGdmc0VzY2FwZVVuZG9Db21wb25l bnQoY2hhciAgICpidWZJbiwgICAgICAgICAgICAgLy8gSU46IENoYXJhY3RlcnMgdG8gYmUgdW5l c2MKKyAKKyAgICBjdXJPdXRCdWZmZXIgPSBidWZJbjsKKyAgICBzaXplSW4gPSBzdHJsZW4oY3Vy T3V0QnVmZmVyKTsKKy0gICBlc2NhcGVQb2ludGVyID0gc3RyY2hyKGN1ck91dEJ1ZmZlciwgSEdG U19FU0NBUEVfQ0hBUik7CisrICAgZXNjYXBlUG9pbnRlciA9IChjaGFyICopIHN0cmNocihjdXJP dXRCdWZmZXIsIEhHRlNfRVNDQVBFX0NIQVIpOworICAgIHdoaWxlIChlc2NhcGVQb2ludGVyICE9 IE5VTEwpIHsKKyAgICAgICBzaXplX3Qgb2Zmc2V0ID0gZXNjYXBlUG9pbnRlciAtIGJ1ZkluOwor IAorICAgICAgIGlmIChIZ2ZzSXNFc2NhcGVTZXF1ZW5jZShidWZJbiwgb2Zmc2V0LCBzaXplSW4p KSB7CistICAgICAgICAgY2hhciogc3Vic3RpdHV0ZSA9IHN0cmNocihIR0ZTX1NVQlNUSVRVVEVf Q0hBUlMsIGJ1ZkluW29mZnNldCAtIDFdKTsKKysgICAgICAgICBjaGFyKiBzdWJzdGl0dXRlID0g KGNoYXIgKikgc3RyY2hyKEhHRlNfU1VCU1RJVFVURV9DSEFSUywgYnVmSW5bb2Zmc2V0IC0gMV0p OworICAgICAgICAgIGlmIChzdWJzdGl0dXRlICE9IE5VTEwpIHsKKyAgICAgICAgICAgICBidWZJ bltvZmZzZXQgLSAxXSA9IEhHRlNfSUxMRUdBTF9DSEFSU1tzdWJzdGl0dXRlIC0gSEdGU19TVUJT VElUVVRFX0NIQVJTXTsKKyAgICAgICAgICB9IGVsc2UgaWYgKGJ1ZkluW29mZnNldCAtIDFdID09 IEhHRlNfRVNDQVBFX1NVQlNUSVRVRV9DSEFSKSB7CitAQCAtODk3LDEyICs4OTcsMTIgQEAgSGdm c0VzY2FwZVVuZG9Db21wb25lbnQoY2hhciAgICpidWZJbiwgICAgICAgICAgICAgLy8gSU46IENo YXJhY3RlcnMgdG8gYmUgdW5lc2MKKyAgICAgICAgICAoKnVucHJvY2Vzc2VkTGVuZ3RoKS0tOwor ICAgICAgICAgIHNpemVJbi0tOworICAgICAgICAgIGlmIChzaXplSW4gPiAwKSB7CistICAgICAg ICAgICAgZXNjYXBlUG9pbnRlciA9IHN0cmNocihlc2NhcGVQb2ludGVyLCBIR0ZTX0VTQ0FQRV9D SEFSKTsKKysgICAgICAgICAgICBlc2NhcGVQb2ludGVyID0gKGNoYXIgKikgc3RyY2hyKGVzY2Fw ZVBvaW50ZXIsIEhHRlNfRVNDQVBFX0NIQVIpOworICAgICAgICAgIH0gZWxzZSB7CisgICAgICAg ICAgICAgZXNjYXBlUG9pbnRlciA9IE5VTEw7CisgICAgICAgICAgfQorICAgICAgIH0gZWxzZSB7 CistICAgICAgICAgZXNjYXBlUG9pbnRlciA9IHN0cmNocihlc2NhcGVQb2ludGVyICsgMSwgSEdG U19FU0NBUEVfQ0hBUik7CisrICAgICAgICAgZXNjYXBlUG9pbnRlciA9IChjaGFyICopIHN0cmNo cihlc2NhcGVQb2ludGVyICsgMSwgSEdGU19FU0NBUEVfQ0hBUik7CisgICAgICAgfQorICAgIH0K KyAgICBBU1NFUlQoKCp1bnByb2Nlc3NlZExlbmd0aCkgPiBzaXplSW4pOworZGlmZiAtLWdpdCBh L29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9oZ2ZzU2VydmVyL2hnZnNTZXJ2ZXJM aW51eC5jIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL2hnZnNTZXJ2ZXIvaGdm c1NlcnZlckxpbnV4LmMKK2luZGV4IDRhMGJjOTMuLmFjNjJjMWIgMTAwNjQ0CistLS0gYS9vcGVu LXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvaGdmc1NlcnZlci9oZ2ZzU2VydmVyTGludXgu YworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL2hnZnNTZXJ2ZXIvaGdm c1NlcnZlckxpbnV4LmMKK0BAIC0xMzY5LDcgKzEzNjksNyBAQCBIZ2ZzR2V0SGlkZGVuQXR0cihj aGFyIGNvbnN0ICpmaWxlTmFtZSwgICAgICAgICAvLyBJTjogIElucHV0IGZpbGVuYW1lCisgICAg QVNTRVJUKGZpbGVOYW1lKTsKKyAgICBBU1NFUlQoYXR0cik7CisgCistICAgYmFzZU5hbWUgPSBz dHJyY2hyKGZpbGVOYW1lLCBESVJTRVBDKTsKKysgICBiYXNlTmFtZSA9IChjaGFyICopIHN0cnJj aHIoZmlsZU5hbWUsIERJUlNFUEMpOworIAorICAgIGlmICgoYmFzZU5hbWUgIT0gTlVMTCkgJiYK KyAgICAgICAgKGJhc2VOYW1lWzFdID09ICcuJykgJiYKK0BAIC0xNjQ3LDcgKzE2NDcsNyBAQCBI Z2ZzQ2FzZUluc2Vuc2l0aXZlTG9va3VwKGNvbnN0IGNoYXIgKnNoYXJlUGF0aCwgICAgICAgICAg IC8vIElOCisgCisgICAgd2hpbGUgKFRSVUUpIHsKKyAgICAgICAvKiBHZXQgdGhlIG5leHQgY29t cG9uZW50LiAqLworLSAgICAgIG5leHRDb21wb25lbnQgPSBzdHJjaHIoY3VycmVudENvbXBvbmVu dCwgRElSU0VQQyk7CisrICAgICAgbmV4dENvbXBvbmVudCA9IChjaGFyICopIHN0cmNocihjdXJy ZW50Q29tcG9uZW50LCBESVJTRVBDKTsKKyAgICAgICBpZiAobmV4dENvbXBvbmVudCAhPSBOVUxM KSB7CisgICAgICAgICAgKm5leHRDb21wb25lbnQgPSAnXDAnOworICAgICAgIH0KK2RpZmYgLS1n aXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvbWlzYy9jb2Rlc2V0LmMgYi9v cGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvbWlzYy9jb2Rlc2V0LmMKK2luZGV4IDI1 MjIxZjYuLmFmYzYxNWIgMTAwNjQ0CistLS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5 NS9saWIvbWlzYy9jb2Rlc2V0LmMKKysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1 L2xpYi9taXNjL2NvZGVzZXQuYworQEAgLTU4OSw3ICs1ODksNyBAQCBDb2RlU2V0X0luaXQoY29u c3QgY2hhciAqaWN1RGF0YURpcikgLy8gSU46IElDVSBkYXRhIGZpbGUgbG9jYXRpb24gaW4gQ3Vy cmVudCBjbworICAgICAgICAqLworICAgICAgIG1vZFBhdGggPSBDb2RlU2V0R2V0TW9kdWxlUGF0 aChIR01QX1BSSVZJTEVHRSk7CisgICAgICAgaWYgKG1vZFBhdGgpIHsKKy0gICAgICAgICBsYXN0 U2xhc2ggPSBzdHJyY2hyKG1vZFBhdGgsIERJUlNFUEMpOworKyAgICAgICAgIGxhc3RTbGFzaCA9 IChjaGFyICopIHN0cnJjaHIobW9kUGF0aCwgRElSU0VQQyk7CisgICAgICAgICAgaWYgKGxhc3RT bGFzaCkgeworICAgICAgICAgICAgICpsYXN0U2xhc2ggPSAnXDAnOworIAorZGlmZiAtLWdpdCBh L29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9taXNjL2NvZGVzZXRPbGQuYyBiL29w ZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9taXNjL2NvZGVzZXRPbGQuYworaW5kZXgg ZmI0ZjE5NC4uZWQ4NmQwMyAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1 Njk1L2xpYi9taXNjL2NvZGVzZXRPbGQuYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5 MTU2OTUvbGliL21pc2MvY29kZXNldE9sZC5jCitAQCAtNzU1LDcgKzc1NSw3IEBAIENvZGVTZXRP bGRfR2V0Q3VycmVudENvZGVTZXQodm9pZCkKKyAgICAgICAgICBjaGFyICpwOworIAorICAgICAg ICAgIGdGaWxlbmFtZUVuY29kaW5nID0gVXRpbF9TYWZlU3RyZHVwKGdGaWxlbmFtZUVuY29kaW5n KTsKKy0gICAgICAgICBwID0gc3RyY2hyKGdGaWxlbmFtZUVuY29kaW5nLCAnLCcpOworKyAgICAg ICAgIHAgPSAoY2hhciAqKSBzdHJjaHIoZ0ZpbGVuYW1lRW5jb2RpbmcsICcsJyk7CisgCisgICAg ICAgICAgaWYgKHAgIT0gTlVMTCkgeworICAgICAgICAgICAgICpwID0gJ1wwJzsKK2RpZmYgLS1n aXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvbWlzYy9ob3N0aW5mb1Bvc2l4 LmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvbWlzYy9ob3N0aW5mb1Bvc2l4 LmMKK2luZGV4IGRjOTlkODMuLjIyZGJiNDggMTAwNjQ0CistLS0gYS9vcGVuLXZtLXRvb2xzLTEz LjAuNS0yNDkxNTY5NS9saWIvbWlzYy9ob3N0aW5mb1Bvc2l4LmMKKysrKyBiL29wZW4tdm0tdG9v bHMtMTMuMC41LTI0OTE1Njk1L2xpYi9taXNjL2hvc3RpbmZvUG9zaXguYworQEAgLTE2MjAsNyAr MTYyMCw3IEBAIEhvc3RpbmZvUmVhZERpc3Ryb0ZpbGUoQm9vbCBvc1JlbGVhc2VSdWxlcywgICAv LyBJTjogb3NSZWxlYXNlIHJ1bGVzCisgCisgICAgICAgICAgICAgIGlmIChsaW5lQnVmW2xlbl0g PT0gJyInKSB7CisgICAgICAgICAgICAgICAgIGRhdGEgPSAmbGluZUJ1ZltsZW4gKyAxXTsKKy0g ICAgICAgICAgICAgICAgcCA9IHN0cnJjaHIoZGF0YSwgJyInKTsKKysgICAgICAgICAgICAgICAg cCA9IChjaGFyICopIHN0cnJjaHIoZGF0YSwgJyInKTsKKyAKKyAgICAgICAgICAgICAgICAgaWYg KHAgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgICAgICBXYXJuaW5nKCIlczogSW52YWxpZCBv cy1yZWxlYXNlIGZpbGUuIiwgX19GVU5DVElPTl9fKTsKK0BAIC0xNjI5LDcgKzE2MjksNyBAQCBI b3N0aW5mb1JlYWREaXN0cm9GaWxlKEJvb2wgb3NSZWxlYXNlUnVsZXMsICAgLy8gSU46IG9zUmVs ZWFzZSBydWxlcworICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICBkYXRh ID0gJmxpbmVCdWZbbGVuXTsKKyAKKy0gICAgICAgICAgICAgICAgcCA9IHN0cmNocihkYXRhLCAn XG4nKTsKKysgICAgICAgICAgICAgICAgcCA9IChjaGFyICopIHN0cmNocihkYXRhLCAnXG4nKTsK KyAKKyAgICAgICAgICAgICAgICAgaWYgKHAgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgICAg ICBXYXJuaW5nKCIlczogb3MtcmVsZWFzZSBmaWxlIGxpbmUgdG9vIGxvbmcuIiwKK0BAIC0xODk0 LDcgKzE4OTQsNyBAQCBIb3N0aW5mb0xzYlJlbW92ZVF1b3RlcyhjaGFyICpsc2JPdXRwdXQpICAv LyBJTi9PVVQ6CisgICAgQVNTRVJUKGxzYlN0YXJ0ICE9IE5VTEwpOworIAorICAgIGlmIChsc2JT dGFydFswXSA9PSAnIicpIHsKKy0gICAgICBjaGFyICpxdW90ZUVuZCA9IHN0cmNocigrK2xzYlN0 YXJ0LCAnIicpOworKyAgICAgIGNoYXIgKnF1b3RlRW5kID0gKGNoYXIgKikgc3RyY2hyKCsrbHNi U3RhcnQsICciJyk7CisgCisgICAgICAgaWYgKHF1b3RlRW5kICE9IE5VTEwpIHsKKyAgICAgICAg ICAqcXVvdGVFbmQgPSAnXDAnOworQEAgLTM0NzIsOCArMzQ3Miw4IEBAIEhvc3RpbmZvR2V0Q3B1 SW5mbyhpbnQgbkNwdSwgICAgICAgICAvLyBJTjoKKyAgICAgICAgICAgU3RkSU9fUmVhZE5leHRM aW5lKGYsICZsaW5lLCAwLCBOVUxMKSA9PSBTdGRJT19TdWNjZXNzKSB7CisgICAgICAgY2hhciAq czsKKyAKKy0gICAgICBpZiAoKHMgPSBzdHJzdHIobGluZSwgbmFtZSkpICYmCistICAgICAgICAg IChzID0gc3RyY2hyKHMsICc6JykpKSB7CisrICAgICAgaWYgKChzID0gKGNoYXIgKikgc3Ryc3Ry KGxpbmUsIG5hbWUpKSAmJgorKyAgICAgICAgICAocyA9IChjaGFyICopIHN0cmNocihzLCAnOicp KSkgeworICAgICAgICAgIGNoYXIgKmU7CisgCisgICAgICAgICAgcysrOworQEAgLTQwMzksNyAr NDAzOSw3IEBAIEhvc3RpbmZvRmluZEVudHJ5KGNoYXIgKmJ1ZmZlciwgICAgICAgICAvLyBJTjog QnVmZmVyCisgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqc3RyaW5nLCAgIC8vIElOOiBT dHJpbmcgc291Z2h0CisgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50ICp2YWx1ZSkgIC8v IE9VVDogVmFsdWUKKyB7CistICAgY2hhciAqcCA9IHN0cnN0cihidWZmZXIsIHN0cmluZyk7Cisr ICAgY2hhciAqcCA9IChjaGFyICopIHN0cnN0cihidWZmZXIsIHN0cmluZyk7CisgICAgdW5zaWdu ZWQgaW50IHZhbDsKKyAKKyAgICBpZiAocCA9PSBOVUxMKSB7CitAQCAtNDU3MCw3ICs0NTcwLDcg QEAgSG9zdGluZm9fR2V0TGlicmFyeVBhdGgodm9pZCAqYWRkcikgIC8vIElOCisgICAgICAgICAg ICAgY29udGludWU7CisgICAgICAgICAgfQorIAorLSAgICAgICAgIHNlcCA9IHN0cmNocihlbnRy eS0+ZF9uYW1lLCAnLScpOworKyAgICAgICAgIHNlcCA9IChjaGFyICopIHN0cmNocihlbnRyeS0+ ZF9uYW1lLCAnLScpOworICAgICAgICAgIGlmIChzZXAgPT0gTlVMTCkgeworICAgICAgICAgICAg IGNvbnRpbnVlOyAvLyBUaGUgZmlsZSBuYW1lIGRvZXMgTk9UIGluIGAxMjM0YWJjZC1hYmNkMTIz NGAgZm9ybWF0CisgICAgICAgICAgfQorZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41 LTI0OTE1Njk1L2xpYi9taXNjL21hY2hpbmVJRC5jIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5 MTU2OTUvbGliL21pc2MvbWFjaGluZUlELmMKK2luZGV4IDdjMjlhMWMuLjFlMDRhOWMgMTAwNjQ0 CistLS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvbWlzYy9tYWNoaW5lSUQu YworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL21pc2MvbWFjaGluZUlE LmMKK0BAIC04OCw3ICs4OCw3IEBAIEZpbmRXaW5kb3dzQWRhcHRlcihJUF9BREFQVEVSX0lORk8g KmhlYWQsICAvLyBJTjoKKyAgICAgICAgICAgICAgKCphZGFwdGVySW5mby0+RGVzY3JpcHRpb24g PT0gJ1wwJykpIHsKKyAgICAgICAgICAgICB0YWtlSXQgPSBUUlVFOworICAgICAgICAgIH0gZWxz ZSB7CistICAgICAgICAgICAgY2hhciAqcCA9IHN0cnN0cihhZGFwdGVySW5mby0+RGVzY3JpcHRp b24sIHBhdHRlcm4pOworKyAgICAgICAgICAgIGNoYXIgKnAgPSAoY2hhciAqKSBzdHJzdHIoYWRh cHRlckluZm8tPkRlc2NyaXB0aW9uLCBwYXR0ZXJuKTsKKyAKKyAgICAgICAgICAgICBpZiAoKChw ICE9IE5VTEwpICYmIGZpbmRQYXR0ZXJuKSB8fAorICAgICAgICAgICAgICAgICAoKHAgPT0gTlVM TCkgJiYgIWZpbmRQYXR0ZXJuKSkgeworZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41 LTI0OTE1Njk1L2xpYi9taXNjL3N0cnV0aWwuYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1 Njk1L2xpYi9taXNjL3N0cnV0aWwuYworaW5kZXggNGZjNjUwMi4uOGQ2NGQyNyAxMDA2NDQKKy0t LSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9taXNjL3N0cnV0aWwuYworKysr IGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL21pc2Mvc3RydXRpbC5jCitAQCAt MTQ2Nyw3ICsxNDY3LDcgQEAgU3RyVXRpbF9SZXBsYWNlQWxsKGNvbnN0IGNoYXIgKm9yaWcsIC8v IElOCisgICAgIGxlbldpdGggPSBzdHJsZW4od2l0aCk7CisgCisgICAgIGN1cnJlbnQgPSBvcmln OworLSAgICB3aGlsZSAoKHRtcCA9IHN0cnN0cihjdXJyZW50LCB3aGF0KSkgIT0gTlVMTCkgewor KyAgICB3aGlsZSAoKHRtcCA9IChjaGFyICopIHN0cnN0cihjdXJyZW50LCB3aGF0KSkgIT0gTlVM TCkgeworICAgICAgICBjdXJyZW50ID0gdG1wICsgbGVuV2hhdDsKKyAgICAgICAgKytvY2N1cnJl bmNlczsKKyAgICAgfQorQEAgLTE2MjAsNyArMTYyMCw3IEBAIFN0clV0aWxfR2V0TmV4dEl0ZW0o Y2hhciAqKmxpc3QsIC8vIElOL09VVDoKKyAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgCist ICAgZm91bmREZWxpbSA9IHN0cmNocigqbGlzdCwgZGVsaW0pOworKyAgIGZvdW5kRGVsaW0gPSAo Y2hhciAqKSBzdHJjaHIoKmxpc3QsIGRlbGltKTsKKyAgICBpZiAoZm91bmREZWxpbSAhPSBOVUxM KSB7CisgICAgICAgZm91bmREZWxpbVswXSA9ICdcMCc7CisgICAgICAgKmxpc3QgPSBmb3VuZERl bGltICsgMTsKK0BAIC0xNjYwLDcgKzE2NjAsNyBAQCBTdHJVdGlsX0dldExhc3RJdGVtKGNoYXIg KipsaXN0LCAvLyBJTi9PVVQ6CisgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorIAorLSAgIGZv dW5kRGVsaW0gPSBzdHJyY2hyKCpsaXN0LCBkZWxpbSk7CisrICAgZm91bmREZWxpbSA9IChjaGFy ICopIHN0cnJjaHIoKmxpc3QsIGRlbGltKTsKKyAgICBpZiAoZm91bmREZWxpbSAhPSBOVUxMKSB7 CisgICAgICAgZm91bmREZWxpbVswXSA9ICdcMCc7CisgICAgICAgdG9rZW4gPSBmb3VuZERlbGlt ICsgMTsKK0BAIC0xNzA1LDcgKzE3MDUsNyBAQCBTdHJVdGlsSGFzTGlzdEl0ZW0oY2hhciBjb25z dCAqbGlzdCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSU46CisgICAgZG8gewor ICAgICAgIGludCB0b2tlbkxlbjsKKyAKKy0gICAgICBmb3VuZERlbGltID0gc3RyY2hyKGxpc3Qs IGRlbGltKTsKKysgICAgICBmb3VuZERlbGltID0gKGNoYXIgKikgc3RyY2hyKGxpc3QsIGRlbGlt KTsKKyAgICAgICBpZiAoZm91bmREZWxpbSA9PSBOVUxMKSB7IC8vIGVpdGhlciBzaW5nbGUgb3Ig bGFzdCBlbGVtZW50CisgICAgICAgICAgdG9rZW5MZW4gPSBzdHJsZW4obGlzdCk7CisgICAgICAg fSBlbHNlIHsgLy8gISBsYXN0IGVsZW1lbnQKK2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEz LjAuNS0yNDkxNTY5NS9saWIvbmljSW5mby9uaWNJbmZvUG9zaXguYyBiL29wZW4tdm0tdG9vbHMt MTMuMC41LTI0OTE1Njk1L2xpYi9uaWNJbmZvL25pY0luZm9Qb3NpeC5jCitpbmRleCAwMTM1ZTZh Li5hYWFmNzVhIDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGli L25pY0luZm8vbmljSW5mb1Bvc2l4LmMKKysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1 Njk1L2xpYi9uaWNJbmZvL25pY0luZm9Qb3NpeC5jCitAQCAtMjY2LDcgKzI2Niw3IEBAIElwRW50 cnlNYXRjaGVzRGV2aWNlKGNvbnN0IGNoYXIgKmRldk5hbWUsCisgICAgY2hhciAqcDsKKyAgICBz aXplX3QgbjsKKyAKKy0gICBpZiAoKHAgPSBzdHJjaHIobGFiZWwsICc6JykpICE9IE5VTEwpIHsK KysgICBpZiAoKHAgPSAoY2hhciAqKSBzdHJjaHIobGFiZWwsICc6JykpICE9IE5VTEwpIHsKKyAg ICAgICBuID0gcCAtIGxhYmVsOworICAgIH0gZWxzZSB7CisgICAgICAgbiA9IHN0cmxlbihsYWJl bCk7CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3Byb2NN Z3IvcHJvY01nclBvc2l4LmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvcHJv Y01nci9wcm9jTWdyUG9zaXguYworaW5kZXggOTQ5NmUyMS4uZjE3NGM2NCAxMDA2NDQKKy0tLSBh L29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9wcm9jTWdyL3Byb2NNZ3JQb3NpeC5j CisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvcHJvY01nci9wcm9jTWdy UG9zaXguYworQEAgLTYyNiw3ICs2MjYsNyBAQCBQcm9jTWdyX0xpc3RQcm9jZXNzZXModm9pZCkK KyAgICAgICAgICAgICAgICAgICAgKiAgIGdkbS1zZXNzaW9uLXdvcmtlciBbcGFtL2dkbS1hdXRv bG9naW5dCisgICAgICAgICAgICAgICAgICAgICoKKyAgICAgICAgICAgICAgICAgICAgKi8KKy0g ICAgICAgICAgICAgICAgICBjaGFyICpjbWROYW1lQmVnaW4gPSBzdHJyY2hyKGNtZExpbmVUZW1w LCAnLycpOworKyAgICAgICAgICAgICAgICAgIGNoYXIgKmNtZE5hbWVCZWdpbiA9IChjaGFyICop IHN0cnJjaHIoY21kTGluZVRlbXAsICcvJyk7CisgICAgICAgICAgICAgICAgICAgaWYgKE5VTEwg IT0gY21kTmFtZUJlZ2luICYmIGNtZExpbmVUZW1wWzBdID09ICcvJykgeworICAgICAgICAgICAg ICAgICAgICAgIC8qCisgICAgICAgICAgICAgICAgICAgICAgICogU2tpcCBvdmVyIHRoZSBsYXN0 IHNlcGFyYXRvci4KK0BAIC03NjQsNyArNzY0LDcgQEAgUHJvY01ncl9MaXN0UHJvY2Vzc2VzKHZv aWQpCisgICAgICAgLyoKKyAgICAgICAgKiBTa2lwIG92ZXIgaW5pdGlhbCBwcm9jZXNzIGlkIGFu ZCBwcm9jZXNzIG5hbWUuICAiMTIzIChiYXNoKSBbLi4uXSIuCisgICAgICAgICovCistICAgICAg c3RyaW5nQmVnaW4gPSBzdHJjaHIoY21kU3RhdFRlbXAsICcpJykgKyAyOworKyAgICAgIHN0cmlu Z0JlZ2luID0gKGNoYXIgKikgc3RyY2hyKGNtZFN0YXRUZW1wLCAnKScpICsgMjsKKyAKKyAgICAg ICBudW1iZXJGb3VuZCA9IHNzY2FuZihzdHJpbmdCZWdpbiwgIiVjICVkICVkICVkICVkICVkICIK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJWx1ICVsdSAlbHUgJWx1ICVsdSAlTHUgJUx1 ICVMdSAlTHUgJWxkICVsZCAiCitAQCAtOTkwLDcgKzk5MCw3IEBAIFByb2NNZ3JfTGlzdFByb2Nl c3Nlcyh2b2lkKQorICAgICAgICAgICAgICAgICAqIEZpbmQgdGhlIGxhc3QgcGF0aCBzZXBhcmF0 b3IsIHRvIGdldCB0aGUgY21kIG5hbWUuCisgICAgICAgICAgICAgICAgICogSWYgbm8gc2VwYXJh dG9yIGlzIGZvdW5kLCB0aGVuIHVzZSB0aGUgd2hvbGUgbmFtZS4KKyAgICAgICAgICAgICAgICAg Ki8KKy0gICAgICAgICAgICAgICBjbWROYW1lQmVnaW4gPSBzdHJyY2hyKCpjbWRMaW5lVGVtcCwg Jy8nKTsKKysgICAgICAgICAgICAgICBjbWROYW1lQmVnaW4gPSAoY2hhciAqKSBzdHJyY2hyKCpj bWRMaW5lVGVtcCwgJy8nKTsKKyAgICAgICAgICAgICAgICBpZiAoTlVMTCA9PSBjbWROYW1lQmVn aW4pIHsKKyAgICAgICAgICAgICAgICAgICBjbWROYW1lQmVnaW4gPSAqY21kTGluZVRlbXA7Cisg ICAgICAgICAgICAgICAgfSBlbHNlIHsKK0BAIC0xMjE5LDcgKzEyMTksNyBAQCBQcm9jTWdyR2V0 Q29tbWFuZExpbmVBcmdzKGxvbmcgcGlkLCAgICAgICAgICAgICAgIC8vIElOOiAgcHJvY2VzcyBp ZAorICAgICAgICAgICAgICAqIEZpbmQgdGhlIGxhc3QgcGF0aCBzZXBhcmF0b3IsIHRvIGdldCB0 aGUgY21kIG5hbWUuCisgICAgICAgICAgICAgICogSWYgbm8gc2VwYXJhdG9yIGlzIGZvdW5kLCB0 aGVuIHVzZSB0aGUgd2hvbGUgbmFtZS4KKyAgICAgICAgICAgICAgKi8KKy0gICAgICAgICAgICBj bWROYW1lQmVnaW4gPSBzdHJyY2hyKGNtZExpbmVUZW1wLCAnLycpOworKyAgICAgICAgICAgIGNt ZE5hbWVCZWdpbiA9IChjaGFyICopIHN0cnJjaHIoY21kTGluZVRlbXAsICcvJyk7CisgICAgICAg ICAgICAgaWYgKE5VTEwgPT0gY21kTmFtZUJlZ2luKSB7CisgICAgICAgICAgICAgICAgY21kTmFt ZUJlZ2luID0gY21kTGluZVRlbXA7CisgICAgICAgICAgICAgfSBlbHNlIHsKK2RpZmYgLS1naXQg YS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvcHJvY01nci9wcm9jTWdyU29sYXJp cy5jIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3Byb2NNZ3IvcHJvY01nclNv bGFyaXMuYworaW5kZXggZWRlNTJkNi4uOGUwMTYwNiAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9v bHMtMTMuMC41LTI0OTE1Njk1L2xpYi9wcm9jTWdyL3Byb2NNZ3JTb2xhcmlzLmMKKysrKyBiL29w ZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9wcm9jTWdyL3Byb2NNZ3JTb2xhcmlzLmMK K0BAIC0zNTcsNyArMzU3LDcgQEAgRXh0cmFjdENvbW1hbmRMaW5lRnJvbUFkZHJlc3NTcGFjZUZp bGUocHNpbmZvX3QgKnByb2NJbmZvLCAvL0lOOiBwc2luZm8gc3RydWN0CisgICAgICAgICAgICAg ICogRmluZCB0aGUgbGFzdCBwYXRoIHNlcGFyYXRvciwgdG8gZ2V0IHRoZSBjbWQgbmFtZS4KKyAg ICAgICAgICAgICAgKiBJZiBubyBzZXBhcmF0b3IgaXMgZm91bmQsIHRoZW4gdXNlIHRoZSB3aG9s ZSBuYW1lLgorICAgICAgICAgICAgICAqLworLSAgICAgICAgICAgIGNtZE5hbWVCZWdpbiA9IHN0 cnJjaHIoYnVmLCAnLycpOworKyAgICAgICAgICAgIGNtZE5hbWVCZWdpbiA9IChjaGFyICopIHN0 cnJjaHIoYnVmLCAnLycpOworICAgICAgICAgICAgIGlmIChOVUxMID09IGNtZE5hbWVCZWdpbikg eworICAgICAgICAgICAgICAgIGNtZE5hbWVCZWdpbiA9IGJ1ZjsKKyAgICAgICAgICAgICB9IGVs c2UgeworZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9ycGND aGFubmVsL2dsaWJfc3R1YnMuYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9y cGNDaGFubmVsL2dsaWJfc3R1YnMuYworaW5kZXggYzMyZGViMC4uZWRiM2ZjNCAxMDA2NDQKKy0t LSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9ycGNDaGFubmVsL2dsaWJfc3R1 YnMuYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3JwY0NoYW5uZWwv Z2xpYl9zdHVicy5jCitAQCAtMzIsNiArMzIsOSBAQAorICNpZiAhZGVmaW5lZChVU0VfUlBDSV9P TkxZKQorICNlcnJvciAiVGhpcyBmaWxlIHNob3VsZCBiZSBjb21waWxlZCBmb3IgUlBDSS1vbmx5 IGNoYW5uZWwhIgorICNlbmRpZgorKyNpZiBkZWZpbmVkKGdfZnJlZSkKKysjdW5kZWYgZ19mcmVl CisrI2VuZGlmCisgCisgdm9pZCAqZ19tYWxsb2MwKHNpemVfdCBzKSB7IHJldHVybiBVdGlsX1Nh ZmVDYWxsb2MoMSwgcyk7IH0KKyB2b2lkICpnX21hbGxvYzBfbihzaXplX3Qgbiwgc2l6ZV90IHMp IHsgcmV0dXJuIFV0aWxfU2FmZUNhbGxvYyhuLCBzKTsgfQorZGlmZiAtLWdpdCBhL29wZW4tdm0t dG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi91c2VyL3V0aWwuYyBiL29wZW4tdm0tdG9vbHMtMTMu MC41LTI0OTE1Njk1L2xpYi91c2VyL3V0aWwuYworaW5kZXggYmJkMjljNS4uZGQxMDNiYSAxMDA2 NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi91c2VyL3V0aWwuYwor KysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3VzZXIvdXRpbC5jCitAQCAt ODU3LDcgKzg1Nyw3IEBAIFV0aWxfRGVyaXZlRmlsZU5hbWUoY29uc3QgY2hhciAqc291cmNlLCAv LyBJTjogcGF0aCB0byBkaWN0IGZpbGUgKGluY2wgZmlsZW5hbWUpCisgCisgICAgLyogc3RyaXAg b2ZmIHRoZSBleGlzdGluZyBmaWxlIGV4dGVuc2lvbiwgaWYgcHJlc2VudCAqLworICAgIHsKKy0g ICAgICBjaGFyICpwID0gU3RyX1N0cnJjaHIoYmFzZSwgJy4nKTsKKysgICAgICBjaGFyICpwID0g KGNoYXIgKikgU3RyX1N0cnJjaHIoYmFzZSwgJy4nKTsKKyAgICAgICBpZiAocCAhPSBOVUxMKSB7 CisgCSAqcCA9ICdcMCc7CisgICAgICAgfQorZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMu MC41LTI0OTE1Njk1L2xpYmd1ZXN0U3RvcmVDbGllbnQvZ3Vlc3RTdG9yZUNsaWVudExpYi5jIGIv b3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliZ3Vlc3RTdG9yZUNsaWVudC9ndWVzdFN0 b3JlQ2xpZW50TGliLmMKK2luZGV4IDlmNzRlODQuLmRjMjQ4YzggMTAwNjQ0CistLS0gYS9vcGVu LXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWJndWVzdFN0b3JlQ2xpZW50L2d1ZXN0U3RvcmVD bGllbnRMaWIuYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliZ3Vlc3RT dG9yZUNsaWVudC9ndWVzdFN0b3JlQ2xpZW50TGliLmMKK0BAIC03MzUsNyArNzM1LDcgQEAgR3Vl c3RTdG9yZVJlY3ZIVFRQUmVzcG9uc2VIZWFkZXIoQ2FsbEN0eCAqY3R4KSAgLy8gSU4KKyAKKyAg ICAgICB0b3RhbEJ5dGVzUmVjZWl2ZWQgKz0gYnl0ZXNSZWNlaXZlZDsKKyAgICAgICBjdHgtPmJ1 Zlt0b3RhbEJ5dGVzUmVjZWl2ZWRdID0gJ1wwJzsKKy0gICAgICBodHRwSGVhZGVyRW5kID0gc3Ry c3RyKGN0eC0+YnVmLCBIVFRQX0hFQURFUl9FTkQpOworKyAgICAgIGh0dHBIZWFkZXJFbmQgPSAo Y2hhciAqKSBzdHJzdHIoY3R4LT5idWYsIEhUVFBfSEVBREVSX0VORCk7CisgICAgICAgaWYgKGh0 dHBIZWFkZXJFbmQgIT0gTlVMTCkgeworICAgICAgICAgICpodHRwSGVhZGVyRW5kID0gJ1wwJzsK KyAgICAgICAgICBicmVhazsKK0BAIC03NzYsNyArNzc2LDcgQEAgR3Vlc3RTdG9yZVJlY3ZIVFRQ UmVzcG9uc2VIZWFkZXIoQ2FsbEN0eCAqY3R4KSAgLy8gSU4KKyAgICAgICByZXR1cm4gR1NMSUJF UlJfU0VSVkVSOworICAgIH0KKyAKKy0gICBjb250ZW50TGVuZ3RoSGVhZGVyID0gc3Ryc3RyKGh0 dHBTdGF0dXMgKyBzdHJsZW4oaHR0cFN0YXR1cykgKyAxLAorKyAgIGNvbnRlbnRMZW5ndGhIZWFk ZXIgPSAoY2hhciAqKSBzdHJzdHIoaHR0cFN0YXR1cyArIHN0cmxlbihodHRwU3RhdHVzKSArIDEs CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDT05URU5UX0xFTkdUSF9IRUFERVIp OworICAgIGlmIChOVUxMID09IGNvbnRlbnRMZW5ndGhIZWFkZXIpIHsKKyAgICAgICBMT0dfRVJS KGN0eCwgIlByb3RvY29sIGNvbnRlbnQgbGVuZ3RoIG5vdCBmb3VuZC4iKTsKK2RpZmYgLS1naXQg YS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWJ2bXRvb2xzL2kxOG4uYyBiL29wZW4t dm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYnZtdG9vbHMvaTE4bi5jCitpbmRleCAzMDg1Zjcy Li5kNmM4ZWFlIDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGli dm10b29scy9pMThuLmMKKysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYnZt dG9vbHMvaTE4bi5jCitAQCAtMjQwLDcgKzI0MCw3IEBAIE1zZ0dldFVzZXJMYW5ndWFnZSh2b2lk KQorICAgICAgIGNoYXIgKmRvdDsKKyAKKyAgICAgICBsYW5nID0gZ19zdHJkdXAodG1wKTsKKy0g ICAgICBkb3QgPSBzdHJjaHIobGFuZywgJy4nKTsKKysgICAgICBkb3QgPSAoY2hhciAqKSBzdHJj aHIobGFuZywgJy4nKTsKKyAgICAgICBpZiAoZG90ICE9IE5VTEwpIHsKKyAgICAgICAgICAqZG90 ID0gJ1wwJzsKKyAgICAgICB9CitAQCAtNjk4LDcgKzY5OCw3IEBAIFZNVG9vbHNfQmluZFRleHRE b21haW4oY29uc3QgY2hhciAqZG9tYWluLAorICAgICAgICAqIElmIHdlIGNvdWxkbid0IGZpbmQg dGhlIGNhdGFsb2cgZmlsZSBmb3IgdGhlIHVzZXIncyBsYW5ndWFnZSwgc2VlIGlmCisgICAgICAg ICogd2UgY2FuIGZpbmQgYSBtb3JlIGdlbmVyaWMgbGFuZ3VhZ2UgKGUuZy4sIGZvciAiZW5fVVMi LCBhbHNvIHRyeSAiZW4iKS4KKyAgICAgICAgKi8KKy0gICAgICBjaGFyICpzZXAgPSBTdHJfU3Ry cmNocihsYW5nLCAnXycpOworKyAgICAgIGNoYXIgKnNlcCA9IChjaGFyICopIFN0cl9TdHJyY2hy KGxhbmcsICdfJyk7CisgICAgICAgaWYgKHNlcCAhPSBOVUxMKSB7CisgICAgICAgICAgaWYgKHVz cmxhbmcgPT0gTlVMTCkgeworICAgICAgICAgICAgIHVzcmxhbmcgPSBVdGlsX1NhZmVTdHJkdXAo bGFuZyk7CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbW9kdWxl cy9zb2xhcmlzL3ZtaGdmcy92bm9kZS5jIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUv bW9kdWxlcy9zb2xhcmlzL3ZtaGdmcy92bm9kZS5jCitpbmRleCA1M2RkNTQ5Li5kZjJlMWYyIDEw MDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbW9kdWxlcy9zb2xhcmlz L3ZtaGdmcy92bm9kZS5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9tb2R1 bGVzL3NvbGFyaXMvdm1oZ2ZzL3Zub2RlLmMKK0BAIC01NDIxLDcgKzU0MjEsNyBAQCBIZ2ZzTWFr ZUZ1bGxOYW1lKGNvbnN0IGNoYXIgKnBhdGgsICAgICAgLy8gSU46ICBQYXRoIG9mIGRpcmVjdG9y eSBjb250YWluaW5nIGZpbAorICAgICAgICAqIFJlcGxhY2UgdGhlIGxhc3QgcGF0aCBzZXBhcmF0 b3Igd2l0aCBhIE5VTCB0ZXJtaW5hdG9yLCB0aGVuIHJldHVybiB0aGUKKyAgICAgICAgKiBzaXpl IG9mIHRoZSBidWZmZXIuCisgICAgICAgICovCistICAgICAgY2hhciAqbmV3RW5kID0gc3RycmNo cihvdXRCdWYsICcvJyk7CisrICAgICAgY2hhciAqbmV3RW5kID0gKGNoYXIgKikgc3RycmNocihv dXRCdWYsICcvJyk7CisgICAgICAgaWYgKCFuZXdFbmQpIHsKKyAgICAgICAgICAvKgorICAgICAg ICAgICAqIFdlIHNob3VsZCBuZXZlciBnZXQgaGVyZSBzaW5jZSB3ZSBuYW1lIHRoZSByb290IHZu b2RlICIvIiBpbgorZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3Nl cnZpY2VzL3BsdWdpbnMvY29tcG9uZW50TWdyL2NvbXBvbmVudE1nckluc3RhbGxBY3Rpb24uYyBi L29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvY29tcG9uZW50 TWdyL2NvbXBvbmVudE1nckluc3RhbGxBY3Rpb24uYworaW5kZXggZTA1MWY0MS4uOWRkYjIzOSAx MDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdp bnMvY29tcG9uZW50TWdyL2NvbXBvbmVudE1nckluc3RhbGxBY3Rpb24uYworKysrIGIvb3Blbi12 bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy9jb21wb25lbnRNZ3IvY29t cG9uZW50TWdySW5zdGFsbEFjdGlvbi5jCitAQCAtNDc2LDcgKzQ3Niw3IEBAIENvbXBvbmVudE1n ckNvbnN0cnVjdENvbW1hbmRsaW5lKGdjaGFyICpzY3JpcHRQYXRoLCAgICAgICAgICAgIC8vIElO CisgICAgfQorIAorICAgIGlmIChjdXN0b21Bcmd1bWVudHMgIT0gTlVMTCkgeworLSAgICAgIG1h bmRhdG9yeVBhcmFtc0V4aXN0cyA9IHN0cnN0cihjdXN0b21Bcmd1bWVudHMsIG1hbmRhdG9yeVBh cmFtcyk7CisrICAgICAgbWFuZGF0b3J5UGFyYW1zRXhpc3RzID0gKGNoYXIgKikgc3Ryc3RyKGN1 c3RvbUFyZ3VtZW50cywgbWFuZGF0b3J5UGFyYW1zKTsKKyAgICAgICBpZiAobWFuZGF0b3J5UGFy YW1zRXhpc3RzID09IE5VTEwpIHsKKyAgICAgICAgICBjb21tYW5kbGluZSA9IFN0cl9TYWZlQXNw cmludGYoTlVMTCwgIlwiJXMlc1wiICVzIFwiJXNcIiAlcyAlcyAlcyIsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c0RpciwgcG93ZXJzaGVsbEV4ZWN1dGFibGUs CitAQCAtNTA0LDcgKzUwNCw3IEBAIENvbXBvbmVudE1nckNvbnN0cnVjdENvbW1hbmRsaW5lKGdj aGFyICpzY3JpcHRQYXRoLCAgICAgICAgICAgIC8vIElOCisgICAgZnJlZShzeXNEaXIpOworICNl bHNlCisgICAgaWYgKGN1c3RvbUFyZ3VtZW50cyAhPSBOVUxMKSB7CistICAgICAgbWFuZGF0b3J5 UGFyYW1zRXhpc3RzID0gc3Ryc3RyKGN1c3RvbUFyZ3VtZW50cywgbWFuZGF0b3J5UGFyYW1zKTsK KysgICAgICBtYW5kYXRvcnlQYXJhbXNFeGlzdHMgPSAoY2hhciAqKSBzdHJzdHIoY3VzdG9tQXJn dW1lbnRzLCBtYW5kYXRvcnlQYXJhbXMpOworICAgICAgIGlmIChtYW5kYXRvcnlQYXJhbXNFeGlz dHMgPT0gTlVMTCkgeworICAgICAgICAgIGNvbW1hbmRsaW5lID0gU3RyX1NhZmVBc3ByaW50ZihO VUxMLCAiJXMgJXMgJXMgJXMiLCBzY3JpcHRQYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBkZWZhdWx0QXJndW1lbnRzLCBjdXN0b21Bcmd1bWVudHMsCitkaWZm IC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy9k bmRjcC9jb3B5UGFzdGVVSVgxMS5jcHAgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9z ZXJ2aWNlcy9wbHVnaW5zL2RuZGNwL2NvcHlQYXN0ZVVJWDExLmNwcAoraW5kZXggYTRhMDJjNS4u ZWY0N2I3NiAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZp Y2VzL3BsdWdpbnMvZG5kY3AvY29weVBhc3RlVUlYMTEuY3BwCisrKysgYi9vcGVuLXZtLXRvb2xz LTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL2RuZGNwL2NvcHlQYXN0ZVVJWDExLmNw cAorQEAgLTEwNDAsNyArMTA0MCw3IEBAIENvcHlQYXN0ZVVJWDExOjpMb2NhbEdldFNlbGVjdGlv bkZpbGVMaXN0KGNvbnN0IEd0azo6U2VsZWN0aW9uRGF0YSYgc2QpICAgICAgLy8KKyAgICAgICAv KgorICAgICAgICAqIFBhcnNlIHJlbGF0aXZlIHBhdGguCisgICAgICAgICovCistICAgICAgbmV3 UmVsUGF0aCA9IFN0cl9TdHJyY2hyKG5ld1BhdGgsIERJUlNFUEMpICsgMTsgLy8gUG9pbnQgdG8g Y2hhciBhZnRlciAnLycKKysgICAgICBuZXdSZWxQYXRoID0gKGNoYXIgKikgU3RyX1N0cnJjaHIo bmV3UGF0aCwgRElSU0VQQykgKyAxOyAvLyBQb2ludCB0byBjaGFyIGFmdGVyICcvJworIAorICAg ICAgIC8qIEtlZXAgdHJhY2sgb2YgaG93IGJpZyB0aGUgZmNwIGZpbGVzIGFyZS4gKi8KKyAgICAg ICBpZiAoKHNpemUgPSBGaWxlX0dldFNpemVFeChuZXdQYXRoKSkgPj0gMCkgeworZGlmZiAtLWdp dCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvZG5kY3Av ZG5kL2RuZFhkZy5jIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1 Z2lucy9kbmRjcC9kbmQvZG5kWGRnLmMKK2luZGV4IGRhNTRlZTUuLjhmNDkwZjYgMTAwNjQ0Cist LS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL2RuZGNw L2RuZC9kbmRYZGcuYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2Vydmlj ZXMvcGx1Z2lucy9kbmRjcC9kbmQvZG5kWGRnLmMKK0BAIC00MjgsNyArNDI4LDcgQEAgQ3JlYXRl U3RhZ2luZ0RpcmVjdG9yeSgKKyAgICAgICBjaGFyICpyZWFsU3RhZ2luZ0RpciA9IFN0cl9TYWZl QXNwcmludGYoTlVMTCwgIiVzWFhYWFhYIiwgcmVhbFJvb3QpOworIAorICAgICAgIGlmIChta2R0 ZW1wKHJlYWxTdGFnaW5nRGlyKSAhPSBOVUxMKSB7CistICAgICAgICAgY2hhciAqcmFuZG9tUGFy dCA9IHN0cnJjaHIocmVhbFN0YWdpbmdEaXIsICcvJykgKyAxOworKyAgICAgICAgIGNoYXIgKnJh bmRvbVBhcnQgPSAoY2hhciAqKSBzdHJyY2hyKHJlYWxTdGFnaW5nRGlyLCAnLycpICsgMTsKKyAg ICAgICAgICBWRVJJRlkoKnJhbmRvbVBhcnQgIT0gJ1wwJyk7CisgCisgICAgICAgICAgYXBwYXJl bnRTdGFnaW5nRGlyID0gVW5pY29kZV9BcHBlbmQoYXBwYXJlbnRSb290LCByYW5kb21QYXJ0KTsK K2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9wbHVn aW5zL2RuZGNwL2RuZEd1ZXN0L2d1ZXN0Q29weVBhc3RlU3JjLmNjIGIvb3Blbi12bS10b29scy0x My4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy9kbmRjcC9kbmRHdWVzdC9ndWVzdENvcHlQ YXN0ZVNyYy5jYworaW5kZXggNDJiMTRhNy4uMDMwMzYyNSAxMDA2NDQKKy0tLSBhL29wZW4tdm0t dG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvZG5kY3AvZG5kR3Vlc3QvZ3Vl c3RDb3B5UGFzdGVTcmMuY2MKKysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3Nl cnZpY2VzL3BsdWdpbnMvZG5kY3AvZG5kR3Vlc3QvZ3Vlc3RDb3B5UGFzdGVTcmMuY2MKK0BAIC0x OTgsNyArMTk4LDcgQEAgR3Vlc3RDb3B5UGFzdGVTcmM6OlNldHVwRGVzdERpcihjb25zdCBzdGQ6 OnN0cmluZyAmZGVzdERpcikKKyAgICAgICBpZiAobmV3RGlyICE9IE5VTEwpIHsKKyAgICAgICAg ICBtU3RhZ2luZ0RpciA9IG5ld0RpcjsKKyAKKy0gICAgICAgICBjaGFyICpsYXN0U2VwID0gU3Ry X1N0cnJjaHIobmV3RGlyLCBESVJTRVBDKTsKKysgICAgICAgICBjaGFyICpsYXN0U2VwID0gKGNo YXIgKikgU3RyX1N0cnJjaHIobmV3RGlyLCBESVJTRVBDKTsKKyAgICAgICAgICBpZiAobGFzdFNl cCAmJiBsYXN0U2VwWzFdICE9ICdcMCcpIHsKKyAgICAgICAgICAgICBtU3RhZ2luZ0RpciArPSBE SVJTRVBTOworICAgICAgICAgIH0KK2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0y NDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL2RuZGNwL2RuZEd1ZXN0L3ZtR3Vlc3REbkRTcmMuY2Mg Yi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL2RuZGNwL2Ru ZEd1ZXN0L3ZtR3Vlc3REbkRTcmMuY2MKK2luZGV4IDExYzlmZDUuLjJmMzY2YzcgMTAwNjQ0Cist LS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL2RuZGNw L2RuZEd1ZXN0L3ZtR3Vlc3REbkRTcmMuY2MKKysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0 OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvZG5kY3AvZG5kR3Vlc3Qvdm1HdWVzdERuRFNyYy5jYwor QEAgLTcwLDcgKzcwLDcgQEAgVk1HdWVzdERuRFNyYzo6U2V0dXBEZXN0RGlyKGNvbnN0IHN0ZDo6 c3RyaW5nICZkZXN0RGlyKQorICAgICAgIGlmIChuZXdEaXIgIT0gTlVMTCkgeworICAgICAgICAg IG1TdGFnaW5nRGlyID0gbmV3RGlyOworIAorLSAgICAgICAgIGNoYXIgKmxhc3RTZXAgPSBTdHJf U3RycmNocihuZXdEaXIsIERJUlNFUEMpOworKyAgICAgICAgIGNoYXIgKmxhc3RTZXAgPSAoY2hh ciAqKSBTdHJfU3RycmNocihuZXdEaXIsIERJUlNFUEMpOworICAgICAgICAgIGlmIChsYXN0U2Vw ICYmIGxhc3RTZXBbMV0gIT0gJ1wwJykgeworICAgICAgICAgICAgIG1TdGFnaW5nRGlyICs9IERJ UlNFUFM7CisgICAgICAgICAgfQorZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0 OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvZG5kY3AvZG5kVUlYMTEuY3BwIGIvb3Blbi12bS10b29s cy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy9kbmRjcC9kbmRVSVgxMS5jcHAKK2lu ZGV4IGUwODRkYzQuLjgzYzJjNjAgMTAwNjQ0CistLS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0y NDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL2RuZGNwL2RuZFVJWDExLmNwcAorKysrIGIvb3Blbi12 bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy9kbmRjcC9kbmRVSVgxMS5j cHAKK0BAIC0xNDkxLDcgKzE0OTEsNyBAQCBEbkRVSVgxMTo6U2V0Q1BDbGlwYm9hcmRGcm9tR3Rr KGNvbnN0IEd0azo6U2VsZWN0aW9uRGF0YSYgc2QpIC8vIElOCisgICAgICAgICAgLyoKKyAgICAg ICAgICAgKiBQYXJzZSByZWxhdGl2ZSBwYXRoLgorICAgICAgICAgICAqLworLSAgICAgICAgIG5l d1JlbFBhdGggPSBTdHJfU3RycmNocihuZXdQYXRoLCBESVJTRVBDKSArIDE7IC8vIFBvaW50IHRv IGNoYXIgYWZ0ZXIgJy8nCisrICAgICAgICAgbmV3UmVsUGF0aCA9IChjaGFyICopIFN0cl9TdHJy Y2hyKG5ld1BhdGgsIERJUlNFUEMpICsgMTsgLy8gUG9pbnQgdG8gY2hhciBhZnRlciAnLycKKyAK KyAgICAgICAgICAvKiBLZWVwIHRyYWNrIG9mIGhvdyBiaWcgdGhlIGRuZCBmaWxlcyBhcmUuICov CisgICAgICAgICAgaWYgKChzaXplID0gRmlsZV9HZXRTaXplRXgobmV3UGF0aCkpID49IDApIHsK K2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9wbHVn aW5zL2d1ZXN0SW5mby9wZXJmTW9uTGludXguYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1 Njk1L3NlcnZpY2VzL3BsdWdpbnMvZ3Vlc3RJbmZvL3BlcmZNb25MaW51eC5jCitpbmRleCAzYzUx ZmFlLi43MjQ4YjZmIDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUv c2VydmljZXMvcGx1Z2lucy9ndWVzdEluZm8vcGVyZk1vbkxpbnV4LmMKKysrKyBiL29wZW4tdm0t dG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvZ3Vlc3RJbmZvL3BlcmZNb25M aW51eC5jCitAQCAtNDc3LDcgKzQ3Nyw3IEBAIEd1ZXN0SW5mb1Byb2NEYXRhKGNvbnN0IGNoYXIg KnBhdGhOYW1lLCAgICAgICAgICAgLy8gSU46IHBhdGggbmFtZQorICAgICAgIH0KKyAKKyAgICAg ICBpZiAoZmllbGRTZXBhcmF0b3IgIT0gJ1wwJykgeworLSAgICAgICAgIGNoYXIgKnAgPSBzdHJy Y2hyKGZpZWxkTmFtZSwgZmllbGRTZXBhcmF0b3IpOworKyAgICAgICAgIGNoYXIgKnAgPSAoY2hh ciAqKSBzdHJyY2hyKGZpZWxkTmFtZSwgZmllbGRTZXBhcmF0b3IpOworICAgICAgICAgIGlmIChw ID09IE5VTEwpIHsKKyAgICAgICAgICAgICAvKgorICAgICAgICAgICAgICAqIFdoZW4gZmllbGRT ZXBhcmF0b3IgaXMgc3BlY2lmaWVkLCBmaWVsZE5hbWUgaXMgZXhwZWN0ZWQKK2RpZmYgLS1naXQg YS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL3ZpeC92aXhU b29scy5jIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy92 aXgvdml4VG9vbHMuYworaW5kZXggNjU0NTEyYy4uNmI5NzIzMyAxMDA2NDQKKy0tLSBhL29wZW4t dm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvdml4L3ZpeFRvb2xzLmMK KysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvdml4 L3ZpeFRvb2xzLmMKK0BAIC05MzMsNyArOTMzLDcgQEAgVml4VG9vbHNCdWlsZFVzZXJFbnZpcm9u bWVudFRhYmxlKGNvbnN0IGNoYXIgKiBjb25zdCAqZW52cCkgICAvLyBJTjogb3B0aW9uYWwKKyAg ICAgICBjaGFyICp3aGVyZVRvU3BsaXQ7CisgICAgICAgc2l6ZV90IG5hbWVMZW47CisgCistICAg ICAgd2hlcmVUb1NwbGl0ID0gc3RyY2hyKCplbnZwLCAnPScpOworKyAgICAgIHdoZXJlVG9TcGxp dCA9IChjaGFyICopIHN0cmNocigqZW52cCwgJz0nKTsKKyAgICAgICBpZiAoTlVMTCA9PSB3aGVy ZVRvU3BsaXQpIHsKKyAgICAgICAgICAvKiBPdXIgY29kZSBnZW5lcmF0ZWQgdGhpcyBsaXN0LCBz byB0aGlzIHNob3VsZG4ndCBoYXBwZW4uICovCisgICAgICAgICAgQVNTRVJUKDApOworQEAgLTE0 OTgsNyArMTQ5OCw3IEBAIFZpeFRvb2xzUnVuUHJvZ3JhbUltcGwoY2hhciAqcmVxdWVzdE5hbWUs ICAgICAgLy8gSU4KKyAgICB9CisgICAgaWYgKCdcIicgPT0gKnN0YXJ0UHJvZ3JhbUZpbGVOYW1l KSB7CisgICAgICAgc3RhcnRQcm9ncmFtRmlsZU5hbWUrKzsKKy0gICAgICBzdG9wUHJvZ3JhbUZp bGVOYW1lID0gc3Ryc3RyKHN0YXJ0UHJvZ3JhbUZpbGVOYW1lLCAiXCIiKTsKKysgICAgICBzdG9w UHJvZ3JhbUZpbGVOYW1lID0gKGNoYXIgKikgc3Ryc3RyKHN0YXJ0UHJvZ3JhbUZpbGVOYW1lLCAi XCIiKTsKKyAgICB9IGVsc2UgeworICAgICAgIHN0b3BQcm9ncmFtRmlsZU5hbWUgPSBOVUxMOwor ICAgIH0KK0BAIC0xNzE2LDcgKzE3MTYsNyBAQCBWaXhUb29sc1N0YXJ0UHJvZ3JhbUltcGwoY29u c3QgY2hhciAqcmVxdWVzdE5hbWUsICAgICAgICAgICAgLy8gSU4KKyAgICB9CisgICAgaWYgKCdc IicgPT0gKnN0YXJ0UHJvZ3JhbUZpbGVOYW1lKSB7CisgICAgICAgc3RhcnRQcm9ncmFtRmlsZU5h bWUrKzsKKy0gICAgICBzdG9wUHJvZ3JhbUZpbGVOYW1lID0gc3Ryc3RyKHN0YXJ0UHJvZ3JhbUZp bGVOYW1lLCAiXCIiKTsKKysgICAgICBzdG9wUHJvZ3JhbUZpbGVOYW1lID0gKGNoYXIgKikgc3Ry c3RyKHN0YXJ0UHJvZ3JhbUZpbGVOYW1lLCAiXCIiKTsKKyAgICB9IGVsc2UgeworICAgICAgIHN0 b3BQcm9ncmFtRmlsZU5hbWUgPSBOVUxMOworICAgIH0KK0BAIC00NTgyLDcgKzQ1ODIsNyBAQCBW aXhUb29sc0dldEFsbEVudlZhcnNGb3JVc2VyKHZvaWQgKnVzZXJUb2tlbiwgICAgIC8vIElOCisg ICAgICAgICAgY2hhciAqd2hlcmVUb1NwbGl0OworICAgICAgICAgIHNpemVfdCBuYW1lTGVuOwor IAorLSAgICAgICAgIHdoZXJlVG9TcGxpdCA9IHN0cmNocihlbnZWYXIsICc9Jyk7CisrICAgICAg ICAgd2hlcmVUb1NwbGl0ID0gKGNoYXIgKikgc3RyY2hyKGVudlZhciwgJz0nKTsKKyAgICAgICAg ICBpZiAoTlVMTCA9PSB3aGVyZVRvU3BsaXQpIHsKKyAgICAgICAgICAgICAvKiBPdXIgY29kZSBn ZW5lcmF0ZWQgdGhpcyBsaXN0LCBzbyB0aGlzIHNob3VsZG4ndCBoYXBwZW4uICovCisgICAgICAg ICAgICAgQVNTRVJUKDApOworZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1 Njk1L3Rlc3RzL3ZtcnBjZGJnL2RlYnVnQ2hhbm5lbC5jIGIvb3Blbi12bS10b29scy0xMy4wLjUt MjQ5MTU2OTUvdGVzdHMvdm1ycGNkYmcvZGVidWdDaGFubmVsLmMKK2luZGV4IDM5OWRlZGQuLmVi NTVjZjIgMTAwNjQ0CistLS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS90ZXN0cy92 bXJwY2RiZy9kZWJ1Z0NoYW5uZWwuYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2 OTUvdGVzdHMvdm1ycGNkYmcvZGVidWdDaGFubmVsLmMKK0BAIC0yMjIsNyArMjIyLDcgQEAgUnBj RGVidWdTZW5kKFJwY0NoYW5uZWwgKmNoYW4sCisgICAgICAgICAgQVNTRVJUKG1hcHBpbmctPnhk clNpemUgPiAwKTsKKyAKKyAgICAgICAgICAvKiBGaW5kIG91dCB3aGVyZSB0aGUgWERSIGRhdGEg c3RhcnRzLiAqLworLSAgICAgICAgIHN0YXJ0ID0gc3RyY2hyKGNvcHksICcgJyk7CisrICAgICAg ICAgc3RhcnQgPSAoY2hhciAqKSBzdHJjaHIoY29weSwgJyAnKTsKKyAgICAgICAgICBpZiAoc3Rh cnQgPT0gTlVMTCkgeworICAgICAgICAgICAgIFJwY0RlYnVnX1NldFJlc3VsdCgiQ2FuJ3QgZmlu ZCBjb21tYW5kIGRlbGltaXRlci4iLCByZXN1bHQsIHJlc3VsdExlbik7CisgICAgICAgICAgICAg cmV0ID0gRkFMU0U7CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUv dmdhdXRoL2NvbW1vbi9pMThuLmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS92Z2F1 dGgvY29tbW9uL2kxOG4uYworaW5kZXggNmQxMjkyZC4uYmEyY2EyOCAxMDA2NDQKKy0tLSBhL29w ZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3ZnYXV0aC9jb21tb24vaTE4bi5jCisrKysgYi9v cGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS92Z2F1dGgvY29tbW9uL2kxOG4uYworQEAgLTQ4 NCw3ICs0ODQsNyBAQCBNc2dHZXRVc2VyTGFuZ3VhZ2Uodm9pZCkKKyAgICAgICBjaGFyICpkb3Q7 CisgCisgICAgICAgbGFuZyA9IGdfc3RyZHVwKHRtcCk7CistICAgICAgZG90ID0gc3RyY2hyKGxh bmcsICcuJyk7CisrICAgICAgZG90ID0gKGNoYXIgKikgc3RyY2hyKGxhbmcsICcuJyk7CisgICAg ICAgaWYgKGRvdCAhPSBOVUxMKSB7CisgICAgICAgICAgKmRvdCA9ICdcMCc7CisgICAgICAgfQor ZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3ZtYmxvY2ttb3VudGVy L3ZtYmxvY2ttb3VudGVyLmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS92bWJsb2Nr bW91bnRlci92bWJsb2NrbW91bnRlci5jCitpbmRleCA0MjliMTI0Li42M2I1YmVmIDEwMDY0NAor LS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvdm1ibG9ja21vdW50ZXIvdm1ibG9j a21vdW50ZXIuYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvdm1ibG9ja21v dW50ZXIvdm1ibG9ja21vdW50ZXIuYworQEAgLTE0MCw3ICsxNDAsNyBAQCBtYWluKGludCBhcmdj LCAgICAgICAgICAvLyBJTgorICAgIHRoaXNQcm9ncmFtID0gYXJndlswXTsKKyAKKyAgICAvKiBD b21wdXRlIHRoZSBiYXNlIG5hbWUgb2YgdGhlIHByb2dyYW0sIHRvby4gKi8KKy0gICB0aGlzUHJv Z3JhbUJhc2UgPSBzdHJyY2hyKHRoaXNQcm9ncmFtLCAnLycpOworKyAgIHRoaXNQcm9ncmFtQmFz ZSA9IChjaGFyICopIHN0cnJjaHIodGhpc1Byb2dyYW0sICcvJyk7CisgICAgaWYgKHRoaXNQcm9n cmFtQmFzZSAhPSBOVUxMKSB7CisgICAgICAgdGhpc1Byb2dyYW1CYXNlKys7CisgICAgfSBlbHNl IHsKK2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS92bWhnZnMtZnVz ZS9jb25maWcuYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3ZtaGdmcy1mdXNlL2Nv bmZpZy5jCitpbmRleCAxOTUzNWZkLi4zZjY4ZmY2IDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29s cy0xMy4wLjUtMjQ5MTU2OTUvdm1oZ2ZzLWZ1c2UvY29uZmlnLmMKKysrKyBiL29wZW4tdm0tdG9v bHMtMTMuMC41LTI0OTE1Njk1L3ZtaGdmcy1mdXNlL2NvbmZpZy5jCitAQCAtMjQ4LDcgKzI0OCw3 IEBAIFN5c0NvbXBhdElzSW5zdGFsbGVkRnVzZShjaGFyICp1dHNSZWxlYXNlKSAgLy8gSU46IGtl cm5lbCByZWxlYXNlCisgICAgfQorIAorICAgIG1vZHVsZXNEZXBEYXRhW21vZHVsZXNEZXBEYXRh U2l6ZV0gPSAnXDAnOworLSAgIGZ1c2VGaWxlc3lzdGVtID0gc3Ryc3RyKG1vZHVsZXNEZXBEYXRh LAorKyAgIGZ1c2VGaWxlc3lzdGVtID0gKGNoYXIgKikgc3Ryc3RyKG1vZHVsZXNEZXBEYXRhLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZVU0VSX0tFUk5FTF9GUyk7CisgCisgICAgaW5z dGFsbGVkRnVzZSA9IChmdXNlRmlsZXN5c3RlbSAhPSBOVUxMKTsKK2RpZmYgLS1naXQgYS9vcGVu LXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS94ZmVybG9ncy94ZmVybG9ncy5jIGIvb3Blbi12bS10 b29scy0xMy4wLjUtMjQ5MTU2OTUveGZlcmxvZ3MveGZlcmxvZ3MuYworaW5kZXggYTI5YTI1YS4u N2ZjODY3MSAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3hmZXJs b2dzL3hmZXJsb2dzLmMKKysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3hmZXJs b2dzL3hmZXJsb2dzLmMKK0BAIC0yMDgsOSArMjA4LDkgQEAgZXh0cmFjdEZpbGUoY2hhciAqZmls ZW5hbWUpIC8vSU46IHZteCBsb2cgZmlsZW5hbWUgZS5nLiB2bXdhcmUubG9nCisgICAgICAgICAg ICAgICogcmVhZCB0aGUgaW5wdXQgZmlsZW5hbWUsIHdoaWNoIHdhcyB0aGUgZmlsZW5hbWUgd3Jp dHRlbiBieSB0aGUKKyAgICAgICAgICAgICAgKiBndWVzdC4KKyAgICAgICAgICAgICAgKi8KKy0g ICAgICAgICAgICBsb2dJbnBGaWxlbmFtZSA9IHN0cnN0cihidWYsIExPR19TVEFSVF9NQVJLKTsK KysgICAgICAgICAgICBsb2dJbnBGaWxlbmFtZSA9IChjaGFyICopIHN0cnN0cihidWYsIExPR19T VEFSVF9NQVJLKTsKKyAgICAgICAgICAgICBsb2dJbnBGaWxlbmFtZSArPSBzaXplb2YgTE9HX1NU QVJUX01BUks7CistICAgICAgICAgICAgcHRyU3RyID0gc3Ryc3RyKGxvZ0lucEZpbGVuYW1lLCAi OiB2ZXIgIik7CisrICAgICAgICAgICAgcHRyU3RyID0gKGNoYXIgKikgc3Ryc3RyKGxvZ0lucEZp bGVuYW1lLCAiOiB2ZXIgIik7CisgICAgICAgICAgICAgaWYgKHB0clN0ciA9PSBOVUxMKSB7Cisg ICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJJbnZhbGlkIHN0YXJ0IGxvZyBtYXJrLiIp OworICAgICAgICAgICAgICAgIGJyZWFrOworQEAgLTI0Myw3ICsyNDMsNyBAQCBleHRyYWN0Rmls ZShjaGFyICpmaWxlbmFtZSkgLy9JTjogdm14IGxvZyBmaWxlbmFtZSBlLmcuIHZtd2FyZS5sb2cK KyAgICAgICAgICAgICAgKiBkb250IHdyaXRlIGFueXRoaW5nLgorICAgICAgICAgICAgICAqLwor ICAgICAgICAgICAgIHB0clN0cisrOworLSAgICAgICAgICAgIHZlciA9IHN0cnN0cihwdHJTdHIs ICJ2ZXIgLSAiKTsKKysgICAgICAgICAgICB2ZXIgPSAoY2hhciAqKSBzdHJzdHIocHRyU3RyLCAi dmVyIC0gIik7CisgICAgICAgICAgICAgaWYgKCF2ZXIpIHsKKyAgICAgICAgICAgICAgICBXYXJu aW5nKCJObyB2ZXJzaW9uIGluZm9ybWF0aW9uIGRldGVjdGVkXG4iKTsKKyAgICAgICAgICAgICB9 IGVsc2UgeworQEAgLTI3Niw3ICsyNzYsNyBAQCBleHRyYWN0RmlsZShjaGFyICpmaWxlbmFtZSkg Ly9JTjogdm14IGxvZyBmaWxlbmFtZSBlLmcuIHZtd2FyZS5sb2cKKyAgICAgICAgICB9IGVsc2Ug eyAvLyB3cml0ZSB0byB0aGUgb3V0cHV0IGZpbGUKKyAgICAgICAgICAgICBpZiAob3V0ZnApIHsK KyAgICAgICAgICAgICAgICBBU1NFUlQoc3RhdGUgPT0gSU5fR1VFU1RfTE9HR0lORyk7CistICAg ICAgICAgICAgICAgcHRyU3RyID0gc3Ryc3RyKGJ1ZiwgTE9HX0dVRVNUX01BUkspOworKyAgICAg ICAgICAgICAgIHB0clN0ciA9IChjaGFyICopIHN0cnN0cihidWYsIExPR19HVUVTVF9NQVJLKTsK KyAgICAgICAgICAgICAgICBwdHJTdHIgKz0gc2l6ZW9mIExPR19HVUVTVF9NQVJLIC0gMTsKKyAg ICAgICAgICAgICAgICBpZiAoQmFzZTY0X0RlY29kZShwdHJTdHIsIGJhc2U2NE91dCwgQlVGX09V VF9TSVpFLCAmbGVuT3V0KSkgeworICAgICAgICAgICAgICAgICAgIGlmIChmd3JpdGUoYmFzZTY0 T3V0LCAxLCBsZW5PdXQsIG91dGZwKSAhPSBsZW5PdXQpIHsKKy0tIAorMi41MS4xCisKCmRpZmYg LS1naXQgYS9vcGVuLXZtLXRvb2xzLnNwZWMgYi9vcGVuLXZtLXRvb2xzLnNwZWMKaW5kZXggMjI3 MjVjMy4uZmFiNDQyNiAxMDA2NDQKLS0tIGEvb3Blbi12bS10b29scy5zcGVjCisrKyBiL29wZW4t dm0tdG9vbHMuc3BlYwpAQCAtNzgsNiArNzgsNyBAQCBFeGNsdXNpdmVBcmNoOiAgICAle2l4ODZ9 IHg4Nl82NCBhYXJjaDY0CiAKICMgUGF0Y2hlcwogI1BhdGNoMDogICAgICAgICAgIDxwYXRjaC1u YW1lMD4ucGF0Y2gKK1BhdGNoMjogMDAwMS1GaXgtZGlzY2FyZGVkLXF1YWxpZmllcnMtd2Fybmlu Zy1lcnJvci5wYXRjaAogCiBCdWlsZFJlcXVpcmVzOiAgICBhdXRvY29uZgogQnVpbGRSZXF1aXJl czogICAgYXV0b21ha2UK