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: Takao Fujiwara To: git-commits@fedoraproject.org Subject: [rpms/ibus] autotool: Fixed Bug 747902 - mouse and ctrl+space not working Date: Sun, 31 May 2026 02:05:28 GMT Message-ID: <178019312804.1.1167194892016893050.rpms-ibus-5f53fe6fa62d@fedoraproject.org> List-ID: X-Git-Repo: rpms/ibus X-Git-Branch: autotool X-Git-Rev: 5f53fe6fa62dc6644a2ec0c3cf70a9157b64bea8 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvaWJ1cwogICAgICAgICAgICBCcmFuY2ggOiBhdXRvdG9vbAogICAgICAgICAg ICBDb21taXQgOiA1ZjUzZmU2ZmE2MmRjNjY0NGEyZWMwYzNjZjcwYTkxNTdiNjRiZWE4CiAgICAg ICAgICAgIEF1dGhvciA6IFRha2FvIEZ1aml3YXJhIDx0ZnVqaXdhckByZWRoYXQuY29tPgogICAg ICAgICAgICBEYXRlICAgOiAyMDExLTEwLTI4VDE4OjMwOjAxKzA5OjAwCiAgICAgICAgICAgIFN0 YXRzICA6ICs1OTUvLTcwIGluIDYgZmlsZShzKQogICAgICAgICAgICBVUkwgICAgOiBodHRwczov L3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2lidXMvYy81ZjUzZmU2ZmE2MmRjNjY0NGEyZWMw YzNjZjcwYTkxNTdiNjRiZWE4P2JyYW5jaD1hdXRvdG9vbAoKICAgICAgICAgICAgTG9nOgogICAg ICAgICAgICBGaXhlZCBCdWcgNzQ3OTAyIC0gbW91c2UgYW5kIGN0cmwrc3BhY2Ugbm90IHdvcmtp bmcKCkZpeGVkIHJlcm90YXRlIG5leHQvcHJldmlvdXMga2V5LgpVcGRhdGVkIGlidXMtSEVBRC5w YXRjaCBmcm9tIHVwc3RyZWFtLgoKLS0tCmRpZmYgLS1naXQgYS8uZ2l0aWdub3JlIGIvLmdpdGln bm9yZQppbmRleCA4YWU4MjdmLi5hYTExOWIyIDEwMDY0NAotLS0gYS8uZ2l0aWdub3JlCisrKyBi Ly5naXRpZ25vcmUKQEAgLTI0LDMgKzI0LDUgQEAgaWJ1cy0xLjMuNi50YXIuZ3oKIC9pYnVzLWdq cy0zLjAuMi4yMDExMTAxOC50YXIuZ3oKIC9pYnVzLWdqcy0zLjIuMC4yMDExMTAxOC50YXIuZ3oK IC9pYnVzLWdqcy0zLjIuMS4yMDExMTAyMS50YXIuZ3oKKy9pYnVzLWdqcy0zLjAuMi4yMDExMTAy OC50YXIuZ3oKKy9pYnVzLWdqcy0zLjIuMS4yMDExMTAyOC50YXIuZ3oKCmRpZmYgLS1naXQgYS9p YnVzLTU0MTQ5Mi14a2IucGF0Y2ggYi9pYnVzLTU0MTQ5Mi14a2IucGF0Y2gKaW5kZXggMDQ4MDlh NC4uNTBkZjI5NCAxMDA2NDQKLS0tIGEvaWJ1cy01NDE0OTIteGtiLnBhdGNoCisrKyBiL2lidXMt NTQxNDkyLXhrYi5wYXRjaApAQCAtMSw2ICsxLDYgQEAKLUZyb20gNzI3ODUyNDNkZmI0N2U5MDI4 ZGU0NzkxMGJlZDYwMzc3NmU0ZWM2ZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb20gNDcx ZTc1ODMwNzhjMWU0YjY1MjE5YzlkMzdlMTZiZjBkM2Q4MDhiZiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKIEZyb206IGZ1aml3YXJhdCA8dGFrYW8uZnVqaXdhcmExQGdtYWlsLmNvbT4KLURhdGU6 IFdlZCwgNyBTZXAgMjAxMSAxNToyNzoyNiArMDkwMAorRGF0ZTogRnJpLCAyOCBPY3QgMjAxMSAx NToyNToxOSArMDkwMAogU3ViamVjdDogW1BBVENIXSBBZGQgWEtCIGxheW91dHMKIAogLS0tCkBA IC04NSwxMCArODUsMTAgQEAgaW5kZXggZmYwZmFiYy4uMDU2ZGRmYyAxMDA2NDQKICAJJChEQ09O Rl9ESVJTKSAgIFwKICAJJChOVUxMKQogZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2NvbmZp Z3VyZS5hYwotaW5kZXggMzY3YjA2OS4uZTkwZjIwZSAxMDA2NDQKK2luZGV4IGY0NTI2NjYuLjIy N2UyOGUgMTAwNjQ0CiAtLS0gYS9jb25maWd1cmUuYWMKICsrKyBiL2NvbmZpZ3VyZS5hYwotQEAg LTE5MSw2ICsxOTEsNjAgQEAgZWxzZQorQEAgLTIyMSw2ICsyMjEsNjAgQEAgZWxzZQogICAgICBl bmFibGVfeGltPSJubyAoZGlzYWJsZWQsIHVzZSAtLWVuYWJsZS14aW0gdG8gZW5hYmxlKSIKICBm aQogIApAQCAtMTQ5LDcgKzE0OSw3IEBAIGluZGV4IDM2N2IwNjkuLmU5MGYyMGUgMTAwNjQ0CiAg IyBHT2JqZWN0IGludHJvc3BlY3Rpb24KICBHT0JKRUNUX0lOVFJPU1BFQ1RJT05fQ0hFQ0soWzAu Ni44XSkKICAKLUBAIC00NTcsNiArNTExLDcgQEAgYmluZGluZ3MvTWFrZWZpbGUKK0BAIC00Nzgs NiArNTMyLDcgQEAgYmluZGluZ3MvTWFrZWZpbGUKICBiaW5kaW5ncy92YWxhL01ha2VmaWxlCiAg ZGNvbmYvTWFrZWZpbGUKICBkY29uZi9kY29uZi54bWwuaW4KQEAgLTE1Nyw3ICsxNTcsNyBAQCBp bmRleCAzNjdiMDY5Li5lOTBmMjBlIDEwMDY0NAogIF0pCiAgCiAgQUNfT1VUUFVUCi1AQCAtNDcy LDYgKzUyNyw3IEBAIEJ1aWxkIG9wdGlvbnM6CitAQCAtNDkzLDYgKzU0OCw3IEBAIEJ1aWxkIG9w dGlvbnM6CiAgICBCdWlsZCBndGsyIGltbW9kdWxlICAgICAgICRlbmFibGVfZ3RrMgogICAgQnVp bGQgZ3RrMyBpbW1vZHVsZSAgICAgICAkZW5hYmxlX2d0azMKICAgIEJ1aWxkIFhJTSBhZ2VudCBz ZXJ2ZXIgICAgJGVuYWJsZV94aW0KQEAgLTI4MCwxMCArMjgwLDEwIEBAIGluZGV4IDdjOGY4YmUu LjNjMjU2MDUgMTAwNjQ0CiArZnJvbSB4a2J4bWwgaW1wb3J0ICoKICBmcm9tIF9jb25maWcgaW1w b3J0ICoKIGRpZmYgLS1naXQgYS9pYnVzL2J1cy5weSBiL2lidXMvYnVzLnB5Ci1pbmRleCA1NzM4 ZmFkLi4wNWVjNDllIDEwMDY0NAoraW5kZXggYThhNDU4ZC4uODRiNDE0MCAxMDA2NDQKIC0tLSBh L2lidXMvYnVzLnB5CiArKysgYi9pYnVzL2J1cy5weQotQEAgLTE2MCw2ICsxNjAsOSBAQCBjbGFz cyBCdXMob2JqZWN0Lk9iamVjdCk6CitAQCAtMTYzLDYgKzE2Myw5IEBAIGNsYXNzIEJ1cyhvYmpl Y3QuT2JqZWN0KToKICAgICAgICAgICAgICBkYXRhID0gc2VyaWFsaXphYmxlLmRlc2VyaWFsaXpl X29iamVjdChkYXRhKQogICAgICAgICAgcmV0dXJuIGRhdGEKICAKQEAgLTIxNDksNyArMjE0OSw3 IEBAIGluZGV4IDAwMDAwMDAuLmFmOWVjNTMKICsgICAgICAgIGV4cGFuZGVyLnNldF9kYXRhKCJj aGVja2VkIiwgY2hlY2tlZCkKICsKIGRpZmYgLS1naXQgYS9zcmMvTWFrZWZpbGUuYW0gYi9zcmMv TWFrZWZpbGUuYW0KLWluZGV4IDkwZTQxMmYuLmZjNzAwOGUgMTAwNjQ0CitpbmRleCA2ZjAzMjFj Li5jNjJmM2VkIDEwMDY0NAogLS0tIGEvc3JjL01ha2VmaWxlLmFtCiArKysgYi9zcmMvTWFrZWZp bGUuYW0KIEBAIC0xODYsNiArMTg2LDExIEBAIHR5cGVsaWJzX0RBVEEgPSAkKElOVFJPU1BFQ1RJ T05fR0lSUzouZ2lyPS50eXBlbGliKQpAQCAtMjE2NSw3ICsyMTY1LDcgQEAgaW5kZXggOTBlNDEy Zi4uZmM3MDA4ZSAxMDA2NDQKICBpYnVzZW51bXR5cGVzLmg6ICQoaWJ1c19oZWFkZXJzKSBpYnVz ZW51bXR5cGVzLmgudGVtcGxhdGUKICAJJChBTV9WX0dFTikgKCB0b3BfYnVpbGRkaXI9YGNkICQo dG9wX2J1aWxkZGlyKSAmJiBwd2RgOyBcCiBkaWZmIC0tZ2l0IGEvc3JjL2lidXMuaCBiL3NyYy9p YnVzLmgKLWluZGV4IDA3NjU3OTkuLjU4NDNiN2YgMTAwNjQ0CitpbmRleCBhZGRjNTMxLi40Njdj Nzc1IDEwMDY0NAogLS0tIGEvc3JjL2lidXMuaAogKysrIGIvc3JjL2lidXMuaAogQEAgLTQ1LDYg KzQ1LDcgQEAKQEAgLTk5ODUsNSArOTk4NSw1IEBAIGluZGV4IDAwMDAwMDAuLjZjMDBmMWQKICtH X0VORF9ERUNMUwogKyNlbmRpZgogLS0gCi0xLjcuNS40CisxLjcuNi40CiAKCmRpZmYgLS1naXQg YS9pYnVzLUhFQUQucGF0Y2ggYi9pYnVzLUhFQUQucGF0Y2gKaW5kZXggZDE1ZjliNC4uNjAzNWNl MSAxMDA2NDQKLS0tIGEvaWJ1cy1IRUFELnBhdGNoCisrKyBiL2lidXMtSEVBRC5wYXRjaApAQCAt MSw4ICsxLDEzMiBAQAotRnJvbSA1ZDUxOWZiN2E3OThlMjUyZGMyODY2NTY5NGQ1M2IwNzczNTQy NTg0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbSBjYjUxOWM4NTJkZmM3YTY1MmRmMTc2 OGM4MTk3NGQ3NTBlZjQ4ZjU4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogRGFpa2kg VWVubyA8dWVub0B1bml4dXNlci5vcmc+CitEYXRlOiBUaHUsIDI5IFNlcCAyMDExIDEyOjI0OjUz ICswOTAwCitTdWJqZWN0OiBbUEFUQ0hdIEZpeCBoaWRpbmcgYnV0dG9uIGl0ZW1zIGluIEdUSyBw YW5lbC4KKworQlVHPW5vbmUKK1RFU1Q9bWFudWFsCisKK1JldmlldyBVUkw6IGh0dHA6Ly9jb2Rl cmV2aWV3LmFwcHNwb3QuY29tLzUxNDgwNDEKKy0tLQorIHVpL2d0ay90b29saXRlbS5weSB8ICAg MTIgKysrKy0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDggZGVs ZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS91aS9ndGsvdG9vbGl0ZW0ucHkgYi91aS9ndGsvdG9v bGl0ZW0ucHkKK2luZGV4IDRiZGZmYmEuLjRmNGY5N2QgMTAwNjQ0CistLS0gYS91aS9ndGsvdG9v bGl0ZW0ucHkKKysrKyBiL3VpL2d0ay90b29saXRlbS5weQorQEAgLTczLDExICs3Myw5IEBAIGNs YXNzIFRvb2xCdXR0b24oZ3RrLlRvb2xCdXR0b24sIFByb3BJdGVtKToKKyAgICAgICAgIHNlbGYu c2V0X2ljb25fbmFtZShzZWxmLl9wcm9wLmljb24pCisgCisgICAgICAgICBpZiBzZWxmLl9wcm9w LnZpc2libGU6CistICAgICAgICAgICAgc2VsZi5zZXRfbm9fc2hvd19hbGwoRmFsc2UpCistICAg ICAgICAgICAgc2VsZi5zaG93X2FsbCgpCisrICAgICAgICAgICAgc2VsZi5zaG93KCkKKyAgICAg ICAgIGVsc2U6CistICAgICAgICAgICAgc2VsZi5zZXRfbm9fc2hvd19hbGwoVHJ1ZSkKKy0gICAg ICAgICAgICBzZWxmLmhpZGVfYWxsKCkKKysgICAgICAgICAgICBzZWxmLmhpZGUoKQorIAorICAg ICBkZWYgZG9fY2xpY2tlZChzZWxmKToKKyAgICAgICAgIHNlbGYuZW1pdCgicHJvcGVydHktYWN0 aXZhdGUiLCBzZWxmLl9wcm9wLmtleSwgc2VsZi5fcHJvcC5zdGF0ZSkKK0BAIC0xMjgsMTEgKzEy Niw5IEBAIGNsYXNzIFRvZ2dsZVRvb2xCdXR0b24oZ3RrLlRvZ2dsZVRvb2xCdXR0b24sIFByb3BJ dGVtKToKKyAgICAgICAgIHNlbGYuc2V0X2FjdGl2ZShzZWxmLl9wcm9wLnN0YXRlID09IGlidXMu UFJPUF9TVEFURV9DSEVDS0VEKQorICAgICAgICAgc2VsZi5zZXRfc2Vuc2l0aXZlKHNlbGYuX3By b3Auc2Vuc2l0aXZlKQorICAgICAgICAgaWYgc2VsZi5fcHJvcC52aXNpYmxlOgorLSAgICAgICAg ICAgIHNlbGYuc2V0X25vX3Nob3dfYWxsKEZhbHNlKQorLSAgICAgICAgICAgIHNlbGYuc2hvd19h bGwoKQorKyAgICAgICAgICAgIHNlbGYuc2hvdygpCisgICAgICAgICBlbHNlOgorLSAgICAgICAg ICAgIHNlbGYuc2V0X25vX3Nob3dfYWxsKFRydWUpCistICAgICAgICAgICAgc2VsZi5oaWRlX2Fs bCgpCisrICAgICAgICAgICAgc2VsZi5oaWRlKCkKKyAKKyAgICAgZGVmIGRvX3RvZ2dsZWQoc2Vs Zik6CisgICAgICAgICAjIERvIG5vdCBzZW5kIHByb3BlcnR5LWFjdGl2YXRlIHRvIGVuZ2luZSBp biBjYXNlIHRoZSBldmVudCBpcworLS0gCisxLjcuNi40CisKK0Zyb20gZDE5MDE4Yjg3MDk4NDcw MDlkMmUwODM2Yzk0MmRkOWYxMzg1ZTdjYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206 IFl1c3VrZSBTYXRvIDx5dXN1a2VzQGNocm9taXVtLm9yZz4KK0RhdGU6IFN1biwgOSBPY3QgMjAx MSAxMzo1Mjo0MiArMDkwMAorU3ViamVjdDogW1BBVENIXSBBbHdheXMgY29uc3VtZSBhIGhvdGtl eSBwcmVzcworCitCVUc9MTMyNAorCitSZXZpZXcgVVJMOiBodHRwOi8vY29kZXJldmlldy5hcHBz cG90LmNvbS81MjQyMDQ0CistLS0KKyBidXMvaWJ1c2ltcGwuYyB8ICAgIDYgKysrLS0tCisgMSBm aWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1n aXQgYS9idXMvaWJ1c2ltcGwuYyBiL2J1cy9pYnVzaW1wbC5jCitpbmRleCAxOTQyNTA0Li4xNDk0 ZjVmIDEwMDY0NAorLS0tIGEvYnVzL2lidXNpbXBsLmMKKysrKyBiL2J1cy9pYnVzaW1wbC5jCitA QCAtMjA2NiwyMSArMjA2NiwyMSBAQCBidXNfaWJ1c19pbXBsX2ZpbHRlcl9rZXlib2FyZF9zaG9y dGN1dHMgKEJ1c0lCdXNJbXBsICAgICAqaWJ1cywKKyAgICAgICAgIGVsc2UgeworICAgICAgICAg ICAgIGJ1c19pbnB1dF9jb250ZXh0X2VuYWJsZSAoY29udGV4dCk7CisgICAgICAgICB9CistICAg ICAgICByZXR1cm4gKGVuYWJsZWQgIT0gYnVzX2lucHV0X2NvbnRleHRfaXNfZW5hYmxlZCAoY29u dGV4dCkpOworKyAgICAgICAgcmV0dXJuIFRSVUU7CisgICAgIH0KKyAgICAgaWYgKGV2ZW50ID09 IGVuYWJsZV91bmNvbmRpdGlvbmFsKSB7CisgICAgICAgICBnYm9vbGVhbiBlbmFibGVkID0gYnVz X2lucHV0X2NvbnRleHRfaXNfZW5hYmxlZCAoY29udGV4dCk7CisgICAgICAgICBpZiAoIWVuYWJs ZWQpIHsKKyAgICAgICAgICAgICBidXNfaW5wdXRfY29udGV4dF9lbmFibGUgKGNvbnRleHQpOwor ICAgICAgICAgfQorLSAgICAgICAgcmV0dXJuIGJ1c19pbnB1dF9jb250ZXh0X2lzX2VuYWJsZWQg KGNvbnRleHQpOworKyAgICAgICAgcmV0dXJuIFRSVUU7CisgICAgIH0KKyAgICAgaWYgKGV2ZW50 ID09IGRpc2FibGVfdW5jb25kaXRpb25hbCkgeworICAgICAgICAgZ2Jvb2xlYW4gZW5hYmxlZCA9 IGJ1c19pbnB1dF9jb250ZXh0X2lzX2VuYWJsZWQgKGNvbnRleHQpOworICAgICAgICAgaWYgKGVu YWJsZWQpIHsKKyAgICAgICAgICAgICBidXNfaW5wdXRfY29udGV4dF9kaXNhYmxlIChjb250ZXh0 KTsKKyAgICAgICAgIH0KKy0gICAgICAgIHJldHVybiAhYnVzX2lucHV0X2NvbnRleHRfaXNfZW5h YmxlZCAoY29udGV4dCk7CisrICAgICAgICByZXR1cm4gVFJVRTsKKyAgICAgfQorICAgICBpZiAo ZXZlbnQgPT0gbmV4dCkgeworICAgICAgICAgaWYgKGJ1c19pbnB1dF9jb250ZXh0X2lzX2VuYWJs ZWQgKGNvbnRleHQpKSB7CistLSAKKzEuNy42LjQKKworRnJvbSBlZTk2NmUzMjdjYzNiMWI0YmJh NDAzNzliYzBmYmIzZDQ2YzM4MjM5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQogRnJvbTogZnVq aXdhcmF0IDx0YWthby5mdWppd2FyYTFAZ21haWwuY29tPgotRGF0ZTogVGh1LCAyMCBPY3QgMjAx MSAxMTowMDoyMyArMDkwMAorRGF0ZTogVHVlLCAyNSBPY3QgMjAxMSAxMDozNzoyMiArMDkwMAor U3ViamVjdDogW1BBVENIXSBBZGQgaWJ1c3V0aWwuaCBpbiBpYnVzLmgKKworQlVHPWh0dHA6Ly9j b2RlLmdvb2dsZS5jb20vcC9pYnVzL2lzc3Vlcy9kZXRhaWw/aWQ9MTMzOAorVEVTVD1MaW51eCBk ZXNrdG9wCisKK1JldmlldyBVUkw6IGh0dHA6Ly9jb2RlcmV2aWV3LmFwcHNwb3QuY29tLzUyOTQw NTQKKy0tLQorIHNyYy9pYnVzLmggfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0 aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3NyYy9pYnVzLmggYi9zcmMv aWJ1cy5oCitpbmRleCAwNzY1Nzk5Li5hZGRjNTMxIDEwMDY0NAorLS0tIGEvc3JjL2lidXMuaAor KysrIGIvc3JjL2lidXMuaAorQEAgLTUyLDYgKzUyLDcgQEAKKyAjaW5jbHVkZSA8aWJ1c2NvbmZp Zy5oPgorICNpbmNsdWRlIDxpYnVzY29uZmlnc2VydmljZS5oPgorICNpbmNsdWRlIDxpYnVzcGFu ZWxzZXJ2aWNlLmg+CisrI2luY2x1ZGUgPGlidXN1dGlsLmg+CisgCisgI3VuZGVmIF9fSUJVU19I X0lOU0lERV9fCisgCistLSAKKzEuNy42LjQKKworRnJvbSA5MTBmOGE2NDA5OGQ4OWIwNGM1MDA1 NmY2MjFlYzFhNDlkZDNlN2VhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogZnVqaXdh cmF0IDx0YWthby5mdWppd2FyYTFAZ21haWwuY29tPgorRGF0ZTogVHVlLCAyNSBPY3QgMjAxMSAx MDo1MDozNCArMDkwMAogU3ViamVjdDogW1BBVENIXSBGaXggcHJldmlvdXNfZW5naW5lIHdpdGhv dXQgZ2xvYmFsIGVuZ2luZS4KIAorQlVHPWh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9pYnVzL2lz c3Vlcy9kZXRhaWw/aWQ9MTMzMQorVEVTVD1MaW51eCBkZXNrdG9wCisKK1JldmlldyBVUkw6IGh0 dHA6Ly9jb2RlcmV2aWV3LmFwcHNwb3QuY29tLzUyOTcwNDcKIC0tLQogIGJ1cy9pYnVzaW1wbC5j IHwgICAzMSArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCiAgMSBmaWxlcyBjaGFuZ2Vk LCAxOSBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKQEAgLTgxLDMgKzIwNSwxMjMgQEAg aW5kZXggMTQ5NGY1Zi4uMGE0ZjNmYiAxMDA2NDQKIC0tIAogMS43LjYuNAogCitGcm9tIGNjYTRm ZDg5OTM2MTNhNjk5Mzk2NWMzMTIwMzIzZTQzYzQ2NDdlZjUgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCitGcm9tOiBEYWlraSBVZW5vIDx1ZW5vQHVuaXh1c2VyLm9yZz4KK0RhdGU6IEZyaSwgMjgg T2N0IDIwMTEgMTU6NDI6MDggKzA5MDAKK1N1YmplY3Q6IFtQQVRDSF0gRG9uJ3Qgc2V0IGZvY3Vz IG9uIEdUSyBwYXNzd29yZCBlbnRyeS4KKworRm9yIGFuIG9sZCBidWc6CitodHRwczovL2J1Z3pp bGxhLnJlZGhhdC5jb20vc2hvd19idWcuY2dpP2lkPTQ4NDY0MworSW5wdXQgbWV0aG9kIHNob3Vs ZCBiZSBkaXNhYmxlZCBvbiBwYXNzd29yZCBlbnRyeSBmb3Igc2VjdXJpdHkgcmVhc29uLgorCitC VUc9bm9uZQorVEVTVD1tYW51YWxseSB3aXRoIGd0ay1kZW1vICJFbnRyeSBCdWZmZXIiIGV4YW1w bGUKKworUmV2aWV3IFVSTDogaHR0cDovL2NvZGVyZXZpZXcuYXBwc3BvdC5jb20vNTMxOTA1Mwor LS0tCisgY2xpZW50L2d0azIvaWJ1c2ltY29udGV4dC5jIHwgICAxMyArKysrKysrKysrKysrCisg MSBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitkaWZm IC0tZ2l0IGEvY2xpZW50L2d0azIvaWJ1c2ltY29udGV4dC5jIGIvY2xpZW50L2d0azIvaWJ1c2lt Y29udGV4dC5jCitpbmRleCAzMjdhNWQ5Li5iNmNhMTJlIDEwMDY0NAorLS0tIGEvY2xpZW50L2d0 azIvaWJ1c2ltY29udGV4dC5jCisrKysgYi9jbGllbnQvZ3RrMi9pYnVzaW1jb250ZXh0LmMKK0BA IC03MzQsNiArNzM0LDE5IEBAIGlidXNfaW1fY29udGV4dF9mb2N1c19pbiAoR3RrSU1Db250ZXh0 ICpjb250ZXh0KQorICAgICBpZiAoaWJ1c2ltY29udGV4dC0+aGFzX2ZvY3VzKQorICAgICAgICAg cmV0dXJuOworIAorKyAgICAvKiBkb24ndCBzZXQgZm9jdXMgb24gcGFzc3dvcmQgZW50cnkgKi8K KysgICAgaWYgKGlidXNpbWNvbnRleHQtPmNsaWVudF93aW5kb3cgIT0gTlVMTCkgeworKyAgICAg ICAgR3RrV2lkZ2V0ICp3aWRnZXQ7CisrCisrICAgICAgICBnZGtfd2luZG93X2dldF91c2VyX2Rh dGEgKGlidXNpbWNvbnRleHQtPmNsaWVudF93aW5kb3csCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChncG9pbnRlciAqKSZ3aWRnZXQpOworKworKyAgICAgICAgaWYgKEdUS19J U19FTlRSWSAod2lkZ2V0KSAmJgorKyAgICAgICAgICAgICFndGtfZW50cnlfZ2V0X3Zpc2liaWxp dHkgKEdUS19FTlRSWSAod2lkZ2V0KSkpIHsKKysgICAgICAgICAgICByZXR1cm47CisrICAgICAg ICB9CisrICAgIH0KKysKKyAgICAgaWYgKF9mb2N1c19pbV9jb250ZXh0ICE9IE5VTEwpIHsKKyAg ICAgICAgIGdfYXNzZXJ0IChfZm9jdXNfaW1fY29udGV4dCAhPSBjb250ZXh0KTsKKyAgICAgICAg IGd0a19pbV9jb250ZXh0X2ZvY3VzX291dCAoX2ZvY3VzX2ltX2NvbnRleHQpOworLS0gCisxLjcu Ni40CisKK0Zyb20gZDU3YjU3NWYyYTFiMzNiNjBhZDg0MzEwYTRlNjg1ZTcwNmY4YTU3NCBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IGZ1aml3YXJhdCA8dGFrYW8uZnVqaXdhcmExQGdt YWlsLmNvbT4KK0RhdGU6IEZyaSwgMjggT2N0IDIwMTEgMTM6MDk6MDcgKzA5MDAKK1N1YmplY3Q6 IFtQQVRDSF0gUmVyb3RhdGUgbmV4dC9wcmV2aW91cyBlbmdpbmVzIHdpdGhvdXQgZ2xvYmFsIGVu Z2luZS4KKworLS0tCisgYnVzL2lidXNpbXBsLmMgfCAgIDMzICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygrKSwgMyBkZWxl dGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2J1cy9pYnVzaW1wbC5jIGIvYnVzL2lidXNpbXBsLmMK K2luZGV4IDBhNGYzZmIuLjY4N2Y5MTAgMTAwNjQ0CistLS0gYS9idXMvaWJ1c2ltcGwuYworKysr IGIvYnVzL2lidXNpbXBsLmMKK0BAIC0xMDU2LDcgKzEwNTYsNyBAQCBidXNfaWJ1c19pbXBsX2Nv bnRleHRfcmVxdWVzdF9yb3RhdGVfZW5naW5lX2luX21lbnUgKEJ1c0lCdXNJbXBsICAgICAqaWJ1 cywKKyAgICAgQnVzRW5naW5lUHJveHkgKmVuZ2luZTsKKyAgICAgSUJ1c0VuZ2luZURlc2MgKmRl c2M7CisgICAgIElCdXNFbmdpbmVEZXNjICpuZXh0X2Rlc2MgPSBOVUxMOworLSAgICBHTGlzdCAq cDsKKysgICAgR0xpc3QgKnAgPSBOVUxMOworIAorICAgICBlbmdpbmUgPSBidXNfaW5wdXRfY29u dGV4dF9nZXRfZW5naW5lIChjb250ZXh0KTsKKyAgICAgaWYgKGVuZ2luZSA9PSBOVUxMKSB7CitA QCAtMTA3NCwyMSArMTA3NCw0OCBAQCBidXNfaWJ1c19pbXBsX2NvbnRleHRfcmVxdWVzdF9yb3Rh dGVfZW5naW5lX2luX21lbnUgKEJ1c0lCdXNJbXBsICAgICAqaWJ1cywKKyAgICAgaWYgKHAgIT0g TlVMTCkgeworICAgICAgICAgaWYgKGlzX25leHQpIHsKKyAgICAgICAgICAgICBwID0gcC0+bmV4 dDsKKy0gICAgICAgIH0gZWxzZSBpZiAocC0+cHJldikgeworKyAgICAgICAgfSBlbHNlIHsKKyAg ICAgICAgICAgICBwID0gcC0+cHJldjsKKyAgICAgICAgIH0KKyAgICAgfQorKworKyAgICAvKiBS b3RhdGUgcmVnaXN0ZXJfZW5naW5lX2xpc3QgYW5kIGVuZ2luZV9saXN0LiAqLworKyAgICBpZiAo cCA9PSBOVUxMICYmIGlzX25leHQgJiYKKysgICAgICAgIGdfbGlzdF9maW5kIChpYnVzLT5yZWdp c3Rlcl9lbmdpbmVfbGlzdCwgZGVzYykgIT0gTlVMTCkgeworKyAgICAgICAgcCA9IGlidXMtPmVu Z2luZV9saXN0OworKyAgICB9CisrICAgIGVsc2UgaWYgKHAgPT0gTlVMTCAmJiAhaXNfbmV4dCAm JgorKyAgICAgICAgICAgICBnX2xpc3RfZmluZCAoaWJ1cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3Qs IGRlc2MpICE9IE5VTEwgJiYKKysgICAgICAgICAgICAgaWJ1cy0+ZW5naW5lX2xpc3QgIT0gTlVM TCkgeworKyAgICAgICAgcCA9IGdfbGlzdF9sYXN0IChpYnVzLT5lbmdpbmVfbGlzdCk7CisrICAg IH0KKysKKyAgICAgaWYgKHAgPT0gTlVMTCkgeworICAgICAgICAgcCA9IGdfbGlzdF9maW5kIChp YnVzLT5lbmdpbmVfbGlzdCwgZGVzYyk7CisgICAgICAgICBpZiAocCAhPSBOVUxMKSB7CisgICAg ICAgICAgICAgaWYgKGlzX25leHQpIHsKKyAgICAgICAgICAgICAgICAgcCA9IHAtPm5leHQ7Cist ICAgICAgICAgICAgfSBlbHNlIGlmIChwLT5wcmV2KSB7CisrICAgICAgICAgICAgfSBlbHNlIHsK KyAgICAgICAgICAgICAgICAgcCA9IHAtPnByZXY7CisgICAgICAgICAgICAgfQorICAgICAgICAg fQorICAgICB9CisgCisrICAgIGlmIChwID09IE5VTEwgJiYgIWlzX25leHQgJiYKKysgICAgICAg IGdfbGlzdF9maW5kIChpYnVzLT5lbmdpbmVfbGlzdCwgZGVzYykgIT0gTlVMTCkgeworKyAgICAg ICAgcCA9IGdfbGlzdF9sYXN0IChpYnVzLT5yZWdpc3Rlcl9lbmdpbmVfbGlzdCk7CisrICAgICAg ICBpZiAocCA9PSBOVUxMKSB7CisrICAgICAgICAgICAgcCA9IGdfbGlzdF9sYXN0IChpYnVzLT5l bmdpbmVfbGlzdCk7CisrICAgICAgICB9CisrICAgIH0KKysgICAgZWxzZSBpZiAocCA9PSBOVUxM ICYmIGlzX25leHQgJiYKKysgICAgICAgICAgICAgZ19saXN0X2ZpbmQgKGlidXMtPmVuZ2luZV9s aXN0LCBkZXNjKSAhPSBOVUxMKSB7CisrICAgICAgICBwID0gaWJ1cy0+cmVnaXN0ZXJfZW5naW5l X2xpc3Q7CisrICAgICAgICBpZiAocCA9PSBOVUxMKSB7CisrICAgICAgICAgICAgcCA9IGlidXMt PmVuZ2luZV9saXN0OworKyAgICAgICAgfQorKyAgICB9CisrCisgICAgIGlmIChwICE9IE5VTEwp IHsKKyAgICAgICAgIG5leHRfZGVzYyA9IChJQnVzRW5naW5lRGVzYyopIHAtPmRhdGE7CisgICAg IH0KKy0tIAorMS43LjYuNAorCgpkaWZmIC0tZ2l0IGEvaWJ1cy14eC1icmlkZ2UtaG90a2V5LnBh dGNoIGIvaWJ1cy14eC1icmlkZ2UtaG90a2V5LnBhdGNoCmluZGV4IDNkNThhMTkuLmMwNGMxZTQg MTAwNjQ0Ci0tLSBhL2lidXMteHgtYnJpZGdlLWhvdGtleS5wYXRjaAorKysgYi9pYnVzLXh4LWJy aWRnZS1ob3RrZXkucGF0Y2gKQEAgLTEsMzggKzEsNDAgQEAKLUZyb20gNTEzNmU0MTM2ZTM4Mjcx ZGExOTVkYTc2ZTEzNzczMDhkYmMyZWQ2NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb20g MGM3NTg5Zjg0ZDRhMGU4NzIzZjdmY2UzNzk4MWQxNzdhMTFkYTRmNiBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKIEZyb206IGZ1aml3YXJhdCA8dGFrYW8uZnVqaXdhcmExQGdtYWlsLmNvbT4KLURh dGU6IEZyaSwgMTIgQXVnIDIwMTEgMTY6NDI6NTIgKzA5MDAKK0RhdGU6IEZyaSwgMjggT2N0IDIw MTEgMTU6MzA6MTIgKzA5MDAKIFN1YmplY3Q6IFtQQVRDSF0gQWRkIGEgYnJpZGdlIGhvdGtleSB3 aGljaCB1c2UgcHJldi1uZXh0IGVuZ2luZXMgaW5zdGVhZAogIG9mIG9uLW9mZi4KIAogLS0tCiAg YnVzL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICB8ICAgMjAgKy0KLSBidXMvaWJ1c2ltcGwu YyAgICAgICAgICAgICAgICAgIHwgIDUwMSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLS0KLSBidXMvaW5wdXRjb250ZXh0LmMgICAgICAgICAgICAgIHwgICAzOSArKysKKyBi dXMvaWJ1c2ltcGwuYyAgICAgICAgICAgICAgICAgIHwgIDU3MSArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKy0tLS0KKyBidXMvaW5wdXRjb250ZXh0LmMgICAgICAgICAgICAgIHwg ICA4MSArKysrKysKICBidXMvaW5wdXRjb250ZXh0LmggICAgICAgICAgICAgIHwgICAyMiArKwog IGJ1cy9yZWdpc3RyeS5jICAgICAgICAgICAgICAgICAgfCAgIDYxICsrKysrCiAgYnVzL3JlZ2lz dHJ5LmggICAgICAgICAgICAgICAgICB8ICAgMTAgKwogIGNvbmZpZ3VyZS5hYyAgICAgICAgICAg ICAgICAgICAgfCAgIDMxICsrKwogIGRhdGEvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgfCAg ICA2ICstCi0gZGF0YS9pYnVzLnNjaGVtYXMuaW4gICAgICAgICAgICB8ICAyODcgLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQotIGRhdGEvaWJ1cy5zY2hlbWFzLmluLmluICAgICAgICAgfCAgMzAwICsr KysrKysrKysrKysrKysrKysrKysrCisgZGF0YS9pYnVzLnNjaGVtYXMuaW4gICAgICAgICAgICB8 ICAyODcgLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkYXRhL2lidXMuc2NoZW1hcy5pbi5pbiAgICAg ICAgIHwgIDMwMCArKysrKysrKysrKysrKysrKysrKwogIGlidXMvX2NvbmZpZy5weS5pbiAgICAg ICAgICAgICAgfCAgICA2ICsKLSBpYnVzL2lucHV0Y29udGV4dC5weSAgICAgICAgICAgIHwgICAx NCArLQotIGlidXMvaW50ZXJmYWNlL2lpbnB1dGNvbnRleHQucHkgfCAgICA0ICstCisgaWJ1cy9p bnB1dGNvbnRleHQucHkgICAgICAgICAgICB8ICAgMTcgKystCisgaWJ1cy9pbnRlcmZhY2UvaWlu cHV0Y29udGV4dC5weSB8ICAgIDcgKy0KICBpYnVzL3hrYnhtbC5weS5pbiAgICAgICAgICAgICAg IHwgICAgNCArCiAgc2V0dXAvZW5naW5lY29tYm9ib3gucHkgICAgICAgICB8ICAgIDMgKwogIHNl dHVwL2VuZ2luZXRyZWV2aWV3LnB5ICAgICAgICAgfCAgICA4ICstCiAgc2V0dXAvbWFpbi5weSAg ICAgICAgICAgICAgICAgICB8ICAgMjQgKysKLSBzZXR1cC9zZXR1cC51aSAgICAgICAgICAgICAg ICAgIHwgICA1NSArKysrKy0KKyBzZXR1cC9zZXR1cC51aSAgICAgICAgICAgICAgICAgIHwgICA1 NSArKysrLQogIHNyYy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgfCAgIDE4ICstCiAgc3Jj L2lidXNob3RrZXkuYyAgICAgICAgICAgICAgICB8ICAgMTEgKwogIHNyYy9pYnVzaG90a2V5Lmgg ICAgICAgICAgICAgICAgfCAgIDExICsKKyBzcmMvaWJ1c2lucHV0Y29udGV4dC5jICAgICAgICAg IHwgICAyOCArKworIHNyYy9pYnVzaW5wdXRjb250ZXh0LmggICAgICAgICAgfCAgIDEyICsKICBz cmMvaWJ1c3V0aWwuYyAgICAgICAgICAgICAgICAgIHwgICAxMiArCiAgc3JjL2lidXN1dGlsLmgg ICAgICAgICAgICAgICAgICB8ICAgMTQgKwotIHVpL2d0ay9wYW5lbC5weSAgICAgICAgICAgICAg ICAgfCAgMjcxICsrKysrKysrKysrKysrKysrKysrLS0KKyB1aS9ndGsvcGFuZWwucHkgICAgICAg ICAgICAgICAgIHwgIDMwNSArKysrKysrKysrKysrKysrKysrLS0KICB4a2IvTWFrZWZpbGUuYW0g ICAgICAgICAgICAgICAgIHwgICAgMiArCi0geGtiL2lidXMtZW5naW5lLXhrYi1tYWluLmMgICAg ICB8ICAgMTkgKysKKyB4a2IvaWJ1cy1lbmdpbmUteGtiLW1haW4uYyAgICAgIHwgICAxNiArKwog IHhrYi94a2J4bWwuYyAgICAgICAgICAgICAgICAgICAgfCAgIDEwICstCi0gMjggZmlsZXMgY2hh bmdlZCwgMTM3NCBpbnNlcnRpb25zKCspLCAzOTEgZGVsZXRpb25zKC0pCisgMjkgZmlsZXMgY2hh bmdlZCwgMTU2MSBpbnNlcnRpb25zKCspLCAzOTEgZGVsZXRpb25zKC0pCiAgZGVsZXRlIG1vZGUg MTAwNjQ0IGRhdGEvaWJ1cy5zY2hlbWFzLmluCiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRhdGEvaWJ1 cy5zY2hlbWFzLmluLmluCiAKQEAgLTg5LDE4ICs5MSwxOSBAQCBpbmRleCA4NTM0NjVjLi4wMDg2 NGFjIDEwMDY0NAogICNpbmNsdWRlICJ0eXBlcy5oIgogICNpbmNsdWRlICJpYnVzaW1wbC5oIgog ICNpbmNsdWRlICJkYnVzaW1wbC5oIgotQEAgLTc5LDYgKzg0LDEwIEBAIHN0cnVjdCBfQnVzSUJ1 c0ltcGwgeworQEAgLTc5LDYgKzg0LDExIEBAIHN0cnVjdCBfQnVzSUJ1c0ltcGwgewogICAgICAv KiBlbmdpbmUtc3BlY2lmaWMgaG90a2V5cyAqLwogICAgICBJQnVzSG90a2V5UHJvZmlsZSAqZW5n aW5lc19ob3RrZXlfcHJvZmlsZTsKICAgICAgR0hhc2hUYWJsZSAgICAgICpob3RrZXlfdG9fZW5n aW5lc19tYXA7CiArCiArI2lmIFVTRV9CUklER0VfSE9US0VZCiArICAgIElCdXNFbmdpbmVEZXNj ICpwcmV2X2hvdGtleV9lbmdpbmU7CisrICAgIGd1aW50ICAgICAgICAgICB4a2JfZ3JvdXBfbGVu Z3RoOwogKyNlbmRpZgogIH07CiAgCiAgc3RydWN0IF9CdXNJQnVzSW1wbENsYXNzIHsKLUBAIC05 OSw2ICsxMDgsOCBAQCBlbnVtIHsKK0BAIC05OSw2ICsxMDksOCBAQCBlbnVtIHsKICBzdGF0aWMg Z3VpbnQgICAgICAgICAgICBfc2lnbmFsc1tMQVNUX1NJR05BTF0gPSB7IDAgfTsKICAqLwogIApA QCAtMTA5LDcgKzExMiw3IEBAIGluZGV4IDg1MzQ2NWMuLjAwODY0YWMgMTAwNjQ0CiAgLyogZnVu Y3Rpb25zIHByb3RvdHlwZSAqLwogIHN0YXRpYyB2b2lkICAgICAgYnVzX2lidXNfaW1wbF9kZXN0 cm95ICAgICAgICAgICAoQnVzSUJ1c0ltcGwgICAgICAgICppYnVzKTsKICBzdGF0aWMgdm9pZCAg ICAgIGJ1c19pYnVzX2ltcGxfc2VydmljZV9tZXRob2RfY2FsbAotQEAgLTI4NSw2ICsyOTYsMTEy IEBAIF9wYW5lbF9kZXN0cm95X2NiIChCdXNQYW5lbFByb3h5ICpwYW5lbCwKK0BAIC0yODUsNiAr Mjk3LDExMiBAQCBfcGFuZWxfZGVzdHJveV9jYiAoQnVzUGFuZWxQcm94eSAqcGFuZWwsCiAgICAg IGdfb2JqZWN0X3VucmVmIChwYW5lbCk7CiAgfQogIApAQCAtMjIyLDcgKzIyNSw3IEBAIGluZGV4 IDg1MzQ2NWMuLjAwODY0YWMgMTAwNjQ0CiAgc3RhdGljIHZvaWQKICBfY29uZmlnX3NldF92YWx1 ZV9kb25lIChHT2JqZWN0ICAgICAgKm9iamVjdCwKICAgICAgICAgICAgICAgICAgICAgICAgICBH QXN5bmNSZXN1bHQgKnJlcywKLUBAIC01NjIsNiArNjc5LDY3IEBAIGJ1c19pYnVzX2ltcGxfc2V0 X2hvdGtleSAoQnVzSUJ1c0ltcGwgKmkKK0BAIC01NzIsNiArNjkwLDY3IEBAIGJ1c19pYnVzX2lt cGxfc2V0X2hvdGtleSAoQnVzSUJ1c0ltcGwgKmkKICAKICB9CiAgCkBAIC0yOTAsNyArMjkzLDcg QEAgaW5kZXggODUzNDY1Yy4uMDA4NjRhYyAxMDA2NDQKICAvKioKICAgKiBidXNfaWJ1c19pbXBs X3NldF90cmlnZ2VyOgogICAqCi1AQCAtNTczLDcgKzc1MSwxNSBAQCBidXNfaWJ1c19pbXBsX3Nl dF90cmlnZ2VyIChCdXNJQnVzSW1wbCAqCitAQCAtNTgzLDcgKzc2MiwxNSBAQCBidXNfaWJ1c19p bXBsX3NldF90cmlnZ2VyIChCdXNJQnVzSW1wbCAqCiAgewogICAgICBHUXVhcmsgaG90a2V5ID0g Z19xdWFya19mcm9tX3N0YXRpY19zdHJpbmcgKCJ0cmlnZ2VyIik7CiAgICAgIGlmICh2YWx1ZSAh PSBOVUxMKSB7CkBAIC0zMDYsNyArMzA5LDcgQEAgaW5kZXggODUzNDY1Yy4uMDA4NjRhYyAxMDA2 NDQKICAgICAgfQogICNpZm5kZWYgT1NfQ0hST01FT1MKICAgICAgZWxzZSB7Ci1AQCAtNjM5LDYg KzgyNSw3MiBAQCBidXNfaWJ1c19pbXBsX3NldF9wcmV2aW91c19lbmdpbmUgKEJ1c0lCCitAQCAt NjQ5LDYgKzgzNiw3MiBAQCBidXNfaWJ1c19pbXBsX3NldF9wcmV2aW91c19lbmdpbmUgKEJ1c0lC CiAgICAgIGJ1c19pYnVzX2ltcGxfc2V0X2hvdGtleSAoaWJ1cywgaG90a2V5LCB2YWx1ZSk7CiAg fQogIApAQCAtMzc5LDcgKzM4Miw3IEBAIGluZGV4IDg1MzQ2NWMuLjAwODY0YWMgMTAwNjQ0CiAg LyoqCiAgICogYnVzX2lidXNfaW1wbF9zZXRfcHJlbG9hZF9lbmdpbmVzOgogICAqCi1AQCAtNjU4 LDYgKzkxMCw5IEBAIGJ1c19pYnVzX2ltcGxfc2V0X3ByZWxvYWRfZW5naW5lcyAoQnVzSUIKK0BA IC02NjgsNiArOTIxLDkgQEAgYnVzX2lidXNfaW1wbF9zZXRfcHJlbG9hZF9lbmdpbmVzIChCdXNJ QgogICAgICAgICAgICAgIF9zZXRfcHJlbG9hZF9lbmdpbmVzIChpYnVzLCB2YWx1ZSk7CiAgICAg ICAgICB9CiAgICAgIH0KQEAgLTM4OSw3ICszOTIsNyBAQCBpbmRleCA4NTM0NjVjLi4wMDg2NGFj IDEwMDY0NAogICNlbHNlCiAgICAgIF9zZXRfcHJlbG9hZF9lbmdpbmVzIChpYnVzLCB2YWx1ZSk7 CiAgI2VuZGlmCi1AQCAtMTIxNiw3ICsxNDcxLDcxIEBAIF9jb250ZXh0X3JlcXVlc3RfZW5naW5l X2NiIChCdXNJbnB1dENvbnQKK0BAIC0xMjI2LDcgKzE0ODIsNzMgQEAgX2NvbnRleHRfcmVxdWVz dF9lbmdpbmVfY2IgKEJ1c0lucHV0Q29udAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBnY2hhciAgICAgKmVuZ2luZV9uYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBCdXNJQnVzSW1wbCAgICAgKmlidXMpCiAgewpAQCAtNDE0LDcgKzQxNyw5IEBAIGluZGV4IDg1 MzQ2NWMuLjAwODY0YWMgMTAwNjQ0CiArICAgICAgICB9CiArICAgIH0KICsKLSsgICAgaWYgKGN1 cnJlbnRfZGVzYykgeworKyAgICBpZiAoY3VycmVudF9kZXNjICYmIGRlc2MgJiYKKysgICAgICAg IGdfc3RyY21wMCAoaWJ1c19lbmdpbmVfZGVzY19nZXRfbmFtZSAoY3VycmVudF9kZXNjKSwKKysg ICAgICAgICAgICAgICAgICAgaWJ1c19lbmdpbmVfZGVzY19nZXRfbmFtZSAoZGVzYykpICE9IDAp IHsKICsgICAgICAgIGlmIChjb250ZXh0KSB7CiArICAgICAgICAgICAgYnVzX2lucHV0X2NvbnRl eHRfc2V0X3ByZXZfaG90a2V5X2VuZ2luZSAoY29udGV4dCwgY3VycmVudF9kZXNjKTsKICsgICAg ICAgIH0gZWxzZSB7CkBAIC00NjIsNyArNDY3LDcgQEAgaW5kZXggODUzNDY1Yy4uMDA4NjRhYyAx MDA2NDQKICB9CiAgCiAgLyoqCi1AQCAtMTI1NSw4ICsxNTc0LDEzIEBAIGJ1c19pYnVzX2ltcGxf Z2V0X2VuZ2luZV9kZXNjIChCdXNJQnVzSW0KK0BAIC0xMjY1LDggKzE1ODcsMTMgQEAgYnVzX2li dXNfaW1wbF9nZXRfZW5naW5lX2Rlc2MgKEJ1c0lCdXNJbQogICAgICAgICAgaWYgKCFkZXNjKSB7 CiAgICAgICAgICAgICAgaWYgKGlidXMtPnJlZ2lzdGVyX2VuZ2luZV9saXN0KSB7CiAgICAgICAg ICAgICAgICAgIGRlc2MgPSAoSUJ1c0VuZ2luZURlc2MgKikgaWJ1cy0+cmVnaXN0ZXJfZW5naW5l X2xpc3QtPmRhdGE7CkBAIC00NzcsNyArNDgyLDkyIEBAIGluZGV4IDg1MzQ2NWMuLjAwODY0YWMg MTAwNjQ0CiAgICAgICAgICAgICAgICAgIGRlc2MgPSAoSUJ1c0VuZ2luZURlc2MgKikgaWJ1cy0+ ZW5naW5lX2xpc3QtPmRhdGE7CiAgICAgICAgICAgICAgfQogICAgICAgICAgfQotQEAgLTE0MDcs NiArMTczMSw5IEBAIGJ1c19pYnVzX2ltcGxfc2V0X2ZvY3VzZWRfY29udGV4dCAoQnVzSUJ1c0lt cGwgICAgICppYnVzLAorQEAgLTEzMTEsOSArMTYzOCwyMCBAQCBidXNfaWJ1c19pbXBsX2NvbnRl eHRfcmVxdWVzdF9yb3RhdGVfZW5nCisgICAgIGRlc2MgPSBidXNfZW5naW5lX3Byb3h5X2dldF9k ZXNjIChlbmdpbmUpOworIAorICAgICBwID0gZ19saXN0X2ZpbmQgKGlidXMtPnJlZ2lzdGVyX2Vu Z2luZV9saXN0LCBkZXNjKTsKKysjaWYgVVNFX0JSSURHRV9IT1RLRVkKKysgICAgaWYgKCF1c2Vf YnJpZGdlX2hvdGtleSAoaWJ1cykpIHsKKysgICAgICAgIHAgPSBOVUxMOworKyAgICB9CisrI2Vu ZGlmCisgICAgIGlmIChwICE9IE5VTEwpIHsKKyAgICAgICAgIGlmIChpc19uZXh0KSB7CisgICAg ICAgICAgICAgcCA9IHAtPm5leHQ7CisrI2lmIFVTRV9CUklER0VfSE9US0VZCisrICAgICAgICAg ICAgaWYgKHAgJiYgZ19saXN0X2xlbmd0aCAoaWJ1cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3QpIC0K KysgICAgICAgICAgICAgICAgICAgIGdfbGlzdF9sZW5ndGggKHApID49IGlidXMtPnhrYl9ncm91 cF9sZW5ndGgpIHsKKysgICAgICAgICAgICAgICAgcCA9IE5VTEw7CisrICAgICAgICAgICAgfQor KyNlbmRpZgorICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICBwID0gcC0+cHJldjsKKyAg ICAgICAgIH0KK0BAIC0xMzQ0LDYgKzE2ODIsMTUgQEAgYnVzX2lidXNfaW1wbF9jb250ZXh0X3Jl cXVlc3Rfcm90YXRlX2VuZworICAgICBpZiAocCA9PSBOVUxMICYmICFpc19uZXh0ICYmCisgICAg ICAgICBnX2xpc3RfZmluZCAoaWJ1cy0+ZW5naW5lX2xpc3QsIGRlc2MpICE9IE5VTEwpIHsKKyAg ICAgICAgIHAgPSBnX2xpc3RfbGFzdCAoaWJ1cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3QpOworKyNp ZiBVU0VfQlJJREdFX0hPVEtFWQorKyAgICAgICAgaWYgKCF1c2VfYnJpZGdlX2hvdGtleSAoaWJ1 cykpIHsKKysgICAgICAgICAgICBwID0gTlVMTDsKKysgICAgICAgIH0KKysgICAgICAgIGVsc2Ug aWYgKGlidXMtPnhrYl9ncm91cF9sZW5ndGggPiAwKSB7CisrICAgICAgICAgICAgcCA9IGdfbGlz dF9udGggKGlidXMtPnJlZ2lzdGVyX2VuZ2luZV9saXN0LAorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICBpYnVzLT54a2JfZ3JvdXBfbGVuZ3RoIC0gMSk7CisrICAgICAgICB9CisrI2VuZGlm CisgICAgICAgICBpZiAocCA9PSBOVUxMKSB7CisgICAgICAgICAgICAgcCA9IGdfbGlzdF9sYXN0 IChpYnVzLT5lbmdpbmVfbGlzdCk7CisgICAgICAgICB9CitAQCAtMTM1MSw2ICsxNjk4LDExIEBA IGJ1c19pYnVzX2ltcGxfY29udGV4dF9yZXF1ZXN0X3JvdGF0ZV9lbmcKKyAgICAgZWxzZSBpZiAo cCA9PSBOVUxMICYmIGlzX25leHQgJiYKKyAgICAgICAgICAgICAgZ19saXN0X2ZpbmQgKGlidXMt PmVuZ2luZV9saXN0LCBkZXNjKSAhPSBOVUxMKSB7CisgICAgICAgICBwID0gaWJ1cy0+cmVnaXN0 ZXJfZW5naW5lX2xpc3Q7CisrI2lmIFVTRV9CUklER0VfSE9US0VZCisrICAgICAgICBpZiAoIXVz ZV9icmlkZ2VfaG90a2V5IChpYnVzKSkgeworKyAgICAgICAgICAgIHAgPSBOVUxMOworKyAgICAg ICAgfQorKyNlbmRpZgorICAgICAgICAgaWYgKHAgPT0gTlVMTCkgeworICAgICAgICAgICAgIHAg PSBpYnVzLT5lbmdpbmVfbGlzdDsKKyAgICAgICAgIH0KK0BAIC0xMzYwLDE0ICsxNzEyLDI1IEBA IGJ1c19pYnVzX2ltcGxfY29udGV4dF9yZXF1ZXN0X3JvdGF0ZV9lbmcKKyAgICAgICAgIG5leHRf ZGVzYyA9IChJQnVzRW5naW5lRGVzYyopIHAtPmRhdGE7CisgICAgIH0KKyAgICAgZWxzZSB7Cisr I2lmIFVTRV9CUklER0VfSE9US0VZCisrICAgICAgICBpZiAodXNlX2JyaWRnZV9ob3RrZXkgKGli dXMpICYmIGlidXMtPnJlZ2lzdGVyX2VuZ2luZV9saXN0KSB7CisrICAgICAgICAgICAgbmV4dF9k ZXNjID0gKElCdXNFbmdpbmVEZXNjICopIGlidXMtPnJlZ2lzdGVyX2VuZ2luZV9saXN0LT5kYXRh OworKyAgICAgICAgfQorKyNlbHNlCisgICAgICAgICBpZiAoaWJ1cy0+cmVnaXN0ZXJfZW5naW5l X2xpc3QpIHsKKyAgICAgICAgICAgICBuZXh0X2Rlc2MgPSAoSUJ1c0VuZ2luZURlc2MgKikgaWJ1 cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3QtPmRhdGE7CisgICAgICAgICB9CisrI2VuZGlmCisgICAg ICAgICBlbHNlIGlmIChpYnVzLT5lbmdpbmVfbGlzdCkgeworICAgICAgICAgICAgIG5leHRfZGVz YyA9IChJQnVzRW5naW5lRGVzYyAqKSBpYnVzLT5lbmdpbmVfbGlzdC0+ZGF0YTsKKyAgICAgICAg IH0KKyAgICAgfQorIAorKyNpZiBVU0VfQlJJREdFX0hPVEtFWQorKyAgICBpZiAodXNlX2JyaWRn ZV9ob3RrZXkgKGlidXMpKSB7CisrICAgICAgICBidXNfaW5wdXRfY29udGV4dF9zZXRfcHJldl9o b3RrZXlfZW5naW5lIChjb250ZXh0LCBkZXNjKTsKKysgICAgfQorKyNlbmRpZgorICAgICBidXNf aWJ1c19pbXBsX3NldF9jb250ZXh0X2VuZ2luZV9mcm9tX2Rlc2MgKGlidXMsIGNvbnRleHQsIG5l eHRfZGVzYyk7CisgfQorIAorQEAgLTEzODksNyArMTc1Miw5IEBAIGJ1c19pYnVzX2ltcGxfY29u dGV4dF9yZXF1ZXN0X3ByZXZpb3VzX2UKKyAgICAgICAgIGlmICghaWJ1cy0+Z2xvYmFsX3ByZXZp b3VzX2VuZ2luZV9uYW1lKSB7CisgICAgICAgICAgICAgaWJ1cy0+Z2xvYmFsX3ByZXZpb3VzX2Vu Z2luZV9uYW1lID0gYnVzX2lidXNfaW1wbF9sb2FkX2dsb2JhbF9wcmV2aW91c19lbmdpbmVfbmFt ZV9mcm9tX2NvbmZpZyAoaWJ1cyk7CisgICAgICAgICB9CisrI2lmIDAKKyAgICAgICAgIGVuZ2lu ZV9uYW1lID0gaWJ1cy0+Z2xvYmFsX3ByZXZpb3VzX2VuZ2luZV9uYW1lOworKyNlbmRpZgorICAg ICAgICAgaWYgKGVuZ2luZV9uYW1lICE9IE5VTEwpIHsKKyAgICAgICAgICAgICAvKiBJZiB0aGUg cHJldmlvdXMgZW5naW5lIGlzIHJlbW92ZWQgZnJvbSB0aGUgZW5naW5lIGxpc3Qgb3IgdGhlCisg ICAgICAgICAgICAgICAgY3VycmVudCBlbmdpbmUgYW5kIHRoZSBwcmV2aW91cyBlbmdpbmUgYXJl IHRoZSBzYW1lIG9uZSwgZm9yY2UKK0BAIC0xNDUwLDYgKzE4MTUsOSBAQCBidXNfaWJ1c19pbXBs X3NldF9mb2N1c2VkX2NvbnRleHQgKEJ1c0lCCiAgCiAgICAgIEJ1c0VuZ2luZVByb3h5ICplbmdp bmUgPSBOVUxMOwogICAgICBnYm9vbGVhbiBpc19lbmFibGVkID0gRkFMU0U7CkBAIC00ODcsNyAr NTc3LDcgQEAgaW5kZXggODUzNDY1Yy4uMDA4NjRhYyAxMDA2NDQKICAKICAgICAgaWYgKGlidXMt PmZvY3VzZWRfY29udGV4dCkgewogICAgICAgICAgaWYgKGlidXMtPnVzZV9nbG9iYWxfZW5naW5l KSB7Ci1AQCAtMTMzNiw2ICsxNzQxLDkgQEAgYnVzX2lidXNfaW1wbF9zZXRfZm9jdXNlZF9jb250 ZXh0IChCdXNJQnVzSW1wbCAgICAgKmlidXMsCitAQCAtMTQ1Nyw2ICsxODI1LDkgQEAgYnVzX2li dXNfaW1wbF9zZXRfZm9jdXNlZF9jb250ZXh0IChCdXNJQgogICAgICAgICAgICAgIGVuZ2luZSA9 IGJ1c19pbnB1dF9jb250ZXh0X2dldF9lbmdpbmUgKGlidXMtPmZvY3VzZWRfY29udGV4dCk7CiAg ICAgICAgICAgICAgaWYgKGVuZ2luZSkgewogICAgICAgICAgICAgICAgICBpc19lbmFibGVkID0g YnVzX2lucHV0X2NvbnRleHRfaXNfZW5hYmxlZCAoaWJ1cy0+Zm9jdXNlZF9jb250ZXh0KTsKQEAg LTQ5Nyw3ICs1ODcsNyBAQCBpbmRleCA4NTM0NjVjLi4wMDg2NGFjIDEwMDY0NAogICAgICAgICAg ICAgICAgICBnX29iamVjdF9yZWYgKGVuZ2luZSk7CiAgICAgICAgICAgICAgICAgIGJ1c19pbnB1 dF9jb250ZXh0X3NldF9lbmdpbmUgKGlidXMtPmZvY3VzZWRfY29udGV4dCwgTlVMTCk7CiAgICAg ICAgICAgICAgfQotQEAgLTEzNjAsNiArMTc2OCw5IEBAIGJ1c19pYnVzX2ltcGxfc2V0X2ZvY3Vz ZWRfY29udGV4dCAoQnVzSUJ1c0ltcGwgICAgICppYnVzLAorQEAgLTE0ODEsNiArMTg1Miw5IEBA IGJ1c19pYnVzX2ltcGxfc2V0X2ZvY3VzZWRfY29udGV4dCAoQnVzSUIKICAgICAgICAgICAgICBp ZiAoaXNfZW5hYmxlZCkgewogICAgICAgICAgICAgICAgICBidXNfaW5wdXRfY29udGV4dF9lbmFi bGUgKGNvbnRleHQpOwogICAgICAgICAgICAgIH0KQEAgLTUwNyw3ICs1OTcsNDEgQEAgaW5kZXgg ODUzNDY1Yy4uMDA4NjRhYyAxMDA2NDQKICAgICAgICAgICAgICBnX29iamVjdF91bnJlZiAoZW5n aW5lKTsKICAgICAgICAgIH0KICAKLUBAIC0yMjY3LDYgKzI1OTEsOSBAQCBidXNfaWJ1c19pbXBs X2ZpbHRlcl9rZXlib2FyZF9zaG9ydGN1dHMgCitAQCAtMTcxMCw2ICsyMDg0LDI1IEBAIF9jb250 ZXh0X2Rpc2FibGVkX2NiIChCdXNJbnB1dENvbnRleHQgICAKKyB9CisgCisgLyoqCisrICogX2Nv bnRleHRfc2V0X3hrYl9lbmdpbmVzX2NiOgorKyAqCisrICogQSBjYWxsYmFjayBmdW5jdGlvbiB0 byBiZSBjYWxsZWQgd2hlbiB0aGUgInNldC14a2ItZW5naW5lcyIgc2lnbmFsIGlzIHNlbnQgdG8g dGhlIGNvbnRleHQuCisrICovCisrc3RhdGljIHZvaWQKKytfY29udGV4dF9zZXRfeGtiX2VuZ2lu ZXNfY2IgKEJ1c0lucHV0Q29udGV4dCAgICAqY29udGV4dCwKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEdMaXN0ICAgICAgICAgICAgICAqbGlzdCwKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEJ1c0lCdXNJbXBsICAgICAgICAqaWJ1cykKKyt7CisrICAgIGlmIChsaXN0ID09 IE5VTEwpIHsKKysgICAgICAgIHJldHVybjsKKysgICAgfQorKworKyNpZiBVU0VfQlJJREdFX0hP VEtFWQorKyAgICBpYnVzLT54a2JfZ3JvdXBfbGVuZ3RoID0gZ19saXN0X2xlbmd0aCAobGlzdCk7 CisrI2VuZGlmCisrfQorKworKy8qKgorICAqIGJ1c19pYnVzX2ltcGxfY3JlYXRlX2lucHV0X2Nv bnRleHQ6CisgICogQGNsaWVudDogQSBuYW1lIG9mIGEgY2xpZW50LiBlLmcuICJndGstaW0iCisg ICogQHJldHVybnM6IEEgQnVzSW5wdXRDb250ZXh0IG9iamVjdC4KK0BAIC0xNzM3LDYgKzIxMzAs NyBAQCBidXNfaWJ1c19pbXBsX2NyZWF0ZV9pbnB1dF9jb250ZXh0IChCdXNJCisgICAgICAgICB7 ICJkZXN0cm95IiwgICAgICAgIEdfQ0FMTEJBQ0sgKF9jb250ZXh0X2Rlc3Ryb3lfY2IpIH0sCisg ICAgICAgICB7ICJlbmFibGVkIiwgICAgICAgIEdfQ0FMTEJBQ0sgKF9jb250ZXh0X2VuYWJsZWRf Y2IpIH0sCisgICAgICAgICB7ICJkaXNhYmxlZCIsICAgICAgIEdfQ0FMTEJBQ0sgKF9jb250ZXh0 X2Rpc2FibGVkX2NiKSB9LAorKyAgICAgICAgeyAic2V0LXhrYi1lbmdpbmVzIiwgR19DQUxMQkFD SyAoX2NvbnRleHRfc2V0X3hrYl9lbmdpbmVzX2NiKSB9LAorICAgICB9OworIAorICAgICBnaW50 IGk7CitAQCAtMjMxNCw2ICsyNzA4LDkgQEAgYnVzX2lidXNfaW1wbF9maWx0ZXJfa2V5Ym9hcmRf c2hvcnRjdXRzIAogIAogICAgICBHUXVhcmsgZXZlbnQ7CiAgICAgIEdMaXN0ICplbmdpbmVfbGlz dDsKQEAgLTUxNyw3ICs2NDEsNyBAQCBpbmRleCA4NTM0NjVjLi4wMDg2NGFjIDEwMDY0NAogIAog ICAgICBpZiAodHJpZ2dlciA9PSAwKSB7CiAgICAgICAgICB0cmlnZ2VyID0gZ19xdWFya19mcm9t X3N0YXRpY19zdHJpbmcgKCJ0cmlnZ2VyIik7Ci1AQCAtMjMzMSw2ICsyNjU4LDEyIEBAIGJ1c19p YnVzX2ltcGxfZmlsdGVyX2tleWJvYXJkX3Nob3J0Y3V0cyAKK0BAIC0yMzc5LDYgKzI3NzYsMTIg QEAgYnVzX2lidXNfaW1wbF9maWx0ZXJfa2V5Ym9hcmRfc2hvcnRjdXRzIAogICAgICAgICAgcmV0 dXJuIEZBTFNFOwogICAgICB9CiAgCkBAIC01MzAsNyArNjU0LDcgQEAgaW5kZXggODUzNDY1Yy4u MDA4NjRhYyAxMDA2NDQKICAgICAgLyogVGhlbiB0cnkgZW5naW5lcyBob3RrZXlzLiAqLwogICAg ICBldmVudCA9IGlidXNfaG90a2V5X3Byb2ZpbGVfZmlsdGVyX2tleV9ldmVudCAoaWJ1cy0+ZW5n aW5lc19ob3RrZXlfcHJvZmlsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGtleXZhbCwKLUBAIC0yMzUyLDYgKzI2ODUsMjQgQEAgYnVzX2lidXNf aW1wbF9maWx0ZXJfa2V5Ym9hcmRfc2hvcnRjdXRzIAorQEAgLTI0MDAsNiArMjgwMywyNCBAQCBi dXNfaWJ1c19pbXBsX2ZpbHRlcl9rZXlib2FyZF9zaG9ydGN1dHMgCiAgCiAgICAgICAgICBnX2Fz c2VydCAobmV3X2VuZ2luZV9kZXNjKTsKICAKQEAgLTU1NSw3ICs2NzksNyBAQCBpbmRleCA4NTM0 NjVjLi4wMDg2NGFjIDEwMDY0NAogICAgICAgICAgLyogRmluZCBvdXQgd2hhdCBlbmdpbmUgd2Ug c2hvdWxkIHN3aXRjaCB0by4gSWYgdGhlIGN1cnJlbnQgZW5naW5lIGhhcwogICAgICAgICAgICog dGhlIHNhbWUgaG90a2V5LCB0aGVuIHdlIHNob3VsZCBzd2l0Y2ggdG8gdGhlIG5leHQgZW5naW5l IHdpdGggdGhlCiAgICAgICAgICAgKiBzYW1lIGhvdGtleSBpbiB0aGUgbGlzdC4gT3RoZXJ3aXNl LCB3ZSBqdXN0IHN3aXRjaCB0byB0aGUgZmlyc3QKLUBAIC0yMzYzLDggKzI3MTQsNDcgQEAgYnVz X2lidXNfaW1wbF9maWx0ZXJfa2V5Ym9hcmRfc2hvcnRjdXRzIAorQEAgLTI0MTEsOCArMjgzMiw0 NyBAQCBidXNfaWJ1c19pbXBsX2ZpbHRlcl9rZXlib2FyZF9zaG9ydGN1dHMgCiAgICAgICAgICAg ICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgIH0KQEAgLTU2NSw3ICs2ODks NyBAQCBpbmRleCA4NTM0NjVjLi4wMDg2NGFjIDEwMDY0NAogKyAgICAgICAgaWYgKGNvbnRleHQg PT0gTlVMTCkgewogKyAgICAgICAgICAgIHJldHVybiBGQUxTRTsKICsgICAgICAgIH0KLSAKKysK ICsgICAgICAgIC8qIFRoaXMgbWVhbnMgUmVxdWVzdEVuZ2luZSBzaWduYWwgbWlnaHQgYmUgZG9u ZSBidXQgU2V0RW5naW5lIHNpZ25hbAogKyAgICAgICAgICogaGFzIG5vdCBiZWVuIGRvbmUgeWV0 IGJ5IGlidXMgc3RhdHVzIGljb24uICovCiArICAgICAgICBpZiAoY3VycmVudF9lbmdpbmVfZGVz YyA9PSBOVUxMICYmCkBAIC01ODAsNyArNzA0LDcgQEAgaW5kZXggODUzNDY1Yy4uMDA4NjRhYyAx MDA2NDQKICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGN1cnJlbnRfZW5naW5lX2Rlc2MpOwogKyAgICAgICAgICAgICAgICB9CiAr ICAgICAgICAgICAgfQotKworIAogKyAgICAgICAgICAgIC8qIElmIHRoZSBwcmV2aW91cyBlbmdp bmUgaXMgbm90IGluY2x1ZGVkIGluIGVuZ2luZV9saXN0IGFuZAogKyAgICAgICAgICAgICAqIHRo ZSBjdXJyZW50IGVuZ2luZSBpcyB0aGUgZGVmdWFsdCBicmlkZ2UgZW5naW5lLAogKyAgICAgICAg ICAgICAqIHRoZSBjdXJyZW50IGVuZ2luZSBpcyBhbHNvIG5vdCBpbmNsdWRlZCBpbiBlbmdpbmVf bGlzdC4KQEAgLTYwMyw3ICs3MjcsNyBAQCBpbmRleCA4NTM0NjVjLi4wMDg2NGFjIDEwMDY0NAog ICAgICAgICAgICAgIGJ1c19pYnVzX2ltcGxfc2V0X2NvbnRleHRfZW5naW5lX2Zyb21fZGVzYyAo aWJ1cywgY29udGV4dCwgbmV3X2VuZ2luZV9kZXNjKTsKICAgICAgICAgIH0KICAKLUBAIC0yNDY4 LDU5ICsyODU4LDU0IEBAIHN0YXRpYyB2b2lkCitAQCAtMjUxNiw1OSArMjk3Niw1NCBAQCBzdGF0 aWMgdm9pZAogIF9hZGRfZW5naW5lX2hvdGtleSAoSUJ1c0VuZ2luZURlc2MgKmVuZ2luZSwgQnVz SUJ1c0ltcGwgKmlidXMpCiAgewogICAgICBjb25zdCBnY2hhciAqaG90a2V5czsKQEAgLTY5OCw3 ICs4MjIsNyBAQCBpbmRleCA4NTM0NjVjLi4wMDg2NGFjIDEwMDY0NAogIAogIC8qKgogZGlmZiAt LWdpdCBhL2J1cy9pbnB1dGNvbnRleHQuYyBiL2J1cy9pbnB1dGNvbnRleHQuYwotaW5kZXggNGU4 Y2RjNS4uNDNkZWRjMCAxMDA2NDQKK2luZGV4IDNjODE2ODguLjU4YWI4ZjQgMTAwNjQ0CiAtLS0g YS9idXMvaW5wdXRjb250ZXh0LmMKICsrKyBiL2J1cy9pbnB1dGNvbnRleHQuYwogQEAgLTkwLDYg KzkwLDEyIEBAIHN0cnVjdCBfQnVzSW5wdXRDb250ZXh0IHsKQEAgLTcxNCw3ICs4MzgsNDMgQEAg aW5kZXggNGU4Y2RjNS4uNDNkZWRjMCAxMDA2NDQKICB9OwogIAogIHN0cnVjdCBfQnVzSW5wdXRD b250ZXh0Q2xhc3MgewotQEAgLTY0Nyw2ICs2NTMsMTEgQEAgYnVzX2lucHV0X2NvbnRleHRfZGVz dHJveSAoQnVzSW5wdXRDb250ZXh0ICpjb250ZXh0KQorQEAgLTEyMiw2ICsxMjgsNyBAQCBlbnVt IHsKKyAgICAgRElTQUJMRUQsCisgICAgIEVOR0lORV9DSEFOR0VELAorICAgICBSRVFVRVNUX0VO R0lORSwKKysgICAgU0VUX1hLQl9FTkdJTkVTLAorICAgICBMQVNUX1NJR05BTCwKKyB9OworIAor QEAgLTI2NSw2ICsyNzIsOSBAQCBzdGF0aWMgY29uc3QgZ2NoYXIgaW50cm9zcGVjdGlvbl94bWxb XSA9CisgICAgICIgICAgPG1ldGhvZCBuYW1lPSdHZXRFbmdpbmUnPiIKKyAgICAgIiAgICAgIDxh cmcgZGlyZWN0aW9uPSdvdXQnIHR5cGU9J3YnIG5hbWU9J2Rlc2MnIC8+IgorICAgICAiICAgIDwv bWV0aG9kPiIKKysgICAgIiAgICA8bWV0aG9kIG5hbWU9J1NldFhLQkVuZ2luZXMnPiIKKysgICAg IiAgICAgIDxhcmcgZGlyZWN0aW9uPSdpbicgdHlwZT0nYXYnIG5hbWU9J2VuZ2luZXMnIC8+Igor KyAgICAiICAgIDwvbWV0aG9kPiIKKyAgICAgIiAgICA8bWV0aG9kIG5hbWU9J1NldFN1cnJvdW5k aW5nVGV4dCc+IgorICAgICAiICAgICAgPGFyZyBkaXJlY3Rpb249J2luJyB0eXBlPSd2JyBuYW1l PSd0ZXh0JyAvPiIKKyAgICAgIiAgICAgIDxhcmcgZGlyZWN0aW9uPSdpbicgdHlwZT0ndScgbmFt ZT0nY3Vyc29yX3BvcycgLz4iCitAQCAtNTg2LDYgKzU5NiwxNyBAQCBidXNfaW5wdXRfY29udGV4 dF9jbGFzc19pbml0IChCdXNJbnB1dENvbnRleHRDbGFzcyAqY2xhc3MpCisgICAgICAgICAgICAg MSwKKyAgICAgICAgICAgICBHX1RZUEVfU1RSSU5HKTsKKyAKKysgICAgY29udGV4dF9zaWduYWxz W1NFVF9YS0JfRU5HSU5FU10gPQorKyAgICAgICAgZ19zaWduYWxfbmV3IChJXygic2V0LXhrYi1l bmdpbmVzIiksCisrICAgICAgICAgICAgR19UWVBFX0ZST01fQ0xBU1MgKGNsYXNzKSwKKysgICAg ICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKKysgICAgICAgICAgICAwLAorKyAgICAgICAgICAg IE5VTEwsIE5VTEwsCisrICAgICAgICAgICAgYnVzX21hcnNoYWxfVk9JRF9fT0JKRUNULAorKyAg ICAgICAgICAgIEdfVFlQRV9OT05FLAorKyAgICAgICAgICAgIDEsCisrICAgICAgICAgICAgR19U WVBFX1BPSU5URVIpOworKworICAgICB0ZXh0X2VtcHR5ID0gaWJ1c190ZXh0X25ld19mcm9tX3N0 cmluZyAoIiIpOworICAgICBnX29iamVjdF9yZWZfc2luayAodGV4dF9lbXB0eSk7CisgICAgIGxv b2t1cF90YWJsZV9lbXB0eSA9IGlidXNfbG9va3VwX3RhYmxlX25ldyAoOSAvKiBwYWdlIHNpemUg Ki8sIDAsIEZBTFNFLCBGQUxTRSk7CitAQCAtNjQ4LDYgKzY2OSwxMSBAQCBidXNfaW5wdXRfY29u dGV4dF9kZXN0cm95IChCdXNJbnB1dENvbnRleHQgKmNvbnRleHQpCiAgICAgICAgICBjb250ZXh0 LT5jbGllbnQgPSBOVUxMOwogICAgICB9CiAgCkBAIC03MjYsNyArODg2LDQ4IEBAIGluZGV4IDRl OGNkYzUuLjQzZGVkYzAgMTAwNjQ0CiAgICAgIElCVVNfT0JKRUNUX0NMQVNTIChidXNfaW5wdXRf Y29udGV4dF9wYXJlbnRfY2xhc3MpLT5kZXN0cm95IChJQlVTX09CSkVDVCAoY29udGV4dCkpOwog IH0KICAKLUBAIC0yMjExLDYgKzIyMjIsNyBAQCBidXNfaW5wdXRfY29udGV4dF9zZXRfZW5naW5l IChCdXNJbnB1dENvbnRleHQgKmNvbnRleHQsCitAQCAtMTA0OCw2ICsxMDc0LDMyIEBAIF9pY19n ZXRfZW5naW5lIChCdXNJbnB1dENvbnRleHQgICAgICAgKmNvbnRleHQsCisgfQorIAorIC8qKgor KyAqIF9pY19zZXRfeGtiX2VuZ2luZXM6CisrICoKKysgKiBJbXBsZW1lbnQgdGhlICJTZXRYS0JF bmdpbmVzIiBtZXRob2QgY2FsbCBvZiB0aGUgb3JnLmZyZWVkZXNrdG9wLklCdXMuSW5wdXRDb250 ZXh0IGludGVyZmFjZS4KKysgKi8KKytzdGF0aWMgdm9pZAorK19pY19zZXRfeGtiX2VuZ2luZXMg KEJ1c0lucHV0Q29udGV4dCAgICAgICAqY29udGV4dCwKKysgICAgICAgICAgICAgICAgICAgICBH VmFyaWFudCAgICAgICAgICAgICAgKnBhcmFtZXRlcnMsCisrICAgICAgICAgICAgICAgICAgICAg R0RCdXNNZXRob2RJbnZvY2F0aW9uICppbnZvY2F0aW9uKQorK3sKKysgICAgR1ZhcmlhbnRJdGVy ICppdGVyID0gTlVMTDsKKysgICAgR1ZhcmlhbnQgKnZhcjsKKysgICAgR0xpc3QgKmxpc3QgPSBO VUxMOworKworKyAgICBnX3ZhcmlhbnRfZ2V0X2NoaWxkIChwYXJhbWV0ZXJzLCAwLCAiYXYiLCAm aXRlcik7CisrICAgIHdoaWxlIChnX3ZhcmlhbnRfaXRlcl9sb29wIChpdGVyLCAidiIsICZ2YXIp KSB7CisrICAgICAgICBsaXN0ID0gZ19saXN0X2FwcGVuZCAobGlzdCwgaWJ1c19zZXJpYWxpemFi bGVfZGVzZXJpYWxpemUgKHZhcikpOworKyAgICB9CisrICAgIGdfdmFyaWFudF9pdGVyX2ZyZWUg KGl0ZXIpOworKworKyAgICBnX3NpZ25hbF9lbWl0IChjb250ZXh0LAorKyAgICAgICAgICAgICAg ICAgICBjb250ZXh0X3NpZ25hbHNbU0VUX1hLQl9FTkdJTkVTXSwgMCwKKysgICAgICAgICAgICAg ICAgICAgbGlzdCk7CisrICAgIHJldHVybjsKKyt9CisrCisrLyoqCisgICogYnVzX2lucHV0X2Nv bnRleHRfc2VydmljZV9tZXRob2RfY2FsbDoKKyAgKgorICAqIEhhbmRsZSBhIEQtQnVzIG1ldGhv ZCBjYWxsIHdob3NlIGRlc3RpbmF0aW9uIGFuZCBpbnRlcmZhY2UgbmFtZSBhcmUgYm90aCAib3Jn LmZyZWVkZXNrdG9wLklCdXMuSW5wdXRDb250ZXh0IgorQEAgLTExMjYsNiArMTE3OCw3IEBAIGJ1 c19pbnB1dF9jb250ZXh0X3NlcnZpY2VfbWV0aG9kX2NhbGwgKElCdXNTZXJ2aWNlICAgICAgICAg ICAgKnNlcnZpY2UsCisgICAgICAgICB7ICJJc0VuYWJsZWQiLCAgICAgICAgIF9pY19pc19lbmFi bGVkIH0sCisgICAgICAgICB7ICJTZXRFbmdpbmUiLCAgICAgICAgIF9pY19zZXRfZW5naW5lIH0s CisgICAgICAgICB7ICJHZXRFbmdpbmUiLCAgICAgICAgIF9pY19nZXRfZW5naW5lIH0sCisrICAg ICAgICB7ICJTZXRYS0JFbmdpbmVzIiwgICAgIF9pY19zZXRfeGtiX2VuZ2luZXMgfSwKKyAgICAg ICAgIHsgIlNldFN1cnJvdW5kaW5nVGV4dCIsIF9pY19zZXRfc3Vycm91bmRpbmdfdGV4dH0sCisg ICAgIH07CisgCitAQCAtMjIxOCw2ICsyMjcxLDcgQEAgYnVzX2lucHV0X2NvbnRleHRfc2V0X2Vu Z2luZSAoQnVzSW5wdXRDb250ZXh0ICpjb250ZXh0LAogICAgICB9CiAgICAgIGVsc2UgewogICAg ICAgICAgZ2ludCBpOwpAQCAtNzM0LDcgKzkzNSw3IEBAIGluZGV4IDRlOGNkYzUuLjQzZGVkYzAg MTAwNjQ0CiAgICAgICAgICBjb250ZXh0LT5lbmdpbmUgPSBlbmdpbmU7CiAgICAgICAgICBnX29i amVjdF9yZWYgKGNvbnRleHQtPmVuZ2luZSk7CiAgCi1AQCAtMjUzOCwzICsyNTUwLDMwIEBAIGJ1 c19pbnB1dF9jb250ZXh0X2dldF9jbGllbnQgKEJ1c0lucHV0Q29udGV4dCAqY29udGV4dCkKK0BA IC0yNTQyLDMgKzI1OTYsMzAgQEAgYnVzX2lucHV0X2NvbnRleHRfZ2V0X2NsaWVudCAoQnVzSW5w dXRDb250ZXh0ICpjb250ZXh0KQogICAgICBnX2Fzc2VydCAoQlVTX0lTX0lOUFVUX0NPTlRFWFQg KGNvbnRleHQpKTsKICAgICAgcmV0dXJuIGNvbnRleHQtPmNsaWVudDsKICB9CkBAIC0xMDU2LDcg KzEyNTcsNyBAQCBpbmRleCBhODMwMTM2Li40YzNjOTgwIDEwMDY0NAogK0RFRkFVTFRfQlJJREdF X0VOR0lORV9OQU1FPSdAREVGQVVMVF9CUklER0VfRU5HSU5FX05BTUVAJwogIElTT0NPREVTX1BS RUZJWD0nQElTT0NPREVTX1BSRUZJWEAnCiBkaWZmIC0tZ2l0IGEvaWJ1cy9pbnB1dGNvbnRleHQu cHkgYi9pYnVzL2lucHV0Y29udGV4dC5weQotaW5kZXggY2VlYjU2ZC4uYjNjMmY2NSAxMDA2NDQK K2luZGV4IDY0YTZiYTIuLmI0NzFlMjAgMTAwNjQ0CiAtLS0gYS9pYnVzL2lucHV0Y29udGV4dC5w eQogKysrIGIvaWJ1cy9pbnB1dGNvbnRleHQucHkKIEBAIC0yOCw2ICsyOCw3IEBAIGltcG9ydCBz eXMKQEAgLTEwNjcsNyArMTI2OCw3IEBAIGluZGV4IGNlZWI1NmQuLmIzYzJmNjUgMTAwNjQ0CiAg aW1wb3J0IG9iamVjdAogIGltcG9ydCBjb21tb24KICBpbXBvcnQgc2VyaWFsaXphYmxlCi1AQCAt Mjc5LDggKzI4MCwxOSBAQCBjbGFzcyBJbnB1dENvbnRleHQob2JqZWN0Lk9iamVjdCk6CitAQCAt MjgzLDggKzI4NCwyMiBAQCBjbGFzcyBJbnB1dENvbnRleHQob2JqZWN0Lk9iamVjdCk6CiAgICAg ICAgICBleGNlcHQ6CiAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKICAKQEAgLTEwODMsMTYgKzEy ODQsMTkgQEAgaW5kZXggY2VlYjU2ZC4uYjNjMmY2NSAxMDA2NDQKICsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgcmVwbHlfaGFuZGxlcj1zZWxmLl9faGFuZGxlX2ljX3Jl cGx5LAogKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcl9oYW5k bGVyPXNlbGYuX19oYW5kbGVfaWNfZXJyb3IpCiArCi0rICAgIGRlZiBzZXRfYnJpZGdlX2VuZ2lu ZShzZWxmKToKLSsgICAgICAgIHJldHVybiBzZWxmLl9fY29udGV4dC5TZXRFbmdpbmUoX2NvbmZp Zy5ERUZBVUxUX0JSSURHRV9FTkdJTkVfTkFNRSkKKysgICAgZGVmIHNldF94a2JfZW5naW5lcyhz ZWxmLCBlbmdpbmVzKToKKysgICAgICAgIGVuZ2luZXMgPSBtYXAobGFtYmRhIGU6IHNlcmlhbGl6 YWJsZS5zZXJpYWxpemVfb2JqZWN0KGUpLCBlbmdpbmVzKQorKyAgICAgICAgcmV0dXJuIHNlbGYu X19jb250ZXh0LlNldFhLQkVuZ2luZXMoZW5naW5lcywKKysgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHJlcGx5X2hhbmRsZXI9c2VsZi5fX2hhbmRsZV9pY19yZXBs eSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yX2hh bmRsZXI9c2VsZi5fX2hhbmRsZV9pY19lcnJvcikKICAKICAgICAgZGVmIGludHJvc3BlY3Qoc2Vs Zik6CiAgICAgICAgICByZXR1cm4gc2VsZi5fX2NvbnRleHQuSW50cm9zcGVjdCgpCiBkaWZmIC0t Z2l0IGEvaWJ1cy9pbnRlcmZhY2UvaWlucHV0Y29udGV4dC5weSBiL2lidXMvaW50ZXJmYWNlL2lp bnB1dGNvbnRleHQucHkKLWluZGV4IDFkM2NkMmEuLjU4ZDc1ZTUgMTAwNjQ0CitpbmRleCAwNmNl NTE5Li4zYjY1NWRjIDEwMDY0NAogLS0tIGEvaWJ1cy9pbnRlcmZhY2UvaWlucHV0Y29udGV4dC5w eQogKysrIGIvaWJ1cy9pbnRlcmZhY2UvaWlucHV0Y29udGV4dC5weQotQEAgLTc2LDggKzc2LDgg QEAgY2xhc3MgSUlucHV0Q29udGV4dChkYnVzLnNlcnZpY2UuT2JqZWN0KToKK0BAIC03Niw4ICs3 NiwxMSBAQCBjbGFzcyBJSW5wdXRDb250ZXh0KGRidXMuc2VydmljZS5PYmplY3QpOgogICAgICBA bWV0aG9kKG91dF9zaWduYXR1cmU9InYiKQogICAgICBkZWYgR2V0RW5naW5lKHNlbGYpOiBwYXNz CiAgCkBAIC0xMTAwLDYgKzEzMDQsOSBAQCBpbmRleCAxZDNjZDJhLi41OGQ3NWU1IDEwMDY0NAog LSAgICBkZWYgU2V0RW5naW5lKHNlbGYsIGVuZ2luZV9uYW1lKTogcGFzcwogKyAgICBAYXN5bmNf bWV0aG9kKGluX3NpZ25hdHVyZT0icyIpCiArICAgIGRlZiBTZXRFbmdpbmUoc2VsZiwgZW5naW5l X25hbWUsIHJlcGx5X2NiLCBlcnJvcl9jYik6IHBhc3MKKysKKysgICAgQGFzeW5jX21ldGhvZChp bl9zaWduYXR1cmU9ImF2IikKKysgICAgZGVmIFNldFhLQkVuZ2luZXMoc2VsZiwgZW5naW5lcywg cmVwbHlfY2IsIGVycm9yX2NiKTogcGFzcwogIAogICAgICBAbWV0aG9kKCkKICAgICAgZGVmIERl c3Ryb3koc2VsZik6IHBhc3MKQEAgLTEzNDIsNiArMTU0OSw2NyBAQCBpbmRleCA5YTM0MWY2Li45 MmVjNmFmIDEwMDY0NAogKwogIEdfRU5EX0RFQ0xTCiAgI2VuZGlmCitkaWZmIC0tZ2l0IGEvc3Jj L2lidXNpbnB1dGNvbnRleHQuYyBiL3NyYy9pYnVzaW5wdXRjb250ZXh0LmMKK2luZGV4IDU0ZTMw YWUuLmMzN2E3MWQgMTAwNjQ0CistLS0gYS9zcmMvaWJ1c2lucHV0Y29udGV4dC5jCisrKysgYi9z cmMvaWJ1c2lucHV0Y29udGV4dC5jCitAQCAtMTIxOSw2ICsxMjE5LDMzIEBAIGlidXNfaW5wdXRf Y29udGV4dF9zZXRfZW5naW5lIChJQnVzSW5wdXRDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAg ICAgICAgICAgICAgICAgKTsKKyB9CisgCisrdm9pZAorK2lidXNfaW5wdXRfY29udGV4dF9zZXRf eGtiX2VuZ2luZXMgKElCdXNJbnB1dENvbnRleHQgKmNvbnRleHQsCisrICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgR0xpc3QgICAgICAgICAgICAqbGlzdCkKKyt7CisrICAgIEdW YXJpYW50QnVpbGRlciBidWlsZGVyOworKyAgICBHTGlzdCAqcDsKKysKKysgICAgZ19hc3NlcnQg KElCVVNfSVNfSU5QVVRfQ09OVEVYVCAoY29udGV4dCkpOworKyAgICBnX2Fzc2VydCAobGlzdCk7 CisrCisrICAgIGdfdmFyaWFudF9idWlsZGVyX2luaXQgKCZidWlsZGVyLCBHX1ZBUklBTlRfVFlQ RSAoImF2IikpOworKyAgICBmb3IgKHAgPSBsaXN0OyBwOyBwID0gcC0+bmV4dCkgeworKyAgICAg ICAgZ192YXJpYW50X2J1aWxkZXJfYWRkICgmYnVpbGRlciwgInYiLAorKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBpYnVzX3NlcmlhbGl6YWJsZV9zZXJpYWxpemUgKChJQnVzU2VyaWFs aXphYmxlICopIHAtPmRhdGEpKTsKKysgICAgfQorKworKyAgICBnX2RidXNfcHJveHlfY2FsbCAo KEdEQnVzUHJveHkgKikgY29udGV4dCwKKysgICAgICAgICAgICAgICAgICAgICAgICJTZXRYS0JF bmdpbmVzIiwgICAgICAgICAgICAgICAgICAgICAvKiBtZXRob2RfbmFtZSAqLworKyAgICAgICAg ICAgICAgICAgICAgICAgZ192YXJpYW50X25ldyAoIihhdikiLCAmYnVpbGRlciksICAgIC8qIHBh cmFtZXRlcnMgKi8KKysgICAgICAgICAgICAgICAgICAgICAgIEdfREJVU19DQUxMX0ZMQUdTX05P TkUsICAgICAgICAgICAgICAvKiBmbGFncyAqLworKyAgICAgICAgICAgICAgICAgICAgICAgLTEs ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRpbWVvdXQgKi8KKysgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBj YW5jZWxsYWJsZSAqLworKyAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIC8qIGNhbGxiYWNrICovCisrICAgICAgICAgICAgICAgICAgICAg ICBOVUxMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdXNlcl9kYXRhICovCisr ICAgICAgICAgICAgICAgICAgICAgICApOworK30KKysKKyAjZGVmaW5lIERFRklORV9GVU5DKG5h bWUsIE5hbWUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg IHZvaWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXAorICAgICBpYnVzX2lucHV0X2NvbnRleHRfIyNuYW1lIChJQnVzSW5wdXRD b250ZXh0ICpjb250ZXh0KSAgICAgICAgICAgICAgIFwKK2RpZmYgLS1naXQgYS9zcmMvaWJ1c2lu cHV0Y29udGV4dC5oIGIvc3JjL2lidXNpbnB1dGNvbnRleHQuaAoraW5kZXggYmUzYzUwMi4uNDBi OTAyZSAxMDA2NDQKKy0tLSBhL3NyYy9pYnVzaW5wdXRjb250ZXh0LmgKKysrKyBiL3NyYy9pYnVz aW5wdXRjb250ZXh0LmgKK0BAIC00OTUsNiArNDk1LDE4IEBAIHZvaWQgICAgICAgICBpYnVzX2lu cHV0X2NvbnRleHRfc2V0X2VuZ2luZSAgKElCdXNJbnB1dENvbnRleHQgICAqY29udGV4dCwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAg ICAgICAgKm5hbWUpOworIAorIC8qKgorKyAqIGlidXNfaW5wdXRfY29udGV4dF9zZXRfeGtiX2Vu Z2luZXM6CisrICogQGNvbnRleHQ6IEFuIElCdXNJbnB1dENvbnRleHQuCisrICogQGxpc3Q6ICh0 cmFuc2ZlciBjb250YWluZXIpIChlbGVtZW50LXR5cGUgSUJ1c0VuZ2luZURlc2MpOgorKyAqICAg ICBBIGxpc3Qgb2YgdGhlIGVuZ2luZXMuCisrICoKKysgKiBTZXQgWEtCIGdyb3VwIGxheW91dHMg ZnJvbSB0aGUgZGVza3RvcCBzZXNzaW9uLgorKyAqLworK3ZvaWQgICAgICAgICBpYnVzX2lucHV0 X2NvbnRleHRfc2V0X3hrYl9lbmdpbmVzCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAoSUJ1c0lucHV0Q29udGV4dCAqY29udGV4dCwKKysgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHTGlzdCAgICAgICAgICAgICpsaXN0KTsK KysKKysvKioKKyAgKiBpYnVzX2lucHV0X2NvbnRleHRfc2V0X3N1cnJvdW5kaW5nX3RleHQ6Cisg ICogQGNvbnRleHQ6IEFuICNJQnVzSW5wdXRDb250ZXh0LgorICAqIEB0ZXh0OiBBbiAjSUJ1c1Rl eHQgc3Vycm91bmRpbmcgdGhlIGN1cnJlbnQgY3Vyc29yIG9uIHRoZSBhcHBsaWNhdGlvbi4KIGRp ZmYgLS1naXQgYS9zcmMvaWJ1c3V0aWwuYyBiL3NyYy9pYnVzdXRpbC5jCiBpbmRleCBkZGI2Yjll Li40NmRhYjFhIDEwMDY0NAogLS0tIGEvc3JjL2lidXN1dGlsLmMKQEAgLTE0MzEsNyArMTY5OSw3 IEBAIGluZGV4IDg4MDQ2MzQuLmJlZjZmYmYgMTAwNjQ0CiAgCiAgICAgIGRlZiBzZXRfY3Vyc29y X2xvY2F0aW9uKHNlbGYsIHgsIHksIHcsIGgpOgogICAgICAgICAgc2VsZi5fX2NhbmRpZGF0ZV9w YW5lbC5zZXRfY3Vyc29yX2xvY2F0aW9uKHgsIHksIHcsIGgpCi1AQCAtMjMzLDEyICsyNDksOTcg QEAgY2xhc3MgUGFuZWwoaWJ1cy5QYW5lbEJhc2UpOgorQEAgLTIzMywxMiArMjQ5LDk5IEBAIGNs YXNzIFBhbmVsKGlidXMuUGFuZWxCYXNlKToKICAgICAgZGVmIF9fc2V0X2ltX25hbWUoc2VsZiwg bmFtZSk6CiAgICAgICAgICBzZWxmLl9fbGFuZ3VhZ2VfYmFyLnNldF9pbV9uYW1lKG5hbWUpCiAg CkBAIC0xNDg5LDYgKzE3NTcsOCBAQCBpbmRleCA4ODA0NjM0Li5iZWY2ZmJmIDEwMDY0NAogKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSkKICsg ICAgICAgICAgICAgICAgc2VsZi5fX2Rpc2FibGVkX2VuZ2luZXMuYXBwZW5kKGVuZ2luZSkKICsg ICAgICAgICAgICBzZWxmLl9fZGlzYWJsZWRfZW5naW5lc19pZCA9IHNlbGYuX194a2JsYXlvdXQu Z2V0X2dyb3VwKCkKKysgICAgICAgICAgICBpZiB1c2VfYnJpZGdlX2hvdGtleSBhbmQgbGVuKHNl bGYuX19kaXNhYmxlZF9lbmdpbmVzKSA+IDA6CisrICAgICAgICAgICAgICAgIHNlbGYuX19mb2N1 c19pYy5zZXRfeGtiX2VuZ2luZXMoc2VsZi5fX2Rpc2FibGVkX2VuZ2luZXMpCiArICAgICAgICBp ZiBub3QgdXNlX2JyaWRnZV9ob3RrZXk6CiArICAgICAgICAgICAgcmV0dXJuCiArICAgICAgICBp ZiBsZW4oc2VsZi5fX2Rpc2FibGVkX2VuZ2luZXMpID4gMDoKQEAgLTE1MzAsNyArMTgwMCw3IEBA IGluZGV4IDg4MDQ2MzQuLmJlZjZmYmYgMTAwNjQ0CiAgICAgICAgICBpZiBub3QgZW5hYmxlZDoK ICAgICAgICAgICAgICBzZWxmLl9fc2V0X2ltX2ljb24oSUNPTl9LRVlCT0FSRCkKICAgICAgICAg ICAgICBzZWxmLl9fc2V0X2ltX25hbWUoTm9uZSkKLUBAIC0yNTAsNyArMzUxLDcgQEAgY2xhc3Mg UGFuZWwoaWJ1cy5QYW5lbEJhc2UpOgorQEAgLTI1MCw3ICszNTMsNyBAQCBjbGFzcyBQYW5lbChp YnVzLlBhbmVsQmFzZSk6CiAgICAgICAgICAgICAgICAgIHNlbGYuX19zZXRfaW1faWNvbihlbmdp bmUuaWNvbikKICAgICAgICAgICAgICAgICAgc2VsZi5fX3NldF9pbV9uYW1lKGVuZ2luZS5sb25n bmFtZSkKICAgICAgICAgICAgICAgICAgaWYgc2VsZi5fX2J1cy5nZXRfdXNlX3N5c19sYXlvdXQo KToKQEAgLTE1MzksNyArMTgwOSw3IEBAIGluZGV4IDg4MDQ2MzQuLmJlZjZmYmYgMTAwNjQ0CiAg ICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgc2VsZi5fX3NldF9pbV9pY29uKElD T05fS0VZQk9BUkQpCiAgICAgICAgICAgICAgICAgIHNlbGYuX19zZXRfaW1fbmFtZShOb25lKQot QEAgLTI3Myw3ICszNzQsMjEgQEAgY2xhc3MgUGFuZWwoaWJ1cy5QYW5lbEJhc2UpOgorQEAgLTI3 Myw3ICszNzYsMjEgQEAgY2xhc3MgUGFuZWwoaWJ1cy5QYW5lbEJhc2UpOgogICAgICAgICAgICAg IHJldHVybgogIAogICAgICAgICAgZW5hYmxlZCA9IHNlbGYuX19mb2N1c19pYy5pc19lbmFibGVk KCkKQEAgLTE1NjIsNyArMTgzMiw3IEBAIGluZGV4IDg4MDQ2MzQuLmJlZjZmYmYgMTAwNjQ0CiAg CiAgICAgICAgICBpZiBlbmFibGVkID09IEZhbHNlOgogICAgICAgICAgICAgIHNlbGYucmVzZXQo KQotQEAgLTI4Nyw3ICs0MDIsNyBAQCBjbGFzcyBQYW5lbChpYnVzLlBhbmVsQmFzZSk6CitAQCAt Mjg3LDcgKzQwNCw3IEBAIGNsYXNzIFBhbmVsKGlidXMuUGFuZWxCYXNlKToKICAgICAgICAgICAg ICAgICAgc2VsZi5fX3NldF9pbV9pY29uKGVuZ2luZS5pY29uKQogICAgICAgICAgICAgICAgICBz ZWxmLl9fc2V0X2ltX25hbWUoZW5naW5lLmxvbmduYW1lKQogICAgICAgICAgICAgICAgICBpZiBz ZWxmLl9fYnVzLmdldF91c2Vfc3lzX2xheW91dCgpOgpAQCAtMTU3MSw3ICsxODQxLDcgQEAgaW5k ZXggODgwNDYzNC4uYmVmNmZiZiAxMDA2NDQKICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAg ICAgICAgICBzZWxmLl9fc2V0X2ltX2ljb24oSUNPTl9LRVlCT0FSRCkKICAgICAgICAgICAgICAg ICAgc2VsZi5fX3NldF9pbV9uYW1lKE5vbmUpCi1AQCAtMzE1LDYgKzQzMCw3IEBAIGNsYXNzIFBh bmVsKGlidXMuUGFuZWxCYXNlKToKK0BAIC0zMTUsNiArNDMyLDcgQEAgY2xhc3MgUGFuZWwoaWJ1 cy5QYW5lbEJhc2UpOgogIAogICAgICBkZWYgX19jb25maWdfbG9hZF9zaG93KHNlbGYpOgogICAg ICAgICAgc2hvdyA9IHNlbGYuX19jb25maWcuZ2V0X3ZhbHVlKCJwYW5lbCIsICJzaG93IiwgMCkK QEAgLTE1NzksNyArMTg0OSw3IEBAIGluZGV4IDg4MDQ2MzQuLmJlZjZmYmYgMTAwNjQ0CiAgICAg ICAgICBzZWxmLl9fbGFuZ3VhZ2VfYmFyLnNldF9zaG93KHNob3cpCiAgCiAgICAgIGRlZiBfX2Nv bmZpZ19sb2FkX3Bvc2l0aW9uKHNlbGYpOgotQEAgLTQ0Myw2ICs1NTksMjEgQEAgY2xhc3MgUGFu ZWwoaWJ1cy5QYW5lbEJhc2UpOgorQEAgLTQ0Myw2ICs1NjEsMjEgQEAgY2xhc3MgUGFuZWwoaWJ1 cy5QYW5lbEJhc2UpOgogICAgICAjICAgICBtZW51LnNldF90YWtlX2ZvY3VzKEZhbHNlKQogICAg ICAjICAgICByZXR1cm4gbWVudQogIApAQCAtMTYwMSw3ICsxODcxLDcgQEAgaW5kZXggODgwNDYz NC4uYmVmNmZiZiAxMDA2NDQKICAgICAgZGVmIF9fY3JlYXRlX2ltX21lbnUoc2VsZik6CiAgICAg ICAgICBlbmdpbmVzID0gc2VsZi5fX2J1cy5saXN0X2FjdGl2ZV9lbmdpbmVzKCkKICAgICAgICAg IGN1cnJlbnRfZW5naW5lID0gXAotQEAgLTQ1MywyNSArNTg0LDM5IEBAIGNsYXNzIFBhbmVsKGli dXMuUGFuZWxCYXNlKToKK0BAIC00NTMsMjUgKzU4NiwzOSBAQCBjbGFzcyBQYW5lbChpYnVzLlBh bmVsQmFzZSk6CiAgICAgICAgICBzaXplID0gZ3RrLmljb25fc2l6ZV9sb29rdXAoZ3RrLklDT05f U0laRV9NRU5VKQogICAgICAgICAgbWVudSA9IGd0ay5NZW51KCkKICAgICAgICAgIGZvciBpLCBl bmdpbmUgaW4gZW51bWVyYXRlKGVuZ2luZXMpOgpAQCAtMTY1NCw3ICsxOTI0LDcgQEAgaW5kZXgg ODgwNDYzNC4uYmVmNmZiZiAxMDA2NDQKICAKICAgICAgICAgIG1lbnUuc2hvd19hbGwoKQogICAg ICAgICAgbWVudS5zZXRfdGFrZV9mb2N1cyhGYWxzZSkKLUBAIC01MjMsOCArNjY4LDI1IEBAIGNs YXNzIFBhbmVsKGlidXMuUGFuZWxCYXNlKToKK0BAIC01MjMsOCArNjcwLDI1IEBAIGNsYXNzIFBh bmVsKGlidXMuUGFuZWxCYXNlKToKICAgICAgICAgIGlmIG5vdCBzZWxmLl9fZm9jdXNfaWM6CiAg ICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgICBpZiBlbmdpbmU6CkBAIC0xNjgxLDcgKzE5NTEs NyBAQCBpbmRleCA4ODA0NjM0Li5iZWY2ZmJmIDEwMDY0NAogICAgICAgICAgICAgIHNlbGYuX19m b2N1c19pYy5kaXNhYmxlKCkKICAKICAgICAgZGVmIF9fc3lzX21lbnVfaXRlbV9hY3RpdmF0ZV9j YihzZWxmLCBpdGVtLCBjb21tYW5kKToKLUBAIC01NzMsMTIgKzczNSwxMTMgQEAgY2xhc3MgUGFu ZWwoaWJ1cy5QYW5lbEJhc2UpOgorQEAgLTU3MywxMiArNzM3LDExMyBAQCBjbGFzcyBQYW5lbChp YnVzLlBhbmVsQmFzZSk6CiAgICAgICAgICBzZWxmLl9fc2V0dXBfcGlkID0gcGlkCiAgICAgICAg ICBnbGliLmNoaWxkX3dhdGNoX2FkZChzZWxmLl9fc2V0dXBfcGlkLCBzZWxmLl9fY2hpbGRfd2F0 Y2hfY2IpCiAgCgpkaWZmIC0tZ2l0IGEvaWJ1cy5zcGVjIGIvaWJ1cy5zcGVjCmluZGV4IDVjYzI0 MzkuLmU4YzU1NjggMTAwNjQ0Ci0tLSBhL2lidXMuc3BlYworKysgYi9pYnVzLnNwZWMKQEAgLTUs MTUgKzUsMjEgQEAKICVkZWZpbmUgaGF2ZV9saWJ4a2JmaWxlIDEKICVkZWZpbmUgaGF2ZV9nanNm aWxlIDEKIAorJWlmIDAlez9mZWRvcmF9ID4gMTYKKyVkZWZpbmUgaGF2ZV9icmlkZ2VfaG90a2V5 IDEKKyVkZWZpbmUgaWJ1c19nanNfdmVyc2lvbiAzLjIuMS4yMDExMTAyOAorJWRlZmluZSBpYnVz X2dqc19idWlsZF9mYWlsdXJlIDAKKyVlbHNlCiAlaWYgMCV7P2ZlZG9yYX0gPiAxNQogJWRlZmlu ZSBoYXZlX2JyaWRnZV9ob3RrZXkgMQotJWRlZmluZSBpYnVzX2dqc192ZXJzaW9uIDMuMi4xLjIw MTExMDIxCi0lZGVmaW5lIGlidXNfZ2pzX2J1aWxkX2ZhaWx1cmUgMQorJWRlZmluZSBpYnVzX2dq c192ZXJzaW9uIDMuMi4xLjIwMTExMDI4CislZGVmaW5lIGlidXNfZ2pzX2J1aWxkX2ZhaWx1cmUg MAogJWVsc2UKICVkZWZpbmUgaGF2ZV9icmlkZ2VfaG90a2V5IDAKLSVkZWZpbmUgaWJ1c19nanNf dmVyc2lvbiAzLjAuMi4yMDExMTAxOAorJWRlZmluZSBpYnVzX2dqc192ZXJzaW9uIDMuMC4yLjIw MTExMDI4CiAlZGVmaW5lIGlidXNfZ2pzX2J1aWxkX2ZhaWx1cmUgMAogJWVuZGlmCislZW5kaWYK IAogJWRlZmluZSBpYnVzX2FwaV92ZXJzaW9uIDEuMAogCkBAIC0yNCw3ICszMCw3IEBACiAKIE5h bWU6ICAgICAgIGlidXMKIFZlcnNpb246ICAgIDEuNC4wCi1SZWxlYXNlOiAgICA2JXs/ZGlzdH0K K1JlbGVhc2U6ICAgIDclez9kaXN0fQogU3VtbWFyeTogICAgSW50ZWxsaWdlbnQgSW5wdXQgQnVz IGZvciBMaW51eCBPUwogTGljZW5zZTogICAgTEdQTHYyKwogR3JvdXA6ICAgICAgU3lzdGVtIEVu dmlyb25tZW50L0xpYnJhcmllcwpAQCAtMzg2LDYgKzM5Miw5IEBAIGZpCiAle19kYXRhZGlyfS9n dGstZG9jL2h0bWwvKgogCiAlY2hhbmdlbG9nCisqIEZyaSBPY3QgMjggMjAxMSBUYWthbyBGdWpp d2FyYSA8dGZ1aml3YXJAcmVkaGF0LmNvbT4gLSAxLjQuMC03CistIEZpeGVkIEJ1ZyA3NDc5MDIg LSBtb3VzZSBhbmQgY3RybCtzcGFjZSBub3Qgd29ya2luZworCiAqIFdlZCBPY3QgMjYgMjAxMSBG ZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsLWVuZ0BsaXN0cy5mZWRvcmFwcm9qZWN0Lm9y Zz4gLSAxLjQuMC02CiAtIFJlYnVpbHQgZm9yIGdsaWJjIGJ1ZyM3NDczNzcKIAoKZGlmZiAtLWdp dCBhL3NvdXJjZXMgYi9zb3VyY2VzCmluZGV4IGYwM2ViZGYuLjFmMTEwYmYgMTAwNjQ0Ci0tLSBh L3NvdXJjZXMKKysrIGIvc291cmNlcwpAQCAtMSwzICsxLDMgQEAKIGI0ZjA2Mzc5NGU4OWM3MWVi MWY4Y2I1NDMyMTBkYTMwICBpYnVzLTEuNC4wLnRhci5negotMjEwOTM0MzliZTJjNzMyMWNiMWE4 NWNhMzMwN2EwYjUgIGlidXMtZ2pzLTMuMC4yLjIwMTExMDE4LnRhci5negotNjM2OTkxZWE0MjU1 MWE3NTRjMDQ5OTZhZTM5NmJmNjkgIGlidXMtZ2pzLTMuMi4xLjIwMTExMDIxLnRhci5negorZGUz ZjNlYTNmOTRiODU3ZTI1Mzk0M2M1NGY3N2Y2M2MgIGlidXMtZ2pzLTMuMC4yLjIwMTExMDI4LnRh ci5negorNjg4MDAyNjE1MjJhYTM5MWY5NzJjOTNjNzMxN2MwNWIgIGlidXMtZ2pzLTMuMi4xLjIw MTExMDI4LnRhci5nego=