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: Alexander Scheel To: git-commits@fedoraproject.org Subject: [rpms/jss] pqc: Fix creation of NativeProxy Date: Tue, 28 Jul 2026 16:48:49 GMT Message-ID: <178525732903.1.17301485688574398456.rpms-jss-92d15fc305c3@fedoraproject.org> List-ID: X-Git-Repo: rpms/jss X-Git-Branch: pqc X-Git-Rev: 92d15fc305c3234d89258eb9d1af14b464a386fc ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvanNzCiAgICAgICAgICAgIEJyYW5jaCA6IHBxYwogICAgICAgICAgICBDb21t aXQgOiA5MmQxNWZjMzA1YzMyMzRkODkyNThlYjlkMWFmMTRiNDY0YTM4NmZjCiAgICAgICAgICAg IEF1dGhvciA6IEFsZXhhbmRlciBTY2hlZWwgPGFzY2hlZWxAcmVkaGF0LmNvbT4KICAgICAgICAg ICAgRGF0ZSAgIDogMjAxOS0xMC0yOVQxMDo1Njo1MC0wNDowMAogICAgICAgICAgICBTdGF0cyAg OiArNTgvLTgwMSBpbiA0IGZpbGUocykKICAgICAgICAgICAgVVJMICAgIDogaHR0cHM6Ly9zcmMu ZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9qc3MvYy85MmQxNWZjMzA1YzMyMzRkODkyNThlYjlkMWFm MTRiNDY0YTM4NmZjP2JyYW5jaD1wcWMKCiAgICAgICAgICAgIExvZzoKICAgICAgICAgICAgRml4 IGNyZWF0aW9uIG9mIE5hdGl2ZVByb3h5CgpSZXNvbHZlczogcmhieiMxNzY2NDUxCgpTaWduZWQt b2ZmLWJ5OiBBbGV4YW5kZXIgU2NoZWVsIDxhc2NoZWVsQHJlZGhhdC5jb20+CgotLS0KZGlmZiAt LWdpdCBhLzAwMDEtRml4LU5hdGl2ZVByb3h5LXJlZmVyZW5jZS10cmFja2VyLnBhdGNoIGIvMDAw MS1GaXgtTmF0aXZlUHJveHktcmVmZXJlbmNlLXRyYWNrZXIucGF0Y2gKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMC4uNTI5YjU3NgotLS0gL2Rldi9udWxsCisrKyBiLzAwMDEtRml4 LU5hdGl2ZVByb3h5LXJlZmVyZW5jZS10cmFja2VyLnBhdGNoCkBAIC0wLDAgKzEsNTMgQEAKK0Zy b20gOTE1MTRjYTBhMjk3OWJhNzc4ZDI3MjIwY2VkMGNkMzEyZTJjZDJkMiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKK0Zyb206IEFsZXhhbmRlciBTY2hlZWwgPGFzY2hlZWxAcmVkaGF0LmNvbT4K K0RhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMTA6NDM6NTYgLTA0MDAKK1N1YmplY3Q6IFtQQVRDSF0g Rml4IE5hdGl2ZVByb3h5IHJlZmVyZW5jZSB0cmFja2VyCisKK0luIGViNWRmMDEwMDNkNzRiNTc0 NzNlYWNiODRlNTM4ZDMxZjViYjA2Y2EsIEkgaW50cm9kdWNlZCBhIGJ1ZyBieQorc2V0dGluZyBt UG9pbnRlciBhZnRlciB0cnlpbmcgdG8gYWRkIE5hdGl2ZVByb3h5IHRvIHRoZSByZWdpc3RyeS4g SW4KK21vc3QgaW5zdGFuY2VzIHRoaXMgd29uJ3QgbWF0dGVyLCBob3dldmVyLCBpZiBhbm90aGVy IGluc3RhbmNlIGV4aXN0cyBpbgordGhlIEhhc2hTZXQgd2l0aCB0aGUgc2FtZSBoYXNoIHZhbHVl LCB0aGUgZXF1YWxzIGNvbXBhcmF0b3Igd2lsbCBiZQordXNlZCwgdHJpZ2dlcmluZyBhIE5QRS4K KworU2lnbmVkLW9mZi1ieTogQWxleGFuZGVyIFNjaGVlbCA8YXNjaGVlbEByZWRoYXQuY29tPgor LS0tCisgb3JnL21vemlsbGEvanNzL3V0aWwvTmF0aXZlUHJveHkuamF2YSB8IDEzICsrKysrLS0t LS0tLS0KKyAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQor CitkaWZmIC0tZ2l0IGEvb3JnL21vemlsbGEvanNzL3V0aWwvTmF0aXZlUHJveHkuamF2YSBiL29y Zy9tb3ppbGxhL2pzcy91dGlsL05hdGl2ZVByb3h5LmphdmEKK2luZGV4IDFjNmQxYWE1Li5hMDgx MWY3NiAxMDA2NDQKKy0tLSBhL29yZy9tb3ppbGxhL2pzcy91dGlsL05hdGl2ZVByb3h5LmphdmEK KysrKyBiL29yZy9tb3ppbGxhL2pzcy91dGlsL05hdGl2ZVByb3h5LmphdmEKK0BAIC00MCw4ICs0 MCw4IEBAIHB1YmxpYyBhYnN0cmFjdCBjbGFzcyBOYXRpdmVQcm94eSBpbXBsZW1lbnRzIEF1dG9D bG9zZWFibGUKKyAgICAgICovCisgICAgIHB1YmxpYyBOYXRpdmVQcm94eShieXRlW10gcG9pbnRl cikgeworIAkJYXNzZXJ0KHBvaW50ZXIhPW51bGwpOworLSAgICAgICAgcmVnaXN0cnkuYWRkKHRo aXMpOworICAgICAgICAgbVBvaW50ZXIgPSBwb2ludGVyOworKyAgICAgICAgcmVnaXN0cnkuYWRk KHRoaXMpOworIAorICAgICAgICAgaWYgKHNhdmVTdGFja3RyYWNlcykgeworICAgICAgICAgICAg IG1UcmFjZSA9IEFycmF5cy50b1N0cmluZyhUaHJlYWQuY3VycmVudFRocmVhZCgpLmdldFN0YWNr VHJhY2UoKSk7CitAQCAtNjEsMTUgKzYxLDEyIEBAIHB1YmxpYyBhYnN0cmFjdCBjbGFzcyBOYXRp dmVQcm94eSBpbXBsZW1lbnRzIEF1dG9DbG9zZWFibGUKKyAgICAgICAgIGlmKCAhIChvYmogaW5z dGFuY2VvZiBOYXRpdmVQcm94eSkgKSB7CisgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAg ICAgICAgfQorLSAgICAgICAgaWYoICgoTmF0aXZlUHJveHkpb2JqKS5tUG9pbnRlci5sZW5ndGgg IT0gbVBvaW50ZXIubGVuZ3RoKSB7CisrICAgICAgICBpZiAoKChOYXRpdmVQcm94eSlvYmopLm1Q b2ludGVyID09IG51bGwpIHsKKysgICAgICAgICAgICAvKiBJZiBtUG9pbnRlciBpcyBudWxsLCB3 ZSBoYXZlIG5vIHdheSB0byBjb21wYXJlIHRoZSB2YWx1ZXMKKysgICAgICAgICAgICAgKiBvZiB0 aGUgcG9pbnRlcnMsIHNvIGFzc3VtZSB0aGV5J3JlIHVuZXF1YWwuICovCisgICAgICAgICAgICAg cmV0dXJuIGZhbHNlOworICAgICAgICAgfQorLSAgICAgICAgZm9yKGludCBpPTA7IGkgPCBtUG9p bnRlci5sZW5ndGg7IGkrKykgeworLSAgICAgICAgICAgIGlmKG1Qb2ludGVyW2ldICE9ICgoTmF0 aXZlUHJveHkpb2JqKS5tUG9pbnRlcltpXSkgeworLSAgICAgICAgICAgICAgICByZXR1cm4gZmFs c2U7CistICAgICAgICAgICAgfQorLSAgICAgICAgfQorLSAgICAgICAgcmV0dXJuIHRydWU7Cisr ICAgICAgICByZXR1cm4gQXJyYXlzLmVxdWFscygoKE5hdGl2ZVByb3h5KW9iaikubVBvaW50ZXIs IG1Qb2ludGVyKTsKKyAgICAgfQorIAorICAgICAvKioKKy0tIAorMi4yMS4wCisKCmRpZmYgLS1n aXQgYS9qc3MtYWlhLW9jc3AtMS5wYXRjaCBiL2pzcy1haWEtb2NzcC0xLnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMjAyMDdjLi4wMDAwMDAwCi0tLSBhL2pzcy1haWEtb2Nz cC0xLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNjU5ICswLDAgQEAKLUZyb20gODk3NWM4YWUx ZDBjOGI5MTZjNWM3M2FmZjEyMDQ2YjAxZDNlNmVmMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK LUZyb206IEphY2sgTWFnbmUgPGptYWduZUByZWRoYXQuY29tPgotRGF0ZTogRnJpLCAyNSBKYW4g MjAxOSAxNDo1NDoxMSAtMDgwMAotU3ViamVjdDogW1BBVENIXSBSZXNvbHZlIEJ1ZyAxNjY2ODcy IC0gQ0M6IEVuYWJsZSBBSUEgT0NTUCBjZXJ0IGNoZWNraW5nIGZvcgotIGVudGlyZSBjZXJ0IGNo YWluLgotCi1UaGlzIGZpeCBmb3IganNzLCBzb2x2ZXMgdGhlIG9uZSB1c2UgY2FzZSB3aGVyZSB0 aGUgcGtpIHNlcnZlciBpcyBjb25maWd1cmVkIHRvIHBlcmZvcm0gb2NzcCBjaGVja2luZyBPTkxZ IHdpdGggdGhlIGNvbnRlbnRzIG9mIHRoZSBBSUEgZXh0ZW5zaW9uLiBQcmV2aW91c2x5LCBqc3Mg Y291bGQgb25seSBjaGVjayB0aGUgb2NzcCBzZXJ2ZXIgZm9yIHRoZSBsZWFmIG5vZGUgY2VydCBv ZiB0aGUgY2VydCBiZWluZyB2ZXJpZmllZC4gVGhpcyBmaXggYWxsb3dzIHRoZSBjZXJ0IGNoYWlu IHRvIGJlIGNoZWNrZWQgb3ZlciBvY3NwIGZvciBlYWNoIGNlcnQgaW4gcXVlc3Rpb24uIFRoaXMg aXMgcG9zc2libGUgZHVlIHRvIHRoZSBmYWN0IHRoYXQgd2UgaGF2ZSBtYWRlIGEgY2FsbCBpbiB0 aGUgUEtJWCBsaWJyYXJ5IG9mIG5zcyB0byBkbyB0aGUgYWN0dWFsIGNlcnQgdmVyZmljYXRpb24u IFRoaXMgY2FsbCBpcyBtYWRlIHdpdGggYWxsIHRoZSBuZWVkZWQgZmxhZ3MgdG8gdGVsbCB0aGUg UEtJWCBsaWJyYXJ5IHRvIG1ha2UgdGhlIG9jc3AgdmVyaWZpY2F0aW9ucyByZW1vdGVseSBvdmVy IHRoZSBuZXR3b3JrIHVzaW5nIHRoZSBjb250ZW50cyBvZiB0aGUgQUlBIGV4dGVuc2lvbi4KLQot TGF0ZXIgb24gd2UgY2FuIHVzZSB0aGlzIGNvZGUgdG8gaGFuZGxlIHRoZSBvdGhlciBjYXNlcywg YnV0IGZvciBub3cgd2Ugd2FudCB0byBzb2x2ZSB0aGlzIG9uZSBwYXJ0aWN1bGFyIHByb2JsZW0u IElmIHRoZSBzZXJ2ZXIgaXMgY29uZmlndXJlZCBpbiBhbnkgb3RoZXIgY29uZmlndXJhdGlvbiB0 aGFuIHRoZSBvbmUgc3RhdGVkLCB0aGUgb3JpZ2luYWwgdmVyaWZpY2F0aW9uIGNvZGUgd2lsbCBi ZSBjYWxsZWQgYXMgYmVmb3JlLiBCZWxvdyBpcyBhbiBleGFtcGxlIG9mIGEgY29uZmlndXJhdGlv biBpbiBzZXJ2ZXIueG1sLCB0aGF0IHdpbGwgdHJpZ2dlciB0aGlzIG5ldyBjb2RlOgotCi08IC4u Li4gZW5hYmxlT0NTUD0idHJ1ZSIgb2NzcENhY2hlU2l6ZT0iMTAwMDAiIG9jc3BNaW5DYWNoZUVu dHJ5RHVyYXRpb249IjcyMDAiICAgLi4uLiA+Ci0KLU5vdGUgdGhhdCBkdWUgdG8gb2NzcCBjYWNo aW5nLCB0aGUgY2VydCBjaGFpbiB2ZXJpZmljYXRpb24gbWF5IG9ubHkgYmUgYXBwYXJlbnQgYWZ0 ZXIgYSByZXN0YXJ0IG9mIHRoZSBzZXJ2ZXIuIEEgd2F5IHRvIGZvcmNlIGFuIG9jc3AgZmV0Y2gg ZXZlcnkgdGltZSBpcyB0byBzZXQgdGhlIHZhbHVlIG9mIG9jc3BDYWNoZVNpemU9LTEsIHdoaWNo IGVzc2VudGlhbGx5IGRpc2FibGVzIHRoZSBjYWNoZS4KLQotQWRkZWQgYSBjb3VwbGUgb2YgbWlu b3IgZml4ZXMgZHVlIHRvIHJldmlldyBjb21tZW50cy4gUG9zc2libHkgbW9yZSB0byBjb21lLgot TWlub3IgaW5jbHVkZSBkaXJlY3RpdmUgY2hhbmdlIHRvIGNvbXBpbGUgb24gYnJhbmNoLgotLS0t Ci0gb3JnL21vemlsbGEvanNzL0NyeXB0b01hbmFnZXIuamF2YSB8ICA0OCArKysrKysrCi0gb3Jn L21vemlsbGEvanNzL1BLMTFGaW5kZXIuYyAgICAgICB8ICA5NSArKysrKysrKysrKystLQotIG9y Zy9tb3ppbGxhL2pzcy9zc2wvY2FsbGJhY2tzLmMgICAgfCAgNjcgKysrKysrKystLQotIG9yZy9t b3ppbGxhL2pzcy9zc2wvY29tbW9uLmMgICAgICAgfCAxOTYgKysrKysrKysrKysrKysrKysrKysr KysrKysrKysKLSBvcmcvbW96aWxsYS9qc3Mvc3NsL2pzc2wuaCAgICAgICAgIHwgIDI5ICsrKysr Ci0gb3JnL21vemlsbGEvanNzL3V0aWwvamF2YV9pZHMuaCAgICB8ICAgOSArKwotIDYgZmlsZXMg Y2hhbmdlZCwgNDIyIGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0 IGEvb3JnL21vemlsbGEvanNzL0NyeXB0b01hbmFnZXIuamF2YSBiL29yZy9tb3ppbGxhL2pzcy9D cnlwdG9NYW5hZ2VyLmphdmEKLWluZGV4IDliODZiZjllLi5jOWEzZmIyYiAxMDA2NDQKLS0tLSBh L29yZy9tb3ppbGxhL2pzcy9DcnlwdG9NYW5hZ2VyLmphdmEKLSsrKyBiL29yZy9tb3ppbGxhL2pz cy9DcnlwdG9NYW5hZ2VyLmphdmEKLUBAIC0xMjAxLDYgKzEyMDEsNDQgQEAgcHJpdmF0ZSBuYXRp dmUgYm9vbGVhbiB2ZXJpZnlDZXJ0VGVtcE5hdGl2ZShieXRlW10gY2VydFBhY2thZ2UsCi0gICAg IC8vIE9DU1AgbWFuYWdlbWVudAotICAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwotIAotKyAgICAvKiBPQ1NQ IFBvbGljeSByZWxhdGVkICovCi0rCi0rICAgIHB1YmxpYyBlbnVtIE9DU1BQb2xpY3kgewotKyAg ICAgICAgTk9ORSwKLSsgICAgICAgIE5PUk1BTCwKLSsgICAgICAgIExFQUZfQU5EX0NIQUlOOwot KyAgICB9Ci0rCi0rICAgIHByaXZhdGUgc3RhdGljIE9DU1BQb2xpY3kgb2NzcFBvbGljeSAgPSBP Q1NQUG9saWN5Lk5PTkU7Ci0rCi0rICAgIC8qKgotKyAgICAgKiBHZXRzIHRoZSBjdXJyZW50IG9j c3AgUG9saWN5LgotKyAgICAgKiBDdXJyZW50bHkgd2Ugb25seSBzdXBwb3J0IDIgbW9kZXMgIE9D U1BfTEVBRl9BTkRfQ0hBSU5fUE9MSUNZLgotKyAgICAgKiBBbmQgT0NTUF9OT1JNQUxfUE9MSUNZ LCB3aGljaCBpcyBjdXJyZW50IHByb2Nlc3NpbmcgLCBieSBkZWZhdWx0LgotKyAgICAgKiBJZiB3 ZSBoYXZlIEFJQSBiYXNlZCBPQ1NQIGVuYWJsZWQgd2Ugd2lsbCBjaGVjayBhbGwgY2VydHMgaW4g dGhlIGNoYWluLgotKyAgICAgKiB1c2luZyBQS0lYIGNlcnQgdmVyZmljYXRpb24gY2FsbHMgaW4g dGhlIHZhcmlvdXMgY2VydCBhdXRoIGNhbGxiYWNrcyB3ZQotKyAgICAgKiBoYXZlLgotKyAgICAg KiBAcmV0dXJuIC0gVGhlIGN1cnJlbnQgb2NzcCBwb2xpY3kgaW4gZWZmZWN0LgotKyAgICAgKi8K LSsKLSsgICAgcHVibGljIHN0YXRpYyBzeW5jaHJvbml6ZWQgaW50IGdldE9DU1BQb2xpY3koKSB7 Ci0rICAgICAgICByZXR1cm4gb2NzcFBvbGljeS5vcmRpbmFsKCk7Ci0rICAgIH0KLSsKLSsgICAg LyoqCi0rICAgICAqIFNldHMgdGhlIGN1cnJlbnQgb2NzcCBQb2xpY3kuCi0rICAgICAqIEN1cnJl bnRseSB3ZSBvbmx5IHN1cHBvcnQgb25lIG1vZGUgT0NTUF9MRUFGX0FORF9DSEFJTl9QT0xJQ1ku Ci0rICAgICAqIElmIHdlIGhhdmUgQUlBIGJhc2VkIE9DU1AgZW5hYmxlZCB3ZSB3aWxsIGNoZWNr IGFsbCBjZXJ0cyBpbiB0aGUgY2hhaW4uCi0rICAgICAqIHVzaW5nIFBLSVggY2VydCB2ZXJmaWNh dGlvbiBjYWxscyBpbiB0aGUgdmFyaW91cyBjZXJ0IGF1dGggY2FsbGJhY2tzIHdlCi0rICAgICAq IGhhdmUuCi0rICAgICAqIEBwYXJhbSBwb2xpY3kgLSBFaXRoZXIgY2VydCBhbmQgY2hhaW4gb3Ig bm9ybWFsIGRlZmF1bHQgcHJvY2Vzc2luZy4KLSsgICAgICoKLSsgICAgICovCi0rIAotKyAgICBw dWJsaWMgc3RhdGljIHN5bmNocm9uaXplZCB2b2lkIHNldE9DU1BQb2xpY3koT0NTUFBvbGljeSBw b2xpY3kpIHsKLSsgICAgICAgIG9jc3BQb2xpY3kgPSBwb2xpY3k7Ci0rICAgIH0KLSsKLSAgICAg LyoqCi0gICAgICAqIEVuYWJsZXMgT0NTUCwgbm90ZSB3aGVuIHlvdSBJbml0aWFsaXplIEpTUyBm b3IgdGhlIGZpcnN0IHRpbWUsIGZvcgotICAgICAgKiBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSwg dGhlIGluaXRpYWxpemUgd2lsbCBlbmFibGUgT0NTUCBpZiB5b3UKLUBAIC0xMjIwLDYgKzEyNTgs MTYgQEAgcHVibGljIHZvaWQgY29uZmlndXJlT0NTUCgKLSAgICAgICAgIFN0cmluZyBvY3NwUmVz cG9uZGVyQ2VydE5pY2tuYW1lICkKLSAgICAgdGhyb3dzIEdlbmVyYWxTZWN1cml0eUV4Y2VwdGlv bgotICAgICB7Ci0rICAgICAgICAvKiBzZXQgdGhlIG9jc3AgcG9saWN5ICovCi0rCi0rICAgICAg ICBpZihvY3NwQ2hlY2tpbmdFbmFibGVkICYmIAotKyAgICAgICAgICAgIG9jc3BSZXNwb25kZXJV UkwgPT0gbnVsbCAmJiAKLSsgICAgICAgICAgICBvY3NwUmVzcG9uZGVyQ2VydE5pY2tuYW1lID09 IG51bGwpIHsKLSsgICAgICAgICAgICBzZXRPQ1NQUG9saWN5KE9DU1BQb2xpY3kuTEVBRl9BTkRf Q0hBSU4pOwotKyAgICAgICAgfSBlbHNlIHsKLSsgICAgICAgICAgICBzZXRPQ1NQUG9saWN5KE9D U1BQb2xpY3kuTk9STUFMKTsKLSsgICAgICAgIH0KLSsKLSAgICAgICAgIGNvbmZpZ3VyZU9DU1BO YXRpdmUob2NzcENoZWNraW5nRW5hYmxlZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIG9jc3BSZXNwb25kZXJVUkwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgb2NzcFJlc3BvbmRlckNlcnROaWNrbmFtZSApOwotZGlmZiAtLWdpdCBhL29yZy9tb3pp bGxhL2pzcy9QSzExRmluZGVyLmMgYi9vcmcvbW96aWxsYS9qc3MvUEsxMUZpbmRlci5jCi1pbmRl eCA0NTk1ODE4MS4uMDMyOWU5MWQgMTAwNjQ0Ci0tLS0gYS9vcmcvbW96aWxsYS9qc3MvUEsxMUZp bmRlci5jCi0rKysgYi9vcmcvbW96aWxsYS9qc3MvUEsxMUZpbmRlci5jCi1AQCAtMTQsOSArMTQs OSBAQAotICNpbmNsdWRlIDxzZWNwa2NzNy5oPgotIAotICNpbmNsdWRlIDxqc3N1dGlsLmg+Ci0t Ci0gI2luY2x1ZGUgPGpzc19leGNlcHRpb25zLmg+Ci0gI2luY2x1ZGUgInBrMTF1dGlsLmgiCi0r I2luY2x1ZGUgInNzbC9qc3NsLmgiCi0gI2luY2x1ZGUgPGphdmFfaWRzLmg+Ci0gCi0gLyoKLUBA IC0xNTc0LDYgKzE1NzQsOSBAQCBTRUNTdGF0dXMgdmVyaWZ5Q2VydGlmaWNhdGVOb3coSk5JRW52 ICplbnYsIGpvYmplY3Qgc2VsZiwganN0cmluZyBuaWNrU3RyaW5nLAotICAgICAgICAgIGdvdG8g ZmluaXNoOwotICAgICB9Ci0gCi0rICAgIGludCBvY3NwUG9saWN5ID0gSlNTTF9nZXRPQ1NQUG9s aWN5KCk7Ci0rICAgIAotKwotICAgICBjZXJ0aWZpY2F0ZVVzYWdlID0gcmVxdWlyZWRfY2VydGlm aWNhdGVVc2FnZTsKLSAKLSAgICAgY2VydCA9IENFUlRfRmluZENlcnRCeU5pY2tuYW1lKENFUlRf R2V0RGVmYXVsdENlcnREQigpLCBuaWNrbmFtZSk7Ci1AQCAtMTU4Nyw4ICsxNTkwLDI0IEBAIFNF Q1N0YXR1cyB2ZXJpZnlDZXJ0aWZpY2F0ZU5vdyhKTklFbnYgKmVudiwgam9iamVjdCBzZWxmLCBq c3RyaW5nIG5pY2tTdHJpbmcsCi0gICAgIC8qIDAgZm9yIGNlcnRpZmljYXRlVXNhZ2UgaW4gY2Fs bCB0byBDRVJUX1ZlcmlmeUNlcnRpZmljYXRlTm93IHdpbGwKLSAgICAgICogcmV0cmlldmUgdGhl IGN1cnJlbnQgdmFsaWQgdXNhZ2UgaW50byBjdXJyVXNhZ2UKLSAgICAgICovCi0tICAgICAgICBy diA9IENFUlRfVmVyaWZ5Q2VydGlmaWNhdGVOb3coQ0VSVF9HZXREZWZhdWx0Q2VydERCKCksIGNl cnQsCi0tICAgICAgICAgICAgY2hlY2tTaWcsIGNlcnRpZmljYXRlVXNhZ2UsIE5VTEwsIGN1cnJV c2FnZSApOwotKyAgICAgICAgaWYoIG9jc3BQb2xpY3kgPT0gT0NTUF9MRUFGX0FORF9DSEFJTl9Q T0xJQ1kpIHsKLSsgICAgICAgICAgICBydiA9IEpTU0xfdmVyaWZ5Q2VydFBLSVgoIGNlcnQsIGNl cnRpZmljYXRlVXNhZ2UsCi0rICAgICAgICAgICAgICAgICAgICAgTlVMTCAvKiBwaW4gYXJnICov LCBvY3NwUG9saWN5LCBOVUxMLCBjdXJyVXNhZ2UpOwotKwotKyAgICAgICAgICAgIC8qIHdlIG5l ZWQgdG8gZG8gdGhpcyBqdXN0IHRvIGdldCB0aGUgY2VydCB1c2FnZXMsIHRoZSBwa2l4IHZlcnNp b24KLSsgICAgICAgICAgICAgICBkb2Vzbid0IHNlZW0gdG8gaG9ub3IgdGhlIG1ldGhvZCB0byBn ZXQgdGhlIHVzYWdlcyBhcyBvZiB5ZXQuCi0rICAgICAgICAgICAgICAgTGV0IHRoZSBQS0lYIGNh bGwgb25seSBkZXRlcm1pbmUgdGhlIGZpbmFsIGZhdGUuCi0rICAgICAgICAgICAgKi8KLSsgICAg ICAgICAgICBpZihydiA9PSBTRUNTdWNjZXNzKSB7Ci0rICAgICAgICAgICAgICAgIENFUlRfVmVy aWZ5Q2VydGlmaWNhdGVOb3coQ0VSVF9HZXREZWZhdWx0Q2VydERCKCksIGNlcnQsCi0rICAgICAg ICAgICAgICAgIGNoZWNrU2lnLCBjZXJ0aWZpY2F0ZVVzYWdlLCBOVUxMLCBjdXJyVXNhZ2UgKTsK LSsgICAgICAgICAgICB9Ci0rCi0rICAgICAgICB9IGVsc2UgewotKyAgICAgICAgICAgIHJ2ID0g Q0VSVF9WZXJpZnlDZXJ0aWZpY2F0ZU5vdyhDRVJUX0dldERlZmF1bHRDZXJ0REIoKSwgY2VydCwK LSsgICAgICAgICAgICAgICAgY2hlY2tTaWcsIGNlcnRpZmljYXRlVXNhZ2UsIE5VTEwsIGN1cnJV c2FnZSApOwotKyAgICAgICAgfQotKwotICAgICAgICAgaWYgKChydiA9PSBTRUNTdWNjZXNzKSAm JiBjZXJ0aWZpY2F0ZVVzYWdlID09IDB4MDAwMCkgewotICAgICAgICAgICAgIGlmICgqY3VyclVz YWdlID09IAotICAgICAgICAgICAgICAgICAoIGNlcnRVc2FnZVVzZXJDZXJ0SW1wb3J0IHwKLUBA IC0xNjM5LDYgKzE2NTgsOCBAQCBKYXZhX29yZ19tb3ppbGxhX2pzc19DcnlwdG9NYW5hZ2VyX3Zl cmlmeUNlcnRpZmljYXRlTm93TmF0aXZlKEpOSUVudiAqZW52LAotICAgICAgICAgIGdvdG8gZmlu aXNoOwotICAgICB9Ci0gCi0rICAgIGludCBvY3NwUG9saWN5ID0gSlNTTF9nZXRPQ1NQUG9saWN5 KCk7Ci0rCi0gICAgIGNlcnRpZmljYXRlVXNhZ2UgPSByZXF1aXJlZF9jZXJ0aWZpY2F0ZVVzYWdl OwotIAotICAgICBjZXJ0ID0gQ0VSVF9GaW5kQ2VydEJ5Tmlja25hbWUoQ0VSVF9HZXREZWZhdWx0 Q2VydERCKCksIG5pY2tuYW1lKTsKLUBAIC0xNjUzLDggKzE2NzQsMjMgQEAgSmF2YV9vcmdfbW96 aWxsYV9qc3NfQ3J5cHRvTWFuYWdlcl92ZXJpZnlDZXJ0aWZpY2F0ZU5vd05hdGl2ZShKTklFbnYg KmVudiwKLSAgICAgICoganVzdCBnZXQgdGhlIGN1cnJlbnQgdXNhZ2UgKHdoaWNoIHdlIGFyZSBu b3QgcGFzc2luZyBiYWNrIGZvciBub3cKLSAgICAgICogYnV0IHdpbGwgYnlwYXNzIHRoZSBjZXJ0 aWZpY2F0ZSB1c2FnZSBjaGVjawotICAgICAgKi8KLS0gICAgICAgIHJ2ID0gQ0VSVF9WZXJpZnlD ZXJ0aWZpY2F0ZU5vdyhDRVJUX0dldERlZmF1bHRDZXJ0REIoKSwgY2VydCwKLS0gICAgICAgICAg ICBjaGVja1NpZywgY2VydGlmaWNhdGVVc2FnZSwgTlVMTCwgJmN1cnJVc2FnZSApOwotKwotKyAg ICAgICAgaWYoIG9jc3BQb2xpY3kgPT0gT0NTUF9MRUFGX0FORF9DSEFJTl9QT0xJQ1kpIHsKLSsg ICAgICAgICAgICBydj0gSlNTTF92ZXJpZnlDZXJ0UEtJWCggY2VydCwgY2VydGlmaWNhdGVVc2Fn ZSwKLSsgICAgICAgICAgICAgICAgICAgICBOVUxMIC8qIHBpbiBhcmcgKi8sIG9jc3BQb2xpY3ks IE5VTEwsICZjdXJyVXNhZ2UpOwotKwotKyAgICAgICAgICAgIC8qIHdlIG5lZWQgdG8gZG8gdGhp cyBqdXN0IHRvIGdldCB0aGUgY2VydCB1c2FnZXMsIHRoZSBwa2l4IHZlcnNpb24KLSsgICAgICAg ICAgICAgICBkb2Vzbid0IHNlZW0gdG8gaG9ub3IgdGhlIG1ldGhvZCB0byBnZXQgdGhlIHVzYWdl cyBhcyBvZiB5ZXQuCi0rICAgICAgICAgICAgICAgTGV0IHRoZSBQS0lYIGNhbGwgb25seSBkZXRl cm1pbmUgdGhlIGZpbmFsIGZhdGUuCi0rICAgICAgICAgICAgKi8KLSsgICAgICAgICAgICBpZihy diA9PSBTRUNTdWNjZXNzKSB7Ci0rICAgICAgICAgICAgICAgIENFUlRfVmVyaWZ5Q2VydGlmaWNh dGVOb3coQ0VSVF9HZXREZWZhdWx0Q2VydERCKCksIGNlcnQsCi0rICAgICAgICAgICAgICAgIGNo ZWNrU2lnLCBjZXJ0aWZpY2F0ZVVzYWdlLCBOVUxMLCAmY3VyclVzYWdlICk7Ci0rICAgICAgICAg ICAgfQotKyAgICAgICAgfSBlbHNlIHsKLSsgICAgICAgICAgICBydiA9IENFUlRfVmVyaWZ5Q2Vy dGlmaWNhdGVOb3coQ0VSVF9HZXREZWZhdWx0Q2VydERCKCksIGNlcnQsCi0rICAgICAgICAgICAg ICAgIGNoZWNrU2lnLCBjZXJ0aWZpY2F0ZVVzYWdlLCBOVUxMLCAmY3VyclVzYWdlICk7Ci0rICAg ICAgICB9Ci0gICAgIH0KLSAKLSBmaW5pc2g6Ci1AQCAtMTcyMCwxMiArMTc1NiwxNCBAQCBKYXZh X29yZ19tb3ppbGxhX2pzc19DcnlwdG9NYW5hZ2VyX3ZlcmlmeUNlcnRpZmljYXRlTm93TmF0aXZl MihKTklFbnYgKmVudiwKLSAgICAgU0VDU3RhdHVzICAgICAgICAgICAgICAgIHJ2ID0gU0VDRmFp bHVyZTsKLSAgICAgQ0VSVENlcnRpZmljYXRlICAgICAgICAgICpjZXJ0ID0gTlVMTDsKLSAgICAg Y2hhciAgICAgICAgICAgICAgICAgICAgICpuaWNrbmFtZSA9IE5VTEw7Ci0tICAgIAotKyAgIAot ICAgICBpZiAobmlja1N0cmluZyA9PSBOVUxMKSB7Ci0gICAgICAgICBKU1NfdGhyb3dNc2coZW52 LCBJTlZBTElEX05JQ0tOQU1FX0VYQ0VQVElPTiwgIk1pc3NpbmcgY2VydGlmaWNhdGUgbmlja25h bWUiKTsKLSAgICAgICAgIGdvdG8gZmluaXNoOwotICAgICB9Ci0gCi0rICAgIGludCBvY3NwUG9s aWN5ID0gSlNTTF9nZXRPQ1NQUG9saWN5KCk7Ci0rCi0gICAgIG5pY2tuYW1lID0gKGNoYXIgKikg KCplbnYpLT5HZXRTdHJpbmdVVEZDaGFycyhlbnYsIG5pY2tTdHJpbmcsIE5VTEwpOwotICAgICBp ZiAobmlja25hbWUgPT0gTlVMTCkgewotICAgICAgICAgSlNTX3Rocm93TXNnKGVudiwgSU5WQUxJ RF9OSUNLTkFNRV9FWENFUFRJT04sICJNaXNzaW5nIGNlcnRpZmljYXRlIG5pY2tuYW1lIik7Ci1A QCAtMTc0Nyw4ICsxNzg1LDI1IEBAIEphdmFfb3JnX21vemlsbGFfanNzX0NyeXB0b01hbmFnZXJf dmVyaWZ5Q2VydGlmaWNhdGVOb3dOYXRpdmUyKEpOSUVudiAqZW52LAotICAgICAvKiAwIGZvciBj ZXJ0aWZpY2F0ZVVzYWdlIGluIGNhbGwgdG8gQ0VSVF9WZXJpZnlDZXJ0aWZpY2F0ZU5vdyB3aWxs Ci0gICAgICAqIHJldHJpZXZlIHRoZSBjdXJyZW50IHZhbGlkIHVzYWdlIGludG8gY3VyclVzYWdl Ci0gICAgICAqLwotLSAgICBydiA9IENFUlRfVmVyaWZ5Q2VydGlmaWNhdGVOb3coQ0VSVF9HZXRE ZWZhdWx0Q2VydERCKCksIGNlcnQsCi0tICAgICAgICBjaGVja1NpZywgY2VydGlmaWNhdGVVc2Fn ZSwgTlVMTCwgJmN1cnJVc2FnZSk7Ci0rCi0rICAgIGlmKCBvY3NwUG9saWN5ID09IE9DU1BfTEVB Rl9BTkRfQ0hBSU5fUE9MSUNZKSB7Ci0rICAgICAgICBydiA9IEpTU0xfdmVyaWZ5Q2VydFBLSVgo IGNlcnQsIGNlcnRpZmljYXRlVXNhZ2UsCi0rICAgICAgICAgICAgICAgICAgICAgTlVMTCAvKiBw aW4gYXJnICovLCBvY3NwUG9saWN5LCBOVUxMLCAmY3VyclVzYWdlKTsKLSsKLSsgICAgICAgIC8q IHdlIG5lZWQgdG8gZG8gdGhpcyBqdXN0IHRvIGdldCB0aGUgY2VydCB1c2FnZXMsIHRoZSBwa2l4 IHZlcnNpb24KLSsgICAgICAgICAgIGRvZXNuJ3Qgc2VlbSB0byBob25vciB0aGUgbWV0aG9kIHRv IGdldCB0aGUgdXNhZ2VzIGFzIG9mIHlldC4KLSsgICAgICAgICAgIExldCB0aGUgUEtJWCBjYWxs IG9ubHkgZGV0ZXJtaW5lIHRoZSBmaW5hbCBmYXRlLgotKyAgICAgICAgKi8KLSsgICAgICAgIGlm KHJ2ID09IFNFQ1N1Y2Nlc3MpIHsKLSsgICAgICAgICAgICBDRVJUX1ZlcmlmeUNlcnRpZmljYXRl Tm93KENFUlRfR2V0RGVmYXVsdENlcnREQigpLCBjZXJ0LAotKyAgICAgICAgICAgIGNoZWNrU2ln LCBjZXJ0aWZpY2F0ZVVzYWdlLCBOVUxMLCAmY3VyclVzYWdlICk7Ci0rCi0rICAgICAgICB9Ci0r Ci0rICAgIH0gZWxzZSB7Ci0rICAgICAgICBydiA9IENFUlRfVmVyaWZ5Q2VydGlmaWNhdGVOb3co Q0VSVF9HZXREZWZhdWx0Q2VydERCKCksIGNlcnQsCi0rICAgICAgICAgICAgICAgICAgICAgY2hl Y2tTaWcsIGNlcnRpZmljYXRlVXNhZ2UsIE5VTEwsICZjdXJyVXNhZ2UpOwotKyAgICB9Ci0gCi0g ICAgIGlmIChydiAhPSBTRUNTdWNjZXNzKSB7Ci0gICAgICAgICBKU1NfdGhyb3dNc2dQckVycihl bnYsIENFUlRJRklDQVRFX0VYQ0VQVElPTiwgIkludmFsaWQgY2VydGlmaWNhdGUiKTsKLUBAIC0x ODAzLDYgKzE4NTgsOSBAQCBKYXZhX29yZ19tb3ppbGxhX2pzc19DcnlwdG9NYW5hZ2VyX3Zlcmlm eUNlcnROb3dOYXRpdmUoSk5JRW52ICplbnYsCi0gICAgIGlmKCBuaWNrbmFtZSA9PSBOVUxMICkg ewotICAgICAgICAgIGdvdG8gZmluaXNoOwotICAgICB9Ci0rCi0rICAgIGludCBvY3NwUG9saWN5 ID0gSlNTTF9nZXRPQ1NQUG9saWN5KCk7Ci0rCi0gICAgIGNlcnRVc2FnZSA9IGNVc2FnZTsKLSAg ICAgY2VydCA9IENFUlRfRmluZENlcnRCeU5pY2tuYW1lKENFUlRfR2V0RGVmYXVsdENlcnREQigp LCBuaWNrbmFtZSk7Ci0gCi1AQCAtMTgxMiw4ICsxODcwLDEzIEBAIEphdmFfb3JnX21vemlsbGFf anNzX0NyeXB0b01hbmFnZXJfdmVyaWZ5Q2VydE5vd05hdGl2ZShKTklFbnYgKmVudiwKLSAgICAg ICAgIFBSX3NtcHJpbnRmX2ZyZWUobWVzc2FnZSk7Ci0gICAgICAgICBnb3RvIGZpbmlzaDsKLSAg ICAgfSBlbHNlIHsKLS0gICAgICAgIHJ2ID0gQ0VSVF9WZXJpZnlDZXJ0Tm93KENFUlRfR2V0RGVm YXVsdENlcnREQigpLCBjZXJ0LAotLSAgICAgICAgICAgIGNoZWNrU2lnLCBjZXJ0VXNhZ2UsIE5V TEwgKTsKLSsgICAgICAgIGlmKCBvY3NwUG9saWN5ID09IE9DU1BfTEVBRl9BTkRfQ0hBSU5fUE9M SUNZKSB7Ci0rICAgICAgICAgICAgcnYgPSBKU1NMX3ZlcmlmeUNlcnRQS0lYKCBjZXJ0LCBjZXJ0 VXNhZ2UsCi0rICAgICAgICAgICAgICAgIE5VTEwgLyogcGluIGFyZyAqLywgb2NzcFBvbGljeSwg TlVMTCwgTlVMTCk7Ci0rICAgICAgICB9IGVsc2UgewotKyAgICAgICAgICAgIHJ2ID0gQ0VSVF9W ZXJpZnlDZXJ0Tm93KENFUlRfR2V0RGVmYXVsdENlcnREQigpLCBjZXJ0LAotKyAgICAgICAgICAg ICAgICBjaGVja1NpZywgY2VydFVzYWdlLCBOVUxMICk7Ci0rICAgICAgICB9Ci0gICAgIH0KLSAK LSBmaW5pc2g6Ci1AQCAtMTg1OCw2ICsxOTIxLDggQEAgSmF2YV9vcmdfbW96aWxsYV9qc3NfQ3J5 cHRvTWFuYWdlcl92ZXJpZnlDZXJ0VGVtcE5hdGl2ZShKTklFbnYgKmVudiwKLSAgICAgZGVyQ2Vy dHNbMF0gPSBKU1NfQnl0ZUFycmF5VG9TRUNJdGVtKGVudiwgcGFja2FnZUFycmF5KTsKLSAgICAg ZGVyQ2VydHNbMV0gPSBOVUxMOwotIAotKyAgICBpbnQgb2NzcFBvbGljeSA9IEpTU0xfZ2V0T0NT UFBvbGljeSgpOwotKwotICAgICBydiA9IENFUlRfSW1wb3J0Q2VydHMoY2VydGRiLCBjVXNhZ2Us Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAxLCBkZXJDZXJ0cywgJmNlcnRBcnJheSwgUFJf RkFMU0UgLyp0ZW1wIENlcnRzKi8sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBQUl9GQUxT RSAvKmNhT25seSovLCBOVUxMKTsKLUBAIC0xODY5LDggKzE5MzQsMTQgQEAgSmF2YV9vcmdfbW96 aWxsYV9qc3NfQ3J5cHRvTWFuYWdlcl92ZXJpZnlDZXJ0VGVtcE5hdGl2ZShKTklFbnYgKmVudiwK LSAgICAgfQotIAotICAgICBjZXJ0VXNhZ2UgPSBjVXNhZ2U7Ci0tICAgIHJ2ID0gQ0VSVF9WZXJp ZnlDZXJ0Tm93KGNlcnRkYiwgY2VydEFycmF5WzBdLAotLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICBjaGVja1NpZywgY2VydFVzYWdlLCBOVUxMICk7Ci0rCi0rICAgIGlmKCBvY3NwUG9saWN5 ID09IE9DU1BfTEVBRl9BTkRfQ0hBSU5fUE9MSUNZKSB7Ci0rICAgICAgICBydiA9IEpTU0xfdmVy aWZ5Q2VydFBLSVgoIGNlcnRBcnJheVswXSwgY2VydFVzYWdlLAotKyAgICAgICAgICAgIE5VTEwg LyogcGluIGFyZyAqLywgb2NzcFBvbGljeSwgTlVMTCwgTlVMTCk7Ci0rICAgIH0gZWxzZSB7Ci0r ICAgICAgICBydiA9IENFUlRfVmVyaWZ5Q2VydE5vdyhjZXJ0ZGIsIGNlcnRBcnJheVswXSwKLSsg ICAgICAgICAgICBjaGVja1NpZywgY2VydFVzYWdlLCBOVUxMICk7Ci0rICAgIH0KLSAKLSAgICAg ZmluaXNoOgotICAgICAvKiB0aGlzIGNoZWNrcyBmb3IgTlVMTCAqLwotZGlmZiAtLWdpdCBhL29y Zy9tb3ppbGxhL2pzcy9zc2wvY2FsbGJhY2tzLmMgYi9vcmcvbW96aWxsYS9qc3Mvc3NsL2NhbGxi YWNrcy5jCi1pbmRleCA2MzRmMzFlYy4uNDI1OTRhMTQgMTAwNjQ0Ci0tLS0gYS9vcmcvbW96aWxs YS9qc3Mvc3NsL2NhbGxiYWNrcy5jCi0rKysgYi9vcmcvbW96aWxsYS9qc3Mvc3NsL2NhbGxiYWNr cy5jCi1AQCAtMjAsNiArMjAsNDAgQEAKLSAjaW5jbHVkZSA8cGsxMXV0aWwuaD4KLSAjaW5jbHVk ZSA8c2VjZGVyLmg+Ci0gCi0raW50Ci0rSlNTTF9nZXRPQ1NQUG9saWN5KCkgewotKyAgICBKTklF bnYgKmVudjsKLSsgICAgamludCBwb2xpY3kgPSAtMTsKLSsKLSsgICAgam1ldGhvZElEIGdldE9D U1BQb2xpY3lJRDsKLSsgICAgamNsYXNzIGNyeXB0b01hbmFnZXJDbGFzczsKLSsKLSsgICAgLyog Z2V0IHRoZSBKTkkgZW52aXJvbm1lbnQgKi8KLSsgICAgaWYoKCpKU1NfamF2YVZNKS0+QXR0YWNo Q3VycmVudFRocmVhZChKU1NfamF2YVZNLCAodm9pZCoqKSZlbnYsIE5VTEwpICE9IDApewotKyAg ICAgICAgUFJfQVNTRVJUKFBSX0ZBTFNFKTsKLSsgICAgICAgIGdvdG8gZmluaXNoOwotKyAgICB9 Ci0rCi0rICAgIGNyeXB0b01hbmFnZXJDbGFzcyA9ICgqZW52KS0+RmluZENsYXNzKGVudiwgQ1JZ UFRPX01BTkFHRVJfTkFNRSk7Ci0rICAgIGlmKCBjcnlwdG9NYW5hZ2VyQ2xhc3MgPT0gTlVMTCAp IHsKLSsgICAgICAgIEFTU0VSVF9PVVRPRk1FTShlbnYpOwotKyAgICAgICAgZ290byBmaW5pc2g7 Ci0rICAgIH0KLSsgICAgZ2V0T0NTUFBvbGljeUlEID0gKCplbnYpLT5HZXRTdGF0aWNNZXRob2RJ RChlbnYsIGNyeXB0b01hbmFnZXJDbGFzcywKLSsgICAgICAgIEdFVF9PQ1NQX1BPTElDWV9OQU1F LEdFVF9PQ1NQX1BPTElDWV9TSUcpOwotKwotKyAgICBpZiggZ2V0T0NTUFBvbGljeUlEID09IE5V TEwgKSB7Ci0rICAgICAgICBBU1NFUlRfT1VUT0ZNRU0oZW52KTsKLSsgICAgICAgIGdvdG8gZmlu aXNoOwotKyAgICB9Ci0rCi0rICAgIHBvbGljeSA9ICgqZW52KS0+Q2FsbFN0YXRpY0ludE1ldGhv ZChlbnYsIGNyeXB0b01hbmFnZXJDbGFzcywKLSsgICAgICAgICBnZXRPQ1NQUG9saWN5SUQpOwot KwotK2ZpbmlzaDoKLSsgICAgcmV0dXJuIChpbnQpIHBvbGljeTsKLSt9Ci0rCi0gc3RhdGljIFNF Q1N0YXR1cwotIHNlY0NtcENlcnRDaGFpbldDQU5hbWVzKENFUlRDZXJ0aWZpY2F0ZSAqY2VydCwg Q0VSVERpc3ROYW1lcyAqY2FOYW1lcykgCi0gewotQEAgLTQ0Myw4ICs0NzcsOSBAQCBKU1NMX0Rl ZmF1bHRDZXJ0QXV0aENhbGxiYWNrKHZvaWQgKmFyZywgUFJGaWxlRGVzYyAqZmQsIFBSQm9vbCBj aGVja1NpZywKLSAgICAgU0VDQ2VydFVzYWdlICAgICAgY2VydFVzYWdlOwotICAgICBDRVJUQ2Vy dGlmaWNhdGUgICAqcGVlckNlcnQ9TlVMTDsKLSAKLSsgICAgaW50IG9jc3BQb2xpY3kgPSBKU1NM X2dldE9DU1BQb2xpY3koKTsKLSsKLSAgICAgY2VydFVzYWdlID0gaXNTZXJ2ZXIgPyBjZXJ0VXNh Z2VTU0xDbGllbnQgOiBjZXJ0VXNhZ2VTU0xTZXJ2ZXI7Ci0tIAotIAotICAgICAvKiBTU0xfUGVl ckNlcnRpZmljYXRlKCkgcmV0dXJucyBhIHNoYWxsb3cgY29weSBvZiB0aGUgY2VydCwgc28gd2UK LSAgICAgICAgbXVzdCBkZXN0cm95IGl0IGJlZm9yZSB3ZSBleGl0IHRoaXMgZnVuY3Rpb24gKi8K LUBAIC00NTIsOCArNDg3LDEzIEBAIEpTU0xfRGVmYXVsdENlcnRBdXRoQ2FsbGJhY2sodm9pZCAq YXJnLCBQUkZpbGVEZXNjICpmZCwgUFJCb29sIGNoZWNrU2lnLAotICAgICBwZWVyQ2VydCAgID0g U1NMX1BlZXJDZXJ0aWZpY2F0ZShmZCk7Ci0gCi0gICAgIGlmIChwZWVyQ2VydCkgewotLSAgICAg ICAgcnYgPSBDRVJUX1ZlcmlmeUNlcnROb3coQ0VSVF9HZXREZWZhdWx0Q2VydERCKCksIHBlZXJD ZXJ0LAotLSAgICAgICAgICAgICAgICBjaGVja1NpZywgY2VydFVzYWdlLCBOVUxMIC8qcGluYXJn Ki8pOwotKyAgICAgICAgaWYoIG9jc3BQb2xpY3kgPT0gT0NTUF9MRUFGX0FORF9DSEFJTl9QT0xJ Q1kpIHsKLSsgICAgICAgICAgICBydiA9IEpTU0xfdmVyaWZ5Q2VydFBLSVgoIHBlZXJDZXJ0LCBj ZXJ0VXNhZ2UsCi0rICAgICAgICAgICAgICAgICAgICAgTlVMTCAvKiBwaW4gYXJnICovLCBvY3Nw UG9saWN5LCBOVUxMLCBOVUxMKTsKLSsgICAgICAgIH0gZWxzZSB7Ci0rICAgICAgICAgICAgcnYg PSBDRVJUX1ZlcmlmeUNlcnROb3coQ0VSVF9HZXREZWZhdWx0Q2VydERCKCksIHBlZXJDZXJ0LAot KyAgICAgICAgICAgICAgICAgICAgY2hlY2tTaWcsIGNlcnRVc2FnZSwgTlVMTCAvKnBpbmFyZyov KTsKLSsgICAgICAgIH0KLSAgICAgfQotIAotICAgICAvKiBpZiB3ZSdyZSBhIHNlcnZlciwgdGhl biB3ZSBkb24ndCBuZWVkIHRvIGNoZWNrIHRoZSBDTiBvZiB0aGUKLUBAIC01NjksNiArNjA5LDgg QEAgSlNTTF9KYXZhQ2VydEF1dGhDYWxsYmFjayh2b2lkICphcmcsIFBSRmlsZURlc2MgKmZkLCBQ UkJvb2wgY2hlY2tTaWcsCi0gICAgIGxvZy50YWlsID0gTlVMTDsKLSAgICAgbG9nLmNvdW50ID0g MDsKLSAKLSsgICAgaW50IG9jc3BQb2xpY3kgPSBKU1NMX2dldE9DU1BQb2xpY3koKTsKLSsKLSAg ICAgLyogZ2V0IHRoZSBKTkkgZW52aXJvbm1lbnQgKi8KLSAgICAgaWYoKCpKU1NfamF2YVZNKS0+ QXR0YWNoQ3VycmVudFRocmVhZChKU1NfamF2YVZNLCAodm9pZCoqKSZlbnYsIE5VTEwpICE9IDAp ewotICAgICAgICAgUFJfQVNTRVJUKFBSX0ZBTFNFKTsKLUBAIC01ODksMTMgKzYzMSwxOCBAQCBK U1NMX0phdmFDZXJ0QXV0aENhbGxiYWNrKHZvaWQgKmFyZywgUFJGaWxlRGVzYyAqZmQsIFBSQm9v bCBjaGVja1NpZywKLSAgICAgICogbG9nZ2luZyBwYXJhbWV0ZXIpCi0gICAgICAqLwotIAotLSAg ICB2ZXJpZmljYXRpb25SZXN1bHQgPSBDRVJUX1ZlcmlmeUNlcnQoICAgQ0VSVF9HZXREZWZhdWx0 Q2VydERCKCksCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlZXJDZXJ0LAotLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjaGVja1NpZywKLS0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgY2VydFVzYWdlLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBQUl9Ob3coKSwK LS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCAvKnBpbmFyZyovLAotLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAmbG9nKTsKLSsgICAgaWYoIG9jc3BQb2xpY3kgPT0gT0NTUF9M RUFGX0FORF9DSEFJTl9QT0xJQ1kpIHsKLSsgICAgICAgIHZlcmlmaWNhdGlvblJlc3VsdCA9IEpT U0xfdmVyaWZ5Q2VydFBLSVgoIHBlZXJDZXJ0LCBjZXJ0VXNhZ2UsCi0rICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgTlVMTCAvKiBwaW4gYXJnICovLCBvY3NwUG9saWN5LCAmbG9nLCBO VUxMKTsKLSsgICAgIH0gIGVsc2UgewotKyAgICAgICAgdmVyaWZpY2F0aW9uUmVzdWx0ID0gQ0VS VF9WZXJpZnlDZXJ0KCAgIENFUlRfR2V0RGVmYXVsdENlcnREQigpLAotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgcGVlckNlcnQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBjaGVja1NpZywKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlcnRVc2Fn ZSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBSX05vdygpLAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCAvKnBpbmFyZyovLAotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgJmxvZyk7Ci0rICAgICB9Ci0gCi0gICAgIGlmICh2ZXJpZmljYXRp b25SZXN1bHQgPT0gU0VDU3VjY2VzcyAmJiBsb2cuY291bnQgPiAwKSB7Ci0gICAgICAgICB2ZXJp ZmljYXRpb25SZXN1bHQgPSBTRUNGYWlsdXJlOwotZGlmZiAtLWdpdCBhL29yZy9tb3ppbGxhL2pz cy9zc2wvY29tbW9uLmMgYi9vcmcvbW96aWxsYS9qc3Mvc3NsL2NvbW1vbi5jCi1pbmRleCA1YzZl ZmE4NS4uYWVjODg1NTIgMTAwNjQ0Ci0tLS0gYS9vcmcvbW96aWxsYS9qc3Mvc3NsL2NvbW1vbi5j Ci0rKysgYi9vcmcvbW96aWxsYS9qc3Mvc3NsL2NvbW1vbi5jCi1AQCAtMTUsNiArMTUsNyBAQAot ICNpbmNsdWRlIDxwazExdXRpbC5oPgotICNpbmNsdWRlICJfam5pL29yZ19tb3ppbGxhX2pzc19z c2xfU1NMU29ja2V0LmgiCi0gI2luY2x1ZGUgImpzc2wuaCIKLSsjaW5jbHVkZSAiY2VydC5oIgot IAotICNpZmRlZiBXSU4zMgotICNpbmNsdWRlIDx3aW5zb2NrLmg+Ci1AQCAtODg5LDMgKzg5MCwx OTggQEAgSlNTX1NTTF9wcm9jZXNzRXhjZXB0aW9ucyhKTklFbnYgKmVudiwgUFJGaWxlUHJpdmF0 ZSAqcHJpdikKLSAgICAgICAgIFBSX0FTU0VSVChyZXQgPT0gMCk7Ci0gICAgIH0KLSB9Ci0rCi0r LyogR2V0IHRoZSB0cnVzdGVkIGFuY2hvciBmb3IgcGtpeCAqLwotKwotK0NFUlRDZXJ0aWZpY2F0 ZSAqIGdldFJvb3QoQ0VSVENlcnRpZmljYXRlICpjZXJ0LCAKLSsgICAgU0VDQ2VydGlmaWNhdGVV c2FnZSBjZXJ0VXNhZ2UpIAotK3sKLSsgICAgQ0VSVENlcnRpZmljYXRlICAqcm9vdCA9IE5VTEw7 Ci0rICAgIENFUlRDZXJ0TGlzdE5vZGUgKm5vZGUgPSBOVUxMOwotKwotKyAgICBpZiggIWNlcnQg KSB7Ci0rICAgICAgICBnb3RvIGZpbmlzaDsKLSsgICAgfQotKwotKyAgICBDRVJUQ2VydExpc3Qg KmNlcnRMaXN0ID0gIENFUlRfR2V0Q2VydENoYWluRnJvbUNlcnQoY2VydCwgCi0rICAgICAgICBQ Ul9Ob3coKSwgCi0rICAgICAgICBjZXJ0VXNhZ2UpOwotKwotKyAgICBpZiggY2VydExpc3QgPT0g TlVMTCkgewotKyAgICAgICAgZ290byBmaW5pc2g7Ci0rICAgIH0KLSsKLSsgICAgZm9yIChub2Rl ID0gQ0VSVF9MSVNUX0hFQUQoY2VydExpc3QpOwotKyAgICAgICAhQ0VSVF9MSVNUX0VORChub2Rl LCBjZXJ0TGlzdCk7Ci0rICAgICAgIG5vZGUgPSBDRVJUX0xJU1RfTkVYVChub2RlKSkgewotKyAg ICAgICAKLSsgICAgICAgIC8qIHRyeSB0byBmaW5kIHRoZSByb290ICovCi0rICAgICAgIGlmKCBu b2RlLT5jZXJ0ICYmIG5vZGUtPmNlcnQtPmlzUm9vdCApIHsKLSsgICAgICAgICAgcm9vdCA9IENF UlRfRHVwQ2VydGlmaWNhdGUobm9kZS0+Y2VydCkgOwotKyAgICAgICB9IAotKyAgICB9Ci0rCi0r ZmluaXNoOgotKyAgCi0rICAgIENFUlRfRGVzdHJveUNlcnRMaXN0IChjZXJ0TGlzdCk7IAotKyAg ICByZXR1cm4gcm9vdDsgCi0rfQotKwotKy8qIFZlcmlmeSBhIGNlcnQgdXNpbmcgZXhwbGljaXQg UEtJWCBjYWxsLgotKyAqIEZvciBub3cgb25seSB1c2VkIGluIE9DU1AgQUlBIGNvbnRleHQuCi0r ICogVGhlIHJlc3VsdCBvZiB0aGlzIGNhbGwgd2lsbCBiZSBhIGZ1bGwgY2hhaW4KLSsgKiBhbmQg bGVhZiBuZXR3b3JrIEFJQSBvY3NwIHZhbGlkYXRpb24uCi0rICogVGhlIHBvbGljeSBwYXJhbSB3 aWxsIGJlIHVzZWQgaW4gdGhlIGZ1dHVyZSB0bwotKyAqIGhhbmRsZSBtb3JlIHNjZW5hcmlvcy4K LSsgKi8KLSsKLStTRUNTdGF0dXMgSlNTTF92ZXJpZnlDZXJ0UEtJWChDRVJUQ2VydGlmaWNhdGUg KmNlcnQsCi0rICAgICAgU0VDQ2VydGlmaWNhdGVVc2FnZSBjZXJ0VXNhZ2Usc2VjdVBXRGF0YSAq cHdkYXRhLCBpbnQgb2NzcFBvbGljeSwKLSsgICAgICBDRVJUVmVyaWZ5TG9nICpsb2csIFNFQ0Nl cnRpZmljYXRlVXNhZ2UgKnVzYWdlKSAKLSt7Ci0rCi0rICAgIC8qIHB1dCB0aGUgZmlyc3Qgc2V0 IG9mIHBvc3NpYmxlIGZsYWdzIGludGVybmFsbHkgaGVyZSBmaXJzdCAqLwotKyAgICAvKiBsYXRl ciB0aGVyZSBjb3VsZCBiZSBhIG1vcmUgY29tcGxldGUgbGlzdCB0byBjaG9vc2UgZnJvbSAqLwot KyAgICAvKiBzdXBwb3J0IG91ciBoYXJkIGNvcmUgZmV0Y2ggYWlhIG9jc3AgcG9saWN5IGZvciBu b3cgKi8KLSsKLSsgICAgc3RhdGljIFBSVWludDY0IG9jc3BfRW5hYmxlZF9IYXJkX1BvbGljeV9M ZWFmRmxhZ3NbMl0gPSB7Ci0rICAgICAgICAvKiBjcmwgKi8KLSsgICAgICAgIDAsCi0rICAgICAg ICAvKiBvY3NwICovCi0rICAgICAgICBDRVJUX1JFVl9NX1RFU1RfVVNJTkdfVEhJU19NRVRIT0Qg fAotKyAgICAgICAgQ0VSVF9SRVZfTV9GQUlMX09OX01JU1NJTkdfRlJFU0hfSU5GTwotKyAgICB9 OwotKwotKyAgICBzdGF0aWMgUFJVaW50NjQgb2NzcF9FbmFibGVkX0hhcmRfUG9saWN5X0NoYWlu RmxhZ3NbMl0gPSB7Ci0rICAgICAgICAvKiBjcmwgKi8KLSsgICAgICAgIDAsCi0rICAgICAgICAv KiBvY3NwICovCi0rICAgICAgICBDRVJUX1JFVl9NX1RFU1RfVVNJTkdfVEhJU19NRVRIT0QgfAot KyAgICAgICAgQ0VSVF9SRVZfTV9GQUlMX09OX01JU1NJTkdfRlJFU0hfSU5GTwotKyAgICB9Owot KwotKyAgICBzdGF0aWMgQ0VSVFJldm9jYXRpb25NZXRob2RJbmRleAotKyAgICAgICAgb2NzcF9F bmFibGVkX0hhcmRfUG9saWN5X01ldGhvZF9QcmVmZXJlbmNlID0gewotKyAgICAgICAgICAgIGNl cnRfcmV2b2NhdGlvbl9tZXRob2Rfb2NzcAotKyAgICAgICAgfTsKLSsKLSsgICAgc3RhdGljIENF UlRSZXZvY2F0aW9uRmxhZ3Mgb2NzcF9FbmFibGVkX0hhcmRfUG9saWN5ID0gewotKyAgICB7IC8q IGxlYWZUZXN0cyAqLwotKyAgICAgIDIsCi0rICAgICAgb2NzcF9FbmFibGVkX0hhcmRfUG9saWN5 X0xlYWZGbGFncywKLSsgICAgICAxLAotKyAgICAgICZvY3NwX0VuYWJsZWRfSGFyZF9Qb2xpY3lf TWV0aG9kX1ByZWZlcmVuY2UsCi0rICAgICAgMCB9LAotKyAgICB7IC8qIGNoYWluVGVzdHMgKi8K LSsgICAgICAyLAotKyAgICAgIG9jc3BfRW5hYmxlZF9IYXJkX1BvbGljeV9DaGFpbkZsYWdzLAot KyAgICAgIDEsCi0rICAgICAgJm9jc3BfRW5hYmxlZF9IYXJkX1BvbGljeV9NZXRob2RfUHJlZmVy ZW5jZSwKLSsgICAgICAwIH0KLSsgICAgfTsKLSsKLSsgICAgLyogZm9yIGZ1dHVyZSBleHBhbnNp b24gKi8KLSsKLSsgICAgQ0VSVFZhbE91dFBhcmFtIGN2b3V0WzIwXSA9IHswfTsKLSsgICAgQ0VS VFZhbEluUGFyYW0gY3ZpblsyMF0gPSB7MH07Ci0rCi0rICAgIGludCBpblBhcmFtSW5kZXggPSAw OwotKyAgICBpbnQgb3V0UGFyYW1JbmRleCA9IDA7Ci0rICAgIENFUlRSZXZvY2F0aW9uRmxhZ3Mg KnJldiA9IE5VTEw7Ci0rCi0rICAgIENFUlRDZXJ0TGlzdCAqdHJ1c3RlZENlcnRMaXN0ID0gTlVM TDsKLSsKLSsgICAgUFJCb29sIGZldGNoQ2VydHMgPSBQUl9GQUxTRTsKLSsKLSsgICAgU0VDU3Rh dHVzIHJlcyA9ICBTRUNGYWlsdXJlOwotKyAgICBpZihjZXJ0ID09IE5VTEwpIHsKLSsgICAgICAg IGdvdG8gZmluaXNoOwotKyAgICB9Ci0rCi0rICAgIGlmKG9jc3BQb2xpY3kgIT0gT0NTUF9MRUFG X0FORF9DSEFJTl9QT0xJQ1kpIHsKLSsgICAgICAgIGdvdG8gZmluaXNoOwotKyAgICB9Ci0rCi0r ICAgIC8qIEZvcmNlIHRoZSBzdHJpY3Qgb2NzcCBuZXR3b3JrIGNoZWNrIG9uIGNoYWluCi0rICAg ICAgIGFuZCBsZWFmLgotKyAgICAqLwotKwotKyAgICBmZXRjaENlcnRzID0gUFJfVFJVRTsgICAK LSsgICAgcmV2ID0gJm9jc3BfRW5hYmxlZF9IYXJkX1BvbGljeTsKLSsKLSsgICAgLyogZmV0Y2gg YWlhIG92ZXIgbmV0ICovCi0rIAotKyAgICBjdmluW2luUGFyYW1JbmRleF0udHlwZSA9IGNlcnRf cGlfdXNlQUlBQ2VydEZldGNoOwotKyAgICBjdmluW2luUGFyYW1JbmRleF0udmFsdWUuc2NhbGFy LmIgPSBmZXRjaENlcnRzOwotKyAgICBpblBhcmFtSW5kZXgrKzsgCi0rCi0rICAgIC8qIHRpbWUg Ki8KLSsKLSsgICAgY3ZpbltpblBhcmFtSW5kZXhdLnR5cGUgPSBjZXJ0X3BpX2RhdGU7Ci0rICAg IGN2aW5baW5QYXJhbUluZGV4XS52YWx1ZS5zY2FsYXIudGltZSA9IFBSX05vdygpOwotKyAgICBp blBhcmFtSW5kZXgrKzsKLSsKLSsgICAgLyogZmxhZ3MgKi8KLSsKLSsgICAgY3ZpbltpblBhcmFt SW5kZXhdLnR5cGUgPSBjZXJ0X3BpX3Jldm9jYXRpb25GbGFnczsKLSsgICAgY3ZpbltpblBhcmFt SW5kZXhdLnZhbHVlLnBvaW50ZXIucmV2b2NhdGlvbiA9IHJldjsKLSsgICAgaW5QYXJhbUluZGV4 Kys7Ci0rCi0rCi0rICAgIC8qIGVzdGFibGlzaCB0cnVzdCBhbmNob3IgKi8KLSsKLSsgICAgQ0VS VENlcnRpZmljYXRlICpyb290ID0gZ2V0Um9vdChjZXJ0LGNlcnRVc2FnZSk7Ci0rCi0rICAgIC8q IFRyeSB0byBhZGQgdGhlIHJvb3QgYXMgdGhlIHRydXN0IGFuY2hvciBzbyBhbGwgdGhlCi0rICAg ICAgIG90aGVyIG1lbWViZXJzIG9mIHRoZSBjYSBjaGFpbiB3aWxsIGdldCB2YWxpZGF0ZWQuCi0r ICAgICovCi0rCi0rICAgIGlmKCByb290ICE9IE5VTEwgKSB7Ci0rICAgICAgICB0cnVzdGVkQ2Vy dExpc3QgPSBDRVJUX05ld0NlcnRMaXN0KCk7Ci0rICAgICAgICBDRVJUX0FkZENlcnRUb0xpc3RU YWlsKHRydXN0ZWRDZXJ0TGlzdCwgcm9vdCk7ICAgICAgICAKLSsKLSsgICAgICAgIGN2aW5baW5Q YXJhbUluZGV4XS50eXBlID0gY2VydF9waV90cnVzdEFuY2hvcnM7Ci0rICAgICAgICBjdmluW2lu UGFyYW1JbmRleF0udmFsdWUucG9pbnRlci5jaGFpbiA9IHRydXN0ZWRDZXJ0TGlzdDsKLSsKLSsg ICAgICAgIGluUGFyYW1JbmRleCsrOwotKyAgICB9Ci0rCi0rICAgIGN2aW5baW5QYXJhbUluZGV4 XS50eXBlID0gY2VydF9waV9lbmQ7Ci0rCi0rICAgIGlmKGxvZyAhPSBOVUxMKSB7Ci0rICAgICAg ICBjdm91dFtvdXRQYXJhbUluZGV4XS50eXBlID0gY2VydF9wb19lcnJvckxvZzsKLSsgICAgICAg IGN2b3V0W291dFBhcmFtSW5kZXhdLnZhbHVlLnBvaW50ZXIubG9nID0gbG9nOwotKyAgICAgICAg b3V0UGFyYW1JbmRleCArKzsKLSsgICAgfQotKwotKyAgICBpbnQgdXNhZ2VJbmRleCA9IDA7Ci0r ICAgIGlmKHVzYWdlICE9IE5VTEwpIHsKLSsgICAgICAgIHVzYWdlSW5kZXggPSBvdXRQYXJhbUlu ZGV4OwotKyAgICAgICAgY3ZvdXRbb3V0UGFyYW1JbmRleF0udHlwZSA9IGNlcnRfcG9fdXNhZ2Vz OwotKyAgICAgICAgY3ZvdXRbb3V0UGFyYW1JbmRleF0udmFsdWUuc2NhbGFyLnVzYWdlcyA9IDA7 Ci0rICAgICAgICBvdXRQYXJhbUluZGV4ICsrOwotKyAgICB9Ci0rCi0rICAgIGN2b3V0W291dFBh cmFtSW5kZXhdLnR5cGUgPSBjZXJ0X3BvX2VuZDsKLSsKLSsgICAgcmVzID0gQ0VSVF9QS0lYVmVy aWZ5Q2VydChjZXJ0LCBjZXJ0VXNhZ2UsIGN2aW4sIGN2b3V0LCAmcHdkYXRhKTsKLSsKLStmaW5p c2g6Ci0rICAgIC8qIGNsZWFuIHVwIGFueSB0cnVzdGVkIGNlcnQgbGlzdCAqLwotKwotKyAgICBp ZiAodHJ1c3RlZENlcnRMaXN0KSB7Ci0rICAgICAgICBDRVJUX0Rlc3Ryb3lDZXJ0TGlzdCh0cnVz dGVkQ2VydExpc3QpOwotKyAgICAgICAgdHJ1c3RlZENlcnRMaXN0ID0gTlVMTDsKLSsgICAgfQot KwotKyAgICBpZihyb290KSB7Ci0rICAgICAgIENFUlRfRGVzdHJveUNlcnRpZmljYXRlKHJvb3Qp OwotKyAgICAgICByb290ID0gTlVMTDsKLSsgICAgfQotKwotKyAgICBpZihyZXMgPT0gU0VDU3Vj Y2VzcyAmJiB1c2FnZSkgewotKyAgICAgICAgKnVzYWdlID0gY3ZvdXRbdXNhZ2VJbmRleF0udmFs dWUuc2NhbGFyLnVzYWdlczsKLSsgICAgfQotKwotKyAgICByZXR1cm4gcmVzOwotK30KLWRpZmYg LS1naXQgYS9vcmcvbW96aWxsYS9qc3Mvc3NsL2pzc2wuaCBiL29yZy9tb3ppbGxhL2pzcy9zc2wv anNzbC5oCi1pbmRleCBjMTVhY2Y4Ny4uMGU5M2VlYmUgMTAwNjQ0Ci0tLS0gYS9vcmcvbW96aWxs YS9qc3Mvc3NsL2pzc2wuaAotKysrIGIvb3JnL21vemlsbGEvanNzL3NzbC9qc3NsLmgKLUBAIC01 LDggKzUsMjcgQEAKLSAjaWZuZGVmIE9SR19NT1pJTExBX0pTU19TU0xfSlNTTF9ICi0gI2RlZmlu ZSBPUkdfTU9aSUxMQV9KU1NfU1NMX0pTU0xfSAotIAotKy8qIG9jc3AgcG9saWN5IGNvbnN0YW50 cyAqLwotKwotKy8qIG9jc3AgcG9saWN5IGNvbnN0YW50cyAqLwotK3N0YXRpYyBjb25zdCBpbnQg T0NTUF9OT19QT0xJQ1kgPSAwOwotK3N0YXRpYyBjb25zdCBpbnQgT0NTUF9OT1JNQUxfUE9MSUNZ ID0gMTsKLStzdGF0aWMgY29uc3QgaW50IE9DU1BfTEVBRl9BTkRfQ0hBSU5fUE9MSUNZID0gMjsK LSsKLSAjaW5jbHVkZSA8c3NsLmg+Ci0gCi0rdHlwZWRlZiBzdHJ1Y3QKLSt7Ci0rICAgIGVudW0K LSsgICAgewotKyAgICAgICAgUFdfTk9ORSA9IDAsCi0rICAgICAgICBQV19GUk9NRklMRSA9IDEs Ci0rICAgICAgICBQV19QTEFJTlRFWFQgPSAyLAotKyAgICAgICAgUFdfRVhURVJOQUwgPSAzCi0r ICAgIH0gc291cmNlOwotKyAgICBjaGFyICpkYXRhOwotK30gc2VjdVBXRGF0YTsKLSsKLSBzdHJ1 Y3QgSlNTTF9Tb2NrZXREYXRhIHsKLSAgICAgUFJGaWxlRGVzYyAqZmQ7Ci0gICAgIGpvYmplY3Qg c29ja2V0T2JqZWN0OyAvKiB3ZWFrIGdsb2JhbCByZWYgKi8KLUBAIC0xMjAsNCArMTM5LDE0IEBA IEpTU19TU0xfcHJvY2Vzc0V4Y2VwdGlvbnMoSk5JRW52ICplbnYsIFBSRmlsZVByaXZhdGUgKnBy aXYpOwotIAotIHZvaWQgSlNTTF90aHJvd1NTTFNvY2tldEV4Y2VwdGlvbihKTklFbnYgKmVudiwg Y2hhciAqbWVzc2FnZSk7Ci0gCi0raW50Ci0rSlNTTF9nZXRPQ1NQUG9saWN5KCk7Ci0rCi0rCi0r U0VDU3RhdHVzIAotK0pTU0xfdmVyaWZ5Q2VydFBLSVgoQ0VSVENlcnRpZmljYXRlICpjZXJ0LAot KyAgICAgICAgICAgICAgICAgICAgU0VDQ2VydGlmaWNhdGVVc2FnZSBjZXJ0VXNhZ2UsCi0rICAg ICAgICAgICAgICAgICAgICBzZWN1UFdEYXRhICpwd2RhdGEsIGludCBvY3NwUG9saWN5LAotKyAg ICAgICAgICAgICAgICAgICAgQ0VSVFZlcmlmeUxvZyAqbG9nLFNFQ0NlcnRpZmljYXRlVXNhZ2Ug KnVzYWdlKTsKLSsKLSAjZW5kaWYKLWRpZmYgLS1naXQgYS9vcmcvbW96aWxsYS9qc3MvdXRpbC9q YXZhX2lkcy5oIGIvb3JnL21vemlsbGEvanNzL3V0aWwvamF2YV9pZHMuaAotaW5kZXggNzNiMzFm YTkuLjQwNTNkOWE3IDEwMDY0NAotLS0tIGEvb3JnL21vemlsbGEvanNzL3V0aWwvamF2YV9pZHMu aAotKysrIGIvb3JnL21vemlsbGEvanNzL3V0aWwvamF2YV9pZHMuaAotQEAgLTI3Niw2ICsyNzYs MTUgQEAgUFJfQkVHSU5fRVhURVJOX0MKLSAjZGVmaW5lIEdFVF9SRUNWX0JVRl9TSVpFICJnZXRS ZWNlaXZlQnVmZmVyU2l6ZSIKLSAjZGVmaW5lIEdFVF9CVUZfU0laRV9TSUcgIigpSSIKLSAKLSsv KgotKyAqIENyeXB0b01hbmFnZXIKLSsgKgotKyovCi0rCi0rI2RlZmluZSBDUllQVE9fTUFOQUdF Ul9OQU1FICJvcmcvbW96aWxsYS9qc3MvQ3J5cHRvTWFuYWdlciIKLSsjZGVmaW5lIEdFVF9PQ1NQ X1BPTElDWV9OQU1FICJnZXRPQ1NQUG9saWN5IgotKyNkZWZpbmUgR0VUX09DU1BfUE9MSUNZX1NJ RyAiKClJIgotKwotIC8qCi0gICogU29ja2V0QmFzZQotICAqLwoKZGlmZiAtLWdpdCBhL2pzcy1h aWEtb2NzcC0yLnBhdGNoIGIvanNzLWFpYS1vY3NwLTIucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IGM2YjJmMWMuLjAwMDAwMDAKLS0tIGEvanNzLWFpYS1vY3NwLTIucGF0Y2gK KysrIC9kZXYvbnVsbApAQCAtMSwxNDEgKzAsMCBAQAotRnJvbSAxZmU2YTQ1MWVjMGMzZWM5NjBh YzExMTliMzljNDA2ZDk5OWRhNWVjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogSmFj ayBNYWduZSA8am1hZ25lQHJlZGhhdC5jb20+Ci1EYXRlOiBGcmksIDggRmViIDIwMTkgMTE6MjE6 NDggLTA4MDAKLVN1YmplY3Q6IFtQQVRDSF0gQWRkaXRpb25hbDogUmVzb2x2ZSBCdWcgMTY2Njg3 MiAtIENDOiBFbmFibGUgQUlBIE9DU1AgY2VydAotIGNoZWNraW5nIGZvciBlbnRpcmUgY2VydCBj aGFpbi4KLQotU2ltcGxlIGZpeCB0byBtYWtlIHN1cmUgd2UgYXJlIHVzaW5nIHRoZSBjb3JyZWN0 IHZhcmlhbnQgb2YgdGhlIE5TUyBjZXJ0IHVzYWdlIHF1YW50aXR5LgotCi1JdCB0dXJucyBvdXQg c29tZSBjYWxscyBuZWVkIGEgU0VDQ2VydFVzYWdlIGFuZCBvdGhlcnMgbmVlZCBhIFNFQ0NlcnRp ZmljYXRlVXNhZ2UuCi1XZSBhbHNvIG5lZWQgdG8gY29udmVydCBiZXR3ZWVuIHRoZSB0d28gaW4g Y2VydGFpbiBpbnN0YW5jZXMuCi0KLUZvdW5kIGFuZCBmaXhlZCBkb3VibGUgY2VydGlmaWNhdGUg b2JqZWN0IGZyZWUgaXNzdWUuCi0tLS0KLSBvcmcvbW96aWxsYS9qc3Mvc3NsL2NhbGxiYWNrcy5j IHwgMTAgKysrKysrKystLQotIG9yZy9tb3ppbGxhL2pzcy9zc2wvY29tbW9uLmMgICAgfCAxOSAr KysrKysrKysrKysrKy0tLS0tCi0gb3JnL21vemlsbGEvanNzL3NzbC9qc3NsLmggICAgICB8ICAy ICstCi0gMyBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQot Ci1kaWZmIC0tZ2l0IGEvb3JnL21vemlsbGEvanNzL3NzbC9jYWxsYmFja3MuYyBiL29yZy9tb3pp bGxhL2pzcy9zc2wvY2FsbGJhY2tzLmMKLWluZGV4IDQyNTk0YTE0Li40ZmUwOGEyOSAxMDA2NDQK LS0tLSBhL29yZy9tb3ppbGxhL2pzcy9zc2wvY2FsbGJhY2tzLmMKLSsrKyBiL29yZy9tb3ppbGxh L2pzcy9zc2wvY2FsbGJhY2tzLmMKLUBAIC00ODEsNiArNDgxLDkgQEAgSlNTTF9EZWZhdWx0Q2Vy dEF1dGhDYWxsYmFjayh2b2lkICphcmcsIFBSRmlsZURlc2MgKmZkLCBQUkJvb2wgY2hlY2tTaWcs Ci0gCi0gICAgIGNlcnRVc2FnZSA9IGlzU2VydmVyID8gY2VydFVzYWdlU1NMQ2xpZW50IDogY2Vy dFVzYWdlU1NMU2VydmVyOwotIAotKyAgICAvKiBQS0lYIGNhbGwgbmVlZHMgYSBTRUNDZXJ0aWZp Y2F0ZSB1c2FnZSwgY29udmVydCAqLwotKyAgICBTRUNDZXJ0aWZpY2F0ZVVzYWdlIGNlcnRpZmlj YXRlVXNhZ2UgPSAgKFNFQ0NlcnRpZmljYXRlVXNhZ2UpMSA8PCBjZXJ0VXNhZ2U7Ci0rCi0gICAg IC8qIFNTTF9QZWVyQ2VydGlmaWNhdGUoKSByZXR1cm5zIGEgc2hhbGxvdyBjb3B5IG9mIHRoZSBj ZXJ0LCBzbyB3ZQotICAgICAgICBtdXN0IGRlc3Ryb3kgaXQgYmVmb3JlIHdlIGV4aXQgdGhpcyBm dW5jdGlvbiAqLwotIAotQEAgLTQ4OCw3ICs0OTEsNyBAQCBKU1NMX0RlZmF1bHRDZXJ0QXV0aENh bGxiYWNrKHZvaWQgKmFyZywgUFJGaWxlRGVzYyAqZmQsIFBSQm9vbCBjaGVja1NpZywKLSAKLSAg ICAgaWYgKHBlZXJDZXJ0KSB7Ci0gICAgICAgICBpZiggb2NzcFBvbGljeSA9PSBPQ1NQX0xFQUZf QU5EX0NIQUlOX1BPTElDWSkgewotLSAgICAgICAgICAgIHJ2ID0gSlNTTF92ZXJpZnlDZXJ0UEtJ WCggcGVlckNlcnQsIGNlcnRVc2FnZSwKLSsgICAgICAgICAgICBydiA9IEpTU0xfdmVyaWZ5Q2Vy dFBLSVgoIHBlZXJDZXJ0LCBjZXJ0aWZpY2F0ZVVzYWdlLAotICAgICAgICAgICAgICAgICAgICAg IE5VTEwgLyogcGluIGFyZyAqLywgb2NzcFBvbGljeSwgTlVMTCwgTlVMTCk7Ci0gICAgICAgICB9 IGVsc2UgewotICAgICAgICAgICAgIHJ2ID0gQ0VSVF9WZXJpZnlDZXJ0Tm93KENFUlRfR2V0RGVm YXVsdENlcnREQigpLCBwZWVyQ2VydCwKLUBAIC02MjQsNiArNjI3LDkgQEAgSlNTTF9KYXZhQ2Vy dEF1dGhDYWxsYmFjayh2b2lkICphcmcsIFBSRmlsZURlc2MgKmZkLCBQUkJvb2wgY2hlY2tTaWcs Ci0gICAgIGlmIChwZWVyQ2VydCA9PSBOVUxMKSBnb3RvIGZpbmlzaDsKLSAKLSAgICAgY2VydFVz YWdlID0gaXNTZXJ2ZXIgPyBjZXJ0VXNhZ2VTU0xDbGllbnQgOiBjZXJ0VXNhZ2VTU0xTZXJ2ZXI7 Ci0rICAgIC8qIFBLSVggY2FsbCBuZWVkcyBhIFNFQ0NlcnRpZmljYXRlIHVzYWdlLCBjb252ZXJ0 ICovCi0rICAgIFNFQ0NlcnRpZmljYXRlVXNhZ2UgY2VydGlmaWNhdGVVc2FnZSA9ICAoU0VDQ2Vy dGlmaWNhdGVVc2FnZSkxIDw8IGNlcnRVc2FnZTsKLSsKLSAKLSAgICAgLyogCi0gICAgICAqIHZl cmlmeSBpdCBhZ2FpbnN0IGN1cnJlbnQgdGltZSAtIChjYW4ndCB1c2UKLUBAIC02MzIsNyArNjM4 LDcgQEAgSlNTTF9KYXZhQ2VydEF1dGhDYWxsYmFjayh2b2lkICphcmcsIFBSRmlsZURlc2MgKmZk LCBQUkJvb2wgY2hlY2tTaWcsCi0gICAgICAqLwotIAotICAgICBpZiggb2NzcFBvbGljeSA9PSBP Q1NQX0xFQUZfQU5EX0NIQUlOX1BPTElDWSkgewotLSAgICAgICAgdmVyaWZpY2F0aW9uUmVzdWx0 ID0gSlNTTF92ZXJpZnlDZXJ0UEtJWCggcGVlckNlcnQsIGNlcnRVc2FnZSwKLSsgICAgICAgIHZl cmlmaWNhdGlvblJlc3VsdCA9IEpTU0xfdmVyaWZ5Q2VydFBLSVgoIHBlZXJDZXJ0LCBjZXJ0aWZp Y2F0ZVVzYWdlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwgLyogcGlu IGFyZyAqLywgb2NzcFBvbGljeSwgJmxvZywgTlVMTCk7Ci0gICAgICB9ICBlbHNlIHsKLSAgICAg ICAgIHZlcmlmaWNhdGlvblJlc3VsdCA9IENFUlRfVmVyaWZ5Q2VydCggICBDRVJUX0dldERlZmF1 bHRDZXJ0REIoKSwKLWRpZmYgLS1naXQgYS9vcmcvbW96aWxsYS9qc3Mvc3NsL2NvbW1vbi5jIGIv b3JnL21vemlsbGEvanNzL3NzbC9jb21tb24uYwotaW5kZXggYWVjODg1NTIuLmNiMjgxNzk4IDEw MDY0NAotLS0tIGEvb3JnL21vemlsbGEvanNzL3NzbC9jb21tb24uYwotKysrIGIvb3JnL21vemls bGEvanNzL3NzbC9jb21tb24uYwotQEAgLTg5NCw3ICs4OTQsNyBAQCBKU1NfU1NMX3Byb2Nlc3NF eGNlcHRpb25zKEpOSUVudiAqZW52LCBQUkZpbGVQcml2YXRlICpwcml2KQotIC8qIEdldCB0aGUg dHJ1c3RlZCBhbmNob3IgZm9yIHBraXggKi8KLSAKLSBDRVJUQ2VydGlmaWNhdGUgKiBnZXRSb290 KENFUlRDZXJ0aWZpY2F0ZSAqY2VydCwgCi0tICAgIFNFQ0NlcnRpZmljYXRlVXNhZ2UgY2VydFVz YWdlKSAKLSsgICAgU0VDQ2VydFVzYWdlIGNlcnRVc2FnZSkgCi0gewotICAgICBDRVJUQ2VydGlm aWNhdGUgICpyb290ID0gTlVMTDsKLSAgICAgQ0VSVENlcnRMaXN0Tm9kZSAqbm9kZSA9IE5VTEw7 Ci1AQCAtOTM2LDcgKzkzNiw3IEBAIENFUlRDZXJ0aWZpY2F0ZSAqIGdldFJvb3QoQ0VSVENlcnRp ZmljYXRlICpjZXJ0LAotICAqLwotIAotIFNFQ1N0YXR1cyBKU1NMX3ZlcmlmeUNlcnRQS0lYKENF UlRDZXJ0aWZpY2F0ZSAqY2VydCwKLS0gICAgICBTRUNDZXJ0aWZpY2F0ZVVzYWdlIGNlcnRVc2Fn ZSxzZWN1UFdEYXRhICpwd2RhdGEsIGludCBvY3NwUG9saWN5LAotKyAgICAgIFNFQ0NlcnRpZmlj YXRlVXNhZ2UgY2VydGlmaWNhdGVVc2FnZSxzZWN1UFdEYXRhICpwd2RhdGEsIGludCBvY3NwUG9s aWN5LAotICAgICAgIENFUlRWZXJpZnlMb2cgKmxvZywgU0VDQ2VydGlmaWNhdGVVc2FnZSAqdXNh Z2UpIAotIHsKLSAKLUBAIC05OTMsNiArOTkzLDggQEAgU0VDU3RhdHVzIEpTU0xfdmVyaWZ5Q2Vy dFBLSVgoQ0VSVENlcnRpZmljYXRlICpjZXJ0LAotIAotICAgICBQUkJvb2wgZmV0Y2hDZXJ0cyA9 IFBSX0ZBTFNFOwotIAotKyAgICBTRUNDZXJ0VXNhZ2UgY2VydFVzYWdlID0gY2VydFVzYWdlU1NM Q2xpZW50IC8qIDAgKi87Ci0rICAgIAotICAgICBTRUNTdGF0dXMgcmVzID0gIFNFQ0ZhaWx1cmU7 Ci0gICAgIGlmKGNlcnQgPT0gTlVMTCkgewotICAgICAgICAgZ290byBmaW5pc2g7Ci1AQCAtMTAy Nyw5ICsxMDI5LDE1IEBAIFNFQ1N0YXR1cyBKU1NMX3ZlcmlmeUNlcnRQS0lYKENFUlRDZXJ0aWZp Y2F0ZSAqY2VydCwKLSAgICAgY3ZpbltpblBhcmFtSW5kZXhdLnZhbHVlLnBvaW50ZXIucmV2b2Nh dGlvbiA9IHJldjsKLSAgICAgaW5QYXJhbUluZGV4Kys7Ci0gCi0tCi0gICAgIC8qIGVzdGFibGlz aCB0cnVzdCBhbmNob3IgKi8KLSAKLSsgICAgLyogV2UgbmVlZCB0byBjb252ZXJ0IHRoZSBTRUND ZXJ0aWZpY2F0ZVVzYWdlIHRvIGEgU0VDQ2VydFVzYWdlIHRvIG9idGFpbgotKyAgICAgKiB0aGUg cm9vdC4KLSsgICAgKi8KLSsKLSsgICAgU0VDQ2VydGlmaWNhdGVVc2FnZSB0ZXN0VXNhZ2UgPSBj ZXJ0aWZpY2F0ZVVzYWdlOwotKyAgICB3aGlsZSAoMCAhPSAodGVzdFVzYWdlID0gdGVzdFVzYWdl ID4+IDEpKSB7IGNlcnRVc2FnZSsrOyB9Ci0rCi0gICAgIENFUlRDZXJ0aWZpY2F0ZSAqcm9vdCA9 IGdldFJvb3QoY2VydCxjZXJ0VXNhZ2UpOwotIAotICAgICAvKiBUcnkgdG8gYWRkIHRoZSByb290 IGFzIHRoZSB0cnVzdCBhbmNob3Igc28gYWxsIHRoZQotQEAgLTEwNjQsNyArMTA3Miw3IEBAIFNF Q1N0YXR1cyBKU1NMX3ZlcmlmeUNlcnRQS0lYKENFUlRDZXJ0aWZpY2F0ZSAqY2VydCwKLSAKLSAg ICAgY3ZvdXRbb3V0UGFyYW1JbmRleF0udHlwZSA9IGNlcnRfcG9fZW5kOwotIAotLSAgICByZXMg PSBDRVJUX1BLSVhWZXJpZnlDZXJ0KGNlcnQsIGNlcnRVc2FnZSwgY3ZpbiwgY3ZvdXQsICZwd2Rh dGEpOwotKyAgICByZXMgPSBDRVJUX1BLSVhWZXJpZnlDZXJ0KGNlcnQsIGNlcnRpZmljYXRlVXNh Z2UsIGN2aW4sIGN2b3V0LCAmcHdkYXRhKTsKLSAKLSBmaW5pc2g6Ci0gICAgIC8qIGNsZWFuIHVw IGFueSB0cnVzdGVkIGNlcnQgbGlzdCAqLwotQEAgLTEwNzQsOCArMTA4Miw5IEBAIFNFQ1N0YXR1 cyBKU1NMX3ZlcmlmeUNlcnRQS0lYKENFUlRDZXJ0aWZpY2F0ZSAqY2VydCwKLSAgICAgICAgIHRy dXN0ZWRDZXJ0TGlzdCA9IE5VTEw7Ci0gICAgIH0KLSAKLSsgICAgLyogQ0VSVF9EZXN0cm95Q2Vy dExpc3QgZGVzdHJveXMgaW50ZXJpb3IgY2VydHMgZm9yIHVzLiAqLwotKwotICAgICBpZihyb290 KSB7Ci0tICAgICAgIENFUlRfRGVzdHJveUNlcnRpZmljYXRlKHJvb3QpOwotICAgICAgICByb290 ID0gTlVMTDsKLSAgICAgfQotIAotZGlmZiAtLWdpdCBhL29yZy9tb3ppbGxhL2pzcy9zc2wvanNz bC5oIGIvb3JnL21vemlsbGEvanNzL3NzbC9qc3NsLmgKLWluZGV4IDBlOTNlZWJlLi45MjVlMTIy NSAxMDA2NDQKLS0tLSBhL29yZy9tb3ppbGxhL2pzcy9zc2wvanNzbC5oCi0rKysgYi9vcmcvbW96 aWxsYS9qc3Mvc3NsL2pzc2wuaAotQEAgLTE0NSw3ICsxNDUsNyBAQCBKU1NMX2dldE9DU1BQb2xp Y3koKTsKLSAKLSBTRUNTdGF0dXMgCi0gSlNTTF92ZXJpZnlDZXJ0UEtJWChDRVJUQ2VydGlmaWNh dGUgKmNlcnQsCi0tICAgICAgICAgICAgICAgICAgICBTRUNDZXJ0aWZpY2F0ZVVzYWdlIGNlcnRV c2FnZSwKLSsgICAgICAgICAgICAgICAgICAgIFNFQ0NlcnRpZmljYXRlVXNhZ2UgY2VydGlmaWNh dGVVc2FnZSwKLSAgICAgICAgICAgICAgICAgICAgIHNlY3VQV0RhdGEgKnB3ZGF0YSwgaW50IG9j c3BQb2xpY3ksCi0gICAgICAgICAgICAgICAgICAgICBDRVJUVmVyaWZ5TG9nICpsb2csU0VDQ2Vy dGlmaWNhdGVVc2FnZSAqdXNhZ2UpOwotIAoKZGlmZiAtLWdpdCBhL2pzcy5zcGVjIGIvanNzLnNw ZWMKaW5kZXggNWM5ZmJkMy4uYmU4ZTBhYiAxMDA2NDQKLS0tIGEvanNzLnNwZWMKKysrIGIvanNz LnNwZWMKQEAgLTcsNyArNyw3IEBAIFVSTDogICAgICAgICAgICBodHRwOi8vd3d3LmRvZ3RhZ3Br aS5vcmcvd2lraS9KU1MKIExpY2Vuc2U6ICAgICAgICBNUEx2MS4xIG9yIEdQTHYyKyBvciBMR1BM djIrCiAKIFZlcnNpb246ICAgICAgICA0LjYuMgotUmVsZWFzZTogICAgICAgIDElez9fdGltZXN0 YW1wfSV7P19jb21taXRfaWR9JXs/ZGlzdH0KK1JlbGVhc2U6ICAgICAgICAyJXs/X3RpbWVzdGFt cH0lez9fY29tbWl0X2lkfSV7P2Rpc3R9CiAjIGdsb2JhbCAgICAgICAgIF9waGFzZSAtYTEKIAog IyBUbyBnZW5lcmF0ZSB0aGUgc291cmNlIHRhcmJhbGw6CkBAIC0yNSw2ICsyNSw3IEBAIFNvdXJj ZTogICAgICAgICBodHRwczovL2dpdGh1Yi5jb20vZG9ndGFncGtpLyV7bmFtZX0vYXJjaGl2ZS92 JXt2ZXJzaW9ufSV7P19waGFzCiAjICAgICA8dmVyc2lvbiB0YWc+IFwKICMgICAgID4ganNzLVZF UlNJT04tUkVMRUFTRS5wYXRjaAogIyBQYXRjaDoganNzLVZFUlNJT04tUkVMRUFTRS5wYXRjaAor UGF0Y2g6IDAwMDEtRml4LU5hdGl2ZVByb3h5LXJlZmVyZW5jZS10cmFja2VyLnBhdGNoCiAKICMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAjIEJ1aWxkIERlcGVuZGVuY2llcwpAQCAtMTU5LDYgKzE2 MCw5IEBAIGNwIC1wICoudHh0ICRSUE1fQlVJTERfUk9PVCV7X2phdmFkb2NkaXJ9LyV7bmFtZX0t JXt2ZXJzaW9ufQogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogJWNoYW5nZWxvZworKiBUdWUg T2N0IDI5IDIwMTkgRG9ndGFnIFBLSSBUZWFtIDxwa2ktZGV2ZWxAcmVkaGF0LmNvbT4gLSA0LjYu Mi0yCistIEZpeCBmb3IgcmhieiMxNzY2NDUxCisKICogVHVlIE9jdCAxNSAyMDE5IERvZ3RhZyBQ S0kgVGVhbSA8cGtpLWRldmVsQHJlZGhhdC5jb20+IC0gNC42LjItMQogLSBSZWJhc2UgdG8gSlNT IDQuNi4yCiAtIEZpeGVzIENWRS0yMDE5LTE0ODIzCg==