From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Kiper Subject: [PATCH v12 05/10] x86: add multiboot2 protocol support for EFI platforms Date: Fri, 20 Jan 2017 02:34:15 +0100 Message-ID: <1484876060-2236-6-git-send-email-daniel.kiper@oracle.com> References: <1484876060-2236-1-git-send-email-daniel.kiper@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cUO6j-0000iH-Fn for xen-devel@lists.xenproject.org; Fri, 20 Jan 2017 01:35:13 +0000 In-Reply-To: <1484876060-2236-1-git-send-email-daniel.kiper@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: jgross@suse.com, sstabellini@kernel.org, konrad.wilk@oracle.com, andrew.cooper3@citrix.com, cardoe@cardoe.com, pgnet.dev@gmail.com, ning.sun@intel.com, julien.grall@arm.com, jbeulich@suse.com, qiaowei.ren@intel.com, gang.wei@intel.com, fu.wei@linaro.org List-Id: xen-devel@lists.xenproject.org VGhpcyB3YXkgWGVuIGNhbiBiZSBsb2FkZWQgb24gRUZJIHBsYXRmb3JtcyB1c2luZyBHUlVCMiBh bmQKb3RoZXIgYm9vdCBsb2FkZXJzIHdoaWNoIHN1cHBvcnQgbXVsdGlib290MiBwcm90b2NvbC4K ClNpZ25lZC1vZmYtYnk6IERhbmllbCBLaXBlciA8ZGFuaWVsLmtpcGVyQG9yYWNsZS5jb20+Ci0t LQp2MTIgLSBzdWdnZXN0aW9ucy9maXhlczoKICAgIC0gcmVuYW1lIF9fZWZpNjRfc3RhcnQgdG8g X19lZmk2NF9tYjJfc3RhcnQKICAgICAgKHN1Z2dlc3RlZCBieSBBbmRyZXcgQ29vcGVyKSwKICAg IC0gdXNlIGVmaV9hcmNoX21lbW9yeV9zZXR1cCgpIG1hY2hpbmVyeSBhcyB0cmFtcG9saW5lCiAg ICAgIGV0IGNvbnNvcnRlcyBtYWluIG1lbW9yeSBhbGxvY2F0b3IKICAgICAgKHN1Z2dlc3RlZCBi eSBEb3VnIEdvbGRzdGVpbiksCiAgICAtIGFsbG9jYXRlIHNwYWNlIGZvciBtYmkgc3RydWN0IGlu IGVmaV9hcmNoX21lbW9yeV9zZXR1cCgpIHRvbzsKICAgICAgdGhpcyB0aGluZyB3YXMgbm90IHRh a2VuIGludG8gYWNjb3VudCBpbiBlYXJsaWVyIHJlbGVhc2VzLAogICAgLSByZXZlcnQgdHJhbXBv bGluZSBldCBjb25zb3J0ZXMgZmFsbGJhY2sgbWVtb3J5IGFsbG9jYXRvciBjb2RlCiAgICAgIGlu IGVmaV9hcmNoX3Byb2Nlc3NfbWVtb3J5X21hcCgpIHRvIGN1cnJlbnQgdXBzdHJlYW0gc3RhdGUK ICAgICAgKHN1Z2dlc3RlZCBieSBEb3VnIEdvbGRzdGVpbiksCiAgICAtIGZ1cnRoZXIgc2ltcGxp ZnkgZWZpX2FyY2hfcHJlX2V4aXRfYm9vdCgpIGNvZGUsCiAgICAtIGNhbGwgZWZpX2FyY2hfbWVt b3J5X3NldHVwKCkgZnJvbSBlZmlfbXVsdGlib290MigpCiAgICAgIChzdWdnZXN0ZWQgYnkgRG91 ZyBHb2xkc3RlaW4pLAogICAgLSBmaXggYXNlbWJseSBjYWxsIGFyZ3VtZW50IGluIHhlbi9hcmNo L3g4Ni9lZmkvc3R1Yi5jCiAgICAgIChzdWdnZXN0ZWQgYnkgQW5kcmV3IENvb3BlciksCiAgICAt IGFkZCBBU1NFUlQoKSBmb3IgdHJhbXBvbGluZSBzaXplCiAgICAgIChzdWdnZXN0ZWQgYnkgRG91 ZyBHb2xkc3RlaW4pLAogICAgLSBhZGQgS0IoKSBtYWNybwogICAgICAoc3VnZ2VzdGVkIGJ5IERv dWcgR29sZHN0ZWluKSwKICAgIC0gaW1wcm92ZSBjb21tZW50cwogICAgICAoc3VnZ2VzdGVkIGJ5 IEFuZHJldyBDb29wZXIgYW5kIERvdWcgR29sZHN0ZWluKS4KCnYxMCAtIHN1Z2dlc3Rpb25zL2Zp eGVzOgogICAgLSByZXBsYWNlIGxqbXBsIHdpdGggbHJldHEKICAgICAgKHN1Z2dlc3RlZCBieSBB bmRyZXcgQ29vcGVyKSwKICAgIC0gaW50cm9kdWNlIGVmaV9wbGF0Zm9ybSB0byBpbmNyZWFzZSBj b2RlIHJlYWRhYmlsaXR5CiAgICAgIChzdWdnZXN0ZWQgYnkgQW5kcmV3IENvb3BlcikuCgp2OSAt IHN1Z2dlc3Rpb25zL2ZpeGVzOgogICAtIHVzZSAuTCBsYWJlbHMgaW5zdGVhZCBvZiBudW1lcmlj IG9uZXMgaW4gbXVsdGlib290MiBkYXRhIHNjYW5uaW5nIGxvb3BzCiAgICAgKHN1Z2dlc3RlZCBi eSBKYW4gQmV1bGljaCkuCgp2OCAtIHN1Z2dlc3Rpb25zL2ZpeGVzOgogICAtIHVzZSBfX2Jzc19z dGFydCglcmlwKS9fX2Jzc19lbmQoJXJpcCkgaW5zdGVhZCBvZgogICAgIG9mIC5zdGFydG9mLigu YnNzKSglcmlwKS8kLnNpemVvZi4oLmJzcykgYmVjYXVzZQogICAgIGxhdHRlciBpcyBub3QgdGVz dGVkIGV4dGVuc2l2ZWx5IGluIGRpZmZlcmVudAogICAgIGJ1aWx0IGVudmlyb25tZW50cyB5ZXQK ICAgICAoc3VnZ2VzdGVkIGJ5IEFuZHJldyBDb29wZXIpLAogICAtIGZpeCBtdWx0aWJvb3QyIGRh dGEgc2Nhbm5pbmcgbG9vcCBpbiB4ODZfMzIgY29kZQogICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJl dWxpY2gpLAogICAtIGFkZCBjaGVjayBmb3IgZXh0cmEgbWVtIGZvciBtYmkgZGF0YSBpZiBYZW4g aXMgbG9hZGVkCiAgICAgdmlhIG11bHRpYm9vdDIgcHJvdG9jb2wgb24gRUZJIHBsYXRmb3JtCiAg ICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCksCiAgIC0gaW1wcm92ZSBjb21tZW50cwogICAg IChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpLgoKdjcgLSBzdWdnZXN0aW9ucy9maXhlczoKICAg LSBkbyBub3QgYWxsb2NhdGUgdHdpY2UgbWVtb3J5IGZvciB0cmFtcG9saW5lIGlmIHdlIHdlcmUK ICAgICBsb2FkZWQgdmlhIG11bHRpYm9vdDIgcHJvdG9jb2wgb24gRUZJIHBsYXRmb3JtLAogICAt IHdyYXAgbG9uZyBsaW5lCiAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCksCiAgIC0gaW1w cm92ZSBjb21tZW50cwogICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpLgoKdjYgLSBzdWdn ZXN0aW9ucy9maXhlczoKICAgLSBpbXByb3ZlIGxhYmVsIG5hbWVzIGluIGFzc2VtYmx5CiAgICAg ZXJyb3IgcHJpbnRpbmcgY29kZQogICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpLAogICAt IGltcHJvdmUgY29tbWVudHMKICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKSwKICAgLSB2 YXJpb3VzIG1pbm9yIGNsZWFudXBzIGFuZCBmaXhlcwogICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJl dWxpY2gpLgoKdjQgLSBzdWdnZXN0aW9ucy9maXhlczoKICAgLSByZW1vdmUgcmVkdW5kYW50IEJT UyBhbGlnbm1lbnQsCiAgIC0gdXBkYXRlIEJTUyBhbGlnbm1lbnQgY2hlY2ssCiAgIC0gdXNlIF9f c2V0X2JpdCgpIGluc3RlYWQgb2Ygc2V0X2JpdCgpIGlmIHBvc3NpYmxlCiAgICAgKHN1Z2dlc3Rl ZCBieSBKYW4gQmV1bGljaCksCiAgIC0gY2FsbCBlZmlfYXJjaF9jcHUoKSBmcm9tIGVmaV9tdWx0 aWJvb3QyKCkKICAgICBldmVuIGlmIHRoZSBzYW1lIHdvcmsgaXMgZG9uZSBsYXRlciBpbgogICAg IG90aGVyIHBsYWNlIHJpZ2h0IG5vdwogICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpLAog ICAtIHhlbi9hcmNoL3g4Ni9lZmkvc3R1Yi5jOmVmaV9tdWx0aWJvb3QyKCkKICAgICBmYWlsIHBy b3Blcmx5IG9uIEVGSSBwbGF0Zm9ybXMsCiAgIC0gZG8gbm90IHJlYWQgZGF0YSBiZXlvbmQgdGhl IGVuZCBvZiBtdWx0aWJvb3QyCiAgICAgaW5mb3JtYXRpb24gaW4geGVuL2FyY2gveDg2L2Jvb3Qv aGVhZC5TCiAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCksCiAgIC0gdXNlIDMyLWJpdCBy ZWdpc3RlcnMgaW4geDg2XzY0IGNvZGUgaWYgcG9zc2libGUKICAgICAoc3VnZ2VzdGVkIGJ5IEph biBCZXVsaWNoKSwKICAgLSBtdWx0aWJvb3QyIGluZm9ybWF0aW9uIGFkZHJlc3MgaXMgNjQtYml0 CiAgICAgaW4geDg2XzY0IGNvZGUsIHNvLCB0cmVhdCBpdCBpcyBhcyBpcwogICAgIChzdWdnZXN0 ZWQgYnkgSmFuIEJldWxpY2gpLAogICAtIHVzZSBjbW92Y2MgaWYgcG9zc2libGUsCiAgIC0gbGVh dmUgb25seSBvbmUgc3BhY2UgYmV0d2VlbiByZXAgYW5kIHN0b3NxCiAgICAgKHN1Z2dlc3RlZCBi eSBKYW4gQmV1bGljaCksCiAgIC0gaW1wcm92ZSBlcnJvciBoYW5kbGluZywKICAgLSBpbXByb3Zl IGVhcmx5IGVycm9yIG1lc3NhZ2VzLAogICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpLAog ICAtIGltcHJvdmUgZWFybHkgZXJyb3IgbWVzc2FnZXMgcHJpbnRpbmcgY29kZSwKICAgLSBpbXBy b3ZlIGxhYmVsIG5hbWVzCiAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCksCiAgIC0gaW1w cm92ZSBjb21tZW50cwogICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpLAogICAtIHZhcmlv dXMgbWlub3IgY2xlYW51cHMuCgp2MyAtIHN1Z2dlc3Rpb25zL2ZpeGVzOgogICAtIHRha2UgaW50 byBhY2NvdW50IGFsaWdubWVudCB3aGVuIHNraXBwaW5nIG11bHRpYm9vdDIgZml4ZWQgcGFydAog ICAgIChzdWdnZXN0ZWQgYnkgS29ucmFkIFJ6ZXN6dXRlayBXaWxrKSwKICAgLSBpbXByb3ZlIHNl Z21lbnQgcmVnaXN0ZXJzIGluaXRpYWxpemF0aW9uCiAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1 bGljaCksCiAgIC0gaW1wcm92ZSBjb21tZW50cwogICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxp Y2ggYW5kIEtvbnJhZCBSemVzenV0ZWsgV2lsayksCiAgIC0gaW1wcm92ZSBjb21taXQgbWVzc2Fn ZQogICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpLgoKdjIgLSBzdWdnZXN0aW9ucy9maXhl czoKICAgLSBnZW5lcmF0ZSBtdWx0aWJvb3QyIGhlYWRlciB1c2luZyBtYWNyb3MKICAgICAoc3Vn Z2VzdGVkIGJ5IEphbiBCZXVsaWNoKSwKICAgLSBzd2l0Y2ggQ1BVIHRvIHg4Nl8zMiBtb2RlIGJl Zm9yZQogICAgIGp1bXBpbmcgdG8gMzItYml0IGNvZGUKICAgICAoc3VnZ2VzdGVkIGJ5IEFuZHJl dyBDb29wZXIpLAogICAtIHJlZHVjZSBjb2RlIGNoYW5nZXMgdG8gaW5jcmVhc2UgcGF0Y2ggcmVh ZGFiaWxpdHkKICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKSwKICAgLSBpbXByb3ZlIGNv bW1lbnRzCiAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCksCiAgIC0gaWdub3JlIE1VTFRJ Qk9PVDJfVEFHX1RZUEVfQkFTSUNfTUVNSU5GTyB0YWcgb24gRUZJIHBsYXRmb3JtCiAgICAgYW5k IGZpbmQgb24gbXkgb3duIG11bHRpYm9vdDIubWVtX2xvd2VyIHZhbHVlLAogICAtIHN0b3AgZXhl Y3V0aW9uIGlmIEVGSSBwbGF0Zm9ybSBpcyBkZXRlY3RlZAogICAgIGluIGxlZ2FjeSBCSU9TIHBh dGguCi0tLQogeGVuL2FyY2gveDg2L2Jvb3QvaGVhZC5TICAgICAgICAgIHwgIDI2OCArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiB4ZW4vYXJjaC94ODYvZWZpL2VmaS1ib290 LmggICAgICAgfCAgIDYxICsrKysrKysrLQogeGVuL2FyY2gveDg2L2VmaS9zdHViLmMgICAgICAg ICAgIHwgICAzOCArKysrKysKIHhlbi9hcmNoL3g4Ni94ODZfNjQvYXNtLW9mZnNldHMuYyB8ICAg IDIgKwogeGVuL2FyY2gveDg2L3hlbi5sZHMuUyAgICAgICAgICAgIHwgICAgNyArLQogeGVuL2Nv bW1vbi9lZmkvYm9vdC5jICAgICAgICAgICAgIHwgICAxMSArKwogeGVuL2luY2x1ZGUvYXNtLXg4 Ni9jb25maWcuaCAgICAgIHwgICAgNSArCiB4ZW4vaW5jbHVkZS94ZW4vY29uZmlnLmggICAgICAg ICAgfCAgICAxICsKIDggZmlsZXMgY2hhbmdlZCwgMzY2IGluc2VydGlvbnMoKyksIDI3IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9ib290L2hlYWQuUyBiL3hlbi9hcmNo L3g4Ni9ib290L2hlYWQuUwppbmRleCA4NGNmNDRkLi5iOGY3MjdhIDEwMDY0NAotLS0gYS94ZW4v YXJjaC94ODYvYm9vdC9oZWFkLlMKKysrIGIveGVuL2FyY2gveDg2L2Jvb3QvaGVhZC5TCkBAIC04 OSw2ICs4OSwxMyBAQCBtdWx0aWJvb3QyX2hlYWRlcl9zdGFydDoKICAgICAgICAgICAgICAgICAg ICAwLCAvKiBOdW1iZXIgb2YgdGhlIGxpbmVzIC0gbm8gcHJlZmVyZW5jZS4gKi8gXAogICAgICAg ICAgICAgICAgICAgIDAgIC8qIE51bWJlciBvZiBiaXRzIHBlciBwaXhlbCAtIG5vIHByZWZlcmVu Y2UuICovCiAKKyAgICAgICAgLyogUmVxdWVzdCB0aGF0IEV4aXRCb290U2VydmljZXMoKSBub3Qg YmUgY2FsbGVkLiAqLworICAgICAgICBtYjJodF9pbml0IE1CMl9IVChFRklfQlMpLCBNQjJfSFQo T1BUSU9OQUwpCisKKyAgICAgICAgLyogRUZJNjQgTXVsdGlib290MiBlbnRyeSBwb2ludC4gKi8K KyAgICAgICAgbWIyaHRfaW5pdCBNQjJfSFQoRU5UUllfQUREUkVTU19FRkk2NCksIE1CMl9IVChP UFRJT05BTCksIFwKKyAgICAgICAgICAgICAgICAgICBzeW1fcGh5cyhfX2VmaTY0X21iMl9zdGFy dCkKKwogICAgICAgICAvKiBNdWx0aWJvb3QyIGhlYWRlciBlbmQgdGFnLiAqLwogICAgICAgICBt YjJodF9pbml0IE1CMl9IVChFTkQpLCBNQjJfSFQoUkVRVUlSRUQpCiAuTG11bHRpYm9vdDJfaGVh ZGVyX2VuZDoKQEAgLTEwMCwyMCArMTA3LDQ4IEBAIG11bHRpYm9vdDJfaGVhZGVyX3N0YXJ0Ogog Z2R0X2Jvb3RfZGVzY3I6CiAgICAgICAgIC53b3JkICAgNio4LTEKICAgICAgICAgLmxvbmcgICBz eW1fcGh5cyh0cmFtcG9saW5lX2dkdCkKKyAgICAgICAgLmxvbmcgICAwIC8qIE5lZWRlZCBmb3Ig NjQtYml0IGxnZHQgKi8KKworICAgICAgICAuYWxpZ24gNAordmdhX3RleHRfYnVmZmVyOgorICAg ICAgICAubG9uZyAgIDB4YjgwMDAKKworZWZpX3BsYXRmb3JtOgorICAgICAgICAuYnl0ZSAgIDAK IAogLkxiYWRfY3B1X21zZzogLmFzY2l6ICJFUlI6IE5vdCBhIDY0LWJpdCBDUFUhIgogLkxiYWRf bGRyX21zZzogLmFzY2l6ICJFUlI6IE5vdCBhIE11bHRpYm9vdCBib290bG9hZGVyISIKKy5MYmFk X2xkcl9uYnM6IC5hc2NpeiAiRVJSOiBCb290bG9hZGVyIHNodXRkb3duIEVGSSB4NjQgYm9vdCBz ZXJ2aWNlcyEiCisuTGJhZF9sZHJfbnN0OiAuYXNjaXogIkVSUjogRUZJIFN5c3RlbVRhYmxlIGlz IG5vdCBwcm92aWRlZCBieSBib290bG9hZGVyISIKKy5MYmFkX2xkcl9uaWg6IC5hc2NpeiAiRVJS OiBFRkkgSW1hZ2VIYW5kbGUgaXMgbm90IHByb3ZpZGVkIGJ5IGJvb3Rsb2FkZXIhIgorLkxiYWRf ZWZpX21zZzogLmFzY2l6ICJFUlI6IEVGSSBJQS0zMiBwbGF0Zm9ybXMgYXJlIG5vdCBzdXBwb3J0 ZWQhIgogCiAgICAgICAgIC5zZWN0aW9uIC5pbml0LnRleHQsICJheCIsIEBwcm9nYml0cwogCiBi YWRfY3B1OgogICAgICAgICBtb3YgICAgICQoc3ltX3BoeXMoLkxiYWRfY3B1X21zZykpLCVlc2kg IyBFcnJvciBtZXNzYWdlCi0gICAgICAgIGptcCAgICAgcHJpbnRfZXJyCisgICAgICAgIGptcCAg ICAgLkxnZXRfdnRiCiBub3RfbXVsdGlib290OgogICAgICAgICBtb3YgICAgICQoc3ltX3BoeXMo LkxiYWRfbGRyX21zZykpLCVlc2kgIyBFcnJvciBtZXNzYWdlCi1wcmludF9lcnI6Ci0gICAgICAg IG1vdiAgICAgJDB4QjgwMDAsJWVkaSAgIyBWR0EgZnJhbWVidWZmZXIKLTE6ICAgICAgbW92ICAg ICAoJWVzaSksJWJsCisgICAgICAgIGptcCAgICAgLkxnZXRfdnRiCisuTG1iMl9ub19zdDoKKyAg ICAgICAgbW92ICAgICAkKHN5bV9waHlzKC5MYmFkX2xkcl9uc3QpKSwlZXNpICMgRXJyb3IgbWVz c2FnZQorICAgICAgICBqbXAgICAgIC5MZ2V0X3Z0YgorLkxtYjJfbm9faWg6CisgICAgICAgIG1v diAgICAgJChzeW1fcGh5cyguTGJhZF9sZHJfbmloKSksJWVzaSAjIEVycm9yIG1lc3NhZ2UKKyAg ICAgICAgam1wICAgICAuTGdldF92dGIKKy5MbWIyX25vX2JzOgorICAgICAgICBtb3YgICAgICQo c3ltX3BoeXMoLkxiYWRfbGRyX25icykpLCVlc2kgIyBFcnJvciBtZXNzYWdlCisgICAgICAgIHhv ciAgICAgJWVkaSwlZWRpICAgICAgICAgICAgICAgICAgICAgICAjIE5vIFZHQSB0ZXh0IGJ1ZmZl cgorICAgICAgICBqbXAgICAgIC5Mc2VuZF9jaHIKKy5MbWIyX2VmaV9pYV8zMjoKKyAgICAgICAg bW92ICAgICAkKHN5bV9waHlzKC5MYmFkX2VmaV9tc2cpKSwlZXNpICMgRXJyb3IgbWVzc2FnZQor ICAgICAgICB4b3IgICAgICVlZGksJWVkaSAgICAgICAgICAgICAgICAgICAgICAgIyBObyBWR0Eg dGV4dCBidWZmZXIKKyAgICAgICAgam1wICAgICAuTHNlbmRfY2hyCisuTGdldF92dGI6CisgICAg ICAgIG1vdiAgICAgc3ltX3BoeXModmdhX3RleHRfYnVmZmVyKSwlZWRpCisuTHNlbmRfY2hyOgor ICAgICAgICBtb3YgICAgICglZXNpKSwlYmwKICAgICAgICAgdGVzdCAgICAlYmwsJWJsICAgICAg ICAjIFRlcm1pbmF0ZSBvbiAnXDAnIHNlbnRpbmVsCiAgICAgICAgIGplICAgICAgLkxoYWx0CiAg ICAgICAgIG1vdiAgICAgJDB4M2Y4KzUsJWR4ICAgIyBVQVJUIExpbmUgU3RhdHVzIFJlZ2lzdGVy CkBAIC0xMjMsMTMgKzE1OCwxODYgQEAgcHJpbnRfZXJyOgogICAgICAgICBtb3YgICAgICQweDNm OCswLCVkeCAgICMgVUFSVCBUcmFuc21pdCBIb2xkaW5nIFJlZ2lzdGVyCiAgICAgICAgIG1vdiAg ICAgJWJsLCVhbAogICAgICAgICBvdXQgICAgICVhbCwlZHggICAgICAgICMgU2VuZCBhIGNoYXJh Y3RlciBvdmVyIHRoZSBzZXJpYWwgbGluZQotICAgICAgICBtb3ZzYiAgICAgICAgICAgICAgICAg ICMgV3JpdGUgYSBjaGFyYWN0ZXIgdG8gdGhlIFZHQSBmcmFtZWJ1ZmZlcgorICAgICAgICB0ZXN0 ICAgICVlZGksJWVkaSAgICAgICMgSXMgdGhlIFZHQSB0ZXh0IGJ1ZmZlciBhdmFpbGFibGU/Cisg ICAgICAgIGp6ICAgICAgLkxzZW5kX2NocgorICAgICAgICBtb3ZzYiAgICAgICAgICAgICAgICAg ICMgV3JpdGUgYSBjaGFyYWN0ZXIgdG8gdGhlIFZHQSB0ZXh0IGJ1ZmZlcgogICAgICAgICBtb3Yg ICAgICQ3LCVhbAotICAgICAgICBzdG9zYiAgICAgICAgICAgICAgICAgICMgV3JpdGUgYW4gYXR0 cmlidXRlIHRvIHRoZSBWR0EgZnJhbWVidWZmZXIKLSAgICAgICAgam1wICAgICAxYgorICAgICAg ICBzdG9zYiAgICAgICAgICAgICAgICAgICMgV3JpdGUgYW4gYXR0cmlidXRlIHRvIHRoZSBWR0Eg dGV4dCBidWZmZXIKKyAgICAgICAgam1wICAgICAuTHNlbmRfY2hyCiAuTGhhbHQ6IGhsdAogICAg ICAgICBqbXAgICAgIC5MaGFsdAogCisgICAgICAgIC5jb2RlNjQKKworX19lZmk2NF9tYjJfc3Rh cnQ6CisgICAgICAgIGNsZAorCisgICAgICAgIC8qIFZHQSBpcyBub3QgYXZhaWxhYmxlIG9uIEVG SSBwbGF0Zm9ybXMuICovCisgICAgICAgIG1vdmwgICAkMCx2Z2FfdGV4dF9idWZmZXIoJXJpcCkK KworICAgICAgICAvKiBDaGVjayBmb3IgTXVsdGlib290MiBib290bG9hZGVyLiAqLworICAgICAg ICBjbXAgICAgICRNVUxUSUJPT1QyX0JPT1RMT0FERVJfTUFHSUMsJWVheAorICAgICAgICBqZSAg ICAgIC5MZWZpX211bHRpYm9vdDJfcHJvdG8KKworICAgICAgICAvKiBKdW1wIHRvIG5vdF9tdWx0 aWJvb3QgYWZ0ZXIgc3dpdGNoaW5nIENQVSB0byB4ODZfMzIgbW9kZS4gKi8KKyAgICAgICAgbGVh ICAgICBub3RfbXVsdGlib290KCVyaXApLCVlZGkKKyAgICAgICAgam1wICAgICB4ODZfMzJfc3dp dGNoCisKKy5MZWZpX211bHRpYm9vdDJfcHJvdG86CisgICAgICAgIC8qIFplcm8gRUZJIFN5c3Rl bVRhYmxlIGFuZCBFRkkgSW1hZ2VIYW5kbGUgYWRkcmVzc2VzLiAqLworICAgICAgICB4b3IgICAg ICVlc2ksJWVzaQorICAgICAgICB4b3IgICAgICVlZGksJWVkaQorCisgICAgICAgIC8qIFNraXAg TXVsdGlib290MiBpbmZvcm1hdGlvbiBmaXhlZCBwYXJ0LiAqLworICAgICAgICBsZWEgICAgIChN QjJfZml4ZWRfc2l6ZW9mK01VTFRJQk9PVDJfVEFHX0FMSUdOLTEpKCVyYngpLCVlY3gKKyAgICAg ICAgYW5kICAgICAkfihNVUxUSUJPT1QyX1RBR19BTElHTi0xKSwlZWN4CisKKy5MZWZpX21iMl90 c2l6ZToKKyAgICAgICAgLyogQ2hlY2sgTXVsdGlib290MiBpbmZvcm1hdGlvbiB0b3RhbCBzaXpl LiAqLworICAgICAgICBtb3YgICAgICVlY3gsJXI4ZAorICAgICAgICBzdWIgICAgICVlYngsJXI4 ZAorICAgICAgICBjbXAgICAgICVyOGQsTUIyX2ZpeGVkX3RvdGFsX3NpemUoJXJieCkKKyAgICAg ICAgamJlICAgICBydW5fYnMKKworICAgICAgICAvKiBBcmUgRUZJIGJvb3Qgc2VydmljZXMgYXZh aWxhYmxlPyAqLworICAgICAgICBjbXBsICAgICRNVUxUSUJPT1QyX1RBR19UWVBFX0VGSV9CUyxN QjJfdGFnX3R5cGUoJXJjeCkKKyAgICAgICAgam5lICAgICAuTGVmaV9tYjJfc3QKKworICAgICAg ICAvKiBXZSBhcmUgb24gRUZJIHBsYXRmb3JtIGFuZCBFRkkgYm9vdCBzZXJ2aWNlcyBhcmUgYXZh aWxhYmxlLiAqLworICAgICAgICBpbmNiICAgIGVmaV9wbGF0Zm9ybSglcmlwKQorCisgICAgICAg IC8qCisgICAgICAgICAqIERpc2FibGUgcmVhbCBtb2RlIGFuZCBvdGhlciBsZWdhY3kgc3R1ZmYg d2hpY2ggc2hvdWxkIG5vdAorICAgICAgICAgKiBiZSBydW4gb24gRUZJIHBsYXRmb3Jtcy4KKyAg ICAgICAgICovCisgICAgICAgIGluY2IgICAgc2tpcF9yZWFsbW9kZSglcmlwKQorICAgICAgICBq bXAgICAgIC5MZWZpX21iMl9uZXh0X3RhZworCisuTGVmaV9tYjJfc3Q6CisgICAgICAgIC8qIEdl dCBFRkkgU3lzdGVtVGFibGUgYWRkcmVzcyBmcm9tIE11bHRpYm9vdDIgaW5mb3JtYXRpb24uICov CisgICAgICAgIGNtcGwgICAgJE1VTFRJQk9PVDJfVEFHX1RZUEVfRUZJNjQsTUIyX3RhZ190eXBl KCVyY3gpCisgICAgICAgIGNtb3ZlICAgTUIyX2VmaTY0X3N0KCVyY3gpLCVyc2kKKyAgICAgICAg amUgICAgICAuTGVmaV9tYjJfbmV4dF90YWcKKworICAgICAgICAvKiBHZXQgRUZJIEltYWdlSGFu ZGxlIGFkZHJlc3MgZnJvbSBNdWx0aWJvb3QyIGluZm9ybWF0aW9uLiAqLworICAgICAgICBjbXBs ICAgICRNVUxUSUJPT1QyX1RBR19UWVBFX0VGSTY0X0lILE1CMl90YWdfdHlwZSglcmN4KQorICAg ICAgICBjbW92ZSAgIE1CMl9lZmk2NF9paCglcmN4KSwlcmRpCisgICAgICAgIGplICAgICAgLkxl ZmlfbWIyX25leHRfdGFnCisKKyAgICAgICAgLyogSXMgaXQgdGhlIGVuZCBvZiBNdWx0aWJvb3Qy IGluZm9ybWF0aW9uPyAqLworICAgICAgICBjbXBsICAgICRNVUxUSUJPT1QyX1RBR19UWVBFX0VO RCxNQjJfdGFnX3R5cGUoJXJjeCkKKyAgICAgICAgamUgICAgICBydW5fYnMKKworLkxlZmlfbWIy X25leHRfdGFnOgorICAgICAgICAvKiBHbyB0byBuZXh0IE11bHRpYm9vdDIgaW5mb3JtYXRpb24g dGFnLiAqLworICAgICAgICBhZGQgICAgIE1CMl90YWdfc2l6ZSglcmN4KSwlZWN4CisgICAgICAg IGFkZCAgICAgJChNVUxUSUJPT1QyX1RBR19BTElHTi0xKSwlZWN4CisgICAgICAgIGFuZCAgICAg JH4oTVVMVElCT09UMl9UQUdfQUxJR04tMSksJWVjeAorICAgICAgICBqbXAgICAgIC5MZWZpX21i Ml90c2l6ZQorCitydW5fYnM6CisgICAgICAgIC8qIEFyZSBFRkkgYm9vdCBzZXJ2aWNlcyBhdmFp bGFibGU/ICovCisgICAgICAgIGNtcGIgICAgJDAsZWZpX3BsYXRmb3JtKCVyaXApCisgICAgICAg IGpueiAgICAgMGYKKworICAgICAgICAvKiBKdW1wIHRvIC5MbWIyX25vX2JzIGFmdGVyIHN3aXRj aGluZyBDUFUgdG8geDg2XzMyIG1vZGUuICovCisgICAgICAgIGxlYSAgICAgLkxtYjJfbm9fYnMo JXJpcCksJWVkaQorICAgICAgICBqbXAgICAgIHg4Nl8zMl9zd2l0Y2gKKworMDoKKyAgICAgICAg LyogSXMgRUZJIFN5c3RlbVRhYmxlIGFkZHJlc3MgcHJvdmlkZWQgYnkgYm9vdCBsb2FkZXI/ICov CisgICAgICAgIHRlc3QgICAgJXJzaSwlcnNpCisgICAgICAgIGpueiAgICAgMWYKKworICAgICAg ICAvKiBKdW1wIHRvIC5MbWIyX25vX3N0IGFmdGVyIHN3aXRjaGluZyBDUFUgdG8geDg2XzMyIG1v ZGUuICovCisgICAgICAgIGxlYSAgICAgLkxtYjJfbm9fc3QoJXJpcCksJWVkaQorICAgICAgICBq bXAgICAgIHg4Nl8zMl9zd2l0Y2gKKworMToKKyAgICAgICAgLyogSXMgRUZJIEltYWdlSGFuZGxl IGFkZHJlc3MgcHJvdmlkZWQgYnkgYm9vdCBsb2FkZXI/ICovCisgICAgICAgIHRlc3QgICAgJXJk aSwlcmRpCisgICAgICAgIGpueiAgICAgMmYKKworICAgICAgICAvKiBKdW1wIHRvIC5MbWIyX25v X2loIGFmdGVyIHN3aXRjaGluZyBDUFUgdG8geDg2XzMyIG1vZGUuICovCisgICAgICAgIGxlYSAg ICAgLkxtYjJfbm9faWgoJXJpcCksJWVkaQorICAgICAgICBqbXAgICAgIHg4Nl8zMl9zd2l0Y2gK KworMjoKKyAgICAgICAgcHVzaCAgICAlcmF4CisgICAgICAgIHB1c2ggICAgJXJkaQorCisgICAg ICAgIC8qCisgICAgICAgICAqIEluaXRpYWxpemUgQlNTIChubyBuYXN0eSBzdXJwcmlzZXMhKS4K KyAgICAgICAgICogSXQgbXVzdCBiZSBkb25lIGVhcmxpZXIgdGhhbiBpbiBCSU9TIGNhc2UKKyAg ICAgICAgICogYmVjYXVzZSBlZmlfbXVsdGlib290MigpIHRvdWNoZXMgaXQuCisgICAgICAgICAq LworICAgICAgICBsZWEgICAgIF9fYnNzX3N0YXJ0KCVyaXApLCVlZGkKKyAgICAgICAgbGVhICAg ICBfX2Jzc19lbmQoJXJpcCksJWVjeAorICAgICAgICBzdWIgICAgICVlZGksJWVjeAorICAgICAg ICBzaHIgICAgICQzLCVlY3gKKyAgICAgICAgeG9yICAgICAlZWF4LCVlYXgKKyAgICAgICAgcmVw IHN0b3NxCisKKyAgICAgICAgcG9wICAgICAlcmRpCisKKyAgICAgICAgLyoKKyAgICAgICAgICog ZWZpX211bHRpYm9vdDIoKSBpcyBjYWxsZWQgYWNjb3JkaW5nIHRvIFN5c3RlbSBWIEFNRDY0IEFC SToKKyAgICAgICAgICogICAtIElOOiAlcmRpIC0gRUZJIEltYWdlSGFuZGxlLCAlcnNpIC0gRUZJ IFN5c3RlbVRhYmxlLAorICAgICAgICAgKiAgIC0gT1VUOiAlcmF4IC0gaGlnaGVzdCBhbGxvY2F0 ZWQgbWVtb3J5IGFkZHJlc3MgYmVsb3cgMSBNaUI7CisgICAgICAgICAqICAgICAgICAgICAgICAg ICBtZW1vcnkgYmVsb3cgdGhpcyBhZGRyZXNzIGlzIHVzZWQgZm9yIHRyYW1wb2xpbmUKKyAgICAg ICAgICogICAgICAgICAgICAgICAgIHN0YWNrLCB0cmFtcG9saW5lIGl0c2VsZiBhbmQgYXMgYSBz dG9yYWdlIGZvcgorICAgICAgICAgKiAgICAgICAgICAgICAgICAgbWJpIHN0cnVjdCBjcmVhdGVk IGluIHJlbG9jKCkuCisgICAgICAgICAqCisgICAgICAgICAqIE1VTFRJQk9PVDJfVEFHX1RZUEVf QkFTSUNfTUVNSU5GTyB0YWcgaXMgbm90IHByb3ZpZGVkCisgICAgICAgICAqIG9uIEVGSSBwbGF0 Zm9ybXMuIEhlbmNlLCBpdCBjb3VsZCBub3QgYmUgdXNlZCBsaWtlCisgICAgICAgICAqIG9uIGxl Z2FjeSBCSU9TIHBsYXRmb3Jtcy4KKyAgICAgICAgICovCisgICAgICAgIGNhbGwgICAgZWZpX211 bHRpYm9vdDIKKworICAgICAgICAvKiBDb252ZXJ0IG1lbW9yeSBhZGRyZXNzIHRvIGJ5dGVzLzE2 IGFuZCBzdG9yZSBpdCBpbiBzYWZlIHBsYWNlLiAqLworICAgICAgICBzaHIgICAgICQ0LCVlYXgK KyAgICAgICAgbW92ICAgICAlZWF4LCVlY3gKKworICAgICAgICBwb3AgICAgICVyYXgKKworICAg ICAgICAvKiBKdW1wIHRvIHRyYW1wb2xpbmVfc2V0dXAgYWZ0ZXIgc3dpdGNoaW5nIENQVSB0byB4 ODZfMzIgbW9kZS4gKi8KKyAgICAgICAgbGVhICAgICB0cmFtcG9saW5lX3NldHVwKCVyaXApLCVl ZGkKKworeDg2XzMyX3N3aXRjaDoKKyAgICAgICAgY2xpCisKKyAgICAgICAgLyogSW5pdGlhbGl6 ZSBHRFRSLiAqLworICAgICAgICBsZ2R0ICAgIGdkdF9ib290X2Rlc2NyKCVyaXApCisKKyAgICAg ICAgLyogUmVsb2FkIGNvZGUgc2VsZWN0b3IuICovCisgICAgICAgIHB1c2hxICAgJEJPT1RfQ1Mz MgorICAgICAgICBsZWEgICAgIGNzMzJfc3dpdGNoKCVyaXApLCVlZHgKKyAgICAgICAgcHVzaCAg ICAlcmR4CisgICAgICAgIGxyZXRxCisKKyAgICAgICAgLmNvZGUzMgorCitjczMyX3N3aXRjaDoK KyAgICAgICAgLyogSW5pdGlhbGl6ZSBiYXNpYyBkYXRhIHNlZ21lbnRzLiAqLworICAgICAgICBt b3YgICAgICRCT09UX0RTLCVlZHgKKyAgICAgICAgbW92ICAgICAlZWR4LCVkcworICAgICAgICBt b3YgICAgICVlZHgsJWVzCisgICAgICAgIG1vdiAgICAgJWVkeCwlc3MKKyAgICAgICAgLyogJWVz cCBpcyBpbml0aWFsaXplZCBsYXRlci4gKi8KKworICAgICAgICAvKiBMb2FkIG51bGwgZGVzY3Jp cHRvciB0byB1bnVzZWQgc2VnbWVudCByZWdpc3RlcnMuICovCisgICAgICAgIHhvciAgICAgJWVk eCwlZWR4CisgICAgICAgIG1vdiAgICAgJWVkeCwlZnMKKyAgICAgICAgbW92ICAgICAlZWR4LCVn cworCisgICAgICAgIC8qIERpc2FibGUgcGFnaW5nLiAqLworICAgICAgICBtb3YgICAgICVjcjAs JWVkeAorICAgICAgICBhbmQgICAgICQoflg4Nl9DUjBfUEcpLCVlZHgKKyAgICAgICAgbW92ICAg ICAlZWR4LCVjcjAKKworICAgICAgICAvKiBKdW1wIHRvIGVhcmxpZXIgbG9hZGVkIGFkZHJlc3Mu ICovCisgICAgICAgIGptcCAgICAgKiVlZGkKKwogX19zdGFydDoKICAgICAgICAgY2xkCiAgICAg ICAgIGNsaQpAQCAtMTU3LDcgKzM2NSw3IEBAIF9fc3RhcnQ6CiAKICAgICAgICAgLyogTm90IGF2 YWlsYWJsZT8gQkRBIHZhbHVlIHdpbGwgYmUgZmluZS4gKi8KICAgICAgICAgY21vdm56ICBNQl9t ZW1fbG93ZXIoJWVieCksJWVkeAotICAgICAgICBqbXAgICAgIHRyYW1wb2xpbmVfc2V0dXAKKyAg ICAgICAgam1wICAgICB0cmFtcG9saW5lX2Jpb3Nfc2V0dXAKIAogLkxtdWx0aWJvb3QyX3Byb3Rv OgogICAgICAgICAvKiBTa2lwIE11bHRpYm9vdDIgaW5mb3JtYXRpb24gZml4ZWQgcGFydC4gKi8K QEAgLTE2OSwyNCArMzc3LDMzIEBAIF9fc3RhcnQ6CiAgICAgICAgIG1vdiAgICAgJWVjeCwlZWRp CiAgICAgICAgIHN1YiAgICAgJWVieCwlZWRpCiAgICAgICAgIGNtcCAgICAgJWVkaSxNQjJfZml4 ZWRfdG90YWxfc2l6ZSglZWJ4KQotICAgICAgICBqYmUgICAgIHRyYW1wb2xpbmVfc2V0dXAKKyAg ICAgICAgamJlICAgICB0cmFtcG9saW5lX2Jpb3Nfc2V0dXAKIAogICAgICAgICAvKiBHZXQgbWVt X2xvd2VyIGZyb20gTXVsdGlib290MiBpbmZvcm1hdGlvbi4gKi8KICAgICAgICAgY21wbCAgICAk TVVMVElCT09UMl9UQUdfVFlQRV9CQVNJQ19NRU1JTkZPLE1CMl90YWdfdHlwZSglZWN4KQogICAg ICAgICBjbW92ZSAgIE1CMl9tZW1fbG93ZXIoJWVjeCksJWVkeAotICAgICAgICBqZSAgICAgIHRy YW1wb2xpbmVfc2V0dXAKKyAgICAgICAgamUgICAgICAuTG1iMl9uZXh0X3RhZworCisgICAgICAg IC8qIEVGSSBJQS0zMiBwbGF0Zm9ybXMgYXJlIG5vdCBzdXBwb3J0ZWQuICovCisgICAgICAgIGNt cGwgICAgJE1VTFRJQk9PVDJfVEFHX1RZUEVfRUZJMzIsTUIyX3RhZ190eXBlKCVlY3gpCisgICAg ICAgIGplICAgICAgLkxtYjJfZWZpX2lhXzMyCisKKyAgICAgICAgLyogQm9vdGxvYWRlciBzaHV0 ZG93biBFRkkgeDY0IGJvb3Qgc2VydmljZXMuICovCisgICAgICAgIGNtcGwgICAgJE1VTFRJQk9P VDJfVEFHX1RZUEVfRUZJNjQsTUIyX3RhZ190eXBlKCVlY3gpCisgICAgICAgIGplICAgICAgLkxt YjJfbm9fYnMKIAogICAgICAgICAvKiBJcyBpdCB0aGUgZW5kIG9mIE11bHRpYm9vdDIgaW5mb3Jt YXRpb24/ICovCiAgICAgICAgIGNtcGwgICAgJE1VTFRJQk9PVDJfVEFHX1RZUEVfRU5ELE1CMl90 YWdfdHlwZSglZWN4KQotICAgICAgICBqZSAgICAgIHRyYW1wb2xpbmVfc2V0dXAKKyAgICAgICAg amUgICAgICB0cmFtcG9saW5lX2Jpb3Nfc2V0dXAKIAorLkxtYjJfbmV4dF90YWc6CiAgICAgICAg IC8qIEdvIHRvIG5leHQgTXVsdGlib290MiBpbmZvcm1hdGlvbiB0YWcuICovCiAgICAgICAgIGFk ZCAgICAgTUIyX3RhZ19zaXplKCVlY3gpLCVlY3gKICAgICAgICAgYWRkICAgICAkKE1VTFRJQk9P VDJfVEFHX0FMSUdOLTEpLCVlY3gKICAgICAgICAgYW5kICAgICAkfihNVUxUSUJPT1QyX1RBR19B TElHTi0xKSwlZWN4CiAgICAgICAgIGptcCAgICAgLkxtYjJfdHNpemUKIAotdHJhbXBvbGluZV9z ZXR1cDoKK3RyYW1wb2xpbmVfYmlvc19zZXR1cDoKICAgICAgICAgLyogU2V0IHVwIHRyYW1wb2xp bmUgc2VnbWVudCA2NGsgYmVsb3cgRUJEQSAqLwogICAgICAgICBtb3Z6d2wgIDB4NDBlLCVlY3gg ICAgICAgICAgLyogRUJEQSBzZWdtZW50ICovCiAgICAgICAgIGNtcCAgICAgJDB4YTAwMCwlZWN4 ICAgICAgICAvKiBzYW5pdHkgY2hlY2sgKGhpZ2gpICovCkBAIC0yMDIsMTYgKzQxOSwxOSBAQCB0 cmFtcG9saW5lX3NldHVwOgogICAgICAgICAgKiBtdWx0aWJvb3Qgc3RydWN0dXJlIChpZiBhdmFp bGFibGUpIGFuZCB1c2UgdGhlIHNtYWxsZXN0LgogICAgICAgICAgKi8KICAgICAgICAgY21wICAg ICAkMHgxMDAsJWVkeCAgICAgICAgIC8qIGlzIHRoZSBtdWx0aWJvb3QgdmFsdWUgdG9vIHNtYWxs PyAqLwotICAgICAgICBqYiAgICAgIDJmICAgICAgICAgICAgICAgICAgLyogaWYgc28sIGRvIG5v dCB1c2UgaXQgKi8KKyAgICAgICAgamIgICAgICB0cmFtcG9saW5lX3NldHVwICAgIC8qIGlmIHNv LCBkbyBub3QgdXNlIGl0ICovCiAgICAgICAgIHNobCAgICAgJDEwLTQsJWVkeAogICAgICAgICBj bXAgICAgICVlY3gsJWVkeCAgICAgICAgICAgLyogY29tcGFyZSB3aXRoIEJEQSB2YWx1ZSAqLwog ICAgICAgICBjbW92YiAgICVlZHgsJWVjeCAgICAgICAgICAgLyogYW5kIHVzZSB0aGUgc21hbGxl ciAqLwogCi0yOiAgICAgIC8qIFJlc2VydmUgNjRrYiBmb3IgdGhlIHRyYW1wb2xpbmUgKi8KLSAg ICAgICAgc3ViICAgICAkMHgxMDAwLCVlY3gKKyAgICAgICAgLyogUmVzZXJ2ZSBtZW1vcnkgZm9y IHRoZSB0cmFtcG9saW5lLiAqLworICAgICAgICBzdWIgICAgICQoKE1CX1RSQU1QT0xJTkVfU0la RStNQl9UUkFNUE9MSU5FX1NUQUNLX1NJWkUpPj40KSwlZWN4CiAKICAgICAgICAgLyogRnJvbSBh cmNoL3g4Ni9zbXBib290LmM6IHN0YXJ0X2VpcCBoYWQgYmV0dGVyIGJlIHBhZ2UtYWxpZ25lZCEg Ki8KICAgICAgICAgeG9yICAgICAlY2wsICVjbAorCit0cmFtcG9saW5lX3NldHVwOgorICAgICAg ICAvKiBTYXZlIHRyYW1wb2xpbmUgYWRkcmVzcyBmb3IgbGF0ZXIgdXNlLiAqLwogICAgICAgICBz aGwgICAgICQ0LCAlZWN4CiAgICAgICAgIG1vdiAgICAgJWVjeCxzeW1fcGh5cyh0cmFtcG9saW5l X3BoeXMpCiAKQEAgLTIyMyw3ICs0NDMsMTQgQEAgdHJhbXBvbGluZV9zZXR1cDoKICAgICAgICAg Y2FsbCAgICByZWxvYwogICAgICAgICBtb3YgICAgICVlYXgsc3ltX3BoeXMobXVsdGlib290X3B0 cikKIAotICAgICAgICAvKiBJbml0aWFsaXplIEJTUyAobm8gbmFzdHkgc3VycHJpc2VzISkgKi8K KyAgICAgICAgLyoKKyAgICAgICAgICogRG8gbm90IHplcm8gQlNTIG9uIEVGSSBwbGF0Zm9ybSBo ZXJlLgorICAgICAgICAgKiBJdCB3YXMgaW5pdGlhbGl6ZWQgZWFybGllci4KKyAgICAgICAgICov CisgICAgICAgIGNtcGIgICAgJDAsc3ltX3BoeXMoZWZpX3BsYXRmb3JtKQorICAgICAgICBqbnog ICAgIDFmCisKKyAgICAgICAgLyogSW5pdGlhbGl6ZSBCU1MgKG5vIG5hc3R5IHN1cnByaXNlcyEp LiAqLwogICAgICAgICBtb3YgICAgICRzeW1fcGh5cyhfX2Jzc19zdGFydCksJWVkaQogICAgICAg ICBtb3YgICAgICRzeW1fcGh5cyhfX2Jzc19lbmQpLCVlY3gKICAgICAgICAgc3ViICAgICAlZWRp LCVlY3gKQEAgLTIzMSw2ICs0NTgsNyBAQCB0cmFtcG9saW5lX3NldHVwOgogICAgICAgICBzaHIg ICAgICQyLCVlY3gKICAgICAgICAgcmVwIHN0b3NsCiAKKzE6CiAgICAgICAgIC8qIEludGVycm9n YXRlIENQVSBleHRlbmRlZCBmZWF0dXJlcyB2aWEgQ1BVSUQuICovCiAgICAgICAgIG1vdiAgICAg JDB4ODAwMDAwMDAsJWVheAogICAgICAgICBjcHVpZApAQCAtMjgyLDYgKzUxMCwxMCBAQCB0cmFt cG9saW5lX3NldHVwOgogICAgICAgICBjbXAgICAgICRzeW1fcGh5cyhfX3RyYW1wb2xpbmVfc2Vn X3N0b3ApLCVlZGkKICAgICAgICAgamIgICAgICAxYgogCisgICAgICAgIC8qIERvIG5vdCBwYXJz ZSBjb21tYW5kIGxpbmUgb24gRUZJIHBsYXRmb3JtIGhlcmUuICovCisgICAgICAgIGNtcGIgICAg JDAsc3ltX3BoeXMoZWZpX3BsYXRmb3JtKQorICAgICAgICBqbnogICAgIDFmCisKICAgICAgICAg LyogQmFpbCBpZiB0aGVyZSBpcyBubyBjb21tYW5kIGxpbmUgdG8gcGFyc2UuICovCiAgICAgICAg IG1vdiAgICAgc3ltX3BoeXMobXVsdGlib290X3B0ciksJWVieAogICAgICAgICB0ZXN0bCAgICRN QklfQ01ETElORSxNQl9mbGFncyglZWJ4KQpAQCAtMjkyLDkgKzUyNCw5IEBAIHRyYW1wb2xpbmVf c2V0dXA6CiAgICAgICAgIGNhbGwgICAgY21kbGluZV9wYXJzZV9lYXJseQogCiAxOgotICAgICAg ICAvKiBTd2l0Y2ggdG8gbG93LW1lbW9yeSBzdGFjay4gICovCisgICAgICAgIC8qIFN3aXRjaCB0 byBsb3ctbWVtb3J5IHN0YWNrIHdoaWNoIGxpdmVzIGF0IHRoZSBlbmQgb2YgdHJhbXBvbGluZSBy ZWdpb24uICovCiAgICAgICAgIG1vdiAgICAgc3ltX3BoeXModHJhbXBvbGluZV9waHlzKSwlZWRp Ci0gICAgICAgIGxlYSAgICAgMHgxMDAwMCglZWRpKSwlZXNwCisgICAgICAgIGxlYSAgICAgTUJf VFJBTVBPTElORV9TSVpFK01CX1RSQU1QT0xJTkVfU1RBQ0tfU0laRSglZWRpKSwlZXNwCiAgICAg ICAgIGxlYSAgICAgdHJhbXBvbGluZV9ib290X2NwdV9lbnRyeS10cmFtcG9saW5lX3N0YXJ0KCVl ZGkpLCVlYXgKICAgICAgICAgcHVzaGwgICAkQk9PVF9DUzMyCiAgICAgICAgIHB1c2ggICAgJWVh eApkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2VmaS9lZmktYm9vdC5oIGIveGVuL2FyY2gveDg2 L2VmaS9lZmktYm9vdC5oCmluZGV4IDYyYzAxMGUuLmMxMjg1YWQgMTAwNjQ0Ci0tLSBhL3hlbi9h cmNoL3g4Ni9lZmkvZWZpLWJvb3QuaAorKysgYi94ZW4vYXJjaC94ODYvZWZpL2VmaS1ib290LmgK QEAgLTEwMCw2ICsxMDAsOSBAQCBzdGF0aWMgdm9pZCBfX2luaXQgcmVsb2NhdGVfdHJhbXBvbGlu ZSh1bnNpZ25lZCBsb25nIHBoeXMpCiB7CiAgICAgY29uc3QgczMyICp0cmFtcG9saW5lX3B0cjsK IAorICAgIGlmICggIWVmaV9lbmFibGVkKEVGSV9MT0FERVIpIHx8IHRyYW1wb2xpbmVfcGh5cyAp CisgICAgICAgIHJldHVybjsKKwogICAgIHRyYW1wb2xpbmVfcGh5cyA9IHBoeXM7CiAgICAgLyog QXBwbHkgcmVsb2NhdGlvbnMgdG8gdHJhbXBvbGluZS4gKi8KICAgICBmb3IgKCB0cmFtcG9saW5l X3B0ciA9IF9fdHJhbXBvbGluZV9yZWxfc3RhcnQ7CkBAIC0yMTAsMTIgKzIxMywxMCBAQCBzdGF0 aWMgdm9pZCAqX19pbml0IGVmaV9hcmNoX2FsbG9jYXRlX21tYXBfYnVmZmVyKFVJTlROIG1hcF9z aXplKQogCiBzdGF0aWMgdm9pZCBfX2luaXQgZWZpX2FyY2hfcHJlX2V4aXRfYm9vdCh2b2lkKQog ewotICAgIGlmICggIXRyYW1wb2xpbmVfcGh5cyApCi0gICAgewotICAgICAgICBpZiAoICFjZmcu YWRkciApCi0gICAgICAgICAgICBibGV4aXQoTCJObyBtZW1vcnkgZm9yIHRyYW1wb2xpbmUiKTsK LSAgICAgICAgcmVsb2NhdGVfdHJhbXBvbGluZShjZmcuYWRkcik7Ci0gICAgfQorICAgIGlmICgg IWNmZy5hZGRyICkKKyAgICAgICAgYmxleGl0KEwiTm8gbWVtb3J5IGZvciB0cmFtcG9saW5lIik7 CisKKyAgICByZWxvY2F0ZV90cmFtcG9saW5lKGNmZy5hZGRyKTsKIH0KIAogc3RhdGljIHZvaWQg X19pbml0IG5vcmV0dXJuIGVmaV9hcmNoX3Bvc3RfZXhpdF9ib290KHZvaWQpCkBAIC01NTAsNyAr NTUxLDEyIEBAIHN0YXRpYyB2b2lkIF9faW5pdCBlZmlfYXJjaF9tZW1vcnlfc2V0dXAodm9pZCkK IAogICAgIC8qIEFsbG9jYXRlIHNwYWNlIGZvciB0cmFtcG9saW5lIChpbiBmaXJzdCBNYikuICov CiAgICAgY2ZnLmFkZHIgPSAweDEwMDAwMDsKLSAgICBjZmcuc2l6ZSA9IHRyYW1wb2xpbmVfZW5k IC0gdHJhbXBvbGluZV9zdGFydDsKKworICAgIGlmICggZWZpX2VuYWJsZWQoRUZJX0xPQURFUikg KQorICAgICAgICBjZmcuc2l6ZSA9IHRyYW1wb2xpbmVfZW5kIC0gdHJhbXBvbGluZV9zdGFydDsK KyAgICBlbHNlCisgICAgICAgIGNmZy5zaXplID0gTUJfVFJBTVBPTElORV9TSVpFICsgTUJfVFJB TVBPTElORV9TVEFDS19TSVpFICsgTUJJX1NJWkU7CisKICAgICBzdGF0dXMgPSBlZmlfYnMtPkFs bG9jYXRlUGFnZXMoQWxsb2NhdGVNYXhBZGRyZXNzLCBFZmlMb2FkZXJEYXRhLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBQRk5fVVAoY2ZnLnNpemUpLCAmY2ZnLmFkZHIpOwog ICAgIGlmICggc3RhdHVzID09IEVGSV9TVUNDRVNTICkKQEAgLTU2MSw2ICs1NjcsOSBAQCBzdGF0 aWMgdm9pZCBfX2luaXQgZWZpX2FyY2hfbWVtb3J5X3NldHVwKHZvaWQpCiAgICAgICAgIFByaW50 U3RyKEwiVHJhbXBvbGluZSBzcGFjZSBjYW5ub3QgYmUgYWxsb2NhdGVkOyB3aWxsIHRyeSBmYWxs YmFjay5cclxuIik7CiAgICAgfQogCisgICAgaWYgKCAhZWZpX2VuYWJsZWQoRUZJX0xPQURFUikg KQorICAgICAgICByZXR1cm47CisKICAgICAvKiBJbml0aWFsaXNlIEwyIGlkZW50aXR5LW1hcCBh bmQgYm9vdC1tYXAgcGFnZSB0YWJsZSBlbnRyaWVzICgxNk1CKS4gKi8KICAgICBmb3IgKCBpID0g MDsgaSA8IDg7ICsraSApCiAgICAgewpAQCAtNjUzLDYgKzY2Miw0NCBAQCBzdGF0aWMgYm9vbF90 IF9faW5pdCBlZmlfYXJjaF91c2VfY29uZmlnX2ZpbGUoRUZJX1NZU1RFTV9UQUJMRSAqU3lzdGVt VGFibGUpCiAKIHN0YXRpYyB2b2lkIGVmaV9hcmNoX2ZsdXNoX2RjYWNoZV9hcmVhKGNvbnN0IHZv aWQgKnZhZGRyLCBVSU5UTiBzaXplKSB7IH0KIAorcGFkZHJfdCBfX2luaXQgZWZpX211bHRpYm9v dDIoRUZJX0hBTkRMRSBJbWFnZUhhbmRsZSwgRUZJX1NZU1RFTV9UQUJMRSAqU3lzdGVtVGFibGUp Cit7CisgICAgRUZJX0dSQVBISUNTX09VVFBVVF9QUk9UT0NPTCAqZ29wOworICAgIFVJTlROIGNv bHMsIGdvcF9tb2RlID0gfjAsIHJvd3M7CisKKyAgICBfX3NldF9iaXQoRUZJX0JPT1QsICZlZmlf ZmxhZ3MpOworICAgIF9fc2V0X2JpdChFRklfUlMsICZlZmlfZmxhZ3MpOworCisgICAgZWZpX2lu aXQoSW1hZ2VIYW5kbGUsIFN5c3RlbVRhYmxlKTsKKworICAgIGVmaV9jb25zb2xlX3NldF9tb2Rl KCk7CisKKyAgICBpZiAoIFN0ZE91dC0+UXVlcnlNb2RlKFN0ZE91dCwgU3RkT3V0LT5Nb2RlLT5N b2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNvbHMsICZyb3dzKSA9PSBFRklfU1VD Q0VTUyApCisgICAgICAgIGVmaV9hcmNoX2NvbnNvbGVfaW5pdChjb2xzLCByb3dzKTsKKworICAg IGdvcCA9IGVmaV9nZXRfZ29wKCk7CisKKyAgICBpZiAoIGdvcCApCisgICAgICAgIGdvcF9tb2Rl ID0gZWZpX2ZpbmRfZ29wX21vZGUoZ29wLCAwLCAwLCAwKTsKKworICAgIGVmaV9hcmNoX2VkZCgp OworICAgIGVmaV9hcmNoX2NwdSgpOworCisgICAgZWZpX3RhYmxlcygpOworICAgIHNldHVwX2Vm aV9wY2koKTsKKyAgICBlZmlfdmFyaWFibGVzKCk7CisgICAgZWZpX2FyY2hfbWVtb3J5X3NldHVw KCk7CisKKyAgICBpZiAoIGdvcCApCisgICAgICAgIGVmaV9zZXRfZ29wX21vZGUoZ29wLCBnb3Bf bW9kZSk7CisKKyAgICBlZmlfZXhpdF9ib290KEltYWdlSGFuZGxlLCBTeXN0ZW1UYWJsZSk7CisK KyAgICAvKiBSZXR1cm4gaGlnaGVzdCBhbGxvY2F0ZWQgbWVtb3J5IGFkZHJlc3MgYmVsb3cgMSBN aUIuICovCisgICAgcmV0dXJuIGNmZy5hZGRyICsgY2ZnLnNpemU7Cit9CisKIC8qCiAgKiBMb2Nh bCB2YXJpYWJsZXM6CiAgKiBtb2RlOiBDCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvZWZpL3N0 dWIuYyBiL3hlbi9hcmNoL3g4Ni9lZmkvc3R1Yi5jCmluZGV4IDQxNTgxMjQuLmI4MWFkYzAgMTAw NjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9lZmkvc3R1Yi5jCisrKyBiL3hlbi9hcmNoL3g4Ni9lZmkv c3R1Yi5jCkBAIC0zLDYgKzMsNDQgQEAKICNpbmNsdWRlIDx4ZW4vaW5pdC5oPgogI2luY2x1ZGUg PHhlbi9saWIuaD4KICNpbmNsdWRlIDxhc20vcGFnZS5oPgorI2luY2x1ZGUgPGFzbS9lZmliaW5k Lmg+CisjaW5jbHVkZSA8ZWZpL2VmaWRlZi5oPgorI2luY2x1ZGUgPGVmaS9lZmljYXBzdWxlLmg+ CisjaW5jbHVkZSA8ZWZpL2VmaWNvbi5oPgorI2luY2x1ZGUgPGVmaS9lZmlkZXZwLmg+CisjaW5j bHVkZSA8ZWZpL2VmaWFwaS5oPgorCisvKgorICogSGVyZSB3ZSBhcmUgaW4gRUZJIHN0dWIuIEVG SSBjYWxscyBhcmUgbm90IHN1cHBvcnRlZCBkdWUgdG8gbGFjaworICogb2YgcmVsZXZhbnQgZnVu Y3Rpb25hbGl0eSBpbiBjb21waWxlciBhbmQvb3IgbGlua2VyLgorICoKKyAqIGVmaV9tdWx0aWJv b3QyKCkgaXMgYW4gZXhjZXB0aW9uLiBQbGVhc2UgbG9vayBiZWxvdyBmb3IgbW9yZSBkZXRhaWxz LgorICovCisKK3BhZGRyX3QgX19pbml0IG5vcmV0dXJuIGVmaV9tdWx0aWJvb3QyKEVGSV9IQU5E TEUgSW1hZ2VIYW5kbGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBF RklfU1lTVEVNX1RBQkxFICpTeXN0ZW1UYWJsZSkKK3sKKyAgICBDSEFSMTYgKmVyciA9IEwiWGVu IGRvZXMgbm90IGhhdmUgRUZJIGNvZGUgYnVpbGQgaW4hISFcclxuU3lzdGVtIGhhbHRlZCEhIVxy XG4iOworICAgIFNJTVBMRV9URVhUX09VVFBVVF9JTlRFUkZBQ0UgKlN0ZEVycjsKKworICAgIFN0 ZEVyciA9IFN5c3RlbVRhYmxlLT5TdGRFcnIgPyBTeXN0ZW1UYWJsZS0+U3RkRXJyIDogU3lzdGVt VGFibGUtPkNvbk91dDsKKworICAgIC8qCisgICAgICogUHJpbnQgZXJyb3IgbWVzc2FnZSBhbmQg aGFsdCB0aGUgc3lzdGVtLgorICAgICAqCisgICAgICogV2UgaGF2ZSB0byBvcGVuIGNvZGUgTVMg eDY0IGNhbGxpbmcgY29udmVudGlvbgorICAgICAqIGluIGFzc2VtYmx5IGJlY2F1c2UgaGVyZSB0 aGlzIGNvbnZlbnRpb24gbWF5CisgICAgICogbm90IGJlIGRpcmVjdGx5IHN1cHBvcnRlZCBieSBD IGNvbXBpbGVyLgorICAgICAqLworICAgIGFzbSB2b2xhdGlsZSgKKyAgICAiICAgIGNhbGwgKiUy ICAgICAgICAgICAgICAgICAgICAgXG4iCisgICAgIjA6ICBobHQgICAgICAgICAgICAgICAgICAg ICAgICAgIFxuIgorICAgICIgICAgam1wICAwYiAgICAgICAgICAgICAgICAgICAgICBcbiIKKyAg ICAgICA6ICIrYyIgKFN0ZEVyciksICIrZCIgKGVycikgOiAiZyIgKFN0ZEVyci0+T3V0cHV0U3Ry aW5nKQorICAgICAgIDogInJheCIsICJyOCIsICJyOSIsICJyMTAiLCAicjExIiwgIm1lbW9yeSIp OworCisgICAgdW5yZWFjaGFibGUoKTsKK30KIAogYm9vbCBlZmlfZW5hYmxlZCh1bnNpZ25lZCBp bnQgZmVhdHVyZSkKIHsKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni94ODZfNjQvYXNtLW9mZnNl dHMuYyBiL3hlbi9hcmNoL3g4Ni94ODZfNjQvYXNtLW9mZnNldHMuYwppbmRleCA5MmY1ZDgxLi5m MTM1NjU0IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYveDg2XzY0L2FzbS1vZmZzZXRzLmMKKysr IGIveGVuL2FyY2gveDg2L3g4Nl82NC9hc20tb2Zmc2V0cy5jCkBAIC0xNzUsNiArMTc1LDggQEAg dm9pZCBfX2R1bW15X18odm9pZCkKICAgICBPRkZTRVQoTUIyX3RhZ190eXBlLCBtdWx0aWJvb3Qy X3RhZ190LCB0eXBlKTsKICAgICBPRkZTRVQoTUIyX3RhZ19zaXplLCBtdWx0aWJvb3QyX3RhZ190 LCBzaXplKTsKICAgICBPRkZTRVQoTUIyX21lbV9sb3dlciwgbXVsdGlib290Ml90YWdfYmFzaWNf bWVtaW5mb190LCBtZW1fbG93ZXIpOworICAgIE9GRlNFVChNQjJfZWZpNjRfc3QsIG11bHRpYm9v dDJfdGFnX2VmaTY0X3QsIHBvaW50ZXIpOworICAgIE9GRlNFVChNQjJfZWZpNjRfaWgsIG11bHRp Ym9vdDJfdGFnX2VmaTY0X2loX3QsIHBvaW50ZXIpOwogICAgIEJMQU5LKCk7CiAKICAgICBPRkZT RVQoRE9NQUlOX3ZtX2Fzc2lzdCwgc3RydWN0IGRvbWFpbiwgdm1fYXNzaXN0KTsKZGlmZiAtLWdp dCBhL3hlbi9hcmNoL3g4Ni94ZW4ubGRzLlMgYi94ZW4vYXJjaC94ODYveGVuLmxkcy5TCmluZGV4 IGIwYjFjOWIuLjNhMDJiMmIgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni94ZW4ubGRzLlMKKysr IGIveGVuL2FyY2gveDg2L3hlbi5sZHMuUwpAQCAtMzMxLDUgKzMzMSw4IEBAIEFTU0VSVChJU19B TElHTkVEKF9faW5pdF9lbmQsICAgUEFHRV9TSVpFKSwgIl9faW5pdF9lbmQgbWlzYWxpZ25lZCIp CiAKIEFTU0VSVChJU19BTElHTkVEKHRyYW1wb2xpbmVfc3RhcnQsIDQpLCAidHJhbXBvbGluZV9z dGFydCBtaXNhbGlnbmVkIikKIEFTU0VSVChJU19BTElHTkVEKHRyYW1wb2xpbmVfZW5kLCAgIDQp LCAidHJhbXBvbGluZV9lbmQgbWlzYWxpZ25lZCIpCi1BU1NFUlQoSVNfQUxJR05FRChfX2Jzc19z dGFydCwgICAgICA0KSwgIl9fYnNzX3N0YXJ0IG1pc2FsaWduZWQiKQotQVNTRVJUKElTX0FMSUdO RUQoX19ic3NfZW5kLCAgICAgICAgNCksICJfX2Jzc19lbmQgbWlzYWxpZ25lZCIpCitBU1NFUlQo SVNfQUxJR05FRChfX2Jzc19zdGFydCwgICAgICA4KSwgIl9fYnNzX3N0YXJ0IG1pc2FsaWduZWQi KQorQVNTRVJUKElTX0FMSUdORUQoX19ic3NfZW5kLCAgICAgICAgOCksICJfX2Jzc19lbmQgbWlz YWxpZ25lZCIpCisKK0FTU0VSVCgodHJhbXBvbGluZV9lbmQgLSB0cmFtcG9saW5lX3N0YXJ0KSA8 IE1CX1RSQU1QT0xJTkVfU0laRSwKKyAgICAibm90IGVub3VnaCByb29tIGZvciB0cmFtcG9saW5l IikKZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vZWZpL2Jvb3QuYyBiL3hlbi9jb21tb24vZWZpL2Jv b3QuYwppbmRleCAzNmRiYjcxLi5iNmNiZGFkIDEwMDY0NAotLS0gYS94ZW4vY29tbW9uL2VmaS9i b290LmMKKysrIGIveGVuL2NvbW1vbi9lZmkvYm9vdC5jCkBAIC03OSw2ICs3OSwxNyBAQCBzdGF0 aWMgc2l6ZV90IHdzdHJsZW4oY29uc3QgQ0hBUjE2ICogcyk7CiBzdGF0aWMgaW50IHNldF9jb2xv cih1MzIgbWFzaywgaW50IGJwcCwgdTggKnBvcywgdTggKnN6KTsKIHN0YXRpYyBib29sX3QgbWF0 Y2hfZ3VpZChjb25zdCBFRklfR1VJRCAqZ3VpZDEsIGNvbnN0IEVGSV9HVUlEICpndWlkMik7CiAK K3N0YXRpYyB2b2lkIGVmaV9pbml0KEVGSV9IQU5ETEUgSW1hZ2VIYW5kbGUsIEVGSV9TWVNURU1f VEFCTEUgKlN5c3RlbVRhYmxlKTsKK3N0YXRpYyB2b2lkIGVmaV9jb25zb2xlX3NldF9tb2RlKHZv aWQpOworc3RhdGljIEVGSV9HUkFQSElDU19PVVRQVVRfUFJPVE9DT0wgKmVmaV9nZXRfZ29wKHZv aWQpOworc3RhdGljIFVJTlROIGVmaV9maW5kX2dvcF9tb2RlKEVGSV9HUkFQSElDU19PVVRQVVRf UFJPVE9DT0wgKmdvcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVSU5UTiBjb2xz LCBVSU5UTiByb3dzLCBVSU5UTiBkZXB0aCk7CitzdGF0aWMgdm9pZCBlZmlfdGFibGVzKHZvaWQp Oworc3RhdGljIHZvaWQgc2V0dXBfZWZpX3BjaSh2b2lkKTsKK3N0YXRpYyB2b2lkIGVmaV92YXJp YWJsZXModm9pZCk7CitzdGF0aWMgdm9pZCBlZmlfc2V0X2dvcF9tb2RlKEVGSV9HUkFQSElDU19P VVRQVVRfUFJPVE9DT0wgKmdvcCwgVUlOVE4gZ29wX21vZGUpOworc3RhdGljIHZvaWQgZWZpX2V4 aXRfYm9vdChFRklfSEFORExFIEltYWdlSGFuZGxlLCBFRklfU1lTVEVNX1RBQkxFICpTeXN0ZW1U YWJsZSk7CisKIHN0YXRpYyBjb25zdCBFRklfQk9PVF9TRVJWSUNFUyAqX19pbml0ZGF0YSBlZmlf YnM7CiBzdGF0aWMgVUlOVDMyIF9faW5pdGRhdGEgZWZpX2JzX3JldmlzaW9uOwogc3RhdGljIEVG SV9IQU5ETEUgX19pbml0ZGF0YSBlZmlfaWg7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20t eDg2L2NvbmZpZy5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9jb25maWcuaAppbmRleCA2ZmQ4NGU3 Li5hODZlYTEyIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2NvbmZpZy5oCisrKyBi L3hlbi9pbmNsdWRlL2FzbS14ODYvY29uZmlnLmgKQEAgLTczLDYgKzczLDExIEBACiAjZGVmaW5l IFNUQUNLX09SREVSIDMKICNkZWZpbmUgU1RBQ0tfU0laRSAgKFBBR0VfU0laRSA8PCBTVEFDS19P UkRFUikKIAorI2RlZmluZSBNQl9UUkFNUE9MSU5FX1NUQUNLX1NJWkUgICAgICAgIFBBR0VfU0la RQorI2RlZmluZSBNQl9UUkFNUE9MSU5FX1NJWkUgICAgICAgICAgICAgIChLQig2NCkgLSBNQl9U UkFNUE9MSU5FX1NUQUNLX1NJWkUpCisKKyNkZWZpbmUgTUJJX1NJWkUgICAgICAgICAgICAgICAg ICAgICAgICAoMiAqIFBBR0VfU0laRSkKKwogLyogUHJpbWFyeSBzdGFjayBpcyByZXN0cmljdGVk IHRvIDhrQiBieSBndWFyZCBwYWdlcy4gKi8KICNkZWZpbmUgUFJJTUFSWV9TVEFDS19TSVpFIDgx OTIKIApkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL2NvbmZpZy5oIGIveGVuL2luY2x1ZGUv eGVuL2NvbmZpZy5oCmluZGV4IDQ3M2M1ZTguLjA0ZTRkYTUgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNs dWRlL3hlbi9jb25maWcuaAorKysgYi94ZW4vaW5jbHVkZS94ZW4vY29uZmlnLmgKQEAgLTcwLDYg KzcwLDcgQEAKICNkZWZpbmUgX19mb3JjZQogI2RlZmluZSBfX2JpdHdpc2UKIAorI2RlZmluZSBL Qihfa2IpICAgICAoX0FDKF9rYiwgVUxMKSA8PCAxMCkKICNkZWZpbmUgTUIoX21iKSAgICAgKF9B QyhfbWIsIFVMTCkgPDwgMjApCiAjZGVmaW5lIEdCKF9nYikgICAgIChfQUMoX2diLCBVTEwpIDw8 IDMwKQogCi0tIAoxLjcuMTAuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5v cmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=