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: Jan Kratochvil To: git-commits@fedoraproject.org Subject: [rpms/gdb] fix-dup-patch: - Rebase to FSF GDB 7.2.50.20110206 (which is a 7.3 pre-release). Date: Thu, 23 Jul 2026 18:29:48 GMT Message-ID: <178483138841.1.15595260553506365165.rpms-gdb-cb641a7fa46f@fedoraproject.org> List-ID: X-Git-Repo: rpms/gdb X-Git-Branch: fix-dup-patch X-Git-Rev: cb641a7fa46fff892cbc46b66ae51802cb5828e5 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2RiCkJyYW5jaCA6 IGZpeC1kdXAtcGF0Y2gKQ29tbWl0IDogY2I2NDFhN2ZhNDZmZmY4OTJjYmM0NmI2NmFlNTE4MDJj YjU4MjhlNQpBdXRob3IgOiBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVkaGF0LmNv bT4KRGF0ZSAgIDogMjAxMS0wMi0wNlQyMjo0Njo1NyswMTowMApTdGF0cyAgOiArMTU4Ly0yMTMg aW4gNyBmaWxlKHMpClVSTCAgICA6IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMv Z2RiL2MvY2I2NDFhN2ZhNDZmZmY4OTJjYmM0NmI2NmFlNTE4MDJjYjU4MjhlNT9icmFuY2g9Zml4 LWR1cC1wYXRjaAoKTG9nOgotIFJlYmFzZSB0byBGU0YgR0RCIDcuMi41MC4yMDExMDIwNiAod2hp Y2ggaXMgYSA3LjMgcHJlLXJlbGVhc2UpLgoKLS0tCmRpZmYgLS1naXQgYS8uZ2l0aWdub3JlIGIv LmdpdGlnbm9yZQppbmRleCBkNWNkZWRlLi43Mzc0NDQ0IDEwMDY0NAotLS0gYS8uZ2l0aWdub3Jl CisrKyBiLy5naXRpZ25vcmUKQEAgLTEsMiArMSwyIEBACiAvbGlic3RkYysrLXYzLXB5dGhvbi1y MTU1OTc4LnRhci5iejIKLS9nZGItNy4yLjUwLjIwMTEwMTI1LnRhci5iejIKKy9nZGItNy4yLjUw LjIwMTEwMjA2LnRhci5iejIKCmRpZmYgLS1naXQgYS9nZGItYXJjaGVyLXBpZS1hZGRvbnMta2Vl cC1kaXNhYmxlZC5wYXRjaCBiL2dkYi1hcmNoZXItcGllLWFkZG9ucy1rZWVwLWRpc2FibGVkLnBh dGNoCmluZGV4IDc0MWY2ODQuLjExMGYwYmQgMTAwNjQ0Ci0tLSBhL2dkYi1hcmNoZXItcGllLWFk ZG9ucy1rZWVwLWRpc2FibGVkLnBhdGNoCisrKyBiL2dkYi1hcmNoZXItcGllLWFkZG9ucy1rZWVw LWRpc2FibGVkLnBhdGNoCkBAIC0xLDggKzEsOCBAQAotSW5kZXg6IGdkYi03LjIuNTAuMjAxMDEx MTYvZ2RiL2JyZWFrcG9pbnQuYworSW5kZXg6IGdkYi03LjIuNTAuMjAxMTAyMDYvZ2RiL2JyZWFr cG9pbnQuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjIuNTAuMjAxMDExMTYub3JpZy9nZGIvYnJl YWtwb2ludC5jCTIwMTAtMTEtMTYgMDc6NTM6NTguMDAwMDAwMDAwICswMTAwCi0rKysgZ2RiLTcu Mi41MC4yMDEwMTExNi9nZGIvYnJlYWtwb2ludC5jCTIwMTAtMTEtMTYgMDg6Mjg6NTMuMDAwMDAw MDAwICswMTAwCi1AQCAtMTAyNDksNiArMTAyNDksNTAgQEAgdXBkYXRlX2JyZWFrcG9pbnRfbG9j YXRpb25zIChzdHJ1Y3QgYnJlYQorLS0tIGdkYi03LjIuNTAuMjAxMTAyMDYub3JpZy9nZGIvYnJl YWtwb2ludC5jCTIwMTEtMDItMDYgMjA6Mzk6MjQuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcu Mi41MC4yMDExMDIwNi9nZGIvYnJlYWtwb2ludC5jCTIwMTEtMDItMDYgMjA6Mzk6NDQuMDAwMDAw MDAwICswMTAwCitAQCAtMTA1ODcsNiArMTA1ODcsNTAgQEAgdXBkYXRlX2JyZWFrcG9pbnRfbG9j YXRpb25zIChzdHJ1Y3QgYnJlYQogICAgdXBkYXRlX2dsb2JhbF9sb2NhdGlvbl9saXN0ICgxKTsK ICB9CiAgCkBAIC01MywyMyArNTMsMjMgQEAgSW5kZXg6IGdkYi03LjIuNTAuMjAxMDExMTYvZ2Ri L2JyZWFrcG9pbnQuYwogIC8qIFJlc2V0IGEgYnJlYWtwb2ludCBnaXZlbiBpdCdzIHN0cnVjdCBi cmVha3BvaW50ICogQklOVC4KICAgICBUaGUgdmFsdWUgd2UgcmV0dXJuIGVuZHMgdXAgYmVpbmcg dGhlIHJldHVybiB2YWx1ZSBmcm9tIGNhdGNoX2Vycm9ycy4KICAgICBVbnVzZWQgaW4gdGhpcyBj YXNlLiAgKi8KLUluZGV4OiBnZGItNy4yLjUwLjIwMTAxMTE2L2dkYi9icmVha3BvaW50LmgKK0lu ZGV4OiBnZGItNy4yLjUwLjIwMTEwMjA2L2dkYi9icmVha3BvaW50LmgKID09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t LSBnZGItNy4yLjUwLjIwMTAxMTE2Lm9yaWcvZ2RiL2JyZWFrcG9pbnQuaAkyMDEwLTExLTE2IDA3 OjUzOjU4LjAwMDAwMDAwMCArMDEwMAotKysrIGdkYi03LjIuNTAuMjAxMDExMTYvZ2RiL2JyZWFr cG9pbnQuaAkyMDEwLTExLTE2IDA4OjI5OjA2LjAwMDAwMDAwMCArMDEwMAotQEAgLTExMjgsNCAr MTEyOCw3IEBAIGV4dGVybiB2b2lkIGVuZF9yYnJlYWtfYnJlYWtwb2ludHMgKHZvaWQKLSBleHRl cm4gc3RydWN0IGJyZWFrcG9pbnQgKml0ZXJhdGVfb3Zlcl9icmVha3BvaW50cyAoaW50ICgqKSAo c3RydWN0IGJyZWFrcG9pbnQgKiwKLSAJCQkJCQkJICAgICB2b2lkICopLCB2b2lkICopOworLS0t IGdkYi03LjIuNTAuMjAxMTAyMDYub3JpZy9nZGIvYnJlYWtwb2ludC5oCTIwMTEtMDItMDYgMjA6 Mzk6MjQuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuMi41MC4yMDExMDIwNi9nZGIvYnJlYWtw b2ludC5oCTIwMTEtMDItMDYgMjA6NDA6MDAuMDAwMDAwMDAwICswMTAwCitAQCAtMTE5NCw0ICsx MTk0LDcgQEAgZXh0ZXJuIHN0cnVjdCBicmVha3BvaW50ICppdGVyYXRlX292ZXJfYgorIAorIGV4 dGVybiBpbnQgdXNlcl9icmVha3BvaW50X3AgKHN0cnVjdCBicmVha3BvaW50ICopOwogIAogK2V4 dGVybiB2b2lkIGJyZWFrcG9pbnRzX3JlbG9jYXRlIChzdHJ1Y3Qgb2JqZmlsZSAqb2JqZmlsZSwK ICsJCQkJICBzdHJ1Y3Qgc2VjdGlvbl9vZmZzZXRzICpkZWx0YSk7CiArCiAgI2VuZGlmIC8qICFk ZWZpbmVkIChCUkVBS1BPSU5UX0gpICovCi1JbmRleDogZ2RiLTcuMi41MC4yMDEwMTExNi9nZGIv b2JqZmlsZXMuYworSW5kZXg6IGdkYi03LjIuNTAuMjAxMTAyMDYvZ2RiL29iamZpbGVzLmMKID09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLS0tLSBnZGItNy4yLjUwLjIwMTAxMTE2Lm9yaWcvZ2RiL29iamZpbGVzLmMJMjAx MC0xMC0xNyAxOTo0NToxNi4wMDAwMDAwMDAgKzAyMDAKLSsrKyBnZGItNy4yLjUwLjIwMTAxMTE2 L2dkYi9vYmpmaWxlcy5jCTIwMTAtMTEtMTYgMDg6Mjg6NTMuMDAwMDAwMDAwICswMTAwCi1AQCAt ODQ0LDYgKzg0NCwxMSBAQCBvYmpmaWxlX3JlbG9jYXRlMSAoc3RydWN0IG9iamZpbGUgKm9iamZp CistLS0gZ2RiLTcuMi41MC4yMDExMDIwNi5vcmlnL2dkYi9vYmpmaWxlcy5jCTIwMTEtMDEtMTAg MjE6Mzg6NDkuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuMi41MC4yMDExMDIwNi9nZGIvb2Jq ZmlsZXMuYwkyMDExLTAyLTA2IDIwOjM5OjQ0LjAwMDAwMDAwMCArMDEwMAorQEAgLTg0Niw2ICs4 NDYsMTEgQEAgb2JqZmlsZV9yZWxvY2F0ZTEgKHN0cnVjdCBvYmpmaWxlICpvYmpmaQogIAkJCQlv Ympfc2VjdGlvbl9hZGRyIChzKSk7CiAgICAgIH0KICAKCmRpZmYgLS1naXQgYS9nZGItYXJjaGVy LnBhdGNoIGIvZ2RiLWFyY2hlci5wYXRjaAppbmRleCAxZDg1MDMwLi42MDFkNWIyIDEwMDY0NAot LS0gYS9nZGItYXJjaGVyLnBhdGNoCisrKyBiL2dkYi1hcmNoZXIucGF0Y2gKQEAgLTIsNyArMiw3 IEBAIGh0dHA6Ly9zb3VyY2V3YXJlLm9yZy9nZGIvd2lraS9Qcm9qZWN0QXJjaGVyCiBodHRwOi8v c291cmNld2FyZS5vcmcvZ2RiL3dpa2kvQXJjaGVyQnJhbmNoTWFuYWdlbWVudAogCiBHSVQgc25h cHNob3Q6Ci1jb21taXQgYjNmYTUxZTMwNjM3OTg5Y2E0YThlZTQ3NjNiYTkyMTMyMmExYmQwZAor Y29tbWl0IDhkMWZjZTg1ZDM1MWVjN2ZlYzY0ZWQzOTI5MzJmZTU5MTQ4YjgzZmMKIAogYnJhbmNo IGBhcmNoZXInIC0gdGhlIG1lcmdlIG9mIGJyYW5jaGVzOgogYXJjaGVyLWphbmtyYXRvY2h2aWwt dmxhCkBAIC0xNCwxMCArMTQsMTAgQEAgYXJjaGVyLXRyb21leS1weXRob24KIAogCiBkaWZmIC0t Z2l0IGEvZ2RiL01ha2VmaWxlLmluIGIvZ2RiL01ha2VmaWxlLmluCi1pbmRleCAzNmNjNzM0Li45 NzdmZTBjIDEwMDY0NAoraW5kZXggNjY1MjFhMi4uNjZhNmZjMiAxMDA2NDQKIC0tLSBhL2dkYi9N YWtlZmlsZS5pbgogKysrIGIvZ2RiL01ha2VmaWxlLmluCi1AQCAtNzgzLDcgKzc4Myw4IEBAIGFu bm90YXRlLmggc2ltLXJlZ25vLmggZGljdGlvbmFyeS5oIGRmcC5oIG1haW4uaCBmcmFtZS11bndp bmQuaAlcCitAQCAtODA3LDcgKzgwNyw4IEBAIGFubm90YXRlLmggc2ltLXJlZ25vLmggZGljdGlv bmFyeS5oIGRmcC5oIG1haW4uaCBmcmFtZS11bndpbmQuaAlcCiAgcmVtb3RlLWZpbGVpby5oIGkz ODYtbGludXgtdGRlcC5oIHZheC10ZGVwLmggb2JqYy1sYW5nLmggXAogIHNlbnRpbmVsLWZyYW1l LmggYmNhY2hlLmggc3ltZmlsZS5oIHdpbmRvd3MtdGRlcC5oIGxpbnV4LXRkZXAuaCBcCiAgZ2Ri X3VzbGVlcC5oIGppdC5oIHhtbC1zeXNjYWxsLmggYWRhLW9wZXJhdG9yLmluYyBtaWNyb2JsYXpl LXRkZXAuaCBcCkBAIC0yNyw3ICsyNyw3IEBAIGluZGV4IDM2Y2M3MzQuLjk3N2ZlMGMgMTAwNjQ0 CiAgCiAgIyBIZWFkZXIgZmlsZXMgdGhhdCBhbHJlYWR5IGhhdmUgc3JjZGlyIGluIHRoZW0sIG9y IHdoaWNoIGFyZSBpbiBvYmpkaXIuCiAgCi1AQCAtMTI4OSw2ICsxMjkwLDEyIEBAIHN0YW1wLWg6 ICQoc3JjZGlyKS9jb25maWcuaW4gY29uZmlnLnN0YXR1cworQEAgLTEzMTMsNiArMTMxNCwxMiBA QCBzdGFtcC1oOiAkKHNyY2RpcikvY29uZmlnLmluIGNvbmZpZy5zdGF0dXMKICAJICBDT05GSUdf TElOS1M9IFwKICAJICAkKFNIRUxMKSBjb25maWcuc3RhdHVzCiAgCkBAIC0zOTIsNyArMzkyLDcg QEAgaW5kZXggYjlhYWY1NC4uZTFmMzI0MiAxMDA2NDQKICAKICAvKiBSZXR1cm4gdGhlIGlubmVy bW9zdCBzdGFjayBmcmFtZSBleGVjdXRpbmcgaW5zaWRlIG9mIEJMT0NLLCBvciBOVUxMCiBkaWZm IC0tZ2l0IGEvZ2RiL2JyZWFrcG9pbnQuYyBiL2dkYi9icmVha3BvaW50LmMKLWluZGV4IDhkMDY5 MmIuLjM3MzgzMGYgMTAwNjQ0CitpbmRleCA2NTZkZWRkLi4yYTVmNzYxIDEwMDY0NAogLS0tIGEv Z2RiL2JyZWFrcG9pbnQuYwogKysrIGIvZ2RiL2JyZWFrcG9pbnQuYwogQEAgLTYyLDYgKzYyLDcg QEAKQEAgLTQyNCw3ICs0MjQsNyBAQCBpbmRleCA4ZDA2OTJiLi4zNzM4MzBmIDEwMDY0NAogIC8q IEFzc3VtaW5nIHdlJ3JlIGNyZWF0aW5nIGEgc3RhdGljIHRyYWNlcG9pbnQsIGRvZXMgUyBsb29r IGxpa2UgYQogICAgIHN0YXRpYyB0cmFjZXBvaW50IG1hcmtlciBzcGVjICgiLW0gTUFSS0VSX0lE Iik/ICAqLwogICNkZWZpbmUgaXNfbWFya2VyX3NwZWMocykJCQkJCQlcCi1AQCAtMTI2OSw2ICsx Mjc3LDIyIEBAIHdhdGNocG9pbnRfaW5fdGhyZWFkX3Njb3BlIChzdHJ1Y3QgYnJlYWtwb2ludCAq YikKK0BAIC0xMzA5LDYgKzEzMTcsMjIgQEAgd2F0Y2hwb2ludF9pbl90aHJlYWRfc2NvcGUgKHN0 cnVjdCBicmVha3BvaW50ICpiKQogIAkgICAgICAmJiAhaXNfZXhlY3V0aW5nIChpbmZlcmlvcl9w dGlkKSkpOwogIH0KICAKQEAgLTQ0Nyw3ICs0NDcsNyBAQCBpbmRleCA4ZDA2OTJiLi4zNzM4MzBm IDEwMDY0NAogIC8qIEFzc3VtaW5nIHRoYXQgQiBpcyBhIHdhdGNocG9pbnQ6CiAgICAgLSBSZXBh cnNlIHdhdGNocG9pbnQgZXhwcmVzc2lvbiwgaWYgUkVQQVJTRSBpcyBub24temVybwogICAgIC0g RXZhbHVhdGUgZXhwcmVzc2lvbiBhbmQgc3RvcmUgdGhlIHJlc3VsdCBpbiBCLT52YWwKLUBAIC0x MzI4LDEyICsxMzUyLDE3IEBAIHVwZGF0ZV93YXRjaHBvaW50IChzdHJ1Y3QgYnJlYWtwb2ludCAq YiwgaW50IHJlcGFyc2UpCitAQCAtMTM2OCwxMiArMTM5MiwxNyBAQCB1cGRhdGVfd2F0Y2hwb2lu dCAoc3RydWN0IGJyZWFrcG9pbnQgKmIsIGludCByZXBhcnNlKQogICAgc3RydWN0IGZyYW1lX2lk IHNhdmVkX2ZyYW1lX2lkOwogICAgaW50IGZyYW1lX3NhdmVkOwogIApAQCAtNDYyLDEwICs0NjIs MTAgQEAgaW5kZXggOGQwNjkyYi4uMzczODMwZiAxMDA2NDQKICsgIGlmIChiLT5wc3BhY2UgIT0g Y3VycmVudF9wcm9ncmFtX3NwYWNlKQogKyAgICByZXR1cm47CiArCi0gICAvKiBXZSBkb24ndCBm cmVlIGxvY2F0aW9ucy4gIFRoZXkgYXJlIHN0b3JlZCBpbiBicF9sb2NhdGlvbiBhcnJheQotICAg ICAgYW5kIHVwZGF0ZV9nbG9iYWxfbG9jYXRpb25zIHdpbGwgZXZlbnR1YWxseSBkZWxldGUgdGhl bSBhbmQKKyAgIC8qIFdlIGRvbid0IGZyZWUgbG9jYXRpb25zLiAgVGhleSBhcmUgc3RvcmVkIGlu IHRoZSBicF9sb2NhdGlvbiBhcnJheQorICAgICAgYW5kIHVwZGF0ZV9nbG9iYWxfbG9jYXRpb25f bGlzdCB3aWxsIGV2ZW50dWFsbHkgZGVsZXRlIHRoZW0gYW5kCiAgICAgICByZW1vdmUgYnJlYWtw b2ludHMgaWYgbmVlZGVkLiAgKi8KLUBAIC0xNTU1LDEzICsxNTg0LDcgQEAgdXBkYXRlX3dhdGNo cG9pbnQgKHN0cnVjdCBicmVha3BvaW50ICpiLCBpbnQgcmVwYXJzZSkKK0BAIC0xNTk1LDEzICsx NjI0LDcgQEAgdXBkYXRlX3dhdGNocG9pbnQgKHN0cnVjdCBicmVha3BvaW50ICpiLCBpbnQgcmVw YXJzZSkKICBXYXRjaHBvaW50ICVkIGRlbGV0ZWQgYmVjYXVzZSB0aGUgcHJvZ3JhbSBoYXMgbGVm dCB0aGUgYmxvY2tcblwKICBpbiB3aGljaCBpdHMgZXhwcmVzc2lvbiBpcyB2YWxpZC5cbiIpLAog IAkJICAgICAgIGItPm51bWJlcik7CkBAIC00ODAsNyArNDgwLDcgQEAgaW5kZXggOGQwNjkyYi4u MzczODMwZiAxMDA2NDQKICAgICAgfQogIAogICAgLyogUmVzdG9yZSB0aGUgc2VsZWN0ZWQgZnJh bWUuICAqLwotQEAgLTE5NTIsNiArMTk3NSw3IEBAIGluc2VydF9icmVha3BvaW50X2xvY2F0aW9u cyAodm9pZCkKK0BAIC0xOTkyLDYgKzIwMTUsNyBAQCBpbnNlcnRfYnJlYWtwb2ludF9sb2NhdGlv bnMgKHZvaWQpCiAgICBpbnQgdmFsID0gMDsKICAgIGludCBkaXNhYmxlZF9icmVha3MgPSAwOwog ICAgaW50IGh3X2JyZWFrcG9pbnRfZXJyb3IgPSAwOwpAQCAtNDg4LDcgKzQ4OCw3IEBAIGluZGV4 IDhkMDY5MmIuLjM3MzgzMGYgMTAwNjQ0CiAgCiAgICBzdHJ1Y3QgdWlfZmlsZSAqdG1wX2Vycm9y X3N0cmVhbSA9IG1lbV9maWxlb3BlbiAoKTsKICAgIHN0cnVjdCBjbGVhbnVwICpjbGVhbnVwcyA9 IG1ha2VfY2xlYW51cF91aV9maWxlX2RlbGV0ZSAodG1wX2Vycm9yX3N0cmVhbSk7Ci1AQCAtMTk3 OSw5ICsyMDAzLDEzIEBAIGluc2VydF9icmVha3BvaW50X2xvY2F0aW9ucyAodm9pZCkKK0BAIC0y MDE5LDkgKzIwNDMsMTMgQEAgaW5zZXJ0X2JyZWFrcG9pbnRfbG9jYXRpb25zICh2b2lkKQogICAg ICAgIC8qIEZvciB0YXJnZXRzIHRoYXQgc3VwcG9ydCBnbG9iYWwgYnJlYWtwb2ludHMsIHRoZXJl J3Mgbm8gbmVlZAogIAkgdG8gc2VsZWN0IGFuIGluZmVyaW9yIHRvIGluc2VydCBicmVha3BvaW50 IHRvLiAgSW4gZmFjdCwgZXZlbgogIAkgaWYgd2UgYXJlbid0IGF0dGFjaGVkIHRvIGFueSBwcm9j ZXNzIHlldCwgd2Ugc2hvdWxkIHN0aWxsCkBAIC01MDQsNyArNTA0LDcgQEAgaW5kZXggOGQwNjky Yi4uMzczODMwZiAxMDA2NDQKICAJY29udGludWU7CiAgCiAgICAgICAgdmFsID0gaW5zZXJ0X2Jw X2xvY2F0aW9uIChibCwgdG1wX2Vycm9yX3N0cmVhbSwgJmRpc2FibGVkX2JyZWFrcywKLUBAIC0y MDA1LDEzICsyMDMzLDE5IEBAIGluc2VydF9icmVha3BvaW50X2xvY2F0aW9ucyAodm9pZCkKK0BA IC0yMDQ1LDEzICsyMDczLDE5IEBAIGluc2VydF9icmVha3BvaW50X2xvY2F0aW9ucyAodm9pZCkK ICAKICAgICAgICBpZiAoYnB0LT5kaXNwb3NpdGlvbiA9PSBkaXNwX2RlbF9hdF9uZXh0X3N0b3Ap CiAgCWNvbnRpbnVlOwpAQCAtNTMwLDcgKzUzMCw3IEBAIGluZGV4IDhkMDY5MmIuLjM3MzgzMGYg MTAwNjQ0CiAgICAgICAgaWYgKHNvbWVfZmFpbGVkKQogIAl7CiAgCSAgZm9yIChsb2MgPSBicHQt PmxvYzsgbG9jOyBsb2MgPSBsb2MtPm5leHQpCi1AQCAtMzQ2MSw2ICszNDk1LDggQEAgcHJpbnRf aXRfdHlwaWNhbCAoYnBzdGF0IGJzKQorQEAgLTM1MDEsNiArMzUzNSw4IEBAIHByaW50X2l0X3R5 cGljYWwgKGJwc3RhdCBicykKICAgICAgY2FzZSBicF90cmFjZXBvaW50OgogICAgICBjYXNlIGJw X2Zhc3RfdHJhY2Vwb2ludDoKICAgICAgY2FzZSBicF9qaXRfZXZlbnQ6CkBAIC01MzksNyArNTM5 LDcgQEAgaW5kZXggOGQwNjkyYi4uMzczODMwZiAxMDA2NDQKICAgICAgZGVmYXVsdDoKICAgICAg ICByZXN1bHQgPSBQUklOVF9VTktOT1dOOwogICAgICAgIGJyZWFrOwotQEAgLTM2ODIsNiArMzcx OCw4IEBAIHdhdGNocG9pbnRfY2hlY2sgKHZvaWQgKnApCitAQCAtMzcyMiw2ICszNzU4LDggQEAg d2F0Y2hwb2ludF9jaGVjayAodm9pZCAqcCkKICAgIGdkYl9hc3NlcnQgKGJzLT5icmVha3BvaW50 X2F0ICE9IE5VTEwpOwogICAgYiA9IGJzLT5icmVha3BvaW50X2F0OwogIApAQCAtNTQ4LDcgKzU0 OCw3IEBAIGluZGV4IDhkMDY5MmIuLjM3MzgzMGYgMTAwNjQ0CiAgICAvKiBJZiB0aGlzIGlzIGEg bG9jYWwgd2F0Y2hwb2ludCwgd2Ugb25seSB3YW50IHRvIGNoZWNrIGlmIHRoZQogICAgICAgd2F0 Y2hwb2ludCBmcmFtZSBpcyBpbiBzY29wZSBpZiB0aGUgY3VycmVudCB0aHJlYWQgaXMgdGhlIHRo cmVhZAogICAgICAgdGhhdCB3YXMgdXNlZCB0byBjcmVhdGUgdGhlIHdhdGNocG9pbnQuICAqLwot QEAgLTM3OTEsMTMgKzM4MjksNyBAQCB3YXRjaHBvaW50X2NoZWNrICh2b2lkICpwKQorQEAgLTM4 MzEsMTMgKzM4NjksNyBAQCB3YXRjaHBvaW50X2NoZWNrICh2b2lkICpwKQogIAkJICAgIiBkZWxl dGVkIGJlY2F1c2UgdGhlIHByb2dyYW0gaGFzIGxlZnQgdGhlIGJsb2NrIGluXG5cCiAgd2hpY2gg aXRzIGV4cHJlc3Npb24gaXMgdmFsaWQuXG4iKTsgICAgIAogIApAQCAtNTYzLDcgKzU2Myw3IEBA IGluZGV4IDhkMDY5MmIuLjM3MzgzMGYgMTAwNjQ0CiAgCiAgICAgICAgcmV0dXJuIFdQX0RFTEVU RUQ7CiAgICAgIH0KLUBAIC00MDAyLDkgKzQwMzQsNyBAQCBicHN0YXRfY2hlY2tfd2F0Y2hwb2lu dCAoYnBzdGF0IGJzKQorQEAgLTQwNDIsOSArNDA3NCw3IEBAIGJwc3RhdF9jaGVja193YXRjaHBv aW50IChicHN0YXQgYnMpCiAgCSAgICBjYXNlIDA6CiAgCSAgICAgIC8qIEVycm9yIGZyb20gY2F0 Y2hfZXJyb3JzLiAgKi8KICAJICAgICAgcHJpbnRmX2ZpbHRlcmVkIChfKCJXYXRjaHBvaW50ICVk IGRlbGV0ZWQuXG4iKSwgYi0+bnVtYmVyKTsKQEAgLTU3NCw3ICs1NzQsNyBAQCBpbmRleCA4ZDA2 OTJiLi4zNzM4MzBmIDEwMDY0NAogIAkgICAgICAvKiBXZSd2ZSBhbHJlYWR5IHByaW50ZWQgd2hh dCBuZWVkcyB0byBiZSBwcmludGVkLiAgKi8KICAJICAgICAgYnMtPnByaW50X2l0ID0gcHJpbnRf aXRfZG9uZTsKICAJICAgICAgYnJlYWs7Ci1AQCAtNDIxMCw3ICs0MjQwLDcgQEAgYnBzdGF0X3N0 b3Bfc3RhdHVzIChzdHJ1Y3QgYWRkcmVzc19zcGFjZSAqYXNwYWNlLAorQEAgLTQyNTAsNyArNDI4 MCw3IEBAIGJwc3RhdF9zdG9wX3N0YXR1cyAoc3RydWN0IGFkZHJlc3Nfc3BhY2UgKmFzcGFjZSwK ICAJICAgICB3YXRjaHBvaW50IGFzIHRyaWdnZXJlZCBzbyB0aGF0IHdlIHdpbGwgaGFuZGxlIHRo ZQogIAkgICAgIG91dC1vZi1zY29wZSBldmVudC4gIFdlJ2xsIGdldCB0byB0aGUgd2F0Y2hwb2lu dCBuZXh0CiAgCSAgICAgaXRlcmF0aW9uLiAgKi8KQEAgLTU4Myw3ICs1ODMsNyBAQCBpbmRleCA4 ZDA2OTJiLi4zNzM4MzBmIDEwMDY0NAogIAkgICAgYi0+cmVsYXRlZF9icmVha3BvaW50LT53YXRj aHBvaW50X3RyaWdnZXJlZCA9IHdhdGNoX3RyaWdnZXJlZF95ZXM7CiAgCX0KICAgICAgfQotQEAg LTQzMzIsNyArNDM2Miw3IEBAIGhhbmRsZV9qaXRfZXZlbnQgKHZvaWQpCitAQCAtNDM3Miw3ICs0 NDAyLDcgQEAgaGFuZGxlX2ppdF9ldmVudCAodm9pZCkKICAvKiBEZWNpZGUgd2hhdCBpbmZydW4g bmVlZHMgdG8gZG8gd2l0aCB0aGlzIGJwc3RhdC4gICovCiAgCiAgc3RydWN0IGJwc3RhdF93aGF0 CkBAIC01OTIsNyArNTkyLDcgQEAgaW5kZXggOGQwNjkyYi4uMzczODMwZiAxMDA2NDQKICB7CiAg ICBzdHJ1Y3QgYnBzdGF0X3doYXQgcmV0dmFsOwogICAgLyogV2UgbmVlZCB0byBkZWZlciBjYWxs aW5nIGBzb2xpYl9hZGQnLCBhcyBhZGRpbmcgbmV3IHN5bWJvbHMKLUBAIC00MzQwLDEyICs0Mzcw LDEzIEBAIGJwc3RhdF93aGF0IChicHN0YXQgYnMpCitAQCAtNDM4MCwxMiArNDQxMCwxMyBAQCBi cHN0YXRfd2hhdCAoYnBzdGF0IGJzKQogICAgICAgYW5kIGhlbmNlIG1heSBjbGVhciB1bnByb2Nl c3NlZCBlbnRyaWVzIGluIHRoZSBCUyBjaGFpbi4gICovCiAgICBpbnQgc2hsaWJfZXZlbnQgPSAw OwogICAgaW50IGppdF9ldmVudCA9IDA7CkBAIC02MDcsNyArNjA3LDcgQEAgaW5kZXggOGQwNjky Yi4uMzczODMwZiAxMDA2NDQKICAgICAgewogICAgICAgIC8qIEV4dHJhY3QgdGhpcyBCUydzIGFj dGlvbi4gIEFmdGVyIHByb2Nlc3NpbmcgZWFjaCBCUywgd2UgY2hlY2sKICAJIGlmIGl0cyBhY3Rp b24gb3ZlcnJpZGVzIGFsbCB3ZSd2ZSBzZWVtIHNvIGZhci4gICovCi1AQCAtNDQ3NSw2ICs0NTA2 LDIwIEBAIGJwc3RhdF93aGF0IChicHN0YXQgYnMpCitAQCAtNDUxNSw2ICs0NTQ2LDIwIEBAIGJw c3RhdF93aGF0IChicHN0YXQgYnMpCiAgCSAgICAgb3V0IGFscmVhZHkuICAqLwogIAkgIGludGVy bmFsX2Vycm9yIChfX0ZJTEVfXywgX19MSU5FX18sCiAgCQkJICBfKCJicHN0YXRfd2hhdDogdHJh Y2Vwb2ludCBlbmNvdW50ZXJlZCIpKTsKQEAgLTYyOCw3ICs2MjgsNyBAQCBpbmRleCA4ZDA2OTJi Li4zNzM4MzBmIDEwMDY0NAogIAlkZWZhdWx0OgogIAkgIGludGVybmFsX2Vycm9yIChfX0ZJTEVf XywgX19MSU5FX18sCiAgCQkJICBfKCJicHN0YXRfd2hhdDogdW5oYW5kbGVkIGJwdHlwZSAlZCIp LCAoaW50KSBicHR5cGUpOwotQEAgLTQ1MTIsNiArNDU1NywyMSBAQCBicHN0YXRfd2hhdCAoYnBz dGF0IGJzKQorQEAgLTQ1NTIsNiArNDU5NywyMSBAQCBicHN0YXRfd2hhdCAoYnBzdGF0IGJzKQog ICAgICAgIGhhbmRsZV9qaXRfZXZlbnQgKCk7CiAgICAgIH0KICAKQEAgLTY1MCw3ICs2NTAsNyBA QCBpbmRleCA4ZDA2OTJiLi4zNzM4MzBmIDEwMDY0NAogICAgcmV0dXJuIHJldHZhbDsKICB9CiAg Ci1AQCAtNDYzMyw2ICs0NjkzLDggQEAgYnB0eXBlX3N0cmluZyAoZW51bSBicHR5cGUgdHlwZSkK K0BAIC00NjczLDYgKzQ3MzMsOCBAQCBicHR5cGVfc3RyaW5nIChlbnVtIGJwdHlwZSB0eXBlKQog ICAgICB7YnBfZmFzdF90cmFjZXBvaW50LCAiZmFzdCB0cmFjZXBvaW50In0sCiAgICAgIHticF9z dGF0aWNfdHJhY2Vwb2ludCwgInN0YXRpYyB0cmFjZXBvaW50In0sCiAgICAgIHticF9qaXRfZXZl bnQsICJqaXQgZXZlbnRzIn0sCkBAIC02NTksNyArNjU5LDcgQEAgaW5kZXggOGQwNjkyYi4uMzcz ODMwZiAxMDA2NDQKICAgIH07CiAgCiAgICBpZiAoKChpbnQpIHR5cGUgPj0gKHNpemVvZiAoYnB0 eXBlcykgLyBzaXplb2YgKGJwdHlwZXNbMF0pKSkKLUBAIC00NzgwLDYgKzQ4NDIsOCBAQCBwcmlu dF9vbmVfYnJlYWtwb2ludF9sb2NhdGlvbiAoc3RydWN0IGJyZWFrcG9pbnQgKmIsCitAQCAtNDgy MCw2ICs0ODgyLDggQEAgcHJpbnRfb25lX2JyZWFrcG9pbnRfbG9jYXRpb24gKHN0cnVjdCBicmVh a3BvaW50ICpiLAogICAgICAgIGNhc2UgYnBfZmFzdF90cmFjZXBvaW50OgogICAgICAgIGNhc2Ug YnBfc3RhdGljX3RyYWNlcG9pbnQ6CiAgICAgICAgY2FzZSBicF9qaXRfZXZlbnQ6CkBAIC02Njgs NyArNjY4LDcgQEAgaW5kZXggOGQwNjkyYi4uMzczODMwZiAxMDA2NDQKICAJaWYgKG9wdHMuYWRk cmVzc3ByaW50KQogIAkgIHsKICAJICAgIGFubm90YXRlX2ZpZWxkICg0KTsKLUBAIC01MDYxLDcg KzUxMjUsOCBAQCB1c2VyX3NldHRhYmxlX2JyZWFrcG9pbnQgKGNvbnN0IHN0cnVjdCBicmVha3Bv aW50ICpiKQorQEAgLTUxMDEsNyArNTE2NSw4IEBAIHVzZXJfc2V0dGFibGVfYnJlYWtwb2ludCAo Y29uc3Qgc3RydWN0IGJyZWFrcG9pbnQgKmIpCiAgCSAgfHwgYi0+dHlwZSA9PSBicF9jYXRjaHBv aW50CiAgCSAgfHwgYi0+dHlwZSA9PSBicF9oYXJkd2FyZV9icmVha3BvaW50CiAgCSAgfHwgaXNf dHJhY2Vwb2ludCAoYikKQEAgLTY3Nyw4ICs2NzcsOCBAQCBpbmRleCA4ZDA2OTJiLi4zNzM4MzBm IDEwMDY0NAogKwkgIHx8IGItPnR5cGUgPT0gYnBfZ251X2lmdW5jX3Jlc29sdmVyKTsKICB9CiAg Ci0gLyogUHJpbnQgaW5mb3JtYXRpb24gb24gdXNlciBzZXR0YWJsZSBicmVha3BvaW50ICh3YXRj aHBvaW50LCBldGMpCi1AQCAtNTU0Myw2ICs1NjA4LDggQEAgYWxsb2NhdGVfYnBfbG9jYXRpb24g KHN0cnVjdCBicmVha3BvaW50ICpicHQpCisgLyogUmV0dXJuIHRydWUgaWYgdGhpcyBicmVha3Bv aW50IHdhcyBzZXQgYnkgdGhlIHVzZXIsIGZhbHNlIGlmIGl0IGlzCitAQCAtNTU5MCw2ICs1NjU1 LDggQEAgYWxsb2NhdGVfYnBfbG9jYXRpb24gKHN0cnVjdCBicmVha3BvaW50ICpicHQpCiAgICAg IGNhc2UgYnBfbG9uZ2ptcF9tYXN0ZXI6CiAgICAgIGNhc2UgYnBfc3RkX3Rlcm1pbmF0ZV9tYXN0 ZXI6CiAgICAgIGNhc2UgYnBfZXhjZXB0aW9uX21hc3RlcjoKQEAgLTY4Nyw3ICs2ODcsNyBAQCBp bmRleCA4ZDA2OTJiLi4zNzM4MzBmIDEwMDY0NAogICAgICAgIGxvYy0+bG9jX3R5cGUgPSBicF9s b2Nfc29mdHdhcmVfYnJlYWtwb2ludDsKICAgICAgICBicmVhazsKICAgICAgY2FzZSBicF9oYXJk d2FyZV9icmVha3BvaW50OgotQEAgLTU2MzIsNiArNTY5OSw3IEBAIHNldF9yYXdfYnJlYWtwb2lu dF93aXRob3V0X2xvY2F0aW9uIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwKK0BAIC01Njc5LDYg KzU3NDYsNyBAQCBzZXRfcmF3X2JyZWFrcG9pbnRfd2l0aG91dF9sb2NhdGlvbiAoc3RydWN0IGdk YmFyY2ggKmdkYmFyY2gsCiAgICBiLT5vcHMgPSBOVUxMOwogICAgYi0+Y29uZGl0aW9uX25vdF9w YXJzZWQgPSAwOwogICAgYi0+cHlfYnBfb2JqZWN0ID0gTlVMTDsKQEAgLTY5NSw3ICs2OTUsNyBA QCBpbmRleCA4ZDA2OTJiLi4zNzM4MzBmIDEwMDY0NAogIAogICAgLyogQWRkIHRoaXMgYnJlYWtw b2ludCB0byB0aGUgZW5kIG9mIHRoZSBjaGFpbiBzbyB0aGF0IGEgbGlzdCBvZgogICAgICAgYnJl YWtwb2ludHMgd2lsbCBjb21lIG91dCBpbiBvcmRlciBvZiBpbmNyZWFzaW5nIG51bWJlcnMuICAq LwotQEAgLTU2NTAsNyArNTcxOCw3IEBAIHNldF9yYXdfYnJlYWtwb2ludF93aXRob3V0X2xvY2F0 aW9uIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwKK0BAIC01Njk3LDcgKzU3NjUsNyBAQCBzZXRf cmF3X2JyZWFrcG9pbnRfd2l0aG91dF9sb2NhdGlvbiAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gs CiAgCiAgLyogSW5pdGlhbGl6ZSBsb2MtPmZ1bmN0aW9uX25hbWUuICAqLwogIHN0YXRpYyB2b2lk CkBAIC03MDQsNyArNzA0LDcgQEAgaW5kZXggOGQwNjkyYi4uMzczODMwZiAxMDA2NDQKICB7CiAg ICBnZGJfYXNzZXJ0IChsb2MtPm93bmVyICE9IE5VTEwpOwogIAotQEAgLTU2NTgsOCArNTcyNiwy OSBAQCBzZXRfYnJlYWtwb2ludF9sb2NhdGlvbl9mdW5jdGlvbiAoc3RydWN0IGJwX2xvY2F0aW9u ICpsb2MpCitAQCAtNTcwNSw4ICs1NzczLDI5IEBAIHNldF9icmVha3BvaW50X2xvY2F0aW9uX2Z1 bmN0aW9uIChzdHJ1Y3QgYnBfbG9jYXRpb24gKmxvYykKICAgICAgICB8fCBsb2MtPm93bmVyLT50 eXBlID09IGJwX2hhcmR3YXJlX2JyZWFrcG9pbnQKICAgICAgICB8fCBpc190cmFjZXBvaW50IChs b2MtPm93bmVyKSkKICAgICAgewpAQCAtNzM2LDcgKzczNiw3IEBAIGluZGV4IDhkMDY5MmIuLjM3 MzgzMGYgMTAwNjQ0CiAgICAgICAgaWYgKGxvYy0+ZnVuY3Rpb25fbmFtZSkKICAJbG9jLT5mdW5j dGlvbl9uYW1lID0geHN0cmR1cCAobG9jLT5mdW5jdGlvbl9uYW1lKTsKICAgICAgfQotQEAgLTU3 MzQsNyArNTgyMyw4IEBAIHNldF9yYXdfYnJlYWtwb2ludCAoc3RydWN0IGdkYmFyY2ggKmdkYmFy Y2gsCitAQCAtNTc4MSw3ICs1ODcwLDggQEAgc2V0X3Jhd19icmVha3BvaW50IChzdHJ1Y3QgZ2Ri YXJjaCAqZ2RiYXJjaCwKICAgIGItPmxvYy0+c2VjdGlvbiA9IHNhbC5zZWN0aW9uOwogICAgYi0+ bGluZV9udW1iZXIgPSBzYWwubGluZTsKICAKQEAgLTc0Niw3ICs3NDYsNyBAQCBpbmRleCA4ZDA2 OTJiLi4zNzM4MzBmIDEwMDY0NAogIAogICAgYnJlYWtwb2ludHNfY2hhbmdlZCAoKTsKICAKLUBA IC02ODM4LDcgKzY5MjgsNyBAQCBjbG9uZV9tb21lbnRhcnlfYnJlYWtwb2ludCAoc3RydWN0IGJy ZWFrcG9pbnQgKm9yaWcpCitAQCAtNjg5OCw3ICs2OTg4LDcgQEAgY2xvbmVfbW9tZW50YXJ5X2Jy ZWFrcG9pbnQgKHN0cnVjdCBicmVha3BvaW50ICpvcmlnKQogIAogICAgY29weSA9IHNldF9yYXdf YnJlYWtwb2ludF93aXRob3V0X2xvY2F0aW9uIChvcmlnLT5nZGJhcmNoLCBvcmlnLT50eXBlKTsK ICAgIGNvcHktPmxvYyA9IGFsbG9jYXRlX2JwX2xvY2F0aW9uIChjb3B5KTsKQEAgLTc1NSw3ICs3 NTUsNyBAQCBpbmRleCA4ZDA2OTJiLi4zNzM4MzBmIDEwMDY0NAogIAogICAgY29weS0+bG9jLT5n ZGJhcmNoID0gb3JpZy0+bG9jLT5nZGJhcmNoOwogICAgY29weS0+bG9jLT5yZXF1ZXN0ZWRfYWRk cmVzcyA9IG9yaWctPmxvYy0+cmVxdWVzdGVkX2FkZHJlc3M7Ci1AQCAtNjkzOCw2ICs3MDI4LDcg QEAgbWVudGlvbiAoc3RydWN0IGJyZWFrcG9pbnQgKmIpCitAQCAtNjk5OCw2ICs3MDg4LDcgQEAg bWVudGlvbiAoc3RydWN0IGJyZWFrcG9pbnQgKmIpCiAgCWRvX2NsZWFudXBzICh1aV9vdXRfY2hh aW4pOwogIAlicmVhazsKICAgICAgICBjYXNlIGJwX2JyZWFrcG9pbnQ6CkBAIC03NjMsNyArNzYz LDcgQEAgaW5kZXggOGQwNjkyYi4uMzczODMwZiAxMDA2NDQKICAJaWYgKHVpX291dF9pc19taV9s aWtlX3AgKHVpb3V0KSkKICAJICB7CiAgCSAgICBzYXlfd2hlcmUgPSAwOwotQEAgLTY5NDgsNiAr NzAzOSw4IEBAIG1lbnRpb24gKHN0cnVjdCBicmVha3BvaW50ICpiKQorQEAgLTcwMDgsNiArNzA5 OSw4IEBAIG1lbnRpb24gKHN0cnVjdCBicmVha3BvaW50ICpiKQogIAllbHNlCiAgCSAgcHJpbnRm X2ZpbHRlcmVkIChfKCJCcmVha3BvaW50IikpOwogIAlwcmludGZfZmlsdGVyZWQgKF8oIiAlZCIp LCBiLT5udW1iZXIpOwpAQCAtNzcyLDcgKzc3Miw3IEBAIGluZGV4IDhkMDY5MmIuLjM3MzgzMGYg MTAwNjQ0CiAgCXNheV93aGVyZSA9IDE7CiAgCWJyZWFrOwogICAgICAgIGNhc2UgYnBfaGFyZHdh cmVfYnJlYWtwb2ludDoKLUBAIC03MDA3LDYgKzcxMDAsNyBAQCBtZW50aW9uIChzdHJ1Y3QgYnJl YWtwb2ludCAqYikKK0BAIC03MDY3LDYgKzcxNjAsNyBAQCBtZW50aW9uIChzdHJ1Y3QgYnJlYWtw b2ludCAqYikKICAgICAgICBjYXNlIGJwX2xvbmdqbXBfbWFzdGVyOgogICAgICAgIGNhc2UgYnBf c3RkX3Rlcm1pbmF0ZV9tYXN0ZXI6CiAgICAgICAgY2FzZSBicF9leGNlcHRpb25fbWFzdGVyOgpA QCAtNzgwLDcgKzc4MCw3IEBAIGluZGV4IDhkMDY5MmIuLjM3MzgzMGYgMTAwNjQ0CiAgCWJyZWFr OwogICAgICAgIH0KICAKLUBAIC03MDY3LDcgKzcxNjEsOCBAQCBhZGRfbG9jYXRpb25fdG9fYnJl YWtwb2ludCAoc3RydWN0IGJyZWFrcG9pbnQgKmIsCitAQCAtNzEyNyw3ICs3MjIxLDggQEAgYWRk X2xvY2F0aW9uX3RvX2JyZWFrcG9pbnQgKHN0cnVjdCBicmVha3BvaW50ICpiLAogICAgZ2RiX2Fz c2VydCAobG9jLT5wc3BhY2UgIT0gTlVMTCk7CiAgICBsb2MtPnNlY3Rpb24gPSBzYWwtPnNlY3Rp b247CiAgCkBAIC03OTAsNyArNzkwLDcgQEAgaW5kZXggOGQwNjkyYi4uMzczODMwZiAxMDA2NDQK ICAgIHJldHVybiBsb2M7CiAgfQogIAwKLUBAIC04NTEzLDYgKzg2MDgsNyBAQCB3YXRjaF9jb21t YW5kXzEgKGNoYXIgKmFyZywgaW50IGFjY2Vzc2ZsYWcsIGludCBmcm9tX3R0eSwKK0BAIC04NTcz LDYgKzg2NjgsNyBAQCB3YXRjaF9jb21tYW5kXzEgKGNoYXIgKmFyZywgaW50IGFjY2Vzc2ZsYWcs IGludCBmcm9tX3R0eSwKICAgIGIgPSBzZXRfcmF3X2JyZWFrcG9pbnRfd2l0aG91dF9sb2NhdGlv biAoTlVMTCwgYnBfdHlwZSk7CiAgICBzZXRfYnJlYWtwb2ludF9udW1iZXIgKGludGVybmFsLCBi KTsKICAgIGItPnRocmVhZCA9IHRocmVhZDsKQEAgLTc5OCw3ICs3OTgsNyBAQCBpbmRleCA4ZDA2 OTJiLi4zNzM4MzBmIDEwMDY0NAogICAgYi0+ZGlzcG9zaXRpb24gPSBkaXNwX2RvbnR0b3VjaDsK ICAgIGItPmV4cCA9IGV4cDsKICAgIGItPmV4cF92YWxpZF9ibG9jayA9IGV4cF92YWxpZF9ibG9j azsKLUBAIC05Njg0LDYgKzk3ODAsOSBAQCB1cGRhdGVfZ2xvYmFsX2xvY2F0aW9uX2xpc3QgKGlu dCBzaG91bGRfaW5zZXJ0KQorQEAgLTk3NDQsNiArOTg0MCw5IEBAIHVwZGF0ZV9nbG9iYWxfbG9j YXRpb25fbGlzdCAoaW50IHNob3VsZF9pbnNlcnQpCiAgICAgICAgaW50IGtlZXBfaW5fdGFyZ2V0 ID0gMDsKICAgICAgICBpbnQgcmVtb3ZlZCA9IDA7CiAgCkBAIC04MDgsNyArODA4LDcgQEAgaW5k ZXggOGQwNjkyYi4uMzczODMwZiAxMDA2NDQKICAgICAgICAvKiBTa2lwIExPQ1AgZW50cmllcyB3 aGljaCB3aWxsIGRlZmluaXRlbHkgbmV2ZXIgYmUgbmVlZGVkLgogIAkgU3RvcCBlaXRoZXIgYXQg b3IgYmVpbmcgdGhlIG9uZSBtYXRjaGluZyBPTERfTE9DLiAgKi8KICAgICAgICB3aGlsZSAobG9j cCA8IGJwX2xvY2F0aW9uICsgYnBfbG9jYXRpb25fY291bnQKLUBAIC0xMDAwMCwxMiArMTAwOTks MjIgQEAgZGVsZXRlX2JyZWFrcG9pbnQgKHN0cnVjdCBicmVha3BvaW50ICpicHQpCitAQCAtMTAw NjAsMTIgKzEwMTU5LDIwIEBAIGRlbGV0ZV9icmVha3BvaW50IChzdHJ1Y3QgYnJlYWtwb2ludCAq YnB0KQogIAogICAgLyogQXQgbGVhc3QgYXZvaWQgdGhpcyBzdGFsZSByZWZlcmVuY2UgdW50aWwg dGhlIHJlZmVyZW5jZSBjb3VudGluZwogICAgICAgb2YgYnJlYWtwb2ludHMgZ2V0cyByZXNvbHZl ZC4gICovCkBAIC04MTksMjQgKzgxOSwyMiBAQCBpbmRleCA4ZDA2OTJiLi4zNzM4MzBmIDEwMDY0 NAogLSAgICAgIGJwdC0+cmVsYXRlZF9icmVha3BvaW50LT5kaXNwb3NpdGlvbiA9IGRpc3BfZGVs X2F0X25leHRfc3RvcDsKIC0gICAgICBicHQtPnJlbGF0ZWRfYnJlYWtwb2ludC0+cmVsYXRlZF9i cmVha3BvaW50ID0gTlVMTDsKIC0gICAgICBicHQtPnJlbGF0ZWRfYnJlYWtwb2ludCA9IE5VTEw7 CisrICAgICAgc3RydWN0IGJyZWFrcG9pbnQgKnJlbGF0ZWQ7CisrCiArICAgICAgaWYgKGJwdC0+ dHlwZSA9PSBicF93YXRjaHBvaW50X3Njb3BlKQogKwl3YXRjaHBvaW50X2RlbF9hdF9uZXh0X3N0 b3AgKGJwdC0+cmVsYXRlZF9icmVha3BvaW50KTsKICsgICAgICBlbHNlIGlmIChicHQtPnJlbGF0 ZWRfYnJlYWtwb2ludC0+dHlwZSA9PSBicF93YXRjaHBvaW50X3Njb3BlKQogKwl3YXRjaHBvaW50 X2RlbF9hdF9uZXh0X3N0b3AgKGJwdCk7Ci0rICAgICAgZWxzZQotKwl7Ci0rCSAgc3RydWN0IGJy ZWFrcG9pbnQgKnJlbGF0ZWQ7CiArCi0rCSAgLyogVW5saW5rIGJwdCBmcm9tIHRoZSBicHQtPnJl bGF0ZWRfYnJlYWtwb2ludCByaW5nLiAgKi8KLSsJICBmb3IgKHJlbGF0ZWQgPSBicHQ7IHJlbGF0 ZWQtPnJlbGF0ZWRfYnJlYWtwb2ludCAhPSBicHQ7Ci0rCSAgICAgICByZWxhdGVkID0gcmVsYXRl ZC0+cmVsYXRlZF9icmVha3BvaW50KTsKLSsJICByZWxhdGVkLT5yZWxhdGVkX2JyZWFrcG9pbnQg PSBicHQtPnJlbGF0ZWRfYnJlYWtwb2ludDsKLSsJICBicHQtPnJlbGF0ZWRfYnJlYWtwb2ludCA9 IGJwdDsKLSsJfQorKyAgICAgIC8qIFVubGluayBicHQgZnJvbSB0aGUgYnB0LT5yZWxhdGVkX2Jy ZWFrcG9pbnQgcmluZy4gICovCisrICAgICAgZm9yIChyZWxhdGVkID0gYnB0OyByZWxhdGVkLT5y ZWxhdGVkX2JyZWFrcG9pbnQgIT0gYnB0OworKwkgICByZWxhdGVkID0gcmVsYXRlZC0+cmVsYXRl ZF9icmVha3BvaW50KTsKKysgICAgICByZWxhdGVkLT5yZWxhdGVkX2JyZWFrcG9pbnQgPSBicHQt PnJlbGF0ZWRfYnJlYWtwb2ludDsKKysgICAgICBicHQtPnJlbGF0ZWRfYnJlYWtwb2ludCA9IGJw dDsKICAgICAgfQogIAogICAgb2JzZXJ2ZXJfbm90aWZ5X2JyZWFrcG9pbnRfZGVsZXRlZCAoYnB0 LT5udW1iZXIpOwotQEAgLTEwMzM2LDYgKzEwNDQ1LDkgQEAgdXBkYXRlX2JyZWFrcG9pbnRfbG9j YXRpb25zIChzdHJ1Y3QgYnJlYWtwb2ludCAqYiwKK0BAIC0xMDM5Niw2ICsxMDUwMyw5IEBAIHVw ZGF0ZV9icmVha3BvaW50X2xvY2F0aW9ucyAoc3RydWN0IGJyZWFrcG9pbnQgKmIsCiAgICAgIHJl dHVybjsKICAKICAgIGItPmxvYyA9IE5VTEw7CkBAIC04NDYsNyArODQ0LDcgQEAgaW5kZXggOGQw NjkyYi4uMzczODMwZiAxMDA2NDQKICAKICAgIGZvciAoaSA9IDA7IGkgPCBzYWxzLm5lbHRzOyAr K2kpCiAgICAgIHsKLUBAIC0xMDM2MywxMSArMTA0NzUsNyBAQCB1cGRhdGVfYnJlYWtwb2ludF9s b2NhdGlvbnMgKHN0cnVjdCBicmVha3BvaW50ICpiLAorQEAgLTEwNDIzLDExICsxMDUzMyw3IEBA IHVwZGF0ZV9icmVha3BvaW50X2xvY2F0aW9ucyAoc3RydWN0IGJyZWFrcG9pbnQgKmIsCiAgCSAg ICB9CiAgCX0KICAKQEAgLTg1OSw3ICs4NTcsNyBAQCBpbmRleCA4ZDA2OTJiLi4zNzM4MzBmIDEw MDY0NAogIAliLT5zb3VyY2VfZmlsZSA9IHhzdHJkdXAgKHNhbHMuc2Fsc1tpXS5zeW10YWItPmZp bGVuYW1lKTsKICAKICAgICAgICBpZiAoYi0+bGluZV9udW1iZXIgPT0gMCkKLUBAIC0xMDQ1MCw2 ICsxMDU1OCw3IEBAIGJyZWFrcG9pbnRfcmVfc2V0X29uZSAodm9pZCAqYmludCkKK0BAIC0xMDUx MCw2ICsxMDYxNiw3IEBAIGJyZWFrcG9pbnRfcmVfc2V0X29uZSAodm9pZCAqYmludCkKICAgICAg Y2FzZSBicF90cmFjZXBvaW50OgogICAgICBjYXNlIGJwX2Zhc3RfdHJhY2Vwb2ludDoKICAgICAg Y2FzZSBicF9zdGF0aWNfdHJhY2Vwb2ludDoKQEAgLTg2Nyw3ICs4NjUsNyBAQCBpbmRleCA4ZDA2 OTJiLi4zNzM4MzBmIDEwMDY0NAogICAgICAgIC8qIERvIG5vdCBhdHRlbXB0IHRvIHJlLXNldCBi cmVha3BvaW50cyBkaXNhYmxlZCBkdXJpbmcgc3RhcnR1cC4gICovCiAgICAgICAgaWYgKGItPmVu YWJsZV9zdGF0ZSA9PSBicF9zdGFydHVwX2Rpc2FibGVkKQogIAlyZXR1cm4gMDsKLUBAIC0xMDYy MCw2ICsxMDcyOSw3IEBAIGJyZWFrcG9pbnRfcmVfc2V0X29uZSAodm9pZCAqYmludCkKK0BAIC0x MDY4MCw2ICsxMDc4Nyw3IEBAIGJyZWFrcG9pbnRfcmVfc2V0X29uZSAodm9pZCAqYmludCkKICAg ICAgY2FzZSBicF9leGNlcHRpb246CiAgICAgIGNhc2UgYnBfZXhjZXB0aW9uX3Jlc3VtZToKICAg ICAgY2FzZSBicF9qaXRfZXZlbnQ6CkBAIC04NzUsNyArODczLDcgQEAgaW5kZXggOGQwNjkyYi4u MzczODMwZiAxMDA2NDQKICAgICAgICBicmVhazsKICAgICAgfQogIAotQEAgLTEwNzk0LDExICsx MDkwNCwyNSBAQCBtYXBfYnJlYWtwb2ludF9udW1iZXJzIChjaGFyICphcmdzLCB2b2lkICgqZnVu Y3Rpb24pIChzdHJ1Y3QgYnJlYWtwb2ludCAqLAorQEAgLTEwODQ3LDExICsxMDk1NSwyNSBAQCBt YXBfYnJlYWtwb2ludF9udW1iZXJzIChjaGFyICphcmdzLCB2b2lkICgqZnVuY3Rpb24pIChzdHJ1 Y3QgYnJlYWtwb2ludCAqLAogIAkgIEFMTF9CUkVBS1BPSU5UU19TQUZFIChiLCB0bXApCiAgCSAg ICBpZiAoYi0+bnVtYmVyID09IG51bSkKICAJICAgICAgewpAQCAtOTA1LDcgKzkwMyw3IEBAIGlu ZGV4IDhkMDY5MmIuLjM3MzgzMGYgMTAwNjQ0CiAgCQlicmVhazsKICAJICAgICAgfQogIAkgIGlm IChtYXRjaCA9PSAwKQotQEAgLTExOTEzLDYgKzEyMDM3LDIyIEBAIGFsbF90cmFjZXBvaW50cyAo KQorQEAgLTExOTY2LDYgKzEyMDg4LDIyIEBAIGFsbF90cmFjZXBvaW50cyAoKQogICAgcmV0dXJu IHRwX3ZlYzsKICB9CiAgCkBAIC05MjgsNyArOTI2LDcgQEAgaW5kZXggOGQwNjkyYi4uMzczODMw ZiAxMDA2NDQKICAMCiAgLyogVGhpcyBoZWxwIHN0cmluZyBpcyB1c2VkIGZvciB0aGUgYnJlYWss IGhicmVhaywgdGJyZWFrIGFuZCB0aGJyZWFrCiAgICAgY29tbWFuZHMuICBJdCBpcyBkZWZpbmVk IGFzIGEgbWFjcm8gdG8gcHJldmVudCBkdXBsaWNhdGlvbi4KLUBAIC0xMTk5OCw2ICsxMjEzOCwx MDcgQEAgaXRlcmF0ZV9vdmVyX2JyZWFrcG9pbnRzIChpbnQgKCpjYWxsYmFjaykgKHN0cnVjdCBi cmVha3BvaW50ICosIHZvaWQgKiksCitAQCAtMTIwNTEsNiArMTIxODksMTA3IEBAIGl0ZXJhdGVf b3Zlcl9icmVha3BvaW50cyAoaW50ICgqY2FsbGJhY2spIChzdHJ1Y3QgYnJlYWtwb2ludCAqLCB2 b2lkICopLAogICAgcmV0dXJuIE5VTEw7CiAgfQogIApAQCAtMTAzNiwxNCArMTAzNCwxNCBAQCBp bmRleCA4ZDA2OTJiLi4zNzM4MzBmIDEwMDY0NAogIHZvaWQKICBfaW5pdGlhbGl6ZV9icmVha3Bv aW50ICh2b2lkKQogIHsKLUBAIC0xMjUzMiw0ICsxMjc3Myw1IEBAIGluZmVyaW9yIGluIGFsbC1z dG9wIG1vZGUsIGdkYiBiZWhhdmVzIGFzIGlmIGFsd2F5cy1pbnNlcnRlZCBtb2RlIGlzIG9mZi4i KSwKK0BAIC0xMjU4NSw0ICsxMjgyNCw1IEBAIGluZmVyaW9yIGluIGFsbC1zdG9wIG1vZGUsIGdk YiBiZWhhdmVzIGFzIGlmIGFsd2F5cy1pbnNlcnRlZCBtb2RlIGlzIG9mZi4iKSwKICAgIGF1dG9t YXRpY19oYXJkd2FyZV9icmVha3BvaW50cyA9IDE7CiAgCiAgICBvYnNlcnZlcl9hdHRhY2hfYWJv dXRfdG9fcHJvY2VlZCAoYnJlYWtwb2ludF9hYm91dF90b19wcm9jZWVkKTsKICsgIG9ic2VydmVy X2F0dGFjaF9tYXJrX3VzZWQgKGJyZWFrcG9pbnRfdHlwZXNfbWFya191c2VkKTsKICB9CiBkaWZm IC0tZ2l0IGEvZ2RiL2JyZWFrcG9pbnQuaCBiL2dkYi9icmVha3BvaW50LmgKLWluZGV4IDY5NTk4 YTcuLjMzNmZhZjcgMTAwNjQ0CitpbmRleCA4NmZhZTY2Li5mZmVmMzQwIDEwMDY0NAogLS0tIGEv Z2RiL2JyZWFrcG9pbnQuaAogKysrIGIvZ2RiL2JyZWFrcG9pbnQuaAogQEAgLTE0OCw2ICsxNDgs OSBAQCBlbnVtIGJwdHlwZQpAQCAtMTA3OSwxMCArMTA3NywxMCBAQCBpbmRleCA5OTA5ZTEzLi4z MGMzZGZlIDEwMDY0NAogIAogIAljX3R5cGVfcHJpbnRfdmFyc3BlY19zdWZmaXggKFRZUEVfVEFS R0VUX1RZUEUgKHR5cGUpLCBzdHJlYW0sCiBkaWZmIC0tZ2l0IGEvZ2RiL2RhdGEtZGlyZWN0b3J5 L01ha2VmaWxlLmluIGIvZ2RiL2RhdGEtZGlyZWN0b3J5L01ha2VmaWxlLmluCi1pbmRleCA1NjVh ODM3Li5jOWZmMGRlIDEwMDY0NAoraW5kZXggMTFjZjJlNi4uOWEyYThmOCAxMDA2NDQKIC0tLSBh L2dkYi9kYXRhLWRpcmVjdG9yeS9NYWtlZmlsZS5pbgogKysrIGIvZ2RiL2RhdGEtZGlyZWN0b3J5 L01ha2VmaWxlLmluCi1AQCAtNTEsMTEgKzUxLDIzIEBAIFNZU0NBTExTX0ZJTEVTID0gXAorQEAg LTUyLDExICs1MiwyMyBAQCBTWVNDQUxMU19GSUxFUyA9IFwKICBQWVRIT05fRElSID0gcHl0aG9u CiAgUFlUSE9OX0lOU1RBTExfRElSID0gJChERVNURElSKSQoR0RCX0RBVEFESVIpLyQoUFlUSE9O X0RJUikKICBQWVRIT05fRklMRVMgPSBcCkBAIC0xMTIzLDcgKzExMjEsNyBAQCBpbmRleCA5NDA5 ZGRlLi5mMGZhNGM3IDEwMDY0NAogIGV4dGVybiBjaGFyICp4ZnVsbHBhdGggKGNvbnN0IGNoYXIg Kik7CiAgCiBkaWZmIC0tZ2l0IGEvZ2RiL2RvYy9nZGIudGV4aW5mbyBiL2dkYi9kb2MvZ2RiLnRl eGluZm8KLWluZGV4IGNjMjM5MWIuLjE2MWFjMWYgMTAwNjQ0CitpbmRleCA2YTNjN2RlLi5iMjE2 NWY4IDEwMDY0NAogLS0tIGEvZ2RiL2RvYy9nZGIudGV4aW5mbwogKysrIGIvZ2RiL2RvYy9nZGIu dGV4aW5mbwogQEAgLTExNzcsNiArMTE3NywxNiBAQCBmb3IgcmVtb3RlIGRlYnVnZ2luZy4KQEAg LTExODMsNyArMTE4MSw3IEBAIGluZGV4IGNjMjM5MWIuLjE2MWFjMWYgMTAwNjQ0CiAgQGNpbmRl eCBweXRob24gcGFnaW5hdGlvbgogIEF0IHN0YXJ0dXAsIEB2YWx1ZXtHREJOfSBvdmVycmlkZXMg UHl0aG9uJ3MgQGNvZGV7c3lzLnN0ZG91dH0gYW5kCiBkaWZmIC0tZ2l0IGEvZ2RiL2RvYy9nZGJp bnQudGV4aW5mbyBiL2dkYi9kb2MvZ2RiaW50LnRleGluZm8KLWluZGV4IDgxNDljYjkuLjQ4MTI1 NTggMTAwNjQ0CitpbmRleCBhNDk0NzA3Li5kNWI5Y2Y4IDEwMDY0NAogLS0tIGEvZ2RiL2RvYy9n ZGJpbnQudGV4aW5mbwogKysrIGIvZ2RiL2RvYy9nZGJpbnQudGV4aW5mbwogQEAgLTIxMDQsNiAr MjEwNCwxOCBAQCB0aW1lLCBhbmQgc28gd2UgYXR0ZW1wdCB0byBoYW5kbGUgc3ltYm9scyBpbmNy ZW1lbnRhbGx5LiAgRm9yIGluc3RhbmNlLApAQCAtMTcxMiw3ICsxNzEwLDcgQEAgaW5kZXggZWU1 MjUwNi4uNmE3N2MzZiAxMDA2NDQKICAKICAjZW5kaWYgLyogZHdhcmYybG9jLmggKi8KIGRpZmYg LS1naXQgYS9nZGIvZHdhcmYycmVhZC5jIGIvZ2RiL2R3YXJmMnJlYWQuYwotaW5kZXggMDNiZDMz MS4uMGQ0ZDRmOSAxMDA2NDQKK2luZGV4IGYyNjlkZWUuLjI4NGEyMmYgMTAwNjQ0CiAtLS0gYS9n ZGIvZHdhcmYycmVhZC5jCiArKysgYi9nZGIvZHdhcmYycmVhZC5jCiBAQCAtMTIxMSw2ICsxMjEx LDkgQEAgc3RhdGljIHZvaWQgZmlsbF9pbl9sb2NsaXN0X2JhdG9uIChzdHJ1Y3QgZHdhcmYyX2N1 ICpjdSwKQEAgLTE3NDUsNyArMTc0Myw3IEBAIGluZGV4IDAzYmQzMzEuLjBkNGQ0ZjkgMTAwNjQ0 CiAgc3RhdGljIHZvaWQgZHdhcmYyX3JlbGVhc2VfcXVldWUgKHZvaWQgKmR1bW15KTsKICAKICBz dGF0aWMgdm9pZCBxdWV1ZV9jb21wX3VuaXQgKHN0cnVjdCBkd2FyZjJfcGVyX2N1X2RhdGEgKnBl cl9jdSwKLUBAIC03MjYzLDYgKzcyNzIsMjkgQEAgcHJvY2Vzc19lbnVtZXJhdGlvbl9zY29wZSAo c3RydWN0IGRpZV9pbmZvICpkaWUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1KQorQEAgLTczMTIsNiAr NzMyMSwyOSBAQCBwcm9jZXNzX2VudW1lcmF0aW9uX3Njb3BlIChzdHJ1Y3QgZGllX2luZm8gKmRp ZSwgc3RydWN0IGR3YXJmMl9jdSAqY3UpCiAgICBuZXdfc3ltYm9sIChkaWUsIHRoaXNfdHlwZSwg Y3UpOwogIH0KICAKQEAgLTE3NzUsNyArMTc3Myw3IEBAIGluZGV4IDAzYmQzMzEuLjBkNGQ0Zjkg MTAwNjQ0CiAgLyogRXh0cmFjdCBhbGwgaW5mb3JtYXRpb24gZnJvbSBhIERXX1RBR19hcnJheV90 eXBlIERJRSBhbmQgcHV0IGl0IGluCiAgICAgdGhlIERJRSdzIHR5cGUgZmllbGQuICBGb3Igbm93 LCB0aGlzIG9ubHkgaGFuZGxlcyBvbmUgZGltZW5zaW9uYWwKICAgICBhcnJheXMuICAqLwotQEAg LTcyNzYsNyArNzMwOCw3IEBAIHJlYWRfYXJyYXlfdHlwZSAoc3RydWN0IGRpZV9pbmZvICpkaWUs IHN0cnVjdCBkd2FyZjJfY3UgKmN1KQorQEAgLTczMjUsNyArNzM1Nyw3IEBAIHJlYWRfYXJyYXlf dHlwZSAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1KQogICAgc3Ry dWN0IHR5cGUgKmVsZW1lbnRfdHlwZSwgKnJhbmdlX3R5cGUsICppbmRleF90eXBlOwogICAgc3Ry dWN0IHR5cGUgKipyYW5nZV90eXBlcyA9IE5VTEw7CiAgICBzdHJ1Y3QgYXR0cmlidXRlICphdHRy OwpAQCAtMTc4NCw3ICsxNzgyLDcgQEAgaW5kZXggMDNiZDMzMS4uMGQ0ZDRmOSAxMDA2NDQKICAg IHN0cnVjdCBjbGVhbnVwICpiYWNrX3RvOwogICAgY2hhciAqbmFtZTsKICAKLUBAIC03MzI5LDE3 ICs3MzYxLDExIEBAIHJlYWRfYXJyYXlfdHlwZSAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0cnVj dCBkd2FyZjJfY3UgKmN1KQorQEAgLTczNzgsMTcgKzc0MTAsMTEgQEAgcmVhZF9hcnJheV90eXBl IChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0IGR3YXJmMl9jdSAqY3UpCiAgICB0eXBlID0g ZWxlbWVudF90eXBlOwogIAogICAgaWYgKHJlYWRfYXJyYXlfb3JkZXIgKGRpZSwgY3UpID09IERX X09SRF9jb2xfbWFqb3IpCkBAIC0xODA3LDcgKzE4MDUsNyBAQCBpbmRleCAwM2JkMzMxLi4wZDRk NGY5IDEwMDY0NAogIAogICAgLyogVW5kZXJzdGFuZCBEd2FyZjIgc3VwcG9ydCBmb3IgdmVjdG9y IHR5cGVzIChsaWtlIHRoZXkgb2NjdXIgb24KICAgICAgIHRoZSBQb3dlclBDIHcvIEFsdGlWZWMp LiAgR2NjIGp1c3QgYWRkcyBhbm90aGVyIGF0dHJpYnV0ZSB0byB0aGUKLUBAIC03ODMzLDI5ICs3 ODU5LDExNCBAQCByZWFkX3RhZ19zdHJpbmdfdHlwZSAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0 cnVjdCBkd2FyZjJfY3UgKmN1KQorQEAgLTc4ODIsMjkgKzc5MDgsMTE0IEBAIHJlYWRfdGFnX3N0 cmluZ190eXBlIChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0IGR3YXJmMl9jdSAqY3UpCiAg ICBzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCA9IGdldF9vYmpmaWxlX2FyY2ggKG9iamZpbGUpOwog ICAgc3RydWN0IHR5cGUgKnR5cGUsICpyYW5nZV90eXBlLCAqaW5kZXhfdHlwZSwgKmNoYXJfdHlw ZTsKICAgIHN0cnVjdCBhdHRyaWJ1dGUgKmF0dHI7CkBAIC0xOTM2LDcgKzE5MzQsNyBAQCBpbmRl eCAwM2JkMzMxLi4wZDRkNGY5IDEwMDY0NAogICAgY2hhcl90eXBlID0gbGFuZ3VhZ2Vfc3RyaW5n X2NoYXJfdHlwZSAoY3UtPmxhbmd1YWdlX2RlZm4sIGdkYmFyY2gpOwogICAgdHlwZSA9IGNyZWF0 ZV9zdHJpbmdfdHlwZSAoTlVMTCwgY2hhcl90eXBlLCByYW5nZV90eXBlKTsKICAKLUBAIC04MTM2 LDggKzgyNDcsNyBAQCByZWFkX3N1YnJhbmdlX3R5cGUgKHN0cnVjdCBkaWVfaW5mbyAqZGllLCBz dHJ1Y3QgZHdhcmYyX2N1ICpjdSkKK0BAIC04MTg1LDggKzgyOTYsNyBAQCByZWFkX3N1YnJhbmdl X3R5cGUgKHN0cnVjdCBkaWVfaW5mbyAqZGllLCBzdHJ1Y3QgZHdhcmYyX2N1ICpjdSkKICAgIHN0 cnVjdCB0eXBlICpiYXNlX3R5cGU7CiAgICBzdHJ1Y3QgdHlwZSAqcmFuZ2VfdHlwZTsKICAgIHN0 cnVjdCBhdHRyaWJ1dGUgKmF0dHI7CkBAIC0xOTQ2LDcgKzE5NDQsNyBAQCBpbmRleCAwM2JkMzMx Li4wZDRkNGY5IDEwMDY0NAogICAgY2hhciAqbmFtZTsKICAgIExPTkdFU1QgbmVnYXRpdmVfbWFz azsKICAKLUBAIC04MTUwLDUzICs4MjYwLDEyNiBAQCByZWFkX3N1YnJhbmdlX3R5cGUgKHN0cnVj dCBkaWVfaW5mbyAqZGllLCBzdHJ1Y3QgZHdhcmYyX2N1ICpjdSkKK0BAIC04MTk5LDUzICs4MzA5 LDEyNiBAQCByZWFkX3N1YnJhbmdlX3R5cGUgKHN0cnVjdCBkaWVfaW5mbyAqZGllLCBzdHJ1Y3Qg ZHdhcmYyX2N1ICpjdSkKICAgIGlmIChyYW5nZV90eXBlKQogICAgICByZXR1cm4gcmFuZ2VfdHlw ZTsKICAKQEAgLTIxMDgsNyArMjEwNiw3IEBAIGluZGV4IDAzYmQzMzEuLjBkNGQ0ZjkgMTAwNjQ0 CiAgICAgIH0KICAKICAgIC8qIER3YXJmLTIgc3BlY2lmaWNhdGlvbnMgZXhwbGljaXRseSBhbGxv d3MgdG8gY3JlYXRlIHN1YnJhbmdlIHR5cGVzCi1AQCAtODIzNywyNCArODQyMCw0MSBAQCByZWFk X3N1YnJhbmdlX3R5cGUgKHN0cnVjdCBkaWVfaW5mbyAqZGllLCBzdHJ1Y3QgZHdhcmYyX2N1ICpj dSkKK0BAIC04Mjg2LDI0ICs4NDY5LDQxIEBAIHJlYWRfc3VicmFuZ2VfdHlwZSAoc3RydWN0IGRp ZV9pbmZvICpkaWUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1KQogIAl9CiAgICAgIH0KICAKQEAgLTIx NjYsNyArMjE2NCw3IEBAIGluZGV4IDAzYmQzMzEuLjBkNGQ0ZjkgMTAwNjQ0CiAgCiAgICBuYW1l ID0gZHdhcmYyX25hbWUgKGRpZSwgY3UpOwogICAgaWYgKG5hbWUpCi1AQCAtMTA3MzEsMTAgKzEw OTMxLDEyIEBAIHZhcl9kZWNvZGVfbG9jYXRpb24gKHN0cnVjdCBhdHRyaWJ1dGUgKmF0dHIsIHN0 cnVjdCBzeW1ib2wgKnN5bSwKK0BAIC0xMDc4MCwxMCArMTA5ODAsMTIgQEAgdmFyX2RlY29kZV9s b2NhdGlvbiAoc3RydWN0IGF0dHJpYnV0ZSAqYXR0ciwgc3RydWN0IHN5bWJvbCAqc3ltLAogICAg ICAgKGkuZS4gd2hlbiB0aGUgdmFsdWUgb2YgYSByZWdpc3RlciBvciBtZW1vcnkgbG9jYXRpb24g aXMKICAgICAgIHJlZmVyZW5jZWQsIG9yIGEgdGhyZWFkLWxvY2FsIGJsb2NrLCBldGMuKS4gIFRo ZW4gYWdhaW4sIGl0IG1pZ2h0CiAgICAgICBub3QgYmUgd29ydGh3aGlsZS4gIEknbSBhc3N1bWlu ZyB0aGF0IGl0IGlzbid0IHVubGVzcyBwZXJmb3JtYW5jZQpAQCAtMjE4MSw3ICsyMTc5LDcgQEAg aW5kZXggMDNiZDMzMS4uMGQ0ZDRmOSAxMDA2NDQKICB9CiAgCiAgLyogR2l2ZW4gYSBwb2ludGVy IHRvIGEgRFdBUkYgaW5mb3JtYXRpb24gZW50cnksIGZpZ3VyZSBvdXQgaWYgd2UgbmVlZAotQEAg LTEwNzcyLDYgKzEwOTc0LDggQEAgbmV3X3N5bWJvbF9mdWxsIChzdHJ1Y3QgZGllX2luZm8gKmRp ZSwgc3RydWN0IHR5cGUgKnR5cGUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1LAorQEAgLTEwODIxLDYg KzExMDIzLDggQEAgbmV3X3N5bWJvbF9mdWxsIChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0 IHR5cGUgKnR5cGUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1LAogICAgICAgIGVsc2UKICAJc3ltID0g T0JTVEFDS19aQUxMT0MgKCZvYmpmaWxlLT5vYmpmaWxlX29ic3RhY2ssIHN0cnVjdCBzeW1ib2wp OwogICAgICAgIE9CSlNUQVQgKG9iamZpbGUsIG5fc3ltcysrKTsKQEAgLTIxOTAsNyArMjE4OCw3 IEBAIGluZGV4IDAzYmQzMzEuLjBkNGQ0ZjkgMTAwNjQ0CiAgCiAgICAgICAgLyogQ2FjaGUgdGhp cyBzeW1ib2wncyBuYW1lIGFuZCB0aGUgbmFtZSdzIGRlbWFuZ2xlZCBmb3JtIChpZiBhbnkpLiAg Ki8KICAgICAgICBTWU1CT0xfU0VUX0xBTkdVQUdFIChzeW0sIGN1LT5sYW5ndWFnZSk7Ci1AQCAt MTE1NDQsNiArMTE3NDgsOSBAQCByZWFkX3R5cGVfZGllXzEgKHN0cnVjdCBkaWVfaW5mbyAqZGll LCBzdHJ1Y3QgZHdhcmYyX2N1ICpjdSkKK0BAIC0xMTU5Myw2ICsxMTc5Nyw5IEBAIHJlYWRfdHlw ZV9kaWVfMSAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1KQogICAg ICAgIGJyZWFrOwogICAgICB9CiAgCkBAIC0yMjAwLDcgKzIxOTgsNyBAQCBpbmRleCAwM2JkMzMx Li4wZDRkNGY5IDEwMDY0NAogICAgcmV0dXJuIHRoaXNfdHlwZTsKICB9CiAgCi1AQCAtMTQzNTYs NjAgKzE0NTYzLDk4IEBAIGZpbGxfaW5fbG9jbGlzdF9iYXRvbiAoc3RydWN0IGR3YXJmMl9jdSAq Y3UsCitAQCAtMTQ0MDUsNjEgKzE0NjEyLDk5IEBAIGZpbGxfaW5fbG9jbGlzdF9iYXRvbiAoc3Ry dWN0IGR3YXJmMl9jdSAqY3UsCiAgICBiYXRvbi0+YmFzZV9hZGRyZXNzID0gY3UtPmJhc2VfYWRk cmVzczsKICB9CiAgCkBAIC0yMjE3LDcgKzIyMTUsOCBAQCBpbmRleCAwM2JkMzMxLi4wZDRkNGY5 IDEwMDY0NAogLSAgICAgIC8qICIuZGVidWdfbG9jIiBtYXkgbm90IGV4aXN0IGF0IGFsbCwgb3Ig dGhlIG9mZnNldCBtYXkgYmUgb3V0c2lkZQogLQkgdGhlIHNlY3Rpb24uICBJZiBzbywgZmFsbCB0 aHJvdWdoIHRvIHRoZSBjb21wbGFpbnQgaW4gdGhlCiAtCSBvdGhlciBicmFuY2guICAqLwotLSAg ICAgICYmIERXX1VOU05EIChhdHRyKSA8IGR3YXJmMl9wZXJfb2JqZmlsZS0+bG9jLnNpemUpCist ICAgICAgJiYgRFdfVU5TTkQgKGF0dHIpIDwgZHdhcmYyX3NlY3Rpb25fc2l6ZSAoZHdhcmYyX3Bl cl9vYmpmaWxlLT5vYmpmaWxlLAorLQkJCQkJCSZkd2FyZjJfcGVyX29iamZpbGUtPmxvYykpCiAt ICAgIHsKIC0gICAgICBzdHJ1Y3QgZHdhcmYyX2xvY2xpc3RfYmF0b24gKmJhdG9uOwogKyAgc3Ry dWN0IGR3YXJmMl9sb2NleHByX2JhdG9uICpiYXRvbjsKQEAgLTIyNjQsNyArMjI2Myw4IEBAIGlu ZGV4IDAzYmQzMzEuLjBkNGQ0ZjkgMTAwNjQ0CiArCS8qICIuZGVidWdfbG9jIiBtYXkgbm90IGV4 aXN0IGF0IGFsbCwgb3IgdGhlIG9mZnNldCBtYXkgYmUgb3V0c2lkZQogKwkgICB0aGUgc2VjdGlv bi4gIElmIHNvLCBmYWxsIHRocm91Z2ggdG8gdGhlIGNvbXBsYWludCBpbiB0aGUKICsJICAgb3Ro ZXIgYnJhbmNoLiAgKi8KLSsJJiYgRFdfVU5TTkQgKGF0dHIpIDwgZHdhcmYyX3Blcl9vYmpmaWxl LT5sb2Muc2l6ZSkpCisrCSYmIERXX1VOU05EIChhdHRyKSA8IGR3YXJmMl9zZWN0aW9uX3NpemUg KGR3YXJmMl9wZXJfb2JqZmlsZS0+b2JqZmlsZSwKKysJCQkJCQkgICZkd2FyZjJfcGVyX29iamZp bGUtPmxvYykpKQogKyAgICByZXR1cm4gTlVMTDsKICsKICsgIGJhdG9uID0gb2JzdGFja19hbGxv YyAoJmN1LT5vYmpmaWxlLT5vYmpmaWxlX29ic3RhY2ssCkBAIC0yMzQxLDcgKzIzNDEsNyBAQCBp bmRleCAwM2JkMzMxLi4wZDRkNGY5IDEwMDY0NAogICAgICB9CiAgfQogIAotQEAgLTE0NzU1LDYg KzE1MDAwLDMxIEBAIG9mZnNldF9hbmRfdHlwZV9lcSAoY29uc3Qgdm9pZCAqaXRlbV9saHMsIGNv bnN0IHZvaWQgKml0ZW1fcmhzKQorQEAgLTE0ODA1LDYgKzE1MDUwLDMxIEBAIG9mZnNldF9hbmRf dHlwZV9lcSAoY29uc3Qgdm9pZCAqaXRlbV9saHMsIGNvbnN0IHZvaWQgKml0ZW1fcmhzKQogICAg cmV0dXJuIG9mc19saHMtPm9mZnNldCA9PSBvZnNfcmhzLT5vZmZzZXQ7CiAgfQogIApAQCAtMjM3 Myw3ICsyMzczLDcgQEAgaW5kZXggMDNiZDMzMS4uMGQ0ZDRmOSAxMDA2NDQKICAvKiBTZXQgdGhl IHR5cGUgYXNzb2NpYXRlZCB3aXRoIERJRSB0byBUWVBFLiAgU2F2ZSBpdCBpbiBDVSdzIGhhc2gK ICAgICB0YWJsZSBpZiBuZWNlc3NhcnkuICBGb3IgY29udmVuaWVuY2UsIHJldHVybiBUWVBFLgog IAotQEAgLTE0NzgwLDYgKzE1MDUwLDggQEAgc2V0X2RpZV90eXBlIChzdHJ1Y3QgZGllX2luZm8g KmRpZSwgc3RydWN0IHR5cGUgKnR5cGUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1KQorQEAgLTE0ODMw LDYgKzE1MTAwLDggQEAgc2V0X2RpZV90eXBlIChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0 IHR5cGUgKnR5cGUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1KQogICAgc3RydWN0IG9iamZpbGUgKm9i amZpbGUgPSBjdS0+b2JqZmlsZTsKICAgIGh0YWJfdCAqdHlwZV9oYXNoX3B0cjsKICAKQEAgLTMy NTQsNyArMzI1NCw3IEBAIGluZGV4IGFkOTg4ZDIuLjk4NWZlZjYgMTAwNjQ0CiAgICAgIHsKICAg ICAgY2FzZSBUWVBFX0NPREVfQVJSQVk6CiBkaWZmIC0tZ2l0IGEvZ2RiL2YtdmFscHJpbnQuYyBi L2dkYi9mLXZhbHByaW50LmMKLWluZGV4IDk0YTcwYTEuLjdiYjA0ZTcgMTAwNjQ0CitpbmRleCBh MTVlNzc3Li40ZDEzM2JjIDEwMDY0NAogLS0tIGEvZ2RiL2YtdmFscHJpbnQuYwogKysrIGIvZ2Ri L2YtdmFscHJpbnQuYwogQEAgLTU0LDE1ICs1NCwxNyBAQCBpbnQgZjc3X2FycmF5X29mZnNldF90 YmxbTUFYX0ZPUlRSQU5fRElNUyArIDFdWzJdOwpAQCAtNTc4NCw3ICs1Nzg0LDcgQEAgaW5kZXgg ODQ5Nzk5MS4uNDYzNTg1MyAxMDA2NDQKICAJCSAgICAgICBTWU1CT0xfTElOS0FHRV9OQU1FICh0 c3ltYm9sKSkgPT0gMCkKICAJICByZXR1cm4gU1lNQk9MX1ZBTFVFX0FERFJFU1MgKG1zeW1ib2wp OwogZGlmZiAtLWdpdCBhL2dkYi9wLXZhbHByaW50LmMgYi9nZGIvcC12YWxwcmludC5jCi1pbmRl eCAzNGRlY2I5Li4wMzk5ZTBhIDEwMDY0NAoraW5kZXggY2E3NjA2YS4uZDczZjU0ZCAxMDA2NDQK IC0tLSBhL2dkYi9wLXZhbHByaW50LmMKICsrKyBiL2dkYi9wLXZhbHByaW50LmMKIEBAIC0zOCw2 ICszOCw3IEBACkBAIC02MTkwLDEwICs2MTkwLDEwIEBAIGluZGV4IDBjNTU2M2UuLmU0ZjBiMjUg MTAwNjQ0CiAgCiAgICByZXR1cm4gcmV0OwogZGlmZiAtLWdpdCBhL2dkYi9wcmludGNtZC5jIGIv Z2RiL3ByaW50Y21kLmMKLWluZGV4IGY0MzVmNmQuLjdiY2I2NjcgMTAwNjQ0CitpbmRleCAyOWZm YmY1Li40MmI3ODIxIDEwMDY0NAogLS0tIGEvZ2RiL3ByaW50Y21kLmMKICsrKyBiL2dkYi9wcmlu dGNtZC5jCi1AQCAtOTc0LDYgKzk3NCwxMSBAQCBwcmludF9jb21tYW5kXzEgKGNoYXIgKmV4cCwg aW50IGluc3BlY3QsIGludCB2b2lkcHJpbnQpCitAQCAtOTY0LDYgKzk2NCwxMSBAQCBwcmludF9j b21tYW5kXzEgKGNoYXIgKmV4cCwgaW50IGluc3BlY3QsIGludCB2b2lkcHJpbnQpCiAgICBlbHNl CiAgICAgIHZhbCA9IGFjY2Vzc192YWx1ZV9oaXN0b3J5ICgwKTsKICAKQEAgLTYyMDUsNyArNjIw NSw3IEBAIGluZGV4IGY0MzVmNmQuLjdiY2I2NjcgMTAwNjQ0CiAgICBpZiAodm9pZHByaW50IHx8 ICh2YWwgJiYgdmFsdWVfdHlwZSAodmFsKSAmJgogIAkJICAgIFRZUEVfQ09ERSAodmFsdWVfdHlw ZSAodmFsKSkgIT0gVFlQRV9DT0RFX1ZPSUQpKQogICAgICB7Ci1AQCAtMTQ3NSw2ICsxNDgwLDIy IEBAIHhfY29tbWFuZCAoY2hhciAqZXhwLCBpbnQgZnJvbV90dHkpCitAQCAtMTQ2NSw2ICsxNDcw LDIyIEBAIHhfY29tbWFuZCAoY2hhciAqZXhwLCBpbnQgZnJvbV90dHkpCiAgCXNldF9pbnRlcm5h bHZhciAobG9va3VwX2ludGVybmFsdmFyICgiX18iKSwgbGFzdF9leGFtaW5lX3ZhbHVlKTsKICAg ICAgfQogIH0KQEAgLTYyMjgsNyArNjIyOCw3IEBAIGluZGV4IGY0MzVmNmQuLjdiY2I2NjcgMTAw NjQ0CiAgDAogIAogIC8qIEFkZCBhbiBleHByZXNzaW9uIHRvIHRoZSBhdXRvLWRpc3BsYXkgY2hh aW4uCi1AQCAtMjg3NSw0ICsyODk2LDYgQEAgU2hvdyBwcmludGluZyBvZiBzb3VyY2UgZmlsZW5h bWUgYW5kIGxpbmUgbnVtYmVyIHdpdGggPHN5bWJvbD4uIiksIE5VTEwsCitAQCAtMjg2NSw0ICsy ODg2LDYgQEAgU2hvdyBwcmludGluZyBvZiBzb3VyY2UgZmlsZW5hbWUgYW5kIGxpbmUgbnVtYmVy IHdpdGggPHN5bWJvbD4uIiksIE5VTEwsCiAgICBhZGRfY29tICgiZXZhbCIsIG5vX2NsYXNzLCBl dmFsX2NvbW1hbmQsIF8oIlwKICBDb252ZXJ0IFwicHJpbnRmIGZvcm1hdCBzdHJpbmdcIiwgYXJn MSwgYXJnMiwgYXJnMywgLi4uLCBhcmduIHRvXG5cCiAgYSBjb21tYW5kIGxpbmUsIGFuZCBjYWxs IGl0LiIpKTsKQEAgLTcwNjQsNyArNzA2NCw3IEBAIGluZGV4IDAwMDAwMDAuLmRlYmIzYmIKICsK ICtJblNjb3BlICgpCiBkaWZmIC0tZ2l0IGEvZ2RiL3B5dGhvbi9weS10eXBlLmMgYi9nZGIvcHl0 aG9uL3B5LXR5cGUuYwotaW5kZXggOWE2YjA3Ny4uNjU2ZDNhMSAxMDA2NDQKK2luZGV4IGMwMTA0 MjAuLjkyMDczZjYgMTAwNjQ0CiAtLS0gYS9nZGIvcHl0aG9uL3B5LXR5cGUuYwogKysrIGIvZ2Ri L3B5dGhvbi9weS10eXBlLmMKIEBAIC0yOSw2ICsyOSw4IEBACkBAIC03MjUwLDcgKzcyNTAsNyBA QCBpbmRleCA5YTZiMDc3Li42NTZkM2ExIDEwMDY0NAogIAogIAwKIGRpZmYgLS1naXQgYS9nZGIv cHl0aG9uL3B5LXZhbHVlLmMgYi9nZGIvcHl0aG9uL3B5LXZhbHVlLmMKLWluZGV4IDFhYTk0NDMu Ljc4NmM0NWEgMTAwNjQ0CitpbmRleCAyN2JmMTAxLi44YzA4ZjM5IDEwMDY0NAogLS0tIGEvZ2Ri L3B5dGhvbi9weS12YWx1ZS5jCiArKysgYi9nZGIvcHl0aG9uL3B5LXZhbHVlLmMKIEBAIC0yOCw2 ICsyOCw3IEBACkBAIC03MjYxLDcgKzcyNjEsNyBAQCBpbmRleCAxYWE5NDQzLi43ODZjNDVhIDEw MDY0NAogIAogICNpZmRlZiBIQVZFX1BZVEhPTgogIAotQEAgLTEyMjIsNiArMTIyMywxNyBAQCBn ZGJweV9pc192YWx1ZV9vYmplY3QgKFB5T2JqZWN0ICpvYmopCitAQCAtMTIxMSw2ICsxMjEyLDE3 IEBAIGdkYnB5X2lzX3ZhbHVlX29iamVjdCAoUHlPYmplY3QgKm9iaikKICAgIHJldHVybiBQeU9i amVjdF9UeXBlQ2hlY2sgKG9iaiwgJnZhbHVlX29iamVjdF90eXBlKTsKICB9CiAgCkBAIC03Mjc5 LDcgKzcyNzksNyBAQCBpbmRleCAxYWE5NDQzLi43ODZjNDVhIDEwMDY0NAogIHZvaWQKICBnZGJw eV9pbml0aWFsaXplX3ZhbHVlcyAodm9pZCkKICB7Ci1AQCAtMTIzMiw2ICsxMjQ0LDggQEAgZ2Ri cHlfaW5pdGlhbGl6ZV92YWx1ZXMgKHZvaWQpCitAQCAtMTIyMSw2ICsxMjMzLDggQEAgZ2RicHlf aW5pdGlhbGl6ZV92YWx1ZXMgKHZvaWQpCiAgICBQeU1vZHVsZV9BZGRPYmplY3QgKGdkYl9tb2R1 bGUsICJWYWx1ZSIsIChQeU9iamVjdCAqKSAmdmFsdWVfb2JqZWN0X3R5cGUpOwogIAogICAgdmFs dWVzX2luX3B5dGhvbiA9IE5VTEw7CkBAIC03Mjg5LDcgKzcyODksNyBAQCBpbmRleCAxYWE5NDQz Li43ODZjNDVhIDEwMDY0NAogIAogIAwKIGRpZmYgLS1naXQgYS9nZGIvcHl0aG9uL3B5dGhvbi5j IGIvZ2RiL3B5dGhvbi9weXRob24uYwotaW5kZXggMzc1MDQyYy4uYjZhZjY0NSAxMDA2NDQKK2lu ZGV4IGI3OTUwNGEuLjIwMTE2NjggMTAwNjQ0CiAtLS0gYS9nZGIvcHl0aG9uL3B5dGhvbi5jCiAr KysgYi9nZGIvcHl0aG9uL3B5dGhvbi5jCiBAQCAtNDksOCArNDksMTEgQEAgc3RhdGljIGludCBn ZGJweV9zaG91bGRfcHJpbnRfc3RhY2sgPSAxOwpAQCAtNzMwNCw3ICs3MzA0LDcgQEAgaW5kZXgg Mzc1MDQyYy4uYjZhZjY0NSAxMDA2NDQKICAKICBzdGF0aWMgUHlNZXRob2REZWYgR2RiTWV0aG9k c1tdOwogIAotQEAgLTcyOCw2ICs3MzEsNTMgQEAgZ2RicHlfcHJpbnRfc3RhY2sgKHZvaWQpCitA QCAtNzIyLDYgKzcyNSw1MyBAQCBnZGJweV9wcmludF9zdGFjayAodm9pZCkKICAKICAvKiBSZXR1 cm4gdGhlIGN1cnJlbnQgUHJvZ3NwYWNlLgogICAgIFRoZXJlIGFsd2F5cyBpcyBvbmUuICAqLwpA QCAtNzM1OCw3ICs3MzU4LDcgQEAgaW5kZXggMzc1MDQyYy4uYjZhZjY0NSAxMDA2NDQKICAKICBz dGF0aWMgUHlPYmplY3QgKgogIGdkYnB5X2dldF9jdXJyZW50X3Byb2dzcGFjZSAoUHlPYmplY3Qg KnVudXNlZDEsIFB5T2JqZWN0ICp1bnVzZWQyKQotQEAgLTExMDIsNiArMTE1Miw4IEBAIHN0YXRp YyBQeU1ldGhvZERlZiBHZGJNZXRob2RzW10gPQorQEAgLTExMDYsNiArMTE1Niw4IEBAIHN0YXRp YyBQeU1ldGhvZERlZiBHZGJNZXRob2RzW10gPQogICAgICAiR2V0IGEgdmFsdWUgZnJvbSBoaXN0 b3J5IiB9LAogICAgeyAiZXhlY3V0ZSIsIChQeUNGdW5jdGlvbikgZXhlY3V0ZV9nZGJfY29tbWFu ZCwgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlXT1JEUywKICAgICAgIkV4ZWN1dGUgYSBnZGIgY29t bWFuZCIgfSwKQEAgLTEwNjc4LDcgKzEwNjc4LDcgQEAgaW5kZXggMDAwMDAwMC4uMTUzYzE4Ygog K30KIGRpZmYgLS1naXQgYS9nZGIvdGVzdHN1aXRlL2dkYi5tdWx0aS93YXRjaHBvaW50LW11bHRp LmV4cCBiL2dkYi90ZXN0c3VpdGUvZ2RiLm11bHRpL3dhdGNocG9pbnQtbXVsdGkuZXhwCiBuZXcg ZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMC4uM2I1ZDA0MAoraW5kZXggMDAwMDAwMC4u OTdmYTZjZAogLS0tIC9kZXYvbnVsbAogKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIubXVsdGkvd2F0 Y2hwb2ludC1tdWx0aS5leHAKIEBAIC0wLDAgKzEsMTEzIEBACkBAIC0xMDc3Myw3ICsxMDc3Myw3 IEBAIGluZGV4IDAwMDAwMDAuLjNiNWQwNDAKICsJc2V0dXBfa2ZhaWwgYnJlYWtwb2ludHMvMTIz MTIgKi0qLSoKICsJcGFzcyAkdGVzdAogKyAgICB9Ci0rICAgIC1yZSAiSGFyZHdhcmUgYWNjZXNz IFxcKHJlYWQvd3JpdGVcXCkgd2F0Y2hwb2ludCBcWzAtOVxdKzogY1xyXG5cclxuVmFsdWUgPSAz XHJcbi4qIGluIF9fbnB0bF9kZWF0aF9ldmVudCAuKlxyXG4kZ2RiX3Byb21wdCAkIiB7CisrICAg IC1yZSAiSGFyZHdhcmUgYWNjZXNzIFxcKHJlYWQvd3JpdGVcXCkgd2F0Y2hwb2ludCBcWzAtOVxd KzogY1xyXG5cclxuVmFsdWUgPSAzXHJcbiguKiBpbiApP19fbnB0bF9kZWF0aF9ldmVudCAuKlxy XG4kZ2RiX3Byb21wdCAkIiB7CiArCXNldHVwX2tmYWlsIGJyZWFrcG9pbnRzLzEyMzEyICotKi0q CiArCWZhaWwgJHRlc3QKICsgICAgfQpAQCAtMTA3ODksNyArMTA3ODksNyBAQCBpbmRleCAwMDAw MDAwLi4zYjVkMDQwCiArCXNldHVwX2tmYWlsIGJyZWFrcG9pbnRzLzEyMzEyICotKi0qCiArCXBh c3MgJHRlc3QKICsgICAgfQotKyAgICAtcmUgIkhhcmR3YXJlIGFjY2VzcyBcXChyZWFkL3dyaXRl XFwpIHdhdGNocG9pbnQgXFswLTlcXSs6IGJcclxuXHJcblZhbHVlID0gMlxyXG4uKiBpbiBfX25w dGxfZGVhdGhfZXZlbnQgLipcclxuJGdkYl9wcm9tcHQgJCIgeworKyAgICAtcmUgIkhhcmR3YXJl IGFjY2VzcyBcXChyZWFkL3dyaXRlXFwpIHdhdGNocG9pbnQgXFswLTlcXSs6IGJcclxuXHJcblZh bHVlID0gMlxyXG4oLiogaW4gKT9fX25wdGxfZGVhdGhfZXZlbnQgLipcclxuJGdkYl9wcm9tcHQg JCIgewogKwlzZXR1cF9rZmFpbCBicmVha3BvaW50cy8xMjMxMiAqLSotKgogKwlmYWlsICR0ZXN0 CiArICAgIH0KQEAgLTExODQ2LDcgKzExODQ2LDcgQEAgaW5kZXggODkxZGEzNy4uMjM2YzVjYSAx MDA2NDQKICAgICAgc2V0IHBhc2NhbF9pbml0X2RvbmUgMQogIH0gICAKIGRpZmYgLS1naXQgYS9n ZGIvdG9wLmMgYi9nZGIvdG9wLmMKLWluZGV4IGQxNGYzMDguLjc2MDVmODUgMTAwNjQ0CitpbmRl eCBkZjJiMTYzLi5hMjA1ZDAwIDEwMDY0NAogLS0tIGEvZ2RiL3RvcC5jCiArKysgYi9nZGIvdG9w LmMKIEBAIC0zNDMsNiArMzQzLDcgQEAgdm9pZApAQCAtMTE5ODMsNyArMTE5ODMsNyBAQCBpbmRl eCAyNjU1MzJjLi4xZTQxOWRkIDEwMDY0NAogIH0KICAKIGRpZmYgLS1naXQgYS9nZGIvdmFsb3Bz LmMgYi9nZGIvdmFsb3BzLmMKLWluZGV4IDE5ZDUyMzguLmM5ZDcyMWEgMTAwNjQ0CitpbmRleCAy NGMyMjY5Li4yMWZiMzVmIDEwMDY0NAogLS0tIGEvZ2RiL3ZhbG9wcy5jCiArKysgYi9nZGIvdmFs b3BzLmMKIEBAIC0zOCw2ICszOCw3IEBACkBAIC0xMjE0MSw3ICsxMjE0MSw3IEBAIGluZGV4IDE5 ZDUyMzguLmM5ZDcyMWEgMTAwNjQ0CiAgICAgIHsKICAgICAgICBpbnQgaTsKIGRpZmYgLS1naXQg YS9nZGIvdmFscHJpbnQuYyBiL2dkYi92YWxwcmludC5jCi1pbmRleCBjOThlMzE1Li5kZTlkZTEw IDEwMDY0NAoraW5kZXggYjZiOTZkNC4uOTM0YmY5YyAxMDA2NDQKIC0tLSBhL2dkYi92YWxwcmlu dC5jCiArKysgYi9nZGIvdmFscHJpbnQuYwogQEAgLTM2LDYgKzM2LDcgQEAKQEAgLTEyMTYwLDcg KzEyMTYwLDcgQEAgaW5kZXggYzk4ZTMxNS4uZGU5ZGUxMCAxMDA2NDQKICAgICAgY2FzZSBUWVBF X0NPREVfQklUU1RSSU5HOgogICAgICAgIHJldHVybiAwOwogICAgICBkZWZhdWx0OgotQEAgLTEx MTgsNiArMTExOCw3IEBAIHZhbF9wcmludF9hcnJheV9lbGVtZW50cyAoc3RydWN0IHR5cGUgKnR5 cGUsCitAQCAtMTE2NSw2ICsxMTY1LDcgQEAgdmFsX3ByaW50X2FycmF5X2VsZW1lbnRzIChzdHJ1 Y3QgdHlwZSAqdHlwZSwKICB7CiAgICB1bnNpZ25lZCBpbnQgdGhpbmdzX3ByaW50ZWQgPSAwOwog ICAgdW5zaWduZWQgbGVuOwpAQCAtMTIxNjgsNyArMTIxNjgsNyBAQCBpbmRleCBjOThlMzE1Li5k ZTlkZTEwIDEwMDY0NAogICAgc3RydWN0IHR5cGUgKmVsdHR5cGUsICppbmRleF90eXBlOwogICAg dW5zaWduZWQgZWx0bGVuOwogICAgLyogUG9zaXRpb24gb2YgdGhlIGFycmF5IGVsZW1lbnQgd2Ug YXJlIGV4YW1pbmluZyB0byBzZWUKLUBAIC0xMTI2LDkgKzExMjcsMzMgQEAgdmFsX3ByaW50X2Fy cmF5X2VsZW1lbnRzIChzdHJ1Y3QgdHlwZSAqdHlwZSwKK0BAIC0xMTczLDkgKzExNzQsMzMgQEAg dmFsX3ByaW50X2FycmF5X2VsZW1lbnRzIChzdHJ1Y3QgdHlwZSAqdHlwZSwKICAgIC8qIE51bWJl ciBvZiByZXBldGl0aW9ucyB3ZSBoYXZlIGRldGVjdGVkIHNvIGZhci4gICovCiAgICB1bnNpZ25l ZCBpbnQgcmVwczsKICAgIExPTkdFU1QgbG93X2JvdW5kLCBoaWdoX2JvdW5kOwpAQCAtMTIyMDQs NyArMTIyMDQsNyBAQCBpbmRleCBjOThlMzE1Li5kZTlkZTEwIDEwMDY0NAogICAgaW5kZXhfdHlw ZSA9IFRZUEVfSU5ERVhfVFlQRSAodHlwZSk7CiAgCiAgICBpZiAoZ2V0X2FycmF5X2JvdW5kcyAo dHlwZSwgJmxvd19ib3VuZCwgJmhpZ2hfYm91bmQpKQotQEAgLTEyMDcsNiArMTIzMiw4IEBAIHZh bF9wcmludF9hcnJheV9lbGVtZW50cyAoc3RydWN0IHR5cGUgKnR5cGUsCitAQCAtMTI1NCw2ICsx Mjc5LDggQEAgdmFsX3ByaW50X2FycmF5X2VsZW1lbnRzIChzdHJ1Y3QgdHlwZSAqdHlwZSwKICAg ICAgewogICAgICAgIGZwcmludGZfZmlsdGVyZWQgKHN0cmVhbSwgIi4uLiIpOwogICAgICB9CkBA IC0xMjIxNCw3ICsxMjIxNCw3IEBAIGluZGV4IGM5OGUzMTUuLmRlOWRlMTAgMTAwNjQ0CiAgCiAg LyogUmVhZCBMRU4gYnl0ZXMgb2YgdGFyZ2V0IG1lbW9yeSBhdCBhZGRyZXNzIE1FTUFERFIsIHBs YWNpbmcgdGhlCiBkaWZmIC0tZ2l0IGEvZ2RiL3ZhbHVlLmMgYi9nZGIvdmFsdWUuYwotaW5kZXgg ZGI4M2VhMi4uM2Q0NzU1NiAxMDA2NDQKK2luZGV4IGUyNjI3MGMuLjI5YmIwY2EgMTAwNjQ0CiAt LS0gYS9nZGIvdmFsdWUuYwogKysrIGIvZ2RiL3ZhbHVlLmMKIEBAIC0zOSw2ICszOSw3IEBACkBA IC0xMjIyNSw3ICsxMjIyNSw3IEBAIGluZGV4IGRiODNlYTIuLjNkNDc1NTYgMTAwNjQ0CiAgCiAg I2luY2x1ZGUgInB5dGhvbi9weXRob24uaCIKICAKLUBAIC04NjMsMTIgKzg2NCwxNSBAQCB2b2lk CitAQCAtODcwLDEyICs4NzEsMTUgQEAgdm9pZAogIHNldF92YWx1ZV9jb21wb25lbnRfbG9jYXRp b24gKHN0cnVjdCB2YWx1ZSAqY29tcG9uZW50LAogIAkJCSAgICAgIGNvbnN0IHN0cnVjdCB2YWx1 ZSAqd2hvbGUpCiAgewpAQCAtMTIyNDEsNyArMTIyNDEsNyBAQCBpbmRleCBkYjgzZWEyLi4zZDQ3 NTU2IDEwMDY0NAogICAgaWYgKHdob2xlLT5sdmFsID09IGx2YWxfY29tcHV0ZWQpCiAgICAgIHsK ICAgICAgICBzdHJ1Y3QgbHZhbF9mdW5jcyAqZnVuY3MgPSB3aG9sZS0+bG9jYXRpb24uY29tcHV0 ZWQuZnVuY3M7Ci1AQCAtODc2LDYgKzg4MCwxMiBAQCBzZXRfdmFsdWVfY29tcG9uZW50X2xvY2F0 aW9uIChzdHJ1Y3QgdmFsdWUgKmNvbXBvbmVudCwKK0BAIC04ODMsNiArODg3LDEyIEBAIHNldF92 YWx1ZV9jb21wb25lbnRfbG9jYXRpb24gKHN0cnVjdCB2YWx1ZSAqY29tcG9uZW50LAogICAgICAg IGlmIChmdW5jcy0+Y29weV9jbG9zdXJlKQogICAgICAgICAgY29tcG9uZW50LT5sb2NhdGlvbi5j b21wdXRlZC5jbG9zdXJlID0gZnVuY3MtPmNvcHlfY2xvc3VyZSAod2hvbGUpOwogICAgICB9CkBA IC0xMjI1NCw3ICsxMjI1NCw3IEBAIGluZGV4IGRiODNlYTIuLjNkNDc1NTYgMTAwNjQ0CiAgfQog IAogIAwKLUBAIC0xMDA5LDYgKzEwMTksMjkgQEAgc2hvd192YWx1ZXMgKGNoYXIgKm51bV9leHAs IGludCBmcm9tX3R0eSkKK0BAIC0xMDE2LDYgKzEwMjYsMjkgQEAgc2hvd192YWx1ZXMgKGNoYXIg Km51bV9leHAsIGludCBmcm9tX3R0eSkKICAgICAgICBudW1fZXhwWzFdID0gJ1wwJzsKICAgICAg fQogIH0KQEAgLTEyMjg0LDcgKzEyMjg0LDcgQEAgaW5kZXggZGI4M2VhMi4uM2Q0NzU1NiAxMDA2 NDQKICAMCiAgLyogSW50ZXJuYWwgdmFyaWFibGVzLiAgVGhlc2UgYXJlIHZhcmlhYmxlcyB3aXRo aW4gdGhlIGRlYnVnZ2VyCiAgICAgdGhhdCBob2xkIHZhbHVlcyBhc3NpZ25lZCBieSBkZWJ1Z2dl ciBjb21tYW5kcy4KLUBAIC0xNTA0LDYgKzE1MzcsNDAgQEAgY2FsbF9pbnRlcm5hbF9mdW5jdGlv biAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsCitAQCAtMTUxMSw2ICsxNTQ0LDQwIEBAIGNhbGxf aW50ZXJuYWxfZnVuY3Rpb24gKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLAogICAgcmV0dXJuICgq aWZuLT5oYW5kbGVyKSAoZ2RiYXJjaCwgbGFuZ3VhZ2UsIGlmbi0+Y29va2llLCBhcmdjLCBhcmd2 KTsKICB9CiAgCkBAIC0xMjMyNSw3ICsxMjMyNSw3IEBAIGluZGV4IGRiODNlYTIuLjNkNDc1NTYg MTAwNjQ0CiAgLyogVGhlICdmdW5jdGlvbicgY29tbWFuZC4gIFRoaXMgZG9lcyBub3RoaW5nIC0t IGl0IGlzIGp1c3QgYQogICAgIHBsYWNlaG9sZGVyIHRvIGxldCAiaGVscCBmdW5jdGlvbiBOQU1F IiB3b3JrLiAgVGhpcyBpcyBhbHNvIHVzZWQgYXMKICAgICB0aGUgaW1wbGVtZW50YXRpb24gb2Yg dGhlIHN1Yi1jb21tYW5kIHRoYXQgaXMgY3JlYXRlZCB3aGVuCi1AQCAtMTU1MSwxMSArMTYxOCwx MCBAQCBwcmVzZXJ2ZV9vbmVfdmFsdWUgKHN0cnVjdCB2YWx1ZSAqdmFsdWUsIHN0cnVjdCBvYmpm aWxlICpvYmpmaWxlLAorQEAgLTE1NTgsMTEgKzE2MjUsMTAgQEAgcHJlc2VydmVfb25lX3ZhbHVl IChzdHJ1Y3QgdmFsdWUgKnZhbHVlLCBzdHJ1Y3Qgb2JqZmlsZSAqb2JqZmlsZSwKICAJCSAgICBo dGFiX3QgY29waWVkX3R5cGVzKQogIHsKICAgIGlmIChUWVBFX09CSkZJTEUgKHZhbHVlLT50eXBl KSA9PSBvYmpmaWxlKQpAQCAtMTIzMzksNyArMTIzMzksNyBAQCBpbmRleCBkYjgzZWEyLi4zZDQ3 NTU2IDEwMDY0NAogIAkJCQkJCSBjb3BpZWRfdHlwZXMpOwogIH0KICAKLUBAIC0xNTcwLDEzICsx NjM2LDEzIEBAIHByZXNlcnZlX29uZV9pbnRlcm5hbHZhciAoc3RydWN0IGludGVybmFsdmFyICp2 YXIsIHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlLAorQEAgLTE1NzcsMTMgKzE2NDMsMTMgQEAgcHJl c2VydmVfb25lX2ludGVybmFsdmFyIChzdHJ1Y3QgaW50ZXJuYWx2YXIgKnZhciwgc3RydWN0IG9i amZpbGUgKm9iamZpbGUsCiAgICAgIGNhc2UgSU5URVJOQUxWQVJfSU5URUdFUjoKICAgICAgICBp ZiAodmFyLT51LmludGVnZXIudHlwZSAmJiBUWVBFX09CSkZJTEUgKHZhci0+dS5pbnRlZ2VyLnR5 cGUpID09IG9iamZpbGUpCiAgCXZhci0+dS5pbnRlZ2VyLnR5cGUKQEAgLTEyMzU1LDcgKzEyMzU1 LDcgQEAgaW5kZXggZGI4M2VhMi4uM2Q0NzU1NiAxMDA2NDQKICAgICAgICBicmVhazsKICAKICAg ICAgY2FzZSBJTlRFUk5BTFZBUl9WQUxVRToKLUBAIC0yNDQyLDcgKzI1MDgsMjQgQEAgdmFsdWVf ZnJvbV9kZWNmbG9hdCAoc3RydWN0IHR5cGUgKnR5cGUsIGNvbnN0IGdkYl9ieXRlICpkZWMpCitA QCAtMjQ0OSw3ICsyNTE1LDI0IEBAIHZhbHVlX2Zyb21fZGVjZmxvYXQgKHN0cnVjdCB0eXBlICp0 eXBlLCBjb25zdCBnZGJfYnl0ZSAqZGVjKQogIHN0cnVjdCB2YWx1ZSAqCiAgY29lcmNlX3JlZiAo c3RydWN0IHZhbHVlICphcmcpCiAgewpAQCAtMTIzODEsNyArMTIzODEsNyBAQCBpbmRleCBkYjgz ZWEyLi4zZDQ3NTU2IDEwMDY0NAogIAogICAgaWYgKFRZUEVfQ09ERSAodmFsdWVfdHlwZV9hcmdf dG1wKSA9PSBUWVBFX0NPREVfUkVGKQogICAgICBhcmcgPSB2YWx1ZV9hdF9sYXp5IChUWVBFX1RB UkdFVF9UWVBFICh2YWx1ZV90eXBlX2FyZ190bXApLAotQEAgLTI1NDAsNCArMjYyMyw4IEBAIFZB UklBQkxFIGlzIGFscmVhZHkgaW5pdGlhbGl6ZWQuIikpOworQEAgLTI1NDcsNCArMjYzMCw4IEBA IFZBUklBQkxFIGlzIGFscmVhZHkgaW5pdGlhbGl6ZWQuIikpOwogICAgYWRkX3ByZWZpeF9jbWQg KCJmdW5jdGlvbiIsIG5vX2NsYXNzLCBmdW5jdGlvbl9jb21tYW5kLCBfKCJcCiAgUGxhY2Vob2xk ZXIgY29tbWFuZCBmb3Igc2hvd2luZyBoZWxwIG9uIGNvbnZlbmllbmNlIGZ1bmN0aW9ucy4iKSwK ICAJCSAgJmZ1bmN0aW9ubGlzdCwgImZ1bmN0aW9uICIsIDAsICZjbWRsaXN0KTsKQEAgLTEyMzkx LDEwICsxMjM5MSwxMCBAQCBpbmRleCBkYjgzZWEyLi4zZDQ3NTU2IDEwMDY0NAogKyAgb2JzZXJ2 ZXJfYXR0YWNoX21hcmtfdXNlZCAodmFsdWVfdHlwZXNfbWFya191c2VkKTsKICB9CiBkaWZmIC0t Z2l0IGEvZ2RiL3ZhbHVlLmggYi9nZGIvdmFsdWUuaAotaW5kZXggMTZmNDY0Ni4uNTAxZGY4NiAx MDA2NDQKK2luZGV4IGFhOGZmM2MuLjJiNDU0M2MgMTAwNjQ0CiAtLS0gYS9nZGIvdmFsdWUuaAog KysrIGIvZ2RiL3ZhbHVlLmgKLUBAIC0zODksNiArMzg5LDEwIEBAIGV4dGVybiBzdHJ1Y3QgdmFs dWUgKnZhbHVlX2Zyb21fZG91YmxlIChzdHJ1Y3QgdHlwZSAqdHlwZSwgRE9VQkxFU1QgbnVtKTsK K0BAIC0zOTUsNiArMzk1LDEwIEBAIGV4dGVybiBzdHJ1Y3QgdmFsdWUgKnZhbHVlX2Zyb21fZG91 YmxlIChzdHJ1Y3QgdHlwZSAqdHlwZSwgRE9VQkxFU1QgbnVtKTsKICBleHRlcm4gc3RydWN0IHZh bHVlICp2YWx1ZV9mcm9tX2RlY2Zsb2F0IChzdHJ1Y3QgdHlwZSAqdHlwZSwKICAJCQkJCSAgY29u c3QgZ2RiX2J5dGUgKmRlY2J5dGVzKTsKICAKCmRpZmYgLS1naXQgYS9nZGItYno1NjI3NjMtcHJl dHR5LXByaW50LTJkLXZlY3RvcnMucGF0Y2ggYi9nZGItYno1NjI3NjMtcHJldHR5LXByaW50LTJk LXZlY3RvcnMucGF0Y2gKaW5kZXggY2VkNzhkMi4uM2M1ZTBkYiAxMDA2NDQKLS0tIGEvZ2RiLWJ6 NTYyNzYzLXByZXR0eS1wcmludC0yZC12ZWN0b3JzLnBhdGNoCisrKyBiL2dkYi1iejU2Mjc2My1w cmV0dHktcHJpbnQtMmQtdmVjdG9ycy5wYXRjaApAQCAtMTIsMTAgKzEyLDEwIEBACiAJKiBnZGIu cHl0aG9uL3ByMTA2NTkuZXhwLiAgTmV3IGZpbGUuCiAJKiBnZGIucHl0aG9uL3ByMTA2NTkucHk6 IE5ldyBmaWxlLgogCi1JbmRleDogZ2RiLTcuMi41MC4yMDEwMTExNi9nZGIvdmFscHJpbnQuaAor SW5kZXg6IGdkYi03LjIuNTAuMjAxMTAyMDYvZ2RiL3ZhbHByaW50LmgKID09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t LSBnZGItNy4yLjUwLjIwMTAxMTE2Lm9yaWcvZ2RiL3ZhbHByaW50LmgJMjAxMC0xMS0wMyAxNToy MTo1Ny4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnZGItNy4yLjUwLjIwMTAxMTE2L2dkYi92YWxwcmlu dC5oCTIwMTAtMTEtMTYgMDg6MzE6NTYuMDAwMDAwMDAwICswMTAwCistLS0gZ2RiLTcuMi41MC4y MDExMDIwNi5vcmlnL2dkYi92YWxwcmludC5oCTIwMTEtMDEtMjUgMTg6NTk6MDAuMDAwMDAwMDAw ICswMTAwCisrKysgZ2RiLTcuMi41MC4yMDExMDIwNi9nZGIvdmFscHJpbnQuaAkyMDExLTAyLTA2 IDIwOjU1OjU5LjAwMDAwMDAwMCArMDEwMAogQEAgLTkwLDYgKzkwLDkgQEAgc3RydWN0IHZhbHVl X3ByaW50X29wdGlvbnMKICAKICAgIC8qIElmIG5vbnplcm8sIHByaW50IHRoZSB2YWx1ZSBpbiAi c3VtbWFyeSIgZm9ybS4gICovCkBAIC0yNiwyMSArMjYsMjAgQEAgSW5kZXg6IGdkYi03LjIuNTAu MjAxMDExMTYvZ2RiL3ZhbHByaW50LmgKICB9OwogIAogIC8qIFRoZSBnbG9iYWwgcHJpbnQgb3B0 aW9ucyBzZXQgYnkgdGhlIHVzZXIuICBJbiBnZW5lcmFsIHRoaXMgc2hvdWxkCi1JbmRleDogZ2Ri LTcuMi41MC4yMDEwMTExNi9nZGIvcHl0aG9uL3B5LXByZXR0eXByaW50LmMKK0luZGV4OiBnZGIt Ny4yLjUwLjIwMTEwMjA2L2dkYi9weXRob24vcHktcHJldHR5cHJpbnQuYwogPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot LS0tIGdkYi03LjIuNTAuMjAxMDExMTYub3JpZy9nZGIvcHl0aG9uL3B5LXByZXR0eXByaW50LmMJ MjAxMC0xMS0xMiAyMTo0OTo0Mi4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnZGItNy4yLjUwLjIwMTAx MTE2L2dkYi9weXRob24vcHktcHJldHR5cHJpbnQuYwkyMDEwLTExLTE2IDA4OjM2OjMyLjAwMDAw MDAwMCArMDEwMAotQEAgLTQ5OSw3ICs0OTksOCBAQCBwcmludF9jaGlsZHJlbiAoUHlPYmplY3Qg KnByaW50ZXIsIGNvbnN0CistLS0gZ2RiLTcuMi41MC4yMDExMDIwNi5vcmlnL2dkYi9weXRob24v cHktcHJldHR5cHJpbnQuYwkyMDExLTAxLTI2IDIxOjU4OjQ4LjAwMDAwMDAwMCArMDEwMAorKysr IGdkYi03LjIuNTAuMjAxMTAyMDYvZ2RiL3B5dGhvbi9weS1wcmV0dHlwcmludC5jCTIwMTEtMDIt MDYgMjA6NTY6MzAuMDAwMDAwMDAwICswMTAwCitAQCAtNTAxLDcgKzUwMSw3IEBAIHByaW50X2No aWxkcmVuIChQeU9iamVjdCAqcHJpbnRlciwgY29uc3QKICAKICAgIC8qIFVzZSB0aGUgcHJldHR5 cHJpbnRfYXJyYXlzIG9wdGlvbiBpZiB3ZSBhcmUgcHJpbnRpbmcgYW4gYXJyYXksCiAgICAgICBh bmQgdGhlIHByZXR0eSBvcHRpb24gb3RoZXJ3aXNlLiAgKi8KLS0gIHByZXR0eSA9IGlzX2FycmF5 ID8gb3B0aW9ucy0+cHJldHR5cHJpbnRfYXJyYXlzIDogb3B0aW9ucy0+cHJldHR5OwotKyAgcHJl dHR5ID0gKGlzX2FycmF5IHx8IG9wdGlvbnMtPnByZXR0eXByaW50X21hdHJpeCkgPwotKyAgICBv cHRpb25zLT5wcmV0dHlwcmludF9hcnJheXMgOiBvcHRpb25zLT5wcmV0dHk7Ci0gCi0gICAvKiBN YW51ZmFjdHVyZSBhIGR1bW15IFB5dGhvbiBmcmFtZSB0byB3b3JrIGFyb3VuZCBQeXRob24gMi40 IGJ1ZywKLSAgICAgIHdoZXJlIGl0IGluc2lzdHMgb24gaGF2aW5nIGEgbm9uLU5VTEwgdHN0YXRl LT5mcmFtZSB3aGVuCi1AQCAtNTExLDYgKzUxMiw5IEBAIHByaW50X2NoaWxkcmVuIChQeU9iamVj dCAqcHJpbnRlciwgY29uc3QKKy0gIGlmIChpc19hcnJheSkKKysgIGlmIChpc19hcnJheSB8fCBv cHRpb25zLT5wcmV0dHlwcmludF9tYXRyaXgpCisgICAgIHByZXR0eSA9IG9wdGlvbnMtPnByZXR0 eXByaW50X2FycmF5czsKKyAgIGVsc2UKKyAgICAgeworQEAgLTUyMSw2ICs1MjEsOSBAQCBwcmlu dF9jaGlsZHJlbiAoUHlPYmplY3QgKnByaW50ZXIsIGNvbnN0CiAgICAgICAgZ290byBkb25lOwog ICAgICB9CiAgICBtYWtlX2NsZWFudXBfcHlfZGVjcmVmIChmcmFtZSk7CkBAIC01MCw3ICs0OSw3 IEBAIEluZGV4OiBnZGItNy4yLjUwLjIwMTAxMTE2L2dkYi9weXRob24vcHktcHJldHR5cHJpbnQu YwogIAogICAgZG9uZV9mbGFnID0gMDsKICAgIGZvciAoaSA9IDA7IGkgPCBvcHRpb25zLT5wcmlu dF9tYXg7ICsraSkKLUBAIC01NDUsMTIgKzU0OSwyMyBAQCBwcmludF9jaGlsZHJlbiAoUHlPYmpl Y3QgKnByaW50ZXIsIGNvbnN0CitAQCAtNTU1LDEyICs1NTgsMjMgQEAgcHJpbnRfY2hpbGRyZW4g KFB5T2JqZWN0ICpwcmludGVyLCBjb25zdAogIAkgMy4gT3RoZXIuICBBbHdheXMgcHJpbnQgYSAi LCIuICAqLwogICAgICAgIGlmIChpID09IDApCiAgCXsKQEAgLTc5LDcgKzc4LDcgQEAgSW5kZXg6 IGdkYi03LjIuNTAuMjAxMDExMTYvZ2RiL3B5dGhvbi9weS1wcmV0dHlwcmludC5jCiAgICAgICAg ZWxzZSBpZiAoISBpc19tYXAgfHwgaSAlIDIgPT0gMCkKICAJZnB1dHNfZmlsdGVyZWQgKHByZXR0 eSA/ICIsIiA6ICIsICIsIHN0cmVhbSk7CiAgCi1AQCAtNTc5LDYgKzU5NCwxMCBAQCBwcmludF9j aGlsZHJlbiAoUHlPYmplY3QgKnByaW50ZXIsIGNvbnN0CitAQCAtNTg5LDYgKzYwMywxMCBAQCBw cmludF9jaGlsZHJlbiAoUHlPYmplY3QgKnByaW50ZXIsIGNvbnN0CiAgCiAgICAgICAgaWYgKGlz X21hcCAmJiBpICUgMiA9PSAwKQogIAlmcHV0c19maWx0ZXJlZCAoIlsiLCBzdHJlYW0pOwpAQCAt OTAsNyArODksNyBAQCBJbmRleDogZ2RiLTcuMi41MC4yMDEwMTExNi9nZGIvcHl0aG9uL3B5LXBy ZXR0eXByaW50LmMKICAgICAgICBlbHNlIGlmIChpc19hcnJheSkKICAJewogIAkgIC8qIFdlIHBy aW50IHRoZSBpbmRleCwgbm90IHdoYXRldmVyIHRoZSBjaGlsZCBtZXRob2QKLUBAIC02NTUsNyAr Njc0LDEyIEBAIHByaW50X2NoaWxkcmVuIChQeU9iamVjdCAqcHJpbnRlciwgY29uc3QKK0BAIC02 NjcsNyArNjg1LDEyIEBAIHByaW50X2NoaWxkcmVuIChQeU9iamVjdCAqcHJpbnRlciwgY29uc3QK ICAJICBmcHV0c19maWx0ZXJlZCAoIlxuIiwgc3RyZWFtKTsKICAJICBwcmludF9zcGFjZXNfZmls dGVyZWQgKDIgKiByZWN1cnNlLCBzdHJlYW0pOwogIAl9CkBAIC0xMDQsNyArMTAzLDcgQEAgSW5k ZXg6IGdkYi03LjIuNTAuMjAxMDExMTYvZ2RiL3B5dGhvbi9weS1wcmV0dHlwcmludC5jCiAgICAg IH0KICAKICAgZG9uZToKLUBAIC02NzgsNiArNzAyLDcgQEAgYXBwbHlfdmFsX3ByZXR0eV9wcmlu dGVyIChzdHJ1Y3QgdHlwZSAqdAorQEAgLTY5MCw2ICs3MTMsNyBAQCBhcHBseV92YWxfcHJldHR5 X3ByaW50ZXIgKHN0cnVjdCB0eXBlICp0CiAgICBzdHJ1Y3QgY2xlYW51cCAqY2xlYW51cHM7CiAg ICBpbnQgcmVzdWx0ID0gMDsKICAgIGVudW0gc3RyaW5nX3JlcHJfcmVzdWx0IHByaW50X3Jlc3Vs dDsKQEAgLTExMiw3ICsxMTEsNyBAQCBJbmRleDogZ2RiLTcuMi41MC4yMDEwMTExNi9nZGIvcHl0 aG9uL3B5LXByZXR0eXByaW50LmMKICAgIGNsZWFudXBzID0gZW5zdXJlX3B5dGhvbl9lbnYgKGdk YmFyY2gsIGxhbmd1YWdlKTsKICAKICAgIC8qIEluc3RhbnRpYXRlIHRoZSBwcmludGVyLiAgKi8K LUBAIC03MDksOSArNzM0LDIxIEBAIGFwcGx5X3ZhbF9wcmV0dHlfcHJpbnRlciAoc3RydWN0IHR5 cGUgKnQKK0BAIC03MjEsOSArNzQ1LDIxIEBAIGFwcGx5X3ZhbF9wcmV0dHlfcHJpbnRlciAoc3Ry dWN0IHR5cGUgKnQKICAKICAgIC8qIElmIHdlIGFyZSBwcmludGluZyBhIG1hcCwgd2Ugd2FudCBz b21lIHNwZWNpYWwgZm9ybWF0dGluZy4gICovCiAgICBoaW50ID0gZ2RicHlfZ2V0X2Rpc3BsYXlf aGludCAocHJpbnRlcik7CkBAIC0xMzQsMTAgKzEzMywxMCBAQCBJbmRleDogZ2RiLTcuMi41MC4y MDEwMTExNi9nZGIvcHl0aG9uL3B5LXByZXR0eXByaW50LmMKICAgIHByaW50X3Jlc3VsdCA9IHBy aW50X3N0cmluZ19yZXByIChwcmludGVyLCBoaW50LCBzdHJlYW0sIHJlY3Vyc2UsCiAgCQkJCSAg ICBvcHRpb25zLCBsYW5ndWFnZSwgZ2RiYXJjaCk7CiAgICBpZiAocHJpbnRfcmVzdWx0ICE9IHN0 cmluZ19yZXByX2Vycm9yKQotSW5kZXg6IGdkYi03LjIuNTAuMjAxMDExMTYvZ2RiL3Rlc3RzdWl0 ZS9nZGIucHl0aG9uL3ByMTA2NTkuY2MKK0luZGV4OiBnZGItNy4yLjUwLjIwMTEwMjA2L2dkYi90 ZXN0c3VpdGUvZ2RiLnB5dGhvbi9wcjEwNjU5LmNjCiA9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAtLS0gL2Rldi9udWxs CTE5NzAtMDEtMDEgMDA6MDA6MDAuMDAwMDAwMDAwICswMDAwCi0rKysgZ2RiLTcuMi41MC4yMDEw MTExNi9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHIxMDY1OS5jYwkyMDEwLTExLTE2IDA4OjMx OjU2LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjIuNTAuMjAxMTAyMDYvZ2RiL3Rlc3RzdWl0 ZS9nZGIucHl0aG9uL3ByMTA2NTkuY2MJMjAxMS0wMi0wNiAyMDo1NTo1OS4wMDAwMDAwMDAgKzAx MDAKIEBAIC0wLDAgKzEsNDMgQEAKICsjaW5jbHVkZSA8bGlzdD4KICsjaW5jbHVkZSA8dmVjdG9y PiAgLy8gL3Vzci9pbmNsdWRlL2MrKy80LjQuMS9iaXRzL3ZlY3Rvci50Y2MKQEAgLTE4MiwxMCAr MTgxLDEwIEBAIEluZGV4OiBnZGItNy4yLjUwLjIwMTAxMTE2L2dkYi90ZXN0c3VpdGUvZ2RiLnB5 dGhvbi9wcjEwNjU5LmNjCiArICAKICsgIHJldHVybiAwOyAgLy8gYnJlYWsKICt9Ci1JbmRleDog Z2RiLTcuMi41MC4yMDEwMTExNi9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHIxMDY1OS5leHAK K0luZGV4OiBnZGItNy4yLjUwLjIwMTEwMjA2L2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9wcjEw NjU5LmV4cAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQogLS0tIC9kZXYvbnVsbAkxOTcwLTAxLTAxIDAwOjAwOjAwLjAw MDAwMDAwMCArMDAwMAotKysrIGdkYi03LjIuNTAuMjAxMDExMTYvZ2RiL3Rlc3RzdWl0ZS9nZGIu cHl0aG9uL3ByMTA2NTkuZXhwCTIwMTAtMTEtMTYgMDg6MzE6NTYuMDAwMDAwMDAwICswMTAwCisr KysgZ2RiLTcuMi41MC4yMDExMDIwNi9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHIxMDY1OS5l eHAJMjAxMS0wMi0wNiAyMDo1NTo1OS4wMDAwMDAwMDAgKzAxMDAKIEBAIC0wLDAgKzEsODIgQEAK ICsjQ29weXJpZ2h0IDIwMTAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiArCkBAIC0y NjksMTAgKzI2OCwxMCBAQCBJbmRleDogZ2RiLTcuMi41MC4yMDEwMTExNi9nZGIvdGVzdHN1aXRl L2dkYi5weXRob24vcHIxMDY1OS5leHAKICsjIAogKwogKwotSW5kZXg6IGdkYi03LjIuNTAuMjAx MDExMTYvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3ByMTA2NTkucHkKK0luZGV4OiBnZGItNy4y LjUwLjIwMTEwMjA2L2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9wcjEwNjU5LnB5CiA9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09CiAtLS0gL2Rldi9udWxsCTE5NzAtMDEtMDEgMDA6MDA6MDAuMDAwMDAwMDAwICswMDAwCi0r KysgZ2RiLTcuMi41MC4yMDEwMTExNi9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHIxMDY1OS5w eQkyMDEwLTExLTE2IDA4OjMxOjU2LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjIuNTAuMjAx MTAyMDYvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3ByMTA2NTkucHkJMjAxMS0wMi0wNiAyMDo1 NTo1OS4wMDAwMDAwMDAgKzAxMDAKIEBAIC0wLDAgKzEsMTA5IEBACiArIyBDb3B5cmlnaHQgKEMp IDIwMDgsIDIwMDkgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiArCkBAIC0zODMsMTAg KzM4MiwxMCBAQCBJbmRleDogZ2RiLTcuMi41MC4yMDEwMTExNi9nZGIvdGVzdHN1aXRlL2dkYi5w eXRob24vcHIxMDY1OS5weQogK2Zha2VfcHJldHR5X3ByaW50ZXJzX2RpY3QgPSB7fQogKwogK2J1 aWxkX2xpYmZha2VjeHhfZGljdGlvbmFyeSAoKQotSW5kZXg6IGdkYi03LjIuNTAuMjAxMDExMTYv Z2RiL3ZhbHByaW50LmMKK0luZGV4OiBnZGItNy4yLjUwLjIwMTEwMjA2L2dkYi92YWxwcmludC5j CiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuMi41MC4yMDEwMTExNi5vcmlnL2dkYi92YWxwcmludC5j CTIwMTAtMTEtMTYgMDc6NTQ6MDAuMDAwMDAwMDAwICswMTAwCi0rKysgZ2RiLTcuMi41MC4yMDEw MTExNi9nZGIvdmFscHJpbnQuYwkyMDEwLTExLTE2IDA4OjMxOjU2LjAwMDAwMDAwMCArMDEwMAor LS0tIGdkYi03LjIuNTAuMjAxMTAyMDYub3JpZy9nZGIvdmFscHJpbnQuYwkyMDExLTAyLTA2IDIw OjU1OjUyLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjIuNTAuMjAxMTAyMDYvZ2RiL3ZhbHBy aW50LmMJMjAxMS0wMi0wNiAyMDo1NTo1OS4wMDAwMDAwMDAgKzAxMDAKIEBAIC04NSw3ICs4NSw4 IEBAIHN0cnVjdCB2YWx1ZV9wcmludF9vcHRpb25zIHVzZXJfcHJpbnRfb3AKICAgIDEsCQkJCS8q IHN0YXRpY19maWVsZF9wcmludCAqLwogICAgMSwJCQkJLyogcGFzY2FsX3N0YXRpY19maWVsZF9w cmludCAqLwoKZGlmZiAtLWdpdCBhL2dkYi1nZGJpbmRleC12NC0yb2YzLnBhdGNoIGIvZ2RiLWdk YmluZGV4LXY0LTJvZjMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEzOGY2 MGQuLjAwMDAwMDAKLS0tIGEvZ2RiLWdkYmluZGV4LXY0LTJvZjMucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSw1MiArMCwwIEBACi1odHRwOi8vc291cmNld2FyZS5vcmcvbWwvZ2RiLWN2cy8yMDEx LTAxL21zZzAwMTY5Lmh0bWwKLQotIyMjIHNyYy9nZGIvQ2hhbmdlTG9nCTIwMTEvMDEvMjUgMTc6 MDA6MjMJMS4xMjUwMwotIyMjIHNyYy9nZGIvQ2hhbmdlTG9nCTIwMTEvMDEvMjUgMTc6MjU6MTAJ MS4xMjUwNAotIyMgLTEsMyArMSw4IEBACi0rMjAxMS0wMS0yNSAgSmFuIEtyYXRvY2h2aWwgIDxq YW4ua3JhdG9jaHZpbEByZWRoYXQuY29tPgotKwotKwkqIGR3YXJmMnJlYWQuYyAoZHdhcmYyX3Jl YWRfaW5kZXgsIHdyaXRlX3BzeW10YWJzX3RvX2luZGV4KQotKwkoc2F2ZV9nZGJfaW5kZXhfY29t bWFuZCk6IFN3aXRjaCB0byAuZ2RiX2luZGV4IHZlcnNpb24gNC4KLSsKLSAyMDExLTAxLTI1ICBQ ZWRybyBBbHZlcyAgPHBlZHJvQGNvZGVzb3VyY2VyeS5jb20+Ci0gCi0gCSogbWkvbWktbWFpbi5j IChnZXRfcmVnaXN0ZXIpOiBVc2UgZ2V0X2ZyYW1lX3JlZ2lzdGVyX3ZhbHVlIHJhdGhlcgotLS0t IHNyYy9nZGIvZHdhcmYycmVhZC5jCTIwMTEvMDEvMTIgMTY6MTY6MjAJMS40OTUKLSsrKyBzcmMv Z2RiL2R3YXJmMnJlYWQuYwkyMDExLzAxLzI1IDE3OjI1OjEyCTEuNDk2Ci1AQCAtMjAyNCwxMyAr MjAyNCwxNCBAQAotICAgLyogVmVyc2lvbiBjaGVjay4gICovCi0gICB2ZXJzaW9uID0gTUFZQkVf U1dBUCAoKihvZmZzZXRfdHlwZSAqKSBhZGRyKTsKLSAgIC8qIFZlcnNpb25zIGVhcmxpZXIgdGhh biAzIGVtaXR0ZWQgZXZlcnkgY29weSBvZiBhIHBzeW1ib2wuICBUaGlzCi0tICAgICBjYXVzZXMg dGhlIGluZGV4IHRvIGJlaGF2ZSB2ZXJ5IHBvb3JseSBmb3IgY2VydGFpbiByZXF1ZXN0cy4gIFNv LAotLSAgICAgaXQgc2VlbXMgYmV0dGVyIHRvIGp1c3QgaWdub3JlIHN1Y2ggaW5kaWNlcy4gICov Ci0tICBpZiAodmVyc2lvbiA8IDMpCi0rICAgICBjYXVzZXMgdGhlIGluZGV4IHRvIGJlaGF2ZSB2 ZXJ5IHBvb3JseSBmb3IgY2VydGFpbiByZXF1ZXN0cy4gIFZlcnNpb24gNAotKyAgICAgY29udGFp bmVkIGluY29tcGxldGUgYWRkcm1hcC4gIFNvLCBpdCBzZWVtcyBiZXR0ZXIgdG8ganVzdCBpZ25v cmUgc3VjaAotKyAgICAgaW5kaWNlcy4gICovCi0rICBpZiAodmVyc2lvbiA8IDQpCi0gICAgIHJl dHVybiAwOwotICAgLyogSW5kZXhlcyB3aXRoIGhpZ2hlciB2ZXJzaW9uIHRoYW4gdGhlIG9uZSBz dXBwb3J0ZWQgYnkgR0RCIG1heSBiZSBubwotICAgICAgbG9uZ2VyIGJhY2t3YXJkIGNvbXBhdGli bGUuICAqLwotLSAgaWYgKHZlcnNpb24gPiAzKQotKyAgaWYgKHZlcnNpb24gPiA0KQotICAgICBy ZXR1cm4gMDsKLSAKLSAgIG1hcCA9IE9CU1RBQ0tfWkFMTE9DICgmb2JqZmlsZS0+b2JqZmlsZV9v YnN0YWNrLCBzdHJ1Y3QgbWFwcGVkX2luZGV4KTsKLUBAIC0xNTY4OCw3ICsxNTY4OSw3IEBACi0g ICB0b3RhbF9sZW4gPSBzaXplX29mX2NvbnRlbnRzOwotIAotICAgLyogVGhlIHZlcnNpb24gbnVt YmVyLiAgKi8KLS0gIHZhbCA9IE1BWUJFX1NXQVAgKDMpOwotKyAgdmFsID0gTUFZQkVfU1dBUCAo NCk7Ci0gICBvYnN0YWNrX2dyb3cgKCZjb250ZW50cywgJnZhbCwgc2l6ZW9mICh2YWwpKTsKLSAK LSAgIC8qIFRoZSBvZmZzZXQgb2YgdGhlIENVIGxpc3QgZnJvbSB0aGUgc3RhcnQgb2YgdGhlIGZp bGUuICAqLwotQEAgLTE1NzQ2LDcgKzE1NzQ3LDcgQEAKLSAgICAxLiBUaGUgZmlsZSBoZWFkZXIu ICBUaGlzIGlzIGEgc2VxdWVuY2Ugb2YgdmFsdWVzLCBvZiBvZmZzZXRfdHlwZQotICAgIHVubGVz cyBvdGhlcndpc2Ugbm90ZWQ6Ci0gCi0tICAgWzBdIFRoZSB2ZXJzaW9uIG51bWJlciwgY3VycmVu dGx5IDMuICBWZXJzaW9ucyAxIGFuZCAyIGFyZQotKyAgIFswXSBUaGUgdmVyc2lvbiBudW1iZXIs IGN1cnJlbnRseSA0LiAgVmVyc2lvbnMgMSwgMiBhbmQgMyBhcmUKLSAgICBvYnNvbGV0ZS4KLSAg ICBbMV0gVGhlIG9mZnNldCwgZnJvbSB0aGUgc3RhcnQgb2YgdGhlIGZpbGUsIG9mIHRoZSBDVSBs aXN0LgotICAgIFsyXSBUaGUgb2Zmc2V0LCBmcm9tIHRoZSBzdGFydCBvZiB0aGUgZmlsZSwgb2Yg dGhlIHR5cGVzIENVIGxpc3QuCgpkaWZmIC0tZ2l0IGEvZ2RiLnNwZWMgYi9nZGIuc3BlYwppbmRl eCA0MTA3NGRhLi5mY2Y2MGYzIDEwMDY0NAotLS0gYS9nZGIuc3BlYworKysgYi9nZGIuc3BlYwpA QCAtMjMsMTEgKzIzLDExIEBAIE5hbWU6IGdkYiV7P193aXRoX2RlYnVnOi1kZWJ1Z30KICMgU2V0 IHZlcnNpb24gdG8gY29udGVudHMgb2YgZ2RiL3ZlcnNpb24uaW4uCiAjIE5PVEU6IHRoZSBGU0Yg Z2RiIHZlcnNpb25zIGFyZSBudW1iZXJlZCBOLk0gZm9yIG9mZmljaWFsIHJlbGVhc2VzLCBsaWtl IDYuMwogIyBhbmQsIHNpbmNlIEphbnVhcnkgMjAwNSwgWC5ZLlouZGF0ZSBmb3IgZGFpbHkgc25h cHNob3RzLCBsaWtlIDYuMy41MC4yMDA1MDExMiAjIChkYWlseSBzbmFwc2hvdCBmcm9tIG1haWxp bmUpLCBvciA2LjMuMC4yMDA0MDExMiAoaGVhZCBvZiB0aGUgcmVsZWFzZSBicmFuY2gpLgotVmVy c2lvbjogNy4yLjUwLjIwMTEwMTI1CitWZXJzaW9uOiA3LjIuNTAuMjAxMTAyMDYKIAogIyBUaGUg cmVsZWFzZSBhbHdheXMgY29udGFpbnMgYSBsZWFkaW5nIHJlc2VydmVkIG51bWJlciwgc3RhcnQg aXQgYXQgMS4KICMgYHVwc3RyZWFtJyBpcyBub3QgYSBwYXJ0IG9mIGBuYW1lJyB0byBzdGF5IGZ1 bGx5IHJwbSBkZXBlbmRlbmNpZXMgY29tcGF0aWJsZSBmb3IgdGhlIHRlc3RpbmcuCi1SZWxlYXNl OiAxNiV7P193aXRoX3Vwc3RyZWFtOi51cHN0cmVhbX0lez9kaXN0fQorUmVsZWFzZTogMTclez9f d2l0aF91cHN0cmVhbToudXBzdHJlYW19JXs/ZGlzdH0KIAogTGljZW5zZTogR1BMdjMrIGFuZCBH UEx2Mysgd2l0aCBleGNlcHRpb25zIGFuZCBHUEx2MisgYW5kIEdQTHYyKyB3aXRoIGV4Y2VwdGlv bnMgYW5kIEdQTCsgYW5kIExHUEx2MisgYW5kIEdGREwgYW5kIEJTRCBhbmQgUHVibGljIERvbWFp bgogR3JvdXA6IERldmVsb3BtZW50L0RlYnVnZ2VycwpAQCAtNTM2LDEwICs1MzYsNiBAQCBQYXRj aDU0NzogZ2RiLXRlc3QtZHcyLWFyYW5nZXMucGF0Y2gKICMgPWZlZG9yYXRlc3QKIFBhdGNoNTQ4 OiBnZGItdGVzdC1leHByLWN1bXVsYXRpdmUtYXJjaGVyLnBhdGNoCiAKLSMgRml4IGRpc2NvbnRp Z3VvdXMgYWRkcmVzcyByYW5nZXMgaW4gLmdkYl9pbmRleCAtIHYzLT52NCAoQlogNjcyMjgxKS4K LSMgPXB1c2gKLVBhdGNoNTUyOiBnZGItZ2RiaW5kZXgtdjQtMm9mMy5wYXRjaAotCiAjIEZpeCBE V0FSRi0zKyBEV19BVF9hY2Nlc3NpYmlsaXR5IGRlZmF1bHQgYXNzdW1wdGlvbiBmb3IgRjE1IGdj Yy00LjYuCiAjID1wdXNoCiBQYXRjaDU1NDogZ2RiLWR3YXJmMy1hY2Nlc3NpYmlsaXR5LnBhdGNo CkBAIC04MDUsNyArODAxLDYgQEAgcm0gLWYgZ2RiL2p2LWV4cC5jIGdkYi9tMi1leHAuYyBnZGIv b2JqYy1leHAuYyBnZGIvcC1leHAuYwogJXBhdGNoNTQyIC1wMQogJXBhdGNoNTQ3IC1wMQogJXBh dGNoNTQ4IC1wMQotJXBhdGNoNTUyIC1wMQogJXBhdGNoNTU0IC1wMQogJXBhdGNoNTU1IC1wMQog JXBhdGNoNTU2IC1wMQpAQCAtMTIxNiw2ICsxMjExLDkgQEAgZmkKICVlbmRpZgogCiAlY2hhbmdl bG9nCisqIFRodSBKYW4gMjcgMjAxMSBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVk aGF0LmNvbT4gLSA3LjIuNTAuMjAxMTAyMDYtMTcuZmMxNQorLSBSZWJhc2UgdG8gRlNGIEdEQiA3 LjIuNTAuMjAxMTAyMDYgKHdoaWNoIGlzIGEgNy4zIHByZS1yZWxlYXNlKS4KKwogKiBUaHUgSmFu IDI3IDIwMTEgSmFuIEtyYXRvY2h2aWwgPGphbi5rcmF0b2NodmlsQHJlZGhhdC5jb20+IC0gNy4y LjUwLjIwMTEwMTI1LTE2LmZjMTUKIC0gRml4IFB5dGhvbiBuZXctYmFja3RyYWNlIGNvbW1hbmQg KEJaIDY3MjIzNSwgUGhpbCBNdWxkb29uKS4KIAoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3Vy Y2VzCmluZGV4IGY5ZmQyMzUuLjI3NzQ1MTggMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291 cmNlcwpAQCAtMSwyICsxLDIgQEAKIDA0ZTVjNGIxYjllNjMzNDIyY2M0ODk5MGZlNjE5NThkICBs aWJzdGRjKystdjMtcHl0aG9uLXIxNTU5NzgudGFyLmJ6MgotNTI1YmNlYmFhNzk5MjYxNDg2Y2I3 NmJhOTYzODYzNmIgIGdkYi03LjIuNTAuMjAxMTAxMjUudGFyLmJ6MgorYWFkYjdiYjNkNmY5NTll YzA0YzM4MWZlZjgxMDM1MzMgIGdkYi03LjIuNTAuMjAxMTAyMDYudGFyLmJ6Mgo=