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: Merge branch 'f16' Date: Sun, 31 May 2026 02:05:28 GMT Message-ID: <178019312849.1.1360135509413957796.rpms-ibus-0d7928e0b740@fedoraproject.org> List-ID: X-Git-Repo: rpms/ibus X-Git-Branch: autotool X-Git-Rev: 0d7928e0b74017404b670dfbf55410affae1d4fe ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvaWJ1cwogICAgICAgICAgICBCcmFuY2ggOiBhdXRvdG9vbAogICAgICAgICAg ICBDb21taXQgOiAwZDc5MjhlMGI3NDAxNzQwNGI2NzBkZmJmNTU0MTBhZmZhZTFkNGZlCiAgICAg ICAgICAgIEF1dGhvciA6IFRha2FvIEZ1aml3YXJhIDx0ZnVqaXdhckByZWRoYXQuY29tPgogICAg ICAgICAgICBEYXRlICAgOiAyMDExLTEwLTI4VDE4OjQ1OjMyKzA5OjAwCiAgICAgICAgICAgIFN0 YXRzICA6ICs1OTUvLTcwIGluIDYgZmlsZShzKQogICAgICAgICAgICBVUkwgICAgOiBodHRwczov L3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2lidXMvYy8wZDc5MjhlMGI3NDAxNzQwNGI2NzBk ZmJmNTU0MTBhZmZhZTFkNGZlP2JyYW5jaD1hdXRvdG9vbAoKICAgICAgICAgICAgTG9nOgogICAg ICAgICAgICBNZXJnZSBicmFuY2ggJ2YxNicKCkNvbmZsaWN0czoKCWlidXMuc3BlYwoKLS0tCmRp ZmYgLS1naXQgYS8uZ2l0aWdub3JlIGIvLmdpdGlnbm9yZQppbmRleCA4YWU4MjdmLi5hYTExOWIy IDEwMDY0NAotLS0gYS8uZ2l0aWdub3JlCisrKyBiLy5naXRpZ25vcmUKQEAgLTI0LDMgKzI0LDUg QEAgaWJ1cy0xLjMuNi50YXIuZ3oKIC9pYnVzLWdqcy0zLjAuMi4yMDExMTAxOC50YXIuZ3oKIC9p YnVzLWdqcy0zLjIuMC4yMDExMTAxOC50YXIuZ3oKIC9pYnVzLWdqcy0zLjIuMS4yMDExMTAyMS50 YXIuZ3oKKy9pYnVzLWdqcy0zLjAuMi4yMDExMTAyOC50YXIuZ3oKKy9pYnVzLWdqcy0zLjIuMS4y MDExMTAyOC50YXIuZ3oKCmRpZmYgLS1naXQgYS9pYnVzLTU0MTQ5Mi14a2IucGF0Y2ggYi9pYnVz LTU0MTQ5Mi14a2IucGF0Y2gKaW5kZXggMDQ4MDlhNC4uNTBkZjI5NCAxMDA2NDQKLS0tIGEvaWJ1 cy01NDE0OTIteGtiLnBhdGNoCisrKyBiL2lidXMtNTQxNDkyLXhrYi5wYXRjaApAQCAtMSw2ICsx LDYgQEAKLUZyb20gNzI3ODUyNDNkZmI0N2U5MDI4ZGU0NzkxMGJlZDYwMzc3NmU0ZWM2ZSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb20gNDcxZTc1ODMwNzhjMWU0YjY1MjE5YzlkMzdlMTZi ZjBkM2Q4MDhiZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKIEZyb206IGZ1aml3YXJhdCA8dGFr YW8uZnVqaXdhcmExQGdtYWlsLmNvbT4KLURhdGU6IFdlZCwgNyBTZXAgMjAxMSAxNToyNzoyNiAr MDkwMAorRGF0ZTogRnJpLCAyOCBPY3QgMjAxMSAxNToyNToxOSArMDkwMAogU3ViamVjdDogW1BB VENIXSBBZGQgWEtCIGxheW91dHMKIAogLS0tCkBAIC04NSwxMCArODUsMTAgQEAgaW5kZXggZmYw ZmFiYy4uMDU2ZGRmYyAxMDA2NDQKICAJJChEQ09ORl9ESVJTKSAgIFwKICAJJChOVUxMKQogZGlm ZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2NvbmZpZ3VyZS5hYwotaW5kZXggMzY3YjA2OS4uZTkw ZjIwZSAxMDA2NDQKK2luZGV4IGY0NTI2NjYuLjIyN2UyOGUgMTAwNjQ0CiAtLS0gYS9jb25maWd1 cmUuYWMKICsrKyBiL2NvbmZpZ3VyZS5hYwotQEAgLTE5MSw2ICsxOTEsNjAgQEAgZWxzZQorQEAg LTIyMSw2ICsyMjEsNjAgQEAgZWxzZQogICAgICBlbmFibGVfeGltPSJubyAoZGlzYWJsZWQsIHVz ZSAtLWVuYWJsZS14aW0gdG8gZW5hYmxlKSIKICBmaQogIApAQCAtMTQ5LDcgKzE0OSw3IEBAIGlu ZGV4IDM2N2IwNjkuLmU5MGYyMGUgMTAwNjQ0CiAgIyBHT2JqZWN0IGludHJvc3BlY3Rpb24KICBH T0JKRUNUX0lOVFJPU1BFQ1RJT05fQ0hFQ0soWzAuNi44XSkKICAKLUBAIC00NTcsNiArNTExLDcg QEAgYmluZGluZ3MvTWFrZWZpbGUKK0BAIC00NzgsNiArNTMyLDcgQEAgYmluZGluZ3MvTWFrZWZp bGUKICBiaW5kaW5ncy92YWxhL01ha2VmaWxlCiAgZGNvbmYvTWFrZWZpbGUKICBkY29uZi9kY29u Zi54bWwuaW4KQEAgLTE1Nyw3ICsxNTcsNyBAQCBpbmRleCAzNjdiMDY5Li5lOTBmMjBlIDEwMDY0 NAogIF0pCiAgCiAgQUNfT1VUUFVUCi1AQCAtNDcyLDYgKzUyNyw3IEBAIEJ1aWxkIG9wdGlvbnM6 CitAQCAtNDkzLDYgKzU0OCw3IEBAIEJ1aWxkIG9wdGlvbnM6CiAgICBCdWlsZCBndGsyIGltbW9k dWxlICAgICAgICRlbmFibGVfZ3RrMgogICAgQnVpbGQgZ3RrMyBpbW1vZHVsZSAgICAgICAkZW5h YmxlX2d0azMKICAgIEJ1aWxkIFhJTSBhZ2VudCBzZXJ2ZXIgICAgJGVuYWJsZV94aW0KQEAgLTI4 MCwxMCArMjgwLDEwIEBAIGluZGV4IDdjOGY4YmUuLjNjMjU2MDUgMTAwNjQ0CiArZnJvbSB4a2J4 bWwgaW1wb3J0ICoKICBmcm9tIF9jb25maWcgaW1wb3J0ICoKIGRpZmYgLS1naXQgYS9pYnVzL2J1 cy5weSBiL2lidXMvYnVzLnB5Ci1pbmRleCA1NzM4ZmFkLi4wNWVjNDllIDEwMDY0NAoraW5kZXgg YThhNDU4ZC4uODRiNDE0MCAxMDA2NDQKIC0tLSBhL2lidXMvYnVzLnB5CiArKysgYi9pYnVzL2J1 cy5weQotQEAgLTE2MCw2ICsxNjAsOSBAQCBjbGFzcyBCdXMob2JqZWN0Lk9iamVjdCk6CitAQCAt MTYzLDYgKzE2Myw5IEBAIGNsYXNzIEJ1cyhvYmplY3QuT2JqZWN0KToKICAgICAgICAgICAgICBk YXRhID0gc2VyaWFsaXphYmxlLmRlc2VyaWFsaXplX29iamVjdChkYXRhKQogICAgICAgICAgcmV0 dXJuIGRhdGEKICAKQEAgLTIxNDksNyArMjE0OSw3IEBAIGluZGV4IDAwMDAwMDAuLmFmOWVjNTMK ICsgICAgICAgIGV4cGFuZGVyLnNldF9kYXRhKCJjaGVja2VkIiwgY2hlY2tlZCkKICsKIGRpZmYg LS1naXQgYS9zcmMvTWFrZWZpbGUuYW0gYi9zcmMvTWFrZWZpbGUuYW0KLWluZGV4IDkwZTQxMmYu LmZjNzAwOGUgMTAwNjQ0CitpbmRleCA2ZjAzMjFjLi5jNjJmM2VkIDEwMDY0NAogLS0tIGEvc3Jj L01ha2VmaWxlLmFtCiArKysgYi9zcmMvTWFrZWZpbGUuYW0KIEBAIC0xODYsNiArMTg2LDExIEBA IHR5cGVsaWJzX0RBVEEgPSAkKElOVFJPU1BFQ1RJT05fR0lSUzouZ2lyPS50eXBlbGliKQpAQCAt MjE2NSw3ICsyMTY1LDcgQEAgaW5kZXggOTBlNDEyZi4uZmM3MDA4ZSAxMDA2NDQKICBpYnVzZW51 bXR5cGVzLmg6ICQoaWJ1c19oZWFkZXJzKSBpYnVzZW51bXR5cGVzLmgudGVtcGxhdGUKICAJJChB TV9WX0dFTikgKCB0b3BfYnVpbGRkaXI9YGNkICQodG9wX2J1aWxkZGlyKSAmJiBwd2RgOyBcCiBk aWZmIC0tZ2l0IGEvc3JjL2lidXMuaCBiL3NyYy9pYnVzLmgKLWluZGV4IDA3NjU3OTkuLjU4NDNi N2YgMTAwNjQ0CitpbmRleCBhZGRjNTMxLi40NjdjNzc1IDEwMDY0NAogLS0tIGEvc3JjL2lidXMu aAogKysrIGIvc3JjL2lidXMuaAogQEAgLTQ1LDYgKzQ1LDcgQEAKQEAgLTk5ODUsNSArOTk4NSw1 IEBAIGluZGV4IDAwMDAwMDAuLjZjMDBmMWQKICtHX0VORF9ERUNMUwogKyNlbmRpZgogLS0gCi0x LjcuNS40CisxLjcuNi40CiAKCmRpZmYgLS1naXQgYS9pYnVzLUhFQUQucGF0Y2ggYi9pYnVzLUhF QUQucGF0Y2gKaW5kZXggZDE1ZjliNC4uNjAzNWNlMSAxMDA2NDQKLS0tIGEvaWJ1cy1IRUFELnBh dGNoCisrKyBiL2lidXMtSEVBRC5wYXRjaApAQCAtMSw4ICsxLDEzMiBAQAotRnJvbSA1ZDUxOWZi N2E3OThlMjUyZGMyODY2NTY5NGQ1M2IwNzczNTQyNTg0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQorRnJvbSBjYjUxOWM4NTJkZmM3YTY1MmRmMTc2OGM4MTk3NGQ3NTBlZjQ4ZjU4IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQorRnJvbTogRGFpa2kgVWVubyA8dWVub0B1bml4dXNlci5vcmc+CitE YXRlOiBUaHUsIDI5IFNlcCAyMDExIDEyOjI0OjUzICswOTAwCitTdWJqZWN0OiBbUEFUQ0hdIEZp eCBoaWRpbmcgYnV0dG9uIGl0ZW1zIGluIEdUSyBwYW5lbC4KKworQlVHPW5vbmUKK1RFU1Q9bWFu dWFsCisKK1JldmlldyBVUkw6IGh0dHA6Ly9jb2RlcmV2aWV3LmFwcHNwb3QuY29tLzUxNDgwNDEK Ky0tLQorIHVpL2d0ay90b29saXRlbS5weSB8ICAgMTIgKysrKy0tLS0tLS0tCisgMSBmaWxlcyBj aGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS91 aS9ndGsvdG9vbGl0ZW0ucHkgYi91aS9ndGsvdG9vbGl0ZW0ucHkKK2luZGV4IDRiZGZmYmEuLjRm NGY5N2QgMTAwNjQ0CistLS0gYS91aS9ndGsvdG9vbGl0ZW0ucHkKKysrKyBiL3VpL2d0ay90b29s aXRlbS5weQorQEAgLTczLDExICs3Myw5IEBAIGNsYXNzIFRvb2xCdXR0b24oZ3RrLlRvb2xCdXR0 b24sIFByb3BJdGVtKToKKyAgICAgICAgIHNlbGYuc2V0X2ljb25fbmFtZShzZWxmLl9wcm9wLmlj b24pCisgCisgICAgICAgICBpZiBzZWxmLl9wcm9wLnZpc2libGU6CistICAgICAgICAgICAgc2Vs Zi5zZXRfbm9fc2hvd19hbGwoRmFsc2UpCistICAgICAgICAgICAgc2VsZi5zaG93X2FsbCgpCisr ICAgICAgICAgICAgc2VsZi5zaG93KCkKKyAgICAgICAgIGVsc2U6CistICAgICAgICAgICAgc2Vs Zi5zZXRfbm9fc2hvd19hbGwoVHJ1ZSkKKy0gICAgICAgICAgICBzZWxmLmhpZGVfYWxsKCkKKysg ICAgICAgICAgICBzZWxmLmhpZGUoKQorIAorICAgICBkZWYgZG9fY2xpY2tlZChzZWxmKToKKyAg ICAgICAgIHNlbGYuZW1pdCgicHJvcGVydHktYWN0aXZhdGUiLCBzZWxmLl9wcm9wLmtleSwgc2Vs Zi5fcHJvcC5zdGF0ZSkKK0BAIC0xMjgsMTEgKzEyNiw5IEBAIGNsYXNzIFRvZ2dsZVRvb2xCdXR0 b24oZ3RrLlRvZ2dsZVRvb2xCdXR0b24sIFByb3BJdGVtKToKKyAgICAgICAgIHNlbGYuc2V0X2Fj dGl2ZShzZWxmLl9wcm9wLnN0YXRlID09IGlidXMuUFJPUF9TVEFURV9DSEVDS0VEKQorICAgICAg ICAgc2VsZi5zZXRfc2Vuc2l0aXZlKHNlbGYuX3Byb3Auc2Vuc2l0aXZlKQorICAgICAgICAgaWYg c2VsZi5fcHJvcC52aXNpYmxlOgorLSAgICAgICAgICAgIHNlbGYuc2V0X25vX3Nob3dfYWxsKEZh bHNlKQorLSAgICAgICAgICAgIHNlbGYuc2hvd19hbGwoKQorKyAgICAgICAgICAgIHNlbGYuc2hv dygpCisgICAgICAgICBlbHNlOgorLSAgICAgICAgICAgIHNlbGYuc2V0X25vX3Nob3dfYWxsKFRy dWUpCistICAgICAgICAgICAgc2VsZi5oaWRlX2FsbCgpCisrICAgICAgICAgICAgc2VsZi5oaWRl KCkKKyAKKyAgICAgZGVmIGRvX3RvZ2dsZWQoc2VsZik6CisgICAgICAgICAjIERvIG5vdCBzZW5k IHByb3BlcnR5LWFjdGl2YXRlIHRvIGVuZ2luZSBpbiBjYXNlIHRoZSBldmVudCBpcworLS0gCisx LjcuNi40CisKK0Zyb20gZDE5MDE4Yjg3MDk4NDcwMDlkMmUwODM2Yzk0MmRkOWYxMzg1ZTdjYiBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IFl1c3VrZSBTYXRvIDx5dXN1a2VzQGNocm9t aXVtLm9yZz4KK0RhdGU6IFN1biwgOSBPY3QgMjAxMSAxMzo1Mjo0MiArMDkwMAorU3ViamVjdDog W1BBVENIXSBBbHdheXMgY29uc3VtZSBhIGhvdGtleSBwcmVzcworCitCVUc9MTMyNAorCitSZXZp ZXcgVVJMOiBodHRwOi8vY29kZXJldmlldy5hcHBzcG90LmNvbS81MjQyMDQ0CistLS0KKyBidXMv aWJ1c2ltcGwuYyB8ICAgIDYgKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMo KyksIDMgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9idXMvaWJ1c2ltcGwuYyBiL2J1cy9p YnVzaW1wbC5jCitpbmRleCAxOTQyNTA0Li4xNDk0ZjVmIDEwMDY0NAorLS0tIGEvYnVzL2lidXNp bXBsLmMKKysrKyBiL2J1cy9pYnVzaW1wbC5jCitAQCAtMjA2NiwyMSArMjA2NiwyMSBAQCBidXNf aWJ1c19pbXBsX2ZpbHRlcl9rZXlib2FyZF9zaG9ydGN1dHMgKEJ1c0lCdXNJbXBsICAgICAqaWJ1 cywKKyAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgIGJ1c19pbnB1dF9jb250ZXh0X2VuYWJs ZSAoY29udGV4dCk7CisgICAgICAgICB9CistICAgICAgICByZXR1cm4gKGVuYWJsZWQgIT0gYnVz X2lucHV0X2NvbnRleHRfaXNfZW5hYmxlZCAoY29udGV4dCkpOworKyAgICAgICAgcmV0dXJuIFRS VUU7CisgICAgIH0KKyAgICAgaWYgKGV2ZW50ID09IGVuYWJsZV91bmNvbmRpdGlvbmFsKSB7Cisg ICAgICAgICBnYm9vbGVhbiBlbmFibGVkID0gYnVzX2lucHV0X2NvbnRleHRfaXNfZW5hYmxlZCAo Y29udGV4dCk7CisgICAgICAgICBpZiAoIWVuYWJsZWQpIHsKKyAgICAgICAgICAgICBidXNfaW5w dXRfY29udGV4dF9lbmFibGUgKGNvbnRleHQpOworICAgICAgICAgfQorLSAgICAgICAgcmV0dXJu IGJ1c19pbnB1dF9jb250ZXh0X2lzX2VuYWJsZWQgKGNvbnRleHQpOworKyAgICAgICAgcmV0dXJu IFRSVUU7CisgICAgIH0KKyAgICAgaWYgKGV2ZW50ID09IGRpc2FibGVfdW5jb25kaXRpb25hbCkg eworICAgICAgICAgZ2Jvb2xlYW4gZW5hYmxlZCA9IGJ1c19pbnB1dF9jb250ZXh0X2lzX2VuYWJs ZWQgKGNvbnRleHQpOworICAgICAgICAgaWYgKGVuYWJsZWQpIHsKKyAgICAgICAgICAgICBidXNf aW5wdXRfY29udGV4dF9kaXNhYmxlIChjb250ZXh0KTsKKyAgICAgICAgIH0KKy0gICAgICAgIHJl dHVybiAhYnVzX2lucHV0X2NvbnRleHRfaXNfZW5hYmxlZCAoY29udGV4dCk7CisrICAgICAgICBy ZXR1cm4gVFJVRTsKKyAgICAgfQorICAgICBpZiAoZXZlbnQgPT0gbmV4dCkgeworICAgICAgICAg aWYgKGJ1c19pbnB1dF9jb250ZXh0X2lzX2VuYWJsZWQgKGNvbnRleHQpKSB7CistLSAKKzEuNy42 LjQKKworRnJvbSBlZTk2NmUzMjdjYzNiMWI0YmJhNDAzNzliYzBmYmIzZDQ2YzM4MjM5IE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQogRnJvbTogZnVqaXdhcmF0IDx0YWthby5mdWppd2FyYTFAZ21h aWwuY29tPgotRGF0ZTogVGh1LCAyMCBPY3QgMjAxMSAxMTowMDoyMyArMDkwMAorRGF0ZTogVHVl LCAyNSBPY3QgMjAxMSAxMDozNzoyMiArMDkwMAorU3ViamVjdDogW1BBVENIXSBBZGQgaWJ1c3V0 aWwuaCBpbiBpYnVzLmgKKworQlVHPWh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9pYnVzL2lzc3Vl cy9kZXRhaWw/aWQ9MTMzOAorVEVTVD1MaW51eCBkZXNrdG9wCisKK1JldmlldyBVUkw6IGh0dHA6 Ly9jb2RlcmV2aWV3LmFwcHNwb3QuY29tLzUyOTQwNTQKKy0tLQorIHNyYy9pYnVzLmggfCAgICAx ICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKwor ZGlmZiAtLWdpdCBhL3NyYy9pYnVzLmggYi9zcmMvaWJ1cy5oCitpbmRleCAwNzY1Nzk5Li5hZGRj NTMxIDEwMDY0NAorLS0tIGEvc3JjL2lidXMuaAorKysrIGIvc3JjL2lidXMuaAorQEAgLTUyLDYg KzUyLDcgQEAKKyAjaW5jbHVkZSA8aWJ1c2NvbmZpZy5oPgorICNpbmNsdWRlIDxpYnVzY29uZmln c2VydmljZS5oPgorICNpbmNsdWRlIDxpYnVzcGFuZWxzZXJ2aWNlLmg+CisrI2luY2x1ZGUgPGli dXN1dGlsLmg+CisgCisgI3VuZGVmIF9fSUJVU19IX0lOU0lERV9fCisgCistLSAKKzEuNy42LjQK KworRnJvbSA5MTBmOGE2NDA5OGQ4OWIwNGM1MDA1NmY2MjFlYzFhNDlkZDNlN2VhIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQorRnJvbTogZnVqaXdhcmF0IDx0YWthby5mdWppd2FyYTFAZ21haWwu Y29tPgorRGF0ZTogVHVlLCAyNSBPY3QgMjAxMSAxMDo1MDozNCArMDkwMAogU3ViamVjdDogW1BB VENIXSBGaXggcHJldmlvdXNfZW5naW5lIHdpdGhvdXQgZ2xvYmFsIGVuZ2luZS4KIAorQlVHPWh0 dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9pYnVzL2lzc3Vlcy9kZXRhaWw/aWQ9MTMzMQorVEVTVD1M aW51eCBkZXNrdG9wCisKK1JldmlldyBVUkw6IGh0dHA6Ly9jb2RlcmV2aWV3LmFwcHNwb3QuY29t LzUyOTcwNDcKIC0tLQogIGJ1cy9pYnVzaW1wbC5jIHwgICAzMSArKysrKysrKysrKysrKysrKysr LS0tLS0tLS0tLS0tCiAgMSBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAxMiBkZWxl dGlvbnMoLSkKQEAgLTgxLDMgKzIwNSwxMjMgQEAgaW5kZXggMTQ5NGY1Zi4uMGE0ZjNmYiAxMDA2 NDQKIC0tIAogMS43LjYuNAogCitGcm9tIGNjYTRmZDg5OTM2MTNhNjk5Mzk2NWMzMTIwMzIzZTQz YzQ2NDdlZjUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBEYWlraSBVZW5vIDx1ZW5v QHVuaXh1c2VyLm9yZz4KK0RhdGU6IEZyaSwgMjggT2N0IDIwMTEgMTU6NDI6MDggKzA5MDAKK1N1 YmplY3Q6IFtQQVRDSF0gRG9uJ3Qgc2V0IGZvY3VzIG9uIEdUSyBwYXNzd29yZCBlbnRyeS4KKwor Rm9yIGFuIG9sZCBidWc6CitodHRwczovL2J1Z3ppbGxhLnJlZGhhdC5jb20vc2hvd19idWcuY2dp P2lkPTQ4NDY0MworSW5wdXQgbWV0aG9kIHNob3VsZCBiZSBkaXNhYmxlZCBvbiBwYXNzd29yZCBl bnRyeSBmb3Igc2VjdXJpdHkgcmVhc29uLgorCitCVUc9bm9uZQorVEVTVD1tYW51YWxseSB3aXRo IGd0ay1kZW1vICJFbnRyeSBCdWZmZXIiIGV4YW1wbGUKKworUmV2aWV3IFVSTDogaHR0cDovL2Nv ZGVyZXZpZXcuYXBwc3BvdC5jb20vNTMxOTA1MworLS0tCisgY2xpZW50L2d0azIvaWJ1c2ltY29u dGV4dC5jIHwgICAxMyArKysrKysrKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRp b25zKCspLCAwIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvY2xpZW50L2d0azIvaWJ1c2lt Y29udGV4dC5jIGIvY2xpZW50L2d0azIvaWJ1c2ltY29udGV4dC5jCitpbmRleCAzMjdhNWQ5Li5i NmNhMTJlIDEwMDY0NAorLS0tIGEvY2xpZW50L2d0azIvaWJ1c2ltY29udGV4dC5jCisrKysgYi9j bGllbnQvZ3RrMi9pYnVzaW1jb250ZXh0LmMKK0BAIC03MzQsNiArNzM0LDE5IEBAIGlidXNfaW1f Y29udGV4dF9mb2N1c19pbiAoR3RrSU1Db250ZXh0ICpjb250ZXh0KQorICAgICBpZiAoaWJ1c2lt Y29udGV4dC0+aGFzX2ZvY3VzKQorICAgICAgICAgcmV0dXJuOworIAorKyAgICAvKiBkb24ndCBz ZXQgZm9jdXMgb24gcGFzc3dvcmQgZW50cnkgKi8KKysgICAgaWYgKGlidXNpbWNvbnRleHQtPmNs aWVudF93aW5kb3cgIT0gTlVMTCkgeworKyAgICAgICAgR3RrV2lkZ2V0ICp3aWRnZXQ7CisrCisr ICAgICAgICBnZGtfd2luZG93X2dldF91c2VyX2RhdGEgKGlidXNpbWNvbnRleHQtPmNsaWVudF93 aW5kb3csCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChncG9pbnRlciAqKSZ3 aWRnZXQpOworKworKyAgICAgICAgaWYgKEdUS19JU19FTlRSWSAod2lkZ2V0KSAmJgorKyAgICAg ICAgICAgICFndGtfZW50cnlfZ2V0X3Zpc2liaWxpdHkgKEdUS19FTlRSWSAod2lkZ2V0KSkpIHsK KysgICAgICAgICAgICByZXR1cm47CisrICAgICAgICB9CisrICAgIH0KKysKKyAgICAgaWYgKF9m b2N1c19pbV9jb250ZXh0ICE9IE5VTEwpIHsKKyAgICAgICAgIGdfYXNzZXJ0IChfZm9jdXNfaW1f Y29udGV4dCAhPSBjb250ZXh0KTsKKyAgICAgICAgIGd0a19pbV9jb250ZXh0X2ZvY3VzX291dCAo X2ZvY3VzX2ltX2NvbnRleHQpOworLS0gCisxLjcuNi40CisKK0Zyb20gZDU3YjU3NWYyYTFiMzNi NjBhZDg0MzEwYTRlNjg1ZTcwNmY4YTU3NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206 IGZ1aml3YXJhdCA8dGFrYW8uZnVqaXdhcmExQGdtYWlsLmNvbT4KK0RhdGU6IEZyaSwgMjggT2N0 IDIwMTEgMTM6MDk6MDcgKzA5MDAKK1N1YmplY3Q6IFtQQVRDSF0gUmVyb3RhdGUgbmV4dC9wcmV2 aW91cyBlbmdpbmVzIHdpdGhvdXQgZ2xvYmFsIGVuZ2luZS4KKworLS0tCisgYnVzL2lidXNpbXBs LmMgfCAgIDMzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLQorIDEgZmlsZXMgY2hh bmdlZCwgMzAgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2J1 cy9pYnVzaW1wbC5jIGIvYnVzL2lidXNpbXBsLmMKK2luZGV4IDBhNGYzZmIuLjY4N2Y5MTAgMTAw NjQ0CistLS0gYS9idXMvaWJ1c2ltcGwuYworKysrIGIvYnVzL2lidXNpbXBsLmMKK0BAIC0xMDU2 LDcgKzEwNTYsNyBAQCBidXNfaWJ1c19pbXBsX2NvbnRleHRfcmVxdWVzdF9yb3RhdGVfZW5naW5l X2luX21lbnUgKEJ1c0lCdXNJbXBsICAgICAqaWJ1cywKKyAgICAgQnVzRW5naW5lUHJveHkgKmVu Z2luZTsKKyAgICAgSUJ1c0VuZ2luZURlc2MgKmRlc2M7CisgICAgIElCdXNFbmdpbmVEZXNjICpu ZXh0X2Rlc2MgPSBOVUxMOworLSAgICBHTGlzdCAqcDsKKysgICAgR0xpc3QgKnAgPSBOVUxMOwor IAorICAgICBlbmdpbmUgPSBidXNfaW5wdXRfY29udGV4dF9nZXRfZW5naW5lIChjb250ZXh0KTsK KyAgICAgaWYgKGVuZ2luZSA9PSBOVUxMKSB7CitAQCAtMTA3NCwyMSArMTA3NCw0OCBAQCBidXNf aWJ1c19pbXBsX2NvbnRleHRfcmVxdWVzdF9yb3RhdGVfZW5naW5lX2luX21lbnUgKEJ1c0lCdXNJ bXBsICAgICAqaWJ1cywKKyAgICAgaWYgKHAgIT0gTlVMTCkgeworICAgICAgICAgaWYgKGlzX25l eHQpIHsKKyAgICAgICAgICAgICBwID0gcC0+bmV4dDsKKy0gICAgICAgIH0gZWxzZSBpZiAocC0+ cHJldikgeworKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICBwID0gcC0+cHJldjsKKyAg ICAgICAgIH0KKyAgICAgfQorKworKyAgICAvKiBSb3RhdGUgcmVnaXN0ZXJfZW5naW5lX2xpc3Qg YW5kIGVuZ2luZV9saXN0LiAqLworKyAgICBpZiAocCA9PSBOVUxMICYmIGlzX25leHQgJiYKKysg ICAgICAgIGdfbGlzdF9maW5kIChpYnVzLT5yZWdpc3Rlcl9lbmdpbmVfbGlzdCwgZGVzYykgIT0g TlVMTCkgeworKyAgICAgICAgcCA9IGlidXMtPmVuZ2luZV9saXN0OworKyAgICB9CisrICAgIGVs c2UgaWYgKHAgPT0gTlVMTCAmJiAhaXNfbmV4dCAmJgorKyAgICAgICAgICAgICBnX2xpc3RfZmlu ZCAoaWJ1cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3QsIGRlc2MpICE9IE5VTEwgJiYKKysgICAgICAg ICAgICAgaWJ1cy0+ZW5naW5lX2xpc3QgIT0gTlVMTCkgeworKyAgICAgICAgcCA9IGdfbGlzdF9s YXN0IChpYnVzLT5lbmdpbmVfbGlzdCk7CisrICAgIH0KKysKKyAgICAgaWYgKHAgPT0gTlVMTCkg eworICAgICAgICAgcCA9IGdfbGlzdF9maW5kIChpYnVzLT5lbmdpbmVfbGlzdCwgZGVzYyk7Cisg ICAgICAgICBpZiAocCAhPSBOVUxMKSB7CisgICAgICAgICAgICAgaWYgKGlzX25leHQpIHsKKyAg ICAgICAgICAgICAgICAgcCA9IHAtPm5leHQ7CistICAgICAgICAgICAgfSBlbHNlIGlmIChwLT5w cmV2KSB7CisrICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgcCA9IHAtPnBy ZXY7CisgICAgICAgICAgICAgfQorICAgICAgICAgfQorICAgICB9CisgCisrICAgIGlmIChwID09 IE5VTEwgJiYgIWlzX25leHQgJiYKKysgICAgICAgIGdfbGlzdF9maW5kIChpYnVzLT5lbmdpbmVf bGlzdCwgZGVzYykgIT0gTlVMTCkgeworKyAgICAgICAgcCA9IGdfbGlzdF9sYXN0IChpYnVzLT5y ZWdpc3Rlcl9lbmdpbmVfbGlzdCk7CisrICAgICAgICBpZiAocCA9PSBOVUxMKSB7CisrICAgICAg ICAgICAgcCA9IGdfbGlzdF9sYXN0IChpYnVzLT5lbmdpbmVfbGlzdCk7CisrICAgICAgICB9Cisr ICAgIH0KKysgICAgZWxzZSBpZiAocCA9PSBOVUxMICYmIGlzX25leHQgJiYKKysgICAgICAgICAg ICAgZ19saXN0X2ZpbmQgKGlidXMtPmVuZ2luZV9saXN0LCBkZXNjKSAhPSBOVUxMKSB7CisrICAg ICAgICBwID0gaWJ1cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3Q7CisrICAgICAgICBpZiAocCA9PSBO VUxMKSB7CisrICAgICAgICAgICAgcCA9IGlidXMtPmVuZ2luZV9saXN0OworKyAgICAgICAgfQor KyAgICB9CisrCisgICAgIGlmIChwICE9IE5VTEwpIHsKKyAgICAgICAgIG5leHRfZGVzYyA9IChJ QnVzRW5naW5lRGVzYyopIHAtPmRhdGE7CisgICAgIH0KKy0tIAorMS43LjYuNAorCgpkaWZmIC0t Z2l0IGEvaWJ1cy14eC1icmlkZ2UtaG90a2V5LnBhdGNoIGIvaWJ1cy14eC1icmlkZ2UtaG90a2V5 LnBhdGNoCmluZGV4IDNkNThhMTkuLmMwNGMxZTQgMTAwNjQ0Ci0tLSBhL2lidXMteHgtYnJpZGdl LWhvdGtleS5wYXRjaAorKysgYi9pYnVzLXh4LWJyaWRnZS1ob3RrZXkucGF0Y2gKQEAgLTEsMzgg KzEsNDAgQEAKLUZyb20gNTEzNmU0MTM2ZTM4MjcxZGExOTVkYTc2ZTEzNzczMDhkYmMyZWQ2NCBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb20gMGM3NTg5Zjg0ZDRhMGU4NzIzZjdmY2UzNzk4 MWQxNzdhMTFkYTRmNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKIEZyb206IGZ1aml3YXJhdCA8 dGFrYW8uZnVqaXdhcmExQGdtYWlsLmNvbT4KLURhdGU6IEZyaSwgMTIgQXVnIDIwMTEgMTY6NDI6 NTIgKzA5MDAKK0RhdGU6IEZyaSwgMjggT2N0IDIwMTEgMTU6MzA6MTIgKzA5MDAKIFN1YmplY3Q6 IFtQQVRDSF0gQWRkIGEgYnJpZGdlIGhvdGtleSB3aGljaCB1c2UgcHJldi1uZXh0IGVuZ2luZXMg aW5zdGVhZAogIG9mIG9uLW9mZi4KIAogLS0tCiAgYnVzL01ha2VmaWxlLmFtICAgICAgICAgICAg ICAgICB8ICAgMjAgKy0KLSBidXMvaWJ1c2ltcGwuYyAgICAgICAgICAgICAgICAgIHwgIDUwMSAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0KLSBidXMvaW5wdXRjb250ZXh0 LmMgICAgICAgICAgICAgIHwgICAzOSArKysKKyBidXMvaWJ1c2ltcGwuYyAgICAgICAgICAgICAg ICAgIHwgIDU3MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0KKyBidXMv aW5wdXRjb250ZXh0LmMgICAgICAgICAgICAgIHwgICA4MSArKysrKysKICBidXMvaW5wdXRjb250 ZXh0LmggICAgICAgICAgICAgIHwgICAyMiArKwogIGJ1cy9yZWdpc3RyeS5jICAgICAgICAgICAg ICAgICAgfCAgIDYxICsrKysrCiAgYnVzL3JlZ2lzdHJ5LmggICAgICAgICAgICAgICAgICB8ICAg MTAgKwogIGNvbmZpZ3VyZS5hYyAgICAgICAgICAgICAgICAgICAgfCAgIDMxICsrKwogIGRhdGEv TWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgfCAgICA2ICstCi0gZGF0YS9pYnVzLnNjaGVtYXMu aW4gICAgICAgICAgICB8ICAyODcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIGRhdGEvaWJ1cy5z Y2hlbWFzLmluLmluICAgICAgICAgfCAgMzAwICsrKysrKysrKysrKysrKysrKysrKysrCisgZGF0 YS9pYnVzLnNjaGVtYXMuaW4gICAgICAgICAgICB8ICAyODcgLS0tLS0tLS0tLS0tLS0tLS0tLS0K KyBkYXRhL2lidXMuc2NoZW1hcy5pbi5pbiAgICAgICAgIHwgIDMwMCArKysrKysrKysrKysrKysr KysrKwogIGlidXMvX2NvbmZpZy5weS5pbiAgICAgICAgICAgICAgfCAgICA2ICsKLSBpYnVzL2lu cHV0Y29udGV4dC5weSAgICAgICAgICAgIHwgICAxNCArLQotIGlidXMvaW50ZXJmYWNlL2lpbnB1 dGNvbnRleHQucHkgfCAgICA0ICstCisgaWJ1cy9pbnB1dGNvbnRleHQucHkgICAgICAgICAgICB8 ICAgMTcgKystCisgaWJ1cy9pbnRlcmZhY2UvaWlucHV0Y29udGV4dC5weSB8ICAgIDcgKy0KICBp YnVzL3hrYnhtbC5weS5pbiAgICAgICAgICAgICAgIHwgICAgNCArCiAgc2V0dXAvZW5naW5lY29t Ym9ib3gucHkgICAgICAgICB8ICAgIDMgKwogIHNldHVwL2VuZ2luZXRyZWV2aWV3LnB5ICAgICAg ICAgfCAgICA4ICstCiAgc2V0dXAvbWFpbi5weSAgICAgICAgICAgICAgICAgICB8ICAgMjQgKysK LSBzZXR1cC9zZXR1cC51aSAgICAgICAgICAgICAgICAgIHwgICA1NSArKysrKy0KKyBzZXR1cC9z ZXR1cC51aSAgICAgICAgICAgICAgICAgIHwgICA1NSArKysrLQogIHNyYy9NYWtlZmlsZS5hbSAg ICAgICAgICAgICAgICAgfCAgIDE4ICstCiAgc3JjL2lidXNob3RrZXkuYyAgICAgICAgICAgICAg ICB8ICAgMTEgKwogIHNyYy9pYnVzaG90a2V5LmggICAgICAgICAgICAgICAgfCAgIDExICsKKyBz cmMvaWJ1c2lucHV0Y29udGV4dC5jICAgICAgICAgIHwgICAyOCArKworIHNyYy9pYnVzaW5wdXRj b250ZXh0LmggICAgICAgICAgfCAgIDEyICsKICBzcmMvaWJ1c3V0aWwuYyAgICAgICAgICAgICAg ICAgIHwgICAxMiArCiAgc3JjL2lidXN1dGlsLmggICAgICAgICAgICAgICAgICB8ICAgMTQgKwot IHVpL2d0ay9wYW5lbC5weSAgICAgICAgICAgICAgICAgfCAgMjcxICsrKysrKysrKysrKysrKysr KysrLS0KKyB1aS9ndGsvcGFuZWwucHkgICAgICAgICAgICAgICAgIHwgIDMwNSArKysrKysrKysr KysrKysrKysrLS0KICB4a2IvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgIHwgICAgMiArCi0g eGtiL2lidXMtZW5naW5lLXhrYi1tYWluLmMgICAgICB8ICAgMTkgKysKKyB4a2IvaWJ1cy1lbmdp bmUteGtiLW1haW4uYyAgICAgIHwgICAxNiArKwogIHhrYi94a2J4bWwuYyAgICAgICAgICAgICAg ICAgICAgfCAgIDEwICstCi0gMjggZmlsZXMgY2hhbmdlZCwgMTM3NCBpbnNlcnRpb25zKCspLCAz OTEgZGVsZXRpb25zKC0pCisgMjkgZmlsZXMgY2hhbmdlZCwgMTU2MSBpbnNlcnRpb25zKCspLCAz OTEgZGVsZXRpb25zKC0pCiAgZGVsZXRlIG1vZGUgMTAwNjQ0IGRhdGEvaWJ1cy5zY2hlbWFzLmlu CiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRhdGEvaWJ1cy5zY2hlbWFzLmluLmluCiAKQEAgLTg5LDE4 ICs5MSwxOSBAQCBpbmRleCA4NTM0NjVjLi4wMDg2NGFjIDEwMDY0NAogICNpbmNsdWRlICJ0eXBl cy5oIgogICNpbmNsdWRlICJpYnVzaW1wbC5oIgogICNpbmNsdWRlICJkYnVzaW1wbC5oIgotQEAg LTc5LDYgKzg0LDEwIEBAIHN0cnVjdCBfQnVzSUJ1c0ltcGwgeworQEAgLTc5LDYgKzg0LDExIEBA IHN0cnVjdCBfQnVzSUJ1c0ltcGwgewogICAgICAvKiBlbmdpbmUtc3BlY2lmaWMgaG90a2V5cyAq LwogICAgICBJQnVzSG90a2V5UHJvZmlsZSAqZW5naW5lc19ob3RrZXlfcHJvZmlsZTsKICAgICAg R0hhc2hUYWJsZSAgICAgICpob3RrZXlfdG9fZW5naW5lc19tYXA7CiArCiArI2lmIFVTRV9CUklE R0VfSE9US0VZCiArICAgIElCdXNFbmdpbmVEZXNjICpwcmV2X2hvdGtleV9lbmdpbmU7CisrICAg IGd1aW50ICAgICAgICAgICB4a2JfZ3JvdXBfbGVuZ3RoOwogKyNlbmRpZgogIH07CiAgCiAgc3Ry dWN0IF9CdXNJQnVzSW1wbENsYXNzIHsKLUBAIC05OSw2ICsxMDgsOCBAQCBlbnVtIHsKK0BAIC05 OSw2ICsxMDksOCBAQCBlbnVtIHsKICBzdGF0aWMgZ3VpbnQgICAgICAgICAgICBfc2lnbmFsc1tM QVNUX1NJR05BTF0gPSB7IDAgfTsKICAqLwogIApAQCAtMTA5LDcgKzExMiw3IEBAIGluZGV4IDg1 MzQ2NWMuLjAwODY0YWMgMTAwNjQ0CiAgLyogZnVuY3Rpb25zIHByb3RvdHlwZSAqLwogIHN0YXRp YyB2b2lkICAgICAgYnVzX2lidXNfaW1wbF9kZXN0cm95ICAgICAgICAgICAoQnVzSUJ1c0ltcGwg ICAgICAgICppYnVzKTsKICBzdGF0aWMgdm9pZCAgICAgIGJ1c19pYnVzX2ltcGxfc2VydmljZV9t ZXRob2RfY2FsbAotQEAgLTI4NSw2ICsyOTYsMTEyIEBAIF9wYW5lbF9kZXN0cm95X2NiIChCdXNQ YW5lbFByb3h5ICpwYW5lbCwKK0BAIC0yODUsNiArMjk3LDExMiBAQCBfcGFuZWxfZGVzdHJveV9j YiAoQnVzUGFuZWxQcm94eSAqcGFuZWwsCiAgICAgIGdfb2JqZWN0X3VucmVmIChwYW5lbCk7CiAg fQogIApAQCAtMjIyLDcgKzIyNSw3IEBAIGluZGV4IDg1MzQ2NWMuLjAwODY0YWMgMTAwNjQ0CiAg c3RhdGljIHZvaWQKICBfY29uZmlnX3NldF92YWx1ZV9kb25lIChHT2JqZWN0ICAgICAgKm9iamVj dCwKICAgICAgICAgICAgICAgICAgICAgICAgICBHQXN5bmNSZXN1bHQgKnJlcywKLUBAIC01NjIs NiArNjc5LDY3IEBAIGJ1c19pYnVzX2ltcGxfc2V0X2hvdGtleSAoQnVzSUJ1c0ltcGwgKmkKK0BA IC01NzIsNiArNjkwLDY3IEBAIGJ1c19pYnVzX2ltcGxfc2V0X2hvdGtleSAoQnVzSUJ1c0ltcGwg KmkKICAKICB9CiAgCkBAIC0yOTAsNyArMjkzLDcgQEAgaW5kZXggODUzNDY1Yy4uMDA4NjRhYyAx MDA2NDQKICAvKioKICAgKiBidXNfaWJ1c19pbXBsX3NldF90cmlnZ2VyOgogICAqCi1AQCAtNTcz LDcgKzc1MSwxNSBAQCBidXNfaWJ1c19pbXBsX3NldF90cmlnZ2VyIChCdXNJQnVzSW1wbCAqCitA QCAtNTgzLDcgKzc2MiwxNSBAQCBidXNfaWJ1c19pbXBsX3NldF90cmlnZ2VyIChCdXNJQnVzSW1w bCAqCiAgewogICAgICBHUXVhcmsgaG90a2V5ID0gZ19xdWFya19mcm9tX3N0YXRpY19zdHJpbmcg KCJ0cmlnZ2VyIik7CiAgICAgIGlmICh2YWx1ZSAhPSBOVUxMKSB7CkBAIC0zMDYsNyArMzA5LDcg QEAgaW5kZXggODUzNDY1Yy4uMDA4NjRhYyAxMDA2NDQKICAgICAgfQogICNpZm5kZWYgT1NfQ0hS T01FT1MKICAgICAgZWxzZSB7Ci1AQCAtNjM5LDYgKzgyNSw3MiBAQCBidXNfaWJ1c19pbXBsX3Nl dF9wcmV2aW91c19lbmdpbmUgKEJ1c0lCCitAQCAtNjQ5LDYgKzgzNiw3MiBAQCBidXNfaWJ1c19p bXBsX3NldF9wcmV2aW91c19lbmdpbmUgKEJ1c0lCCiAgICAgIGJ1c19pYnVzX2ltcGxfc2V0X2hv dGtleSAoaWJ1cywgaG90a2V5LCB2YWx1ZSk7CiAgfQogIApAQCAtMzc5LDcgKzM4Miw3IEBAIGlu ZGV4IDg1MzQ2NWMuLjAwODY0YWMgMTAwNjQ0CiAgLyoqCiAgICogYnVzX2lidXNfaW1wbF9zZXRf cHJlbG9hZF9lbmdpbmVzOgogICAqCi1AQCAtNjU4LDYgKzkxMCw5IEBAIGJ1c19pYnVzX2ltcGxf c2V0X3ByZWxvYWRfZW5naW5lcyAoQnVzSUIKK0BAIC02NjgsNiArOTIxLDkgQEAgYnVzX2lidXNf aW1wbF9zZXRfcHJlbG9hZF9lbmdpbmVzIChCdXNJQgogICAgICAgICAgICAgIF9zZXRfcHJlbG9h ZF9lbmdpbmVzIChpYnVzLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgIH0KQEAgLTM4OSw3ICsz OTIsNyBAQCBpbmRleCA4NTM0NjVjLi4wMDg2NGFjIDEwMDY0NAogICNlbHNlCiAgICAgIF9zZXRf cHJlbG9hZF9lbmdpbmVzIChpYnVzLCB2YWx1ZSk7CiAgI2VuZGlmCi1AQCAtMTIxNiw3ICsxNDcx LDcxIEBAIF9jb250ZXh0X3JlcXVlc3RfZW5naW5lX2NiIChCdXNJbnB1dENvbnQKK0BAIC0xMjI2 LDcgKzE0ODIsNzMgQEAgX2NvbnRleHRfcmVxdWVzdF9lbmdpbmVfY2IgKEJ1c0lucHV0Q29udAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAgICAgKmVuZ2luZV9uYW1l LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCdXNJQnVzSW1wbCAgICAgKmlidXMpCiAg ewpAQCAtNDE0LDcgKzQxNyw5IEBAIGluZGV4IDg1MzQ2NWMuLjAwODY0YWMgMTAwNjQ0CiArICAg ICAgICB9CiArICAgIH0KICsKLSsgICAgaWYgKGN1cnJlbnRfZGVzYykgeworKyAgICBpZiAoY3Vy cmVudF9kZXNjICYmIGRlc2MgJiYKKysgICAgICAgIGdfc3RyY21wMCAoaWJ1c19lbmdpbmVfZGVz Y19nZXRfbmFtZSAoY3VycmVudF9kZXNjKSwKKysgICAgICAgICAgICAgICAgICAgaWJ1c19lbmdp bmVfZGVzY19nZXRfbmFtZSAoZGVzYykpICE9IDApIHsKICsgICAgICAgIGlmIChjb250ZXh0KSB7 CiArICAgICAgICAgICAgYnVzX2lucHV0X2NvbnRleHRfc2V0X3ByZXZfaG90a2V5X2VuZ2luZSAo Y29udGV4dCwgY3VycmVudF9kZXNjKTsKICsgICAgICAgIH0gZWxzZSB7CkBAIC00NjIsNyArNDY3 LDcgQEAgaW5kZXggODUzNDY1Yy4uMDA4NjRhYyAxMDA2NDQKICB9CiAgCiAgLyoqCi1AQCAtMTI1 NSw4ICsxNTc0LDEzIEBAIGJ1c19pYnVzX2ltcGxfZ2V0X2VuZ2luZV9kZXNjIChCdXNJQnVzSW0K K0BAIC0xMjY1LDggKzE1ODcsMTMgQEAgYnVzX2lidXNfaW1wbF9nZXRfZW5naW5lX2Rlc2MgKEJ1 c0lCdXNJbQogICAgICAgICAgaWYgKCFkZXNjKSB7CiAgICAgICAgICAgICAgaWYgKGlidXMtPnJl Z2lzdGVyX2VuZ2luZV9saXN0KSB7CiAgICAgICAgICAgICAgICAgIGRlc2MgPSAoSUJ1c0VuZ2lu ZURlc2MgKikgaWJ1cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3QtPmRhdGE7CkBAIC00NzcsNyArNDgy LDkyIEBAIGluZGV4IDg1MzQ2NWMuLjAwODY0YWMgMTAwNjQ0CiAgICAgICAgICAgICAgICAgIGRl c2MgPSAoSUJ1c0VuZ2luZURlc2MgKikgaWJ1cy0+ZW5naW5lX2xpc3QtPmRhdGE7CiAgICAgICAg ICAgICAgfQogICAgICAgICAgfQotQEAgLTE0MDcsNiArMTczMSw5IEBAIGJ1c19pYnVzX2ltcGxf c2V0X2ZvY3VzZWRfY29udGV4dCAoQnVzSUJ1c0ltcGwgICAgICppYnVzLAorQEAgLTEzMTEsOSAr MTYzOCwyMCBAQCBidXNfaWJ1c19pbXBsX2NvbnRleHRfcmVxdWVzdF9yb3RhdGVfZW5nCisgICAg IGRlc2MgPSBidXNfZW5naW5lX3Byb3h5X2dldF9kZXNjIChlbmdpbmUpOworIAorICAgICBwID0g Z19saXN0X2ZpbmQgKGlidXMtPnJlZ2lzdGVyX2VuZ2luZV9saXN0LCBkZXNjKTsKKysjaWYgVVNF X0JSSURHRV9IT1RLRVkKKysgICAgaWYgKCF1c2VfYnJpZGdlX2hvdGtleSAoaWJ1cykpIHsKKysg ICAgICAgIHAgPSBOVUxMOworKyAgICB9CisrI2VuZGlmCisgICAgIGlmIChwICE9IE5VTEwpIHsK KyAgICAgICAgIGlmIChpc19uZXh0KSB7CisgICAgICAgICAgICAgcCA9IHAtPm5leHQ7CisrI2lm IFVTRV9CUklER0VfSE9US0VZCisrICAgICAgICAgICAgaWYgKHAgJiYgZ19saXN0X2xlbmd0aCAo aWJ1cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3QpIC0KKysgICAgICAgICAgICAgICAgICAgIGdfbGlz dF9sZW5ndGggKHApID49IGlidXMtPnhrYl9ncm91cF9sZW5ndGgpIHsKKysgICAgICAgICAgICAg ICAgcCA9IE5VTEw7CisrICAgICAgICAgICAgfQorKyNlbmRpZgorICAgICAgICAgfSBlbHNlIHsK KyAgICAgICAgICAgICBwID0gcC0+cHJldjsKKyAgICAgICAgIH0KK0BAIC0xMzQ0LDYgKzE2ODIs MTUgQEAgYnVzX2lidXNfaW1wbF9jb250ZXh0X3JlcXVlc3Rfcm90YXRlX2VuZworICAgICBpZiAo cCA9PSBOVUxMICYmICFpc19uZXh0ICYmCisgICAgICAgICBnX2xpc3RfZmluZCAoaWJ1cy0+ZW5n aW5lX2xpc3QsIGRlc2MpICE9IE5VTEwpIHsKKyAgICAgICAgIHAgPSBnX2xpc3RfbGFzdCAoaWJ1 cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3QpOworKyNpZiBVU0VfQlJJREdFX0hPVEtFWQorKyAgICAg ICAgaWYgKCF1c2VfYnJpZGdlX2hvdGtleSAoaWJ1cykpIHsKKysgICAgICAgICAgICBwID0gTlVM TDsKKysgICAgICAgIH0KKysgICAgICAgIGVsc2UgaWYgKGlidXMtPnhrYl9ncm91cF9sZW5ndGgg PiAwKSB7CisrICAgICAgICAgICAgcCA9IGdfbGlzdF9udGggKGlidXMtPnJlZ2lzdGVyX2VuZ2lu ZV9saXN0LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpYnVzLT54a2JfZ3JvdXBfbGVu Z3RoIC0gMSk7CisrICAgICAgICB9CisrI2VuZGlmCisgICAgICAgICBpZiAocCA9PSBOVUxMKSB7 CisgICAgICAgICAgICAgcCA9IGdfbGlzdF9sYXN0IChpYnVzLT5lbmdpbmVfbGlzdCk7CisgICAg ICAgICB9CitAQCAtMTM1MSw2ICsxNjk4LDExIEBAIGJ1c19pYnVzX2ltcGxfY29udGV4dF9yZXF1 ZXN0X3JvdGF0ZV9lbmcKKyAgICAgZWxzZSBpZiAocCA9PSBOVUxMICYmIGlzX25leHQgJiYKKyAg ICAgICAgICAgICAgZ19saXN0X2ZpbmQgKGlidXMtPmVuZ2luZV9saXN0LCBkZXNjKSAhPSBOVUxM KSB7CisgICAgICAgICBwID0gaWJ1cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3Q7CisrI2lmIFVTRV9C UklER0VfSE9US0VZCisrICAgICAgICBpZiAoIXVzZV9icmlkZ2VfaG90a2V5IChpYnVzKSkgewor KyAgICAgICAgICAgIHAgPSBOVUxMOworKyAgICAgICAgfQorKyNlbmRpZgorICAgICAgICAgaWYg KHAgPT0gTlVMTCkgeworICAgICAgICAgICAgIHAgPSBpYnVzLT5lbmdpbmVfbGlzdDsKKyAgICAg ICAgIH0KK0BAIC0xMzYwLDE0ICsxNzEyLDI1IEBAIGJ1c19pYnVzX2ltcGxfY29udGV4dF9yZXF1 ZXN0X3JvdGF0ZV9lbmcKKyAgICAgICAgIG5leHRfZGVzYyA9IChJQnVzRW5naW5lRGVzYyopIHAt PmRhdGE7CisgICAgIH0KKyAgICAgZWxzZSB7CisrI2lmIFVTRV9CUklER0VfSE9US0VZCisrICAg ICAgICBpZiAodXNlX2JyaWRnZV9ob3RrZXkgKGlidXMpICYmIGlidXMtPnJlZ2lzdGVyX2VuZ2lu ZV9saXN0KSB7CisrICAgICAgICAgICAgbmV4dF9kZXNjID0gKElCdXNFbmdpbmVEZXNjICopIGli dXMtPnJlZ2lzdGVyX2VuZ2luZV9saXN0LT5kYXRhOworKyAgICAgICAgfQorKyNlbHNlCisgICAg ICAgICBpZiAoaWJ1cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3QpIHsKKyAgICAgICAgICAgICBuZXh0 X2Rlc2MgPSAoSUJ1c0VuZ2luZURlc2MgKikgaWJ1cy0+cmVnaXN0ZXJfZW5naW5lX2xpc3QtPmRh dGE7CisgICAgICAgICB9CisrI2VuZGlmCisgICAgICAgICBlbHNlIGlmIChpYnVzLT5lbmdpbmVf bGlzdCkgeworICAgICAgICAgICAgIG5leHRfZGVzYyA9IChJQnVzRW5naW5lRGVzYyAqKSBpYnVz LT5lbmdpbmVfbGlzdC0+ZGF0YTsKKyAgICAgICAgIH0KKyAgICAgfQorIAorKyNpZiBVU0VfQlJJ REdFX0hPVEtFWQorKyAgICBpZiAodXNlX2JyaWRnZV9ob3RrZXkgKGlidXMpKSB7CisrICAgICAg ICBidXNfaW5wdXRfY29udGV4dF9zZXRfcHJldl9ob3RrZXlfZW5naW5lIChjb250ZXh0LCBkZXNj KTsKKysgICAgfQorKyNlbmRpZgorICAgICBidXNfaWJ1c19pbXBsX3NldF9jb250ZXh0X2VuZ2lu ZV9mcm9tX2Rlc2MgKGlidXMsIGNvbnRleHQsIG5leHRfZGVzYyk7CisgfQorIAorQEAgLTEzODks NyArMTc1Miw5IEBAIGJ1c19pYnVzX2ltcGxfY29udGV4dF9yZXF1ZXN0X3ByZXZpb3VzX2UKKyAg ICAgICAgIGlmICghaWJ1cy0+Z2xvYmFsX3ByZXZpb3VzX2VuZ2luZV9uYW1lKSB7CisgICAgICAg ICAgICAgaWJ1cy0+Z2xvYmFsX3ByZXZpb3VzX2VuZ2luZV9uYW1lID0gYnVzX2lidXNfaW1wbF9s b2FkX2dsb2JhbF9wcmV2aW91c19lbmdpbmVfbmFtZV9mcm9tX2NvbmZpZyAoaWJ1cyk7CisgICAg ICAgICB9CisrI2lmIDAKKyAgICAgICAgIGVuZ2luZV9uYW1lID0gaWJ1cy0+Z2xvYmFsX3ByZXZp b3VzX2VuZ2luZV9uYW1lOworKyNlbmRpZgorICAgICAgICAgaWYgKGVuZ2luZV9uYW1lICE9IE5V TEwpIHsKKyAgICAgICAgICAgICAvKiBJZiB0aGUgcHJldmlvdXMgZW5naW5lIGlzIHJlbW92ZWQg ZnJvbSB0aGUgZW5naW5lIGxpc3Qgb3IgdGhlCisgICAgICAgICAgICAgICAgY3VycmVudCBlbmdp bmUgYW5kIHRoZSBwcmV2aW91cyBlbmdpbmUgYXJlIHRoZSBzYW1lIG9uZSwgZm9yY2UKK0BAIC0x NDUwLDYgKzE4MTUsOSBAQCBidXNfaWJ1c19pbXBsX3NldF9mb2N1c2VkX2NvbnRleHQgKEJ1c0lC CiAgCiAgICAgIEJ1c0VuZ2luZVByb3h5ICplbmdpbmUgPSBOVUxMOwogICAgICBnYm9vbGVhbiBp c19lbmFibGVkID0gRkFMU0U7CkBAIC00ODcsNyArNTc3LDcgQEAgaW5kZXggODUzNDY1Yy4uMDA4 NjRhYyAxMDA2NDQKICAKICAgICAgaWYgKGlidXMtPmZvY3VzZWRfY29udGV4dCkgewogICAgICAg ICAgaWYgKGlidXMtPnVzZV9nbG9iYWxfZW5naW5lKSB7Ci1AQCAtMTMzNiw2ICsxNzQxLDkgQEAg YnVzX2lidXNfaW1wbF9zZXRfZm9jdXNlZF9jb250ZXh0IChCdXNJQnVzSW1wbCAgICAgKmlidXMs CitAQCAtMTQ1Nyw2ICsxODI1LDkgQEAgYnVzX2lidXNfaW1wbF9zZXRfZm9jdXNlZF9jb250ZXh0 IChCdXNJQgogICAgICAgICAgICAgIGVuZ2luZSA9IGJ1c19pbnB1dF9jb250ZXh0X2dldF9lbmdp bmUgKGlidXMtPmZvY3VzZWRfY29udGV4dCk7CiAgICAgICAgICAgICAgaWYgKGVuZ2luZSkgewog ICAgICAgICAgICAgICAgICBpc19lbmFibGVkID0gYnVzX2lucHV0X2NvbnRleHRfaXNfZW5hYmxl ZCAoaWJ1cy0+Zm9jdXNlZF9jb250ZXh0KTsKQEAgLTQ5Nyw3ICs1ODcsNyBAQCBpbmRleCA4NTM0 NjVjLi4wMDg2NGFjIDEwMDY0NAogICAgICAgICAgICAgICAgICBnX29iamVjdF9yZWYgKGVuZ2lu ZSk7CiAgICAgICAgICAgICAgICAgIGJ1c19pbnB1dF9jb250ZXh0X3NldF9lbmdpbmUgKGlidXMt PmZvY3VzZWRfY29udGV4dCwgTlVMTCk7CiAgICAgICAgICAgICAgfQotQEAgLTEzNjAsNiArMTc2 OCw5IEBAIGJ1c19pYnVzX2ltcGxfc2V0X2ZvY3VzZWRfY29udGV4dCAoQnVzSUJ1c0ltcGwgICAg ICppYnVzLAorQEAgLTE0ODEsNiArMTg1Miw5IEBAIGJ1c19pYnVzX2ltcGxfc2V0X2ZvY3VzZWRf Y29udGV4dCAoQnVzSUIKICAgICAgICAgICAgICBpZiAoaXNfZW5hYmxlZCkgewogICAgICAgICAg ICAgICAgICBidXNfaW5wdXRfY29udGV4dF9lbmFibGUgKGNvbnRleHQpOwogICAgICAgICAgICAg IH0KQEAgLTUwNyw3ICs1OTcsNDEgQEAgaW5kZXggODUzNDY1Yy4uMDA4NjRhYyAxMDA2NDQKICAg ICAgICAgICAgICBnX29iamVjdF91bnJlZiAoZW5naW5lKTsKICAgICAgICAgIH0KICAKLUBAIC0y MjY3LDYgKzI1OTEsOSBAQCBidXNfaWJ1c19pbXBsX2ZpbHRlcl9rZXlib2FyZF9zaG9ydGN1dHMg CitAQCAtMTcxMCw2ICsyMDg0LDI1IEBAIF9jb250ZXh0X2Rpc2FibGVkX2NiIChCdXNJbnB1dENv bnRleHQgICAKKyB9CisgCisgLyoqCisrICogX2NvbnRleHRfc2V0X3hrYl9lbmdpbmVzX2NiOgor KyAqCisrICogQSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgInNldC14 a2ItZW5naW5lcyIgc2lnbmFsIGlzIHNlbnQgdG8gdGhlIGNvbnRleHQuCisrICovCisrc3RhdGlj IHZvaWQKKytfY29udGV4dF9zZXRfeGtiX2VuZ2luZXNfY2IgKEJ1c0lucHV0Q29udGV4dCAgICAq Y29udGV4dCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaXN0ICAgICAgICAgICAg ICAqbGlzdCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1c0lCdXNJbXBsICAgICAg ICAqaWJ1cykKKyt7CisrICAgIGlmIChsaXN0ID09IE5VTEwpIHsKKysgICAgICAgIHJldHVybjsK KysgICAgfQorKworKyNpZiBVU0VfQlJJREdFX0hPVEtFWQorKyAgICBpYnVzLT54a2JfZ3JvdXBf bGVuZ3RoID0gZ19saXN0X2xlbmd0aCAobGlzdCk7CisrI2VuZGlmCisrfQorKworKy8qKgorICAq IGJ1c19pYnVzX2ltcGxfY3JlYXRlX2lucHV0X2NvbnRleHQ6CisgICogQGNsaWVudDogQSBuYW1l IG9mIGEgY2xpZW50LiBlLmcuICJndGstaW0iCisgICogQHJldHVybnM6IEEgQnVzSW5wdXRDb250 ZXh0IG9iamVjdC4KK0BAIC0xNzM3LDYgKzIxMzAsNyBAQCBidXNfaWJ1c19pbXBsX2NyZWF0ZV9p bnB1dF9jb250ZXh0IChCdXNJCisgICAgICAgICB7ICJkZXN0cm95IiwgICAgICAgIEdfQ0FMTEJB Q0sgKF9jb250ZXh0X2Rlc3Ryb3lfY2IpIH0sCisgICAgICAgICB7ICJlbmFibGVkIiwgICAgICAg IEdfQ0FMTEJBQ0sgKF9jb250ZXh0X2VuYWJsZWRfY2IpIH0sCisgICAgICAgICB7ICJkaXNhYmxl ZCIsICAgICAgIEdfQ0FMTEJBQ0sgKF9jb250ZXh0X2Rpc2FibGVkX2NiKSB9LAorKyAgICAgICAg eyAic2V0LXhrYi1lbmdpbmVzIiwgR19DQUxMQkFDSyAoX2NvbnRleHRfc2V0X3hrYl9lbmdpbmVz X2NiKSB9LAorICAgICB9OworIAorICAgICBnaW50IGk7CitAQCAtMjMxNCw2ICsyNzA4LDkgQEAg YnVzX2lidXNfaW1wbF9maWx0ZXJfa2V5Ym9hcmRfc2hvcnRjdXRzIAogIAogICAgICBHUXVhcmsg ZXZlbnQ7CiAgICAgIEdMaXN0ICplbmdpbmVfbGlzdDsKQEAgLTUxNyw3ICs2NDEsNyBAQCBpbmRl eCA4NTM0NjVjLi4wMDg2NGFjIDEwMDY0NAogIAogICAgICBpZiAodHJpZ2dlciA9PSAwKSB7CiAg ICAgICAgICB0cmlnZ2VyID0gZ19xdWFya19mcm9tX3N0YXRpY19zdHJpbmcgKCJ0cmlnZ2VyIik7 Ci1AQCAtMjMzMSw2ICsyNjU4LDEyIEBAIGJ1c19pYnVzX2ltcGxfZmlsdGVyX2tleWJvYXJkX3No b3J0Y3V0cyAKK0BAIC0yMzc5LDYgKzI3NzYsMTIgQEAgYnVzX2lidXNfaW1wbF9maWx0ZXJfa2V5 Ym9hcmRfc2hvcnRjdXRzIAogICAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgICB9CiAgCkBAIC01 MzAsNyArNjU0LDcgQEAgaW5kZXggODUzNDY1Yy4uMDA4NjRhYyAxMDA2NDQKICAgICAgLyogVGhl biB0cnkgZW5naW5lcyBob3RrZXlzLiAqLwogICAgICBldmVudCA9IGlidXNfaG90a2V5X3Byb2Zp bGVfZmlsdGVyX2tleV9ldmVudCAoaWJ1cy0+ZW5naW5lc19ob3RrZXlfcHJvZmlsZSwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleXZhbCwKLUBA IC0yMzUyLDYgKzI2ODUsMjQgQEAgYnVzX2lidXNfaW1wbF9maWx0ZXJfa2V5Ym9hcmRfc2hvcnRj dXRzIAorQEAgLTI0MDAsNiArMjgwMywyNCBAQCBidXNfaWJ1c19pbXBsX2ZpbHRlcl9rZXlib2Fy ZF9zaG9ydGN1dHMgCiAgCiAgICAgICAgICBnX2Fzc2VydCAobmV3X2VuZ2luZV9kZXNjKTsKICAK QEAgLTU1NSw3ICs2NzksNyBAQCBpbmRleCA4NTM0NjVjLi4wMDg2NGFjIDEwMDY0NAogICAgICAg ICAgLyogRmluZCBvdXQgd2hhdCBlbmdpbmUgd2Ugc2hvdWxkIHN3aXRjaCB0by4gSWYgdGhlIGN1 cnJlbnQgZW5naW5lIGhhcwogICAgICAgICAgICogdGhlIHNhbWUgaG90a2V5LCB0aGVuIHdlIHNo b3VsZCBzd2l0Y2ggdG8gdGhlIG5leHQgZW5naW5lIHdpdGggdGhlCiAgICAgICAgICAgKiBzYW1l IGhvdGtleSBpbiB0aGUgbGlzdC4gT3RoZXJ3aXNlLCB3ZSBqdXN0IHN3aXRjaCB0byB0aGUgZmly c3QKLUBAIC0yMzYzLDggKzI3MTQsNDcgQEAgYnVzX2lidXNfaW1wbF9maWx0ZXJfa2V5Ym9hcmRf c2hvcnRjdXRzIAorQEAgLTI0MTEsOCArMjgzMiw0NyBAQCBidXNfaWJ1c19pbXBsX2ZpbHRlcl9r ZXlib2FyZF9zaG9ydGN1dHMgCiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAg IH0KICAgICAgICAgIH0KQEAgLTU2NSw3ICs2ODksNyBAQCBpbmRleCA4NTM0NjVjLi4wMDg2NGFj IDEwMDY0NAogKyAgICAgICAgaWYgKGNvbnRleHQgPT0gTlVMTCkgewogKyAgICAgICAgICAgIHJl dHVybiBGQUxTRTsKICsgICAgICAgIH0KLSAKKysKICsgICAgICAgIC8qIFRoaXMgbWVhbnMgUmVx dWVzdEVuZ2luZSBzaWduYWwgbWlnaHQgYmUgZG9uZSBidXQgU2V0RW5naW5lIHNpZ25hbAogKyAg ICAgICAgICogaGFzIG5vdCBiZWVuIGRvbmUgeWV0IGJ5IGlidXMgc3RhdHVzIGljb24uICovCiAr ICAgICAgICBpZiAoY3VycmVudF9lbmdpbmVfZGVzYyA9PSBOVUxMICYmCkBAIC01ODAsNyArNzA0 LDcgQEAgaW5kZXggODUzNDY1Yy4uMDA4NjRhYyAxMDA2NDQKICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRfZW5naW5l X2Rlc2MpOwogKyAgICAgICAgICAgICAgICB9CiArICAgICAgICAgICAgfQotKworIAogKyAgICAg ICAgICAgIC8qIElmIHRoZSBwcmV2aW91cyBlbmdpbmUgaXMgbm90IGluY2x1ZGVkIGluIGVuZ2lu ZV9saXN0IGFuZAogKyAgICAgICAgICAgICAqIHRoZSBjdXJyZW50IGVuZ2luZSBpcyB0aGUgZGVm dWFsdCBicmlkZ2UgZW5naW5lLAogKyAgICAgICAgICAgICAqIHRoZSBjdXJyZW50IGVuZ2luZSBp cyBhbHNvIG5vdCBpbmNsdWRlZCBpbiBlbmdpbmVfbGlzdC4KQEAgLTYwMyw3ICs3MjcsNyBAQCBp bmRleCA4NTM0NjVjLi4wMDg2NGFjIDEwMDY0NAogICAgICAgICAgICAgIGJ1c19pYnVzX2ltcGxf c2V0X2NvbnRleHRfZW5naW5lX2Zyb21fZGVzYyAoaWJ1cywgY29udGV4dCwgbmV3X2VuZ2luZV9k ZXNjKTsKICAgICAgICAgIH0KICAKLUBAIC0yNDY4LDU5ICsyODU4LDU0IEBAIHN0YXRpYyB2b2lk CitAQCAtMjUxNiw1OSArMjk3Niw1NCBAQCBzdGF0aWMgdm9pZAogIF9hZGRfZW5naW5lX2hvdGtl eSAoSUJ1c0VuZ2luZURlc2MgKmVuZ2luZSwgQnVzSUJ1c0ltcGwgKmlidXMpCiAgewogICAgICBj b25zdCBnY2hhciAqaG90a2V5czsKQEAgLTY5OCw3ICs4MjIsNyBAQCBpbmRleCA4NTM0NjVjLi4w MDg2NGFjIDEwMDY0NAogIAogIC8qKgogZGlmZiAtLWdpdCBhL2J1cy9pbnB1dGNvbnRleHQuYyBi L2J1cy9pbnB1dGNvbnRleHQuYwotaW5kZXggNGU4Y2RjNS4uNDNkZWRjMCAxMDA2NDQKK2luZGV4 IDNjODE2ODguLjU4YWI4ZjQgMTAwNjQ0CiAtLS0gYS9idXMvaW5wdXRjb250ZXh0LmMKICsrKyBi L2J1cy9pbnB1dGNvbnRleHQuYwogQEAgLTkwLDYgKzkwLDEyIEBAIHN0cnVjdCBfQnVzSW5wdXRD b250ZXh0IHsKQEAgLTcxNCw3ICs4MzgsNDMgQEAgaW5kZXggNGU4Y2RjNS4uNDNkZWRjMCAxMDA2 NDQKICB9OwogIAogIHN0cnVjdCBfQnVzSW5wdXRDb250ZXh0Q2xhc3MgewotQEAgLTY0Nyw2ICs2 NTMsMTEgQEAgYnVzX2lucHV0X2NvbnRleHRfZGVzdHJveSAoQnVzSW5wdXRDb250ZXh0ICpjb250 ZXh0KQorQEAgLTEyMiw2ICsxMjgsNyBAQCBlbnVtIHsKKyAgICAgRElTQUJMRUQsCisgICAgIEVO R0lORV9DSEFOR0VELAorICAgICBSRVFVRVNUX0VOR0lORSwKKysgICAgU0VUX1hLQl9FTkdJTkVT LAorICAgICBMQVNUX1NJR05BTCwKKyB9OworIAorQEAgLTI2NSw2ICsyNzIsOSBAQCBzdGF0aWMg Y29uc3QgZ2NoYXIgaW50cm9zcGVjdGlvbl94bWxbXSA9CisgICAgICIgICAgPG1ldGhvZCBuYW1l PSdHZXRFbmdpbmUnPiIKKyAgICAgIiAgICAgIDxhcmcgZGlyZWN0aW9uPSdvdXQnIHR5cGU9J3Yn IG5hbWU9J2Rlc2MnIC8+IgorICAgICAiICAgIDwvbWV0aG9kPiIKKysgICAgIiAgICA8bWV0aG9k IG5hbWU9J1NldFhLQkVuZ2luZXMnPiIKKysgICAgIiAgICAgIDxhcmcgZGlyZWN0aW9uPSdpbicg dHlwZT0nYXYnIG5hbWU9J2VuZ2luZXMnIC8+IgorKyAgICAiICAgIDwvbWV0aG9kPiIKKyAgICAg IiAgICA8bWV0aG9kIG5hbWU9J1NldFN1cnJvdW5kaW5nVGV4dCc+IgorICAgICAiICAgICAgPGFy ZyBkaXJlY3Rpb249J2luJyB0eXBlPSd2JyBuYW1lPSd0ZXh0JyAvPiIKKyAgICAgIiAgICAgIDxh cmcgZGlyZWN0aW9uPSdpbicgdHlwZT0ndScgbmFtZT0nY3Vyc29yX3BvcycgLz4iCitAQCAtNTg2 LDYgKzU5NiwxNyBAQCBidXNfaW5wdXRfY29udGV4dF9jbGFzc19pbml0IChCdXNJbnB1dENvbnRl eHRDbGFzcyAqY2xhc3MpCisgICAgICAgICAgICAgMSwKKyAgICAgICAgICAgICBHX1RZUEVfU1RS SU5HKTsKKyAKKysgICAgY29udGV4dF9zaWduYWxzW1NFVF9YS0JfRU5HSU5FU10gPQorKyAgICAg ICAgZ19zaWduYWxfbmV3IChJXygic2V0LXhrYi1lbmdpbmVzIiksCisrICAgICAgICAgICAgR19U WVBFX0ZST01fQ0xBU1MgKGNsYXNzKSwKKysgICAgICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwK KysgICAgICAgICAgICAwLAorKyAgICAgICAgICAgIE5VTEwsIE5VTEwsCisrICAgICAgICAgICAg YnVzX21hcnNoYWxfVk9JRF9fT0JKRUNULAorKyAgICAgICAgICAgIEdfVFlQRV9OT05FLAorKyAg ICAgICAgICAgIDEsCisrICAgICAgICAgICAgR19UWVBFX1BPSU5URVIpOworKworICAgICB0ZXh0 X2VtcHR5ID0gaWJ1c190ZXh0X25ld19mcm9tX3N0cmluZyAoIiIpOworICAgICBnX29iamVjdF9y ZWZfc2luayAodGV4dF9lbXB0eSk7CisgICAgIGxvb2t1cF90YWJsZV9lbXB0eSA9IGlidXNfbG9v a3VwX3RhYmxlX25ldyAoOSAvKiBwYWdlIHNpemUgKi8sIDAsIEZBTFNFLCBGQUxTRSk7CitAQCAt NjQ4LDYgKzY2OSwxMSBAQCBidXNfaW5wdXRfY29udGV4dF9kZXN0cm95IChCdXNJbnB1dENvbnRl eHQgKmNvbnRleHQpCiAgICAgICAgICBjb250ZXh0LT5jbGllbnQgPSBOVUxMOwogICAgICB9CiAg CkBAIC03MjYsNyArODg2LDQ4IEBAIGluZGV4IDRlOGNkYzUuLjQzZGVkYzAgMTAwNjQ0CiAgICAg IElCVVNfT0JKRUNUX0NMQVNTIChidXNfaW5wdXRfY29udGV4dF9wYXJlbnRfY2xhc3MpLT5kZXN0 cm95IChJQlVTX09CSkVDVCAoY29udGV4dCkpOwogIH0KICAKLUBAIC0yMjExLDYgKzIyMjIsNyBA QCBidXNfaW5wdXRfY29udGV4dF9zZXRfZW5naW5lIChCdXNJbnB1dENvbnRleHQgKmNvbnRleHQs CitAQCAtMTA0OCw2ICsxMDc0LDMyIEBAIF9pY19nZXRfZW5naW5lIChCdXNJbnB1dENvbnRleHQg ICAgICAgKmNvbnRleHQsCisgfQorIAorIC8qKgorKyAqIF9pY19zZXRfeGtiX2VuZ2luZXM6Cisr ICoKKysgKiBJbXBsZW1lbnQgdGhlICJTZXRYS0JFbmdpbmVzIiBtZXRob2QgY2FsbCBvZiB0aGUg b3JnLmZyZWVkZXNrdG9wLklCdXMuSW5wdXRDb250ZXh0IGludGVyZmFjZS4KKysgKi8KKytzdGF0 aWMgdm9pZAorK19pY19zZXRfeGtiX2VuZ2luZXMgKEJ1c0lucHV0Q29udGV4dCAgICAgICAqY29u dGV4dCwKKysgICAgICAgICAgICAgICAgICAgICBHVmFyaWFudCAgICAgICAgICAgICAgKnBhcmFt ZXRlcnMsCisrICAgICAgICAgICAgICAgICAgICAgR0RCdXNNZXRob2RJbnZvY2F0aW9uICppbnZv Y2F0aW9uKQorK3sKKysgICAgR1ZhcmlhbnRJdGVyICppdGVyID0gTlVMTDsKKysgICAgR1Zhcmlh bnQgKnZhcjsKKysgICAgR0xpc3QgKmxpc3QgPSBOVUxMOworKworKyAgICBnX3ZhcmlhbnRfZ2V0 X2NoaWxkIChwYXJhbWV0ZXJzLCAwLCAiYXYiLCAmaXRlcik7CisrICAgIHdoaWxlIChnX3Zhcmlh bnRfaXRlcl9sb29wIChpdGVyLCAidiIsICZ2YXIpKSB7CisrICAgICAgICBsaXN0ID0gZ19saXN0 X2FwcGVuZCAobGlzdCwgaWJ1c19zZXJpYWxpemFibGVfZGVzZXJpYWxpemUgKHZhcikpOworKyAg ICB9CisrICAgIGdfdmFyaWFudF9pdGVyX2ZyZWUgKGl0ZXIpOworKworKyAgICBnX3NpZ25hbF9l bWl0IChjb250ZXh0LAorKyAgICAgICAgICAgICAgICAgICBjb250ZXh0X3NpZ25hbHNbU0VUX1hL Ql9FTkdJTkVTXSwgMCwKKysgICAgICAgICAgICAgICAgICAgbGlzdCk7CisrICAgIHJldHVybjsK Kyt9CisrCisrLyoqCisgICogYnVzX2lucHV0X2NvbnRleHRfc2VydmljZV9tZXRob2RfY2FsbDoK KyAgKgorICAqIEhhbmRsZSBhIEQtQnVzIG1ldGhvZCBjYWxsIHdob3NlIGRlc3RpbmF0aW9uIGFu ZCBpbnRlcmZhY2UgbmFtZSBhcmUgYm90aCAib3JnLmZyZWVkZXNrdG9wLklCdXMuSW5wdXRDb250 ZXh0IgorQEAgLTExMjYsNiArMTE3OCw3IEBAIGJ1c19pbnB1dF9jb250ZXh0X3NlcnZpY2VfbWV0 aG9kX2NhbGwgKElCdXNTZXJ2aWNlICAgICAgICAgICAgKnNlcnZpY2UsCisgICAgICAgICB7ICJJ c0VuYWJsZWQiLCAgICAgICAgIF9pY19pc19lbmFibGVkIH0sCisgICAgICAgICB7ICJTZXRFbmdp bmUiLCAgICAgICAgIF9pY19zZXRfZW5naW5lIH0sCisgICAgICAgICB7ICJHZXRFbmdpbmUiLCAg ICAgICAgIF9pY19nZXRfZW5naW5lIH0sCisrICAgICAgICB7ICJTZXRYS0JFbmdpbmVzIiwgICAg IF9pY19zZXRfeGtiX2VuZ2luZXMgfSwKKyAgICAgICAgIHsgIlNldFN1cnJvdW5kaW5nVGV4dCIs IF9pY19zZXRfc3Vycm91bmRpbmdfdGV4dH0sCisgICAgIH07CisgCitAQCAtMjIxOCw2ICsyMjcx LDcgQEAgYnVzX2lucHV0X2NvbnRleHRfc2V0X2VuZ2luZSAoQnVzSW5wdXRDb250ZXh0ICpjb250 ZXh0LAogICAgICB9CiAgICAgIGVsc2UgewogICAgICAgICAgZ2ludCBpOwpAQCAtNzM0LDcgKzkz NSw3IEBAIGluZGV4IDRlOGNkYzUuLjQzZGVkYzAgMTAwNjQ0CiAgICAgICAgICBjb250ZXh0LT5l bmdpbmUgPSBlbmdpbmU7CiAgICAgICAgICBnX29iamVjdF9yZWYgKGNvbnRleHQtPmVuZ2luZSk7 CiAgCi1AQCAtMjUzOCwzICsyNTUwLDMwIEBAIGJ1c19pbnB1dF9jb250ZXh0X2dldF9jbGllbnQg KEJ1c0lucHV0Q29udGV4dCAqY29udGV4dCkKK0BAIC0yNTQyLDMgKzI1OTYsMzAgQEAgYnVzX2lu cHV0X2NvbnRleHRfZ2V0X2NsaWVudCAoQnVzSW5wdXRDb250ZXh0ICpjb250ZXh0KQogICAgICBn X2Fzc2VydCAoQlVTX0lTX0lOUFVUX0NPTlRFWFQgKGNvbnRleHQpKTsKICAgICAgcmV0dXJuIGNv bnRleHQtPmNsaWVudDsKICB9CkBAIC0xMDU2LDcgKzEyNTcsNyBAQCBpbmRleCBhODMwMTM2Li40 YzNjOTgwIDEwMDY0NAogK0RFRkFVTFRfQlJJREdFX0VOR0lORV9OQU1FPSdAREVGQVVMVF9CUklE R0VfRU5HSU5FX05BTUVAJwogIElTT0NPREVTX1BSRUZJWD0nQElTT0NPREVTX1BSRUZJWEAnCiBk aWZmIC0tZ2l0IGEvaWJ1cy9pbnB1dGNvbnRleHQucHkgYi9pYnVzL2lucHV0Y29udGV4dC5weQot aW5kZXggY2VlYjU2ZC4uYjNjMmY2NSAxMDA2NDQKK2luZGV4IDY0YTZiYTIuLmI0NzFlMjAgMTAw NjQ0CiAtLS0gYS9pYnVzL2lucHV0Y29udGV4dC5weQogKysrIGIvaWJ1cy9pbnB1dGNvbnRleHQu cHkKIEBAIC0yOCw2ICsyOCw3IEBAIGltcG9ydCBzeXMKQEAgLTEwNjcsNyArMTI2OCw3IEBAIGlu ZGV4IGNlZWI1NmQuLmIzYzJmNjUgMTAwNjQ0CiAgaW1wb3J0IG9iamVjdAogIGltcG9ydCBjb21t b24KICBpbXBvcnQgc2VyaWFsaXphYmxlCi1AQCAtMjc5LDggKzI4MCwxOSBAQCBjbGFzcyBJbnB1 dENvbnRleHQob2JqZWN0Lk9iamVjdCk6CitAQCAtMjgzLDggKzI4NCwyMiBAQCBjbGFzcyBJbnB1 dENvbnRleHQob2JqZWN0Lk9iamVjdCk6CiAgICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICAg cmV0dXJuIE5vbmUKICAKQEAgLTEwODMsMTYgKzEyODQsMTkgQEAgaW5kZXggY2VlYjU2ZC4uYjNj MmY2NSAxMDA2NDQKICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVw bHlfaGFuZGxlcj1zZWxmLl9faGFuZGxlX2ljX3JlcGx5LAogKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBlcnJvcl9oYW5kbGVyPXNlbGYuX19oYW5kbGVfaWNfZXJyb3Ip CiArCi0rICAgIGRlZiBzZXRfYnJpZGdlX2VuZ2luZShzZWxmKToKLSsgICAgICAgIHJldHVybiBz ZWxmLl9fY29udGV4dC5TZXRFbmdpbmUoX2NvbmZpZy5ERUZBVUxUX0JSSURHRV9FTkdJTkVfTkFN RSkKKysgICAgZGVmIHNldF94a2JfZW5naW5lcyhzZWxmLCBlbmdpbmVzKToKKysgICAgICAgIGVu Z2luZXMgPSBtYXAobGFtYmRhIGU6IHNlcmlhbGl6YWJsZS5zZXJpYWxpemVfb2JqZWN0KGUpLCBl bmdpbmVzKQorKyAgICAgICAgcmV0dXJuIHNlbGYuX19jb250ZXh0LlNldFhLQkVuZ2luZXMoZW5n aW5lcywKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGx5 X2hhbmRsZXI9c2VsZi5fX2hhbmRsZV9pY19yZXBseSwKKysgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGVycm9yX2hhbmRsZXI9c2VsZi5fX2hhbmRsZV9pY19lcnJv cikKICAKICAgICAgZGVmIGludHJvc3BlY3Qoc2VsZik6CiAgICAgICAgICByZXR1cm4gc2VsZi5f X2NvbnRleHQuSW50cm9zcGVjdCgpCiBkaWZmIC0tZ2l0IGEvaWJ1cy9pbnRlcmZhY2UvaWlucHV0 Y29udGV4dC5weSBiL2lidXMvaW50ZXJmYWNlL2lpbnB1dGNvbnRleHQucHkKLWluZGV4IDFkM2Nk MmEuLjU4ZDc1ZTUgMTAwNjQ0CitpbmRleCAwNmNlNTE5Li4zYjY1NWRjIDEwMDY0NAogLS0tIGEv aWJ1cy9pbnRlcmZhY2UvaWlucHV0Y29udGV4dC5weQogKysrIGIvaWJ1cy9pbnRlcmZhY2UvaWlu cHV0Y29udGV4dC5weQotQEAgLTc2LDggKzc2LDggQEAgY2xhc3MgSUlucHV0Q29udGV4dChkYnVz LnNlcnZpY2UuT2JqZWN0KToKK0BAIC03Niw4ICs3NiwxMSBAQCBjbGFzcyBJSW5wdXRDb250ZXh0 KGRidXMuc2VydmljZS5PYmplY3QpOgogICAgICBAbWV0aG9kKG91dF9zaWduYXR1cmU9InYiKQog ICAgICBkZWYgR2V0RW5naW5lKHNlbGYpOiBwYXNzCiAgCkBAIC0xMTAwLDYgKzEzMDQsOSBAQCBp bmRleCAxZDNjZDJhLi41OGQ3NWU1IDEwMDY0NAogLSAgICBkZWYgU2V0RW5naW5lKHNlbGYsIGVu Z2luZV9uYW1lKTogcGFzcwogKyAgICBAYXN5bmNfbWV0aG9kKGluX3NpZ25hdHVyZT0icyIpCiAr ICAgIGRlZiBTZXRFbmdpbmUoc2VsZiwgZW5naW5lX25hbWUsIHJlcGx5X2NiLCBlcnJvcl9jYik6 IHBhc3MKKysKKysgICAgQGFzeW5jX21ldGhvZChpbl9zaWduYXR1cmU9ImF2IikKKysgICAgZGVm IFNldFhLQkVuZ2luZXMoc2VsZiwgZW5naW5lcywgcmVwbHlfY2IsIGVycm9yX2NiKTogcGFzcwog IAogICAgICBAbWV0aG9kKCkKICAgICAgZGVmIERlc3Ryb3koc2VsZik6IHBhc3MKQEAgLTEzNDIs NiArMTU0OSw2NyBAQCBpbmRleCA5YTM0MWY2Li45MmVjNmFmIDEwMDY0NAogKwogIEdfRU5EX0RF Q0xTCiAgI2VuZGlmCitkaWZmIC0tZ2l0IGEvc3JjL2lidXNpbnB1dGNvbnRleHQuYyBiL3NyYy9p YnVzaW5wdXRjb250ZXh0LmMKK2luZGV4IDU0ZTMwYWUuLmMzN2E3MWQgMTAwNjQ0CistLS0gYS9z cmMvaWJ1c2lucHV0Y29udGV4dC5jCisrKysgYi9zcmMvaWJ1c2lucHV0Y29udGV4dC5jCitAQCAt MTIxOSw2ICsxMjE5LDMzIEBAIGlidXNfaW5wdXRfY29udGV4dF9zZXRfZW5naW5lIChJQnVzSW5w dXRDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgKTsKKyB9CisgCisr dm9pZAorK2lidXNfaW5wdXRfY29udGV4dF9zZXRfeGtiX2VuZ2luZXMgKElCdXNJbnB1dENvbnRl eHQgKmNvbnRleHQsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpc3Qg ICAgICAgICAgICAqbGlzdCkKKyt7CisrICAgIEdWYXJpYW50QnVpbGRlciBidWlsZGVyOworKyAg ICBHTGlzdCAqcDsKKysKKysgICAgZ19hc3NlcnQgKElCVVNfSVNfSU5QVVRfQ09OVEVYVCAoY29u dGV4dCkpOworKyAgICBnX2Fzc2VydCAobGlzdCk7CisrCisrICAgIGdfdmFyaWFudF9idWlsZGVy X2luaXQgKCZidWlsZGVyLCBHX1ZBUklBTlRfVFlQRSAoImF2IikpOworKyAgICBmb3IgKHAgPSBs aXN0OyBwOyBwID0gcC0+bmV4dCkgeworKyAgICAgICAgZ192YXJpYW50X2J1aWxkZXJfYWRkICgm YnVpbGRlciwgInYiLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpYnVzX3Nlcmlh bGl6YWJsZV9zZXJpYWxpemUgKChJQnVzU2VyaWFsaXphYmxlICopIHAtPmRhdGEpKTsKKysgICAg fQorKworKyAgICBnX2RidXNfcHJveHlfY2FsbCAoKEdEQnVzUHJveHkgKikgY29udGV4dCwKKysg ICAgICAgICAgICAgICAgICAgICAgICJTZXRYS0JFbmdpbmVzIiwgICAgICAgICAgICAgICAgICAg ICAvKiBtZXRob2RfbmFtZSAqLworKyAgICAgICAgICAgICAgICAgICAgICAgZ192YXJpYW50X25l dyAoIihhdikiLCAmYnVpbGRlciksICAgIC8qIHBhcmFtZXRlcnMgKi8KKysgICAgICAgICAgICAg ICAgICAgICAgIEdfREJVU19DQUxMX0ZMQUdTX05PTkUsICAgICAgICAgICAgICAvKiBmbGFncyAq LworKyAgICAgICAgICAgICAgICAgICAgICAgLTEsICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC8qIHRpbWVvdXQgKi8KKysgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBjYW5jZWxsYWJsZSAqLworKyAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGNhbGxi YWNrICovCisrICAgICAgICAgICAgICAgICAgICAgICBOVUxMICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgLyogdXNlcl9kYXRhICovCisrICAgICAgICAgICAgICAgICAgICAgICApOwor K30KKysKKyAjZGVmaW5lIERFRklORV9GVU5DKG5hbWUsIE5hbWUpICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgIHZvaWQgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICBpYnVzX2lu cHV0X2NvbnRleHRfIyNuYW1lIChJQnVzSW5wdXRDb250ZXh0ICpjb250ZXh0KSAgICAgICAgICAg ICAgIFwKK2RpZmYgLS1naXQgYS9zcmMvaWJ1c2lucHV0Y29udGV4dC5oIGIvc3JjL2lidXNpbnB1 dGNvbnRleHQuaAoraW5kZXggYmUzYzUwMi4uNDBiOTAyZSAxMDA2NDQKKy0tLSBhL3NyYy9pYnVz aW5wdXRjb250ZXh0LmgKKysrKyBiL3NyYy9pYnVzaW5wdXRjb250ZXh0LmgKK0BAIC00OTUsNiAr NDk1LDE4IEBAIHZvaWQgICAgICAgICBpYnVzX2lucHV0X2NvbnRleHRfc2V0X2VuZ2luZSAgKElC dXNJbnB1dENvbnRleHQgICAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAgICAgICAgKm5hbWUpOworIAorIC8qKgorKyAq IGlidXNfaW5wdXRfY29udGV4dF9zZXRfeGtiX2VuZ2luZXM6CisrICogQGNvbnRleHQ6IEFuIElC dXNJbnB1dENvbnRleHQuCisrICogQGxpc3Q6ICh0cmFuc2ZlciBjb250YWluZXIpIChlbGVtZW50 LXR5cGUgSUJ1c0VuZ2luZURlc2MpOgorKyAqICAgICBBIGxpc3Qgb2YgdGhlIGVuZ2luZXMuCisr ICoKKysgKiBTZXQgWEtCIGdyb3VwIGxheW91dHMgZnJvbSB0aGUgZGVza3RvcCBzZXNzaW9uLgor KyAqLworK3ZvaWQgICAgICAgICBpYnVzX2lucHV0X2NvbnRleHRfc2V0X3hrYl9lbmdpbmVzCisr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoSUJ1c0lucHV0Q29u dGV4dCAqY29udGV4dCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBHTGlzdCAgICAgICAgICAgICpsaXN0KTsKKysKKysvKioKKyAgKiBpYnVzX2lucHV0X2Nv bnRleHRfc2V0X3N1cnJvdW5kaW5nX3RleHQ6CisgICogQGNvbnRleHQ6IEFuICNJQnVzSW5wdXRD b250ZXh0LgorICAqIEB0ZXh0OiBBbiAjSUJ1c1RleHQgc3Vycm91bmRpbmcgdGhlIGN1cnJlbnQg Y3Vyc29yIG9uIHRoZSBhcHBsaWNhdGlvbi4KIGRpZmYgLS1naXQgYS9zcmMvaWJ1c3V0aWwuYyBi L3NyYy9pYnVzdXRpbC5jCiBpbmRleCBkZGI2YjllLi40NmRhYjFhIDEwMDY0NAogLS0tIGEvc3Jj L2lidXN1dGlsLmMKQEAgLTE0MzEsNyArMTY5OSw3IEBAIGluZGV4IDg4MDQ2MzQuLmJlZjZmYmYg MTAwNjQ0CiAgCiAgICAgIGRlZiBzZXRfY3Vyc29yX2xvY2F0aW9uKHNlbGYsIHgsIHksIHcsIGgp OgogICAgICAgICAgc2VsZi5fX2NhbmRpZGF0ZV9wYW5lbC5zZXRfY3Vyc29yX2xvY2F0aW9uKHgs IHksIHcsIGgpCi1AQCAtMjMzLDEyICsyNDksOTcgQEAgY2xhc3MgUGFuZWwoaWJ1cy5QYW5lbEJh c2UpOgorQEAgLTIzMywxMiArMjQ5LDk5IEBAIGNsYXNzIFBhbmVsKGlidXMuUGFuZWxCYXNlKToK ICAgICAgZGVmIF9fc2V0X2ltX25hbWUoc2VsZiwgbmFtZSk6CiAgICAgICAgICBzZWxmLl9fbGFu Z3VhZ2VfYmFyLnNldF9pbV9uYW1lKG5hbWUpCiAgCkBAIC0xNDg5LDYgKzE3NTcsOCBAQCBpbmRl eCA4ODA0NjM0Li5iZWY2ZmJmIDEwMDY0NAogKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgbmFtZSkKICsgICAgICAgICAgICAgICAgc2VsZi5fX2Rpc2Fi bGVkX2VuZ2luZXMuYXBwZW5kKGVuZ2luZSkKICsgICAgICAgICAgICBzZWxmLl9fZGlzYWJsZWRf ZW5naW5lc19pZCA9IHNlbGYuX194a2JsYXlvdXQuZ2V0X2dyb3VwKCkKKysgICAgICAgICAgICBp ZiB1c2VfYnJpZGdlX2hvdGtleSBhbmQgbGVuKHNlbGYuX19kaXNhYmxlZF9lbmdpbmVzKSA+IDA6 CisrICAgICAgICAgICAgICAgIHNlbGYuX19mb2N1c19pYy5zZXRfeGtiX2VuZ2luZXMoc2VsZi5f X2Rpc2FibGVkX2VuZ2luZXMpCiArICAgICAgICBpZiBub3QgdXNlX2JyaWRnZV9ob3RrZXk6CiAr ICAgICAgICAgICAgcmV0dXJuCiArICAgICAgICBpZiBsZW4oc2VsZi5fX2Rpc2FibGVkX2VuZ2lu ZXMpID4gMDoKQEAgLTE1MzAsNyArMTgwMCw3IEBAIGluZGV4IDg4MDQ2MzQuLmJlZjZmYmYgMTAw NjQ0CiAgICAgICAgICBpZiBub3QgZW5hYmxlZDoKICAgICAgICAgICAgICBzZWxmLl9fc2V0X2lt X2ljb24oSUNPTl9LRVlCT0FSRCkKICAgICAgICAgICAgICBzZWxmLl9fc2V0X2ltX25hbWUoTm9u ZSkKLUBAIC0yNTAsNyArMzUxLDcgQEAgY2xhc3MgUGFuZWwoaWJ1cy5QYW5lbEJhc2UpOgorQEAg LTI1MCw3ICszNTMsNyBAQCBjbGFzcyBQYW5lbChpYnVzLlBhbmVsQmFzZSk6CiAgICAgICAgICAg ICAgICAgIHNlbGYuX19zZXRfaW1faWNvbihlbmdpbmUuaWNvbikKICAgICAgICAgICAgICAgICAg c2VsZi5fX3NldF9pbV9uYW1lKGVuZ2luZS5sb25nbmFtZSkKICAgICAgICAgICAgICAgICAgaWYg c2VsZi5fX2J1cy5nZXRfdXNlX3N5c19sYXlvdXQoKToKQEAgLTE1MzksNyArMTgwOSw3IEBAIGlu ZGV4IDg4MDQ2MzQuLmJlZjZmYmYgMTAwNjQ0CiAgICAgICAgICAgICAgZWxzZToKICAgICAgICAg ICAgICAgICAgc2VsZi5fX3NldF9pbV9pY29uKElDT05fS0VZQk9BUkQpCiAgICAgICAgICAgICAg ICAgIHNlbGYuX19zZXRfaW1fbmFtZShOb25lKQotQEAgLTI3Myw3ICszNzQsMjEgQEAgY2xhc3Mg UGFuZWwoaWJ1cy5QYW5lbEJhc2UpOgorQEAgLTI3Myw3ICszNzYsMjEgQEAgY2xhc3MgUGFuZWwo aWJ1cy5QYW5lbEJhc2UpOgogICAgICAgICAgICAgIHJldHVybgogIAogICAgICAgICAgZW5hYmxl ZCA9IHNlbGYuX19mb2N1c19pYy5pc19lbmFibGVkKCkKQEAgLTE1NjIsNyArMTgzMiw3IEBAIGlu ZGV4IDg4MDQ2MzQuLmJlZjZmYmYgMTAwNjQ0CiAgCiAgICAgICAgICBpZiBlbmFibGVkID09IEZh bHNlOgogICAgICAgICAgICAgIHNlbGYucmVzZXQoKQotQEAgLTI4Nyw3ICs0MDIsNyBAQCBjbGFz cyBQYW5lbChpYnVzLlBhbmVsQmFzZSk6CitAQCAtMjg3LDcgKzQwNCw3IEBAIGNsYXNzIFBhbmVs KGlidXMuUGFuZWxCYXNlKToKICAgICAgICAgICAgICAgICAgc2VsZi5fX3NldF9pbV9pY29uKGVu Z2luZS5pY29uKQogICAgICAgICAgICAgICAgICBzZWxmLl9fc2V0X2ltX25hbWUoZW5naW5lLmxv bmduYW1lKQogICAgICAgICAgICAgICAgICBpZiBzZWxmLl9fYnVzLmdldF91c2Vfc3lzX2xheW91 dCgpOgpAQCAtMTU3MSw3ICsxODQxLDcgQEAgaW5kZXggODgwNDYzNC4uYmVmNmZiZiAxMDA2NDQK ICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICBzZWxmLl9fc2V0X2ltX2ljb24o SUNPTl9LRVlCT0FSRCkKICAgICAgICAgICAgICAgICAgc2VsZi5fX3NldF9pbV9uYW1lKE5vbmUp Ci1AQCAtMzE1LDYgKzQzMCw3IEBAIGNsYXNzIFBhbmVsKGlidXMuUGFuZWxCYXNlKToKK0BAIC0z MTUsNiArNDMyLDcgQEAgY2xhc3MgUGFuZWwoaWJ1cy5QYW5lbEJhc2UpOgogIAogICAgICBkZWYg X19jb25maWdfbG9hZF9zaG93KHNlbGYpOgogICAgICAgICAgc2hvdyA9IHNlbGYuX19jb25maWcu Z2V0X3ZhbHVlKCJwYW5lbCIsICJzaG93IiwgMCkKQEAgLTE1NzksNyArMTg0OSw3IEBAIGluZGV4 IDg4MDQ2MzQuLmJlZjZmYmYgMTAwNjQ0CiAgICAgICAgICBzZWxmLl9fbGFuZ3VhZ2VfYmFyLnNl dF9zaG93KHNob3cpCiAgCiAgICAgIGRlZiBfX2NvbmZpZ19sb2FkX3Bvc2l0aW9uKHNlbGYpOgot QEAgLTQ0Myw2ICs1NTksMjEgQEAgY2xhc3MgUGFuZWwoaWJ1cy5QYW5lbEJhc2UpOgorQEAgLTQ0 Myw2ICs1NjEsMjEgQEAgY2xhc3MgUGFuZWwoaWJ1cy5QYW5lbEJhc2UpOgogICAgICAjICAgICBt ZW51LnNldF90YWtlX2ZvY3VzKEZhbHNlKQogICAgICAjICAgICByZXR1cm4gbWVudQogIApAQCAt MTYwMSw3ICsxODcxLDcgQEAgaW5kZXggODgwNDYzNC4uYmVmNmZiZiAxMDA2NDQKICAgICAgZGVm IF9fY3JlYXRlX2ltX21lbnUoc2VsZik6CiAgICAgICAgICBlbmdpbmVzID0gc2VsZi5fX2J1cy5s aXN0X2FjdGl2ZV9lbmdpbmVzKCkKICAgICAgICAgIGN1cnJlbnRfZW5naW5lID0gXAotQEAgLTQ1 MywyNSArNTg0LDM5IEBAIGNsYXNzIFBhbmVsKGlidXMuUGFuZWxCYXNlKToKK0BAIC00NTMsMjUg KzU4NiwzOSBAQCBjbGFzcyBQYW5lbChpYnVzLlBhbmVsQmFzZSk6CiAgICAgICAgICBzaXplID0g Z3RrLmljb25fc2l6ZV9sb29rdXAoZ3RrLklDT05fU0laRV9NRU5VKQogICAgICAgICAgbWVudSA9 IGd0ay5NZW51KCkKICAgICAgICAgIGZvciBpLCBlbmdpbmUgaW4gZW51bWVyYXRlKGVuZ2luZXMp OgpAQCAtMTY1NCw3ICsxOTI0LDcgQEAgaW5kZXggODgwNDYzNC4uYmVmNmZiZiAxMDA2NDQKICAK ICAgICAgICAgIG1lbnUuc2hvd19hbGwoKQogICAgICAgICAgbWVudS5zZXRfdGFrZV9mb2N1cyhG YWxzZSkKLUBAIC01MjMsOCArNjY4LDI1IEBAIGNsYXNzIFBhbmVsKGlidXMuUGFuZWxCYXNlKToK K0BAIC01MjMsOCArNjcwLDI1IEBAIGNsYXNzIFBhbmVsKGlidXMuUGFuZWxCYXNlKToKICAgICAg ICAgIGlmIG5vdCBzZWxmLl9fZm9jdXNfaWM6CiAgICAgICAgICAgICAgcmV0dXJuCiAgICAgICAg ICBpZiBlbmdpbmU6CkBAIC0xNjgxLDcgKzE5NTEsNyBAQCBpbmRleCA4ODA0NjM0Li5iZWY2ZmJm IDEwMDY0NAogICAgICAgICAgICAgIHNlbGYuX19mb2N1c19pYy5kaXNhYmxlKCkKICAKICAgICAg ZGVmIF9fc3lzX21lbnVfaXRlbV9hY3RpdmF0ZV9jYihzZWxmLCBpdGVtLCBjb21tYW5kKToKLUBA IC01NzMsMTIgKzczNSwxMTMgQEAgY2xhc3MgUGFuZWwoaWJ1cy5QYW5lbEJhc2UpOgorQEAgLTU3 MywxMiArNzM3LDExMyBAQCBjbGFzcyBQYW5lbChpYnVzLlBhbmVsQmFzZSk6CiAgICAgICAgICBz ZWxmLl9fc2V0dXBfcGlkID0gcGlkCiAgICAgICAgICBnbGliLmNoaWxkX3dhdGNoX2FkZChzZWxm Ll9fc2V0dXBfcGlkLCBzZWxmLl9fY2hpbGRfd2F0Y2hfY2IpCiAgCgpkaWZmIC0tZ2l0IGEvaWJ1 cy5zcGVjIGIvaWJ1cy5zcGVjCmluZGV4IDVjYzI0MzkuLmU4YzU1NjggMTAwNjQ0Ci0tLSBhL2li dXMuc3BlYworKysgYi9pYnVzLnNwZWMKQEAgLTUsMTUgKzUsMjEgQEAKICVkZWZpbmUgaGF2ZV9s aWJ4a2JmaWxlIDEKICVkZWZpbmUgaGF2ZV9nanNmaWxlIDEKIAorJWlmIDAlez9mZWRvcmF9ID4g MTYKKyVkZWZpbmUgaGF2ZV9icmlkZ2VfaG90a2V5IDEKKyVkZWZpbmUgaWJ1c19nanNfdmVyc2lv biAzLjIuMS4yMDExMTAyOAorJWRlZmluZSBpYnVzX2dqc19idWlsZF9mYWlsdXJlIDAKKyVlbHNl CiAlaWYgMCV7P2ZlZG9yYX0gPiAxNQogJWRlZmluZSBoYXZlX2JyaWRnZV9ob3RrZXkgMQotJWRl ZmluZSBpYnVzX2dqc192ZXJzaW9uIDMuMi4xLjIwMTExMDIxCi0lZGVmaW5lIGlidXNfZ2pzX2J1 aWxkX2ZhaWx1cmUgMQorJWRlZmluZSBpYnVzX2dqc192ZXJzaW9uIDMuMi4xLjIwMTExMDI4Cisl ZGVmaW5lIGlidXNfZ2pzX2J1aWxkX2ZhaWx1cmUgMAogJWVsc2UKICVkZWZpbmUgaGF2ZV9icmlk Z2VfaG90a2V5IDAKLSVkZWZpbmUgaWJ1c19nanNfdmVyc2lvbiAzLjAuMi4yMDExMTAxOAorJWRl ZmluZSBpYnVzX2dqc192ZXJzaW9uIDMuMC4yLjIwMTExMDI4CiAlZGVmaW5lIGlidXNfZ2pzX2J1 aWxkX2ZhaWx1cmUgMAogJWVuZGlmCislZW5kaWYKIAogJWRlZmluZSBpYnVzX2FwaV92ZXJzaW9u IDEuMAogCkBAIC0yNCw3ICszMCw3IEBACiAKIE5hbWU6ICAgICAgIGlidXMKIFZlcnNpb246ICAg IDEuNC4wCi1SZWxlYXNlOiAgICA2JXs/ZGlzdH0KK1JlbGVhc2U6ICAgIDclez9kaXN0fQogU3Vt bWFyeTogICAgSW50ZWxsaWdlbnQgSW5wdXQgQnVzIGZvciBMaW51eCBPUwogTGljZW5zZTogICAg TEdQTHYyKwogR3JvdXA6ICAgICAgU3lzdGVtIEVudmlyb25tZW50L0xpYnJhcmllcwpAQCAtMzg2 LDYgKzM5Miw5IEBAIGZpCiAle19kYXRhZGlyfS9ndGstZG9jL2h0bWwvKgogCiAlY2hhbmdlbG9n CisqIEZyaSBPY3QgMjggMjAxMSBUYWthbyBGdWppd2FyYSA8dGZ1aml3YXJAcmVkaGF0LmNvbT4g LSAxLjQuMC03CistIEZpeGVkIEJ1ZyA3NDc5MDIgLSBtb3VzZSBhbmQgY3RybCtzcGFjZSBub3Qg d29ya2luZworCiAqIFdlZCBPY3QgMjYgMjAxMSBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8 cmVsLWVuZ0BsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZz4gLSAxLjQuMC02CiAtIFJlYnVpbHQgZm9y IGdsaWJjIGJ1ZyM3NDczNzcKIAoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3VyY2VzCmluZGV4 IGYwM2ViZGYuLjFmMTEwYmYgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291cmNlcwpAQCAt MSwzICsxLDMgQEAKIGI0ZjA2Mzc5NGU4OWM3MWViMWY4Y2I1NDMyMTBkYTMwICBpYnVzLTEuNC4w LnRhci5negotMjEwOTM0MzliZTJjNzMyMWNiMWE4NWNhMzMwN2EwYjUgIGlidXMtZ2pzLTMuMC4y LjIwMTExMDE4LnRhci5negotNjM2OTkxZWE0MjU1MWE3NTRjMDQ5OTZhZTM5NmJmNjkgIGlidXMt Z2pzLTMuMi4xLjIwMTExMDIxLnRhci5negorZGUzZjNlYTNmOTRiODU3ZTI1Mzk0M2M1NGY3N2Y2 M2MgIGlidXMtZ2pzLTMuMC4yLjIwMTExMDI4LnRhci5negorNjg4MDAyNjE1MjJhYTM5MWY5NzJj OTNjNzMxN2MwNWIgIGlidXMtZ2pzLTMuMi4xLjIwMTExMDI4LnRhci5nego=