From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.2 Received: (qmail 2561 invoked from network); 30 Apr 2020 21:42:20 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 30 Apr 2020 21:42:20 -0000 Content-Type: multipart/mixed; boundary="===============6541589515286024099==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_pipewire=3A_update_to_0=2E3=2E4?= To: ml@inbox.vuxu.org From: sirn Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Thu, 30 Apr 2020 23:42:20 +0200 List-Id: Message-ID: <20200430214220.1oVq274n13EzixSd5yCo_wbx50EqTrmNszqJKVGQiGk@z> GitHub notification mails are now in MIME to allow UTF8. --===============6541589515286024099== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgc2lybiBhZ2FpbnN0IG1hc3RlciBv biB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vc2lybi92 b2lkLXBhY2thZ2VzIHBpcGV3aXJlLXVwZGF0ZQpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvMjA0MTMKCnBpcGV3aXJlOiB1cGRhdGUgdG8gMC4zLjQKVGhp cyBQUiB1cGRhdGVzIGBwaXBld2lyZWAgdG8gMC4zLjQgYW5kIGFsc28gdXBkYXRpbmcvcGF0Y2hp bmcgYWxsIHBhY2thZ2VzIHRoYXQgZGVwZW5kcyBvbiBpdC4gDQoNCiogYHhkZy1kZXNrdG9wLXBv cnRhbGAgaW5jbHVkZXMgYSBwYXRjaCBiYWNrcG9ydGVkIGZyb20gMS43LjAgdG8gYWxsb3cgMS42 LjAgdG8gYnVpbGQgYWdhaW5zdCBwaXBld2lyZS0wLjMgKDEuNy54IGlzIHByZXJlbGVhc2UpDQoq IGB4ZGctZGVza3RvcC1wb3J0YWwta2RlYCBhbHJlYWR5IGluY2x1ZGVzIFBpcGV3aXJlIDAuMyBz dXBwb3J0IGFuZCBvbmx5IHJlcXVpcmVzIHJldmJ1bXAuDQoqIGBtdXR0ZXJgIGluY2x1ZGVzIGEg cGF0Y2ggYmFja3BvcnRlZCBmcm9tIDMuMzUgdG8gYWxsb3cgMy4zNCB0byBidWlsZCBhZ2FpbnN0 IHBpcGV3aXJlLTAuMyAodXBncmFkaW5nIHRvID49My4zNSBhbHNvIHJlcXVpcmVzIHVwZ3JhZGlu ZyBHTk9NRSkuCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvMjA0MTMucGF0Y2ggaXMgYXR0YWNoZWQ= --===============6541589515286024099== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-pipewire-update-20413.patch" RnJvbSA3OWJhMWExYTFjZGJhYzFjMTViZmM1YmE0NjgzM2ZlYmI4OGM4YTA0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLcmlkc2FkYSBUaGFuYWJ1bHBvbmcgPHNpcm5Ab2dzaXRlLm5l dD4KRGF0ZTogU2F0LCAyOCBNYXIgMjAyMCAxNjoyMzo1MiArMDkwMApTdWJqZWN0OiBbUEFUQ0gg MS80XSBwaXBld2lyZTogdXBkYXRlIHRvIDAuMy40CgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAg ICAgICAgICAgICB8ICAyICstCiBzcmNwa2dzL2Fsc2EtcGlwZXdpcmUgICAgICAgICAgfCAgMSAr CiBzcmNwa2dzL2xpYmphY2stcGlwZXdpcmUgICAgICAgfCAgMSArCiBzcmNwa2dzL2xpYnB1bHNl YXVkaW8tcGlwZXdpcmUgfCAgMSArCiBzcmNwa2dzL3BpcGV3aXJlL3RlbXBsYXRlICAgICAgfCA3 NCArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDYy IGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3Br Z3MvYWxzYS1waXBld2lyZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGliamFjay1waXBl d2lyZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGlicHVsc2VhdWRpby1waXBld2lyZQoK ZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IGEyMDg0MDdi MzU5Li4wNzI3OWE3YmM3MiAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24v c2hsaWJzCkBAIC0zMTk5LDcgKzMxOTksNyBAQCBsaWJhcmNhbl9zaG1pZl9leHQuc28uMC4xMSBh cmNhbi0wLjUuNC4zXzEKIGxpYmFyY2FuX3NobWlmX3NlcnZlci5zby4wLjExIGFyY2FuLTAuNS40 LjNfMQogbGliYXJjYW5fdHVpLnNvLjAuMTEgYXJjYW4tMC41LjQuM18xCiBsaWJsd2lwdjYuc28u MiBsd2lwdjYtMS41YV8xCi1saWJwaXBld2lyZS0wLjIuc28uMSBsaWJwaXBld2lyZS0wLjIuMl8x CitsaWJwaXBld2lyZS0wLjMuc28uMCBsaWJwaXBld2lyZS0wLjMuNF8xCiBsaWJ2b2xrLnNvLjIu Mi4xIHZvbGstMi4yLjFfMQogbGliZ251cmFkaW8tcnVudGltZS5zby4zLjguMCBnbnVyYWRpby0z LjguMC4wXzEKIGxpYmdudXJhZGlvLXBtdC5zby4zLjguMCBnbnVyYWRpby0zLjguMC4wXzEKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvYWxzYS1waXBld2lyZSBiL3NyY3BrZ3MvYWxzYS1waXBld2lyZQpu ZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMC4uYzljOTdjZjY3MDcKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL2Fsc2EtcGlwZXdpcmUKQEAgLTAsMCArMSBAQAorcGlwZXdp cmUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmph Y2stcGlwZXdpcmUgYi9zcmNwa2dzL2xpYmphY2stcGlwZXdpcmUKbmV3IGZpbGUgbW9kZSAxMjAw MDAKaW5kZXggMDAwMDAwMDAwMDAuLmM5Yzk3Y2Y2NzA3Ci0tLSAvZGV2L251bGwKKysrIGIvc3Jj cGtncy9saWJqYWNrLXBpcGV3aXJlCkBAIC0wLDAgKzEgQEAKK3BpcGV3aXJlClwgTm8gbmV3bGlu ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJwdWxzZWF1ZGlvLXBpcGV3 aXJlIGIvc3JjcGtncy9saWJwdWxzZWF1ZGlvLXBpcGV3aXJlCm5ldyBmaWxlIG1vZGUgMTIwMDAw CmluZGV4IDAwMDAwMDAwMDAwLi5jOWM5N2NmNjcwNwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvbGlicHVsc2VhdWRpby1waXBld2lyZQpAQCAtMCwwICsxIEBACitwaXBld2lyZQpcIE5vIG5l d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGlwZXdpcmUvdGVtcGxh dGUgYi9zcmNwa2dzL3BpcGV3aXJlL3RlbXBsYXRlCmluZGV4IDdmNjQ2ZGFkMTFkLi4xYzE5MzFi MWE2ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9waXBld2lyZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L3BpcGV3aXJlL3RlbXBsYXRlCkBAIC0xLDI2ICsxLDQyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdwaXBld2lyZScKIHBrZ25hbWU9cGlwZXdpcmUKLXZlcnNpb249MC4yLjcKK3ZlcnNpb249MC4z LjQKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1jb25maWd1cmVfYXJncz0iLURtYW49 dHJ1ZSAtRGdzdHJlYW1lcj1lbmFibGVkIC1EZG9jcz10cnVlIC1Ec3lzdGVtZD1mYWxzZSIKK2Nv bmZpZ3VyZV9hcmdzPSItRG1hbj10cnVlIC1EZ3N0cmVhbWVyPXRydWUgLURkb2NzPXRydWUgLURz eXN0ZW1kPWZhbHNlCisgLURibHVlejU9dHJ1ZSAtRGZmbXBlZz10cnVlIC1EcGlwZXdpcmUtYWxz YT10cnVlIC1EcGlwZXdpcmUtamFjaz10cnVlCisgLURwaXBld2lyZS1wdWxzZWF1ZGlvPXRydWUi CiBob3N0bWFrZWRlcGVuZHM9ImRveHlnZW4gZ3JhcGh2aXogcGtnLWNvbmZpZyB4bWx0b21hbiIK IG1ha2VkZXBlbmRzPSJTREwyLWRldmVsIGZmbXBlZy1kZXZlbCBnc3QtcGx1Z2lucy1iYXNlMS1k ZXZlbCBqYWNrLWRldmVsCi0gc2JjLWRldmVsIHY0bC11dGlscy1kZXZlbCBsaWJ2YS1kZXZlbCIK KyBzYmMtZGV2ZWwgdjRsLXV0aWxzLWRldmVsIGxpYnZhLWRldmVsIGxpYmJsdWV0b290aC1kZXZl bCIKIHNob3J0X2Rlc2M9IlNlcnZlciBhbmQgdXNlciBzcGFjZSBBUEkgdG8gZGVhbCB3aXRoIG11 bHRpbWVkaWEgcGlwZWxpbmVzIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGlu dXgub3JnPiIKLSNOZXh0IHJlbGVhc2Ugd2lsbCBwcm9iYWJseSBjaGFuZ2UgdG8gTUlULCBjdXJy ZW50bHkgbGlzdGVkIGluIG1hc3RlcgotbGljZW5zZT0iTEdQTC0yLjEtb25seSwgR1BMLTIuMC1v bmx5ICIKK2xpY2Vuc2U9Ik1JVCIKIGhvbWVwYWdlPSJodHRwczovL3BpcGV3aXJlLm9yZy8iCi1j aGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9QaXBlV2lyZS9waXBl d2lyZS9tYXN0ZXIvTkVXUyIKLWRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL1BpcGVXaXJl L3BpcGV3aXJlL2FyY2hpdmUvJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1iZmFhMGY2YWU2 YzA3OTFlMmUwYjU5MjM0ZDM5OTc1M2JmMjRmMWIzM2RiZjU4NzY4MjM2M2E4NDYzZGQ4ZGYxCitj aGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0bGFiLmZyZWVkZXNrdG9wLm9yZy9waXBld2lyZS9waXBld2ly ZS8tL3Jhdy9tYXN0ZXIvTkVXUyIKK2Rpc3RmaWxlcz0iaHR0cHM6Ly9naXRsYWIuZnJlZWRlc2t0 b3Aub3JnL3BpcGV3aXJlL3BpcGV3aXJlLy0vYXJjaGl2ZS8ke3ZlcnNpb259L3BpcGV3aXJlLSR7 dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09NmExYzljNjcxNTE0Yzg0YjM4Y2U5NmQ1MTgyMzM1 NDcwMmJjNGQ1ZGJhYmExMmQ1MDFmYWEwNDQ4Zjg5MjUxNQogY29uZl9maWxlcz0iL2V0Yy9waXBl d2lyZS9waXBld2lyZS5jb25mIgogCitpZiBbICIkWEJQU19UQVJHRVRfTk9fQVRPTUlDOCIgXTsg dGhlbgorCW1ha2VkZXBlbmRzKz0iIGxpYmF0b21pYy1kZXZlbCIKKwlMREZMQUdTKz0iIC1sYXRv bWljIgorZmkKKworcG9zdF9pbnN0YWxsKCkgeworCXZsaWNlbnNlIExJQ0VOU0UKK30KKworcG9z dF9wYXRjaCgpIHsKKwkjIGh0dHBzOi8vZ2l0bGFiLmZyZWVkZXNrdG9wLm9yZy9waXBld2lyZS9w aXBld2lyZS8tL2lzc3Vlcy8yMzMKKwl2c2VkIC1pIG1lc29uLmJ1aWxkIC1lICdzfC4qLVdlcnJv cj1zdWdnZXN0LWF0dHJpYnV0ZT1mb3JtYXQuKnx8ZycKK30KKwogbGlicGlwZXdpcmVfcGFja2Fn ZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gcGlwZXdpcmUgbGlicmFyeSIKIAlwa2dfaW5zdGFsbCgp IHsKLQkJdm1vdmUgInVzci9saWIvbGlicGlwZXdpcmUtMC4yLnNvLioiCisJCXZtb3ZlICJ1c3Iv bGliL2xpYnBpcGV3aXJlLTAuMy5zby4qIgorCQl2bW92ZSAidXNyL2xpYi9waXBld2lyZS0wLjMv Ki5zbyIKIAl9CiB9CiAKQEAgLTI4LDI1ICs0NCwyNSBAQCBwaXBld2lyZS1kZXZlbF9wYWNrYWdl KCkgewogCWRlcGVuZHM9ImxpYnBpcGV3aXJlLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCiAJc2hv cnRfZGVzYys9IiAtIHBpcGV3aXJlIGFuZCBsaWJzcGEgZGV2ZWxvcG1lbnQgZmlsZXMiCiAJcGtn X2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVzci9pbmNsdWRlL3BpcGV3aXJlCi0JCXZtb3ZlIHVzci9p bmNsdWRlL3NwYQotCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZy9saWJwaXBld2lyZS0wLjIucGMK LQkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcvbGlic3BhLTAuMS5wYwotCQl2bW92ZSB1c3IvbGli L2xpYnBpcGV3aXJlLTAuMi5zbworCQl2bW92ZSB1c3IvaW5jbHVkZS9waXBld2lyZS0wLjMKKwkJ dm1vdmUgdXNyL2luY2x1ZGUvc3BhLTAuMgorCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZy9saWJw aXBld2lyZS0wLjMucGMKKwkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcvbGlic3BhLTAuMi5wYwor CQl2bW92ZSB1c3IvbGliL2xpYnBpcGV3aXJlLTAuMy5zbwogCX0KIH0KIAogbGlic3BhLWZmbXBl Z19wYWNrYWdlKCkgewogCXNob3J0X2Rlc2MrPSIgLSBmZm1wZWcgcGx1Z2lucyIKIAlwa2dfaW5z dGFsbCgpIHsKLQkJdm1vdmUgdXNyL2xpYi9zcGEvZmZtcGVnCisJCXZtb3ZlIHVzci9saWIvc3Bh LTAuMi9mZm1wZWcKIAl9CiB9CiAKIGxpYnNwYS1ibHVldG9vdGhfcGFja2FnZSgpIHsKIAlzaG9y dF9kZXNjKz0iIC0gYmx1ZXRvb3RoIHBsdWdpbnMiCiAJcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3Zl IHVzci9saWIvc3BhL2JsdWV6NQorCQl2bW92ZSB1c3IvbGliL3NwYS0wLjIvYmx1ZXo1CiAJfQog fQogCkBAIC01Nyw2ICs3MywzMiBAQCBnc3RyZWFtZXIxLXBpcGV3aXJlX3BhY2thZ2UoKSB7CiAJ fQogfQogCitsaWJwdWxzZWF1ZGlvLXBpcGV3aXJlX3BhY2thZ2UoKSB7CisJZGVwZW5kcz0ibGli cGlwZXdpcmUtJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlzaG9ydF9kZXNjKz0iIC0gUHVsc2VB dWRpbyBjbGllbnQgbGlicmFyeSIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2xpYi9w aXBld2lyZS0wLjMvcHVsc2UKKwkJdm1vdmUgdXNyL2Jpbi9wdy1wdWxzZQorCX0KK30KKworYWxz YS1waXBld2lyZV9wYWNrYWdlKCkgeworCWRlcGVuZHM9ImxpYnBpcGV3aXJlLSR7dmVyc2lvbn1f JHtyZXZpc2lvbn0iCisJc2hvcnRfZGVzYys9IiAtIEFMU0EgY2xpZW50IGxpYnJhcnkiCisJcGtn X2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9saWIvYWxzYS1saWIKKwl9Cit9CisKK2xpYmphY2st cGlwZXdpcmVfcGFja2FnZSgpIHsKKwlkZXBlbmRzPSJsaWJwaXBld2lyZS0ke3ZlcnNpb259XyR7 cmV2aXNpb259IgorCXNob3J0X2Rlc2MrPSIgLSBKQUNLIGNsaWVudCBsaWJyYXJ5IgorCXBrZ19p bnN0YWxsKCkgeworCQl2bW92ZSB1c3IvbGliL3BpcGV3aXJlLTAuMy9qYWNrCisJCXZtb3ZlIHVz ci9iaW4vcHctamFjaworCX0KK30KKwogcGlwZXdpcmUtZG9jX3BhY2thZ2UoKSB7CiAJYXJjaHM9 bm9hcmNoCiAJc2hvcnRfZGVzYys9IiAtIGRvY3VtZW50YXRpb24iCgpGcm9tIDg2OGFlN2Y3Mjcy YzZiMzBhYmQ0MjVkYmRjZjUxMmMxMjIwODU4MDkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IEtyaWRzYWRhIFRoYW5hYnVscG9uZyA8c2lybkBvZ3NpdGUubmV0PgpEYXRlOiBTYXQsIDI4 IE1hciAyMDIwIDE2OjI0OjQ2ICswOTAwClN1YmplY3Q6IFtQQVRDSCAyLzRdIHhkZy1kZXNrdG9w LXBvcnRhbC1rZGU6IHJlYnVpbGQgZm9yIHBpcGV3aXJlLTAuMwoKLS0tCiBzcmNwa2dzL3hkZy1k ZXNrdG9wLXBvcnRhbC1rZGUvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNl cnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3hkZy1kZXNrdG9w LXBvcnRhbC1rZGUvdGVtcGxhdGUgYi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1rZGUvdGVt cGxhdGUKaW5kZXggZjI2MDU3ZDMyM2EuLjk1MTlhYmMxOWY2IDEwMDY0NAotLS0gYS9zcmNwa2dz L3hkZy1kZXNrdG9wLXBvcnRhbC1rZGUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94ZGctZGVza3Rv cC1wb3J0YWwta2RlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAneGRnLWRlc2t0b3AtcG9ydGFsLWtkZScKIHBrZ25hbWU9eGRnLWRlc2t0b3AtcG9ydGFsLWtk ZQogdmVyc2lvbj01LjE4LjQuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9 Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0iZXh0cmEtY21ha2UtbW9kdWxlcyBxdDUtcW1ha2UgcXQ1 LWhvc3QtdG9vbHMga2NvcmVhZGRvbnMgZ2V0dGV4dCIKIG1ha2VkZXBlbmRzPSJnbGliLWRldmVs IGtpby1kZXZlbCBrd2F5bGFuZC1kZXZlbCBsaWJlcG94eS1kZXZlbCBwaXBld2lyZS1kZXZlbAoK RnJvbSBjYTI2OTI3MTJiNDk2ZmQ4NWZiNzgzNTMyYjZlMTk3ZTQ4MDgwMzBkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLcmlkc2FkYSBUaGFuYWJ1bHBvbmcgPHNpcm5Ab2dzaXRlLm5l dD4KRGF0ZTogU2F0LCAyOCBNYXIgMjAyMCAxNjoyNDoyNiArMDkwMApTdWJqZWN0OiBbUEFUQ0gg My80XSB4ZGctZGVza3RvcC1wb3J0YWw6IHJlYnVpbGQgZm9yIHBpcGV3aXJlLTAuMwoKLS0tCiAu Li4vcGF0Y2hlcy9waXBld2lyZS0wLjMucGF0Y2ggICAgICAgICAgICAgICAgfCA1NTEgKysrKysr KysrKysrKysrKysrCiBzcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC90ZW1wbGF0ZSAgICAgICAg ICAgfCAgIDggKy0KIDIgZmlsZXMgY2hhbmdlZCwgNTU3IGluc2VydGlvbnMoKyksIDIgZGVsZXRp b25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwvcGF0 Y2hlcy9waXBld2lyZS0wLjMucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3hkZy1kZXNrdG9w LXBvcnRhbC9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaCBiL3NyY3BrZ3MveGRnLWRlc2t0b3At cG9ydGFsL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwLi45NGViZTA4MzU5OAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mv eGRnLWRlc2t0b3AtcG9ydGFsL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoCkBAIC0wLDAgKzEs NTUxIEBACitGcm9tIGEzODkwMWU1ZTdmODM1ZWZlN2I3YTA2YzU1NzkwYzhjMjBiYzkxYTIgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBXaW0gVGF5bWFucyA8d3RheW1hbnNAcmVkaGF0 LmNvbT4KK0RhdGU6IFR1ZSwgMTQgSmFuIDIwMjAgMDk6Mzc6MDkgKzAxMDAKK1N1YmplY3Q6IFtQ QVRDSF0gUGlwZVdpcmU6IHVwZGF0ZSB0byAwLjMgQVBJCisKKy0tLQorIGNvbmZpZ3VyZS5hYyAg ICAgIHwgICAyICstCisgc3JjL2NhbWVyYS5jICAgICAgfCAgMjQgKysrKy0tLS0KKyBzcmMvcGlw ZXdpcmUuYyAgICB8IDE0MSArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCisgc3JjL3BpcGV3aXJlLmggICAgfCAgMTAgKystLQorIHNyYy9zY3JlZW4tY2FzdC5j IHwgIDk4ICsrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgNSBmaWxlcyBjaGFuZ2Vk LCA3MiBpbnNlcnRpb25zKCspLCAyMDMgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgY29uZmln dXJlLmFjIGNvbmZpZ3VyZS5hYworaW5kZXggODk5MDJmYS4uNjJkNzk2MCAxMDA2NDQKKy0tLSBj b25maWd1cmUuYWMKKysrKyBjb25maWd1cmUuYWMKK0BAIC05Nyw3ICs5Nyw3IEBAIEFDX0FSR19F TkFCTEUocGlwZXdpcmUsCisgCSAgICAgIFtBU19IRUxQX1NUUklORyhbLS1lbmFibGUtcGlwZXdp cmVdLFtFbmFibGUgUGlwZVdpcmUgc3VwcG9ydC4gTmVlZGVkIGZvciBzY3JlZW4gY2FzdCBwb3J0 YWxdKV0sCisgCSAgICAgIGVuYWJsZV9waXBld2lyZT0kZW5hYmxldmFsLCBlbmFibGVfcGlwZXdp cmU9eWVzKQorIGlmIHRlc3QgeCRlbmFibGVfcGlwZXdpcmUgPSB4eWVzIDsgdGhlbgorLQlQS0df Q0hFQ0tfTU9EVUxFUyhQSVBFV0lSRSwgW2xpYnBpcGV3aXJlLTAuMiA+PSAwLjIuNl0pCisrCVBL R19DSEVDS19NT0RVTEVTKFBJUEVXSVJFLCBbbGlicGlwZXdpcmUtMC4zID49IDAuMi45MF0pCisg CUFDX0RFRklORShbSEFWRV9QSVBFV0lSRV0sWzFdLCBbRGVmaW5lIHRvIGVuYWJsZSBQaXBlV2ly ZSBzdXBwb3J0XSkKKyBmaQorIEFNX0NPTkRJVElPTkFMKFtIQVZFX1BJUEVXSVJFXSxbdGVzdCAi JGVuYWJsZV9waXBld2lyZSIgPSAieWVzIl0pCitkaWZmIC0tZ2l0IHNyYy9jYW1lcmEuYyBzcmMv Y2FtZXJhLmMKK2luZGV4IGMyYjM5MmMuLjIwZmUzYWEgMTAwNjQ0CistLS0gc3JjL2NhbWVyYS5j CisrKysgc3JjL2NhbWVyYS5jCitAQCAtMTQxLDcgKzE0MSw3IEBAIG9wZW5fcGlwZXdpcmVfY2Ft ZXJhX3JlbW90ZSAoY29uc3QgY2hhciAqYXBwX2lkLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgR0Vycm9yICoqZXJyb3IpCisgeworICAgUGlwZVdpcmVSZW1vdGUgKnJlbW90ZTsKKy0g IHN0cnVjdCBzcGFfZGljdF9pdGVtIHBlcm1pc3Npb25faXRlbXNbMV07CisrICBzdHJ1Y3QgcHdf cGVybWlzc2lvbiBwZXJtaXNzaW9uX2l0ZW1zWzJdOworICAgc3RydWN0IHB3X3Byb3BlcnRpZXMg KnBpcGV3aXJlX3Byb3BlcnRpZXM7CisgCisgICBwaXBld2lyZV9wcm9wZXJ0aWVzID0KK0BAIC0x NTgsMTIgKzE1OCwxMiBAQCBvcGVuX3BpcGV3aXJlX2NhbWVyYV9yZW1vdGUgKGNvbnN0IGNoYXIg KmFwcF9pZCwKKyAgICAqIEhpZGUgYWxsIGV4aXN0aW5nIGFuZCBmdXR1cmUgbm9kZXMgYnkgZGVm YXVsdC4gUGlwZVdpcmUgd2lsbCB1c2UgdGhlCisgICAgKiBwZXJtaXNzaW9uIHN0b3JlIHRvIHNl dCB1cCBwZXJtaXNzaW9ucy4KKyAgICAqLworLSAgcGVybWlzc2lvbl9pdGVtc1swXS5rZXkgPSBQ V19DT1JFX1BST1hZX1BFUk1JU1NJT05TX0RFRkFVTFQ7CistICBwZXJtaXNzaW9uX2l0ZW1zWzBd LnZhbHVlID0gIi0tLSI7CisrICBwZXJtaXNzaW9uX2l0ZW1zWzBdID0gUFdfUEVSTUlTU0lPTl9J TklUIChQV19JRF9DT1JFLCBQV19QRVJNX1JXWCk7CisrICBwZXJtaXNzaW9uX2l0ZW1zWzFdID0g UFdfUEVSTUlTU0lPTl9JTklUIChQV19JRF9BTlksIDApOworIAorLSAgcHdfY29yZV9wcm94eV9w ZXJtaXNzaW9ucyAocHdfcmVtb3RlX2dldF9jb3JlX3Byb3h5IChyZW1vdGUtPnJlbW90ZSksCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmU1BBX0RJQ1RfSU5JVCAocGVybWlzc2lvbl9p dGVtcywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX05f RUxFTUVOVFMgKHBlcm1pc3Npb25faXRlbXMpKSk7CisrICBwd19jbGllbnRfdXBkYXRlX3Blcm1p c3Npb25zIChwd19jb3JlX2dldF9jbGllbnQocmVtb3RlLT5jb3JlKSwKKysgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEdfTl9FTEVNRU5UUyAocGVybWlzc2lvbl9pdGVtcyksCisrICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXJtaXNzaW9uX2l0ZW1zKTsKKyAKKyAgIHBp cGV3aXJlX3JlbW90ZV9yb3VuZHRyaXAgKHJlbW90ZSk7CisgCitAQCAtMjE5LDcgKzIxOSw3IEBA IGhhbmRsZV9vcGVuX3BpcGV3aXJlX3JlbW90ZSAoWGRwQ2FtZXJhICpvYmplY3QsCisgICAgIH0K KyAKKyAgIG91dF9mZF9saXN0ID0gZ191bml4X2ZkX2xpc3RfbmV3ICgpOworLSAgZmQgPSBwd19y ZW1vdGVfc3RlYWxfZmQgKHJlbW90ZS0+cmVtb3RlKTsKKysgIGZkID0gcHdfY29yZV9zdGVhbF9m ZCAocmVtb3RlLT5jb3JlKTsKKyAgIGZkX2lkID0gZ191bml4X2ZkX2xpc3RfYXBwZW5kIChvdXRf ZmRfbGlzdCwgZmQsICZlcnJvcik7CisgICBjbG9zZSAoZmQpOworICAgcGlwZXdpcmVfcmVtb3Rl X2Rlc3Ryb3kgKHJlbW90ZSk7CitAQCAtMjUwLDI5ICsyNTAsMjggQEAgY2FtZXJhX2lmYWNlX2lu aXQgKFhkcENhbWVyYUlmYWNlICppZmFjZSkKKyBzdGF0aWMgdm9pZAorIGdsb2JhbF9hZGRlZF9j YiAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKyAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGlk LAorLSAgICAgICAgICAgICAgICAgdWludDMyX3QgdHlwZSwKKysgICAgICAgICAgICAgICAgIGNv bnN0IGNoYXIgKnR5cGUsCisgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3Qgc3BhX2RpY3Qg KnByb3BzLAorICAgICAgICAgICAgICAgICAgZ3BvaW50ZXIgdXNlcl9kYXRhKQorIHsKKyAgIENh bWVyYSAqY2FtZXJhID0gdXNlcl9kYXRhOworLSAgc3RydWN0IHB3X3R5cGUgKmNvcmVfdHlwZSA9 IHB3X2NvcmVfZ2V0X3R5cGUgKHJlbW90ZS0+Y29yZSk7CisgICBjb25zdCBzdHJ1Y3Qgc3BhX2Rp Y3RfaXRlbSAqbWVkaWFfY2xhc3M7CisgICBjb25zdCBzdHJ1Y3Qgc3BhX2RpY3RfaXRlbSAqbWVk aWFfcm9sZTsKKyAKKy0gIGlmICh0eXBlICE9IGNvcmVfdHlwZS0+bm9kZSkKKysgIGlmIChzdHJj bXAodHlwZSwgUFdfVFlQRV9JTlRFUkZBQ0VfTm9kZSkgIT0gMCkKKyAgICAgcmV0dXJuOworIAor ICAgaWYgKCFwcm9wcykKKyAgICAgcmV0dXJuOworIAorLSAgbWVkaWFfY2xhc3MgPSBzcGFfZGlj dF9sb29rdXBfaXRlbSAocHJvcHMsICJtZWRpYS5jbGFzcyIpOworKyAgbWVkaWFfY2xhc3MgPSBz cGFfZGljdF9sb29rdXBfaXRlbSAocHJvcHMsIFBXX0tFWV9NRURJQV9DTEFTUyk7CisgICBpZiAo IW1lZGlhX2NsYXNzKQorICAgICByZXR1cm47CisgCisgICBpZiAoZ19zdHJjbXAwIChtZWRpYV9j bGFzcy0+dmFsdWUsICJWaWRlby9Tb3VyY2UiKSAhPSAwKQorICAgICByZXR1cm47CisgCistICBt ZWRpYV9yb2xlID0gc3BhX2RpY3RfbG9va3VwX2l0ZW0gKHByb3BzLCAibWVkaWEucm9sZSIpOwor KyAgbWVkaWFfcm9sZSA9IHNwYV9kaWN0X2xvb2t1cF9pdGVtIChwcm9wcywgUFdfS0VZX01FRElB X1JPTEUpOworICAgaWYgKCFtZWRpYV9yb2xlKQorICAgICByZXR1cm47CisgCitAQCAtMzQyLDYg KzM0MSw3IEBAIGNyZWF0ZV9waXBld2lyZV9yZW1vdGUgKENhbWVyYSAqY2FtZXJhLAorICAgICB9 CisgCisgICBwaXBld2lyZV9wcm9wZXJ0aWVzID0gcHdfcHJvcGVydGllc19uZXcgKCJwaXBld2ly ZS5hY2Nlc3MucG9ydGFsLmlzX3BvcnRhbCIsICJ0cnVlIiwKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgInBvcnRhbC5tb25pdG9yIiwgIkNhbWVyYSIsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgY2FtZXJh LT5waXBld2lyZV9yZW1vdGUgPSBwaXBld2lyZV9yZW1vdGVfbmV3X3N5bmMgKHBpcGV3aXJlX3By b3BlcnRpZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZ2xvYmFsX2FkZGVkX2NiLAorZGlmZiAtLWdpdCBzcmMvcGlwZXdpcmUuYyBzcmMv cGlwZXdpcmUuYworaW5kZXggNzkzYTM3OC4uMTYyY2Q1NSAxMDA2NDQKKy0tLSBzcmMvcGlwZXdp cmUuYworKysrIHNyYy9waXBld2lyZS5jCitAQCAtMjEsNiArMjEsNyBAQAorICNpbmNsdWRlIDxl cnJuby5oPgorICNpbmNsdWRlIDxnbGliLmg+CisgI2luY2x1ZGUgPHBpcGV3aXJlL3BpcGV3aXJl Lmg+CisrI2luY2x1ZGUgPHNwYS91dGlscy9yZXN1bHQuaD4KKyAKKyAjaW5jbHVkZSAicGlwZXdp cmUuaCIKKyAKK0BAIC0zNiwyNyArMzcsMjUgQEAgc3RhdGljIGdib29sZWFuIGlzX3BpcGV3aXJl X2luaXRpYWxpemVkID0gRkFMU0U7Cisgc3RhdGljIHZvaWQKKyByZWdpc3RyeV9ldmVudF9nbG9i YWwgKHZvaWQgKnVzZXJfZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGlk LAorLSAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgcGFyZW50X2lkLAorICAgICAgICAg ICAgICAgICAgICAgICAgdWludDMyX3QgcGVybWlzc2lvbnMsCistICAgICAgICAgICAgICAgICAg ICAgICB1aW50MzJfdCB0eXBlLAorKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAq dHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHZlcnNpb24sCisgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3Qgc3BhX2RpY3QgKnByb3BzKQorIHsKKyAgIFBp cGVXaXJlUmVtb3RlICpyZW1vdGUgPSB1c2VyX2RhdGE7CistICBzdHJ1Y3QgcHdfdHlwZSAqY29y ZV90eXBlID0gcHdfY29yZV9nZXRfdHlwZSAocmVtb3RlLT5jb3JlKTsKKyAgIGNvbnN0IHN0cnVj dCBzcGFfZGljdF9pdGVtICpmYWN0b3J5X29iamVjdF90eXBlOworICAgUGlwZVdpcmVHbG9iYWwg Kmdsb2JhbDsKKyAKKyAgIGdsb2JhbCA9IGdfbmV3MCAoUGlwZVdpcmVHbG9iYWwsIDEpOworICAg Kmdsb2JhbCA9IChQaXBlV2lyZUdsb2JhbCkgeworLSAgICAucGFyZW50X2lkID0gcGFyZW50X2lk LAorKyAgICAucGFyZW50X2lkID0gaWQsCisgICB9OworIAorICAgZ19oYXNoX3RhYmxlX2luc2Vy dCAocmVtb3RlLT5nbG9iYWxzLCBHSU5UX1RPX1BPSU5URVIgKGlkKSwgZ2xvYmFsKTsKKyAgIGlm IChyZW1vdGUtPmdsb2JhbF9hZGRlZF9jYikKKyAgICAgcmVtb3RlLT5nbG9iYWxfYWRkZWRfY2Ig KHJlbW90ZSwgaWQsIHR5cGUsIHByb3BzLCByZW1vdGUtPnVzZXJfZGF0YSk7CisgCistICBpZiAo dHlwZSAhPSBjb3JlX3R5cGUtPmZhY3RvcnkpCisrICBpZiAoc3RyY21wKHR5cGUsIFBXX1RZUEVf SU5URVJGQUNFX0ZhY3RvcnkpICE9IDApCisgICAgIHJldHVybjsKKyAKKyAgIGZhY3Rvcnlfb2Jq ZWN0X3R5cGUgPSBzcGFfZGljdF9sb29rdXBfaXRlbSAocHJvcHMsICJmYWN0b3J5LnR5cGUubmFt ZSIpOworQEAgLTgxLDggKzgwLDggQEAgcmVnaXN0cnlfZXZlbnRfZ2xvYmFsX3JlbW92ZSAodm9p ZCAqdXNlcl9kYXRhLAorICAgZ19oYXNoX3RhYmxlX3JlbW92ZSAocmVtb3RlLT5nbG9iYWxzLCBH SU5UX1RPX1BPSU5URVIgKGlkKSk7CisgfQorIAorLXN0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfcmVn aXN0cnlfcHJveHlfZXZlbnRzIHJlZ2lzdHJ5X2V2ZW50cyA9IHsKKy0gIFBXX1ZFUlNJT05fUkVH SVNUUllfUFJPWFlfRVZFTlRTLAorK3N0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfcmVnaXN0cnlfZXZl bnRzIHJlZ2lzdHJ5X2V2ZW50cyA9IHsKKysgIFBXX1ZFUlNJT05fUkVHSVNUUllfRVZFTlRTLAor ICAgLmdsb2JhbCA9IHJlZ2lzdHJ5X2V2ZW50X2dsb2JhbCwKKyAgIC5nbG9iYWxfcmVtb3ZlID0g cmVnaXN0cnlfZXZlbnRfZ2xvYmFsX3JlbW92ZSwKKyB9OworQEAgLTkwLDcgKzg5LDcgQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCBwd19yZWdpc3RyeV9wcm94eV9ldmVudHMgcmVnaXN0cnlfZXZlbnRz ID0geworIHZvaWQKKyBwaXBld2lyZV9yZW1vdGVfcm91bmR0cmlwIChQaXBlV2lyZVJlbW90ZSAq cmVtb3RlKQorIHsKKy0gIHB3X2NvcmVfcHJveHlfc3luYyAocmVtb3RlLT5jb3JlX3Byb3h5LCAr K3JlbW90ZS0+c3luY19zZXEpOworKyAgcmVtb3RlLT5zeW5jX3NlcSA9IHB3X2NvcmVfc3luYyAo cmVtb3RlLT5jb3JlLCBQV19JRF9DT1JFLCByZW1vdGUtPnN5bmNfc2VxKTsKKyAgIHB3X21haW5f bG9vcF9ydW4gKHJlbW90ZS0+bG9vcCk7CisgfQorIAorQEAgLTk4LDE2ICs5NywxMyBAQCBzdGF0 aWMgZ2Jvb2xlYW4KKyBkaXNjb3Zlcl9ub2RlX2ZhY3Rvcnlfc3luYyAoUGlwZVdpcmVSZW1vdGUg KnJlbW90ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0Vycm9yICoqZXJyb3IpCisg eworLSAgc3RydWN0IHB3X3R5cGUgKmNvcmVfdHlwZSA9IHB3X2NvcmVfZ2V0X3R5cGUgKHJlbW90 ZS0+Y29yZSk7CistICBzdHJ1Y3QgcHdfcmVnaXN0cnlfcHJveHkgKnJlZ2lzdHJ5X3Byb3h5Owor KyAgc3RydWN0IHB3X3JlZ2lzdHJ5ICpyZWdpc3RyeTsKKyAKKy0gIHJlZ2lzdHJ5X3Byb3h5ID0g cHdfY29yZV9wcm94eV9nZXRfcmVnaXN0cnkgKHJlbW90ZS0+Y29yZV9wcm94eSwKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvcmVfdHlwZS0+cmVnaXN0 cnksCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQV19W RVJTSU9OX1JFR0lTVFJZLCAwKTsKKy0gIHB3X3JlZ2lzdHJ5X3Byb3h5X2FkZF9saXN0ZW5lciAo cmVnaXN0cnlfcHJveHksCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZyZW1v dGUtPnJlZ2lzdHJ5X2xpc3RlbmVyLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAmcmVnaXN0cnlfZXZlbnRzLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBy ZW1vdGUpOworKyAgcmVnaXN0cnkgPSBwd19jb3JlX2dldF9yZWdpc3RyeSAocmVtb3RlLT5jb3Jl LCBQV19WRVJTSU9OX1JFR0lTVFJZLCAwKTsKKysgIHB3X3JlZ2lzdHJ5X2FkZF9saXN0ZW5lciAo cmVnaXN0cnksCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICZyZW1vdGUtPnJlZ2lzdHJ5 X2xpc3RlbmVyLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcmVnaXN0cnlfZXZlbnRz LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICByZW1vdGUpOworIAorICAgcGlwZXdpcmVf cmVtb3RlX3JvdW5kdHJpcCAocmVtb3RlKTsKKyAKK0BAIC0xMjIsNTkgKzExOCwzNSBAQCBkaXNj b3Zlcl9ub2RlX2ZhY3Rvcnlfc3luYyAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKyB9CisgCisg c3RhdGljIHZvaWQKKy1vbl9zdGF0ZV9jaGFuZ2VkICh2b2lkICp1c2VyX2RhdGEsCistICAgICAg ICAgICAgICAgICAgZW51bSBwd19yZW1vdGVfc3RhdGUgb2xkLAorLSAgICAgICAgICAgICAgICAg IGVudW0gcHdfcmVtb3RlX3N0YXRlIHN0YXRlLAorLSAgICAgICAgICAgICAgICAgIGNvbnN0IGNo YXIgKmVycm9yKQorK2NvcmVfZXZlbnRfZXJyb3IgKHZvaWQgICAgICAgKnVzZXJfZGF0YSwKKysg ICAgICAgICAgICAgICAgICB1aW50MzJfdCAgICBpZCwKKysJCSAgaW50ICAgICAgICAgc2VxLAor KwkJICBpbnQgICAgICAgICByZXMsCisrCQkgIGNvbnN0IGNoYXIgKm1lc3NhZ2UpCisgeworICAg UGlwZVdpcmVSZW1vdGUgKnJlbW90ZSA9IHVzZXJfZGF0YTsKKyAKKy0gIHN3aXRjaCAoc3RhdGUp CisrICBpZiAoaWQgPT0gUFdfSURfQ09SRSkKKyAgICAgeworLSAgICBjYXNlIFBXX1JFTU9URV9T VEFURV9FUlJPUjoKKy0gICAgICBpZiAoIXJlbW90ZS0+ZXJyb3IpCistICAgICAgICB7CistICAg ICAgICAgIGdfc2V0X2Vycm9yICgmcmVtb3RlLT5lcnJvciwgR19JT19FUlJPUiwgR19JT19FUlJP Ul9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICAgICAiJXMiLCBlcnJvcik7CistICAgICAg ICB9CisrICAgICAgZ19zZXRfZXJyb3IgKCZyZW1vdGUtPmVycm9yLCBHX0lPX0VSUk9SLCBHX0lP X0VSUk9SX0ZBSUxFRCwKKysgICAgICAgICAgICAgICAgICIlcyIsIG1lc3NhZ2UpOworICAgICAg IHB3X21haW5fbG9vcF9xdWl0IChyZW1vdGUtPmxvb3ApOworLSAgICAgIGJyZWFrOworLSAgICBj YXNlIFBXX1JFTU9URV9TVEFURV9VTkNPTk5FQ1RFRDoKKy0gICAgICBpZiAoIXJlbW90ZS0+ZXJy b3IpCistICAgICAgICB7CistICAgICAgICAgIGdfc2V0X2Vycm9yICgmcmVtb3RlLT5lcnJvciwg R19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICAgICAi RGlzY29ubmVjdGVkIik7CistICAgICAgICB9CistICAgICAgcHdfbWFpbl9sb29wX3F1aXQgKHJl bW90ZS0+bG9vcCk7CistICAgICAgYnJlYWs7CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0NP Tk5FQ1RJTkc6CistICAgICAgYnJlYWs7CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0NPTk5F Q1RFRDoKKy0gICAgICBwd19tYWluX2xvb3BfcXVpdCAocmVtb3RlLT5sb29wKTsKKy0gICAgICBi cmVhazsKKy0gICAgZGVmYXVsdDoKKy0gICAgICBnX3dhcm5pbmcgKCJVbmtub3duIFBpcGVXaXJl IHN0YXRlIik7CistICAgICAgYnJlYWs7CisgICAgIH0KKyB9CisgCistc3RhdGljIGNvbnN0IHN0 cnVjdCBwd19yZW1vdGVfZXZlbnRzIHJlbW90ZV9ldmVudHMgPSB7CistICBQV19WRVJTSU9OX1JF TU9URV9FVkVOVFMsCistICAuc3RhdGVfY2hhbmdlZCA9IG9uX3N0YXRlX2NoYW5nZWQsCistfTsK Ky0KKyBzdGF0aWMgdm9pZAorIGNvcmVfZXZlbnRfZG9uZSAodm9pZCAqdXNlcl9kYXRhLAorLSAg ICAgICAgICAgICAgICAgdWludDMyX3Qgc2VxKQorKyAgICAgICAgICAgICAgICAgdWludDMyX3Qg aWQsIGludCBzZXEpCisgeworICAgUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSA9IHVzZXJfZGF0YTsK KyAKKy0gIGlmIChyZW1vdGUtPnN5bmNfc2VxID09IHNlcSkKKysgIGlmIChpZCA9PSBQV19JRF9D T1JFICYmIHJlbW90ZS0+c3luY19zZXEgPT0gc2VxKQorICAgICBwd19tYWluX2xvb3BfcXVpdCAo cmVtb3RlLT5sb29wKTsKKyB9CisgCistc3RhdGljIGNvbnN0IHN0cnVjdCBwd19jb3JlX3Byb3h5 X2V2ZW50cyBjb3JlX2V2ZW50cyA9IHsKKy0gIFBXX1ZFUlNJT05fQ09SRV9QUk9YWV9FVkVOVFMs Cisrc3RhdGljIGNvbnN0IHN0cnVjdCBwd19jb3JlX2V2ZW50cyBjb3JlX2V2ZW50cyA9IHsKKysg IFBXX1ZFUlNJT05fQ09SRV9FVkVOVFMsCisrICAuZXJyb3IgPSBjb3JlX2V2ZW50X2Vycm9yLAor ICAgLmRvbmUgPSBjb3JlX2V2ZW50X2RvbmUsCisgfTsKKyAKK0BAIC0yMzcsOCArMjA5LDggQEAg dm9pZAorIHBpcGV3aXJlX3JlbW90ZV9kZXN0cm95IChQaXBlV2lyZVJlbW90ZSAqcmVtb3RlKQor IHsKKyAgIGdfY2xlYXJfcG9pbnRlciAoJnJlbW90ZS0+Z2xvYmFscywgZ19oYXNoX3RhYmxlX2Rl c3Ryb3kpOworLSAgZ19jbGVhcl9wb2ludGVyICgmcmVtb3RlLT5yZW1vdGUsIHB3X3JlbW90ZV9k ZXN0cm95KTsKKy0gIGdfY2xlYXJfcG9pbnRlciAoJnJlbW90ZS0+Y29yZSwgcHdfY29yZV9kZXN0 cm95KTsKKysgIGdfY2xlYXJfcG9pbnRlciAoJnJlbW90ZS0+Y29yZSwgcHdfY29yZV9kaXNjb25u ZWN0KTsKKysgIGdfY2xlYXJfcG9pbnRlciAoJnJlbW90ZS0+Y29udGV4dCwgcHdfY29udGV4dF9k ZXN0cm95KTsKKyAgIGdfY2xlYXJfcG9pbnRlciAoJnJlbW90ZS0+bG9vcCwgcHdfbWFpbl9sb29w X2Rlc3Ryb3kpOworICAgZ19jbGVhcl9lcnJvciAoJnJlbW90ZS0+ZXJyb3IpOworIAorQEAgLTMw Nyw2OCArMjc5LDMxIEBAIHBpcGV3aXJlX3JlbW90ZV9uZXdfc3luYyAoc3RydWN0IHB3X3Byb3Bl cnRpZXMgKnBpcGV3aXJlX3Byb3BlcnRpZXMsCisgICAgICAgcmV0dXJuIE5VTEw7CisgICAgIH0K KyAKKy0gIHJlbW90ZS0+Y29yZSA9IHB3X2NvcmVfbmV3IChwd19tYWluX2xvb3BfZ2V0X2xvb3Ag KHJlbW90ZS0+bG9vcCksIE5VTEwpOworLSAgaWYgKCFyZW1vdGUtPmNvcmUpCisrICByZW1vdGUt PmNvbnRleHQgPSBwd19jb250ZXh0X25ldyAocHdfbWFpbl9sb29wX2dldF9sb29wIChyZW1vdGUt Pmxvb3ApLCBOVUxMLCAwKTsKKysgIGlmICghcmVtb3RlLT5jb250ZXh0KQorICAgICB7CisgICAg ICAgcGlwZXdpcmVfcmVtb3RlX2Rlc3Ryb3kgKHJlbW90ZSk7CisgICAgICAgcHdfcHJvcGVydGll c19mcmVlIChwaXBld2lyZV9wcm9wZXJ0aWVzKTsKKyAgICAgICBnX3NldF9lcnJvciAoZXJyb3Is IEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVELAorLSAgICAgICAgICAgICAgICAgICAiQ291 bGRuJ3QgY3JlYXRlIFBpcGVXaXJlIGNvcmUiKTsKKysgICAgICAgICAgICAgICAgICAgIkNvdWxk bid0IGNyZWF0ZSBQaXBlV2lyZSBjb250ZXh0Iik7CisgICAgICAgcmV0dXJuIE5VTEw7CisgICAg IH0KKyAKKy0gIHJlbW90ZS0+cmVtb3RlID0gcHdfcmVtb3RlX25ldyAocmVtb3RlLT5jb3JlLCBw aXBld2lyZV9wcm9wZXJ0aWVzLCAwKTsKKy0gIGlmICghcmVtb3RlLT5yZW1vdGUpCisrICByZW1v dGUtPmNvcmUgPSBwd19jb250ZXh0X2Nvbm5lY3QgKHJlbW90ZS0+Y29udGV4dCwgcGlwZXdpcmVf cHJvcGVydGllcywgMCk7CisrICBpZiAoIXJlbW90ZS0+Y29yZSkKKyAgICAgeworICAgICAgIHBp cGV3aXJlX3JlbW90ZV9kZXN0cm95IChyZW1vdGUpOworICAgICAgIGdfc2V0X2Vycm9yIChlcnJv ciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICJD b3VsZG4ndCBjcmVhdGUgUGlwZVdpcmUgcmVtb3RlIik7CisrICAgICAgICAgICAgICAgICAgICJD b3VsZG4ndCBjb25uZWN0IHRvIFBpcGVXaXJlIik7CisgICAgICAgcmV0dXJuIE5VTEw7CisgICAg IH0KKyAKKyAgIHJlbW90ZS0+Z2xvYmFscyA9IGdfaGFzaF90YWJsZV9uZXdfZnVsbCAoTlVMTCwg TlVMTCwgTlVMTCwgZ19mcmVlKTsKKyAKKy0gIHB3X3JlbW90ZV9hZGRfbGlzdGVuZXIgKHJlbW90 ZS0+cmVtb3RlLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgJnJlbW90ZS0+cmVtb3RlX2xp c3RlbmVyLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgJnJlbW90ZV9ldmVudHMsCistICAg ICAgICAgICAgICAgICAgICAgICAgICByZW1vdGUpOworLQorLSAgaWYgKHB3X3JlbW90ZV9jb25u ZWN0IChyZW1vdGUtPnJlbW90ZSkgIT0gMCkKKy0gICAgeworLSAgICAgIHBpcGV3aXJlX3JlbW90 ZV9kZXN0cm95IChyZW1vdGUpOworLSAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwgR19JT19FUlJP UiwgR19JT19FUlJPUl9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBjb25u ZWN0IFBpcGVXaXJlIHJlbW90ZSIpOworLSAgICAgIHJldHVybiBOVUxMOworLSAgICB9CistCist ICBwd19tYWluX2xvb3BfcnVuIChyZW1vdGUtPmxvb3ApOworLQorLSAgc3dpdGNoIChwd19yZW1v dGVfZ2V0X3N0YXRlIChyZW1vdGUtPnJlbW90ZSwgTlVMTCkpCistICAgIHsKKy0gICAgY2FzZSBQ V19SRU1PVEVfU1RBVEVfRVJST1I6CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX1VOQ09OTkVD VEVEOgorLSAgICAgICplcnJvciA9IGdfc3RlYWxfcG9pbnRlciAoJnJlbW90ZS0+ZXJyb3IpOwor LSAgICAgIHBpcGV3aXJlX3JlbW90ZV9kZXN0cm95IChyZW1vdGUpOworLSAgICAgIHJldHVybiBO VUxMOworLSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9DT05ORUNUSU5HOgorLSAgICAgIGdfc2V0 X2Vycm9yIChlcnJvciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCistICAgICAgICAg ICAgICAgICAgICJQaXBlV2lyZSBsb29wIHN0b3BwZWQgdW5leHBlY3RlZGx5Iik7CistICAgICAg cGlwZXdpcmVfcmVtb3RlX2Rlc3Ryb3kgKHJlbW90ZSk7CistICAgICAgcmV0dXJuIE5VTEw7Cist ICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0NPTk5FQ1RFRDoKKy0gICAgICBicmVhazsKKy0gICAg ZGVmYXVsdDoKKy0gICAgICBnX3NldF9lcnJvciAoZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJS T1JfRkFJTEVELAorLSAgICAgICAgICAgICAgICAgICAiVW5leHBlY3RlZCBQaXBlV2lyZSBzdGF0 ZSIpOworLSAgICAgIHBpcGV3aXJlX3JlbW90ZV9kZXN0cm95IChyZW1vdGUpOworLSAgICAgIHJl dHVybiBOVUxMOworLSAgICB9CistCistICByZW1vdGUtPmNvcmVfcHJveHkgPSBwd19yZW1vdGVf Z2V0X2NvcmVfcHJveHkgKHJlbW90ZS0+cmVtb3RlKTsKKy0gIHB3X2NvcmVfcHJveHlfYWRkX2xp c3RlbmVyIChyZW1vdGUtPmNvcmVfcHJveHksCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJnJlbW90ZS0+Y29yZV9saXN0ZW5lciwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAmY29yZV9ldmVudHMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3RlKTsK KysgIHB3X2NvcmVfYWRkX2xpc3RlbmVyIChyZW1vdGUtPmNvcmUsCisrICAgICAgICAgICAgICAg ICAgICAgICAgJnJlbW90ZS0+Y29yZV9saXN0ZW5lciwKKysgICAgICAgICAgICAgICAgICAgICAg ICAmY29yZV9ldmVudHMsCisrICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3RlKTsKKyAKKyAg IGlmICghZGlzY292ZXJfbm9kZV9mYWN0b3J5X3N5bmMgKHJlbW90ZSwgZXJyb3IpKQorICAgICB7 CitkaWZmIC0tZ2l0IHNyYy9waXBld2lyZS5oIHNyYy9waXBld2lyZS5oCitpbmRleCAwZjFiZjU0 Li5iZjQ4ZDVlIDEwMDY0NAorLS0tIHNyYy9waXBld2lyZS5oCisrKysgc3JjL3BpcGV3aXJlLmgK K0BAIC0zMiw3ICszMiw3IEBAIHR5cGVkZWYgc3RydWN0IF9QaXBlV2lyZUdsb2JhbAorIAorIHR5 cGVkZWYgdm9pZCAoKiBQaXBlV2lyZUdsb2JhbEFkZGVkQ2FsbGJhY2spIChQaXBlV2lyZVJlbW90 ZSAqcmVtb3RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB1aW50MzJfdCBpZCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdWludDMyX3QgdHlwZSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3QgY2hhciAqdHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHNwYV9kaWN0ICpwcm9wcywKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3BvaW50ZXIgdXNlcl9k YXRhKTsKKyAKK0BAIC00MywxMyArNDMsMTEgQEAgdHlwZWRlZiB2b2lkICgqIFBpcGVXaXJlR2xv YmFsUmVtb3ZlZENhbGxiYWNrKSAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKyBzdHJ1Y3QgX1Bp cGVXaXJlUmVtb3RlCisgeworICAgc3RydWN0IHB3X21haW5fbG9vcCAqbG9vcDsKKysgIHN0cnVj dCBwd19jb250ZXh0ICpjb250ZXh0OworICAgc3RydWN0IHB3X2NvcmUgKmNvcmU7CistICBzdHJ1 Y3QgcHdfcmVtb3RlICpyZW1vdGU7CistICBzdHJ1Y3Qgc3BhX2hvb2sgcmVtb3RlX2xpc3RlbmVy OworLQorLSAgc3RydWN0IHB3X2NvcmVfcHJveHkgKmNvcmVfcHJveHk7CisgICBzdHJ1Y3Qgc3Bh X2hvb2sgY29yZV9saXN0ZW5lcjsKKy0gIHVpbnQzMl90IHN5bmNfc2VxOworKworKyAgaW50IHN5 bmNfc2VxOworIAorICAgc3RydWN0IHNwYV9ob29rIHJlZ2lzdHJ5X2xpc3RlbmVyOworIAorZGlm ZiAtLWdpdCBzcmMvc2NyZWVuLWNhc3QuYyBzcmMvc2NyZWVuLWNhc3QuYworaW5kZXggNzg4MWRk Yy4uMTY3NzA1MCAxMDA2NDQKKy0tLSBzcmMvc2NyZWVuLWNhc3QuYworKysrIHNyYy9zY3JlZW4t Y2FzdC5jCitAQCAtMzEsMTAgKzMxLDEwIEBACisgI2luY2x1ZGUgInhkcC1pbXBsLWRidXMuaCIK KyAjaW5jbHVkZSAieGRwLXV0aWxzLmgiCisgCistI2RlZmluZSBQRVJNSVNTSU9OX0lURU0oaXRl bV9rZXksIGl0ZW1fdmFsdWUpIFwKKy0gICgoc3RydWN0IHNwYV9kaWN0X2l0ZW0pIHsgXAorLSAg ICAua2V5ID0gaXRlbV9rZXksIFwKKy0gICAgLnZhbHVlID0gaXRlbV92YWx1ZSBcCisrI2RlZmlu ZSBQRVJNSVNTSU9OX0lURU0oaXRlbV9pZCwgaXRlbV9wZXJtaXNzaW9ucykgXAorKyAgKChzdHJ1 Y3QgcHdfcGVybWlzc2lvbikgeyBcCisrICAgIC5pZCA9IGl0ZW1faWQsIFwKKysgICAgLnBlcm1p c3Npb25zID0gaXRlbV9wZXJtaXNzaW9ucyBcCisgICB9KQorIAorIHR5cGVkZWYgc3RydWN0IF9T Y3JlZW5DYXN0IFNjcmVlbkNhc3Q7CitAQCAtNTE3LDQyICs1MTcsOSBAQCBzY3JlZW5fY2FzdF9z dHJlYW1fZ2V0X3BpcGV3aXJlX25vZGVfaWQgKFNjcmVlbkNhc3RTdHJlYW0gKnN0cmVhbSkKKyAg IHJldHVybiBzdHJlYW0tPmlkOworIH0KKyAKKy1zdGF0aWMgdm9pZAorLWFwcGVuZF9wYXJlbnRf cGVybWlzc2lvbnMgKFBpcGVXaXJlUmVtb3RlICpyZW1vdGUsCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgR0FycmF5ICpwZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgIEdMaXN0ICoqc3RyaW5nX3N0YXNoLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAg IFBpcGVXaXJlR2xvYmFsICpnbG9iYWwsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u c3QgY2hhciAqcGVybWlzc2lvbikKKy17CistICBQaXBlV2lyZUdsb2JhbCAqcGFyZW50OworLSAg Y2hhciAqcGFyZW50X3Blcm1pc3Npb25fdmFsdWU7CistCistICBpZiAoZ2xvYmFsLT5wYXJlbnRf aWQgPT0gMCkKKy0gICAgcmV0dXJuOworLQorLSAgcGFyZW50ID0gZ19oYXNoX3RhYmxlX2xvb2t1 cCAocmVtb3RlLT5nbG9iYWxzLCBHSU5UX1RPX1BPSU5URVIgKGdsb2JhbC0+cGFyZW50X2lkKSk7 CistCistICBpZiAocGFyZW50LT5wZXJtaXNzaW9uX3NldCkKKy0gICAgcmV0dXJuOworLSAgcGFy ZW50LT5wZXJtaXNzaW9uX3NldCA9IFRSVUU7CistCistICBhcHBlbmRfcGFyZW50X3Blcm1pc3Np b25zIChyZW1vdGUsIHBlcm1pc3Npb25faXRlbXMsIHN0cmluZ19zdGFzaCwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHBhcmVudCwgcGVybWlzc2lvbik7CistCistICBwYXJlbnRfcGVy bWlzc2lvbl92YWx1ZSA9IGdfc3RyZHVwX3ByaW50ZiAoIiV1OiVzIiwKKy0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbG9iYWwtPnBhcmVudF9pZCwKKy0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXJtaXNzaW9uKTsKKy0g ICpzdHJpbmdfc3Rhc2ggPSBnX2xpc3RfcHJlcGVuZCAoKnN0cmluZ19zdGFzaCwgcGFyZW50X3Bl cm1pc3Npb25fdmFsdWUpOworLQorLSAgZ19hcnJheV9hcHBlbmRfdmFsIChwZXJtaXNzaW9uX2l0 ZW1zLAorLSAgICAgICAgICAgICAgICAgICAgICBQRVJNSVNTSU9OX0lURU0gKFBXX0NPUkVfUFJP WFlfUEVSTUlTU0lPTlNfR0xPQkFMLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHBhcmVudF9wZXJtaXNzaW9uX3ZhbHVlKSk7CistfQorLQorIHN0YXRpYyB2b2lkCisg YXBwZW5kX3N0cmVhbV9wZXJtaXNzaW9ucyAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICBHQXJyYXkgKnBlcm1pc3Npb25faXRlbXMsCistICAgICAg ICAgICAgICAgICAgICAgICAgICAgR0xpc3QgKipzdHJpbmdfc3Rhc2gsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgR0xpc3QgKnN0cmVhbXMpCisgeworICAgR0xpc3QgKmw7CitAQCAtNTYx LDIxICs1MjgsMTAgQEAgYXBwZW5kX3N0cmVhbV9wZXJtaXNzaW9ucyAoUGlwZVdpcmVSZW1vdGUg KnJlbW90ZSwKKyAgICAgeworICAgICAgIFNjcmVlbkNhc3RTdHJlYW0gKnN0cmVhbSA9IGwtPmRh dGE7CisgICAgICAgdWludDMyX3Qgc3RyZWFtX2lkOworLSAgICAgIFBpcGVXaXJlR2xvYmFsICpz dHJlYW1fZ2xvYmFsOworLSAgICAgIGNoYXIgKnN0cmVhbV9wZXJtaXNzaW9uX3ZhbHVlOworIAor ICAgICAgIHN0cmVhbV9pZCA9IHNjcmVlbl9jYXN0X3N0cmVhbV9nZXRfcGlwZXdpcmVfbm9kZV9p ZCAoc3RyZWFtKTsKKy0gICAgICBzdHJlYW1fZ2xvYmFsID0gZ19oYXNoX3RhYmxlX2xvb2t1cCAo cmVtb3RlLT5nbG9iYWxzLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBHSU5UX1RPX1BPSU5URVIgKHN0cmVhbV9pZCkpOworLQorLSAgICAgIGFwcGVuZF9wYXJl bnRfcGVybWlzc2lvbnMgKHJlbW90ZSwgcGVybWlzc2lvbl9pdGVtcywgc3RyaW5nX3N0YXNoLAor LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmVhbV9nbG9iYWwsICJyLS0iKTsK Ky0KKy0gICAgICBzdHJlYW1fcGVybWlzc2lvbl92YWx1ZSA9IGdfc3RyZHVwX3ByaW50ZiAoIiV1 OnJ3eCIsIHN0cmVhbV9pZCk7CistICAgICAgKnN0cmluZ19zdGFzaCA9IGdfbGlzdF9wcmVwZW5k ICgqc3RyaW5nX3N0YXNoLCBzdHJlYW1fcGVybWlzc2lvbl92YWx1ZSk7CisgICAgICAgZ19hcnJh eV9hcHBlbmRfdmFsIChwZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgUEVSTUlTU0lPTl9JVEVNIChQV19DT1JFX1BST1hZX1BFUk1JU1NJT05TX0dMT0JBTCwKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyZWFtX3Blcm1pc3Np b25fdmFsdWUpKTsKKysgICAgICAgICAgICAgICAgICAgICAgICAgIFBFUk1JU1NJT05fSVRFTSAo c3RyZWFtX2lkLCBQV19QRVJNX1JXWCkpOworICAgICB9CisgfQorIAorQEAgLTU4Nyw5ICs1NDMs NiBAQCBvcGVuX3BpcGV3aXJlX3NjcmVlbl9jYXN0X3JlbW90ZSAoY29uc3QgY2hhciAqYXBwX2lk LAorICAgc3RydWN0IHB3X3Byb3BlcnRpZXMgKnBpcGV3aXJlX3Byb3BlcnRpZXM7CisgICBQaXBl V2lyZVJlbW90ZSAqcmVtb3RlOworICAgZ19hdXRvcHRyKEdBcnJheSkgcGVybWlzc2lvbl9pdGVt cyA9IE5VTEw7CistICBjaGFyICpub2RlX2ZhY3RvcnlfcGVybWlzc2lvbl9zdHJpbmc7CistICBH TGlzdCAqc3RyaW5nX3N0YXNoID0gTlVMTDsKKy0gIHN0cnVjdCBzcGFfZGljdCAqcGVybWlzc2lv bl9kaWN0OworICAgUGlwZVdpcmVHbG9iYWwgKm5vZGVfZ2xvYmFsOworIAorICAgcGlwZXdpcmVf cHJvcGVydGllcyA9IHB3X3Byb3BlcnRpZXNfbmV3ICgicGlwZXdpcmUuYWNjZXNzLnBvcnRhbC5h cHBfaWQiLCBhcHBfaWQsCitAQCAtNjAzLDQ4ICs1NTYsMzEgQEAgb3Blbl9waXBld2lyZV9zY3Jl ZW5fY2FzdF9yZW1vdGUgKGNvbnN0IGNoYXIgKmFwcF9pZCwKKyAKKyAgIHBlcm1pc3Npb25faXRl bXMgPSBnX2FycmF5X25ldyAoRkFMU0UsIFRSVUUsIHNpemVvZiAoc3RydWN0IHNwYV9kaWN0X2l0 ZW0pKTsKKyAKKy0gIC8qCistICAgKiBIaWRlIGFsbCBleGlzdGluZyBhbmQgZnV0dXJlIG5vZGVz IChleGNlcHQgdGhlIG9uZXMgd2UgZXhwbGljaXRseSBsaXN0IGJlbG93LgorLSAgICovCistICBn X2FycmF5X2FwcGVuZF92YWwgKHBlcm1pc3Npb25faXRlbXMsCistICAgICAgICAgICAgICAgICAg ICAgIFBFUk1JU1NJT05fSVRFTSAoUFdfQ09SRV9QUk9YWV9QRVJNSVNTSU9OU19FWElTVElORywK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLS0tIikpOworLSAgZ19h cnJheV9hcHBlbmRfdmFsIChwZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAgICAgICAgICAgICAgICAg ICBQRVJNSVNTSU9OX0lURU0gKFBXX0NPUkVfUFJPWFlfUEVSTUlTU0lPTlNfREVGQVVMVCwKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLS0tIikpOworLQorICAgLyoK KyAgICAqIFBpcGVXaXJlOkludGVyZmFjZTpDb3JlCisgICAgKiBOZWVkcyByd3ggdG8gYmUgYWJs ZSBjcmVhdGUgdGhlIHNpbmsgbm9kZSB1c2luZyB0aGUgY3JlYXRlLW9iamVjdCBtZXRob2QKKyAg ICAqLworICAgZ19hcnJheV9hcHBlbmRfdmFsIChwZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAgICAg ICAgICAgICAgICAgICBQRVJNSVNTSU9OX0lURU0gKFBXX0NPUkVfUFJPWFlfUEVSTUlTU0lPTlNf R0xPQkFMLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIwOnJ3eCIp KTsKKysgICAgICAgICAgICAgICAgICAgICAgUEVSTUlTU0lPTl9JVEVNIChQV19JRF9DT1JFLCBQ V19QRVJNX1JXWCkpOworIAorICAgLyoKKyAgICAqIFBpcGVXaXJlOkludGVyZmFjZTpOb2RlRmFj dG9yeQorICAgICogTmVlZHMgci0tIHNvIGl0IGNhbiBiZSBwYXNzZWQgdG8gY3JlYXRlLW9iamVj dCB3aGVuIGNyZWF0aW5nIHRoZSBzaW5rIG5vZGUuCisgICAgKi8KKy0gIG5vZGVfZmFjdG9yeV9w ZXJtaXNzaW9uX3N0cmluZyA9IGdfc3RyZHVwX3ByaW50ZiAoIiVkOnItLSIsCistICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbW90ZS0+bm9kZV9m YWN0b3J5X2lkKTsKKy0gIHN0cmluZ19zdGFzaCA9IGdfbGlzdF9wcmVwZW5kIChzdHJpbmdfc3Rh c2gsIG5vZGVfZmFjdG9yeV9wZXJtaXNzaW9uX3N0cmluZyk7CisgICBnX2FycmF5X2FwcGVuZF92 YWwgKHBlcm1pc3Npb25faXRlbXMsCistICAgICAgICAgICAgICAgICAgICAgIFBFUk1JU1NJT05f SVRFTSAoUFdfQ09SRV9QUk9YWV9QRVJNSVNTSU9OU19HTE9CQUwsCistICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgbm9kZV9mYWN0b3J5X3Blcm1pc3Npb25fc3RyaW5nKSk7 CistICBub2RlX2dsb2JhbCA9IGdfaGFzaF90YWJsZV9sb29rdXAgKHJlbW90ZS0+Z2xvYmFscywK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0lOVF9UT19QT0lOVEVSIChy ZW1vdGUtPm5vZGVfZmFjdG9yeV9pZCkpOworLSAgYXBwZW5kX3BhcmVudF9wZXJtaXNzaW9ucyAo cmVtb3RlLCBwZXJtaXNzaW9uX2l0ZW1zLCAmc3RyaW5nX3N0YXNoLAorLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgbm9kZV9nbG9iYWwsICJyLS0iKTsKKysgICAgICAgICAgICAgICAgICAg ICAgUEVSTUlTU0lPTl9JVEVNIChyZW1vdGUtPm5vZGVfZmFjdG9yeV9pZCwgUFdfUEVSTV9SKSk7 CisgCistICBhcHBlbmRfc3RyZWFtX3Blcm1pc3Npb25zIChyZW1vdGUsIHBlcm1pc3Npb25faXRl bXMsICZzdHJpbmdfc3Rhc2gsIHN0cmVhbXMpOworKyAgYXBwZW5kX3N0cmVhbV9wZXJtaXNzaW9u cyAocmVtb3RlLCBwZXJtaXNzaW9uX2l0ZW1zLCBzdHJlYW1zKTsKKyAKKy0gIHBlcm1pc3Npb25f ZGljdCA9CistICAgICZTUEFfRElDVF9JTklUICgoc3RydWN0IHNwYV9kaWN0X2l0ZW0gKikgcGVy bWlzc2lvbl9pdGVtcy0+ZGF0YSwKKy0gICAgICAgICAgICAgICAgICAgIHBlcm1pc3Npb25faXRl bXMtPmxlbik7CistICBwd19jb3JlX3Byb3h5X3Blcm1pc3Npb25zIChwd19yZW1vdGVfZ2V0X2Nv cmVfcHJveHkgKHJlbW90ZS0+cmVtb3RlKSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg IHBlcm1pc3Npb25fZGljdCk7CisrICAvKgorKyAgICogSGlkZSBhbGwgZXhpc3RpbmcgYW5kIGZ1 dHVyZSBub2RlcyAoZXhjZXB0IHRoZSBvbmVzIHdlIGV4cGxpY2l0bHkgbGlzdCBhYm92ZSkuCisr ICAgKi8KKysgIGdfYXJyYXlfYXBwZW5kX3ZhbCAocGVybWlzc2lvbl9pdGVtcywKKysgICAgICAg ICAgICAgICAgICAgICAgUEVSTUlTU0lPTl9JVEVNIChQV19JRF9BTlksIDApKTsKKyAKKy0gIGdf bGlzdF9mcmVlX2Z1bGwgKHN0cmluZ19zdGFzaCwgZ19mcmVlKTsKKysgIHB3X2NsaWVudF91cGRh dGVfcGVybWlzc2lvbnMgKHB3X2NvcmVfZ2V0X2NsaWVudChyZW1vdGUtPmNvcmUpLAorKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVybWlzc2lvbl9pdGVtcy0+bGVuLAorKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbnN0IHN0cnVjdCBwd19wZXJtaXNzaW9uICop cGVybWlzc2lvbl9pdGVtcy0+ZGF0YSk7CisgCisgICBwaXBld2lyZV9yZW1vdGVfcm91bmR0cmlw IChyZW1vdGUpOworIAorQEAgLTk0Myw3ICs4NzksNyBAQCBoYW5kbGVfb3Blbl9waXBld2lyZV9y ZW1vdGUgKFhkcFNjcmVlbkNhc3QgKm9iamVjdCwKKyAgICAgfQorIAorICAgb3V0X2ZkX2xpc3Qg PSBnX3VuaXhfZmRfbGlzdF9uZXcgKCk7CistICBmZCA9IHB3X3JlbW90ZV9zdGVhbF9mZCAocmVt b3RlLT5yZW1vdGUpOworKyAgZmQgPSBwd19jb3JlX3N0ZWFsX2ZkIChyZW1vdGUtPmNvcmUpOwor ICAgZmRfaWQgPSBnX3VuaXhfZmRfbGlzdF9hcHBlbmQgKG91dF9mZF9saXN0LCBmZCwgJmVycm9y KTsKKyAgIGNsb3NlIChmZCk7CisgICBwaXBld2lyZV9yZW1vdGVfZGVzdHJveSAocmVtb3RlKTsK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsL3RlbXBsYXRlIGIvc3JjcGtn cy94ZGctZGVza3RvcC1wb3J0YWwvdGVtcGxhdGUKaW5kZXggZWI4YTQ2MDJmNWQuLjExMzZiNmE2 ZTBlIDEwMDY0NAotLS0gYS9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC90ZW1wbGF0ZQpAQCAtMSwxMCArMSwxMCBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAneGRnLWRlc2t0b3AtcG9ydGFsJwogcGtnbmFtZT14ZGctZGVz a3RvcC1wb3J0YWwKIHZlcnNpb249MS42LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxk X3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1waXBld2lyZSAt LWVuYWJsZS1nZW9jbHVlIC0tZGlzYWJsZS1saWJwb3J0YWwiCi1ob3N0bWFrZWRlcGVuZHM9InBr Zy1jb25maWcgZ2xpYi1kZXZlbCIKK2hvc3RtYWtlZGVwZW5kcz0iYXV0b21ha2UgbGlidG9vbCBn ZXR0ZXh0LWRldmVsIHBrZy1jb25maWcgZ2xpYi1kZXZlbCIKIG1ha2VkZXBlbmRzPSJmbGF0cGFr LWRldmVsIGZ1c2UtZGV2ZWwgcGlwZXdpcmUtZGV2ZWwgZ2VvY2x1ZTItZGV2ZWwiCiBzaG9ydF9k ZXNjPSJQb3J0YWwgZnJvbnRlbmQgc2VydmljZSBmb3IgRmxhdHBhayIKIG1haW50YWluZXI9IkR1 bmNhZW4gPGR1bmNhZW5Adm9pZGxpbnV4Lm9yZz4iCkBAIC0xMyw2ICsxMywxMCBAQCBob21lcGFn ZT0iaHR0cHM6Ly9naXRodWIuY29tL2ZsYXRwYWsveGRnLWRlc2t0b3AtcG9ydGFsIgogZGlzdGZp bGVzPSJodHRwczovL2dpdGh1Yi5jb20vZmxhdHBhay8ke3BrZ25hbWV9L3JlbGVhc2VzL2Rvd25s b2FkLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3VtPTg4 M2M5YzlhOTI1ZTQ4YWY1NDgxMmI1MzQ3ZjU0NmRkNzc2ZWMyZTI3MDc2YTgzZDVhODEyNmFmNmJh ZmI5ZGEKIAorcHJlX2NvbmZpZ3VyZSgpIHsKKwlhdXRvcmVjb25mIC12ZmkKK30KKwogcG9zdF9p bnN0YWxsKCkgewogCXJtIC1yZiAiJHtERVNURElSfS91c3IvbGliL3N5c3RlbWQiCiB9CgpGcm9t IGRjMGMxMDUzZTNiMGE3M2EzM2I4Mjg2Yjk0ZGQwMmQ1MzM0MGUwZmEgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IEtyaWRzYWRhIFRoYW5hYnVscG9uZyA8c2lybkBvZ3NpdGUubmV0PgpE YXRlOiBUaHUsIDMwIEFwciAyMDIwIDA2OjE3OjE3ICswOTAwClN1YmplY3Q6IFtQQVRDSCA0LzRd IG11dHRlcjogcmVidWlsZCBmb3IgcGlwZXdpcmUtMC4zCgotLS0KIHNyY3BrZ3MvbXV0dGVyL3Bh dGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoIHwgNTIxICsrKysrKysrKysrKysrKysrKysrKysKIHNy Y3BrZ3MvbXV0dGVyL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgIHwgICAyICstCiAyIGZpbGVz IGNoYW5nZWQsIDUyMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9waXBld2lyZS0wLjMucGF0Y2gKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL211dHRlci9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaCBiL3NyY3BrZ3Mv bXV0dGVyL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwLi5lYmZmNjVmYmE4NQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mv bXV0dGVyL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoCkBAIC0wLDAgKzEsNTIxIEBACitCdWls ZCBtdXR0ZXIgYWdhaW5zdCBwaXBld2lyZS0wLjMsIGJhc2VkIG9uIGEgcGF0Y2ggYXQ6CitodHRw czovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvbXV0dGVyLy0vbWVyZ2VfcmVxdWVzdHMvMTA2Mgor LS0tIG1lc29uLmJ1aWxkCisrKysgbWVzb24uYnVpbGQKK0BAIC01MCw3ICs1MCw3IEBAIGxpYmlu cHV0X3JlcSA9ICc+PSAxLjcnCisgZ2JtX3JlcSA9ICc+PSAxMC4zJworCisgIyBzY3JlZW4gY2Fz dCB2ZXJzaW9uIHJlcXVpcmVtZW50cworLWxpYnBpcGV3aXJlX3JlcSA9ICc+PSAwLjIuNScKKyts aWJwaXBld2lyZV9yZXEgPSAnPj0gMC4zLjAnCisKKyBnbm9tZSA9IGltcG9ydCgnZ25vbWUnKQor IHBrZyA9IGltcG9ydCgncGtnY29uZmlnJykKK0BAIC0yNDEsNyArMjQxLDcgQEAgZW5kaWYKKwor IGhhdmVfcmVtb3RlX2Rlc2t0b3AgPSBnZXRfb3B0aW9uKCdyZW1vdGVfZGVza3RvcCcpCisgaWYg aGF2ZV9yZW1vdGVfZGVza3RvcAorLSAgbGlicGlwZXdpcmVfZGVwID0gZGVwZW5kZW5jeSgnbGli cGlwZXdpcmUtMC4yJywgdmVyc2lvbjogbGlicGlwZXdpcmVfcmVxKQorKyAgbGlicGlwZXdpcmVf ZGVwID0gZGVwZW5kZW5jeSgnbGlicGlwZXdpcmUtMC4zJywgdmVyc2lvbjogbGlicGlwZXdpcmVf cmVxKQorIGVuZGlmCisKKyBoYXZlX2ludHJvc3BlY3Rpb24gPSBnZXRfb3B0aW9uKCdpbnRyb3Nw ZWN0aW9uJykKK2RpZmYgLS1naXQgYS9zcmMvYmFja2VuZHMvbWV0YS1zY3JlZW4tY2FzdC1zdHJl YW0tc3JjLmMgYi9zcmMvYmFja2VuZHMvbWV0YS1zY3JlZW4tY2FzdC1zdHJlYW0tc3JjLmMKK2lu ZGV4IDgyYzVjYmE0MzYuLmJhMWNlOTRhN2UgMTAwNjQ0CistLS0gc3JjL2JhY2tlbmRzL21ldGEt c2NyZWVuLWNhc3Qtc3RyZWFtLXNyYy5jCisrKysgc3JjL2JhY2tlbmRzL21ldGEtc2NyZWVuLWNh c3Qtc3RyZWFtLXNyYy5jCitAQCAtMjksNiArMjksNyBAQAorICNpbmNsdWRlIDxzcGEvcGFyYW0v cHJvcHMuaD4KKyAjaW5jbHVkZSA8c3BhL3BhcmFtL2Zvcm1hdC11dGlscy5oPgorICNpbmNsdWRl IDxzcGEvcGFyYW0vdmlkZW8vZm9ybWF0LXV0aWxzLmg+CisrI2luY2x1ZGUgPHNwYS91dGlscy9y ZXN1bHQuaD4KKyAjaW5jbHVkZSA8c3RkaW50Lmg+CisgI2luY2x1ZGUgPHN5cy9tbWFuLmg+CisK K0BAIC02MiwxNSArNjMsNiBAQCBlbnVtCisKKyBzdGF0aWMgZ3VpbnQgc2lnbmFsc1tOX1NJR05B TFNdOworCistdHlwZWRlZiBzdHJ1Y3QgX01ldGFTcGFUeXBlCisteworLSAgc3RydWN0IHNwYV90 eXBlX21lZGlhX3R5cGUgbWVkaWFfdHlwZTsKKy0gIHN0cnVjdCBzcGFfdHlwZV9tZWRpYV9zdWJ0 eXBlIG1lZGlhX3N1YnR5cGU7CistICBzdHJ1Y3Qgc3BhX3R5cGVfZm9ybWF0X3ZpZGVvIGZvcm1h dF92aWRlbzsKKy0gIHN0cnVjdCBzcGFfdHlwZV92aWRlb19mb3JtYXQgdmlkZW9fZm9ybWF0Owor LSAgdWludDMyX3QgbWV0YV9jdXJzb3I7CistfSBNZXRhU3BhVHlwZTsKKy0KKyB0eXBlZGVmIHN0 cnVjdCBfTWV0YVBpcGVXaXJlU291cmNlCisgeworICAgR1NvdXJjZSBiYXNlOworQEAgLTgyLDE5 ICs3NCwxOSBAQCB0eXBlZGVmIHN0cnVjdCBfTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRl CisgeworICAgTWV0YVNjcmVlbkNhc3RTdHJlYW0gKnN0cmVhbTsKKworKyAgc3RydWN0IHB3X2Nv bnRleHQgKnBpcGV3aXJlX2NvbnRleHQ7CisgICBzdHJ1Y3QgcHdfY29yZSAqcGlwZXdpcmVfY29y ZTsKKy0gIHN0cnVjdCBwd19yZW1vdGUgKnBpcGV3aXJlX3JlbW90ZTsKKy0gIHN0cnVjdCBwd190 eXBlICpwaXBld2lyZV90eXBlOworICAgTWV0YVBpcGVXaXJlU291cmNlICpwaXBld2lyZV9zb3Vy Y2U7CistICBzdHJ1Y3Qgc3BhX2hvb2sgcGlwZXdpcmVfcmVtb3RlX2xpc3RlbmVyOworKyAgc3Ry dWN0IHNwYV9ob29rIHBpcGV3aXJlX2NvcmVfbGlzdGVuZXI7CisKKyAgIGdib29sZWFuIGlzX2Vu YWJsZWQ7CisKKyAgIHN0cnVjdCBwd19zdHJlYW0gKnBpcGV3aXJlX3N0cmVhbTsKKyAgIHN0cnVj dCBzcGFfaG9vayBwaXBld2lyZV9zdHJlYW1fbGlzdGVuZXI7CisrICB1aW50MzJfdCBub2RlX2lk OworCistICBNZXRhU3BhVHlwZSBzcGFfdHlwZTsKKyAgIHN0cnVjdCBzcGFfdmlkZW9faW5mb19y YXcgdmlkZW9fZm9ybWF0OworKyAgaW50IHZpZGVvX3N0cmlkZTsKKworICAgdWludDY0X3QgbGFz dF9mcmFtZV90aW1lc3RhbXBfdXM7CisKK0BAIC0xMTIsOCArMTA0LDYgQEAgR19ERUZJTkVfVFlQ RV9XSVRIX0NPREUgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3Ny Y19pbml0X2luaXRhYmxlX2lmYWNlKQorICAgICAgICAgICAgICAgICAgICAgICAgICBHX0FERF9Q UklWQVRFIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYykpCisKKy0jZGVmaW5lIFBST1BfUkFOR0Uo bWluLCBtYXgpIDIsIChtaW4pLCAobWF4KQorLQorIHN0YXRpYyB2b2lkCisgbWV0YV9zY3JlZW5f Y2FzdF9zdHJlYW1fc3JjX2dldF9zcGVjcyAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgKnNyYywK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgICAgICAgICAgICAg ICAgICAgICAqd2lkdGgsCitAQCAtMjg2LDkgKzI3Niw2IEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3Ry ZWFtX3NyY19zZXRfZW1wdHlfY3Vyc29yX3Nwcml0ZV9tZXRhZGF0YSAoTWV0YVNjcmVlbkNhc3RT dHJlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgeCwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAgICAgICAg ICAgICAgICAgICAgICB5KQorIHsKKy0gIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZSAq cHJpdiA9CistICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFuY2VfcHJp dmF0ZSAoc3JjKTsKKy0gIE1ldGFTcGFUeXBlICpzcGFfdHlwZSA9ICZwcml2LT5zcGFfdHlwZTsK KyAgIHN0cnVjdCBzcGFfbWV0YV9iaXRtYXAgKnNwYV9tZXRhX2JpdG1hcDsKKworICAgc3BhX21l dGFfY3Vyc29yLT5pZCA9IDE7CitAQCAtMzAwLDcgKzI4Nyw3IEBAIG1ldGFfc2NyZWVuX2Nhc3Rf c3RyZWFtX3NyY19zZXRfZW1wdHlfY3Vyc29yX3Nwcml0ZV9tZXRhZGF0YSAoTWV0YVNjcmVlbkNh c3RTdHJlCisgICBzcGFfbWV0YV9iaXRtYXAgPSBTUEFfTUVNQkVSIChzcGFfbWV0YV9jdXJzb3Is CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFfbWV0YV9jdXJzb3ItPmJpdG1h cF9vZmZzZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgc3BhX21l dGFfYml0bWFwKTsKKy0gIHNwYV9tZXRhX2JpdG1hcC0+Zm9ybWF0ID0gc3BhX3R5cGUtPnZpZGVv X2Zvcm1hdC5SR0JBOworKyAgc3BhX21ldGFfYml0bWFwLT5mb3JtYXQgPSBTUEFfVklERU9fRk9S TUFUX1JHQkE7CisgICBzcGFfbWV0YV9iaXRtYXAtPm9mZnNldCA9IHNpemVvZiAoc3RydWN0IHNw YV9tZXRhX2JpdG1hcCk7CisKKyAgIHNwYV9tZXRhX2N1cnNvci0+aG90c3BvdC54ID0gMDsKK0BA IC0zMTcsOSArMzA0LDYgQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX3NldF9jdXJzb3Jf c3ByaXRlX21ldGFkYXRhIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYworICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICAgICAgICAgICAg ICAgICAgICAgIHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBmbG9hdCAgICAgICAgICAgICAgICAgICAgc2NhbGUpCisgeworLSAgTWV0 YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRlICpwcml2ID0KKy0gICAgbWV0YV9zY3JlZW5fY2Fz dF9zdHJlYW1fc3JjX2dldF9pbnN0YW5jZV9wcml2YXRlIChzcmMpOworLSAgTWV0YVNwYVR5cGUg KnNwYV90eXBlID0gJnByaXYtPnNwYV90eXBlOworICAgQ29nbFRleHR1cmUgKmN1cnNvcl90ZXh0 dXJlOworICAgc3RydWN0IHNwYV9tZXRhX2JpdG1hcCAqc3BhX21ldGFfYml0bWFwOworICAgaW50 IGhvdHNwb3RfeCwgaG90c3BvdF95OworQEAgLTM0Niw3ICszMzAsNyBAQCBtZXRhX3NjcmVlbl9j YXN0X3N0cmVhbV9zcmNfc2V0X2N1cnNvcl9zcHJpdGVfbWV0YWRhdGEgKE1ldGFTY3JlZW5DYXN0 U3RyZWFtU3JjCisgICBzcGFfbWV0YV9iaXRtYXAgPSBTUEFfTUVNQkVSIChzcGFfbWV0YV9jdXJz b3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFfbWV0YV9jdXJzb3ItPmJp dG1hcF9vZmZzZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgc3Bh X21ldGFfYml0bWFwKTsKKy0gIHNwYV9tZXRhX2JpdG1hcC0+Zm9ybWF0ID0gc3BhX3R5cGUtPnZp ZGVvX2Zvcm1hdC5SR0JBOworKyAgc3BhX21ldGFfYml0bWFwLT5mb3JtYXQgPSBTUEFfVklERU9f Rk9STUFUX1JHQkE7CisgICBzcGFfbWV0YV9iaXRtYXAtPm9mZnNldCA9IHNpemVvZiAoc3RydWN0 IHNwYV9tZXRhX2JpdG1hcCk7CisKKyAgIG1ldGFfY3Vyc29yX3Nwcml0ZV9nZXRfaG90c3BvdCAo Y3Vyc29yX3Nwcml0ZSwgJmhvdHNwb3RfeCwgJmhvdHNwb3RfeSk7CitAQCAtMzgyLDEyICszNjYs MTAgQEAgc3RhdGljIHZvaWQKKyBhZGRfY3Vyc29yX21ldGFkYXRhIChNZXRhU2NyZWVuQ2FzdFN0 cmVhbVNyYyAqc3JjLAorICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzcGFfYnVmZmVyICAg ICAgICpzcGFfYnVmZmVyKQorIHsKKy0gIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZSAq cHJpdiA9CistICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFuY2VfcHJp dmF0ZSAoc3JjKTsKKy0gIE1ldGFTcGFUeXBlICpzcGFfdHlwZSA9ICZwcml2LT5zcGFfdHlwZTsK KyAgIHN0cnVjdCBzcGFfbWV0YV9jdXJzb3IgKnNwYV9tZXRhX2N1cnNvcjsKKworLSAgc3BhX21l dGFfY3Vyc29yID0gc3BhX2J1ZmZlcl9maW5kX21ldGEgKHNwYV9idWZmZXIsIHNwYV90eXBlLT5t ZXRhX2N1cnNvcik7CisrICBzcGFfbWV0YV9jdXJzb3IgPSBzcGFfYnVmZmVyX2ZpbmRfbWV0YV9k YXRhIChzcGFfYnVmZmVyLCBTUEFfTUVUQV9DdXJzb3IsCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YgKCpzcGFfbWV0YV9jdXJzb3IpKTsKKyAg IGlmIChzcGFfbWV0YV9jdXJzb3IpCisgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19z ZXRfY3Vyc29yX21ldGFkYXRhIChzcmMsIHNwYV9tZXRhX2N1cnNvcik7CisgfQorQEAgLTQ0Nywx NCArNDI5LDE0IEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19tYXliZV9yZWNvcmRfZnJh bWUgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICpzcmMpCisgICAgIHsKKyAgICAgICBkYXRhID0g c3BhX2J1ZmZlci0+ZGF0YXNbMF0uZGF0YTsKKyAgICAgfQorLSAgZWxzZSBpZiAoc3BhX2J1ZmZl ci0+ZGF0YXNbMF0udHlwZSA9PSBwcml2LT5waXBld2lyZV90eXBlLT5kYXRhLk1lbUZkKQorKyAg ZWxzZSBpZiAoc3BhX2J1ZmZlci0+ZGF0YXNbMF0udHlwZSA9PSBTUEFfREFUQV9NZW1GZCkKKyAg ICAgeworICAgICAgIG1hcCA9IG1tYXAgKE5VTEwsIHNwYV9idWZmZXItPmRhdGFzWzBdLm1heHNp emUgKyBzcGFfYnVmZmVyLT5kYXRhc1swXS5tYXBvZmZzZXQsCisgICAgICAgICAgICAgICAgICAg UFJPVF9SRUFEIHwgUFJPVF9XUklURSwgTUFQX1NIQVJFRCwKKyAgICAgICAgICAgICAgICAgICBz cGFfYnVmZmVyLT5kYXRhc1swXS5mZCwgMCk7CisgICAgICAgaWYgKG1hcCA9PSBNQVBfRkFJTEVE KQorICAgICAgICAgeworLSAgICAgICAgICBnX3dhcm5pbmcgKCJGYWlsZWQgdG8gbW1hcCBwaXBl d2lyZSBzdHJlYW0gYnVmZmVyOiAlc1xuIiwKKysgICAgICAgICAgZ193YXJuaW5nICgiRmFpbGVk IHRvIG1tYXAgcGlwZXdpcmUgc3RyZWFtIGJ1ZmZlcjogJXMiLAorICAgICAgICAgICAgICAgICAg ICAgIHN0cmVycm9yIChlcnJubykpOworICAgICAgICAgICByZXR1cm47CisgICAgICAgICB9CitA QCAtNDY5LDI4ICs0NTEsMzAgQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX21heWJlX3Jl Y29yZF9mcmFtZSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgKnNyYykKKworICAgaWYgKG1ldGFf c2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19yZWNvcmRfZnJhbWUgKHNyYywgZGF0YSkpCisgICAgIHsK Ky0gICAgICBzdHJ1Y3Qgc3BhX21ldGFfdmlkZW9fY3JvcCAqc3BhX21ldGFfdmlkZW9fY3JvcDsK KysgICAgICBzdHJ1Y3Qgc3BhX21ldGFfcmVnaW9uICpzcGFfbWV0YV92aWRlb19jcm9wOworCisg ICAgICAgc3BhX2J1ZmZlci0+ZGF0YXNbMF0uY2h1bmstPnNpemUgPSBzcGFfYnVmZmVyLT5kYXRh c1swXS5tYXhzaXplOworKyAgICAgIHNwYV9idWZmZXItPmRhdGFzWzBdLmNodW5rLT5zdHJpZGUg PSBwcml2LT52aWRlb19zdHJpZGU7CisKKyAgICAgICAvKiBVcGRhdGUgVmlkZW9Dcm9wIGlmIG5l ZWRlZCAqLworICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AgPQorLSAgICAgICAgc3BhX2J1ZmZl cl9maW5kX21ldGEgKHNwYV9idWZmZXIsIHByaXYtPnBpcGV3aXJlX3R5cGUtPm1ldGEuVmlkZW9D cm9wKTsKKysgICAgICAgIHNwYV9idWZmZXJfZmluZF9tZXRhX2RhdGEgKHNwYV9idWZmZXIsIFNQ QV9NRVRBX1ZpZGVvQ3JvcCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNp emVvZiAoKnNwYV9tZXRhX3ZpZGVvX2Nyb3ApKTsKKyAgICAgICBpZiAoc3BhX21ldGFfdmlkZW9f Y3JvcCkKKyAgICAgICAgIHsKKyAgICAgICAgICAgaWYgKG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFt X3NyY19nZXRfdmlkZW9jcm9wIChzcmMsICZjcm9wX3JlY3QpKQorICAgICAgICAgICAgIHsKKy0g ICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnggPSBjcm9wX3JlY3QueDsKKy0gICAg ICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnkgPSBjcm9wX3JlY3QueTsKKy0gICAgICAg ICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPndpZHRoID0gY3JvcF9yZWN0LndpZHRoOworLSAg ICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+aGVpZ2h0ID0gY3JvcF9yZWN0LmhlaWdo dDsKKysgICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5wb3NpdGlvbi54 ID0gY3JvcF9yZWN0Lng7CisrICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdp b24ucG9zaXRpb24ueSA9IGNyb3BfcmVjdC55OworKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlk ZW9fY3JvcC0+cmVnaW9uLnNpemUud2lkdGggPSBjcm9wX3JlY3Qud2lkdGg7CisrICAgICAgICAg ICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24uc2l6ZS5oZWlnaHQgPSBjcm9wX3JlY3Qu aGVpZ2h0OworICAgICAgICAgICAgIH0KKyAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgIHsK Ky0gICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnggPSAwOworLSAgICAgICAgICAg ICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+eSA9IDA7CistICAgICAgICAgICAgICBzcGFfbWV0YV92 aWRlb19jcm9wLT53aWR0aCA9IHByaXYtPnN0cmVhbV93aWR0aDsKKy0gICAgICAgICAgICAgIHNw YV9tZXRhX3ZpZGVvX2Nyb3AtPmhlaWdodCA9IHByaXYtPnN0cmVhbV9oZWlnaHQ7CisrICAgICAg ICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24ucG9zaXRpb24ueCA9IDA7CisrICAg ICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24ucG9zaXRpb24ueSA9IDA7Cisr ICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24uc2l6ZS53aWR0aCA9IHBy aXYtPnN0cmVhbV93aWR0aDsKKysgICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJl Z2lvbi5zaXplLmhlaWdodCA9IHByaXYtPnN0cmVhbV9oZWlnaHQ7CisgICAgICAgICAgICAgfQor ICAgICAgICAgfQorICAgICB9CitAQCAtNTU1LDcgKzUzOSw2IEBAIG9uX3N0cmVhbV9zdGF0ZV9j aGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAqZGF0YSwKKyAgIE1ldGFTY3JlZW5DYXN0U3Ry ZWFtU3JjICpzcmMgPSBkYXRhOworICAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRlICpw cml2ID0KKyAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5jZV9wcml2 YXRlIChzcmMpOworLSAgdWludDMyX3Qgbm9kZV9pZDsKKworICAgc3dpdGNoIChzdGF0ZSkKKyAg ICAgeworQEAgLTU2MywxNCArNTQ2LDEyIEBAIG9uX3N0cmVhbV9zdGF0ZV9jaGFuZ2VkICh2b2lk ICAgICAgICAgICAgICAgICAqZGF0YSwKKyAgICAgICBnX3dhcm5pbmcgKCJwaXBld2lyZSBzdHJl YW0gZXJyb3I6ICVzIiwgZXJyb3JfbWVzc2FnZSk7CisgICAgICAgbWV0YV9zY3JlZW5fY2FzdF9z dHJlYW1fc3JjX25vdGlmeV9jbG9zZWQgKHNyYyk7CisgICAgICAgYnJlYWs7CistICAgIGNhc2Ug UFdfU1RSRUFNX1NUQVRFX0NPTkZJR1VSRToKKy0gICAgICBub2RlX2lkID0gcHdfc3RyZWFtX2dl dF9ub2RlX2lkIChwcml2LT5waXBld2lyZV9zdHJlYW0pOworLSAgICAgIGdfc2lnbmFsX2VtaXQg KHNyYywgc2lnbmFsc1tSRUFEWV0sIDAsICh1bnNpZ25lZCBpbnQpIG5vZGVfaWQpOworLSAgICAg IGJyZWFrOworLSAgICBjYXNlIFBXX1NUUkVBTV9TVEFURV9VTkNPTk5FQ1RFRDoKKy0gICAgY2Fz ZSBQV19TVFJFQU1fU1RBVEVfQ09OTkVDVElORzoKKy0gICAgY2FzZSBQV19TVFJFQU1fU1RBVEVf UkVBRFk6CisgICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRFX1BBVVNFRDoKKysgICAgICBpZiAocHJp di0+bm9kZV9pZCA9PSBTUEFfSURfSU5WQUxJRCAmJiBwcml2LT5waXBld2lyZV9zdHJlYW0pCisr ICAgICAgICB7CisrICAgICAgICAgIHByaXYtPm5vZGVfaWQgPSBwd19zdHJlYW1fZ2V0X25vZGVf aWQgKHByaXYtPnBpcGV3aXJlX3N0cmVhbSk7CisrICAgICAgICAgIGdfc2lnbmFsX2VtaXQgKHNy Yywgc2lnbmFsc1tSRUFEWV0sIDAsICh1bnNpZ25lZCBpbnQpIHByaXYtPm5vZGVfaWQpOworKyAg ICAgICAgfQorICAgICAgIGlmIChtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfaXNfZW5hYmxl ZCAoc3JjKSkKKyAgICAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19kaXNhYmxlIChz cmMpOworICAgICAgIGJyZWFrOworQEAgLTU3OCw2OCArNTU5LDY5IEBAIG9uX3N0cmVhbV9zdGF0 ZV9jaGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAqZGF0YSwKKyAgICAgICBpZiAoIW1ldGFf c2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19pc19lbmFibGVkIChzcmMpKQorICAgICAgICAgbWV0YV9z Y3JlZW5fY2FzdF9zdHJlYW1fc3JjX2VuYWJsZSAoc3JjKTsKKyAgICAgICBicmVhazsKKysgICAg Y2FzZSBQV19TVFJFQU1fU1RBVEVfVU5DT05ORUNURUQ6CisrICAgIGNhc2UgUFdfU1RSRUFNX1NU QVRFX0NPTk5FQ1RJTkc6CisrICAgICAgYnJlYWs7CisgICAgIH0KKyB9CisKKyBzdGF0aWMgdm9p ZAorLW9uX3N0cmVhbV9mb3JtYXRfY2hhbmdlZCAodm9pZCAgICAgICAgICAgICAgICAgKmRhdGEs CistICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3Qgc3BhX3BvZCAqZm9ybWF0 KQorK29uX3N0cmVhbV9wYXJhbV9jaGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAqZGF0YSwK KysgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgICAgICAgICAgICAgIGlkLAorKyAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3Qgc3BhX3BvZCAqZm9ybWF0KQorIHsK KyAgIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICpzcmMgPSBkYXRhOworICAgTWV0YVNjcmVlbkNh c3RTdHJlYW1TcmNQcml2YXRlICpwcml2ID0KKyAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1f c3JjX2dldF9pbnN0YW5jZV9wcml2YXRlIChzcmMpOworLSAgc3RydWN0IHB3X3R5cGUgKnBpcGV3 aXJlX3R5cGUgPSBwcml2LT5waXBld2lyZV90eXBlOworICAgdWludDhfdCBwYXJhbXNfYnVmZmVy WzEwMjRdOworICAgaW50MzJfdCB3aWR0aCwgaGVpZ2h0LCBzdHJpZGUsIHNpemU7CisgICBzdHJ1 Y3Qgc3BhX3BvZF9idWlsZGVyIHBvZF9idWlsZGVyOworICAgY29uc3Qgc3RydWN0IHNwYV9wb2Qg KnBhcmFtc1szXTsKKyAgIGNvbnN0IGludCBicHAgPSA0OworCistICBpZiAoIWZvcm1hdCkKKy0g ICAgeworLSAgICAgIHB3X3N0cmVhbV9maW5pc2hfZm9ybWF0IChwcml2LT5waXBld2lyZV9zdHJl YW0sIDAsIE5VTEwsIDApOworLSAgICAgIHJldHVybjsKKy0gICAgfQorKyAgaWYgKCFmb3JtYXQg fHwgaWQgIT0gU1BBX1BBUkFNX0Zvcm1hdCkKKysgICAgcmV0dXJuOworCisgICBzcGFfZm9ybWF0 X3ZpZGVvX3Jhd19wYXJzZSAoZm9ybWF0LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICZwcml2LT52aWRlb19mb3JtYXQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnBy aXYtPnNwYV90eXBlLmZvcm1hdF92aWRlbyk7CisrICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJnByaXYtPnZpZGVvX2Zvcm1hdCk7CisKKyAgIHdpZHRoID0gcHJpdi0+dmlkZW9fZm9ybWF0 LnNpemUud2lkdGg7CisgICBoZWlnaHQgPSBwcml2LT52aWRlb19mb3JtYXQuc2l6ZS5oZWlnaHQ7 CisgICBzdHJpZGUgPSBTUEFfUk9VTkRfVVBfTiAod2lkdGggKiBicHAsIDQpOworICAgc2l6ZSA9 IGhlaWdodCAqIHN0cmlkZTsKKworKyAgcHJpdi0+dmlkZW9fc3RyaWRlID0gc3RyaWRlOworKwor ICAgcG9kX2J1aWxkZXIgPSBTUEFfUE9EX0JVSUxERVJfSU5JVCAocGFyYW1zX2J1ZmZlciwgc2l6 ZW9mIChwYXJhbXNfYnVmZmVyKSk7CisKKy0gIHBhcmFtc1swXSA9IHNwYV9wb2RfYnVpbGRlcl9v YmplY3QgKAorKyAgcGFyYW1zWzBdID0gc3BhX3BvZF9idWlsZGVyX2FkZF9vYmplY3QgKAorICAg ICAmcG9kX2J1aWxkZXIsCistICAgIHBpcGV3aXJlX3R5cGUtPnBhcmFtLmlkQnVmZmVycywgcGlw ZXdpcmVfdHlwZS0+cGFyYW1fYnVmZmVycy5CdWZmZXJzLAorLSAgICAiOiIsIHBpcGV3aXJlX3R5 cGUtPnBhcmFtX2J1ZmZlcnMuc2l6ZSwgImkiLCBzaXplLAorLSAgICAiOiIsIHBpcGV3aXJlX3R5 cGUtPnBhcmFtX2J1ZmZlcnMuc3RyaWRlLCAiaSIsIHN0cmlkZSwKKy0gICAgIjoiLCBwaXBld2ly ZV90eXBlLT5wYXJhbV9idWZmZXJzLmJ1ZmZlcnMsICJpcnUiLCAxNiwgUFJPUF9SQU5HRSAoMiwg MTYpLAorLSAgICAiOiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX2J1ZmZlcnMuYWxpZ24sICJpIiwg MTYpOworLQorLSAgcGFyYW1zWzFdID0gc3BhX3BvZF9idWlsZGVyX29iamVjdCAoCisrICAgIFNQ QV9UWVBFX09CSkVDVF9QYXJhbUJ1ZmZlcnMsIFNQQV9QQVJBTV9CdWZmZXJzLAorKyAgICBTUEFf UEFSQU1fQlVGRkVSU19idWZmZXJzLCBTUEFfUE9EX0NIT0lDRV9SQU5HRV9JbnQgKDE2LCAyLCAx NiksCisrICAgIFNQQV9QQVJBTV9CVUZGRVJTX2Jsb2NrcywgU1BBX1BPRF9JbnQgKDEpLAorKyAg ICBTUEFfUEFSQU1fQlVGRkVSU19zaXplLCBTUEFfUE9EX0ludCAoc2l6ZSksCisrICAgIFNQQV9Q QVJBTV9CVUZGRVJTX3N0cmlkZSwgU1BBX1BPRF9JbnQgKHN0cmlkZSksCisrICAgIFNQQV9QQVJB TV9CVUZGRVJTX2FsaWduLCBTUEFfUE9EX0ludCAoMTYpKTsKKysKKysgIHBhcmFtc1sxXSA9IHNw YV9wb2RfYnVpbGRlcl9hZGRfb2JqZWN0ICgKKyAgICAgJnBvZF9idWlsZGVyLAorLSAgICBwaXBl d2lyZV90eXBlLT5wYXJhbS5pZE1ldGEsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX21ldGEuTWV0YSwK Ky0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9tZXRhLnR5cGUsICJJIiwgcGlwZXdpcmVf dHlwZS0+bWV0YS5WaWRlb0Nyb3AsCistICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fbWV0 YS5zaXplLCAiaSIsIHNpemVvZiAoc3RydWN0IHNwYV9tZXRhX3ZpZGVvX2Nyb3ApKTsKKysgICAg U1BBX1RZUEVfT0JKRUNUX1BhcmFtTWV0YSwgU1BBX1BBUkFNX01ldGEsCisrICAgIFNQQV9QQVJB TV9NRVRBX3R5cGUsIFNQQV9QT0RfSWQgKFNQQV9NRVRBX1ZpZGVvQ3JvcCksCisrICAgIFNQQV9Q QVJBTV9NRVRBX3NpemUsIFNQQV9QT0RfSW50IChzaXplb2YgKHN0cnVjdCBzcGFfbWV0YV9yZWdp b24pKSk7CisKKy0gIHBhcmFtc1syXSA9IHNwYV9wb2RfYnVpbGRlcl9vYmplY3QgKAorKyAgcGFy YW1zWzJdID0gc3BhX3BvZF9idWlsZGVyX2FkZF9vYmplY3QgKAorICAgICAmcG9kX2J1aWxkZXIs CistICAgIHBpcGV3aXJlX3R5cGUtPnBhcmFtLmlkTWV0YSwgcGlwZXdpcmVfdHlwZS0+cGFyYW1f bWV0YS5NZXRhLAorLSAgICAiOiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX21ldGEudHlwZSwgIkki LCBwcml2LT5zcGFfdHlwZS5tZXRhX2N1cnNvciwKKy0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5w YXJhbV9tZXRhLnNpemUsICJpIiwgQ1VSU09SX01FVEFfU0laRSAoNjQsIDY0KSk7CisrICAgIFNQ QV9UWVBFX09CSkVDVF9QYXJhbU1ldGEsIFNQQV9QQVJBTV9NZXRhLAorKyAgICBTUEFfUEFSQU1f TUVUQV90eXBlLCBTUEFfUE9EX0lkIChTUEFfTUVUQV9DdXJzb3IpLAorKyAgICBTUEFfUEFSQU1f TUVUQV9zaXplLCBTUEFfUE9EX0ludCAoQ1VSU09SX01FVEFfU0laRSAoNjQsIDY0KSkpOworCist ICBwd19zdHJlYW1fZmluaXNoX2Zvcm1hdCAocHJpdi0+cGlwZXdpcmVfc3RyZWFtLCAwLAorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtcywgR19OX0VMRU1FTlRTIChwYXJhbXMpKTsK KysgIHB3X3N0cmVhbV91cGRhdGVfcGFyYW1zIChwcml2LT5waXBld2lyZV9zdHJlYW0sIHBhcmFt cywgR19OX0VMRU1FTlRTIChwYXJhbXMpKTsKKyB9CisKKyBzdGF0aWMgY29uc3Qgc3RydWN0IHB3 X3N0cmVhbV9ldmVudHMgc3RyZWFtX2V2ZW50cyA9IHsKKyAgIFBXX1ZFUlNJT05fU1RSRUFNX0VW RU5UUywKKyAgIC5zdGF0ZV9jaGFuZ2VkID0gb25fc3RyZWFtX3N0YXRlX2NoYW5nZWQsCistICAu Zm9ybWF0X2NoYW5nZWQgPSBvbl9zdHJlYW1fZm9ybWF0X2NoYW5nZWQsCisrICAucGFyYW1fY2hh bmdlZCA9IG9uX3N0cmVhbV9wYXJhbV9jaGFuZ2VkLAorIH07CisKKyBzdGF0aWMgc3RydWN0IHB3 X3N0cmVhbSAqCitAQCAtNjUyLDggKzYzNCw2IEBAIGNyZWF0ZV9waXBld2lyZV9zdHJlYW0gKE1l dGFTY3JlZW5DYXN0U3RyZWFtU3JjICAqc3JjLAorICAgdWludDhfdCBidWZmZXJbMTAyNF07Cisg ICBzdHJ1Y3Qgc3BhX3BvZF9idWlsZGVyIHBvZF9idWlsZGVyID0KKyAgICAgU1BBX1BPRF9CVUlM REVSX0lOSVQgKGJ1ZmZlciwgc2l6ZW9mIChidWZmZXIpKTsKKy0gIE1ldGFTcGFUeXBlICpzcGFf dHlwZSA9ICZwcml2LT5zcGFfdHlwZTsKKy0gIHN0cnVjdCBwd190eXBlICpwaXBld2lyZV90eXBl ID0gcHJpdi0+cGlwZXdpcmVfdHlwZTsKKyAgIGZsb2F0IGZyYW1lX3JhdGU7CisgICBNZXRhRnJh Y3Rpb24gZnJhbWVfcmF0ZV9mcmFjdGlvbjsKKyAgIHN0cnVjdCBzcGFfZnJhY3Rpb24gbWF4X2Zy YW1lcmF0ZTsKK0BAIC02NjEsNyArNjQxLDkgQEAgY3JlYXRlX3BpcGV3aXJlX3N0cmVhbSAoTWV0 YVNjcmVlbkNhc3RTdHJlYW1TcmMgICpzcmMsCisgICBjb25zdCBzdHJ1Y3Qgc3BhX3BvZCAqcGFy YW1zWzFdOworICAgaW50IHJlc3VsdDsKKworLSAgcGlwZXdpcmVfc3RyZWFtID0gcHdfc3RyZWFt X25ldyAocHJpdi0+cGlwZXdpcmVfcmVtb3RlLAorKyAgcHJpdi0+bm9kZV9pZCA9IFNQQV9JRF9J TlZBTElEOworKworKyAgcGlwZXdpcmVfc3RyZWFtID0gcHdfc3RyZWFtX25ldyAocHJpdi0+cGlw ZXdpcmVfY29yZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZXRhLXNj cmVlbi1jYXN0LXNyYyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM KTsKKyAgIGlmICghcGlwZXdpcmVfc3RyZWFtKQorQEAgLTY4MiwxNyArNjY0LDE3IEBAIGNyZWF0 ZV9waXBld2lyZV9zdHJlYW0gKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICAqc3JjLAorICAgbWF4 X2ZyYW1lcmF0ZSA9IFNQQV9GUkFDVElPTiAoZnJhbWVfcmF0ZV9mcmFjdGlvbi5udW0sCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcmFtZV9yYXRlX2ZyYWN0aW9uLmRlbm9tKTsK KworLSAgcGFyYW1zWzBdID0gc3BhX3BvZF9idWlsZGVyX29iamVjdCAoCisrICBwYXJhbXNbMF0g PSBzcGFfcG9kX2J1aWxkZXJfYWRkX29iamVjdCAoCisgICAgICZwb2RfYnVpbGRlciwKKy0gICAg cGlwZXdpcmVfdHlwZS0+cGFyYW0uaWRFbnVtRm9ybWF0LCBwaXBld2lyZV90eXBlLT5zcGFfZm9y bWF0LAorLSAgICAiSSIsIHNwYV90eXBlLT5tZWRpYV90eXBlLnZpZGVvLAorLSAgICAiSSIsIHNw YV90eXBlLT5tZWRpYV9zdWJ0eXBlLnJhdywKKy0gICAgIjoiLCBzcGFfdHlwZS0+Zm9ybWF0X3Zp ZGVvLmZvcm1hdCwgIkkiLCBzcGFfdHlwZS0+dmlkZW9fZm9ybWF0LkJHUngsCistICAgICI6Iiwg c3BhX3R5cGUtPmZvcm1hdF92aWRlby5zaXplLCAiUiIsICZTUEFfUkVDVEFOR0xFIChwcml2LT5z dHJlYW1fd2lkdGgsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBwcml2LT5zdHJlYW1faGVpZ2h0KSwKKy0gICAgIjoiLCBzcGFfdHlw ZS0+Zm9ybWF0X3ZpZGVvLmZyYW1lcmF0ZSwgIkYiLCAmU1BBX0ZSQUNUSU9OICgwLCAxKSwKKy0g ICAgIjoiLCBzcGFfdHlwZS0+Zm9ybWF0X3ZpZGVvLm1heF9mcmFtZXJhdGUsICJGcnUiLCAmbWF4 X2ZyYW1lcmF0ZSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBQUk9QX1JBTkdFICgmbWluX2ZyYW1lcmF0ZSwKKysgICAgU1BBX1RZUEVfT0JK RUNUX0Zvcm1hdCwgU1BBX1BBUkFNX0VudW1Gb3JtYXQsCisrICAgIFNQQV9GT1JNQVRfbWVkaWFU eXBlLCBTUEFfUE9EX0lkIChTUEFfTUVESUFfVFlQRV92aWRlbyksCisrICAgIFNQQV9GT1JNQVRf bWVkaWFTdWJ0eXBlLCBTUEFfUE9EX0lkIChTUEFfTUVESUFfU1VCVFlQRV9yYXcpLAorKyAgICBT UEFfRk9STUFUX1ZJREVPX2Zvcm1hdCwgU1BBX1BPRF9JZCAoU1BBX1ZJREVPX0ZPUk1BVF9CR1J4 KSwKKysgICAgU1BBX0ZPUk1BVF9WSURFT19zaXplLCBTUEFfUE9EX1JlY3RhbmdsZSAoJlNQQV9S RUNUQU5HTEUgKHByaXYtPnN0cmVhbV93aWR0aCwKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaXYtPnN0cmVhbV9oZWlnaHQp KSwKKysgICAgU1BBX0ZPUk1BVF9WSURFT19mcmFtZXJhdGUsIFNQQV9QT0RfRnJhY3Rpb24gKCZT UEFfRlJBQ1RJT04gKDAsIDEpKSwKKysgICAgU1BBX0ZPUk1BVF9WSURFT19tYXhGcmFtZXJhdGUs IFNQQV9QT0RfQ0hPSUNFX1JBTkdFX0ZyYWN0aW9uICgmbWF4X2ZyYW1lcmF0ZSwKKysgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAmbWluX2ZyYW1lcmF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWF4X2ZyYW1lcmF0ZSkpOworCisgICBwd19z dHJlYW1fYWRkX2xpc3RlbmVyIChwaXBld2lyZV9zdHJlYW0sCitAQCAtNzAyLDcgKzY4NCw3IEBA IGNyZWF0ZV9waXBld2lyZV9zdHJlYW0gKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICAqc3JjLAor CisgICByZXN1bHQgPSBwd19zdHJlYW1fY29ubmVjdCAocGlwZXdpcmVfc3RyZWFtLAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFBXX0RJUkVDVElPTl9PVVRQVVQsCistICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBTUEFfSURfSU5WQUxJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUFdfU1RS RUFNX0ZMQUdfRFJJVkVSIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUFdfU1RS RUFNX0ZMQUdfTUFQX0JVRkZFUlMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBh cmFtcywgR19OX0VMRU1FTlRTIChwYXJhbXMpKTsKK0BAIC03MTcsNDAgKzY5OSwxOCBAQCBjcmVh dGVfcGlwZXdpcmVfc3RyZWFtIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAgKnNyYywKKyB9CisK KyBzdGF0aWMgdm9pZAorLW9uX3N0YXRlX2NoYW5nZWQgKHZvaWQgICAgICAgICAgICAgICAgICpk YXRhLAorLSAgICAgICAgICAgICAgICAgIGVudW0gcHdfcmVtb3RlX3N0YXRlICBvbGQsCistICAg ICAgICAgICAgICAgICAgZW51bSBwd19yZW1vdGVfc3RhdGUgIHN0YXRlLAorLSAgICAgICAgICAg ICAgICAgIGNvbnN0IGNoYXIgICAgICAgICAgICplcnJvcl9tZXNzYWdlKQorK29uX2NvcmVfZXJy b3IgKHZvaWQgICAgICAgKmRhdGEsCisrICAgICAgICAgICAgICAgdWludDMyX3QgICAgaWQsCisr CSAgICAgICBpbnQgICAgICAgICBzZXEsCisrCSAgICAgICBpbnQgICAgICAgICByZXMsCisrCSAg ICAgICBjb25zdCBjaGFyICptZXNzYWdlKQorIHsKKyAgIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3Jj ICpzcmMgPSBkYXRhOworLSAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRlICpwcml2ID0K Ky0gICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5jZV9wcml2YXRlIChz cmMpOworLSAgc3RydWN0IHB3X3N0cmVhbSAqcGlwZXdpcmVfc3RyZWFtOworLSAgR0Vycm9yICpl cnJvciA9IE5VTEw7CisKKy0gIHN3aXRjaCAoc3RhdGUpCistICAgIHsKKy0gICAgY2FzZSBQV19S RU1PVEVfU1RBVEVfRVJST1I6CistICAgICAgZ193YXJuaW5nICgicGlwZXdpcmUgcmVtb3RlIGVy cm9yOiAlc1xuIiwgZXJyb3JfbWVzc2FnZSk7CistICAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJl YW1fc3JjX25vdGlmeV9jbG9zZWQgKHNyYyk7CistICAgICAgYnJlYWs7CistICAgIGNhc2UgUFdf UkVNT1RFX1NUQVRFX0NPTk5FQ1RFRDoKKy0gICAgICBwaXBld2lyZV9zdHJlYW0gPSBjcmVhdGVf cGlwZXdpcmVfc3RyZWFtIChzcmMsICZlcnJvcik7CistICAgICAgaWYgKCFwaXBld2lyZV9zdHJl YW0pCistICAgICAgICB7CistICAgICAgICAgIGdfd2FybmluZyAoIkNvdWxkIG5vdCBjcmVhdGUg cGlwZXdpcmUgc3RyZWFtOiAlcyIsIGVycm9yLT5tZXNzYWdlKTsKKy0gICAgICAgICAgZ19lcnJv cl9mcmVlIChlcnJvcik7CistICAgICAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19u b3RpZnlfY2xvc2VkIChzcmMpOworLSAgICAgICAgfQorLSAgICAgIGVsc2UKKy0gICAgICAgIHsK Ky0gICAgICAgICAgcHJpdi0+cGlwZXdpcmVfc3RyZWFtID0gcGlwZXdpcmVfc3RyZWFtOworLSAg ICAgICAgfQorLSAgICAgIGJyZWFrOworLSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9VTkNPTk5F Q1RFRDoKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfQ09OTkVDVElORzoKKy0gICAgICBicmVh azsKKy0gICAgfQorKyAgZ193YXJuaW5nICgicGlwZXdpcmUgcmVtb3RlIGVycm9yOiBpZDoldSAl cyIsIGlkLCBtZXNzYWdlKTsKKysKKysgIGlmIChpZCA9PSBQV19JRF9DT1JFICYmIHJlcyA9PSAt RVBJUEUpCisrICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19ub3RpZnlfY2xvc2VkIChz cmMpOworIH0KKworIHN0YXRpYyBnYm9vbGVhbgorQEAgLTc5MywxNyArNzUzLDYgQEAgc3RhdGlj IEdTb3VyY2VGdW5jcyBwaXBld2lyZV9zb3VyY2VfZnVuY3MgPQorICAgcGlwZXdpcmVfbG9vcF9z b3VyY2VfZmluYWxpemUKKyB9OworCistc3RhdGljIHZvaWQKKy1pbml0X3NwYV90eXBlIChNZXRh U3BhVHlwZSAgICAgICAgICp0eXBlLAorLSAgICAgICAgICAgICAgIHN0cnVjdCBzcGFfdHlwZV9t YXAgKm1hcCkKKy17CistICBzcGFfdHlwZV9tZWRpYV90eXBlX21hcCAobWFwLCAmdHlwZS0+bWVk aWFfdHlwZSk7CistICBzcGFfdHlwZV9tZWRpYV9zdWJ0eXBlX21hcCAobWFwLCAmdHlwZS0+bWVk aWFfc3VidHlwZSk7CistICBzcGFfdHlwZV9mb3JtYXRfdmlkZW9fbWFwIChtYXAsICZ0eXBlLT5m b3JtYXRfdmlkZW8pOworLSAgc3BhX3R5cGVfdmlkZW9fZm9ybWF0X21hcCAobWFwLCAmdHlwZS0+ dmlkZW9fZm9ybWF0KTsKKy0gIHR5cGUtPm1ldGFfY3Vyc29yID0gc3BhX3R5cGVfbWFwX2dldF9p ZChtYXAsIFNQQV9UWVBFX01FVEFfX0N1cnNvcik7CistfQorLQorIHN0YXRpYyBNZXRhUGlwZVdp cmVTb3VyY2UgKgorIGNyZWF0ZV9waXBld2lyZV9zb3VyY2UgKHZvaWQpCisgeworQEAgLTgyOSw5 ICs3NzgsOSBAQCBjcmVhdGVfcGlwZXdpcmVfc291cmNlICh2b2lkKQorICAgcmV0dXJuIHBpcGV3 aXJlX3NvdXJjZTsKKyB9CisKKy1zdGF0aWMgY29uc3Qgc3RydWN0IHB3X3JlbW90ZV9ldmVudHMg cmVtb3RlX2V2ZW50cyA9IHsKKy0gIFBXX1ZFUlNJT05fUkVNT1RFX0VWRU5UUywKKy0gIC5zdGF0 ZV9jaGFuZ2VkID0gb25fc3RhdGVfY2hhbmdlZCwKKytzdGF0aWMgY29uc3Qgc3RydWN0IHB3X2Nv cmVfZXZlbnRzIGNvcmVfZXZlbnRzID0geworKyAgUFdfVkVSU0lPTl9DT1JFX0VWRU5UUywKKysg IC5lcnJvciA9IG9uX2NvcmVfZXJyb3IsCisgfTsKKworIHN0YXRpYyBnYm9vbGVhbgorQEAgLTg1 MSwzNyArODAwLDMxIEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19pbml0YWJsZV9pbml0 IChHSW5pdGFibGUgICAgICppbml0YWJsZSwKKyAgICAgICByZXR1cm4gRkFMU0U7CisgICAgIH0K KworLSAgcHJpdi0+cGlwZXdpcmVfY29yZSA9IHB3X2NvcmVfbmV3IChwcml2LT5waXBld2lyZV9z b3VyY2UtPnBpcGV3aXJlX2xvb3AsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwpOworLSAgaWYgKCFwcml2LT5waXBld2lyZV9jb3JlKQorKyAgcHJpdi0+cGlwZXdp cmVfY29udGV4dCA9IHB3X2NvbnRleHRfbmV3IChwcml2LT5waXBld2lyZV9zb3VyY2UtPnBpcGV3 aXJlX2xvb3AsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIDApOworKyAgaWYgKCFwcml2LT5waXBld2lyZV9jb250ZXh0KQorICAgICB7CisgICAgICAg Z19zZXRfZXJyb3IgKGVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9SX0ZBSUxFRCwKKy0gICAg ICAgICAgICAgICAgICAgIkZhaWxlZCB0byBjcmVhdGUgcGlwZXdpcmUgY29yZSIpOworKyAgICAg ICAgICAgICAgICAgICAiRmFpbGVkIHRvIGNyZWF0ZSBwaXBld2lyZSBjb250ZXh0Iik7CisgICAg ICAgcmV0dXJuIEZBTFNFOworICAgICB9CisKKy0gIHByaXYtPnBpcGV3aXJlX3JlbW90ZSA9IHB3 X3JlbW90ZV9uZXcgKHByaXYtPnBpcGV3aXJlX2NvcmUsIE5VTEwsIDApOworLSAgaWYgKCFwcml2 LT5waXBld2lyZV9yZW1vdGUpCisrICBwcml2LT5waXBld2lyZV9jb3JlID0gcHdfY29udGV4dF9j b25uZWN0IChwcml2LT5waXBld2lyZV9jb250ZXh0LCBOVUxMLCAwKTsKKysgIGlmICghcHJpdi0+ cGlwZXdpcmVfY29yZSkKKyAgICAgeworICAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwgR19JT19F UlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBj cmVhdCBwaXBld2lyZSByZW1vdGUiKTsKKysgICAgICAgICAgICAgICAgICAgIkNvdWxkbid0IGNv bm5lY3QgcGlwZXdpcmUgY29udGV4dCIpOworICAgICAgIHJldHVybiBGQUxTRTsKKyAgICAgfQor CistICBwd19yZW1vdGVfYWRkX2xpc3RlbmVyIChwcml2LT5waXBld2lyZV9yZW1vdGUsCistICAg ICAgICAgICAgICAgICAgICAgICAgICAmcHJpdi0+cGlwZXdpcmVfcmVtb3RlX2xpc3RlbmVyLAor LSAgICAgICAgICAgICAgICAgICAgICAgICAgJnJlbW90ZV9ldmVudHMsCistICAgICAgICAgICAg ICAgICAgICAgICAgICBzcmMpOworKyAgcHdfY29yZV9hZGRfbGlzdGVuZXIgKHByaXYtPnBpcGV3 aXJlX2NvcmUsCisrICAgICAgICAgICAgICAgICAgICAgICAgJnByaXYtPnBpcGV3aXJlX2NvcmVf bGlzdGVuZXIsCisrICAgICAgICAgICAgICAgICAgICAgICAgJmNvcmVfZXZlbnRzLAorKyAgICAg ICAgICAgICAgICAgICAgICAgIHNyYyk7CisKKy0gIHByaXYtPnBpcGV3aXJlX3R5cGUgPSBwd19j b3JlX2dldF90eXBlIChwcml2LT5waXBld2lyZV9jb3JlKTsKKy0gIGluaXRfc3BhX3R5cGUgKCZw cml2LT5zcGFfdHlwZSwgcHJpdi0+cGlwZXdpcmVfdHlwZS0+bWFwKTsKKy0KKy0gIGlmIChwd19y ZW1vdGVfY29ubmVjdCAocHJpdi0+cGlwZXdpcmVfcmVtb3RlKSAhPSAwKQorLSAgICB7CistICAg ICAgZ19zZXRfZXJyb3IgKGVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9SX0ZBSUxFRCwKKy0g ICAgICAgICAgICAgICAgICAgIkNvdWxkbid0IGNvbm5lY3QgcGlwZXdpcmUgcmVtb3RlIik7Cist ICAgICAgcmV0dXJuIEZBTFNFOworLSAgICB9CisrICBwcml2LT5waXBld2lyZV9zdHJlYW0gPSBj cmVhdGVfcGlwZXdpcmVfc3RyZWFtIChzcmMsIGVycm9yKTsKKysgIGlmICghcHJpdi0+cGlwZXdp cmVfc3RyZWFtKQorKyAgICByZXR1cm4gRkFMU0U7CisKKyAgIHJldHVybiBUUlVFOworIH0KK0BA IC05MTIsOCArODU1LDggQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2ZpbmFsaXplIChH T2JqZWN0ICpvYmplY3QpCisgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19kaXNhYmxl IChzcmMpOworCisgICBnX2NsZWFyX3BvaW50ZXIgKCZwcml2LT5waXBld2lyZV9zdHJlYW0sIHB3 X3N0cmVhbV9kZXN0cm95KTsKKy0gIGdfY2xlYXJfcG9pbnRlciAoJnByaXYtPnBpcGV3aXJlX3Jl bW90ZSwgcHdfcmVtb3RlX2Rlc3Ryb3kpOworLSAgZ19jbGVhcl9wb2ludGVyICgmcHJpdi0+cGlw ZXdpcmVfY29yZSwgcHdfY29yZV9kZXN0cm95KTsKKysgIGdfY2xlYXJfcG9pbnRlciAoJnByaXYt PnBpcGV3aXJlX2NvcmUsIHB3X2NvcmVfZGlzY29ubmVjdCk7CisrICBnX2NsZWFyX3BvaW50ZXIg KCZwcml2LT5waXBld2lyZV9jb250ZXh0LCBwd19jb250ZXh0X2Rlc3Ryb3kpOworICAgZ19zb3Vy Y2VfZGVzdHJveSAoJnByaXYtPnBpcGV3aXJlX3NvdXJjZS0+YmFzZSk7CisKKyAgIEdfT0JKRUNU X0NMQVNTIChtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfcGFyZW50X2NsYXNzKS0+ZmluYWxp emUgKG9iamVjdCk7CmRpZmYgLS1naXQgYS9zcmNwa2dzL211dHRlci90ZW1wbGF0ZSBiL3NyY3Br Z3MvbXV0dGVyL3RlbXBsYXRlCmluZGV4IDRlMGJkMzJiNjdkLi44MDZhM2JlZjlmMCAxMDA2NDQK LS0tIGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tdXR0ZXIvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtdXR0ZXInCiBwa2duYW1l PW11dHRlcgogdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX2hl bHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRGVnbF9kZXZp Y2U9dHJ1ZSAtRHVkZXY9dHJ1ZSAtRG5hdGl2ZV9iYWNrZW5kPXRydWUK --===============6541589515286024099==--