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] rawhide: Merge remote-tracking branch 'centos-stream/c10s' into eln Date: Thu, 03 Sep 2026 15:05:41 GMT Message-ID: <178844794155.1.3642051649631454056.rpms-open-vm-tools-39e4b4e07eec@fedoraproject.org> List-ID: X-Git-Repo: rpms/open-vm-tools X-Git-Branch: rawhide X-Git-Rev: 39e4b4e07eec32459089c03fbbd39864854424ea QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvb3Blbi12bS10b29s cwpCcmFuY2ggOiByYXdoaWRlCkNvbW1pdCA6IDM5ZTRiNGUwN2VlYzMyNDU5MDg5YzAzZmJiZDM5 ODY0ODU0NDI0ZWEKQXV0aG9yIDogWWFha292IFNlbGtvd2l0eiA8eXNlbGtvd2lAcmVkaGF0LmNv bT4KRGF0ZSAgIDogMjAyNi0wMi0yNlQyMDo1NzowMy0wNTowMApTdGF0cyAgOiArNzg2Ly03OSBp biA1IGZpbGUocykKVVJMICAgIDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9v cGVuLXZtLXRvb2xzL2MvMzllNGI0ZTA3ZWVjMzI0NTkwODljMDNmYmJkMzk4NjQ4NTQ0MjRlYT9i cmFuY2g9cmF3aGlkZQoKTG9nOgpNZXJnZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICdjZW50b3Mt c3RyZWFtL2MxMHMnIGludG8gZWxuCgotLS0KZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0 aWdub3JlCmluZGV4IGQzMmMyNGQuLjg0ODgxZmIgMTAwNjQ0Ci0tLSBhLy5naXRpZ25vcmUKKysr IGIvLmdpdGlnbm9yZQpAQCAtNDEsMyArNDEsNCBAQAogL29wZW4tdm0tdG9vbHMtMTIuNS4wLTI0 Mjc2ODQ2LnRhci5negogL29wZW4tdm0tdG9vbHMtMTMuMC4wLTI0Njk2NDA5LnRhci5negogL29w ZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1LnRhci5negorL29wZW4tdm0tdG9vbHMtMTMuMC4x MC0yNTA1NjE1MS50YXIuZ3oKCmRpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLnNwZWMgYi9vcGVu LXZtLXRvb2xzLnNwZWMKaW5kZXggMDA0MWQyZi4uZmFiNDQyNiAxMDA2NDQKLS0tIGEvb3Blbi12 bS10b29scy5zcGVjCisrKyBiL29wZW4tdm0tdG9vbHMuc3BlYwpAQCAtMTksOCArMTksOCBAQAog IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAogJWdsb2JhbCBtYWpvcnZlcnNpb24gICAgMTMuMAot JWdsb2JhbCBtaW5vcnZlcnNpb24gICAgNQotJWdsb2JhbCB0b29sc2J1aWxkICAgICAgMjQ5MTU2 OTUKKyVnbG9iYWwgbWlub3J2ZXJzaW9uICAgIDEwCislZ2xvYmFsIHRvb2xzYnVpbGQgICAgICAy NTA1NjE1MQogJWdsb2JhbCB0b29sc3ZlcnNpb24gICAgJXttYWpvcnZlcnNpb259LiV7bWlub3J2 ZXJzaW9ufQogJWdsb2JhbCB0b29sc2RhZW1vbiAgICAgdm10b29sc2QKICVnbG9iYWwgdmdhdXRo ZGFlbW9uICAgIHZnYXV0aGQKQEAgLTc4LDggKzc4LDYgQEAgRXhjbHVzaXZlQXJjaDogICAgJXtp eDg2fSB4ODZfNjQgYWFyY2g2NAogCiAjIFBhdGNoZXMKICNQYXRjaDA6ICAgICAgICAgICA8cGF0 Y2gtbmFtZTA+LnBhdGNoCi0jIEZvciBSSEVMLTk5NzgxIC0gQ2xvdWQtaW5pdCByZWNlaXZlcyBU RVJNIHNpZ25hbCBmcm9tIFBJRCAxIGluIHRoZSBtaWRkbGUgb2YgcnVubmluZyB1c2VyIGRhdGEg W3JoZWwtMTBdCi1QYXRjaDE6IG92dC1IYW5kbGUtbmV3LWNsb3VkLWluaXQtZXJyb3ItY29kZS1h bmQtc3RhdHVzLnBhdGNoCiBQYXRjaDI6IDAwMDEtRml4LWRpc2NhcmRlZC1xdWFsaWZpZXJzLXdh cm5pbmctZXJyb3IucGF0Y2gKIAogQnVpbGRSZXF1aXJlczogICAgYXV0b2NvbmYKQEAgLTYyNSw2 ICs2MjMsMTEgQEAgZmkKICV7X2JpbmRpcn0vdm13YXJlLXZnYXV0aC1zbW9rZXRlc3QKIAogJWNo YW5nZWxvZworKiBNb24gRmViIDE2IDIwMjYgQm8gWWFuZyA8Ym95YW5nQHJlZGhhdC5jb20+IC0g MTMuMC4xMC0xCistIFJlYmFzZSB0byAxMy4wLjEwIFtSSEVMLTE0NDU3N10KKy0gUmVzb2x2ZXM6 IFJIRUwtMTQ0NTc3CisgIChbRVNYaV1bUkhFTDEwXSBvcGVuLXZtLXRvb2xzIHZlcnNpb24gMTMu MC4xMCBoYXMgYmVlbiByZWxlYXNlZCAtIHBsZWFzZSByZWJhc2UpCisKICogTW9uIE5vdiAwMyAy MDI1IEJvIFlhbmcgPGJveWFuZ0ByZWRoYXQuY29tPiAtIDEzLjAuNS0xCiAtIFJlYmFzZSB0byAx My4wLjUgW1JIRUwtMTE4NTA0XQogLSBSZXNvbHZlczogUkhFTC0xMTg1MDQKCmRpZmYgLS1naXQg YS9vdnQtSGFuZGxlLW5ldy1jbG91ZC1pbml0LWVycm9yLWNvZGUtYW5kLXN0YXR1cy5wYXRjaCBi L292dC1IYW5kbGUtbmV3LWNsb3VkLWluaXQtZXJyb3ItY29kZS1hbmQtc3RhdHVzLnBhdGNoCmRl bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1NDczYzBiLi4wMDAwMDAwCi0tLSBhL292dC1I YW5kbGUtbmV3LWNsb3VkLWluaXQtZXJyb3ItY29kZS1hbmQtc3RhdHVzLnBhdGNoCisrKyAvZGV2 L251bGwKQEAgLTEsNzQgKzAsMCBAQAotRnJvbSA2YzQxMzA3NTRiMTgzYzkyOWI1MDkyYmFiNTE2 YzYzOTE5NzRkZGNiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogUGVuZ3BlbmcgU3Vu IDxwZW5ncGVuZy5zdW5AYnJvYWRjb20uY29tPgotRGF0ZTogV2VkLCAyNyBBdWcgMjAyNSAxNDox OTo1OCArMDgwMAotU3ViamVjdDogW1BBVENIIDEvMl0gSGFuZGxlIG5ldyBjbG91ZC1pbml0IGVy cm9yIGNvZGUgYW5kIHN0YXR1cwotCi1SSC1BdXRob3I6IEFuaSBTaW5oYSA8YW5pc2luaGFAcmVk aGF0LmNvbT4KLVJILU1lcmdlUmVxdWVzdDogMTI6IEhhbmRsZSBuZXcgY2xvdWQtaW5pdCBlcnJv ciBjb2RlIGFuZCBzdGF0dXMKLVJILUppcmE6IFJIRUwtOTk3ODEKLVJILUFja2VkLWJ5OiB4aWFj aGVuIDx4aWFjaGVuQHJlZGhhdC5jb20+Ci1SSC1BY2tlZC1ieTogTWlyb3NsYXYgUmV6YW5pbmEg PG1yZXphbmluQHJlZGhhdC5jb20+Ci1SSC1Db21taXQ6IFsxLzFdIDQwYTcwNTUwNzM2M2I5ZTUw OGZjYzUwMjUwZDUxYzhlY2E3ZTgxYTMgKGFuaXNpbmhhL2NlbnRvcy1vcGVuLXZtLXRvb2xzKQot Ci0gLSBBIG5ldyBlcnJvciBjb2RlIFsxXSB3YXMgaW50cm9kdWNlZCBpbiBjbG91ZC1pbml0IHYy My40LCBSZWRIYXQgdGVhbSByZXBvcnRlZAotdGhhdCBvdXIgT1ZUIGNvZGUgc2hhbGwgaGFuZGxl IHRoaXMgbmV3IGVycm9yIGNvZGUgcHJvcGVybHksIHNlZQotaHR0cHM6Ly9naXRodWIuY29tL3Zt d2FyZS9vcGVuLXZtLXRvb2xzL2lzc3Vlcy83NjguCi1UaGlzIGNoYW5nZSBmb2xsb3dzIHRoZSBi YWNrd2FyZHMtY29tcGF0aWJsZSB3YXkgaW4KLWh0dHBzOi8vY2xvdWRpbml0LnJlYWR0aGVkb2Nz LmlvL2VuL2xhdGVzdC9leHBsYW5hdGlvbi9yZXR1cm5fY29kZXMuaHRtbAotdG8gY2hlY2sgdGhh dCB0aGUgcmV0dXJuIGNvZGUgaXMgbm90IGVxdWFsIHRvIDEuCi0KLSAtIFJ1bm5pbmcgc3RhdHVz IGhhcyBiZWVuIGNoYW5nZWQgZnJvbSAibm90IHJ1biIgdG8gIm5vdCBzdGFydGVkIiBpbgotY2xv dWQtaW5pdCB2MjQuMSwgc2VlIGRldGFpbHMgaW4KLWh0dHBzOi8vZ2l0aHViLmNvbS9jYW5vbmlj YWwvY2xvdWQtaW5pdC9jb21taXQvZDE3NTE3MGFlZGMxMzk4Yjg1YWM3Njc1NzNiODc3M2E1YTJl N2M2Zi4KLVRoaXMgY2hhbmdlIGFkZHMgIm5vdCBzdGFydGVkIiBtYXRjaCB0byBDTE9VRElOSVRf U1RBVFVTX05PVF9SVU4uCi0KLVRoaXMgcGF0Y2ggd2FzIHNlbnQgYnkgSm9obiBXb2xmZSBvdmVy IGVtYWlsIGFuZCBoYXMgYmVlbiBwdXNoZWQgdXBzdHJlYW0gaGVyZToKLWh0dHBzOi8vZ2l0aHVi LmNvbS92bXdhcmUvb3Blbi12bS10b29scy9ibG9iL0hhbmRsZS1uZXctY2xvdWQtaW5pdC1lcnJv ci1jb2RlLnBhdGNoLwotCi1BZGRyZXNzZXMgb3Blbi12bS10b29scyBpc3N1ZSBodHRwczovL2dp dGh1Yi5jb20vdm13YXJlL29wZW4tdm0tdG9vbHMvaXNzdWVzLzc2OAotCi1UaGlzIGNoYW5nZSBo YXMgYmVlbiB0ZXN0ZWQgaW50ZXJuYWxseSBieSBBbXkgQ2hlbiBhbmQgaXMgc2VlbiB0byBmaXgg dGhlCi1vcmlnaW5hbCBpc3N1ZS4KLQotMS4gaHR0cHM6Ly9jbG91ZGluaXQucmVhZHRoZWRvY3Mu aW8vZW4vbGF0ZXN0L2V4cGxhbmF0aW9uL2ZhaWx1cmVfc3RhdGVzLmh0bWwjZXJyb3ItY29kZXMK LQotU2lnbmVkLW9mZi1ieTogQW5pIFNpbmhhIDxhbmlzaW5oYUByZWRoYXQuY29tPgotLS0tCi0g b3Blbi12bS10b29scy9saWJEZXBsb3lQa2cvbGludXhEZXBsb3ltZW50LmMgfCAxMCArKysrKysr LS0tCi0gMSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKLQot ZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMvbGliRGVwbG95UGtnL2xpbnV4RGVwbG95bWVudC5j IGIvb3Blbi12bS10b29scy9saWJEZXBsb3lQa2cvbGludXhEZXBsb3ltZW50LmMKLWluZGV4IDQ0 Y2FjOGVmLi44MmU4Mzk1NyAxMDA2NDQKLS0tLSBhL29wZW4tdm0tdG9vbHMvbGliRGVwbG95UGtn L2xpbnV4RGVwbG95bWVudC5jCi0rKysgYi9vcGVuLXZtLXRvb2xzL2xpYkRlcGxveVBrZy9saW51 eERlcGxveW1lbnQuYwotQEAgLTEzMTMsNiArMTMxMyw3IEBAIHN0YXRpYyBDTE9VRElOSVRfU1RB VFVTX0NPREUKLSBHZXRDbG91ZGluaXRTdGF0dXMoKSB7Ci0gICAgLy8gQ2xvdWQtaW5pdCBleGVj dXRpb24gc3RhdHVzIG1lc3NhZ2VzCi0gICAgc3RhdGljIGNvbnN0IGNoYXIqIE5PVF9SVU4gPSAi bm90IHJ1biI7Ci0rICAgc3RhdGljIGNvbnN0IGNoYXIqIE5PVF9TVEFSVEVEID0gIm5vdCBzdGFy dGVkIjsKLSAgICBzdGF0aWMgY29uc3QgY2hhciogUlVOTklORyA9ICJydW5uaW5nIjsKLSAgICBz dGF0aWMgY29uc3QgY2hhciogRE9ORSA9ICJkb25lIjsKLSAgICBzdGF0aWMgY29uc3QgY2hhciog RVJST1IgPSAiZXJyb3IiOwotQEAgLTEzMjYsMTMgKzEzMjcsMTYgQEAgR2V0Q2xvdWRpbml0U3Rh dHVzKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxz ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xvdWRpbml0 U3RhdHVzQ21kT3V0cHV0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBNQVhfTEVOR1RIX0NMT1VESU5JVF9TVEFUVVMpOwotLSAgIGlmIChmb3JrRXhlY1Jlc3Vs dCAhPSAwKSB7Ci0tICAgICAgc0xvZyhsb2dfaW5mbywgIlVuYWJsZSB0byBnZXQgY2xvdWQtaW5p dCBzdGF0dXMuIik7Ci0tICAgICAgcmV0dXJuIENMT1VESU5JVF9TVEFUVVNfVU5LTk9XTjsKLSsg ICBpZiAoZm9ya0V4ZWNSZXN1bHQgPT0gMSkgewotKyAgICAgIHNMb2cobG9nX2luZm8sICJDbG91 ZC1pbml0IGV4cGVyaWVuY2VkIHVucmVjb3ZlcmFibGUgZXJyb3IuIik7Ci0rICAgICAgcmV0dXJu IENMT1VESU5JVF9TVEFUVVNfRVJST1I7Ci0gICAgfSBlbHNlIHsKLSAgICAgICBpZiAoc3Ryc3Ry KGNsb3VkaW5pdFN0YXR1c0NtZE91dHB1dCwgTk9UX1JVTikgIT0gTlVMTCkgewotICAgICAgICAg IHNMb2cobG9nX2luZm8sICJDbG91ZC1pbml0IHN0YXR1cyBpcyAnJXMnLiIsIE5PVF9SVU4pOwot ICAgICAgICAgIHJldHVybiBDTE9VRElOSVRfU1RBVFVTX05PVF9SVU47Ci0rICAgICAgfSBlbHNl IGlmIChzdHJzdHIoY2xvdWRpbml0U3RhdHVzQ21kT3V0cHV0LCBOT1RfU1RBUlRFRCkgIT0gTlVM TCkgewotKyAgICAgICAgIHNMb2cobG9nX2luZm8sICJDbG91ZC1pbml0IHN0YXR1cyBpcyAnJXMn LiIsIE5PVF9TVEFSVEVEKTsKLSsgICAgICAgICByZXR1cm4gQ0xPVURJTklUX1NUQVRVU19OT1Rf UlVOOwotICAgICAgIH0gZWxzZSBpZiAoc3Ryc3RyKGNsb3VkaW5pdFN0YXR1c0NtZE91dHB1dCwg UlVOTklORykgIT0gTlVMTCkgewotICAgICAgICAgIHNMb2cobG9nX2luZm8sICJDbG91ZC1pbml0 IHN0YXR1cyBpcyAnJXMnLiIsIFJVTk5JTkcpOwotICAgICAgICAgIHJldHVybiBDTE9VRElOSVRf U1RBVFVTX1JVTk5JTkc7Ci0tLSAKLTIuNDcuMwotCgpkaWZmIC0tZ2l0IGEvc291cmNlcyBiL3Nv dXJjZXMKaW5kZXggNzg3ZmMxYy4uZWY3MjVjZiAxMDA2NDQKLS0tIGEvc291cmNlcworKysgYi9z b3VyY2VzCkBAIC0xLDQgKzEsNCBAQAotU0hBNTEyIChvcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkx NTY5NS50YXIuZ3opID0gZThhMGM4MjNlODQzMGUzZGYwODczZjgwMzE3MDQ1MzZlNzNiZWMyMWQ0 Y2QzN2MzN2EzNzA1M2ZlMmE1MTE2YWUxZDJmZGZhMDVlYWU5NTkxMGMyMjIzOGM5NjdhY2M5NmY2 NjAzZTFkZDgyODlmMmNhOTI2NTA3MDQwYzc1N2EKK1NIQTUxMiAob3Blbi12bS10b29scy0xMy4w LjEwLTI1MDU2MTUxLnRhci5neikgPSBjMzMyZmQyZWZiM2JjMTZmMmZiYjc3YjdiMGQwZjRhNWJi MjUxYjViNDgyODI2MGJiNmNiZDk2OTAzYTM4ZDQ5MmY5MDcyN2RhZDU0ZWY5NWU0NDJjZjNkY2Mw NDMwMzJlNTU4MWU2NGUzYWVlNGFmYjU1YjlkYjU2OGEyOTI1OQogU0hBNTEyIChhdGttbS0yLjI4 LjQtMi5lbDEwLnNyYy5ycG0pID0gNTU5NTNjMzIyMWMyMjg0MzNlNzIwYjI4NTE3YzFkMjNmYWJh MTA5MWViNWQ4MWJlNjUyMmMwOTZiN2NmNDI4MjhlYWVmZTFjMzMwYWEyY2EwYjA1ODE4OGNmNGRk ZDg1NDk0NjNkNTgxNzk0OWE1YTMxZWZlYWQ3MjA5N2QwNGUKIFNIQTUxMiAoY2Fpcm9tbS0xLjE0 LjUtNS5lbDEwLnNyYy5ycG0pID0gMmQwMzZlODNjNjNkZDI5YTE5MzM1NDJkZTIyNzRkNzRiNGU2 MzEwMGQ5MGRmZDU1OWVhYmRkMDAzMzNhYzRkZDFjYTI1ZDgxMGY1MTgwYzFjMWFmZDcxY2Q5ODUz NzZlNzcwMGJlYWZmNGYzODUxMzIyMDBjNzU2MzNiZmM5ODAKIFNIQTUxMiAoZ2xpYm1tMi40LTIu NjYuNi01LmVsMTAuc3JjLnJwbSkgPSA3OGNkNWQ1NGYxZWY5ZmFmMmJlNzVmMjI1NTBiNWVjNjBi NTVmNmM0MzQ1ZGY5MWRiOTU4ODk3NjJmNjA2YTA2NDk5MDUwNzc5MzQ1MjdiOThiYTMyNTIxMmJi NDYwYTE5ZGVhZGVmOWVlYTE1YmIwYzUwOTE1ZTU2MDYyMWQ0YwoKZGlmZiAtLWdpdCBhLzAwMDEt Rml4LWRpc2NhcmRlZC1xdWFsaWZpZXJzLXdhcm5pbmctZXJyb3IucGF0Y2ggYi8wMDAxLUZpeC1k aXNjYXJkZWQtcXVhbGlmaWVycy13YXJuaW5nLWVycm9yLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAuLjJhOWM3NGYKLS0tIC9kZXYvbnVsbAorKysgYi8wMDAxLUZpeC1k aXNjYXJkZWQtcXVhbGlmaWVycy13YXJuaW5nLWVycm9yLnBhdGNoCkBAIC0wLDAgKzEsNzc2IEBA CitGcm9tIDBlODBjYjg2YmI0NzVmNjY3ZGFmN2ViNjNhNDIxNjJiYjg0YWIwN2EgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCitGcm9tOiBNaXJvc2xhdiBSZXphbmluYSA8bXJlemFuaW5AcmVkaGF0 LmNvbT4KK0RhdGU6IFR1ZSwgOSBEZWMgMjAyNSAxMjoyMjowMiArMDEwMAorU3ViamVjdDogW1BB VENIXSBGaXggZGlzY2FyZGVkLXF1YWxpZmllcnMgd2FybmluZyBlcnJvcgorCitOZXcgZ2NjIHJl cG9ydHMgd2FybmluZyB3aGVuIHBvaW50ZXIgbG9vc2VzIGNvbnN0IHF1YWxpZmllci4KKworSW4g YWRkaXRpb24sIGhhbmRsZSBuZXcgZ19mcmVlIGRlZmluaXRpb24uCisKK1NpZ25lZC1vZmYtYnk6 IE1pcm9zbGF2IFJlemFuaW5hIDxtcmV6YW5pbkByZWRoYXQuY29tPgorLS0tCisgb3Blbi12bS10 b29scy0xMy4wLjUtMjQ5MTU2OTUvY29uZmlnL2x0bWFpbi5zaCAgICAgfCAgNCArKy0tCisgLi4u L2xpYi9maWxlL2ZpbGVMb2NrUG9zaXguYyAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0t CisgLi4uL2xpYi9maWxlL2ZpbGVMb2NrUHJpbWl0aXZlLmMgICAgICAgICAgICAgICAgICAgfCAg MiArLQorIG9wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9maWxlL2ZpbGVQb3NpeC5j IHwgIDQgKystLQorIC4uLi9saWIvZmlsZS9maWxlU3RhbmRBbG9uZS5jICAgICAgICAgICAgICAg ICAgICAgIHwgIDggKysrKy0tLS0KKyAuLi4vbGliL2dsaWJVdGlscy9maWxlTG9nZ2VyLmMgICAg ICAgICAgICAgICAgICAgICB8ICA4ICsrKystLS0tCisgLi4uL2xpYi9oZ2ZzL2hnZnNFc2NhcGUu YyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxNCArKysrKysrLS0tLS0tLQorIC4uLi9saWIv aGdmc1NlcnZlci9oZ2ZzU2VydmVyTGludXguYyAgICAgICAgICAgICAgIHwgIDQgKystLQorIG9w ZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9taXNjL2NvZGVzZXQuYyAgIHwgIDIgKy0K KyAuLi4vbGliL21pc2MvY29kZXNldE9sZC5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAy ICstCisgLi4uL2xpYi9taXNjL2hvc3RpbmZvUG9zaXguYyAgICAgICAgICAgICAgICAgICAgICAg fCAxNCArKysrKysrLS0tLS0tLQorIG9wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9t aXNjL21hY2hpbmVJRC5jIHwgIDIgKy0KKyBvcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9s aWIvbWlzYy9zdHJ1dGlsLmMgICB8ICA4ICsrKystLS0tCisgLi4uL2xpYi9uaWNJbmZvL25pY0lu Zm9Qb3NpeC5jICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQorIC4uLi9saWIvcHJvY01nci9w cm9jTWdyUG9zaXguYyAgICAgICAgICAgICAgICAgICAgIHwgIDggKysrKy0tLS0KKyAuLi4vbGli L3Byb2NNZ3IvcHJvY01nclNvbGFyaXMuYyAgICAgICAgICAgICAgICAgICB8ICAyICstCisgLi4u L2xpYi9ycGNDaGFubmVsL2dsaWJfc3R1YnMuYyAgICAgICAgICAgICAgICAgICAgfCAgMyArKysK KyBvcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvdXNlci91dGlsLmMgICAgICB8ICAy ICstCisgLi4uL2xpYmd1ZXN0U3RvcmVDbGllbnQvZ3Vlc3RTdG9yZUNsaWVudExpYi5jICAgICAg fCAgNCArKy0tCisgb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGlidm10b29scy9pMThu LmMgICAgfCAgNCArKy0tCisgLi4uL21vZHVsZXMvc29sYXJpcy92bWhnZnMvdm5vZGUuYyAgICAg ICAgICAgICAgICAgfCAgMiArLQorIC4uLi9jb21wb25lbnRNZ3IvY29tcG9uZW50TWdySW5zdGFs bEFjdGlvbi5jICAgICAgIHwgIDQgKystLQorIC4uLi9zZXJ2aWNlcy9wbHVnaW5zL2RuZGNwL2Nv cHlQYXN0ZVVJWDExLmNwcCAgICAgIHwgIDIgKy0KKyAuLi4vc2VydmljZXMvcGx1Z2lucy9kbmRj cC9kbmQvZG5kWGRnLmMgICAgICAgICAgICB8ICAyICstCisgLi4uL3BsdWdpbnMvZG5kY3AvZG5k R3Vlc3QvZ3Vlc3RDb3B5UGFzdGVTcmMuY2MgICAgfCAgMiArLQorIC4uLi9wbHVnaW5zL2RuZGNw L2RuZEd1ZXN0L3ZtR3Vlc3REbkRTcmMuY2MgICAgICAgIHwgIDIgKy0KKyAuLi4vc2VydmljZXMv cGx1Z2lucy9kbmRjcC9kbmRVSVgxMS5jcHAgICAgICAgICAgICB8ICAyICstCisgLi4uL3NlcnZp Y2VzL3BsdWdpbnMvZ3Vlc3RJbmZvL3BlcmZNb25MaW51eC5jICAgICAgfCAgMiArLQorIC4uLi9z ZXJ2aWNlcy9wbHVnaW5zL3ZpeC92aXhUb29scy5jICAgICAgICAgICAgICAgIHwgIDggKysrKy0t LS0KKyAuLi4vdGVzdHMvdm1ycGNkYmcvZGVidWdDaGFubmVsLmMgICAgICAgICAgICAgICAgICB8 ICAyICstCisgb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvdmdhdXRoL2NvbW1vbi9pMThu LmMgfCAgMiArLQorIC4uLi92bWJsb2NrbW91bnRlci92bWJsb2NrbW91bnRlci5jICAgICAgICAg ICAgICAgIHwgIDIgKy0KKyBvcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS92bWhnZnMtZnVz ZS9jb25maWcuYyB8ICAyICstCisgb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUveGZlcmxv Z3MveGZlcmxvZ3MuYyAgfCAgOCArKysrLS0tLQorIDM0IGZpbGVzIGNoYW5nZWQsIDczIGluc2Vy dGlvbnMoKyksIDcwIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0x My4wLjUtMjQ5MTU2OTUvY29uZmlnL2x0bWFpbi5zaCBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0 OTE1Njk1L2NvbmZpZy9sdG1haW4uc2gKK2luZGV4IDJjMTUzMDkuLjA5ODk5ZjEgMTAwNzU1Cist LS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9jb25maWcvbHRtYWluLnNoCisrKysg Yi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9jb25maWcvbHRtYWluLnNoCitAQCAtNDQ3 NiwxMSArNDQ3NiwxMSBAQCBFT0YKKyAJICAgIGNhdCA8PCJFT0YiCisgICB7CisgICAgIGNoYXIq IHA7CistICAgIHdoaWxlICgocCA9IHN0cmNociAobmV3YXJnelswXSwgJ1xcJykpICE9IE5VTEwp CisrICAgIHdoaWxlICgocCA9IChjaGFyICopIHN0cmNociAobmV3YXJnelswXSwgJ1xcJykpICE9 IE5VTEwpCisgICAgICAgeworIAkqcCA9ICcvJzsKKyAgICAgICB9CistICAgIHdoaWxlICgocCA9 IHN0cmNociAobHRfYXJndl96ZXJvLCAnXFwnKSkgIT0gTlVMTCkKKysgICAgd2hpbGUgKChwID0g KGNoYXIgKikgc3RyY2hyIChsdF9hcmd2X3plcm8sICdcXCcpKSAhPSBOVUxMKQorICAgICAgIHsK KyAJKnAgPSAnLyc7CisgICAgICAgfQorZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41 LTI0OTE1Njk1L2xpYi9maWxlL2ZpbGVMb2NrUG9zaXguYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41 LTI0OTE1Njk1L2xpYi9maWxlL2ZpbGVMb2NrUG9zaXguYworaW5kZXggYTczNzNiNC4uMGVlY2M0 MiAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9maWxlL2Zp bGVMb2NrUG9zaXguYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL2Zp bGUvZmlsZUxvY2tQb3NpeC5jCitAQCAtMTcyLDcgKzE3Miw3IEBAIEZpbGVSZWFkU2xhc2hQcm9j KGNvbnN0IGNoYXIgKnByb2NQYXRoLCAgLy8gSU46CisgCisgICAgYnVmZmVyW2xlbl0gPSAnXDAn OworIAorLSAgIHAgPSBzdHJjaHIoYnVmZmVyLCAnXG4nKTsKKysgICBwID0gKGNoYXIgKikgc3Ry Y2hyKGJ1ZmZlciwgJ1xuJyk7CisgCisgICAgaWYgKHAgIT0gTlVMTCkgeworICAgICAgICpwID0g J1wwJzsKK0BAIC0yNDgsNyArMjQ4LDcgQEAgRmlsZUxvY2tQcm9jZXNzRGVzY3JpcHRvcihwaWRf dCBwaWQpICAvLyBJTjoKKyAKKyAgICAgICAqKHAgLSAxKSA9ICdcMCc7CisgCistICAgICAgcSA9 IHN0cnJjaHIocCArIDEsICcpJyk7CisrICAgICAgcSA9IChjaGFyICopIHN0cnJjaHIocCArIDEs ICcpJyk7CisgICAgICAgaWYgKHEgPT0gTlVMTCkgeworICAgICAgICAgIGdvdG8gYmFpbDsKKyAg ICAgICB9CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL2Zp bGUvZmlsZUxvY2tQcmltaXRpdmUuYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xp Yi9maWxlL2ZpbGVMb2NrUHJpbWl0aXZlLmMKK2luZGV4IDE5M2ZjMzYuLjc1NzFjZWQgMTAwNjQ0 CistLS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvZmlsZS9maWxlTG9ja1By aW1pdGl2ZS5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvZmlsZS9m aWxlTG9ja1ByaW1pdGl2ZS5jCitAQCAtMjM4LDcgKzIzOCw3IEBAIEZpbGVMb2NrUGFyc2VBcmdz KGNoYXIgKmFyZ3ZbXSwgICAgICAgLy8gSU46CisgCisgICAgd2hpbGUgKGFyZ0NvdW50KSB7Cisg ICAgICAgdWludDMyIGk7CistICAgICAgY2hhciAqcCA9IHN0cmNocihhcmd2W2FyZ1Bvc10sICc9 Jyk7CisrICAgICAgY2hhciAqcCA9IChjaGFyICopIHN0cmNocihhcmd2W2FyZ1Bvc10sICc9Jyk7 CisgCisgICAgICAgLyogVmFsaWRhdGUgdGhlICJuYW1lPXZhbHVlIiBmb3JtICovCisgICAgICAg aWYgKChwID09IE5VTEwpIHx8IChwID09IGFyZ3ZbYXJnUG9zXSkgfHwgKHBbMV0gPT0gJ1wwJykp IHsKK2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvZmlsZS9m aWxlUG9zaXguYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9maWxlL2ZpbGVQ b3NpeC5jCitpbmRleCAzYjUwMGViLi41ZDBmNzcyIDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29s cy0xMy4wLjUtMjQ5MTU2OTUvbGliL2ZpbGUvZmlsZVBvc2l4LmMKKysrKyBiL29wZW4tdm0tdG9v bHMtMTMuMC41LTI0OTE1Njk1L2xpYi9maWxlL2ZpbGVQb3NpeC5jCitAQCAtMTUxMCw3ICsxNTEw LDcgQEAgRmlsZV9HZXRWTUZTTW91bnRJbmZvKGNvbnN0IGNoYXIgKnBhdGhOYW1lLCAgICAvLyBJ TjoKKyAgICAgICAgKiBUaGlzIHdpbGwgY292ZXIgYm90aCBORlN2MyBhbmQgTkZTdjQuMS4KKyAg ICAgICAgKi8KKyAgICAgICBpZiAoc3RybmNtcChmc0F0dHJzLT5mc1R5cGUsIEZTX05GU19PTl9F U1gsIEZTX05GU19QUkVGSVhfTEVOKSA9PSAwKSB7CistICAgICAgICAgY2hhciAqc2VwID0gc3Ry Y2hyKGZzQXR0cnMtPmxvZ2ljYWxEZXZpY2UsICcgJyk7CisrICAgICAgICAgY2hhciAqc2VwID0g KGNoYXIgKikgc3RyY2hyKGZzQXR0cnMtPmxvZ2ljYWxEZXZpY2UsICcgJyk7CisgCisgICAgICAg ICAgaWYgKHNlcCkgeworICAgICAgICAgICAgICpzZXArKyA9IDA7CitAQCAtMjMzOSw3ICsyMzM5 LDcgQEAgRmlsZVBvc2l4TmVhcmVzdEV4aXN0aW5nQW5jZXN0b3IoY2hhciBjb25zdCAqcGF0aCkg IC8vIElOOiBGaWxlIHBhdGgKKyAgICAgICAgICBicmVhazsKKyAgICAgICB9CisgCistICAgICAg cHRyID0gc3RycmNocihyZXN1bHQsIERJUlNFUEMpOworKyAgICAgIHB0ciA9IChjaGFyICopIHN0 cnJjaHIocmVzdWx0LCBESVJTRVBDKTsKKyAgICAgICBpZiAocHRyID09IE5VTEwpIHsKKyAgICAg ICAgICBwdHIgPSByZXN1bHQ7CisgICAgICAgfQorZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMt MTMuMC41LTI0OTE1Njk1L2xpYi9maWxlL2ZpbGVTdGFuZEFsb25lLmMgYi9vcGVuLXZtLXRvb2xz LTEzLjAuNS0yNDkxNTY5NS9saWIvZmlsZS9maWxlU3RhbmRBbG9uZS5jCitpbmRleCA2ZDNjYmEy Li4xZmE0YWI2IDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGli L2ZpbGUvZmlsZVN0YW5kQWxvbmUuYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2 OTUvbGliL2ZpbGUvZmlsZVN0YW5kQWxvbmUuYworQEAgLTcxNSw5ICs3MTUsOSBAQCBGaWxlX1Jl cGxhY2VFeHRlbnNpb24oY29uc3QgY2hhciAqcGF0aE5hbWUsICAgICAgLy8gSU46CisgCisgICAg cCA9IEZpbGVGaW5kTGFzdERpcnNlcChyZXN1bHQsIHBhdGhOYW1lTGVuKTsKKyAgICBpZiAocCA9 PSBOVUxMKSB7CistICAgICAgIHAgPSBzdHJyY2hyKHJlc3VsdCwgJy4nKTsKKysgICAgICAgcCA9 IChjaGFyICopIHN0cnJjaHIocmVzdWx0LCAnLicpOworICAgIH0gZWxzZSB7CistICAgICAgIHAg PSBzdHJyY2hyKHAsICcuJyk7CisrICAgICAgIHAgPSAoY2hhciAqKSBzdHJyY2hyKHAsICcuJyk7 CisgICAgfQorIAorICAgIGlmIChwID09IE5VTEwpIHsKK0BAIC03OTAsOSArNzkwLDkgQEAgRmls ZV9SZW1vdmVFeHRlbnNpb24oY29uc3QgY2hhciAqcGF0aE5hbWUpICAvLyBJTjoKKyAKKyAgICBw ID0gRmlsZUZpbmRMYXN0RGlyc2VwKHJlc3VsdCwgc3RybGVuKHBhdGhOYW1lKSk7CisgICAgaWYg KHAgPT0gTlVMTCkgeworLSAgICAgICBwID0gc3RycmNocihyZXN1bHQsICcuJyk7CisrICAgICAg IHAgPSAoY2hhciAqKSBzdHJyY2hyKHJlc3VsdCwgJy4nKTsKKyAgICB9IGVsc2UgeworLSAgICAg ICBwID0gc3RycmNocihwLCAnLicpOworKyAgICAgICBwID0gKGNoYXIgKikgc3RycmNocihwLCAn LicpOworICAgIH0KKyAKKyAgICBBU1NFUlQocCAhPSBOVUxMKTsKK2RpZmYgLS1naXQgYS9vcGVu LXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvZ2xpYlV0aWxzL2ZpbGVMb2dnZXIuYyBiL29w ZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9nbGliVXRpbHMvZmlsZUxvZ2dlci5jCitp bmRleCBmMWIwZGM3Li41OTYwNWJiIDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUt MjQ5MTU2OTUvbGliL2dsaWJVdGlscy9maWxlTG9nZ2VyLmMKKysrKyBiL29wZW4tdm0tdG9vbHMt MTMuMC41LTI0OTE1Njk1L2xpYi9nbGliVXRpbHMvZmlsZUxvZ2dlci5jCitAQCAtMTY3LDcgKzE2 Nyw3IEBAIEZpbGVMb2dnZXJHZXRQYXRoKEZpbGVMb2dnZXIgKmRhdGEsCisgICAgZm9yIChpID0g MDsgaSA8IEdfTl9FTEVNRU5UUyh2YXJzKTsgaSArPSAyKSB7CisgICAgICAgY2hhciAqbGFzdCA9 IGxvZ3BhdGg7CisgICAgICAgY2hhciAqc3RhcnQ7CistICAgICAgd2hpbGUgKChzdGFydCA9IHN0 cnN0cihsYXN0LCB2YXJzW2ldKSkgIT0gTlVMTCkgeworKyAgICAgIHdoaWxlICgoc3RhcnQgPSAo Y2hhciAqKSBzdHJzdHIobGFzdCwgdmFyc1tpXSkpICE9IE5VTEwpIHsKKyAgICAgICAgICBnY2hh ciAqdG1wOworICAgICAgICAgIGNoYXIgKmVuZCA9IHN0YXJ0ICsgc3RybGVuKHZhcnNbaV0pOwor ICAgICAgICAgIHNpemVfdCBvZmZzZXQgPSAoc3RhcnQgLSBsYXN0KSArIHN0cmxlbih2YXJzW2kr MV0pOworQEAgLTE5MiwxMSArMTkyLDExIEBAIEZpbGVMb2dnZXJHZXRQYXRoKEZpbGVMb2dnZXIg KmRhdGEsCisgICAgICogYmFja2luZyB1cCBvbGQgbG9nIGZpbGVzLgorICAgICAqLworICAgIGlm IChpbmRleCAhPSAwICYmICFoYXNJbmRleCkgeworLSAgICAgIGNoYXIgKnNlcCA9IHN0cnJjaHIo bG9ncGF0aCwgJy4nKTsKKy0gICAgICBjaGFyICpwYXRoc2VwID0gc3RycmNocihsb2dwYXRoLCAn LycpOworKyAgICAgIGNoYXIgKnNlcCA9IChjaGFyICopIHN0cnJjaHIobG9ncGF0aCwgJy4nKTsK KysgICAgICBjaGFyICpwYXRoc2VwID0gKGNoYXIgKikgc3RycmNocihsb2dwYXRoLCAnLycpOwor IAorICAgICAgIGlmIChwYXRoc2VwID09IE5VTEwpIHsKKy0gICAgICAgICBwYXRoc2VwID0gc3Ry cmNocihsb2dwYXRoLCAnXFwnKTsKKysgICAgICAgICBwYXRoc2VwID0gKGNoYXIgKikgc3RycmNo cihsb2dwYXRoLCAnXFwnKTsKKyAgICAgICB9CisgCisgICAgICAgaWYgKHNlcCAhPSBOVUxMICYm IHNlcCA+IHBhdGhzZXApIHsKK2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkx NTY5NS9saWIvaGdmcy9oZ2ZzRXNjYXBlLmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5 NS9saWIvaGdmcy9oZ2ZzRXNjYXBlLmMKK2luZGV4IGM0ZDM5YjEuLmNlNDc1ZDkgMTAwNjQ0Cist LS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvaGdmcy9oZ2ZzRXNjYXBlLmMK KysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9oZ2ZzL2hnZnNFc2NhcGUu YworQEAgLTE5OCw3ICsxOTgsNyBAQCBIZ2ZzQWRkRXNjYXBlQ2hhcmFjdGVyKGNoYXIgY29uc3Qg KiBidWZJbiwgICAgICAvLyBJTjogaW5wdXQgbmFtZQorICAgICAgIGlmIChvdXRwdXRTcGFjZSA8 IDIpIHsKKyAgICAgICAgICByZXR1cm4gRkFMU0U7CisgICAgICAgfQorLSAgICAgIGlsbGVnYWwg PSBzdHJjaHIoSEdGU19JTExFR0FMX0NIQVJTLCBidWZJbltlc2NhcGVDb250ZXh0LT5wcm9jZXNz ZWRPZmZzZXRdKTsKKysgICAgICBpbGxlZ2FsID0gKGNoYXIgKikgc3RyY2hyKEhHRlNfSUxMRUdB TF9DSEFSUywgYnVmSW5bZXNjYXBlQ29udGV4dC0+cHJvY2Vzc2VkT2Zmc2V0XSk7CisgICAgICAg ZXNjYXBlQ29udGV4dC0+cHJvY2Vzc2VkT2Zmc2V0Kys7ICAvLyBTa2lwIGlsbGVnYWwgaW5wdXQg Y2hhcmFjdGVyCisgICAgICAgQVNTRVJUKGlsbGVnYWwgIT0gTlVMTCk7CisgICAgICAgZXNjYXBl Q29udGV4dC0+b3V0cHV0QnVmZmVyW2VzY2FwZUNvbnRleHQtPm91dHB1dE9mZnNldF0gPQorQEAg LTU4MywxMiArNTgzLDEyIEBAIEhnZnNJc0VzY2FwZVNlcXVlbmNlKGNoYXIgY29uc3QgKmJ1Zklu LCAgIC8vIElOOiBpbnB1dCBuYW1lCisgICAgICAgICAgaWYgKGJ1ZkluW29mZnNldCAtIDJdID09 IEhHRlNfRVNDQVBFX1NVQlNUSVRVRV9DSEFSKSB7CisgICAgICAgICAgICAgcmV0dXJuIFRSVUU7 CisgICAgICAgICAgfQorLSAgICAgICAgIHN1YnN0aXR1dGUgPSBzdHJjaHIoSEdGU19TVUJTVElU VVRFX0NIQVJTLCBidWZJbltvZmZzZXQgLSAyXSk7CisrICAgICAgICAgc3Vic3RpdHV0ZSA9IChj aGFyICopIHN0cmNocihIR0ZTX1NVQlNUSVRVVEVfQ0hBUlMsIGJ1ZkluW29mZnNldCAtIDJdKTsK KyAgICAgICAgICBpZiAoc3Vic3RpdHV0ZSAhPSBOVUxMKSB7CisgICAgICAgICAgICAgcmV0dXJu IFRSVUU7CisgICAgICAgICAgfQorICAgICAgIH0KKy0gICAgICBzdWJzdGl0dXRlID0gc3RyY2hy KEhHRlNfU1VCU1RJVFVURV9DSEFSUywgYnVmSW5bb2Zmc2V0IC0gMV0pOworKyAgICAgIHN1YnN0 aXR1dGUgPSAoY2hhciAqKSBzdHJjaHIoSEdGU19TVUJTVElUVVRFX0NIQVJTLCBidWZJbltvZmZz ZXQgLSAxXSk7CisgICAgICAgaWYgKHN1YnN0aXR1dGUgIT0gTlVMTCkgeworICAgICAgICAgIHJl dHVybiBUUlVFOworICAgICAgIH0KK0BAIC04ODIsMTIgKzg4MiwxMiBAQCBIZ2ZzRXNjYXBlVW5k b0NvbXBvbmVudChjaGFyICAgKmJ1ZkluLCAgICAgICAgICAgICAvLyBJTjogQ2hhcmFjdGVycyB0 byBiZSB1bmVzYworIAorICAgIGN1ck91dEJ1ZmZlciA9IGJ1ZkluOworICAgIHNpemVJbiA9IHN0 cmxlbihjdXJPdXRCdWZmZXIpOworLSAgIGVzY2FwZVBvaW50ZXIgPSBzdHJjaHIoY3VyT3V0QnVm ZmVyLCBIR0ZTX0VTQ0FQRV9DSEFSKTsKKysgICBlc2NhcGVQb2ludGVyID0gKGNoYXIgKikgc3Ry Y2hyKGN1ck91dEJ1ZmZlciwgSEdGU19FU0NBUEVfQ0hBUik7CisgICAgd2hpbGUgKGVzY2FwZVBv aW50ZXIgIT0gTlVMTCkgeworICAgICAgIHNpemVfdCBvZmZzZXQgPSBlc2NhcGVQb2ludGVyIC0g YnVmSW47CisgCisgICAgICAgaWYgKEhnZnNJc0VzY2FwZVNlcXVlbmNlKGJ1ZkluLCBvZmZzZXQs IHNpemVJbikpIHsKKy0gICAgICAgICBjaGFyKiBzdWJzdGl0dXRlID0gc3RyY2hyKEhHRlNfU1VC U1RJVFVURV9DSEFSUywgYnVmSW5bb2Zmc2V0IC0gMV0pOworKyAgICAgICAgIGNoYXIqIHN1YnN0 aXR1dGUgPSAoY2hhciAqKSBzdHJjaHIoSEdGU19TVUJTVElUVVRFX0NIQVJTLCBidWZJbltvZmZz ZXQgLSAxXSk7CisgICAgICAgICAgaWYgKHN1YnN0aXR1dGUgIT0gTlVMTCkgeworICAgICAgICAg ICAgIGJ1ZkluW29mZnNldCAtIDFdID0gSEdGU19JTExFR0FMX0NIQVJTW3N1YnN0aXR1dGUgLSBI R0ZTX1NVQlNUSVRVVEVfQ0hBUlNdOworICAgICAgICAgIH0gZWxzZSBpZiAoYnVmSW5bb2Zmc2V0 IC0gMV0gPT0gSEdGU19FU0NBUEVfU1VCU1RJVFVFX0NIQVIpIHsKK0BAIC04OTcsMTIgKzg5Nywx MiBAQCBIZ2ZzRXNjYXBlVW5kb0NvbXBvbmVudChjaGFyICAgKmJ1ZkluLCAgICAgICAgICAgICAv LyBJTjogQ2hhcmFjdGVycyB0byBiZSB1bmVzYworICAgICAgICAgICgqdW5wcm9jZXNzZWRMZW5n dGgpLS07CisgICAgICAgICAgc2l6ZUluLS07CisgICAgICAgICAgaWYgKHNpemVJbiA+IDApIHsK Ky0gICAgICAgICAgICBlc2NhcGVQb2ludGVyID0gc3RyY2hyKGVzY2FwZVBvaW50ZXIsIEhHRlNf RVNDQVBFX0NIQVIpOworKyAgICAgICAgICAgIGVzY2FwZVBvaW50ZXIgPSAoY2hhciAqKSBzdHJj aHIoZXNjYXBlUG9pbnRlciwgSEdGU19FU0NBUEVfQ0hBUik7CisgICAgICAgICAgfSBlbHNlIHsK KyAgICAgICAgICAgICBlc2NhcGVQb2ludGVyID0gTlVMTDsKKyAgICAgICAgICB9CisgICAgICAg fSBlbHNlIHsKKy0gICAgICAgICBlc2NhcGVQb2ludGVyID0gc3RyY2hyKGVzY2FwZVBvaW50ZXIg KyAxLCBIR0ZTX0VTQ0FQRV9DSEFSKTsKKysgICAgICAgICBlc2NhcGVQb2ludGVyID0gKGNoYXIg Kikgc3RyY2hyKGVzY2FwZVBvaW50ZXIgKyAxLCBIR0ZTX0VTQ0FQRV9DSEFSKTsKKyAgICAgICB9 CisgICAgfQorICAgIEFTU0VSVCgoKnVucHJvY2Vzc2VkTGVuZ3RoKSA+IHNpemVJbik7CitkaWZm IC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL2hnZnNTZXJ2ZXIvaGdm c1NlcnZlckxpbnV4LmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvaGdmc1Nl cnZlci9oZ2ZzU2VydmVyTGludXguYworaW5kZXggNGEwYmM5My4uYWM2MmMxYiAxMDA2NDQKKy0t LSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9oZ2ZzU2VydmVyL2hnZnNTZXJ2 ZXJMaW51eC5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvaGdmc1Nl cnZlci9oZ2ZzU2VydmVyTGludXguYworQEAgLTEzNjksNyArMTM2OSw3IEBAIEhnZnNHZXRIaWRk ZW5BdHRyKGNoYXIgY29uc3QgKmZpbGVOYW1lLCAgICAgICAgIC8vIElOOiAgSW5wdXQgZmlsZW5h bWUKKyAgICBBU1NFUlQoZmlsZU5hbWUpOworICAgIEFTU0VSVChhdHRyKTsKKyAKKy0gICBiYXNl TmFtZSA9IHN0cnJjaHIoZmlsZU5hbWUsIERJUlNFUEMpOworKyAgIGJhc2VOYW1lID0gKGNoYXIg Kikgc3RycmNocihmaWxlTmFtZSwgRElSU0VQQyk7CisgCisgICAgaWYgKChiYXNlTmFtZSAhPSBO VUxMKSAmJgorICAgICAgICAoYmFzZU5hbWVbMV0gPT0gJy4nKSAmJgorQEAgLTE2NDcsNyArMTY0 Nyw3IEBAIEhnZnNDYXNlSW5zZW5zaXRpdmVMb29rdXAoY29uc3QgY2hhciAqc2hhcmVQYXRoLCAg ICAgICAgICAgLy8gSU4KKyAKKyAgICB3aGlsZSAoVFJVRSkgeworICAgICAgIC8qIEdldCB0aGUg bmV4dCBjb21wb25lbnQuICovCistICAgICAgbmV4dENvbXBvbmVudCA9IHN0cmNocihjdXJyZW50 Q29tcG9uZW50LCBESVJTRVBDKTsKKysgICAgICBuZXh0Q29tcG9uZW50ID0gKGNoYXIgKikgc3Ry Y2hyKGN1cnJlbnRDb21wb25lbnQsIERJUlNFUEMpOworICAgICAgIGlmIChuZXh0Q29tcG9uZW50 ICE9IE5VTEwpIHsKKyAgICAgICAgICAqbmV4dENvbXBvbmVudCA9ICdcMCc7CisgICAgICAgfQor ZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9taXNjL2NvZGVz ZXQuYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9taXNjL2NvZGVzZXQuYwor aW5kZXggMjUyMjFmNi4uYWZjNjE1YiAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41 LTI0OTE1Njk1L2xpYi9taXNjL2NvZGVzZXQuYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUt MjQ5MTU2OTUvbGliL21pc2MvY29kZXNldC5jCitAQCAtNTg5LDcgKzU4OSw3IEBAIENvZGVTZXRf SW5pdChjb25zdCBjaGFyICppY3VEYXRhRGlyKSAvLyBJTjogSUNVIGRhdGEgZmlsZSBsb2NhdGlv biBpbiBDdXJyZW50IGNvCisgICAgICAgICovCisgICAgICAgbW9kUGF0aCA9IENvZGVTZXRHZXRN b2R1bGVQYXRoKEhHTVBfUFJJVklMRUdFKTsKKyAgICAgICBpZiAobW9kUGF0aCkgeworLSAgICAg ICAgIGxhc3RTbGFzaCA9IHN0cnJjaHIobW9kUGF0aCwgRElSU0VQQyk7CisrICAgICAgICAgbGFz dFNsYXNoID0gKGNoYXIgKikgc3RycmNocihtb2RQYXRoLCBESVJTRVBDKTsKKyAgICAgICAgICBp ZiAobGFzdFNsYXNoKSB7CisgICAgICAgICAgICAgKmxhc3RTbGFzaCA9ICdcMCc7CisgCitkaWZm IC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL21pc2MvY29kZXNldE9s ZC5jIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL21pc2MvY29kZXNldE9sZC5j CitpbmRleCBmYjRmMTk0Li5lZDg2ZDAzIDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4w LjUtMjQ5MTU2OTUvbGliL21pc2MvY29kZXNldE9sZC5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEz LjAuNS0yNDkxNTY5NS9saWIvbWlzYy9jb2Rlc2V0T2xkLmMKK0BAIC03NTUsNyArNzU1LDcgQEAg Q29kZVNldE9sZF9HZXRDdXJyZW50Q29kZVNldCh2b2lkKQorICAgICAgICAgIGNoYXIgKnA7Cisg CisgICAgICAgICAgZ0ZpbGVuYW1lRW5jb2RpbmcgPSBVdGlsX1NhZmVTdHJkdXAoZ0ZpbGVuYW1l RW5jb2RpbmcpOworLSAgICAgICAgIHAgPSBzdHJjaHIoZ0ZpbGVuYW1lRW5jb2RpbmcsICcsJyk7 CisrICAgICAgICAgcCA9IChjaGFyICopIHN0cmNocihnRmlsZW5hbWVFbmNvZGluZywgJywnKTsK KyAKKyAgICAgICAgICBpZiAocCAhPSBOVUxMKSB7CisgICAgICAgICAgICAgKnAgPSAnXDAnOwor ZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9taXNjL2hvc3Rp bmZvUG9zaXguYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9taXNjL2hvc3Rp bmZvUG9zaXguYworaW5kZXggZGM5OWQ4My4uMjJkYmI0OCAxMDA2NDQKKy0tLSBhL29wZW4tdm0t dG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9taXNjL2hvc3RpbmZvUG9zaXguYworKysrIGIvb3Bl bi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL21pc2MvaG9zdGluZm9Qb3NpeC5jCitAQCAt MTYyMCw3ICsxNjIwLDcgQEAgSG9zdGluZm9SZWFkRGlzdHJvRmlsZShCb29sIG9zUmVsZWFzZVJ1 bGVzLCAgIC8vIElOOiBvc1JlbGVhc2UgcnVsZXMKKyAKKyAgICAgICAgICAgICAgaWYgKGxpbmVC dWZbbGVuXSA9PSAnIicpIHsKKyAgICAgICAgICAgICAgICAgZGF0YSA9ICZsaW5lQnVmW2xlbiAr IDFdOworLSAgICAgICAgICAgICAgICBwID0gc3RycmNocihkYXRhLCAnIicpOworKyAgICAgICAg ICAgICAgICBwID0gKGNoYXIgKikgc3RycmNocihkYXRhLCAnIicpOworIAorICAgICAgICAgICAg ICAgICBpZiAocCA9PSBOVUxMKSB7CisgICAgICAgICAgICAgICAgICAgIFdhcm5pbmcoIiVzOiBJ bnZhbGlkIG9zLXJlbGVhc2UgZmlsZS4iLCBfX0ZVTkNUSU9OX18pOworQEAgLTE2MjksNyArMTYy OSw3IEBAIEhvc3RpbmZvUmVhZERpc3Ryb0ZpbGUoQm9vbCBvc1JlbGVhc2VSdWxlcywgICAvLyBJ Tjogb3NSZWxlYXNlIHJ1bGVzCisgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAg ICAgIGRhdGEgPSAmbGluZUJ1ZltsZW5dOworIAorLSAgICAgICAgICAgICAgICBwID0gc3RyY2hy KGRhdGEsICdcbicpOworKyAgICAgICAgICAgICAgICBwID0gKGNoYXIgKikgc3RyY2hyKGRhdGEs ICdcbicpOworIAorICAgICAgICAgICAgICAgICBpZiAocCA9PSBOVUxMKSB7CisgICAgICAgICAg ICAgICAgICAgIFdhcm5pbmcoIiVzOiBvcy1yZWxlYXNlIGZpbGUgbGluZSB0b28gbG9uZy4iLAor QEAgLTE4OTQsNyArMTg5NCw3IEBAIEhvc3RpbmZvTHNiUmVtb3ZlUXVvdGVzKGNoYXIgKmxzYk91 dHB1dCkgIC8vIElOL09VVDoKKyAgICBBU1NFUlQobHNiU3RhcnQgIT0gTlVMTCk7CisgCisgICAg aWYgKGxzYlN0YXJ0WzBdID09ICciJykgeworLSAgICAgIGNoYXIgKnF1b3RlRW5kID0gc3RyY2hy KCsrbHNiU3RhcnQsICciJyk7CisrICAgICAgY2hhciAqcXVvdGVFbmQgPSAoY2hhciAqKSBzdHJj aHIoKytsc2JTdGFydCwgJyInKTsKKyAKKyAgICAgICBpZiAocXVvdGVFbmQgIT0gTlVMTCkgewor ICAgICAgICAgICpxdW90ZUVuZCA9ICdcMCc7CitAQCAtMzQ3Miw4ICszNDcyLDggQEAgSG9zdGlu Zm9HZXRDcHVJbmZvKGludCBuQ3B1LCAgICAgICAgIC8vIElOOgorICAgICAgICAgICBTdGRJT19S ZWFkTmV4dExpbmUoZiwgJmxpbmUsIDAsIE5VTEwpID09IFN0ZElPX1N1Y2Nlc3MpIHsKKyAgICAg ICBjaGFyICpzOworIAorLSAgICAgIGlmICgocyA9IHN0cnN0cihsaW5lLCBuYW1lKSkgJiYKKy0g ICAgICAgICAgKHMgPSBzdHJjaHIocywgJzonKSkpIHsKKysgICAgICBpZiAoKHMgPSAoY2hhciAq KSBzdHJzdHIobGluZSwgbmFtZSkpICYmCisrICAgICAgICAgIChzID0gKGNoYXIgKikgc3RyY2hy KHMsICc6JykpKSB7CisgICAgICAgICAgY2hhciAqZTsKKyAKKyAgICAgICAgICBzKys7CitAQCAt NDAzOSw3ICs0MDM5LDcgQEAgSG9zdGluZm9GaW5kRW50cnkoY2hhciAqYnVmZmVyLCAgICAgICAg IC8vIElOOiBCdWZmZXIKKyAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzdHJpbmcsICAg Ly8gSU46IFN0cmluZyBzb3VnaHQKKyAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKnZh bHVlKSAgLy8gT1VUOiBWYWx1ZQorIHsKKy0gICBjaGFyICpwID0gc3Ryc3RyKGJ1ZmZlciwgc3Ry aW5nKTsKKysgICBjaGFyICpwID0gKGNoYXIgKikgc3Ryc3RyKGJ1ZmZlciwgc3RyaW5nKTsKKyAg ICB1bnNpZ25lZCBpbnQgdmFsOworIAorICAgIGlmIChwID09IE5VTEwpIHsKK0BAIC00NTcwLDcg KzQ1NzAsNyBAQCBIb3N0aW5mb19HZXRMaWJyYXJ5UGF0aCh2b2lkICphZGRyKSAgLy8gSU4KKyAg ICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICB9CisgCistICAgICAgICAgc2VwID0gc3Ry Y2hyKGVudHJ5LT5kX25hbWUsICctJyk7CisrICAgICAgICAgc2VwID0gKGNoYXIgKikgc3RyY2hy KGVudHJ5LT5kX25hbWUsICctJyk7CisgICAgICAgICAgaWYgKHNlcCA9PSBOVUxMKSB7CisgICAg ICAgICAgICAgY29udGludWU7IC8vIFRoZSBmaWxlIG5hbWUgZG9lcyBOT1QgaW4gYDEyMzRhYmNk LWFiY2QxMjM0YCBmb3JtYXQKKyAgICAgICAgICB9CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29s cy0xMy4wLjUtMjQ5MTU2OTUvbGliL21pc2MvbWFjaGluZUlELmMgYi9vcGVuLXZtLXRvb2xzLTEz LjAuNS0yNDkxNTY5NS9saWIvbWlzYy9tYWNoaW5lSUQuYworaW5kZXggN2MyOWExYy4uMWUwNGE5 YyAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9taXNjL21h Y2hpbmVJRC5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvbWlzYy9t YWNoaW5lSUQuYworQEAgLTg4LDcgKzg4LDcgQEAgRmluZFdpbmRvd3NBZGFwdGVyKElQX0FEQVBU RVJfSU5GTyAqaGVhZCwgIC8vIElOOgorICAgICAgICAgICAgICAoKmFkYXB0ZXJJbmZvLT5EZXNj cmlwdGlvbiA9PSAnXDAnKSkgeworICAgICAgICAgICAgIHRha2VJdCA9IFRSVUU7CisgICAgICAg ICAgfSBlbHNlIHsKKy0gICAgICAgICAgICBjaGFyICpwID0gc3Ryc3RyKGFkYXB0ZXJJbmZvLT5E ZXNjcmlwdGlvbiwgcGF0dGVybik7CisrICAgICAgICAgICAgY2hhciAqcCA9IChjaGFyICopIHN0 cnN0cihhZGFwdGVySW5mby0+RGVzY3JpcHRpb24sIHBhdHRlcm4pOworIAorICAgICAgICAgICAg IGlmICgoKHAgIT0gTlVMTCkgJiYgZmluZFBhdHRlcm4pIHx8CisgICAgICAgICAgICAgICAgICgo cCA9PSBOVUxMKSAmJiAhZmluZFBhdHRlcm4pKSB7CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29s cy0xMy4wLjUtMjQ5MTU2OTUvbGliL21pc2Mvc3RydXRpbC5jIGIvb3Blbi12bS10b29scy0xMy4w LjUtMjQ5MTU2OTUvbGliL21pc2Mvc3RydXRpbC5jCitpbmRleCA0ZmM2NTAyLi44ZDY0ZDI3IDEw MDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL21pc2Mvc3RydXRp bC5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvbWlzYy9zdHJ1dGls LmMKK0BAIC0xNDY3LDcgKzE0NjcsNyBAQCBTdHJVdGlsX1JlcGxhY2VBbGwoY29uc3QgY2hhciAq b3JpZywgLy8gSU4KKyAgICAgbGVuV2l0aCA9IHN0cmxlbih3aXRoKTsKKyAKKyAgICAgY3VycmVu dCA9IG9yaWc7CistICAgIHdoaWxlICgodG1wID0gc3Ryc3RyKGN1cnJlbnQsIHdoYXQpKSAhPSBO VUxMKSB7CisrICAgIHdoaWxlICgodG1wID0gKGNoYXIgKikgc3Ryc3RyKGN1cnJlbnQsIHdoYXQp KSAhPSBOVUxMKSB7CisgICAgICAgIGN1cnJlbnQgPSB0bXAgKyBsZW5XaGF0OworICAgICAgICAr K29jY3VycmVuY2VzOworICAgICB9CitAQCAtMTYyMCw3ICsxNjIwLDcgQEAgU3RyVXRpbF9HZXRO ZXh0SXRlbShjaGFyICoqbGlzdCwgLy8gSU4vT1VUOgorICAgICAgIHJldHVybiBOVUxMOworICAg IH0KKyAKKy0gICBmb3VuZERlbGltID0gc3RyY2hyKCpsaXN0LCBkZWxpbSk7CisrICAgZm91bmRE ZWxpbSA9IChjaGFyICopIHN0cmNocigqbGlzdCwgZGVsaW0pOworICAgIGlmIChmb3VuZERlbGlt ICE9IE5VTEwpIHsKKyAgICAgICBmb3VuZERlbGltWzBdID0gJ1wwJzsKKyAgICAgICAqbGlzdCA9 IGZvdW5kRGVsaW0gKyAxOworQEAgLTE2NjAsNyArMTY2MCw3IEBAIFN0clV0aWxfR2V0TGFzdEl0 ZW0oY2hhciAqKmxpc3QsIC8vIElOL09VVDoKKyAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9Cisg CistICAgZm91bmREZWxpbSA9IHN0cnJjaHIoKmxpc3QsIGRlbGltKTsKKysgICBmb3VuZERlbGlt ID0gKGNoYXIgKikgc3RycmNocigqbGlzdCwgZGVsaW0pOworICAgIGlmIChmb3VuZERlbGltICE9 IE5VTEwpIHsKKyAgICAgICBmb3VuZERlbGltWzBdID0gJ1wwJzsKKyAgICAgICB0b2tlbiA9IGZv dW5kRGVsaW0gKyAxOworQEAgLTE3MDUsNyArMTcwNSw3IEBAIFN0clV0aWxIYXNMaXN0SXRlbShj aGFyIGNvbnN0ICpsaXN0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJTjoKKyAg ICBkbyB7CisgICAgICAgaW50IHRva2VuTGVuOworIAorLSAgICAgIGZvdW5kRGVsaW0gPSBzdHJj aHIobGlzdCwgZGVsaW0pOworKyAgICAgIGZvdW5kRGVsaW0gPSAoY2hhciAqKSBzdHJjaHIobGlz dCwgZGVsaW0pOworICAgICAgIGlmIChmb3VuZERlbGltID09IE5VTEwpIHsgLy8gZWl0aGVyIHNp bmdsZSBvciBsYXN0IGVsZW1lbnQKKyAgICAgICAgICB0b2tlbkxlbiA9IHN0cmxlbihsaXN0KTsK KyAgICAgICB9IGVsc2UgeyAvLyAhIGxhc3QgZWxlbWVudAorZGlmZiAtLWdpdCBhL29wZW4tdm0t dG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9uaWNJbmZvL25pY0luZm9Qb3NpeC5jIGIvb3Blbi12 bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL25pY0luZm8vbmljSW5mb1Bvc2l4LmMKK2luZGV4 IDAxMzVlNmEuLmFhYWY3NWEgMTAwNjQ0CistLS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkx NTY5NS9saWIvbmljSW5mby9uaWNJbmZvUG9zaXguYworKysrIGIvb3Blbi12bS10b29scy0xMy4w LjUtMjQ5MTU2OTUvbGliL25pY0luZm8vbmljSW5mb1Bvc2l4LmMKK0BAIC0yNjYsNyArMjY2LDcg QEAgSXBFbnRyeU1hdGNoZXNEZXZpY2UoY29uc3QgY2hhciAqZGV2TmFtZSwKKyAgICBjaGFyICpw OworICAgIHNpemVfdCBuOworIAorLSAgIGlmICgocCA9IHN0cmNocihsYWJlbCwgJzonKSkgIT0g TlVMTCkgeworKyAgIGlmICgocCA9IChjaGFyICopIHN0cmNocihsYWJlbCwgJzonKSkgIT0gTlVM TCkgeworICAgICAgIG4gPSBwIC0gbGFiZWw7CisgICAgfSBlbHNlIHsKKyAgICAgICBuID0gc3Ry bGVuKGxhYmVsKTsKK2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9s aWIvcHJvY01nci9wcm9jTWdyUG9zaXguYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1 L2xpYi9wcm9jTWdyL3Byb2NNZ3JQb3NpeC5jCitpbmRleCA5NDk2ZTIxLi5mMTc0YzY0IDEwMDY0 NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3Byb2NNZ3IvcHJvY01n clBvc2l4LmMKKysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9wcm9jTWdy L3Byb2NNZ3JQb3NpeC5jCitAQCAtNjI2LDcgKzYyNiw3IEBAIFByb2NNZ3JfTGlzdFByb2Nlc3Nl cyh2b2lkKQorICAgICAgICAgICAgICAgICAgICAqICAgZ2RtLXNlc3Npb24td29ya2VyIFtwYW0v Z2RtLWF1dG9sb2dpbl0KKyAgICAgICAgICAgICAgICAgICAgKgorICAgICAgICAgICAgICAgICAg ICAqLworLSAgICAgICAgICAgICAgICAgIGNoYXIgKmNtZE5hbWVCZWdpbiA9IHN0cnJjaHIoY21k TGluZVRlbXAsICcvJyk7CisrICAgICAgICAgICAgICAgICAgY2hhciAqY21kTmFtZUJlZ2luID0g KGNoYXIgKikgc3RycmNocihjbWRMaW5lVGVtcCwgJy8nKTsKKyAgICAgICAgICAgICAgICAgICBp ZiAoTlVMTCAhPSBjbWROYW1lQmVnaW4gJiYgY21kTGluZVRlbXBbMF0gPT0gJy8nKSB7CisgICAg ICAgICAgICAgICAgICAgICAgLyoKKyAgICAgICAgICAgICAgICAgICAgICAgKiBTa2lwIG92ZXIg dGhlIGxhc3Qgc2VwYXJhdG9yLgorQEAgLTc2NCw3ICs3NjQsNyBAQCBQcm9jTWdyX0xpc3RQcm9j ZXNzZXModm9pZCkKKyAgICAgICAvKgorICAgICAgICAqIFNraXAgb3ZlciBpbml0aWFsIHByb2Nl c3MgaWQgYW5kIHByb2Nlc3MgbmFtZS4gICIxMjMgKGJhc2gpIFsuLi5dIi4KKyAgICAgICAgKi8K Ky0gICAgICBzdHJpbmdCZWdpbiA9IHN0cmNocihjbWRTdGF0VGVtcCwgJyknKSArIDI7CisrICAg ICAgc3RyaW5nQmVnaW4gPSAoY2hhciAqKSBzdHJjaHIoY21kU3RhdFRlbXAsICcpJykgKyAyOwor IAorICAgICAgIG51bWJlckZvdW5kID0gc3NjYW5mKHN0cmluZ0JlZ2luLCAiJWMgJWQgJWQgJWQg JWQgJWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlbHUgJWx1ICVsdSAlbHUgJWx1 ICVMdSAlTHUgJUx1ICVMdSAlbGQgJWxkICIKK0BAIC05OTAsNyArOTkwLDcgQEAgUHJvY01ncl9M aXN0UHJvY2Vzc2VzKHZvaWQpCisgICAgICAgICAgICAgICAgICogRmluZCB0aGUgbGFzdCBwYXRo IHNlcGFyYXRvciwgdG8gZ2V0IHRoZSBjbWQgbmFtZS4KKyAgICAgICAgICAgICAgICAgKiBJZiBu byBzZXBhcmF0b3IgaXMgZm91bmQsIHRoZW4gdXNlIHRoZSB3aG9sZSBuYW1lLgorICAgICAgICAg ICAgICAgICAqLworLSAgICAgICAgICAgICAgIGNtZE5hbWVCZWdpbiA9IHN0cnJjaHIoKmNtZExp bmVUZW1wLCAnLycpOworKyAgICAgICAgICAgICAgIGNtZE5hbWVCZWdpbiA9IChjaGFyICopIHN0 cnJjaHIoKmNtZExpbmVUZW1wLCAnLycpOworICAgICAgICAgICAgICAgIGlmIChOVUxMID09IGNt ZE5hbWVCZWdpbikgeworICAgICAgICAgICAgICAgICAgIGNtZE5hbWVCZWdpbiA9ICpjbWRMaW5l VGVtcDsKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworQEAgLTEyMTksNyArMTIxOSw3IEBAIFBy b2NNZ3JHZXRDb21tYW5kTGluZUFyZ3MobG9uZyBwaWQsICAgICAgICAgICAgICAgLy8gSU46ICBw cm9jZXNzIGlkCisgICAgICAgICAgICAgICogRmluZCB0aGUgbGFzdCBwYXRoIHNlcGFyYXRvciwg dG8gZ2V0IHRoZSBjbWQgbmFtZS4KKyAgICAgICAgICAgICAgKiBJZiBubyBzZXBhcmF0b3IgaXMg Zm91bmQsIHRoZW4gdXNlIHRoZSB3aG9sZSBuYW1lLgorICAgICAgICAgICAgICAqLworLSAgICAg ICAgICAgIGNtZE5hbWVCZWdpbiA9IHN0cnJjaHIoY21kTGluZVRlbXAsICcvJyk7CisrICAgICAg ICAgICAgY21kTmFtZUJlZ2luID0gKGNoYXIgKikgc3RycmNocihjbWRMaW5lVGVtcCwgJy8nKTsK KyAgICAgICAgICAgICBpZiAoTlVMTCA9PSBjbWROYW1lQmVnaW4pIHsKKyAgICAgICAgICAgICAg ICBjbWROYW1lQmVnaW4gPSBjbWRMaW5lVGVtcDsKKyAgICAgICAgICAgICB9IGVsc2UgeworZGlm ZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYi9wcm9jTWdyL3Byb2NN Z3JTb2xhcmlzLmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvcHJvY01nci9w cm9jTWdyU29sYXJpcy5jCitpbmRleCBlZGU1MmQ2Li44ZTAxNjA2IDEwMDY0NAorLS0tIGEvb3Bl bi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3Byb2NNZ3IvcHJvY01nclNvbGFyaXMuYwor KysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3Byb2NNZ3IvcHJvY01nclNv bGFyaXMuYworQEAgLTM1Nyw3ICszNTcsNyBAQCBFeHRyYWN0Q29tbWFuZExpbmVGcm9tQWRkcmVz c1NwYWNlRmlsZShwc2luZm9fdCAqcHJvY0luZm8sIC8vSU46IHBzaW5mbyBzdHJ1Y3QKKyAgICAg ICAgICAgICAgKiBGaW5kIHRoZSBsYXN0IHBhdGggc2VwYXJhdG9yLCB0byBnZXQgdGhlIGNtZCBu YW1lLgorICAgICAgICAgICAgICAqIElmIG5vIHNlcGFyYXRvciBpcyBmb3VuZCwgdGhlbiB1c2Ug dGhlIHdob2xlIG5hbWUuCisgICAgICAgICAgICAgICovCistICAgICAgICAgICAgY21kTmFtZUJl Z2luID0gc3RycmNocihidWYsICcvJyk7CisrICAgICAgICAgICAgY21kTmFtZUJlZ2luID0gKGNo YXIgKikgc3RycmNocihidWYsICcvJyk7CisgICAgICAgICAgICAgaWYgKE5VTEwgPT0gY21kTmFt ZUJlZ2luKSB7CisgICAgICAgICAgICAgICAgY21kTmFtZUJlZ2luID0gYnVmOworICAgICAgICAg ICAgIH0gZWxzZSB7CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUv bGliL3JwY0NoYW5uZWwvZ2xpYl9zdHVicy5jIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2 OTUvbGliL3JwY0NoYW5uZWwvZ2xpYl9zdHVicy5jCitpbmRleCBjMzJkZWIwLi5lZGIzZmM0IDEw MDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3JwY0NoYW5uZWwv Z2xpYl9zdHVicy5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvcnBj Q2hhbm5lbC9nbGliX3N0dWJzLmMKK0BAIC0zMiw2ICszMiw5IEBACisgI2lmICFkZWZpbmVkKFVT RV9SUENJX09OTFkpCisgI2Vycm9yICJUaGlzIGZpbGUgc2hvdWxkIGJlIGNvbXBpbGVkIGZvciBS UENJLW9ubHkgY2hhbm5lbCEiCisgI2VuZGlmCisrI2lmIGRlZmluZWQoZ19mcmVlKQorKyN1bmRl ZiBnX2ZyZWUKKysjZW5kaWYKKyAKKyB2b2lkICpnX21hbGxvYzAoc2l6ZV90IHMpIHsgcmV0dXJu IFV0aWxfU2FmZUNhbGxvYygxLCBzKTsgfQorIHZvaWQgKmdfbWFsbG9jMF9uKHNpemVfdCBuLCBz aXplX3QgcykgeyByZXR1cm4gVXRpbF9TYWZlQ2FsbG9jKG4sIHMpOyB9CitkaWZmIC0tZ2l0IGEv b3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3VzZXIvdXRpbC5jIGIvb3Blbi12bS10 b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3VzZXIvdXRpbC5jCitpbmRleCBiYmQyOWM1Li5kZDEw M2JhIDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliL3VzZXIv dXRpbC5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWIvdXNlci91dGls LmMKK0BAIC04NTcsNyArODU3LDcgQEAgVXRpbF9EZXJpdmVGaWxlTmFtZShjb25zdCBjaGFyICpz b3VyY2UsIC8vIElOOiBwYXRoIHRvIGRpY3QgZmlsZSAoaW5jbCBmaWxlbmFtZSkKKyAKKyAgICAv KiBzdHJpcCBvZmYgdGhlIGV4aXN0aW5nIGZpbGUgZXh0ZW5zaW9uLCBpZiBwcmVzZW50ICovCisg ICAgeworLSAgICAgIGNoYXIgKnAgPSBTdHJfU3RycmNocihiYXNlLCAnLicpOworKyAgICAgIGNo YXIgKnAgPSAoY2hhciAqKSBTdHJfU3RycmNocihiYXNlLCAnLicpOworICAgICAgIGlmIChwICE9 IE5VTEwpIHsKKyAJICpwID0gJ1wwJzsKKyAgICAgICB9CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10 b29scy0xMy4wLjUtMjQ5MTU2OTUvbGliZ3Vlc3RTdG9yZUNsaWVudC9ndWVzdFN0b3JlQ2xpZW50 TGliLmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9saWJndWVzdFN0b3JlQ2xpZW50 L2d1ZXN0U3RvcmVDbGllbnRMaWIuYworaW5kZXggOWY3NGU4NC4uZGMyNDhjOCAxMDA2NDQKKy0t LSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYmd1ZXN0U3RvcmVDbGllbnQvZ3Vl c3RTdG9yZUNsaWVudExpYi5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9s aWJndWVzdFN0b3JlQ2xpZW50L2d1ZXN0U3RvcmVDbGllbnRMaWIuYworQEAgLTczNSw3ICs3MzUs NyBAQCBHdWVzdFN0b3JlUmVjdkhUVFBSZXNwb25zZUhlYWRlcihDYWxsQ3R4ICpjdHgpICAvLyBJ TgorIAorICAgICAgIHRvdGFsQnl0ZXNSZWNlaXZlZCArPSBieXRlc1JlY2VpdmVkOworICAgICAg IGN0eC0+YnVmW3RvdGFsQnl0ZXNSZWNlaXZlZF0gPSAnXDAnOworLSAgICAgIGh0dHBIZWFkZXJF bmQgPSBzdHJzdHIoY3R4LT5idWYsIEhUVFBfSEVBREVSX0VORCk7CisrICAgICAgaHR0cEhlYWRl ckVuZCA9IChjaGFyICopIHN0cnN0cihjdHgtPmJ1ZiwgSFRUUF9IRUFERVJfRU5EKTsKKyAgICAg ICBpZiAoaHR0cEhlYWRlckVuZCAhPSBOVUxMKSB7CisgICAgICAgICAgKmh0dHBIZWFkZXJFbmQg PSAnXDAnOworICAgICAgICAgIGJyZWFrOworQEAgLTc3Niw3ICs3NzYsNyBAQCBHdWVzdFN0b3Jl UmVjdkhUVFBSZXNwb25zZUhlYWRlcihDYWxsQ3R4ICpjdHgpICAvLyBJTgorICAgICAgIHJldHVy biBHU0xJQkVSUl9TRVJWRVI7CisgICAgfQorIAorLSAgIGNvbnRlbnRMZW5ndGhIZWFkZXIgPSBz dHJzdHIoaHR0cFN0YXR1cyArIHN0cmxlbihodHRwU3RhdHVzKSArIDEsCisrICAgY29udGVudExl bmd0aEhlYWRlciA9IChjaGFyICopIHN0cnN0cihodHRwU3RhdHVzICsgc3RybGVuKGh0dHBTdGF0 dXMpICsgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENPTlRFTlRfTEVOR1RI X0hFQURFUik7CisgICAgaWYgKE5VTEwgPT0gY29udGVudExlbmd0aEhlYWRlcikgeworICAgICAg IExPR19FUlIoY3R4LCAiUHJvdG9jb2wgY29udGVudCBsZW5ndGggbm90IGZvdW5kLiIpOworZGlm ZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L2xpYnZtdG9vbHMvaTE4bi5j IGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvbGlidm10b29scy9pMThuLmMKK2luZGV4 IDMwODVmNzIuLmQ2YzhlYWUgMTAwNjQ0CistLS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkx NTY5NS9saWJ2bXRvb2xzL2kxOG4uYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2 OTUvbGlidm10b29scy9pMThuLmMKK0BAIC0yNDAsNyArMjQwLDcgQEAgTXNnR2V0VXNlckxhbmd1 YWdlKHZvaWQpCisgICAgICAgY2hhciAqZG90OworIAorICAgICAgIGxhbmcgPSBnX3N0cmR1cCh0 bXApOworLSAgICAgIGRvdCA9IHN0cmNocihsYW5nLCAnLicpOworKyAgICAgIGRvdCA9IChjaGFy ICopIHN0cmNocihsYW5nLCAnLicpOworICAgICAgIGlmIChkb3QgIT0gTlVMTCkgeworICAgICAg ICAgICpkb3QgPSAnXDAnOworICAgICAgIH0KK0BAIC02OTgsNyArNjk4LDcgQEAgVk1Ub29sc19C aW5kVGV4dERvbWFpbihjb25zdCBjaGFyICpkb21haW4sCisgICAgICAgICogSWYgd2UgY291bGRu J3QgZmluZCB0aGUgY2F0YWxvZyBmaWxlIGZvciB0aGUgdXNlcidzIGxhbmd1YWdlLCBzZWUgaWYK KyAgICAgICAgKiB3ZSBjYW4gZmluZCBhIG1vcmUgZ2VuZXJpYyBsYW5ndWFnZSAoZS5nLiwgZm9y ICJlbl9VUyIsIGFsc28gdHJ5ICJlbiIpLgorICAgICAgICAqLworLSAgICAgIGNoYXIgKnNlcCA9 IFN0cl9TdHJyY2hyKGxhbmcsICdfJyk7CisrICAgICAgY2hhciAqc2VwID0gKGNoYXIgKikgU3Ry X1N0cnJjaHIobGFuZywgJ18nKTsKKyAgICAgICBpZiAoc2VwICE9IE5VTEwpIHsKKyAgICAgICAg ICBpZiAodXNybGFuZyA9PSBOVUxMKSB7CisgICAgICAgICAgICAgdXNybGFuZyA9IFV0aWxfU2Fm ZVN0cmR1cChsYW5nKTsKK2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5 NS9tb2R1bGVzL3NvbGFyaXMvdm1oZ2ZzL3Zub2RlLmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0y NDkxNTY5NS9tb2R1bGVzL3NvbGFyaXMvdm1oZ2ZzL3Zub2RlLmMKK2luZGV4IDUzZGQ1NDkuLmRm MmUxZjIgMTAwNjQ0CistLS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9tb2R1bGVz L3NvbGFyaXMvdm1oZ2ZzL3Zub2RlLmMKKysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1 Njk1L21vZHVsZXMvc29sYXJpcy92bWhnZnMvdm5vZGUuYworQEAgLTU0MjEsNyArNTQyMSw3IEBA IEhnZnNNYWtlRnVsbE5hbWUoY29uc3QgY2hhciAqcGF0aCwgICAgICAvLyBJTjogIFBhdGggb2Yg ZGlyZWN0b3J5IGNvbnRhaW5pbmcgZmlsCisgICAgICAgICogUmVwbGFjZSB0aGUgbGFzdCBwYXRo IHNlcGFyYXRvciB3aXRoIGEgTlVMIHRlcm1pbmF0b3IsIHRoZW4gcmV0dXJuIHRoZQorICAgICAg ICAqIHNpemUgb2YgdGhlIGJ1ZmZlci4KKyAgICAgICAgKi8KKy0gICAgICBjaGFyICpuZXdFbmQg PSBzdHJyY2hyKG91dEJ1ZiwgJy8nKTsKKysgICAgICBjaGFyICpuZXdFbmQgPSAoY2hhciAqKSBz dHJyY2hyKG91dEJ1ZiwgJy8nKTsKKyAgICAgICBpZiAoIW5ld0VuZCkgeworICAgICAgICAgIC8q CisgICAgICAgICAgICogV2Ugc2hvdWxkIG5ldmVyIGdldCBoZXJlIHNpbmNlIHdlIG5hbWUgdGhl IHJvb3Qgdm5vZGUgIi8iIGluCitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5 MTU2OTUvc2VydmljZXMvcGx1Z2lucy9jb21wb25lbnRNZ3IvY29tcG9uZW50TWdySW5zdGFsbEFj dGlvbi5jIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy9j b21wb25lbnRNZ3IvY29tcG9uZW50TWdySW5zdGFsbEFjdGlvbi5jCitpbmRleCBlMDUxZjQxLi45 ZGRiMjM5IDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2Vydmlj ZXMvcGx1Z2lucy9jb21wb25lbnRNZ3IvY29tcG9uZW50TWdySW5zdGFsbEFjdGlvbi5jCisrKysg Yi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL2NvbXBvbmVu dE1nci9jb21wb25lbnRNZ3JJbnN0YWxsQWN0aW9uLmMKK0BAIC00NzYsNyArNDc2LDcgQEAgQ29t cG9uZW50TWdyQ29uc3RydWN0Q29tbWFuZGxpbmUoZ2NoYXIgKnNjcmlwdFBhdGgsICAgICAgICAg ICAgLy8gSU4KKyAgICB9CisgCisgICAgaWYgKGN1c3RvbUFyZ3VtZW50cyAhPSBOVUxMKSB7Cist ICAgICAgbWFuZGF0b3J5UGFyYW1zRXhpc3RzID0gc3Ryc3RyKGN1c3RvbUFyZ3VtZW50cywgbWFu ZGF0b3J5UGFyYW1zKTsKKysgICAgICBtYW5kYXRvcnlQYXJhbXNFeGlzdHMgPSAoY2hhciAqKSBz dHJzdHIoY3VzdG9tQXJndW1lbnRzLCBtYW5kYXRvcnlQYXJhbXMpOworICAgICAgIGlmIChtYW5k YXRvcnlQYXJhbXNFeGlzdHMgPT0gTlVMTCkgeworICAgICAgICAgIGNvbW1hbmRsaW5lID0gU3Ry X1NhZmVBc3ByaW50ZihOVUxMLCAiXCIlcyVzXCIgJXMgXCIlc1wiICVzICVzICVzIiwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzRGlyLCBwb3dlcnNoZWxsRXhl Y3V0YWJsZSwKK0BAIC01MDQsNyArNTA0LDcgQEAgQ29tcG9uZW50TWdyQ29uc3RydWN0Q29tbWFu ZGxpbmUoZ2NoYXIgKnNjcmlwdFBhdGgsICAgICAgICAgICAgLy8gSU4KKyAgICBmcmVlKHN5c0Rp cik7CisgI2Vsc2UKKyAgICBpZiAoY3VzdG9tQXJndW1lbnRzICE9IE5VTEwpIHsKKy0gICAgICBt YW5kYXRvcnlQYXJhbXNFeGlzdHMgPSBzdHJzdHIoY3VzdG9tQXJndW1lbnRzLCBtYW5kYXRvcnlQ YXJhbXMpOworKyAgICAgIG1hbmRhdG9yeVBhcmFtc0V4aXN0cyA9IChjaGFyICopIHN0cnN0cihj dXN0b21Bcmd1bWVudHMsIG1hbmRhdG9yeVBhcmFtcyk7CisgICAgICAgaWYgKG1hbmRhdG9yeVBh cmFtc0V4aXN0cyA9PSBOVUxMKSB7CisgICAgICAgICAgY29tbWFuZGxpbmUgPSBTdHJfU2FmZUFz cHJpbnRmKE5VTEwsICIlcyAlcyAlcyAlcyIsIHNjcmlwdFBhdGgsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRBcmd1bWVudHMsIGN1c3RvbUFyZ3VtZW50 cywKK2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9w bHVnaW5zL2RuZGNwL2NvcHlQYXN0ZVVJWDExLmNwcCBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0 OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvZG5kY3AvY29weVBhc3RlVUlYMTEuY3BwCitpbmRleCBh NGEwMmM1Li5lZjQ3Yjc2IDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2 OTUvc2VydmljZXMvcGx1Z2lucy9kbmRjcC9jb3B5UGFzdGVVSVgxMS5jcHAKKysrKyBiL29wZW4t dm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvZG5kY3AvY29weVBhc3Rl VUlYMTEuY3BwCitAQCAtMTA0MCw3ICsxMDQwLDcgQEAgQ29weVBhc3RlVUlYMTE6OkxvY2FsR2V0 U2VsZWN0aW9uRmlsZUxpc3QoY29uc3QgR3RrOjpTZWxlY3Rpb25EYXRhJiBzZCkgICAgICAvLwor ICAgICAgIC8qCisgICAgICAgICogUGFyc2UgcmVsYXRpdmUgcGF0aC4KKyAgICAgICAgKi8KKy0g ICAgICBuZXdSZWxQYXRoID0gU3RyX1N0cnJjaHIobmV3UGF0aCwgRElSU0VQQykgKyAxOyAvLyBQ b2ludCB0byBjaGFyIGFmdGVyICcvJworKyAgICAgIG5ld1JlbFBhdGggPSAoY2hhciAqKSBTdHJf U3RycmNocihuZXdQYXRoLCBESVJTRVBDKSArIDE7IC8vIFBvaW50IHRvIGNoYXIgYWZ0ZXIgJy8n CisgCisgICAgICAgLyogS2VlcCB0cmFjayBvZiBob3cgYmlnIHRoZSBmY3AgZmlsZXMgYXJlLiAq LworICAgICAgIGlmICgoc2l6ZSA9IEZpbGVfR2V0U2l6ZUV4KG5ld1BhdGgpKSA+PSAwKSB7Citk aWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lu cy9kbmRjcC9kbmQvZG5kWGRnLmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2 aWNlcy9wbHVnaW5zL2RuZGNwL2RuZC9kbmRYZGcuYworaW5kZXggZGE1NGVlNS4uOGY0OTBmNiAx MDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdp bnMvZG5kY3AvZG5kL2RuZFhkZy5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5 NS9zZXJ2aWNlcy9wbHVnaW5zL2RuZGNwL2RuZC9kbmRYZGcuYworQEAgLTQyOCw3ICs0MjgsNyBA QCBDcmVhdGVTdGFnaW5nRGlyZWN0b3J5KAorICAgICAgIGNoYXIgKnJlYWxTdGFnaW5nRGlyID0g U3RyX1NhZmVBc3ByaW50ZihOVUxMLCAiJXNYWFhYWFgiLCByZWFsUm9vdCk7CisgCisgICAgICAg aWYgKG1rZHRlbXAocmVhbFN0YWdpbmdEaXIpICE9IE5VTEwpIHsKKy0gICAgICAgICBjaGFyICpy YW5kb21QYXJ0ID0gc3RycmNocihyZWFsU3RhZ2luZ0RpciwgJy8nKSArIDE7CisrICAgICAgICAg Y2hhciAqcmFuZG9tUGFydCA9IChjaGFyICopIHN0cnJjaHIocmVhbFN0YWdpbmdEaXIsICcvJykg KyAxOworICAgICAgICAgIFZFUklGWSgqcmFuZG9tUGFydCAhPSAnXDAnKTsKKyAKKyAgICAgICAg ICBhcHBhcmVudFN0YWdpbmdEaXIgPSBVbmljb2RlX0FwcGVuZChhcHBhcmVudFJvb3QsIHJhbmRv bVBhcnQpOworZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZp Y2VzL3BsdWdpbnMvZG5kY3AvZG5kR3Vlc3QvZ3Vlc3RDb3B5UGFzdGVTcmMuY2MgYi9vcGVuLXZt LXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL2RuZGNwL2RuZEd1ZXN0L2d1 ZXN0Q29weVBhc3RlU3JjLmNjCitpbmRleCA0MmIxNGE3Li4wMzAzNjI1IDEwMDY0NAorLS0tIGEv b3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy9kbmRjcC9kbmRH dWVzdC9ndWVzdENvcHlQYXN0ZVNyYy5jYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5 MTU2OTUvc2VydmljZXMvcGx1Z2lucy9kbmRjcC9kbmRHdWVzdC9ndWVzdENvcHlQYXN0ZVNyYy5j YworQEAgLTE5OCw3ICsxOTgsNyBAQCBHdWVzdENvcHlQYXN0ZVNyYzo6U2V0dXBEZXN0RGlyKGNv bnN0IHN0ZDo6c3RyaW5nICZkZXN0RGlyKQorICAgICAgIGlmIChuZXdEaXIgIT0gTlVMTCkgewor ICAgICAgICAgIG1TdGFnaW5nRGlyID0gbmV3RGlyOworIAorLSAgICAgICAgIGNoYXIgKmxhc3RT ZXAgPSBTdHJfU3RycmNocihuZXdEaXIsIERJUlNFUEMpOworKyAgICAgICAgIGNoYXIgKmxhc3RT ZXAgPSAoY2hhciAqKSBTdHJfU3RycmNocihuZXdEaXIsIERJUlNFUEMpOworICAgICAgICAgIGlm IChsYXN0U2VwICYmIGxhc3RTZXBbMV0gIT0gJ1wwJykgeworICAgICAgICAgICAgIG1TdGFnaW5n RGlyICs9IERJUlNFUFM7CisgICAgICAgICAgfQorZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMt MTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvZG5kY3AvZG5kR3Vlc3Qvdm1HdWVzdERu RFNyYy5jYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMv ZG5kY3AvZG5kR3Vlc3Qvdm1HdWVzdERuRFNyYy5jYworaW5kZXggMTFjOWZkNS4uMmYzNjZjNyAx MDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdp bnMvZG5kY3AvZG5kR3Vlc3Qvdm1HdWVzdERuRFNyYy5jYworKysrIGIvb3Blbi12bS10b29scy0x My4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy9kbmRjcC9kbmRHdWVzdC92bUd1ZXN0RG5E U3JjLmNjCitAQCAtNzAsNyArNzAsNyBAQCBWTUd1ZXN0RG5EU3JjOjpTZXR1cERlc3REaXIoY29u c3Qgc3RkOjpzdHJpbmcgJmRlc3REaXIpCisgICAgICAgaWYgKG5ld0RpciAhPSBOVUxMKSB7Cisg ICAgICAgICAgbVN0YWdpbmdEaXIgPSBuZXdEaXI7CisgCistICAgICAgICAgY2hhciAqbGFzdFNl cCA9IFN0cl9TdHJyY2hyKG5ld0RpciwgRElSU0VQQyk7CisrICAgICAgICAgY2hhciAqbGFzdFNl cCA9IChjaGFyICopIFN0cl9TdHJyY2hyKG5ld0RpciwgRElSU0VQQyk7CisgICAgICAgICAgaWYg KGxhc3RTZXAgJiYgbGFzdFNlcFsxXSAhPSAnXDAnKSB7CisgICAgICAgICAgICAgbVN0YWdpbmdE aXIgKz0gRElSU0VQUzsKKyAgICAgICAgICB9CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0x My4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy9kbmRjcC9kbmRVSVgxMS5jcHAgYi9vcGVu LXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL2RuZGNwL2RuZFVJWDEx LmNwcAoraW5kZXggZTA4NGRjNC4uODNjMmM2MCAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMt MTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMvZG5kY3AvZG5kVUlYMTEuY3BwCisrKysg Yi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL2RuZGNwL2Ru ZFVJWDExLmNwcAorQEAgLTE0OTEsNyArMTQ5MSw3IEBAIERuRFVJWDExOjpTZXRDUENsaXBib2Fy ZEZyb21HdGsoY29uc3QgR3RrOjpTZWxlY3Rpb25EYXRhJiBzZCkgLy8gSU4KKyAgICAgICAgICAv KgorICAgICAgICAgICAqIFBhcnNlIHJlbGF0aXZlIHBhdGguCisgICAgICAgICAgICovCistICAg ICAgICAgbmV3UmVsUGF0aCA9IFN0cl9TdHJyY2hyKG5ld1BhdGgsIERJUlNFUEMpICsgMTsgLy8g UG9pbnQgdG8gY2hhciBhZnRlciAnLycKKysgICAgICAgICBuZXdSZWxQYXRoID0gKGNoYXIgKikg U3RyX1N0cnJjaHIobmV3UGF0aCwgRElSU0VQQykgKyAxOyAvLyBQb2ludCB0byBjaGFyIGFmdGVy ICcvJworIAorICAgICAgICAgIC8qIEtlZXAgdHJhY2sgb2YgaG93IGJpZyB0aGUgZG5kIGZpbGVz IGFyZS4gKi8KKyAgICAgICAgICBpZiAoKHNpemUgPSBGaWxlX0dldFNpemVFeChuZXdQYXRoKSkg Pj0gMCkgeworZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZp Y2VzL3BsdWdpbnMvZ3Vlc3RJbmZvL3BlcmZNb25MaW51eC5jIGIvb3Blbi12bS10b29scy0xMy4w LjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy9ndWVzdEluZm8vcGVyZk1vbkxpbnV4LmMKK2lu ZGV4IDNjNTFmYWUuLjcyNDhiNmYgMTAwNjQ0CistLS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0y NDkxNTY5NS9zZXJ2aWNlcy9wbHVnaW5zL2d1ZXN0SW5mby9wZXJmTW9uTGludXguYworKysrIGIv b3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy9ndWVzdEluZm8v cGVyZk1vbkxpbnV4LmMKK0BAIC00NzcsNyArNDc3LDcgQEAgR3Vlc3RJbmZvUHJvY0RhdGEoY29u c3QgY2hhciAqcGF0aE5hbWUsICAgICAgICAgICAvLyBJTjogcGF0aCBuYW1lCisgICAgICAgfQor IAorICAgICAgIGlmIChmaWVsZFNlcGFyYXRvciAhPSAnXDAnKSB7CistICAgICAgICAgY2hhciAq cCA9IHN0cnJjaHIoZmllbGROYW1lLCBmaWVsZFNlcGFyYXRvcik7CisrICAgICAgICAgY2hhciAq cCA9IChjaGFyICopIHN0cnJjaHIoZmllbGROYW1lLCBmaWVsZFNlcGFyYXRvcik7CisgICAgICAg ICAgaWYgKHAgPT0gTlVMTCkgeworICAgICAgICAgICAgIC8qCisgICAgICAgICAgICAgICogV2hl biBmaWVsZFNlcGFyYXRvciBpcyBzcGVjaWZpZWQsIGZpZWxkTmFtZSBpcyBleHBlY3RlZAorZGlm ZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3NlcnZpY2VzL3BsdWdpbnMv dml4L3ZpeFRvb2xzLmMgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS9zZXJ2aWNlcy9w bHVnaW5zL3ZpeC92aXhUb29scy5jCitpbmRleCA2NTQ1MTJjLi42Yjk3MjMzIDEwMDY0NAorLS0t IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1Z2lucy92aXgvdml4 VG9vbHMuYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvc2VydmljZXMvcGx1 Z2lucy92aXgvdml4VG9vbHMuYworQEAgLTkzMyw3ICs5MzMsNyBAQCBWaXhUb29sc0J1aWxkVXNl ckVudmlyb25tZW50VGFibGUoY29uc3QgY2hhciAqIGNvbnN0ICplbnZwKSAgIC8vIElOOiBvcHRp b25hbAorICAgICAgIGNoYXIgKndoZXJlVG9TcGxpdDsKKyAgICAgICBzaXplX3QgbmFtZUxlbjsK KyAKKy0gICAgICB3aGVyZVRvU3BsaXQgPSBzdHJjaHIoKmVudnAsICc9Jyk7CisrICAgICAgd2hl cmVUb1NwbGl0ID0gKGNoYXIgKikgc3RyY2hyKCplbnZwLCAnPScpOworICAgICAgIGlmIChOVUxM ID09IHdoZXJlVG9TcGxpdCkgeworICAgICAgICAgIC8qIE91ciBjb2RlIGdlbmVyYXRlZCB0aGlz IGxpc3QsIHNvIHRoaXMgc2hvdWxkbid0IGhhcHBlbi4gKi8KKyAgICAgICAgICBBU1NFUlQoMCk7 CitAQCAtMTQ5OCw3ICsxNDk4LDcgQEAgVml4VG9vbHNSdW5Qcm9ncmFtSW1wbChjaGFyICpyZXF1 ZXN0TmFtZSwgICAgICAvLyBJTgorICAgIH0KKyAgICBpZiAoJ1wiJyA9PSAqc3RhcnRQcm9ncmFt RmlsZU5hbWUpIHsKKyAgICAgICBzdGFydFByb2dyYW1GaWxlTmFtZSsrOworLSAgICAgIHN0b3BQ cm9ncmFtRmlsZU5hbWUgPSBzdHJzdHIoc3RhcnRQcm9ncmFtRmlsZU5hbWUsICJcIiIpOworKyAg ICAgIHN0b3BQcm9ncmFtRmlsZU5hbWUgPSAoY2hhciAqKSBzdHJzdHIoc3RhcnRQcm9ncmFtRmls ZU5hbWUsICJcIiIpOworICAgIH0gZWxzZSB7CisgICAgICAgc3RvcFByb2dyYW1GaWxlTmFtZSA9 IE5VTEw7CisgICAgfQorQEAgLTE3MTYsNyArMTcxNiw3IEBAIFZpeFRvb2xzU3RhcnRQcm9ncmFt SW1wbChjb25zdCBjaGFyICpyZXF1ZXN0TmFtZSwgICAgICAgICAgICAvLyBJTgorICAgIH0KKyAg ICBpZiAoJ1wiJyA9PSAqc3RhcnRQcm9ncmFtRmlsZU5hbWUpIHsKKyAgICAgICBzdGFydFByb2dy YW1GaWxlTmFtZSsrOworLSAgICAgIHN0b3BQcm9ncmFtRmlsZU5hbWUgPSBzdHJzdHIoc3RhcnRQ cm9ncmFtRmlsZU5hbWUsICJcIiIpOworKyAgICAgIHN0b3BQcm9ncmFtRmlsZU5hbWUgPSAoY2hh ciAqKSBzdHJzdHIoc3RhcnRQcm9ncmFtRmlsZU5hbWUsICJcIiIpOworICAgIH0gZWxzZSB7Cisg ICAgICAgc3RvcFByb2dyYW1GaWxlTmFtZSA9IE5VTEw7CisgICAgfQorQEAgLTQ1ODIsNyArNDU4 Miw3IEBAIFZpeFRvb2xzR2V0QWxsRW52VmFyc0ZvclVzZXIodm9pZCAqdXNlclRva2VuLCAgICAg Ly8gSU4KKyAgICAgICAgICBjaGFyICp3aGVyZVRvU3BsaXQ7CisgICAgICAgICAgc2l6ZV90IG5h bWVMZW47CisgCistICAgICAgICAgd2hlcmVUb1NwbGl0ID0gc3RyY2hyKGVudlZhciwgJz0nKTsK KysgICAgICAgICB3aGVyZVRvU3BsaXQgPSAoY2hhciAqKSBzdHJjaHIoZW52VmFyLCAnPScpOwor ICAgICAgICAgIGlmIChOVUxMID09IHdoZXJlVG9TcGxpdCkgeworICAgICAgICAgICAgIC8qIE91 ciBjb2RlIGdlbmVyYXRlZCB0aGlzIGxpc3QsIHNvIHRoaXMgc2hvdWxkbid0IGhhcHBlbi4gKi8K KyAgICAgICAgICAgICBBU1NFUlQoMCk7CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4w LjUtMjQ5MTU2OTUvdGVzdHMvdm1ycGNkYmcvZGVidWdDaGFubmVsLmMgYi9vcGVuLXZtLXRvb2xz LTEzLjAuNS0yNDkxNTY5NS90ZXN0cy92bXJwY2RiZy9kZWJ1Z0NoYW5uZWwuYworaW5kZXggMzk5 ZGVkZC4uZWI1NWNmMiAxMDA2NDQKKy0tLSBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1 L3Rlc3RzL3ZtcnBjZGJnL2RlYnVnQ2hhbm5lbC5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAu NS0yNDkxNTY5NS90ZXN0cy92bXJwY2RiZy9kZWJ1Z0NoYW5uZWwuYworQEAgLTIyMiw3ICsyMjIs NyBAQCBScGNEZWJ1Z1NlbmQoUnBjQ2hhbm5lbCAqY2hhbiwKKyAgICAgICAgICBBU1NFUlQobWFw cGluZy0+eGRyU2l6ZSA+IDApOworIAorICAgICAgICAgIC8qIEZpbmQgb3V0IHdoZXJlIHRoZSBY RFIgZGF0YSBzdGFydHMuICovCistICAgICAgICAgc3RhcnQgPSBzdHJjaHIoY29weSwgJyAnKTsK KysgICAgICAgICBzdGFydCA9IChjaGFyICopIHN0cmNocihjb3B5LCAnICcpOworICAgICAgICAg IGlmIChzdGFydCA9PSBOVUxMKSB7CisgICAgICAgICAgICAgUnBjRGVidWdfU2V0UmVzdWx0KCJD YW4ndCBmaW5kIGNvbW1hbmQgZGVsaW1pdGVyLiIsIHJlc3VsdCwgcmVzdWx0TGVuKTsKKyAgICAg ICAgICAgICByZXQgPSBGQUxTRTsKK2RpZmYgLS1naXQgYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0y NDkxNTY5NS92Z2F1dGgvY29tbW9uL2kxOG4uYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1 Njk1L3ZnYXV0aC9jb21tb24vaTE4bi5jCitpbmRleCA2ZDEyOTJkLi5iYTJjYTI4IDEwMDY0NAor LS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvdmdhdXRoL2NvbW1vbi9pMThuLmMK KysrKyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3ZnYXV0aC9jb21tb24vaTE4bi5j CitAQCAtNDg0LDcgKzQ4NCw3IEBAIE1zZ0dldFVzZXJMYW5ndWFnZSh2b2lkKQorICAgICAgIGNo YXIgKmRvdDsKKyAKKyAgICAgICBsYW5nID0gZ19zdHJkdXAodG1wKTsKKy0gICAgICBkb3QgPSBz dHJjaHIobGFuZywgJy4nKTsKKysgICAgICBkb3QgPSAoY2hhciAqKSBzdHJjaHIobGFuZywgJy4n KTsKKyAgICAgICBpZiAoZG90ICE9IE5VTEwpIHsKKyAgICAgICAgICAqZG90ID0gJ1wwJzsKKyAg ICAgICB9CitkaWZmIC0tZ2l0IGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvdm1ibG9j a21vdW50ZXIvdm1ibG9ja21vdW50ZXIuYyBiL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1 L3ZtYmxvY2ttb3VudGVyL3ZtYmxvY2ttb3VudGVyLmMKK2luZGV4IDQyOWIxMjQuLjYzYjViZWYg MTAwNjQ0CistLS0gYS9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS92bWJsb2NrbW91bnRl ci92bWJsb2NrbW91bnRlci5jCisrKysgYi9vcGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS92 bWJsb2NrbW91bnRlci92bWJsb2NrbW91bnRlci5jCitAQCAtMTQwLDcgKzE0MCw3IEBAIG1haW4o aW50IGFyZ2MsICAgICAgICAgIC8vIElOCisgICAgdGhpc1Byb2dyYW0gPSBhcmd2WzBdOworIAor ICAgIC8qIENvbXB1dGUgdGhlIGJhc2UgbmFtZSBvZiB0aGUgcHJvZ3JhbSwgdG9vLiAqLworLSAg IHRoaXNQcm9ncmFtQmFzZSA9IHN0cnJjaHIodGhpc1Byb2dyYW0sICcvJyk7CisrICAgdGhpc1By b2dyYW1CYXNlID0gKGNoYXIgKikgc3RycmNocih0aGlzUHJvZ3JhbSwgJy8nKTsKKyAgICBpZiAo dGhpc1Byb2dyYW1CYXNlICE9IE5VTEwpIHsKKyAgICAgICB0aGlzUHJvZ3JhbUJhc2UrKzsKKyAg ICB9IGVsc2UgeworZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3Zt aGdmcy1mdXNlL2NvbmZpZy5jIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvdm1oZ2Zz LWZ1c2UvY29uZmlnLmMKK2luZGV4IDE5NTM1ZmQuLjNmNjhmZjYgMTAwNjQ0CistLS0gYS9vcGVu LXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS92bWhnZnMtZnVzZS9jb25maWcuYworKysrIGIvb3Bl bi12bS10b29scy0xMy4wLjUtMjQ5MTU2OTUvdm1oZ2ZzLWZ1c2UvY29uZmlnLmMKK0BAIC0yNDgs NyArMjQ4LDcgQEAgU3lzQ29tcGF0SXNJbnN0YWxsZWRGdXNlKGNoYXIgKnV0c1JlbGVhc2UpICAv LyBJTjoga2VybmVsIHJlbGVhc2UKKyAgICB9CisgCisgICAgbW9kdWxlc0RlcERhdGFbbW9kdWxl c0RlcERhdGFTaXplXSA9ICdcMCc7CistICAgZnVzZUZpbGVzeXN0ZW0gPSBzdHJzdHIobW9kdWxl c0RlcERhdGEsCisrICAgZnVzZUZpbGVzeXN0ZW0gPSAoY2hhciAqKSBzdHJzdHIobW9kdWxlc0Rl cERhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgRlVTRVJfS0VSTkVMX0ZTKTsKKyAK KyAgICBpbnN0YWxsZWRGdXNlID0gKGZ1c2VGaWxlc3lzdGVtICE9IE5VTEwpOworZGlmZiAtLWdp dCBhL29wZW4tdm0tdG9vbHMtMTMuMC41LTI0OTE1Njk1L3hmZXJsb2dzL3hmZXJsb2dzLmMgYi9v cGVuLXZtLXRvb2xzLTEzLjAuNS0yNDkxNTY5NS94ZmVybG9ncy94ZmVybG9ncy5jCitpbmRleCBh MjlhMjVhLi43ZmM4NjcxIDEwMDY0NAorLS0tIGEvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2 OTUveGZlcmxvZ3MveGZlcmxvZ3MuYworKysrIGIvb3Blbi12bS10b29scy0xMy4wLjUtMjQ5MTU2 OTUveGZlcmxvZ3MveGZlcmxvZ3MuYworQEAgLTIwOCw5ICsyMDgsOSBAQCBleHRyYWN0RmlsZShj aGFyICpmaWxlbmFtZSkgLy9JTjogdm14IGxvZyBmaWxlbmFtZSBlLmcuIHZtd2FyZS5sb2cKKyAg ICAgICAgICAgICAgKiByZWFkIHRoZSBpbnB1dCBmaWxlbmFtZSwgd2hpY2ggd2FzIHRoZSBmaWxl bmFtZSB3cml0dGVuIGJ5IHRoZQorICAgICAgICAgICAgICAqIGd1ZXN0LgorICAgICAgICAgICAg ICAqLworLSAgICAgICAgICAgIGxvZ0lucEZpbGVuYW1lID0gc3Ryc3RyKGJ1ZiwgTE9HX1NUQVJU X01BUkspOworKyAgICAgICAgICAgIGxvZ0lucEZpbGVuYW1lID0gKGNoYXIgKikgc3Ryc3RyKGJ1 ZiwgTE9HX1NUQVJUX01BUkspOworICAgICAgICAgICAgIGxvZ0lucEZpbGVuYW1lICs9IHNpemVv ZiBMT0dfU1RBUlRfTUFSSzsKKy0gICAgICAgICAgICBwdHJTdHIgPSBzdHJzdHIobG9nSW5wRmls ZW5hbWUsICI6IHZlciAiKTsKKysgICAgICAgICAgICBwdHJTdHIgPSAoY2hhciAqKSBzdHJzdHIo bG9nSW5wRmlsZW5hbWUsICI6IHZlciAiKTsKKyAgICAgICAgICAgICBpZiAocHRyU3RyID09IE5V TEwpIHsKKyAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkludmFsaWQgc3RhcnQgbG9n IG1hcmsuIik7CisgICAgICAgICAgICAgICAgYnJlYWs7CitAQCAtMjQzLDcgKzI0Myw3IEBAIGV4 dHJhY3RGaWxlKGNoYXIgKmZpbGVuYW1lKSAvL0lOOiB2bXggbG9nIGZpbGVuYW1lIGUuZy4gdm13 YXJlLmxvZworICAgICAgICAgICAgICAqIGRvbnQgd3JpdGUgYW55dGhpbmcuCisgICAgICAgICAg ICAgICovCisgICAgICAgICAgICAgcHRyU3RyKys7CistICAgICAgICAgICAgdmVyID0gc3Ryc3Ry KHB0clN0ciwgInZlciAtICIpOworKyAgICAgICAgICAgIHZlciA9IChjaGFyICopIHN0cnN0cihw dHJTdHIsICJ2ZXIgLSAiKTsKKyAgICAgICAgICAgICBpZiAoIXZlcikgeworICAgICAgICAgICAg ICAgIFdhcm5pbmcoIk5vIHZlcnNpb24gaW5mb3JtYXRpb24gZGV0ZWN0ZWRcbiIpOworICAgICAg ICAgICAgIH0gZWxzZSB7CitAQCAtMjc2LDcgKzI3Niw3IEBAIGV4dHJhY3RGaWxlKGNoYXIgKmZp bGVuYW1lKSAvL0lOOiB2bXggbG9nIGZpbGVuYW1lIGUuZy4gdm13YXJlLmxvZworICAgICAgICAg IH0gZWxzZSB7IC8vIHdyaXRlIHRvIHRoZSBvdXRwdXQgZmlsZQorICAgICAgICAgICAgIGlmIChv dXRmcCkgeworICAgICAgICAgICAgICAgIEFTU0VSVChzdGF0ZSA9PSBJTl9HVUVTVF9MT0dHSU5H KTsKKy0gICAgICAgICAgICAgICBwdHJTdHIgPSBzdHJzdHIoYnVmLCBMT0dfR1VFU1RfTUFSSyk7 CisrICAgICAgICAgICAgICAgcHRyU3RyID0gKGNoYXIgKikgc3Ryc3RyKGJ1ZiwgTE9HX0dVRVNU X01BUkspOworICAgICAgICAgICAgICAgIHB0clN0ciArPSBzaXplb2YgTE9HX0dVRVNUX01BUksg LSAxOworICAgICAgICAgICAgICAgIGlmIChCYXNlNjRfRGVjb2RlKHB0clN0ciwgYmFzZTY0T3V0 LCBCVUZfT1VUX1NJWkUsICZsZW5PdXQpKSB7CisgICAgICAgICAgICAgICAgICAgaWYgKGZ3cml0 ZShiYXNlNjRPdXQsIDEsIGxlbk91dCwgb3V0ZnApICE9IGxlbk91dCkgeworLS0gCisyLjUxLjEK KwoKZGlmZiAtLWdpdCBhL29wZW4tdm0tdG9vbHMuc3BlYyBiL29wZW4tdm0tdG9vbHMuc3BlYwpp bmRleCAyMjcyNWMzLi5mYWI0NDI2IDEwMDY0NAotLS0gYS9vcGVuLXZtLXRvb2xzLnNwZWMKKysr IGIvb3Blbi12bS10b29scy5zcGVjCkBAIC03OCw2ICs3OCw3IEBAIEV4Y2x1c2l2ZUFyY2g6ICAg ICV7aXg4Nn0geDg2XzY0IGFhcmNoNjQKIAogIyBQYXRjaGVzCiAjUGF0Y2gwOiAgICAgICAgICAg PHBhdGNoLW5hbWUwPi5wYXRjaAorUGF0Y2gyOiAwMDAxLUZpeC1kaXNjYXJkZWQtcXVhbGlmaWVy cy13YXJuaW5nLWVycm9yLnBhdGNoCiAKIEJ1aWxkUmVxdWlyZXM6ICAgIGF1dG9jb25mCiBCdWls ZFJlcXVpcmVzOiAgICBhdXRvbWFrZQo=