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: =?utf-8?b?UGV0ciBNZW7FocOtayA8cGVtZW5zaWtAcmVkaGF0LmNvbT4=?= To: git-commits@fedoraproject.org Subject: [rpms/bind] rawhide: DNSSEC Validation Bypass via Out-of-Zone NSEC Next Field (CVE-2026-13321) Date: Tue, 25 Aug 2026 19:32:54 GMT Message-ID: <178768637421.1.1897883816058445172.rpms-bind-a859b5175e62@fedoraproject.org> List-ID: X-Git-Repo: rpms/bind X-Git-Branch: rawhide X-Git-Rev: a859b5175e62cc137d3e021d0b3342498db9faee ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvYmluZAogICAgICAgICAgICBCcmFuY2ggOiByYXdoaWRlCiAgICAgICAgICAg IENvbW1pdCA6IGE4NTliNTE3NWU2MmNjMTM3ZDNlMDIxZDBiMzM0MjQ5OGRiOWZhZWUKICAgICAg ICAgICAgQXV0aG9yIDogUGV0ciBNZW7FocOtayA8cGVtZW5zaWtAcmVkaGF0LmNvbT4KICAgICAg ICAgICAgRGF0ZSAgIDogMjAyNi0wOC0yNVQxMzozMzoyOSswMjowMAogICAgICAgICAgICBTdGF0 cyAgOiArNzI1Ly0wIGluIDMgZmlsZShzKQogICAgICAgICAgICBVUkwgICAgOiBodHRwczovL3Ny Yy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2JpbmQvYy9hODU5YjUxNzVlNjJjYzEzN2QzZTAyMWQw YjMzNDI0OThkYjlmYWVlP2JyYW5jaD1yYXdoaWRlCgogICAgICAgICAgICBMb2c6CiAgICAgICAg ICAgIEROU1NFQyBWYWxpZGF0aW9uIEJ5cGFzcyB2aWEgT3V0LW9mLVpvbmUgTlNFQyBOZXh0IEZp ZWxkIChDVkUtMjAyNi0xMzMyMSkKCls5LjE4XSBbQ1ZFLTIwMjYtMTMzMjFdIHNlYzogdXNyOiBG aXggRE5TU0VDIHZhbGlkYXRpb24gYnlwYXNzIHZpYSBvdXQtb2Ytem9uZSBOU0VDIE5leHQgRmll bGQKCkEgbWFsaWNpb3VzIHpvbmUgd2l0aCBvdXQtb2Ytem9uZSBOU0VDIG5leHQgb3duZXIgbmFt ZXMgY2FuIGNhdXNlIGEgRE5TU0VDIHZhbGlkYXRpbmcgcmVzb2x2ZXIgdG8gY2FjaGUgc3VjaCBy ZWNvcmQgYW5kLCBpZiBgc3ludGgtZnJvbS1kbnNzZWNgIGlzIGVuYWJsZWQsIHRvIGdlbmVyYXRl IG5lZ2F0aXZlIGFuc3dlcnMgZm9yIGFueSB6b25lIHRoYXQgaXMgY292ZXJlZCBieSB0aGUgcmFu Z2UuCgpJU0Mgd291bGQgbGlrZSB0byB0aGFuayBRaWZhbiBaaGFuZyBvZiBQYWxvIEFsdG8gTmV0 d29ya3MgZm9yIHJlcG9ydGluZyB0aGUgaXNzdWUuCgpDbG9zZXMgaXNjLXByb2plY3RzL2JpbmQ5 IzU4NzMKCi0tLQpkaWZmIC0tZ2l0IGEvYmluZC05LjE4LUNWRS0yMDI2LTEzMzIxLXRlc3QucGF0 Y2ggYi9iaW5kLTkuMTgtQ1ZFLTIwMjYtMTMzMjEtdGVzdC5wYXRjaApuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwLi5kZjZiYTA0Ci0tLSAvZGV2L251bGwKKysrIGIvYmluZC05LjE4 LUNWRS0yMDI2LTEzMzIxLXRlc3QucGF0Y2gKQEAgLTAsMCArMSw0NDUgQEAKK0Zyb20gZWFhMzU2 MjhmNGEyMDEwNDkyOTVhODk0NGY0ZDI4ZThhMTAxMzE5OSBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKK0Zyb206ID0/VVRGLTg/cT9BeWQ9QzQ9QjFuPTIwTWVyY2FuPz0gPGF5ZGluQGlzYy5vcmc+ CitEYXRlOiBXZWQsIDYgTWF5IDIwMjYgMTY6NTQ6NTcgKzAzMDAKK1N1YmplY3Q6IFtQQVRDSF0g QWRkIHN5c3RlbSB0ZXN0IGZvciBvdXQtb2Ytem9uZSBuc2VjIGRuc3NlYyBieXBhc3MKKworQSBt YWxpY2lvdXMgem9uZSB3aXRoIG91dC1vZi16b25lIE5TRUMgZW50cmllcyBjYW4gZ2V0IGEgRE5T U0VDCit2YWxpZGF0aW5nIHJlc29sdmVyJ3MgY2FjaGUgdG8gY292ZXIgdGhlIHZpY3RpbSB6b25l IGZvciBub24tZXhpc3RlbmNlCithbmQgcHJldmVudCBuYW1lc2VydmVyIHF1ZXJpZXMgd2l0aG91 dCBETlNTRUMgZmFpbHVyZS4KKworVGVzdCBmb3IgdGhpcyBjYXNlIHdpdGggYW4gYGV2aWwudGVz dGAgem9uZSB0aGF0IHRyaWVzIHRvIGNvdmVyIHRoZQorYHZpY3RpbS50ZXN0YCB6b25lLgorCiso Y2hlcnJ5IHBpY2tlZCBmcm9tIGNvbW1pdCA2NTRmOTc3M2MwYWY1OTk2NWMzNDNiZGZlYjA5NmIz ZGZmZTlkZDUzKQorKGNoZXJyeSBwaWNrZWQgZnJvbSBjb21taXQgYzk2OWFkMmMxN2I0M2RkOTk5 ZTM1OGJmZWIyODBkM2RmNmZhYjgyMikKKy0tLQorIC4uLi9zeXN0ZW0vZG5zc2VjX2J5cGFzcy9u czEvbmFtZWQuY29uZi5qMiAgICB8ICAzMSArKysrCisgYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNf YnlwYXNzL25zMS9yb290LmRiICAgIHwgIDE5ICsrKworIGJpbi90ZXN0cy9zeXN0ZW0vZG5zc2Vj X2J5cGFzcy9uczEvdGVzdC5kYiAgICB8ICAyMyArKysKKyAuLi4vc3lzdGVtL2Ruc3NlY19ieXBh c3MvbnMyL25hbWVkLmNvbmYuajIgICAgfCAgMjYgKysrCisgYmluL3Rlc3RzL3N5c3RlbS9kbnNz ZWNfYnlwYXNzL25zMi92aWN0aW0uZGIgIHwgIDE4ICsrKworIGJpbi90ZXN0cy9zeXN0ZW0vZG5z c2VjX2J5cGFzcy9uczMvZXZpbC5kYiAgICB8ICAyMyArKysKKyAuLi4vc3lzdGVtL2Ruc3NlY19i eXBhc3MvbnMzL25hbWVkLmNvbmYuajIgICAgfCAgMjYgKysrCisgLi4uL3N5c3RlbS9kbnNzZWNf YnlwYXNzL25zNC9uYW1lZC5jb25mLmoyICAgIHwgIDM1ICsrKysKKyAuLi4vc3lzdGVtL2Ruc3Nl Y19ieXBhc3MvdGVzdHNfYnlwYXNzLnB5ICAgICAgfCAxNTIgKysrKysrKysrKysrKysrKysrCisg OSBmaWxlcyBjaGFuZ2VkLCAzNTMgaW5zZXJ0aW9ucygrKQorIGNyZWF0ZSBtb2RlIDEwMDY0NCBi aW4vdGVzdHMvc3lzdGVtL2Ruc3NlY19ieXBhc3MvbnMxL25hbWVkLmNvbmYuajIKKyBjcmVhdGUg bW9kZSAxMDA2NDQgYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMS9yb290LmRiCisg Y3JlYXRlIG1vZGUgMTAwNjQ0IGJpbi90ZXN0cy9zeXN0ZW0vZG5zc2VjX2J5cGFzcy9uczEvdGVz dC5kYgorIGNyZWF0ZSBtb2RlIDEwMDY0NCBiaW4vdGVzdHMvc3lzdGVtL2Ruc3NlY19ieXBhc3Mv bnMyL25hbWVkLmNvbmYuajIKKyBjcmVhdGUgbW9kZSAxMDA2NDQgYmluL3Rlc3RzL3N5c3RlbS9k bnNzZWNfYnlwYXNzL25zMi92aWN0aW0uZGIKKyBjcmVhdGUgbW9kZSAxMDA2NDQgYmluL3Rlc3Rz L3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMy9ldmlsLmRiCisgY3JlYXRlIG1vZGUgMTAwNjQ0IGJp bi90ZXN0cy9zeXN0ZW0vZG5zc2VjX2J5cGFzcy9uczMvbmFtZWQuY29uZi5qMgorIGNyZWF0ZSBt b2RlIDEwMDY0NCBiaW4vdGVzdHMvc3lzdGVtL2Ruc3NlY19ieXBhc3MvbnM0L25hbWVkLmNvbmYu ajIKKyBjcmVhdGUgbW9kZSAxMDA2NDQgYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL3Rl c3RzX2J5cGFzcy5weQorCitkaWZmIC0tZ2l0IGEvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlw YXNzL25zMS9uYW1lZC5jb25mLmoyIGIvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25z MS9uYW1lZC5jb25mLmoyCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAwMC4u NTljZWQxODMxYQorLS0tIC9kZXYvbnVsbAorKysrIGIvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNf YnlwYXNzL25zMS9uYW1lZC5jb25mLmoyCitAQCAtMCwwICsxLDMxIEBACisrLyoKKysgKiBDb3B5 cmlnaHQgKEMpIEludGVybmV0IFN5c3RlbXMgQ29uc29ydGl1bSwgSW5jLiAoIklTQyIpCisrICoK KysgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMAorKyAqCisrICogVGhpcyBTb3Vy Y2UgQ29kZSBGb3JtIGlzIHN1YmplY3QgdG8gdGhlIHRlcm1zIG9mIHRoZSBNb3ppbGxhIFB1Ymxp YworKyAqIExpY2Vuc2UsIHYuIDIuMC4gIElmIGEgY29weSBvZiB0aGUgTVBMIHdhcyBub3QgZGlz dHJpYnV0ZWQgd2l0aCB0aGlzCisrICogZmlsZSwgeW91IGNhbiBvYnRhaW4gb25lIGF0IGh0dHBz Oi8vbW96aWxsYS5vcmcvTVBMLzIuMC8uCisrICoKKysgKiBTZWUgdGhlIENPUFlSSUdIVCBmaWxl IGRpc3RyaWJ1dGVkIHdpdGggdGhpcyB3b3JrIGZvciBhZGRpdGlvbmFsCisrICogaW5mb3JtYXRp b24gcmVnYXJkaW5nIGNvcHlyaWdodCBvd25lcnNoaXAuCisrICovCisrCisrb3B0aW9ucyB7Cisr CXBvcnQgQFBPUlRAOworKwlwaWQtZmlsZSAibmFtZWQucGlkIjsKKysJbGlzdGVuLW9uIHsgMTAu NTMuMC4xOyB9OworKwlsaXN0ZW4tb24tdjYgeyBub25lOyB9OworKwlyZWN1cnNpb24gbm87Cisr CWRuc3NlYy12YWxpZGF0aW9uIG5vOworK307CisrCisrem9uZSAidGVzdC4iIHsKKysJdHlwZSBw cmltYXJ5OworKwlmaWxlICJ0ZXN0LmRiLnNpZ25lZCI7CisrfTsKKysKKyt6b25lICIuIiB7Cisr CXR5cGUgcHJpbWFyeTsKKysJZmlsZSAicm9vdC5kYi5zaWduZWQiOworK307CitkaWZmIC0tZ2l0 IGEvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMS9yb290LmRiIGIvYmluL3Rlc3Rz L3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMS9yb290LmRiCituZXcgZmlsZSBtb2RlIDEwMDY0NAor aW5kZXggMDAwMDAwMDAwMC4uOGQ5OGEwNDU2YworLS0tIC9kZXYvbnVsbAorKysrIGIvYmluL3Rl c3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMS9yb290LmRiCitAQCAtMCwwICsxLDE5IEBACisr OyBDb3B5cmlnaHQgKEMpIEludGVybmV0IFN5c3RlbXMgQ29uc29ydGl1bSwgSW5jLiAoIklTQyIp CisrOworKzsgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjAKKys7CisrOyBUaGlzIFNv dXJjZSBDb2RlIEZvcm0gaXMgc3ViamVjdCB0byB0aGUgdGVybXMgb2YgdGhlIE1vemlsbGEgUHVi bGljCisrOyBMaWNlbnNlLCB2LiAyLjAuICBJZiBhIGNvcHkgb2YgdGhlIE1QTCB3YXMgbm90IGRp c3RyaWJ1dGVkIHdpdGggdGhpcworKzsgZmlsZSwgeW91IGNhbiBvYnRhaW4gb25lIGF0IGh0dHBz Oi8vbW96aWxsYS5vcmcvTVBMLzIuMC8uCisrOworKzsgU2VlIHRoZSBDT1BZUklHSFQgZmlsZSBk aXN0cmlidXRlZCB3aXRoIHRoaXMgd29yayBmb3IgYWRkaXRpb25hbAorKzsgaW5mb3JtYXRpb24g cmVnYXJkaW5nIGNvcHlyaWdodCBvd25lcnNoaXAuCisrCisrJFRUTCAzNjAwCisrLgkJCUlOIFNP QQlhLm5pbC4gYS5uaWwuIDEgMzYwMCA2MDAgODY0MDAgMzAwCisrLgkJCUlOIE5TCWEucm9vdC1z ZXJ2ZXJzLm5pbC4KKysKKythLnJvb3Qtc2VydmVycy5uaWwuCUlOIEEJMTAuNTMuMC4xCisrCisr dGVzdC4JCQlJTiBOUwluczEudGVzdC4KKytuczEudGVzdC4JCUlOIEEJMTAuNTMuMC4xCitkaWZm IC0tZ2l0IGEvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMS90ZXN0LmRiIGIvYmlu L3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMS90ZXN0LmRiCituZXcgZmlsZSBtb2RlIDEw MDY0NAoraW5kZXggMDAwMDAwMDAwMC4uNmVmY2Q5NWU0MgorLS0tIC9kZXYvbnVsbAorKysrIGIv YmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMS90ZXN0LmRiCitAQCAtMCwwICsxLDIz IEBACisrOyBDb3B5cmlnaHQgKEMpIEludGVybmV0IFN5c3RlbXMgQ29uc29ydGl1bSwgSW5jLiAo IklTQyIpCisrOworKzsgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjAKKys7CisrOyBU aGlzIFNvdXJjZSBDb2RlIEZvcm0gaXMgc3ViamVjdCB0byB0aGUgdGVybXMgb2YgdGhlIE1vemls bGEgUHVibGljCisrOyBMaWNlbnNlLCB2LiAyLjAuICBJZiBhIGNvcHkgb2YgdGhlIE1QTCB3YXMg bm90IGRpc3RyaWJ1dGVkIHdpdGggdGhpcworKzsgZmlsZSwgeW91IGNhbiBvYnRhaW4gb25lIGF0 IGh0dHBzOi8vbW96aWxsYS5vcmcvTVBMLzIuMC8uCisrOworKzsgU2VlIHRoZSBDT1BZUklHSFQg ZmlsZSBkaXN0cmlidXRlZCB3aXRoIHRoaXMgd29yayBmb3IgYWRkaXRpb25hbAorKzsgaW5mb3Jt YXRpb24gcmVnYXJkaW5nIGNvcHlyaWdodCBvd25lcnNoaXAuCisrCisrJE9SSUdJTiB0ZXN0Lgor KyRUVEwgMzYwMAorKworK0AJCUlOIFNPQSBhIGEgMSAzNjAwIDYwMCA4NjQwMCAzMDAKKysJCUlO IE5TCW5zMS50ZXN0LgorK25zMQkJSU4gQQkxMC41My4wLjEKKysKKytldmlsCQlJTiBOUwluczEu ZXZpbAorK25zMS5ldmlsCUlOIEEJMTAuNTMuMC4zCisrCisrdmljdGltCQlJTiBOUwluczEudmlj dGltCisrbnMxLnZpY3RpbQlJTiBBCTEwLjUzLjAuMgorZGlmZiAtLWdpdCBhL2Jpbi90ZXN0cy9z eXN0ZW0vZG5zc2VjX2J5cGFzcy9uczIvbmFtZWQuY29uZi5qMiBiL2Jpbi90ZXN0cy9zeXN0ZW0v ZG5zc2VjX2J5cGFzcy9uczIvbmFtZWQuY29uZi5qMgorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2lu ZGV4IDAwMDAwMDAwMDAuLmU4MWNlZTdjYWMKKy0tLSAvZGV2L251bGwKKysrKyBiL2Jpbi90ZXN0 cy9zeXN0ZW0vZG5zc2VjX2J5cGFzcy9uczIvbmFtZWQuY29uZi5qMgorQEAgLTAsMCArMSwyNiBA QAorKy8qCisrICogQ29weXJpZ2h0IChDKSBJbnRlcm5ldCBTeXN0ZW1zIENvbnNvcnRpdW0sIElu Yy4gKCJJU0MiKQorKyAqCisrICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjAKKysg KgorKyAqIFRoaXMgU291cmNlIENvZGUgRm9ybSBpcyBzdWJqZWN0IHRvIHRoZSB0ZXJtcyBvZiB0 aGUgTW96aWxsYSBQdWJsaWMKKysgKiBMaWNlbnNlLCB2LiAyLjAuICBJZiBhIGNvcHkgb2YgdGhl IE1QTCB3YXMgbm90IGRpc3RyaWJ1dGVkIHdpdGggdGhpcworKyAqIGZpbGUsIHlvdSBjYW4gb2J0 YWluIG9uZSBhdCBodHRwczovL21vemlsbGEub3JnL01QTC8yLjAvLgorKyAqCisrICogU2VlIHRo ZSBDT1BZUklHSFQgZmlsZSBkaXN0cmlidXRlZCB3aXRoIHRoaXMgd29yayBmb3IgYWRkaXRpb25h bAorKyAqIGluZm9ybWF0aW9uIHJlZ2FyZGluZyBjb3B5cmlnaHQgb3duZXJzaGlwLgorKyAqLwor KworK29wdGlvbnMgeworKwlwb3J0IEBQT1JUQDsKKysJcGlkLWZpbGUgIm5hbWVkLnBpZCI7Cisr CWxpc3Rlbi1vbiB7IDEwLjUzLjAuMjsgfTsKKysJbGlzdGVuLW9uLXY2IHsgbm9uZTsgfTsKKysJ cmVjdXJzaW9uIG5vOworKwlkbnNzZWMtdmFsaWRhdGlvbiBubzsKKyt9OworKworK3pvbmUgInZp Y3RpbS50ZXN0LiIgeworKwl0eXBlIHByaW1hcnk7CisrCWZpbGUgInZpY3RpbS5kYi5zaWduZWQi OworK307CitkaWZmIC0tZ2l0IGEvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMi92 aWN0aW0uZGIgYi9iaW4vdGVzdHMvc3lzdGVtL2Ruc3NlY19ieXBhc3MvbnMyL3ZpY3RpbS5kYgor bmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwMDAuLmVkY2MyMzQzMjIKKy0tLSAv ZGV2L251bGwKKysrKyBiL2Jpbi90ZXN0cy9zeXN0ZW0vZG5zc2VjX2J5cGFzcy9uczIvdmljdGlt LmRiCitAQCAtMCwwICsxLDE4IEBACisrOyBDb3B5cmlnaHQgKEMpIEludGVybmV0IFN5c3RlbXMg Q29uc29ydGl1bSwgSW5jLiAoIklTQyIpCisrOworKzsgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6 IE1QTC0yLjAKKys7CisrOyBUaGlzIFNvdXJjZSBDb2RlIEZvcm0gaXMgc3ViamVjdCB0byB0aGUg dGVybXMgb2YgdGhlIE1vemlsbGEgUHVibGljCisrOyBMaWNlbnNlLCB2LiAyLjAuICBJZiBhIGNv cHkgb2YgdGhlIE1QTCB3YXMgbm90IGRpc3RyaWJ1dGVkIHdpdGggdGhpcworKzsgZmlsZSwgeW91 IGNhbiBvYnRhaW4gb25lIGF0IGh0dHBzOi8vbW96aWxsYS5vcmcvTVBMLzIuMC8uCisrOworKzsg U2VlIHRoZSBDT1BZUklHSFQgZmlsZSBkaXN0cmlidXRlZCB3aXRoIHRoaXMgd29yayBmb3IgYWRk aXRpb25hbAorKzsgaW5mb3JtYXRpb24gcmVnYXJkaW5nIGNvcHlyaWdodCBvd25lcnNoaXAuCisr CisrJE9SSUdJTiB2aWN0aW0udGVzdC4KKyskVFRMIDM2MDAKKysKKytACQlJTiBTT0EJbnMxIGhv c3RtYXN0ZXIgMSAzNjAwIDYwMCA4NjQwMCAyMTQ3NDgzNjQ3CisrCQlJTiBOUwluczEKKysKKytu czEJCUlOIEEJMTAuNTMuMC4yCitkaWZmIC0tZ2l0IGEvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNf YnlwYXNzL25zMy9ldmlsLmRiIGIvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMy9l dmlsLmRiCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAwMC4uNjE4ZjlkM2U4 NQorLS0tIC9kZXYvbnVsbAorKysrIGIvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25z My9ldmlsLmRiCitAQCAtMCwwICsxLDIzIEBACisrOyBDb3B5cmlnaHQgKEMpIEludGVybmV0IFN5 c3RlbXMgQ29uc29ydGl1bSwgSW5jLiAoIklTQyIpCisrOworKzsgU1BEWC1MaWNlbnNlLUlkZW50 aWZpZXI6IE1QTC0yLjAKKys7CisrOyBUaGlzIFNvdXJjZSBDb2RlIEZvcm0gaXMgc3ViamVjdCB0 byB0aGUgdGVybXMgb2YgdGhlIE1vemlsbGEgUHVibGljCisrOyBMaWNlbnNlLCB2LiAyLjAuICBJ ZiBhIGNvcHkgb2YgdGhlIE1QTCB3YXMgbm90IGRpc3RyaWJ1dGVkIHdpdGggdGhpcworKzsgZmls ZSwgeW91IGNhbiBvYnRhaW4gb25lIGF0IGh0dHBzOi8vbW96aWxsYS5vcmcvTVBMLzIuMC8uCisr OworKzsgU2VlIHRoZSBDT1BZUklHSFQgZmlsZSBkaXN0cmlidXRlZCB3aXRoIHRoaXMgd29yayBm b3IgYWRkaXRpb25hbAorKzsgaW5mb3JtYXRpb24gcmVnYXJkaW5nIGNvcHlyaWdodCBvd25lcnNo aXAuCisrCisrJE9SSUdJTiBldmlsLnRlc3QuCisrJFRUTCAzMDAKKysKKytACQlJTiBTT0EJbnMx IGhvc3RtYXN0ZXIgMSAzNjAwIDYwMCA4NjQwMCAzMDAKKysJCUlOIE5TCW5zMQorKzsgVHJ5IHRv IHBvaXNvbiB0aGUgdmljdGltIHpvbmUgaW4gYSByZXNvbHZlciBjYWNoZS4KKys7IElmIGFkbWl0 dGVkLCB0aGUgYWdncmVzc2l2ZSBOU0VDIGNhY2hlIHdpbGwgYWNjZXB0IGEgcmFuZ2Ugc3VjaCBh cworKzsgW2V2aWwudGVzdCwgYi52aWN0aW0udGVzdCkgYW5kIHdpbGwgY2F1c2UgdGhlIHZpY3Rp bSBuYW1lc2VydmVyIHRvCisrOyBiZSBuZXZlciBxdWVyaWVkLgorKwkJSU4gTlNFQwliLnZpY3Rp bS50ZXN0LiBOUyBTT0EgUlJTSUcgTlNFQyBETlNLRVkKKysKKytuczEJCUlOIEEJMTAuNTMuMC4z CitkaWZmIC0tZ2l0IGEvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMy9uYW1lZC5j b25mLmoyIGIvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMy9uYW1lZC5jb25mLmoy CituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAwMC4uMTdkM2UxOGU0ZQorLS0t IC9kZXYvbnVsbAorKysrIGIvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL25zMy9uYW1l ZC5jb25mLmoyCitAQCAtMCwwICsxLDI2IEBACisrLyoKKysgKiBDb3B5cmlnaHQgKEMpIEludGVy bmV0IFN5c3RlbXMgQ29uc29ydGl1bSwgSW5jLiAoIklTQyIpCisrICoKKysgKiBTUERYLUxpY2Vu c2UtSWRlbnRpZmllcjogTVBMLTIuMAorKyAqCisrICogVGhpcyBTb3VyY2UgQ29kZSBGb3JtIGlz IHN1YmplY3QgdG8gdGhlIHRlcm1zIG9mIHRoZSBNb3ppbGxhIFB1YmxpYworKyAqIExpY2Vuc2Us IHYuIDIuMC4gIElmIGEgY29weSBvZiB0aGUgTVBMIHdhcyBub3QgZGlzdHJpYnV0ZWQgd2l0aCB0 aGlzCisrICogZmlsZSwgeW91IGNhbiBvYnRhaW4gb25lIGF0IGh0dHBzOi8vbW96aWxsYS5vcmcv TVBMLzIuMC8uCisrICoKKysgKiBTZWUgdGhlIENPUFlSSUdIVCBmaWxlIGRpc3RyaWJ1dGVkIHdp dGggdGhpcyB3b3JrIGZvciBhZGRpdGlvbmFsCisrICogaW5mb3JtYXRpb24gcmVnYXJkaW5nIGNv cHlyaWdodCBvd25lcnNoaXAuCisrICovCisrCisrb3B0aW9ucyB7CisrCXBvcnQgQFBPUlRAOwor KwlwaWQtZmlsZSAibmFtZWQucGlkIjsKKysJbGlzdGVuLW9uIHsgMTAuNTMuMC4zOyB9OworKwls aXN0ZW4tb24tdjYgeyBub25lOyB9OworKwlyZWN1cnNpb24gbm87CisrCWRuc3NlYy12YWxpZGF0 aW9uIG5vOworK307CisrCisrem9uZSAiZXZpbC50ZXN0LiIgeworKwl0eXBlIHByaW1hcnk7Cisr CWZpbGUgImV2aWwuZGIuc2lnbmVkIjsKKyt9OworZGlmZiAtLWdpdCBhL2Jpbi90ZXN0cy9zeXN0 ZW0vZG5zc2VjX2J5cGFzcy9uczQvbmFtZWQuY29uZi5qMiBiL2Jpbi90ZXN0cy9zeXN0ZW0vZG5z c2VjX2J5cGFzcy9uczQvbmFtZWQuY29uZi5qMgorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4 IDAwMDAwMDAwMDAuLjAzOTY5NWQ5YjcKKy0tLSAvZGV2L251bGwKKysrKyBiL2Jpbi90ZXN0cy9z eXN0ZW0vZG5zc2VjX2J5cGFzcy9uczQvbmFtZWQuY29uZi5qMgorQEAgLTAsMCArMSwzNSBAQAor Ky8qCisrICogQ29weXJpZ2h0IChDKSBJbnRlcm5ldCBTeXN0ZW1zIENvbnNvcnRpdW0sIEluYy4g KCJJU0MiKQorKyAqCisrICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjAKKysgKgor KyAqIFRoaXMgU291cmNlIENvZGUgRm9ybSBpcyBzdWJqZWN0IHRvIHRoZSB0ZXJtcyBvZiB0aGUg TW96aWxsYSBQdWJsaWMKKysgKiBMaWNlbnNlLCB2LiAyLjAuICBJZiBhIGNvcHkgb2YgdGhlIE1Q TCB3YXMgbm90IGRpc3RyaWJ1dGVkIHdpdGggdGhpcworKyAqIGZpbGUsIHlvdSBjYW4gb2J0YWlu IG9uZSBhdCBodHRwczovL21vemlsbGEub3JnL01QTC8yLjAvLgorKyAqCisrICogU2VlIHRoZSBD T1BZUklHSFQgZmlsZSBkaXN0cmlidXRlZCB3aXRoIHRoaXMgd29yayBmb3IgYWRkaXRpb25hbAor KyAqIGluZm9ybWF0aW9uIHJlZ2FyZGluZyBjb3B5cmlnaHQgb3duZXJzaGlwLgorKyAqLworKwor K29wdGlvbnMgeworKwlxdWVyeS1zb3VyY2UgYWRkcmVzcyAxMC41My4wLjQ7CisrCW5vdGlmeS1z b3VyY2UgMTAuNTMuMC40OworKwl0cmFuc2Zlci1zb3VyY2UgMTAuNTMuMC40OworKwlwb3J0IEBQ T1JUQDsKKysJcGlkLWZpbGUgIm5hbWVkLnBpZCI7CisrCWxpc3Rlbi1vbiB7IDEwLjUzLjAuNDsg fTsKKysJbGlzdGVuLW9uLXY2IHsgbm9uZTsgfTsKKysJYWxsb3ctdHJhbnNmZXIgeyBhbnk7IH07 CisrCXJlY3Vyc2lvbiB5ZXM7CisrCWRuc3NlYy12YWxpZGF0aW9uIHllczsKKysJc3ludGgtZnJv bS1kbnNzZWMgeWVzOworK307CisrCisrdHJ1c3QtYW5jaG9ycyB7CisrCUByb290LmRvbWFpbkAg QHJvb3QudHlwZUAgQHJvb3QuY29udGVudHNAOworK307CisrCisrem9uZSAiLiIgeworKwl0eXBl IGhpbnQ7CisrCWZpbGUgIi4uLy4uL19jb21tb24vcm9vdC5oaW50IjsKKyt9OworZGlmZiAtLWdp dCBhL2Jpbi90ZXN0cy9zeXN0ZW0vZG5zc2VjX2J5cGFzcy90ZXN0c19ieXBhc3MucHkgYi9iaW4v dGVzdHMvc3lzdGVtL2Ruc3NlY19ieXBhc3MvdGVzdHNfYnlwYXNzLnB5CituZXcgZmlsZSBtb2Rl IDEwMDY0NAoraW5kZXggMDAwMDAwMDAwMC4uYzQxYmI3ZTAxNgorLS0tIC9kZXYvbnVsbAorKysr IGIvYmluL3Rlc3RzL3N5c3RlbS9kbnNzZWNfYnlwYXNzL3Rlc3RzX2J5cGFzcy5weQorQEAgLTAs MCArMSwxNTIgQEAKKysjIENvcHlyaWdodCAoQykgSW50ZXJuZXQgU3lzdGVtcyBDb25zb3J0aXVt LCBJbmMuICgiSVNDIikKKysjCisrIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMAor KyMKKysjIFRoaXMgU291cmNlIENvZGUgRm9ybSBpcyBzdWJqZWN0IHRvIHRoZSB0ZXJtcyBvZiB0 aGUgTW96aWxsYSBQdWJsaWMKKysjIExpY2Vuc2UsIHYuIDIuMC4gIElmIGEgY29weSBvZiB0aGUg TVBMIHdhcyBub3QgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzCisrIyBmaWxlLCB5b3UgY2FuIG9idGFp biBvbmUgYXQgaHR0cHM6Ly9tb3ppbGxhLm9yZy9NUEwvMi4wLy4KKysjCisrIyBTZWUgdGhlIENP UFlSSUdIVCBmaWxlIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyB3b3JrIGZvciBhZGRpdGlvbmFsCisr IyBpbmZvcm1hdGlvbiByZWdhcmRpbmcgY29weXJpZ2h0IG93bmVyc2hpcC4KKysKKytmcm9tIGRh dGV0aW1lIGltcG9ydCBkYXRldGltZSwgdGltZWRlbHRhLCB0aW1lem9uZQorKworK2ltcG9ydCBz aHV0aWwKKysKKytmcm9tIGNyeXB0b2dyYXBoeS5oYXptYXQucHJpbWl0aXZlcy5hc3ltbWV0cmlj IGltcG9ydCBlYworKworK2ltcG9ydCBkbnMuZG5zc2VjCisraW1wb3J0IGRucy5uYW1lCisraW1w b3J0IGRucy5yZGF0YWNsYXNzCisraW1wb3J0IGRucy5yZGF0YXNldAorK2ltcG9ydCBkbnMucmRh dGF0eXBlCisraW1wb3J0IGRucy5ycnNldAorK2ltcG9ydCBkbnMuem9uZQorKworK2Zyb20gaXNj dGVzdC5ydW4gaW1wb3J0IEVudkNtZAorKworK2ltcG9ydCBpc2N0ZXN0CisrCisrVFRMID0gMzYw MAorKworKworK2RlZiBib290c3RyYXAoKToKKysgICAga2V5Z2VuID0gRW52Q21kKCJLRVlHRU4i LCAiLXEgLWEgRUNEU0EyNTYiKQorKyAgICBzaWduZXIgPSBFbnZDbWQoIlNJR05FUiIsICItUyAt ZyAtTyBmdWxsIikKKysKKysgICAgZGVmIHNpZ25fcmVndWxhcl96b25lKG5zOiBzdHIsIHpvbmU6 IHN0ciwgZGF0YWJhc2U6IHN0cikgLT4gaXNjdGVzdC5rYXNwLktleToKKysgICAgICAgIGlzY3Rl c3QubG9nLmluZm8oZiJ7em9uZX06IGdlbmVyYXRlIGtleXMiKQorKyAgICAgICAga2V5Z2VuKHpv bmUsIGN3ZD1ucykub3V0LnN0cmlwKCkKKysgICAgICAgIGtzayA9IGtleWdlbihmIi1mIEtTSyB7 em9uZX0iLCBjd2Q9bnMpLm91dC5zdHJpcCgpCisrCisrICAgICAgICBpc2N0ZXN0LmxvZy5pbmZv KGYie3pvbmV9OiBzaWduIHpvbmUiKQorKyAgICAgICAgc2lnbmVyKGYiLW8ge3pvbmV9IHtkYXRh YmFzZX0iLCBjd2Q9bnMpCisrCisrICAgICAgICBpZiBucyAhPSAibnMxIjoKKysgICAgICAgICAg ICBzaHV0aWwuY29weShmIntuc30vZHNzZXQte3pvbmV9IiwgZiJuczEvZHNzZXQte3pvbmV9IikK KysgICAgICAgICAgICBzaHV0aWwuY29weShmIntuc30ve2tza30ua2V5IiwgZiJuczEve2tza30u a2V5IikKKysKKysgICAgICAgIHJldHVybiBpc2N0ZXN0Lmthc3AuS2V5KGtzaywga2V5ZGlyPW5z KQorKworKyAgICAjIGRuc3NlYy1zaWduem9uZSBhbmQgYGRucy5kbnNzZWMuc2lnbl96b25lYCBj b3JyZWN0bHkgZGlzcmVnYXJkIHRoZSBpbnZhbGlkCisrICAgICMgTlNFQyBlbnRyaWVzIHdoZW4g c2lnbmluZyB0aGUgem9uZS4gSG93ZXZlciwgZm9yIHRoaXMgdGVzdCB3ZSBhY3R1YWx5ICp3YW50 KgorKyAgICAjIHRvIHNlcnZlIGludmFsaWQgeWV0IHNpZ25lZCB6b25lcy4gVG8gYWNjb21wbGlz aCB0aGlzIHdlIHNpZ24gdGhlIHpvbmUgYW5kIHRoZW4KKysgICAgIyByZXBsYWNlIHRoZSBjb3Jy ZWN0IGVudHJpZXMgd2l0aCB0aGUgZmF1bHR5IG9uZXMgYWNjb21wYW5pZWQgYnkgaXRzIFJSU0lH LgorKyAgICAjCisrICAgICMgVE9ETyhheWRpbik6IG1vdmUgdGhpcyB0byBgaXNjdGVzdGAgdG8g c2lnbiBicm9rZW4gem9uZXMKKysgICAgZGVmIHNpZ25fcm9ndWVfem9uZShuczogc3RyLCB6b25l OiBzdHIsIGRhdGFiYXNlOiBzdHIpIC0+IE5vbmU6CisrICAgICAgICAjIFJlYWQgem9uZS4KKysg ICAgICAgIG9yaWdpbiA9IGRucy5uYW1lLmZyb21fdGV4dCh6b25lKQorKyAgICAgICAgZGF0YSA9 IGRucy56b25lLmZyb21fZmlsZShmIntuc30ve2RhdGFiYXNlfSIsIG9yaWdpbj1vcmlnaW4sIHJl bGF0aXZpemU9RmFsc2UpCisrCisrICAgICAgICAjIEdldCBrZXkgZm9yIHNpZ25pbmcuCisrICAg ICAgICBpc2N0ZXN0LmxvZy5pbmZvKGYie3pvbmV9OiBnZW5lcmF0ZSBrZXlzIikKKysgICAgICAg IHByaXZhdGVfa2V5ID0gZWMuZ2VuZXJhdGVfcHJpdmF0ZV9rZXkoZWMuU0VDUDI1NlIxKCkpCisr ICAgICAgICBkbnNrZXkgPSBkbnMuZG5zc2VjLm1ha2VfZG5za2V5KAorKyAgICAgICAgICAgIHB1 YmxpY19rZXk9cHJpdmF0ZV9rZXkucHVibGljX2tleSgpLAorKyAgICAgICAgICAgIGFsZ29yaXRo bT1kbnMuZG5zc2VjLkFsZ29yaXRobS5FQ0RTQVAyNTZTSEEyNTYsCisrICAgICAgICAgICAgZmxh Z3M9MjU3LAorKyAgICAgICAgKQorKworKyAgICAgICAgIyBTaWduIHpvbmUuCisrICAgICAgICBp c2N0ZXN0LmxvZy5pbmZvKGYie3pvbmV9OiBzaWduIHpvbmUiKQorKyAgICAgICAgbm93ID0gZGF0 ZXRpbWUubm93KHRpbWV6b25lLnV0YykKKysgICAgICAgIGluY2VwdGlvbiA9IG5vdyAtIHRpbWVk ZWx0YShob3Vycz0xKQorKyAgICAgICAgZXhwaXJhdGlvbiA9IG5vdyArIHRpbWVkZWx0YShkYXlz PTMwKQorKworKyAgICAgICAgZm9yIG5hbWUsIG5vZGUgaW4gZGF0YS5ub2Rlcy5pdGVtcygpOgor KyAgICAgICAgICAgIG93bmVyID0gbmFtZS5kZXJlbGF0aXZpemUob3JpZ2luKQorKyAgICAgICAg ICAgIHJkYXRhc2V0cyA9IGxpc3Qobm9kZS5yZGF0YXNldHMpCisrCisrICAgICAgICAgICAgZm9y IHJkYXRhc2V0IGluIHJkYXRhc2V0czoKKysgICAgICAgICAgICAgICAgcnJzZXQgPSBkbnMucnJz ZXQuUlJzZXQob3duZXIsIHJkYXRhc2V0LnJkY2xhc3MsIHJkYXRhc2V0LnJkdHlwZSkKKysgICAg ICAgICAgICAgICAgcnJzZXQudXBkYXRlKHJkYXRhc2V0KQorKworKyAgICAgICAgICAgICAgICBy cnNpZyA9IGRucy5kbnNzZWMuc2lnbigKKysgICAgICAgICAgICAgICAgICAgIHJyc2V0PXJyc2V0 LAorKyAgICAgICAgICAgICAgICAgICAgcHJpdmF0ZV9rZXk9cHJpdmF0ZV9rZXksCisrICAgICAg ICAgICAgICAgICAgICBzaWduZXI9b3JpZ2luLAorKyAgICAgICAgICAgICAgICAgICAgZG5za2V5 PWRuc2tleSwKKysgICAgICAgICAgICAgICAgICAgIGluY2VwdGlvbj1pbmNlcHRpb24sCisrICAg ICAgICAgICAgICAgICAgICBleHBpcmF0aW9uPWV4cGlyYXRpb24sCisrICAgICAgICAgICAgICAg ICAgICBkZXRlcm1pbmlzdGljPUZhbHNlLAorKyAgICAgICAgICAgICAgICApCisrCisrICAgICAg ICAgICAgICAgIHJkYXRhc2V0ID0gZG5zLnJkYXRhc2V0LlJkYXRhc2V0KHJyc2V0LnJkY2xhc3Ms IGRucy5yZGF0YXR5cGUuUlJTSUcpCisrICAgICAgICAgICAgICAgIHJkYXRhc2V0LmFkZChycnNp ZywgcnJzZXQudHRsKQorKyAgICAgICAgICAgICAgICBub2RlLnJlcGxhY2VfcmRhdGFzZXQocmRh dGFzZXQpCisrCisrICAgICAgICAjIFNpZ24gRE5TS0VZIFJSc2V0LgorKyAgICAgICAgZG5za2V5 X3Jyc2V0ID0gZG5zLnJyc2V0LlJSc2V0KG9yaWdpbiwgZG5zLnJkYXRhY2xhc3MuSU4sIGRucy5y ZGF0YXR5cGUuRE5TS0VZKQorKyAgICAgICAgZG5za2V5X3Jyc2V0LmFkZChkbnNrZXksIHR0bD1U VEwpCisrCisrICAgICAgICBhcGV4X25vZGUgPSBkYXRhLm5vZGVzW29yaWdpbl0KKysgICAgICAg IGFwZXhfbm9kZS5yZXBsYWNlX3JkYXRhc2V0KGRuc2tleV9ycnNldCkKKysKKysgICAgICAgIHJy c2lnID0gZG5zLmRuc3NlYy5zaWduKAorKyAgICAgICAgICAgIHJyc2V0PWRuc2tleV9ycnNldCwK KysgICAgICAgICAgICBwcml2YXRlX2tleT1wcml2YXRlX2tleSwKKysgICAgICAgICAgICBzaWdu ZXI9b3JpZ2luLAorKyAgICAgICAgICAgIGRuc2tleT1kbnNrZXksCisrICAgICAgICAgICAgaW5j ZXB0aW9uPWluY2VwdGlvbiwKKysgICAgICAgICAgICBleHBpcmF0aW9uPWV4cGlyYXRpb24sCisr ICAgICAgICAgICAgZGV0ZXJtaW5pc3RpYz1GYWxzZSwKKysgICAgICAgICkKKysgICAgICAgIHJk YXRhc2V0ID0gZG5zLnJkYXRhc2V0LlJkYXRhc2V0KHJyc2V0LnJkY2xhc3MsIGRucy5yZGF0YXR5 cGUuUlJTSUcpCisrICAgICAgICByZGF0YXNldC5hZGQocnJzaWcsIGRuc2tleV9ycnNldC50dGwp CisrICAgICAgICBhcGV4X25vZGUucmVwbGFjZV9yZGF0YXNldChyZGF0YXNldCkKKysKKysgICAg ICAgICMgT3V0cHV0IHpvbmUuCisrICAgICAgICBkYXRhLnRvX2ZpbGUoZiJ7bnN9L3tkYXRhYmFz ZX0uc2lnbmVkIiwgcmVsYXRpdml6ZT1GYWxzZSkKKysKKysgICAgICAgICMgT3V0cHV0IERTLgor KyAgICAgICAgZHMgPSBkbnMuZG5zc2VjLm1ha2VfZHMobmFtZT1vcmlnaW4sIGtleT1kbnNrZXks IGFsZ29yaXRobT0iU0hBMjU2IikKKysgICAgICAgIHdpdGggb3BlbihmIm5zMS9kc3NldC17em9u ZX0iLCAidyIsIGVuY29kaW5nPSJ1dGYtOCIpIGFzIGY6CisrICAgICAgICAgICAgZi53cml0ZShm Int6b25lfSB7VFRMfSBJTiBEUyB7ZHMudG9fdGV4dCgpfVxuIikKKysKKysgICAgc2lnbl9yb2d1 ZV96b25lKCJuczMiLCAiZXZpbC50ZXN0LiIsICJldmlsLmRiIikKKysgICAgc2lnbl9yZWd1bGFy X3pvbmUoIm5zMiIsICJ2aWN0aW0udGVzdC4iLCAidmljdGltLmRiIikKKysgICAgc2lnbl9yZWd1 bGFyX3pvbmUoIm5zMSIsICJ0ZXN0LiIsICJ0ZXN0LmRiIikKKysgICAgcm9vdF9rc2sgPSBzaWdu X3JlZ3VsYXJfem9uZSgibnMxIiwgIi4iLCAicm9vdC5kYiIpCisrCisrICAgIHJldHVybiB7Cisr ICAgICAgICAicm9vdCI6IHJvb3Rfa3NrLmludG9fdGEoInN0YXRpYy1rZXkiKSwKKysgICAgfQor KworKworK2RlZiB0ZXN0X291dF9vZl96b25lX25zZWMobnM0KToKKysgICAgaXNjdGVzdC5sb2cu aW5mbygidHJ5aW5nIHRvIHBvaXNvbiBhZ2dyZXNzaXZlIG5zZWMgY2FjaGUiKQorKyAgICBtc2cg PSBpc2N0ZXN0LnF1ZXJ5LmNyZWF0ZSgibnguZXZpbC50ZXN0IiwgIkEiKQorKyAgICByZXMgPSBp c2N0ZXN0LnF1ZXJ5LnRjcChtc2csIG5zNC5pcCkKKysgICAgaXNjdGVzdC5jaGVjay5ub2FkZmxh ZyhyZXMpCisrCisrICAgIGlzY3Rlc3QubG9nLmluZm8oInF1ZXJ5IHZpY3RpbSBmcm9tIHJlY3Vy c2l2ZSIpCisrICAgIG1zZyA9IGlzY3Rlc3QucXVlcnkuY3JlYXRlKCJ2aWN0aW0udGVzdCIsICJT T0EiKQorKyAgICByZXMgPSBpc2N0ZXN0LnF1ZXJ5LnRjcChtc2csIG5zNC5pcCwgYXR0ZW1wdHM9 MSkKKysgICAgaXNjdGVzdC5jaGVjay5ub2Vycm9yKHJlcykKKysgICAgaXNjdGVzdC5jaGVjay5h ZGZsYWcocmVzKQorKyAgICBpc2N0ZXN0LmNoZWNrLnJyX2NvdW50X2VxKHJlcy5hbnN3ZXIsIDIp CisrCisrICAgIGlzY3Rlc3QubG9nLmluZm8oImNoZWNraW5nIGZvciBxdWVyeSBoaXN0b3J5IG9u IHZpY3RpbSBuYW1lc2VydmVyIikKKysgICAgd2l0aCBvcGVuKCJuczIvbmFtZWQucnVuIiwgInIi LCBlbmNvZGluZz0idXRmLTgiKSBhcyBmOgorKyAgICAgICAgYXNzZXJ0ICIodmljdGltLnRlc3Qp OiBxdWVyeSAndmljdGltLnRlc3QvU09BL0lOJyBhcHByb3ZlZCIgaW4gZi5yZWFkKCkKKy0tIAor Mi41NS4wCisKCmRpZmYgLS1naXQgYS9iaW5kLTkuMTgtQ1ZFLTIwMjYtMTMzMjEucGF0Y2ggYi9i aW5kLTkuMTgtQ1ZFLTIwMjYtMTMzMjEucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMC4uOGEwOWZmMQotLS0gL2Rldi9udWxsCisrKyBiL2JpbmQtOS4xOC1DVkUtMjAyNi0x MzMyMS5wYXRjaApAQCAtMCwwICsxLDI3NyBAQAorRnJvbSA3Mjk2NzQ0NWYzN2EwMWQyOGI0ZWNi MGU4ZjkwN2UyMmZkZGQ1MDg3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogPT9VVEYt OD9xP0F5ZD1DND1CMW49MjBNZXJjYW4/PSA8YXlkaW5AaXNjLm9yZz4KK0RhdGU6IFRodSwgNyBN YXkgMjAyNiAxODo1OToyMCArMDMwMAorU3ViamVjdDogW1BBVENIXSBSZWplY3Qgb3V0LW9mLXpv bmUgTlNFQyBuZXh0IG93bmVyIG5hbWVzCisKK1doZW4gdmVyaWZ5aW5nIEROU1NFQyByZWNvcmRz LCBtYWtlIHN1cmUgdGhhdCBhIG5leHQgb3duZXIgbmFtZSBvZgorYW4gTlNFQyByZWNvcmQgaXMg YSBzdWJkb21haW4gb2YgdGhlIHNpZ25lciBmaWVsZC4KKworVGhpcyBmb2xsb3dzIHRoZSBzcGVj aWZpY2F0aW9uIFJGQyA0MDM0LCBzZWN0aW9uIDQuMS4xOgorCisgT3duZXIgbmFtZXMgb2YgUlJz ZXRzIGZvciB3aGljaCB0aGUgZ2l2ZW4gem9uZSBpcyBub3QgYXV0aG9yaXRhdGl2ZQorIChzdWNo IGFzIGdsdWUgcmVjb3JkcykgTVVTVCBOT1QgYmUgbGlzdGVkIGluIHRoZSBOZXh0IERvbWFpbiBO YW1lCisgdW5sZXNzIGF0IGxlYXN0IG9uZSBhdXRob3JpdGF0aXZlIFJSc2V0IGV4aXN0cyBhdCB0 aGUgc2FtZSBvd25lcgorIG5hbWUuCisKK1doaWxlIHRoZSBhYm92ZSBwYXJhZ3JhcGggaXMgaW50 ZW5kZWQgZm9yIGdsdWUgcmVjb3JkcywgaXQgYWxzbworYXBwbGllcyB0byBvdXQtb2Ytem9uZSBk YXRhLgorCisoY2hlcnJ5IHBpY2tlZCBmcm9tIGNvbW1pdCA0MDY1NTEyZDI1YjcxNjA1Yjk1MDJi YjY5ZGZiOTAzNzc2ZDM1YWE5KQorKGNoZXJyeSBwaWNrZWQgZnJvbSBjb21taXQgMDU4MDIzYzY2 ZjExZDc4NTkwZDRhYThjNGY5ODk0NmM0Yzk2NWUyMSkKKworY2hhbmdlIGRuc19uc2VjX3JlcXVp cmVkdHlwZXNwcmVzZW50IHRvIGRuc19uc2VjX2lzX2xlZ2FsCisKK0NoYW5nZSBgZG5zX25zZWNf cmVxdWlyZWR0eXBlc3ByZXNlbnRgIHRvIGBkbnNfbnNlY19pc19sZWdhbGAgYXMgYQorZnVuY3Rp b24gZm9yIGNoZWNraW5nIG11bHRpcGxlIE5TRUMgdmFsaWRpdHkgcnVsZXMuCisKK0N1cnJlbnRs eSB3ZSBub3cgYWRkaXRpb25hbGx5IGNoZWNrIGZvciBvdXQtb2Ytem9uZSBOU0VDIGVudHJpZXMu CisKKyhjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IGJlMmE2YTQ5NzMxMjQ2OTg5MGI1NTI5MDdk MDM5ZDJkZTBiNDRjY2MpCisoY2hlcnJ5IHBpY2tlZCBmcm9tIGNvbW1pdCBmNzUxZTE5YTMwZDEw N2YwNGMyZjY0NGFmZjlmOGRhYjhmZWQwM2FiKQorLS0tCisgbGliL2Rucy9kbnNzZWMuYyAgICAg ICAgICAgICB8IDEzICsrKysrKysrKysKKyBsaWIvZG5zL2luY2x1ZGUvZG5zL2Ruc3NlYy5oIHwg IDYgKysrKysKKyBsaWIvZG5zL2luY2x1ZGUvZG5zL25zZWMuaCAgIHwgMTggKysrKysrKysrKy0t LS0KKyBsaWIvZG5zL25zZWMuYyAgICAgICAgICAgICAgIHwgMTcgKysrKysrKysrKy0tLQorIGxp Yi9kbnMvcmVzb2x2ZXIuYyAgICAgICAgICAgfCA0OCArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrLS0KKyBsaWIvbnMvcXVlcnkuYyAgICAgICAgICAgICAgIHwgIDYgKystLS0KKyA2 IGZpbGVzIGNoYW5nZWQsIDk0IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQorCitkaWZm IC0tZ2l0IGEvbGliL2Rucy9kbnNzZWMuYyBiL2xpYi9kbnMvZG5zc2VjLmMKK2luZGV4IDliOWIx ZjJiYjIuLjVhY2FlYTllY2IgMTAwNjQ0CistLS0gYS9saWIvZG5zL2Ruc3NlYy5jCisrKysgYi9s aWIvZG5zL2Ruc3NlYy5jCitAQCAtMzU3LDggKzM1NywxMCBAQCBpc2NfcmVzdWx0X3QKKyBkbnNf ZG5zc2VjX3ZlcmlmeShjb25zdCBkbnNfbmFtZV90ICpuYW1lLCBkbnNfcmRhdGFzZXRfdCAqc2V0 LCBkc3Rfa2V5X3QgKmtleSwKKyAJCSAgYm9vbCBpZ25vcmV0aW1lLCB1bnNpZ25lZCBpbnQgbWF4 Yml0cywgaXNjX21lbV90ICptY3R4LAorIAkJICBkbnNfcmRhdGFfdCAqc2lncmRhdGEsIGRuc19u YW1lX3QgKndpbGQpIHsKKysJZG5zX3JkYXRhX25zZWNfdCBuc2VjOworIAlkbnNfcmRhdGFfcnJz aWdfdCBzaWc7CisgCWRuc19maXhlZG5hbWVfdCBmbmV3bmFtZTsKKysJZG5zX3JkYXRhX3QgcmRh dGEgPSBETlNfUkRBVEFfSU5JVDsKKyAJaXNjX3JlZ2lvbl90IHI7CisgCWlzY19idWZmZXJfdCBl bnZidWY7CisgCWRuc19yZGF0YV90ICpyZGF0YXM7CitAQCAtNDY0LDYgKzQ2NiwxNyBAQCBkbnNf ZG5zc2VjX3ZlcmlmeShjb25zdCBkbnNfbmFtZV90ICpuYW1lLCBkbnNfcmRhdGFzZXRfdCAqc2V0 LCBkc3Rfa2V5X3QgKmtleSwKKyAJCX0KKyAJCWJyZWFrOworIAl9CisrCS8qCisrCSAqIENoZWNr IGZvciBvdXQgb2Ygem9uZSBOU0VDIGVudHJpZXMuCisrCSAqLworKwlpZiAoc2V0LT50eXBlID09 IGRuc19yZGF0YXR5cGVfbnNlYykgeworKwkJUkVURVJSKGRuc19yZGF0YXNldF9maXJzdChzZXQp KTsKKysJCWRuc19yZGF0YXNldF9jdXJyZW50KHNldCwgJnJkYXRhKTsKKysJCVJFVEVSUihkbnNf cmRhdGFfdG9zdHJ1Y3QoJnJkYXRhLCAmbnNlYywgTlVMTCkpOworKwkJaWYgKCFkbnNfbmFtZV9p c3N1YmRvbWFpbigmbnNlYy5uZXh0LCAmc2lnLnNpZ25lcikpIHsKKysJCQlyZXR1cm4gRE5TX1Jf Tk9WQUxJRE5TRUM7CisrCQl9CisrCX0KKyAKKyBhZ2FpbjoKKyAJcmV0ID0gZHN0X2NvbnRleHRf Y3JlYXRlKGtleSwgbWN0eCwgRE5TX0xPR0NBVEVHT1JZX0ROU1NFQywgZmFsc2UsCitkaWZmIC0t Z2l0IGEvbGliL2Rucy9pbmNsdWRlL2Rucy9kbnNzZWMuaCBiL2xpYi9kbnMvaW5jbHVkZS9kbnMv ZG5zc2VjLmgKK2luZGV4IGNiOGZkOWRjMjAuLjJiZTExYjkxNDQgMTAwNjQ0CistLS0gYS9saWIv ZG5zL2luY2x1ZGUvZG5zL2Ruc3NlYy5oCisrKysgYi9saWIvZG5zL2luY2x1ZGUvZG5zL2Ruc3Nl Yy5oCitAQCAtMTUxLDYgKzE1MSw5IEBAIGRuc19kbnNzZWNfdmVyaWZ5KGNvbnN0IGRuc19uYW1l X3QgKm5hbWUsIGRuc19yZGF0YXNldF90ICpzZXQsIGRzdF9rZXlfdCAqa2V5LAorICAqCXRoaXMg cmVjb3JkLCBhcyB0aGlzIHJlcXVpcmVzIGEgcmVzb2x2ZXIgb3IgZGF0YWJhc2UuCisgICoJSWYg J2lnbm9yZXRpbWUnIGlzIHRydWUsIHRlbXBvcmFsIHZhbGlkaXR5IHdpbGwgbm90IGJlIGNoZWNr ZWQuCisgICoKKysgKglJZiAnc2V0JyBpcyBvZiB0eXBlIE5TRUMsIHRoaXMgZnVuY3Rpb24gYWxz byB2ZXJpZmllcyB0aGF0IHRoZQorKyAqCU5leHQgTmFtZSBpcyBhIHN1YmRvbWFpbiBvZiB0aGUg U2lnbmVyJ3MgTmFtZSBmcm9tICdzaWdyZGF0YScuCisrICoKKyAgKgknbWF4Yml0cycgc3BlY2lm aWVzIHRoZSBtYXhpbXVtIG51bWJlciBvZiByc2EgZXhwb25lbnQgYml0cyBhY2NlcHRlZC4KKyAg KgorICAqCVJlcXVpcmVzOgorQEAgLTE3Myw2ICsxNzYsOSBAQCBkbnNfZG5zc2VjX3ZlcmlmeShj b25zdCBkbnNfbmFtZV90ICpuYW1lLCBkbnNfcmRhdGFzZXRfdCAqc2V0LCBkc3Rfa2V5X3QgKmtl eSwKKyAgKlxsaQkJI0ROU19SX0tFWVVOQVVUSE9SSVpFRCAtIHRoZSBrZXkgY2Fubm90IHNpZ24g dGhpcyBkYXRhIChlaXRoZXIKKyAgKgkJCWl0IGlzIG5vdCBhIHpvbmUga2V5IG9yIGl0cyBmbGFn cyBwcmV2ZW50CisgICoJCQlhdXRoZW50aWNhdGlvbikKKysgKgorKyAqXGxpCQkjRE5TX1JfTk9W QUxJRE5TRUMgLSB0aGUgTlNFQyByZGF0YSBpcyBub3QgdmFsaWQKKysgKlxsaQkJI0ROU19SX0tF WVVOQVVUSE9SSVpFRCAtIHRoZSBrZXkgY2Fubm90IHNpZ24gdGhpcyBkYXRhCisgICpcbGkJCURT VF9SXyoKKyAgKi8KKyAKK2RpZmYgLS1naXQgYS9saWIvZG5zL2luY2x1ZGUvZG5zL25zZWMuaCBi L2xpYi9kbnMvaW5jbHVkZS9kbnMvbnNlYy5oCitpbmRleCA1MGRmOGU0NWYxLi4xZTcxYmYxNGU4 IDEwMDY0NAorLS0tIGEvbGliL2Rucy9pbmNsdWRlL2Rucy9uc2VjLmgKKysrKyBiL2xpYi9kbnMv aW5jbHVkZS9kbnMvbnNlYy5oCitAQCAtMTE5LDEzICsxMTksMjEgQEAgZG5zX25zZWNfbm9leGlz dG5vZGF0YShkbnNfcmRhdGF0eXBlX3QgdHlwZSwgY29uc3QgZG5zX25hbWVfdCAqbmFtZSwKKyAg Ki8KKyAKKyBib29sCistZG5zX25zZWNfcmVxdWlyZWR0eXBlc3ByZXNlbnQoZG5zX3JkYXRhc2V0 X3QgKnJkYXRhc2V0KTsKKy0vKgorLSAqIFJldHVybiB0cnVlIGlmIGFsbCB0aGUgTlNFQyByZWNv cmRzIGluIHJkYXRhc2V0IGhhdmUgYm90aAorLSAqIE5TRUMgYW5kIFJSU0lHIHByZXNlbnQuCisr ZG5zX25zZWNfaXNfbGVnYWwoZG5zX3JkYXRhc2V0X3QgKnJkYXRhc2V0LCBjb25zdCBkbnNfbmFt ZV90ICpuYW1lKTsKKysvKio8CisrICogXGJyaWVmCisrICogVmFsaWRhdGVzIGEgcmRhdGFzZXQg b2YgdHlwZSBOU0VDLgorICAqCistICogUmVxdWlyZXM6CisrICogVGhpcyBmdW5jdGlvbnMgY2hl Y2tzIGZvciB0aGUgZm9sbG93aW5nIGluIHRoZSBnaXZlbiByZGF0YXNldDoKKysgKiBcbGkgQWxs IE5TRUMgcmVjb3JkcyBoYXZlIGJvdGggTlNFQyBhbmQgUlJTSUcgcHJlc2VudAorKyAqIFxsaSBB bGwgTlNFQyBlbnRyaWVzIGFyZSB1bmRlciB0aGUgYG5hbWVgCisrICoKKysgKiBccGFyIFJlcXVp cmVzOgorICAqIFxsaQlyZGF0YXNldCB0byBiZSBhIE5TRUMgcmRhdGFzZXQuCisrICogXGxpICBg bmFtZWAgaXMgYSB2YWxpZCBkbnNfbmFtZV90CisrICoKKysgKiBccmV0dmFsIHRydWUgaWYgYWxs IHRoZSBjaGVja3MgcGFzcworKyAqIFxyZXR2YWwgZmFsc2Ugb3RoZXJ3aXNlCisgICovCisgCisg SVNDX0xBTkdfRU5EREVDTFMKK2RpZmYgLS1naXQgYS9saWIvZG5zL25zZWMuYyBiL2xpYi9kbnMv bnNlYy5jCitpbmRleCA4MGVlOGQ3ZDU4Li41YWJjY2U1ZjdmIDEwMDY0NAorLS0tIGEvbGliL2Ru cy9uc2VjLmMKKysrKyBiL2xpYi9kbnMvbnNlYy5jCitAQCAtMjEsNiArMjEsNyBAQAorICNpbmNs dWRlIDxpc2MvdXRpbC5oPgorIAorICNpbmNsdWRlIDxkbnMvZGIuaD4KKysjaW5jbHVkZSA8ZG5z L25hbWUuaD4KKyAjaW5jbHVkZSA8ZG5zL25zZWMuaD4KKyAjaW5jbHVkZSA8ZG5zL3JkYXRhLmg+ CisgI2luY2x1ZGUgPGRucy9yZGF0YWxpc3QuaD4KK0BAIC00OTcsOCArNDk4LDkgQEAgZG5zX25z ZWNfbm9leGlzdG5vZGF0YShkbnNfcmRhdGF0eXBlX3QgdHlwZSwgY29uc3QgZG5zX25hbWVfdCAq bmFtZSwKKyB9CisgCisgYm9vbAorLWRuc19uc2VjX3JlcXVpcmVkdHlwZXNwcmVzZW50KGRuc19y ZGF0YXNldF90ICpuc2Vjc2V0KSB7CistCWRuc19yZGF0YXNldF90IHJkYXRhc2V0OworK2Ruc19u c2VjX2lzX2xlZ2FsKGRuc19yZGF0YXNldF90ICpuc2Vjc2V0LCBjb25zdCBkbnNfbmFtZV90ICpu YW1lKSB7CisrCWRuc19yZGF0YXNldF90IHJkYXRhc2V0ID0gRE5TX1JEQVRBU0VUX0lOSVQ7Cisr CWRuc19yZGF0YV9uc2VjX3QgbnNlYzsKKyAJaXNjX3Jlc3VsdF90IHJlc3VsdDsKKyAJYm9vbCBm b3VuZCA9IGZhbHNlOworIAorQEAgLTUxMywxMiArNTE1LDE5IEBAIGRuc19uc2VjX3JlcXVpcmVk dHlwZXNwcmVzZW50KGRuc19yZGF0YXNldF90ICpuc2Vjc2V0KSB7CisgCXsKKyAJCWRuc19yZGF0 YV90IHJkYXRhID0gRE5TX1JEQVRBX0lOSVQ7CisgCQlkbnNfcmRhdGFzZXRfY3VycmVudCgmcmRh dGFzZXQsICZyZGF0YSk7CistCQlpZiAoIWRuc19uc2VjX3R5cGVwcmVzZW50KCZyZGF0YSwgZG5z X3JkYXRhdHlwZV9uc2VjKSB8fAorLQkJICAgICFkbnNfbnNlY190eXBlcHJlc2VudCgmcmRhdGEs IGRuc19yZGF0YXR5cGVfcnJzaWcpKQorKworKwkJLyogbXVzdCBuZXZlciBmYWlsICovCisrCQly ZXN1bHQgPSBkbnNfcmRhdGFfdG9zdHJ1Y3QoJnJkYXRhLCAmbnNlYywgTlVMTCk7CisrCQlJTlNJ U1QocmVzdWx0ID09IElTQ19SX1NVQ0NFU1MpOworKworKwkJaWYgKCFkbnNfbmFtZV9pc3N1YmRv bWFpbigmbnNlYy5uZXh0LCBuYW1lKSB8fAorKwkJICAgICFkbnNfbnNlY190eXBlcHJlc2VudCgm cmRhdGEsIGRuc19yZGF0YXR5cGVfcnJzaWcpIHx8CisrCQkgICAgIWRuc19uc2VjX3R5cGVwcmVz ZW50KCZyZGF0YSwgZG5zX3JkYXRhdHlwZV9uc2VjKSkKKyAJCXsKKyAJCQlkbnNfcmRhdGFzZXRf ZGlzYXNzb2NpYXRlKCZyZGF0YXNldCk7CisgCQkJcmV0dXJuIGZhbHNlOworIAkJfQorKworIAkJ Zm91bmQgPSB0cnVlOworIAl9CisgCWRuc19yZGF0YXNldF9kaXNhc3NvY2lhdGUoJnJkYXRhc2V0 KTsKK2RpZmYgLS1naXQgYS9saWIvZG5zL3Jlc29sdmVyLmMgYi9saWIvZG5zL3Jlc29sdmVyLmMK K2luZGV4IDA1OWNlNTNhOWUuLmVhYzY3ZjdhMTkgMTAwNjQ0CistLS0gYS9saWIvZG5zL3Jlc29s dmVyLmMKKysrKyBiL2xpYi9kbnMvcmVzb2x2ZXIuYworQEAgLTY1LDcgKzY1LDkgQEAKKyAjaW5j bHVkZSA8ZG5zL3Jvb3Rucy5oPgorICNpbmNsdWRlIDxkbnMvc3RhdHMuaD4KKyAjaW5jbHVkZSA8 ZG5zL3RzaWcuaD4KKysjaW5jbHVkZSA8ZG5zL3R5cGVzLmg+CisgI2luY2x1ZGUgPGRucy92YWxp ZGF0b3IuaD4KKysjaW5jbHVkZSA8ZG5zL3ZpZXcuaD4KKyAjaW5jbHVkZSA8ZG5zL3pvbmUuaD4K KyAKKyAvKiBEZXRhaWxlZCBsb2dnaW5nIG9mIGZjdHggYXR0YWNoL2RldGFjaCAqLworQEAgLTU2 MDMsNiArNTYwNSwzNiBAQCBmY3R4X3NldHJlc3VsdChmZXRjaGN0eF90ICpmY3R4LCBkbnNfcmRh dGFzZXRfdCAqcmRhdGFzZXQpIHsKKyAJcmV0dXJuIHJlc3VsdDsKKyB9CisgCisrc3RhdGljIGJv b2wKKytnZXRfYW5kX2NoZWNrX3NpZ25lcl9uYW1lKGRuc19uYW1lX3QgKnNpZ25lciwgZG5zX3Jk YXRhc2V0X3QgKnNpZ3JkYXRhc2V0KSB7CisrCWRuc19yZGF0YV9ycnNpZ190IHJyc2lnOworKwlp c2NfcmVzdWx0X3QgcmVzdWx0OworKwlkbnNfcmRhdGFfdCByZGF0YTsKKysKKysJaWYgKGRuc19y ZGF0YXNldF9maXJzdChzaWdyZGF0YXNldCkgIT0gSVNDX1JfU1VDQ0VTUykgeworKwkJcmV0dXJu IGZhbHNlOworKwl9CisrCisrCXJkYXRhID0gKGRuc19yZGF0YV90KUROU19SREFUQV9JTklUOwor KwlkbnNfcmRhdGFzZXRfY3VycmVudChzaWdyZGF0YXNldCwgJnJkYXRhKTsKKysJcmVzdWx0ID0g ZG5zX3JkYXRhX3Rvc3RydWN0KCZyZGF0YSwgJnJyc2lnLCBOVUxMKTsKKysJSU5TSVNUKHJlc3Vs dCA9PSBJU0NfUl9TVUNDRVNTKTsKKysJZG5zX25hbWVfY29weSgmcnJzaWcuc2lnbmVyLCBzaWdu ZXIpOworKworKwl3aGlsZSAoZG5zX3JkYXRhc2V0X25leHQoc2lncmRhdGFzZXQpID09IElTQ19S X1NVQ0NFU1MpIHsKKysJCXJkYXRhID0gKGRuc19yZGF0YV90KUROU19SREFUQV9JTklUOworKwkJ ZG5zX3JkYXRhc2V0X2N1cnJlbnQoc2lncmRhdGFzZXQsICZyZGF0YSk7CisrCQlyZXN1bHQgPSBk bnNfcmRhdGFfdG9zdHJ1Y3QoJnJkYXRhLCAmcnJzaWcsIE5VTEwpOworKwkJSU5TSVNUKHJlc3Vs dCA9PSBJU0NfUl9TVUNDRVNTKTsKKysKKysJCWlmICghZG5zX25hbWVfZXF1YWwoc2lnbmVyLCAm cnJzaWcuc2lnbmVyKSkgeworKwkJCXJldHVybiBmYWxzZTsKKysJCX0KKysJfQorKworKwlyZXR1 cm4gdHJ1ZTsKKyt9CisrCisgLyoKKyAgKiBUaGUgdmFsaWRhdG9yIGhhcyBmaW5pc2hlZC4KKyAg Ki8KK0BAIC01NjMzLDYgKzU2NjUsOCBAQCB2YWxpZGF0ZWQoaXNjX3Rhc2tfdCAqdGFzaywgaXNj X2V2ZW50X3QgKmV2ZW50KSB7CisgCWRuc19maXhlZG5hbWVfdCBmd2lsZDsKKyAJZG5zX25hbWVf dCAqd2lsZCA9IE5VTEw7CisgCWRuc19tZXNzYWdlX3QgKm1lc3NhZ2UgPSBOVUxMOworKwlkbnNf Zml4ZWRuYW1lX3QgZnNpZ25lcjsKKysJZG5zX25hbWVfdCAqc2lnbmVyID0gTlVMTDsKKyAKKyAJ VU5VU0VEKHRhc2spOyAvKiBmb3Igbm93ICovCisgCitAQCAtNjAyMSwxMCArNjA1NSwyMCBAQCBh bnN3ZXJfcmVzcG9uc2U6CisgCQkJfQorIAorIAkJCS8qCistCQkJICogRG9uJ3QgY2FjaGUgTlNF QyBpZiBtaXNzaW5nIE5TRUMgb3IgUlJTSUcgdHlwZXMuCisrCQkJICogRG9uJ3QgY2FjaGUgaWYg YWxsIHRoZSBSUlNJR3MgZG9uJ3QgaGF2ZSB0aGUgc2FtZQorKwkJCSAqIHNpZ25lci4KKysJCQkg Ki8KKysJCQlzaWduZXIgPSBkbnNfZml4ZWRuYW1lX2luaXRuYW1lKCZmc2lnbmVyKTsKKysJCQlp ZiAoIWdldF9hbmRfY2hlY2tfc2lnbmVyX25hbWUoc2lnbmVyLCBzaWdyZGF0YXNldCkpIHsKKysJ CQkJY29udGludWU7CisrCQkJfQorKworKwkJCS8qCisrCQkJICogRG9uJ3QgY2FjaGUgTlNFQyBp ZiBtaXNzaW5nIE5TRUMgb3IgUlJTSUcKKysJCQkgKiB0eXBlcy4KKyAJCQkgKi8KKyAJCQlpZiAo cmRhdGFzZXQtPnR5cGUgPT0gZG5zX3JkYXRhdHlwZV9uc2VjICYmCistCQkJICAgICFkbnNfbnNl Y19yZXF1aXJlZHR5cGVzcHJlc2VudChyZGF0YXNldCkpCisrCQkJICAgICFkbnNfbnNlY19pc19s ZWdhbChyZGF0YXNldCwgc2lnbmVyKSkKKyAJCQl7CisgCQkJCWNvbnRpbnVlOworIAkJCX0KK2Rp ZmYgLS1naXQgYS9saWIvbnMvcXVlcnkuYyBiL2xpYi9ucy9xdWVyeS5jCitpbmRleCAyYTJiYTFk YWJhLi44YmJjZDdmZjMwIDEwMDY0NAorLS0tIGEvbGliL25zL3F1ZXJ5LmMKKysrKyBiL2xpYi9u cy9xdWVyeS5jCitAQCAtMTAzNzAsMTAgKzEwMzcwLDEwIEBAIHF1ZXJ5X2NvdmVyaW5nbnNlYyhx dWVyeV9jdHhfdCAqcWN0eCkgeworIAl9CisgCisgCS8qCistCSAqIElmIE5TRUMgb3IgUlJTSUcg YXJlIG1pc3NpbmcgZnJvbSB0aGUgdHlwZSBtYXAKKy0JICogcmVqZWN0IHRoZSBOU0VDIFJSc2V0 LgorKwkgKiBDaGVjayB0aGF0IHRoZSBOU0VDIGVudHJ5IGlzIGxlZ2FsLgorKwkgKiAoTlNFQyAr IFJSU0lHIHByZXNlbnQgYW5kIHRoZSBlbnRyeSBpc24ndCBvdXQtb2Ytem9uZSkKKyAJICovCist CWlmICghZG5zX25zZWNfcmVxdWlyZWR0eXBlc3ByZXNlbnQocWN0eC0+cmRhdGFzZXQpKSB7Cisr CWlmICghZG5zX25zZWNfaXNfbGVnYWwocWN0eC0+cmRhdGFzZXQsIHNpZ25lcikpIHsKKyAJCWdv dG8gY2xlYW51cDsKKyAJfQorIAorLS0gCisyLjU1LjAKKwoKZGlmZiAtLWdpdCBhL2JpbmQuc3Bl YyBiL2JpbmQuc3BlYwppbmRleCA4MGNkYjBhLi40YmFjOTc1IDEwMDY0NAotLS0gYS9iaW5kLnNw ZWMKKysrIGIvYmluZC5zcGVjCkBAIC0xODIsNiArMTgyLDkgQEAgUGF0Y2g0NzogYmluZC05LjE4 LUNWRS0yMDI2LTEwNzIzLXRlc3QucGF0Y2gKICMgaHR0cHM6Ly9naXRsYWIuaXNjLm9yZy9pc2Mt cHJvamVjdHMvYmluZDkvY29tbWl0L2I5ZmYyYzlhMzZiYjY3OGZkMTM5M2Q0ZjkzMmIzNWE2ODgy Y2QyYTgKIFBhdGNoNDg6IGJpbmQtOS4xOC1DVkUtMjAyNi0xMzIwNC5wYXRjaAogUGF0Y2g0OTog YmluZC05LjE4LUNWRS0yMDI2LTEzMjA0LXRlc3QucGF0Y2gKKyMgaHR0cHM6Ly9naXRsYWIuaXNj Lm9yZy9pc2MtcHJvamVjdHMvYmluZDkvY29tbWl0LzM2ZjNkNTBmOWM4ZWJjOGQyNWVlMDMzZTcw N2NhNTAyZTIwYjA4M2YKK1BhdGNoNTA6IGJpbmQtOS4xOC1DVkUtMjAyNi0xMzMyMS5wYXRjaAor UGF0Y2g1MTogYmluZC05LjE4LUNWRS0yMDI2LTEzMzIxLXRlc3QucGF0Y2gKIAogJXs/c3lzdGVt ZF9vcmRlcmluZ30KICMgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0NoYW5nZXMvUlBN U3Vwb3J0Rm9yU3lzdGVtZFN5c3VzZXJzCg==