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 30036 invoked from network); 30 Apr 2020 21:02:32 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 30 Apr 2020 21:02:32 -0000 Content-Type: multipart/mixed; boundary="===============4995302858925811656==" 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:02:29 +0200 List-Id: Message-ID: <20200430210229.s1Hngqk5w04WwLahqhKU2u-_7-39UHkkBFV5xKKRvvU@z> GitHub notification mails are now in MIME to allow UTF8. --===============4995302858925811656== 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= --===============4995302858925811656== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-pipewire-update-20413.patch" RnJvbSBhMTA0OGI5ZGUyNjFhMmM0MjFhNzgxYjcxNzhlNTk4ZTY3OTE4Zjg1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLcmlkc2FkYSBUaGFuYWJ1bHBvbmcgPHNpcm5Ab2dzaXRlLm5l dD4KRGF0ZTogU2F0LCAyOCBNYXIgMjAyMCAxNjoyMzo1MiArMDkwMApTdWJqZWN0OiBbUEFUQ0gg MS80XSBwaXBld2lyZTogdXBkYXRlIHRvIDAuMy40CgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAg ICAgICAgICAgICB8ICAyICstCiBzcmNwa2dzL2Fsc2EtcGlwZXdpcmUgICAgICAgICAgfCAgMSAr CiBzcmNwa2dzL2xpYmphY2stcGlwZXdpcmUgICAgICAgfCAgMSArCiBzcmNwa2dzL2xpYnB1bHNl YXVkaW8tcGlwZXdpcmUgfCAgMSArCiBzcmNwa2dzL3BpcGV3aXJlL3RlbXBsYXRlICAgICAgfCA3 NiArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDYz IGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3Br Z3MvYWxzYS1waXBld2lyZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGliamFjay1waXBl d2lyZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGlicHVsc2VhdWRpby1waXBld2lyZQoK ZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IGEyMDg0MDdi MzU5Li4wNzI3OWE3YmM3MiAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24v c2hsaWJzCkBAIC0zMTk5LDcgKzMxOTksNyBAQCBsaWJhcmNhbl9zaG1pZl9leHQuc28uMC4xMSBh cmNhbi0wLjUuNC4zXzEKIGxpYmFyY2FuX3NobWlmX3NlcnZlci5zby4wLjExIGFyY2FuLTAuNS40 LjNfMQogbGliYXJjYW5fdHVpLnNvLjAuMTEgYXJjYW4tMC41LjQuM18xCiBsaWJsd2lwdjYuc28u MiBsd2lwdjYtMS41YV8xCi1saWJwaXBld2lyZS0wLjIuc28uMSBsaWJwaXBld2lyZS0wLjIuMl8x CitsaWJwaXBld2lyZS0wLjMuc28uMCBsaWJwaXBld2lyZS0wLjMuNF8xCiBsaWJ2b2xrLnNvLjIu Mi4xIHZvbGstMi4yLjFfMQogbGliZ251cmFkaW8tcnVudGltZS5zby4zLjguMCBnbnVyYWRpby0z LjguMC4wXzEKIGxpYmdudXJhZGlvLXBtdC5zby4zLjguMCBnbnVyYWRpby0zLjguMC4wXzEKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvYWxzYS1waXBld2lyZSBiL3NyY3BrZ3MvYWxzYS1waXBld2lyZQpu ZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMC4uYzljOTdjZjY3MDcKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL2Fsc2EtcGlwZXdpcmUKQEAgLTAsMCArMSBAQAorcGlwZXdp cmUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmph Y2stcGlwZXdpcmUgYi9zcmNwa2dzL2xpYmphY2stcGlwZXdpcmUKbmV3IGZpbGUgbW9kZSAxMjAw MDAKaW5kZXggMDAwMDAwMDAwMDAuLmM5Yzk3Y2Y2NzA3Ci0tLSAvZGV2L251bGwKKysrIGIvc3Jj cGtncy9saWJqYWNrLXBpcGV3aXJlCkBAIC0wLDAgKzEgQEAKK3BpcGV3aXJlClwgTm8gbmV3bGlu ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJwdWxzZWF1ZGlvLXBpcGV3 aXJlIGIvc3JjcGtncy9saWJwdWxzZWF1ZGlvLXBpcGV3aXJlCm5ldyBmaWxlIG1vZGUgMTIwMDAw CmluZGV4IDAwMDAwMDAwMDAwLi5jOWM5N2NmNjcwNwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvbGlicHVsc2VhdWRpby1waXBld2lyZQpAQCAtMCwwICsxIEBACitwaXBld2lyZQpcIE5vIG5l d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGlwZXdpcmUvdGVtcGxh dGUgYi9zcmNwa2dzL3BpcGV3aXJlL3RlbXBsYXRlCmluZGV4IDdmNjQ2ZGFkMTFkLi5kOTc1YzQw ZDgxZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9waXBld2lyZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz 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 ICAgICAgICAgICAgICAgIHZtb3ZlIHVzci9saWIvbGlicGlwZXdpcmUtMC4zLnNvCiAJfQogfQog CiBsaWJzcGEtZmZtcGVnX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGZmbXBlZyBwbHVn aW5zIgogCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSB1c3IvbGliL3NwYS9mZm1wZWcKKwkJdm1v dmUgdXNyL2xpYi9zcGEtMC4yL2ZmbXBlZwogCX0KIH0KIAogbGlic3BhLWJsdWV0b290aF9wYWNr YWdlKCkgewogCXNob3J0X2Rlc2MrPSIgLSBibHVldG9vdGggcGx1Z2lucyIKIAlwa2dfaW5zdGFs bCgpIHsKLQkJdm1vdmUgdXNyL2xpYi9zcGEvYmx1ZXo1CisJCXZtb3ZlIHVzci9saWIvc3BhLTAu Mi9ibHVlejUKIAl9CiB9CiAKQEAgLTU3LDEwICs3MywzNiBAQCBnc3RyZWFtZXIxLXBpcGV3aXJl X3BhY2thZ2UoKSB7CiAJfQogfQogCitsaWJwdWxzZWF1ZGlvLXBpcGV3aXJlX3BhY2thZ2UoKSB7 CisJZGVwZW5kcz0ibGlicGlwZXdpcmUtJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlzaG9ydF9k ZXNjKz0iIC0gUHVsc2VBdWRpbyBjbGllbnQgbGlicmFyeSIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJ dm1vdmUgdXNyL2xpYi9waXBld2lyZS0wLjMvcHVsc2UKKwkJdm1vdmUgdXNyL2Jpbi9wdy1wdWxz ZQorCX0KK30KKworYWxzYS1waXBld2lyZV9wYWNrYWdlKCkgeworCWRlcGVuZHM9ImxpYnBpcGV3 aXJlLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJc2hvcnRfZGVzYys9IiAtIEFMU0EgY2xpZW50 IGxpYnJhcnkiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9saWIvYWxzYS1saWIKKwl9 Cit9CisKK2xpYmphY2stcGlwZXdpcmVfcGFja2FnZSgpIHsKKwlkZXBlbmRzPSJsaWJwaXBld2ly ZS0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorCXNob3J0X2Rlc2MrPSIgLSBKQUNLIGNsaWVudCBs aWJyYXJ5IgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvbGliL3BpcGV3aXJlLTAuMy9q YWNrCisJCXZtb3ZlIHVzci9iaW4vcHctamFjaworCX0KK30KKwogcGlwZXdpcmUtZG9jX3BhY2th Z2UoKSB7CiAJYXJjaHM9bm9hcmNoCiAJc2hvcnRfZGVzYys9IiAtIGRvY3VtZW50YXRpb24iCiAJ cGtnX2luc3RhbGwoKSB7CiAJCXZtb3ZlIHVzci9zaGFyZS9kb2MKIAl9Ci19Cit9ClwgTm8gbmV3 bGluZSBhdCBlbmQgb2YgZmlsZQoKRnJvbSAwZTU1NjZmY2VjN2FjNmVhYmFiY2NlYmE2ODliNjZh NWI4MzQxZmY5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLcmlkc2FkYSBUaGFuYWJ1 bHBvbmcgPHNpcm5Ab2dzaXRlLm5ldD4KRGF0ZTogU2F0LCAyOCBNYXIgMjAyMCAxNjoyNDo0NiAr MDkwMApTdWJqZWN0OiBbUEFUQ0ggMi80XSB4ZGctZGVza3RvcC1wb3J0YWwta2RlOiByZWJ1aWxk IGZvciBwaXBld2lyZS0wLjMKCi0tLQogc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwta2RlL3Rl bXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9u KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwta2RlL3RlbXBsYXRl IGIvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwta2RlL3RlbXBsYXRlCmluZGV4IGYyNjA1N2Qz MjNhLi45NTE5YWJjMTlmNiAxMDA2NDQKLS0tIGEvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwt a2RlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWtkZS90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3hkZy1kZXNrdG9wLXBvcnRh bC1rZGUnCiBwa2duYW1lPXhkZy1kZXNrdG9wLXBvcnRhbC1rZGUKIHZlcnNpb249NS4xOC40LjEK LXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFrZWRlcGVu ZHM9ImV4dHJhLWNtYWtlLW1vZHVsZXMgcXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xzIGtjb3JlYWRk b25zIGdldHRleHQiCiBtYWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBraW8tZGV2ZWwga3dheWxhbmQt ZGV2ZWwgbGliZXBveHktZGV2ZWwgcGlwZXdpcmUtZGV2ZWwKCkZyb20gNzY1YzFmYzRkZDY0ODY1 YjdiMDFhOWVjNzgyY2E2ODI4NjNjZTgyZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog S3JpZHNhZGEgVGhhbmFidWxwb25nIDxzaXJuQG9nc2l0ZS5uZXQ+CkRhdGU6IFNhdCwgMjggTWFy IDIwMjAgMTY6MjQ6MjYgKzA5MDAKU3ViamVjdDogW1BBVENIIDMvNF0geGRnLWRlc2t0b3AtcG9y dGFsOiByZWJ1aWxkIGZvciBwaXBld2lyZS0wLjMKCi0tLQogLi4uL3BhdGNoZXMvcGlwZXdpcmUt MC4zLnBhdGNoICAgICAgICAgICAgICAgIHwgNTUxICsrKysrKysrKysrKysrKysrKwogc3JjcGtn cy94ZGctZGVza3RvcC1wb3J0YWwvdGVtcGxhdGUgICAgICAgICAgIHwgICA4ICstCiAyIGZpbGVz IGNoYW5nZWQsIDU1NyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBh dGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwvcGF0Y2hlcy9waXBl d2lyZS0wLjMucGF0Y2ggYi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC9wYXRjaGVzL3BpcGV3 aXJlLTAuMy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOTRl YmUwODM1OTgKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC9w YXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaApAQCAtMCwwICsxLDU1MSBAQAorRnJvbSBhMzg5MDFl NWU3ZjgzNWVmZTdiN2EwNmM1NTc5MGM4YzIwYmM5MWEyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQorRnJvbTogV2ltIFRheW1hbnMgPHd0YXltYW5zQHJlZGhhdC5jb20+CitEYXRlOiBUdWUsIDE0 IEphbiAyMDIwIDA5OjM3OjA5ICswMTAwCitTdWJqZWN0OiBbUEFUQ0hdIFBpcGVXaXJlOiB1cGRh dGUgdG8gMC4zIEFQSQorCistLS0KKyBjb25maWd1cmUuYWMgICAgICB8ICAgMiArLQorIHNyYy9j YW1lcmEuYyAgICAgIHwgIDI0ICsrKystLS0tCisgc3JjL3BpcGV3aXJlLmMgICAgfCAxNDEgKysr KysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNyYy9waXBld2ly ZS5oICAgIHwgIDEwICsrLS0KKyBzcmMvc2NyZWVuLWNhc3QuYyB8ICA5OCArKysrKystLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQorIDUgZmlsZXMgY2hhbmdlZCwgNzIgaW5zZXJ0aW9ucygrKSwg MjAzIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGNvbmZpZ3VyZS5hYyBjb25maWd1cmUuYWMK K2luZGV4IDg5OTAyZmEuLjYyZDc5NjAgMTAwNjQ0CistLS0gY29uZmlndXJlLmFjCisrKysgY29u ZmlndXJlLmFjCitAQCAtOTcsNyArOTcsNyBAQCBBQ19BUkdfRU5BQkxFKHBpcGV3aXJlLAorIAkg ICAgICBbQVNfSEVMUF9TVFJJTkcoWy0tZW5hYmxlLXBpcGV3aXJlXSxbRW5hYmxlIFBpcGVXaXJl IHN1cHBvcnQuIE5lZWRlZCBmb3Igc2NyZWVuIGNhc3QgcG9ydGFsXSldLAorIAkgICAgICBlbmFi bGVfcGlwZXdpcmU9JGVuYWJsZXZhbCwgZW5hYmxlX3BpcGV3aXJlPXllcykKKyBpZiB0ZXN0IHgk ZW5hYmxlX3BpcGV3aXJlID0geHllcyA7IHRoZW4KKy0JUEtHX0NIRUNLX01PRFVMRVMoUElQRVdJ UkUsIFtsaWJwaXBld2lyZS0wLjIgPj0gMC4yLjZdKQorKwlQS0dfQ0hFQ0tfTU9EVUxFUyhQSVBF V0lSRSwgW2xpYnBpcGV3aXJlLTAuMyA+PSAwLjIuOTBdKQorIAlBQ19ERUZJTkUoW0hBVkVfUElQ RVdJUkVdLFsxXSwgW0RlZmluZSB0byBlbmFibGUgUGlwZVdpcmUgc3VwcG9ydF0pCisgZmkKKyBB TV9DT05ESVRJT05BTChbSEFWRV9QSVBFV0lSRV0sW3Rlc3QgIiRlbmFibGVfcGlwZXdpcmUiID0g InllcyJdKQorZGlmZiAtLWdpdCBzcmMvY2FtZXJhLmMgc3JjL2NhbWVyYS5jCitpbmRleCBjMmIz OTJjLi4yMGZlM2FhIDEwMDY0NAorLS0tIHNyYy9jYW1lcmEuYworKysrIHNyYy9jYW1lcmEuYwor QEAgLTE0MSw3ICsxNDEsNyBAQCBvcGVuX3BpcGV3aXJlX2NhbWVyYV9yZW1vdGUgKGNvbnN0IGNo YXIgKmFwcF9pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdFcnJvciAqKmVycm9y KQorIHsKKyAgIFBpcGVXaXJlUmVtb3RlICpyZW1vdGU7CistICBzdHJ1Y3Qgc3BhX2RpY3RfaXRl bSBwZXJtaXNzaW9uX2l0ZW1zWzFdOworKyAgc3RydWN0IHB3X3Blcm1pc3Npb24gcGVybWlzc2lv bl9pdGVtc1syXTsKKyAgIHN0cnVjdCBwd19wcm9wZXJ0aWVzICpwaXBld2lyZV9wcm9wZXJ0aWVz OworIAorICAgcGlwZXdpcmVfcHJvcGVydGllcyA9CitAQCAtMTU4LDEyICsxNTgsMTIgQEAgb3Bl bl9waXBld2lyZV9jYW1lcmFfcmVtb3RlIChjb25zdCBjaGFyICphcHBfaWQsCisgICAgKiBIaWRl IGFsbCBleGlzdGluZyBhbmQgZnV0dXJlIG5vZGVzIGJ5IGRlZmF1bHQuIFBpcGVXaXJlIHdpbGwg dXNlIHRoZQorICAgICogcGVybWlzc2lvbiBzdG9yZSB0byBzZXQgdXAgcGVybWlzc2lvbnMuCisg ICAgKi8KKy0gIHBlcm1pc3Npb25faXRlbXNbMF0ua2V5ID0gUFdfQ09SRV9QUk9YWV9QRVJNSVNT SU9OU19ERUZBVUxUOworLSAgcGVybWlzc2lvbl9pdGVtc1swXS52YWx1ZSA9ICItLS0iOworKyAg cGVybWlzc2lvbl9pdGVtc1swXSA9IFBXX1BFUk1JU1NJT05fSU5JVCAoUFdfSURfQ09SRSwgUFdf UEVSTV9SV1gpOworKyAgcGVybWlzc2lvbl9pdGVtc1sxXSA9IFBXX1BFUk1JU1NJT05fSU5JVCAo UFdfSURfQU5ZLCAwKTsKKyAKKy0gIHB3X2NvcmVfcHJveHlfcGVybWlzc2lvbnMgKHB3X3JlbW90 ZV9nZXRfY29yZV9wcm94eSAocmVtb3RlLT5yZW1vdGUpLAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJlNQQV9ESUNUX0lOSVQgKHBlcm1pc3Npb25faXRlbXMsCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR19OX0VMRU1FTlRTIChwZXJtaXNzaW9u X2l0ZW1zKSkpOworKyAgcHdfY2xpZW50X3VwZGF0ZV9wZXJtaXNzaW9ucyAocHdfY29yZV9nZXRf Y2xpZW50KHJlbW90ZS0+Y29yZSksCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBH X05fRUxFTUVOVFMgKHBlcm1pc3Npb25faXRlbXMpLAorKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcGVybWlzc2lvbl9pdGVtcyk7CisgCisgICBwaXBld2lyZV9yZW1vdGVfcm91bmR0 cmlwIChyZW1vdGUpOworIAorQEAgLTIxOSw3ICsyMTksNyBAQCBoYW5kbGVfb3Blbl9waXBld2ly ZV9yZW1vdGUgKFhkcENhbWVyYSAqb2JqZWN0LAorICAgICB9CisgCisgICBvdXRfZmRfbGlzdCA9 IGdfdW5peF9mZF9saXN0X25ldyAoKTsKKy0gIGZkID0gcHdfcmVtb3RlX3N0ZWFsX2ZkIChyZW1v dGUtPnJlbW90ZSk7CisrICBmZCA9IHB3X2NvcmVfc3RlYWxfZmQgKHJlbW90ZS0+Y29yZSk7Cisg ICBmZF9pZCA9IGdfdW5peF9mZF9saXN0X2FwcGVuZCAob3V0X2ZkX2xpc3QsIGZkLCAmZXJyb3Ip OworICAgY2xvc2UgKGZkKTsKKyAgIHBpcGV3aXJlX3JlbW90ZV9kZXN0cm95IChyZW1vdGUpOwor QEAgLTI1MCwyOSArMjUwLDI4IEBAIGNhbWVyYV9pZmFjZV9pbml0IChYZHBDYW1lcmFJZmFjZSAq aWZhY2UpCisgc3RhdGljIHZvaWQKKyBnbG9iYWxfYWRkZWRfY2IgKFBpcGVXaXJlUmVtb3RlICpy ZW1vdGUsCisgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpZCwKKy0gICAgICAgICAgICAgICAg IHVpbnQzMl90IHR5cGUsCisrICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp0eXBlLAorICAg ICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHNwYV9kaWN0ICpwcm9wcywKKyAgICAgICAgICAg ICAgICAgIGdwb2ludGVyIHVzZXJfZGF0YSkKKyB7CisgICBDYW1lcmEgKmNhbWVyYSA9IHVzZXJf ZGF0YTsKKy0gIHN0cnVjdCBwd190eXBlICpjb3JlX3R5cGUgPSBwd19jb3JlX2dldF90eXBlIChy ZW1vdGUtPmNvcmUpOworICAgY29uc3Qgc3RydWN0IHNwYV9kaWN0X2l0ZW0gKm1lZGlhX2NsYXNz OworICAgY29uc3Qgc3RydWN0IHNwYV9kaWN0X2l0ZW0gKm1lZGlhX3JvbGU7CisgCistICBpZiAo dHlwZSAhPSBjb3JlX3R5cGUtPm5vZGUpCisrICBpZiAoc3RyY21wKHR5cGUsIFBXX1RZUEVfSU5U RVJGQUNFX05vZGUpICE9IDApCisgICAgIHJldHVybjsKKyAKKyAgIGlmICghcHJvcHMpCisgICAg IHJldHVybjsKKyAKKy0gIG1lZGlhX2NsYXNzID0gc3BhX2RpY3RfbG9va3VwX2l0ZW0gKHByb3Bz LCAibWVkaWEuY2xhc3MiKTsKKysgIG1lZGlhX2NsYXNzID0gc3BhX2RpY3RfbG9va3VwX2l0ZW0g KHByb3BzLCBQV19LRVlfTUVESUFfQ0xBU1MpOworICAgaWYgKCFtZWRpYV9jbGFzcykKKyAgICAg cmV0dXJuOworIAorICAgaWYgKGdfc3RyY21wMCAobWVkaWFfY2xhc3MtPnZhbHVlLCAiVmlkZW8v U291cmNlIikgIT0gMCkKKyAgICAgcmV0dXJuOworIAorLSAgbWVkaWFfcm9sZSA9IHNwYV9kaWN0 X2xvb2t1cF9pdGVtIChwcm9wcywgIm1lZGlhLnJvbGUiKTsKKysgIG1lZGlhX3JvbGUgPSBzcGFf ZGljdF9sb29rdXBfaXRlbSAocHJvcHMsIFBXX0tFWV9NRURJQV9ST0xFKTsKKyAgIGlmICghbWVk aWFfcm9sZSkKKyAgICAgcmV0dXJuOworIAorQEAgLTM0Miw2ICszNDEsNyBAQCBjcmVhdGVfcGlw ZXdpcmVfcmVtb3RlIChDYW1lcmEgKmNhbWVyYSwKKyAgICAgfQorIAorICAgcGlwZXdpcmVfcHJv cGVydGllcyA9IHB3X3Byb3BlcnRpZXNfbmV3ICgicGlwZXdpcmUuYWNjZXNzLnBvcnRhbC5pc19w b3J0YWwiLCAidHJ1ZSIsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJwb3J0YWwubW9uaXRvciIsICJDYW1lcmEiLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgIGNhbWVyYS0+cGlwZXdpcmVfcmVtb3RlID0g cGlwZXdpcmVfcmVtb3RlX25ld19zeW5jIChwaXBld2lyZV9wcm9wZXJ0aWVzLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdsb2JhbF9hZGRl ZF9jYiwKK2RpZmYgLS1naXQgc3JjL3BpcGV3aXJlLmMgc3JjL3BpcGV3aXJlLmMKK2luZGV4IDc5 M2EzNzguLjE2MmNkNTUgMTAwNjQ0CistLS0gc3JjL3BpcGV3aXJlLmMKKysrKyBzcmMvcGlwZXdp cmUuYworQEAgLTIxLDYgKzIxLDcgQEAKKyAjaW5jbHVkZSA8ZXJybm8uaD4KKyAjaW5jbHVkZSA8 Z2xpYi5oPgorICNpbmNsdWRlIDxwaXBld2lyZS9waXBld2lyZS5oPgorKyNpbmNsdWRlIDxzcGEv dXRpbHMvcmVzdWx0Lmg+CisgCisgI2luY2x1ZGUgInBpcGV3aXJlLmgiCisgCitAQCAtMzYsMjcg KzM3LDI1IEBAIHN0YXRpYyBnYm9vbGVhbiBpc19waXBld2lyZV9pbml0aWFsaXplZCA9IEZBTFNF OworIHN0YXRpYyB2b2lkCisgcmVnaXN0cnlfZXZlbnRfZ2xvYmFsICh2b2lkICp1c2VyX2RhdGEs CisgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpZCwKKy0gICAgICAgICAgICAgICAg ICAgICAgIHVpbnQzMl90IHBhcmVudF9pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQz Ml90IHBlcm1pc3Npb25zLAorLSAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdHlwZSwK KysgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnR5cGUsCisgICAgICAgICAgICAg ICAgICAgICAgICB1aW50MzJfdCB2ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgY29u c3Qgc3RydWN0IHNwYV9kaWN0ICpwcm9wcykKKyB7CisgICBQaXBlV2lyZVJlbW90ZSAqcmVtb3Rl ID0gdXNlcl9kYXRhOworLSAgc3RydWN0IHB3X3R5cGUgKmNvcmVfdHlwZSA9IHB3X2NvcmVfZ2V0 X3R5cGUgKHJlbW90ZS0+Y29yZSk7CisgICBjb25zdCBzdHJ1Y3Qgc3BhX2RpY3RfaXRlbSAqZmFj dG9yeV9vYmplY3RfdHlwZTsKKyAgIFBpcGVXaXJlR2xvYmFsICpnbG9iYWw7CisgCisgICBnbG9i YWwgPSBnX25ldzAgKFBpcGVXaXJlR2xvYmFsLCAxKTsKKyAgICpnbG9iYWwgPSAoUGlwZVdpcmVH bG9iYWwpIHsKKy0gICAgLnBhcmVudF9pZCA9IHBhcmVudF9pZCwKKysgICAgLnBhcmVudF9pZCA9 IGlkLAorICAgfTsKKyAKKyAgIGdfaGFzaF90YWJsZV9pbnNlcnQgKHJlbW90ZS0+Z2xvYmFscywg R0lOVF9UT19QT0lOVEVSIChpZCksIGdsb2JhbCk7CisgICBpZiAocmVtb3RlLT5nbG9iYWxfYWRk ZWRfY2IpCisgICAgIHJlbW90ZS0+Z2xvYmFsX2FkZGVkX2NiIChyZW1vdGUsIGlkLCB0eXBlLCBw cm9wcywgcmVtb3RlLT51c2VyX2RhdGEpOworIAorLSAgaWYgKHR5cGUgIT0gY29yZV90eXBlLT5m YWN0b3J5KQorKyAgaWYgKHN0cmNtcCh0eXBlLCBQV19UWVBFX0lOVEVSRkFDRV9GYWN0b3J5KSAh PSAwKQorICAgICByZXR1cm47CisgCisgICBmYWN0b3J5X29iamVjdF90eXBlID0gc3BhX2RpY3Rf bG9va3VwX2l0ZW0gKHByb3BzLCAiZmFjdG9yeS50eXBlLm5hbWUiKTsKK0BAIC04MSw4ICs4MCw4 IEBAIHJlZ2lzdHJ5X2V2ZW50X2dsb2JhbF9yZW1vdmUgKHZvaWQgKnVzZXJfZGF0YSwKKyAgIGdf aGFzaF90YWJsZV9yZW1vdmUgKHJlbW90ZS0+Z2xvYmFscywgR0lOVF9UT19QT0lOVEVSIChpZCkp OworIH0KKyAKKy1zdGF0aWMgY29uc3Qgc3RydWN0IHB3X3JlZ2lzdHJ5X3Byb3h5X2V2ZW50cyBy ZWdpc3RyeV9ldmVudHMgPSB7CistICBQV19WRVJTSU9OX1JFR0lTVFJZX1BST1hZX0VWRU5UUywK KytzdGF0aWMgY29uc3Qgc3RydWN0IHB3X3JlZ2lzdHJ5X2V2ZW50cyByZWdpc3RyeV9ldmVudHMg PSB7CisrICBQV19WRVJTSU9OX1JFR0lTVFJZX0VWRU5UUywKKyAgIC5nbG9iYWwgPSByZWdpc3Ry eV9ldmVudF9nbG9iYWwsCisgICAuZ2xvYmFsX3JlbW92ZSA9IHJlZ2lzdHJ5X2V2ZW50X2dsb2Jh bF9yZW1vdmUsCisgfTsKK0BAIC05MCw3ICs4OSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcHdf cmVnaXN0cnlfcHJveHlfZXZlbnRzIHJlZ2lzdHJ5X2V2ZW50cyA9IHsKKyB2b2lkCisgcGlwZXdp cmVfcmVtb3RlX3JvdW5kdHJpcCAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSkKKyB7CistICBwd19j b3JlX3Byb3h5X3N5bmMgKHJlbW90ZS0+Y29yZV9wcm94eSwgKytyZW1vdGUtPnN5bmNfc2VxKTsK KysgIHJlbW90ZS0+c3luY19zZXEgPSBwd19jb3JlX3N5bmMgKHJlbW90ZS0+Y29yZSwgUFdfSURf Q09SRSwgcmVtb3RlLT5zeW5jX3NlcSk7CisgICBwd19tYWluX2xvb3BfcnVuIChyZW1vdGUtPmxv b3ApOworIH0KKyAKK0BAIC05OCwxNiArOTcsMTMgQEAgc3RhdGljIGdib29sZWFuCisgZGlzY292 ZXJfbm9kZV9mYWN0b3J5X3N5bmMgKFBpcGVXaXJlUmVtb3RlICpyZW1vdGUsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEdFcnJvciAqKmVycm9yKQorIHsKKy0gIHN0cnVjdCBwd190eXBl ICpjb3JlX3R5cGUgPSBwd19jb3JlX2dldF90eXBlIChyZW1vdGUtPmNvcmUpOworLSAgc3RydWN0 IHB3X3JlZ2lzdHJ5X3Byb3h5ICpyZWdpc3RyeV9wcm94eTsKKysgIHN0cnVjdCBwd19yZWdpc3Ry eSAqcmVnaXN0cnk7CisgCistICByZWdpc3RyeV9wcm94eSA9IHB3X2NvcmVfcHJveHlfZ2V0X3Jl Z2lzdHJ5IChyZW1vdGUtPmNvcmVfcHJveHksCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb3JlX3R5cGUtPnJlZ2lzdHJ5LAorLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUFdfVkVSU0lPTl9SRUdJU1RSWSwgMCk7 CistICBwd19yZWdpc3RyeV9wcm94eV9hZGRfbGlzdGVuZXIgKHJlZ2lzdHJ5X3Byb3h5LAorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcmVtb3RlLT5yZWdpc3RyeV9saXN0ZW5l ciwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJlZ2lzdHJ5X2V2ZW50cywK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3RlKTsKKysgIHJlZ2lzdHJ5 ID0gcHdfY29yZV9nZXRfcmVnaXN0cnkgKHJlbW90ZS0+Y29yZSwgUFdfVkVSU0lPTl9SRUdJU1RS WSwgMCk7CisrICBwd19yZWdpc3RyeV9hZGRfbGlzdGVuZXIgKHJlZ2lzdHJ5LAorKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAmcmVtb3RlLT5yZWdpc3RyeV9saXN0ZW5lciwKKysgICAgICAg ICAgICAgICAgICAgICAgICAgICAgJnJlZ2lzdHJ5X2V2ZW50cywKKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgcmVtb3RlKTsKKyAKKyAgIHBpcGV3aXJlX3JlbW90ZV9yb3VuZHRyaXAgKHJl bW90ZSk7CisgCitAQCAtMTIyLDU5ICsxMTgsMzUgQEAgZGlzY292ZXJfbm9kZV9mYWN0b3J5X3N5 bmMgKFBpcGVXaXJlUmVtb3RlICpyZW1vdGUsCisgfQorIAorIHN0YXRpYyB2b2lkCistb25fc3Rh dGVfY2hhbmdlZCAodm9pZCAqdXNlcl9kYXRhLAorLSAgICAgICAgICAgICAgICAgIGVudW0gcHdf cmVtb3RlX3N0YXRlIG9sZCwKKy0gICAgICAgICAgICAgICAgICBlbnVtIHB3X3JlbW90ZV9zdGF0 ZSBzdGF0ZSwKKy0gICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcikKKytjb3JlX2V2 ZW50X2Vycm9yICh2b2lkICAgICAgICp1c2VyX2RhdGEsCisrICAgICAgICAgICAgICAgICAgdWlu dDMyX3QgICAgaWQsCisrCQkgIGludCAgICAgICAgIHNlcSwKKysJCSAgaW50ICAgICAgICAgcmVz LAorKwkJICBjb25zdCBjaGFyICptZXNzYWdlKQorIHsKKyAgIFBpcGVXaXJlUmVtb3RlICpyZW1v dGUgPSB1c2VyX2RhdGE7CisgCistICBzd2l0Y2ggKHN0YXRlKQorKyAgaWYgKGlkID09IFBXX0lE X0NPUkUpCisgICAgIHsKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfRVJST1I6CistICAgICAg aWYgKCFyZW1vdGUtPmVycm9yKQorLSAgICAgICAgeworLSAgICAgICAgICBnX3NldF9lcnJvciAo JnJlbW90ZS0+ZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVELAorLSAgICAgICAg ICAgICAgICAgICAgICAgIiVzIiwgZXJyb3IpOworLSAgICAgICAgfQorKyAgICAgIGdfc2V0X2Vy cm9yICgmcmVtb3RlLT5lcnJvciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCisrICAg ICAgICAgICAgICAgICAiJXMiLCBtZXNzYWdlKTsKKyAgICAgICBwd19tYWluX2xvb3BfcXVpdCAo cmVtb3RlLT5sb29wKTsKKy0gICAgICBicmVhazsKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVf VU5DT05ORUNURUQ6CistICAgICAgaWYgKCFyZW1vdGUtPmVycm9yKQorLSAgICAgICAgeworLSAg ICAgICAgICBnX3NldF9lcnJvciAoJnJlbW90ZS0+ZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJS T1JfRkFJTEVELAorLSAgICAgICAgICAgICAgICAgICAgICAgIkRpc2Nvbm5lY3RlZCIpOworLSAg ICAgICAgfQorLSAgICAgIHB3X21haW5fbG9vcF9xdWl0IChyZW1vdGUtPmxvb3ApOworLSAgICAg IGJyZWFrOworLSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9DT05ORUNUSU5HOgorLSAgICAgIGJy ZWFrOworLSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9DT05ORUNURUQ6CistICAgICAgcHdfbWFp bl9sb29wX3F1aXQgKHJlbW90ZS0+bG9vcCk7CistICAgICAgYnJlYWs7CistICAgIGRlZmF1bHQ6 CistICAgICAgZ193YXJuaW5nICgiVW5rbm93biBQaXBlV2lyZSBzdGF0ZSIpOworLSAgICAgIGJy ZWFrOworICAgICB9CisgfQorIAorLXN0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfcmVtb3RlX2V2ZW50 cyByZW1vdGVfZXZlbnRzID0geworLSAgUFdfVkVSU0lPTl9SRU1PVEVfRVZFTlRTLAorLSAgLnN0 YXRlX2NoYW5nZWQgPSBvbl9zdGF0ZV9jaGFuZ2VkLAorLX07CistCisgc3RhdGljIHZvaWQKKyBj b3JlX2V2ZW50X2RvbmUgKHZvaWQgKnVzZXJfZGF0YSwKKy0gICAgICAgICAgICAgICAgIHVpbnQz Ml90IHNlcSkKKysgICAgICAgICAgICAgICAgIHVpbnQzMl90IGlkLCBpbnQgc2VxKQorIHsKKyAg IFBpcGVXaXJlUmVtb3RlICpyZW1vdGUgPSB1c2VyX2RhdGE7CisgCistICBpZiAocmVtb3RlLT5z eW5jX3NlcSA9PSBzZXEpCisrICBpZiAoaWQgPT0gUFdfSURfQ09SRSAmJiByZW1vdGUtPnN5bmNf c2VxID09IHNlcSkKKyAgICAgcHdfbWFpbl9sb29wX3F1aXQgKHJlbW90ZS0+bG9vcCk7CisgfQor IAorLXN0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfY29yZV9wcm94eV9ldmVudHMgY29yZV9ldmVudHMg PSB7CistICBQV19WRVJTSU9OX0NPUkVfUFJPWFlfRVZFTlRTLAorK3N0YXRpYyBjb25zdCBzdHJ1 Y3QgcHdfY29yZV9ldmVudHMgY29yZV9ldmVudHMgPSB7CisrICBQV19WRVJTSU9OX0NPUkVfRVZF TlRTLAorKyAgLmVycm9yID0gY29yZV9ldmVudF9lcnJvciwKKyAgIC5kb25lID0gY29yZV9ldmVu dF9kb25lLAorIH07CisgCitAQCAtMjM3LDggKzIwOSw4IEBAIHZvaWQKKyBwaXBld2lyZV9yZW1v dGVfZGVzdHJveSAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSkKKyB7CisgICBnX2NsZWFyX3BvaW50 ZXIgKCZyZW1vdGUtPmdsb2JhbHMsIGdfaGFzaF90YWJsZV9kZXN0cm95KTsKKy0gIGdfY2xlYXJf cG9pbnRlciAoJnJlbW90ZS0+cmVtb3RlLCBwd19yZW1vdGVfZGVzdHJveSk7CistICBnX2NsZWFy X3BvaW50ZXIgKCZyZW1vdGUtPmNvcmUsIHB3X2NvcmVfZGVzdHJveSk7CisrICBnX2NsZWFyX3Bv aW50ZXIgKCZyZW1vdGUtPmNvcmUsIHB3X2NvcmVfZGlzY29ubmVjdCk7CisrICBnX2NsZWFyX3Bv aW50ZXIgKCZyZW1vdGUtPmNvbnRleHQsIHB3X2NvbnRleHRfZGVzdHJveSk7CisgICBnX2NsZWFy X3BvaW50ZXIgKCZyZW1vdGUtPmxvb3AsIHB3X21haW5fbG9vcF9kZXN0cm95KTsKKyAgIGdfY2xl YXJfZXJyb3IgKCZyZW1vdGUtPmVycm9yKTsKKyAKK0BAIC0zMDcsNjggKzI3OSwzMSBAQCBwaXBl d2lyZV9yZW1vdGVfbmV3X3N5bmMgKHN0cnVjdCBwd19wcm9wZXJ0aWVzICpwaXBld2lyZV9wcm9w ZXJ0aWVzLAorICAgICAgIHJldHVybiBOVUxMOworICAgICB9CisgCistICByZW1vdGUtPmNvcmUg PSBwd19jb3JlX25ldyAocHdfbWFpbl9sb29wX2dldF9sb29wIChyZW1vdGUtPmxvb3ApLCBOVUxM KTsKKy0gIGlmICghcmVtb3RlLT5jb3JlKQorKyAgcmVtb3RlLT5jb250ZXh0ID0gcHdfY29udGV4 dF9uZXcgKHB3X21haW5fbG9vcF9nZXRfbG9vcCAocmVtb3RlLT5sb29wKSwgTlVMTCwgMCk7Cisr ICBpZiAoIXJlbW90ZS0+Y29udGV4dCkKKyAgICAgeworICAgICAgIHBpcGV3aXJlX3JlbW90ZV9k ZXN0cm95IChyZW1vdGUpOworICAgICAgIHB3X3Byb3BlcnRpZXNfZnJlZSAocGlwZXdpcmVfcHJv cGVydGllcyk7CisgICAgICAgZ19zZXRfZXJyb3IgKGVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VS Uk9SX0ZBSUxFRCwKKy0gICAgICAgICAgICAgICAgICAgIkNvdWxkbid0IGNyZWF0ZSBQaXBlV2ly ZSBjb3JlIik7CisrICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBjcmVhdGUgUGlwZVdpcmUg Y29udGV4dCIpOworICAgICAgIHJldHVybiBOVUxMOworICAgICB9CisgCistICByZW1vdGUtPnJl bW90ZSA9IHB3X3JlbW90ZV9uZXcgKHJlbW90ZS0+Y29yZSwgcGlwZXdpcmVfcHJvcGVydGllcywg MCk7CistICBpZiAoIXJlbW90ZS0+cmVtb3RlKQorKyAgcmVtb3RlLT5jb3JlID0gcHdfY29udGV4 dF9jb25uZWN0IChyZW1vdGUtPmNvbnRleHQsIHBpcGV3aXJlX3Byb3BlcnRpZXMsIDApOworKyAg aWYgKCFyZW1vdGUtPmNvcmUpCisgICAgIHsKKyAgICAgICBwaXBld2lyZV9yZW1vdGVfZGVzdHJv eSAocmVtb3RlKTsKKyAgICAgICBnX3NldF9lcnJvciAoZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9f RVJST1JfRkFJTEVELAorLSAgICAgICAgICAgICAgICAgICAiQ291bGRuJ3QgY3JlYXRlIFBpcGVX aXJlIHJlbW90ZSIpOworKyAgICAgICAgICAgICAgICAgICAiQ291bGRuJ3QgY29ubmVjdCB0byBQ aXBlV2lyZSIpOworICAgICAgIHJldHVybiBOVUxMOworICAgICB9CisgCisgICByZW1vdGUtPmds b2JhbHMgPSBnX2hhc2hfdGFibGVfbmV3X2Z1bGwgKE5VTEwsIE5VTEwsIE5VTEwsIGdfZnJlZSk7 CisgCistICBwd19yZW1vdGVfYWRkX2xpc3RlbmVyIChyZW1vdGUtPnJlbW90ZSwKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICZyZW1vdGUtPnJlbW90ZV9saXN0ZW5lciwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICZyZW1vdGVfZXZlbnRzLAorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgcmVtb3RlKTsKKy0KKy0gIGlmIChwd19yZW1vdGVfY29ubmVjdCAocmVtb3RlLT5yZW1vdGUp ICE9IDApCistICAgIHsKKy0gICAgICBwaXBld2lyZV9yZW1vdGVfZGVzdHJveSAocmVtb3RlKTsK Ky0gICAgICBnX3NldF9lcnJvciAoZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVE LAorLSAgICAgICAgICAgICAgICAgICAiQ291bGRuJ3QgY29ubmVjdCBQaXBlV2lyZSByZW1vdGUi KTsKKy0gICAgICByZXR1cm4gTlVMTDsKKy0gICAgfQorLQorLSAgcHdfbWFpbl9sb29wX3J1biAo cmVtb3RlLT5sb29wKTsKKy0KKy0gIHN3aXRjaCAocHdfcmVtb3RlX2dldF9zdGF0ZSAocmVtb3Rl LT5yZW1vdGUsIE5VTEwpKQorLSAgICB7CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0VSUk9S OgorLSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9VTkNPTk5FQ1RFRDoKKy0gICAgICAqZXJyb3Ig PSBnX3N0ZWFsX3BvaW50ZXIgKCZyZW1vdGUtPmVycm9yKTsKKy0gICAgICBwaXBld2lyZV9yZW1v dGVfZGVzdHJveSAocmVtb3RlKTsKKy0gICAgICByZXR1cm4gTlVMTDsKKy0gICAgY2FzZSBQV19S RU1PVEVfU1RBVEVfQ09OTkVDVElORzoKKy0gICAgICBnX3NldF9lcnJvciAoZXJyb3IsIEdfSU9f RVJST1IsIEdfSU9fRVJST1JfRkFJTEVELAorLSAgICAgICAgICAgICAgICAgICAiUGlwZVdpcmUg bG9vcCBzdG9wcGVkIHVuZXhwZWN0ZWRseSIpOworLSAgICAgIHBpcGV3aXJlX3JlbW90ZV9kZXN0 cm95IChyZW1vdGUpOworLSAgICAgIHJldHVybiBOVUxMOworLSAgICBjYXNlIFBXX1JFTU9URV9T VEFURV9DT05ORUNURUQ6CistICAgICAgYnJlYWs7CistICAgIGRlZmF1bHQ6CistICAgICAgZ19z ZXRfZXJyb3IgKGVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9SX0ZBSUxFRCwKKy0gICAgICAg ICAgICAgICAgICAgIlVuZXhwZWN0ZWQgUGlwZVdpcmUgc3RhdGUiKTsKKy0gICAgICBwaXBld2ly ZV9yZW1vdGVfZGVzdHJveSAocmVtb3RlKTsKKy0gICAgICByZXR1cm4gTlVMTDsKKy0gICAgfQor LQorLSAgcmVtb3RlLT5jb3JlX3Byb3h5ID0gcHdfcmVtb3RlX2dldF9jb3JlX3Byb3h5IChyZW1v dGUtPnJlbW90ZSk7CistICBwd19jb3JlX3Byb3h5X2FkZF9saXN0ZW5lciAocmVtb3RlLT5jb3Jl X3Byb3h5LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZyZW1vdGUtPmNvcmVfbGlz dGVuZXIsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNvcmVfZXZlbnRzLAorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbW90ZSk7CisrICBwd19jb3JlX2FkZF9saXN0 ZW5lciAocmVtb3RlLT5jb3JlLAorKyAgICAgICAgICAgICAgICAgICAgICAgICZyZW1vdGUtPmNv cmVfbGlzdGVuZXIsCisrICAgICAgICAgICAgICAgICAgICAgICAgJmNvcmVfZXZlbnRzLAorKyAg ICAgICAgICAgICAgICAgICAgICAgIHJlbW90ZSk7CisgCisgICBpZiAoIWRpc2NvdmVyX25vZGVf ZmFjdG9yeV9zeW5jIChyZW1vdGUsIGVycm9yKSkKKyAgICAgeworZGlmZiAtLWdpdCBzcmMvcGlw ZXdpcmUuaCBzcmMvcGlwZXdpcmUuaAoraW5kZXggMGYxYmY1NC4uYmY0OGQ1ZSAxMDA2NDQKKy0t LSBzcmMvcGlwZXdpcmUuaAorKysrIHNyYy9waXBld2lyZS5oCitAQCAtMzIsNyArMzIsNyBAQCB0 eXBlZGVmIHN0cnVjdCBfUGlwZVdpcmVHbG9iYWwKKyAKKyB0eXBlZGVmIHZvaWQgKCogUGlwZVdp cmVHbG9iYWxBZGRlZENhbGxiYWNrKSAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgaWQsCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHR5cGUs CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo YXIgKnR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IHN0cnVjdCBzcGFfZGljdCAqcHJvcHMsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGdwb2ludGVyIHVzZXJfZGF0YSk7CisgCitAQCAtNDMsMTMg KzQzLDExIEBAIHR5cGVkZWYgdm9pZCAoKiBQaXBlV2lyZUdsb2JhbFJlbW92ZWRDYWxsYmFjaykg KFBpcGVXaXJlUmVtb3RlICpyZW1vdGUsCisgc3RydWN0IF9QaXBlV2lyZVJlbW90ZQorIHsKKyAg IHN0cnVjdCBwd19tYWluX2xvb3AgKmxvb3A7CisrICBzdHJ1Y3QgcHdfY29udGV4dCAqY29udGV4 dDsKKyAgIHN0cnVjdCBwd19jb3JlICpjb3JlOworLSAgc3RydWN0IHB3X3JlbW90ZSAqcmVtb3Rl OworLSAgc3RydWN0IHNwYV9ob29rIHJlbW90ZV9saXN0ZW5lcjsKKy0KKy0gIHN0cnVjdCBwd19j b3JlX3Byb3h5ICpjb3JlX3Byb3h5OworICAgc3RydWN0IHNwYV9ob29rIGNvcmVfbGlzdGVuZXI7 CistICB1aW50MzJfdCBzeW5jX3NlcTsKKysKKysgIGludCBzeW5jX3NlcTsKKyAKKyAgIHN0cnVj dCBzcGFfaG9vayByZWdpc3RyeV9saXN0ZW5lcjsKKyAKK2RpZmYgLS1naXQgc3JjL3NjcmVlbi1j YXN0LmMgc3JjL3NjcmVlbi1jYXN0LmMKK2luZGV4IDc4ODFkZGMuLjE2NzcwNTAgMTAwNjQ0Cist LS0gc3JjL3NjcmVlbi1jYXN0LmMKKysrKyBzcmMvc2NyZWVuLWNhc3QuYworQEAgLTMxLDEwICsz MSwxMCBAQAorICNpbmNsdWRlICJ4ZHAtaW1wbC1kYnVzLmgiCisgI2luY2x1ZGUgInhkcC11dGls cy5oIgorIAorLSNkZWZpbmUgUEVSTUlTU0lPTl9JVEVNKGl0ZW1fa2V5LCBpdGVtX3ZhbHVlKSBc CistICAoKHN0cnVjdCBzcGFfZGljdF9pdGVtKSB7IFwKKy0gICAgLmtleSA9IGl0ZW1fa2V5LCBc CistICAgIC52YWx1ZSA9IGl0ZW1fdmFsdWUgXAorKyNkZWZpbmUgUEVSTUlTU0lPTl9JVEVNKGl0 ZW1faWQsIGl0ZW1fcGVybWlzc2lvbnMpIFwKKysgICgoc3RydWN0IHB3X3Blcm1pc3Npb24pIHsg XAorKyAgICAuaWQgPSBpdGVtX2lkLCBcCisrICAgIC5wZXJtaXNzaW9ucyA9IGl0ZW1fcGVybWlz c2lvbnMgXAorICAgfSkKKyAKKyB0eXBlZGVmIHN0cnVjdCBfU2NyZWVuQ2FzdCBTY3JlZW5DYXN0 OworQEAgLTUxNyw0MiArNTE3LDkgQEAgc2NyZWVuX2Nhc3Rfc3RyZWFtX2dldF9waXBld2lyZV9u b2RlX2lkIChTY3JlZW5DYXN0U3RyZWFtICpzdHJlYW0pCisgICByZXR1cm4gc3RyZWFtLT5pZDsK KyB9CisgCistc3RhdGljIHZvaWQKKy1hcHBlbmRfcGFyZW50X3Blcm1pc3Npb25zIChQaXBlV2ly ZVJlbW90ZSAqcmVtb3RlLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgIEdBcnJheSAqcGVy bWlzc2lvbl9pdGVtcywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICBHTGlzdCAqKnN0cmlu Z19zdGFzaCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICBQaXBlV2lyZUdsb2JhbCAqZ2xv YmFsLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBlcm1pc3Npb24p CisteworLSAgUGlwZVdpcmVHbG9iYWwgKnBhcmVudDsKKy0gIGNoYXIgKnBhcmVudF9wZXJtaXNz aW9uX3ZhbHVlOworLQorLSAgaWYgKGdsb2JhbC0+cGFyZW50X2lkID09IDApCistICAgIHJldHVy bjsKKy0KKy0gIHBhcmVudCA9IGdfaGFzaF90YWJsZV9sb29rdXAgKHJlbW90ZS0+Z2xvYmFscywg R0lOVF9UT19QT0lOVEVSIChnbG9iYWwtPnBhcmVudF9pZCkpOworLQorLSAgaWYgKHBhcmVudC0+ cGVybWlzc2lvbl9zZXQpCistICAgIHJldHVybjsKKy0gIHBhcmVudC0+cGVybWlzc2lvbl9zZXQg PSBUUlVFOworLQorLSAgYXBwZW5kX3BhcmVudF9wZXJtaXNzaW9ucyAocmVtb3RlLCBwZXJtaXNz aW9uX2l0ZW1zLCBzdHJpbmdfc3Rhc2gsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw YXJlbnQsIHBlcm1pc3Npb24pOworLQorLSAgcGFyZW50X3Blcm1pc3Npb25fdmFsdWUgPSBnX3N0 cmR1cF9wcmludGYgKCIldTolcyIsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZ2xvYmFsLT5wYXJlbnRfaWQsCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgcGVybWlzc2lvbik7CistICAqc3RyaW5nX3N0YXNoID0gZ19s aXN0X3ByZXBlbmQgKCpzdHJpbmdfc3Rhc2gsIHBhcmVudF9wZXJtaXNzaW9uX3ZhbHVlKTsKKy0K Ky0gIGdfYXJyYXlfYXBwZW5kX3ZhbCAocGVybWlzc2lvbl9pdGVtcywKKy0gICAgICAgICAgICAg ICAgICAgICAgUEVSTUlTU0lPTl9JVEVNIChQV19DT1JFX1BST1hZX1BFUk1JU1NJT05TX0dMT0JB TCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJlbnRfcGVybWlz c2lvbl92YWx1ZSkpOworLX0KKy0KKyBzdGF0aWMgdm9pZAorIGFwcGVuZF9zdHJlYW1fcGVybWlz c2lvbnMgKFBpcGVXaXJlUmVtb3RlICpyZW1vdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgR0FycmF5ICpwZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAg IEdMaXN0ICoqc3RyaW5nX3N0YXNoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaXN0 ICpzdHJlYW1zKQorIHsKKyAgIEdMaXN0ICpsOworQEAgLTU2MSwyMSArNTI4LDEwIEBAIGFwcGVu ZF9zdHJlYW1fcGVybWlzc2lvbnMgKFBpcGVXaXJlUmVtb3RlICpyZW1vdGUsCisgICAgIHsKKyAg ICAgICBTY3JlZW5DYXN0U3RyZWFtICpzdHJlYW0gPSBsLT5kYXRhOworICAgICAgIHVpbnQzMl90 IHN0cmVhbV9pZDsKKy0gICAgICBQaXBlV2lyZUdsb2JhbCAqc3RyZWFtX2dsb2JhbDsKKy0gICAg ICBjaGFyICpzdHJlYW1fcGVybWlzc2lvbl92YWx1ZTsKKyAKKyAgICAgICBzdHJlYW1faWQgPSBz Y3JlZW5fY2FzdF9zdHJlYW1fZ2V0X3BpcGV3aXJlX25vZGVfaWQgKHN0cmVhbSk7CistICAgICAg c3RyZWFtX2dsb2JhbCA9IGdfaGFzaF90YWJsZV9sb29rdXAgKHJlbW90ZS0+Z2xvYmFscywKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0lOVF9UT19QT0lOVEVS IChzdHJlYW1faWQpKTsKKy0KKy0gICAgICBhcHBlbmRfcGFyZW50X3Blcm1pc3Npb25zIChyZW1v dGUsIHBlcm1pc3Npb25faXRlbXMsIHN0cmluZ19zdGFzaCwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBzdHJlYW1fZ2xvYmFsLCAici0tIik7CistCistICAgICAgc3RyZWFtX3Bl cm1pc3Npb25fdmFsdWUgPSBnX3N0cmR1cF9wcmludGYgKCIldTpyd3giLCBzdHJlYW1faWQpOwor LSAgICAgICpzdHJpbmdfc3Rhc2ggPSBnX2xpc3RfcHJlcGVuZCAoKnN0cmluZ19zdGFzaCwgc3Ry ZWFtX3Blcm1pc3Npb25fdmFsdWUpOworICAgICAgIGdfYXJyYXlfYXBwZW5kX3ZhbCAocGVybWlz c2lvbl9pdGVtcywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgIFBFUk1JU1NJT05fSVRFTSAo UFdfQ09SRV9QUk9YWV9QRVJNSVNTSU9OU19HTE9CQUwsCistICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHN0cmVhbV9wZXJtaXNzaW9uX3ZhbHVlKSk7CisrICAgICAg ICAgICAgICAgICAgICAgICAgICBQRVJNSVNTSU9OX0lURU0gKHN0cmVhbV9pZCwgUFdfUEVSTV9S V1gpKTsKKyAgICAgfQorIH0KKyAKK0BAIC01ODcsOSArNTQzLDYgQEAgb3Blbl9waXBld2lyZV9z Y3JlZW5fY2FzdF9yZW1vdGUgKGNvbnN0IGNoYXIgKmFwcF9pZCwKKyAgIHN0cnVjdCBwd19wcm9w ZXJ0aWVzICpwaXBld2lyZV9wcm9wZXJ0aWVzOworICAgUGlwZVdpcmVSZW1vdGUgKnJlbW90ZTsK KyAgIGdfYXV0b3B0cihHQXJyYXkpIHBlcm1pc3Npb25faXRlbXMgPSBOVUxMOworLSAgY2hhciAq bm9kZV9mYWN0b3J5X3Blcm1pc3Npb25fc3RyaW5nOworLSAgR0xpc3QgKnN0cmluZ19zdGFzaCA9 IE5VTEw7CistICBzdHJ1Y3Qgc3BhX2RpY3QgKnBlcm1pc3Npb25fZGljdDsKKyAgIFBpcGVXaXJl R2xvYmFsICpub2RlX2dsb2JhbDsKKyAKKyAgIHBpcGV3aXJlX3Byb3BlcnRpZXMgPSBwd19wcm9w ZXJ0aWVzX25ldyAoInBpcGV3aXJlLmFjY2Vzcy5wb3J0YWwuYXBwX2lkIiwgYXBwX2lkLAorQEAg LTYwMyw0OCArNTU2LDMxIEBAIG9wZW5fcGlwZXdpcmVfc2NyZWVuX2Nhc3RfcmVtb3RlIChjb25z dCBjaGFyICphcHBfaWQsCisgCisgICBwZXJtaXNzaW9uX2l0ZW1zID0gZ19hcnJheV9uZXcgKEZB TFNFLCBUUlVFLCBzaXplb2YgKHN0cnVjdCBzcGFfZGljdF9pdGVtKSk7CisgCistICAvKgorLSAg ICogSGlkZSBhbGwgZXhpc3RpbmcgYW5kIGZ1dHVyZSBub2RlcyAoZXhjZXB0IHRoZSBvbmVzIHdl IGV4cGxpY2l0bHkgbGlzdCBiZWxvdy4KKy0gICAqLworLSAgZ19hcnJheV9hcHBlbmRfdmFsIChw ZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAgICAgICAgICAgICAgICAgICBQRVJNSVNTSU9OX0lURU0g KFBXX0NPUkVfUFJPWFlfUEVSTUlTU0lPTlNfRVhJU1RJTkcsCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIi0tLSIpKTsKKy0gIGdfYXJyYXlfYXBwZW5kX3ZhbCAocGVy bWlzc2lvbl9pdGVtcywKKy0gICAgICAgICAgICAgICAgICAgICAgUEVSTUlTU0lPTl9JVEVNIChQ V19DT1JFX1BST1hZX1BFUk1JU1NJT05TX0RFRkFVTFQsCistICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIi0tLSIpKTsKKy0KKyAgIC8qCisgICAgKiBQaXBlV2lyZTpJbnRl cmZhY2U6Q29yZQorICAgICogTmVlZHMgcnd4IHRvIGJlIGFibGUgY3JlYXRlIHRoZSBzaW5rIG5v ZGUgdXNpbmcgdGhlIGNyZWF0ZS1vYmplY3QgbWV0aG9kCisgICAgKi8KKyAgIGdfYXJyYXlfYXBw ZW5kX3ZhbCAocGVybWlzc2lvbl9pdGVtcywKKy0gICAgICAgICAgICAgICAgICAgICAgUEVSTUlT U0lPTl9JVEVNIChQV19DT1JFX1BST1hZX1BFUk1JU1NJT05TX0dMT0JBTCwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiMDpyd3giKSk7CisrICAgICAgICAgICAgICAg ICAgICAgIFBFUk1JU1NJT05fSVRFTSAoUFdfSURfQ09SRSwgUFdfUEVSTV9SV1gpKTsKKyAKKyAg IC8qCisgICAgKiBQaXBlV2lyZTpJbnRlcmZhY2U6Tm9kZUZhY3RvcnkKKyAgICAqIE5lZWRzIHIt LSBzbyBpdCBjYW4gYmUgcGFzc2VkIHRvIGNyZWF0ZS1vYmplY3Qgd2hlbiBjcmVhdGluZyB0aGUg c2luayBub2RlLgorICAgICovCistICBub2RlX2ZhY3RvcnlfcGVybWlzc2lvbl9zdHJpbmcgPSBn X3N0cmR1cF9wcmludGYgKCIlZDpyLS0iLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICByZW1vdGUtPm5vZGVfZmFjdG9yeV9pZCk7CistICBzdHJp bmdfc3Rhc2ggPSBnX2xpc3RfcHJlcGVuZCAoc3RyaW5nX3N0YXNoLCBub2RlX2ZhY3RvcnlfcGVy bWlzc2lvbl9zdHJpbmcpOworICAgZ19hcnJheV9hcHBlbmRfdmFsIChwZXJtaXNzaW9uX2l0ZW1z LAorLSAgICAgICAgICAgICAgICAgICAgICBQRVJNSVNTSU9OX0lURU0gKFBXX0NPUkVfUFJPWFlf UEVSTUlTU0lPTlNfR0xPQkFMLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIG5vZGVfZmFjdG9yeV9wZXJtaXNzaW9uX3N0cmluZykpOworLSAgbm9kZV9nbG9iYWwgPSBn X2hhc2hfdGFibGVfbG9va3VwIChyZW1vdGUtPmdsb2JhbHMsCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEdJTlRfVE9fUE9JTlRFUiAocmVtb3RlLT5ub2RlX2ZhY3Rvcnlf aWQpKTsKKy0gIGFwcGVuZF9wYXJlbnRfcGVybWlzc2lvbnMgKHJlbW90ZSwgcGVybWlzc2lvbl9p dGVtcywgJnN0cmluZ19zdGFzaCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vZGVf Z2xvYmFsLCAici0tIik7CisrICAgICAgICAgICAgICAgICAgICAgIFBFUk1JU1NJT05fSVRFTSAo cmVtb3RlLT5ub2RlX2ZhY3RvcnlfaWQsIFBXX1BFUk1fUikpOworIAorLSAgYXBwZW5kX3N0cmVh bV9wZXJtaXNzaW9ucyAocmVtb3RlLCBwZXJtaXNzaW9uX2l0ZW1zLCAmc3RyaW5nX3N0YXNoLCBz dHJlYW1zKTsKKysgIGFwcGVuZF9zdHJlYW1fcGVybWlzc2lvbnMgKHJlbW90ZSwgcGVybWlzc2lv bl9pdGVtcywgc3RyZWFtcyk7CisgCistICBwZXJtaXNzaW9uX2RpY3QgPQorLSAgICAmU1BBX0RJ Q1RfSU5JVCAoKHN0cnVjdCBzcGFfZGljdF9pdGVtICopIHBlcm1pc3Npb25faXRlbXMtPmRhdGEs CistICAgICAgICAgICAgICAgICAgICBwZXJtaXNzaW9uX2l0ZW1zLT5sZW4pOworLSAgcHdfY29y ZV9wcm94eV9wZXJtaXNzaW9ucyAocHdfcmVtb3RlX2dldF9jb3JlX3Byb3h5IChyZW1vdGUtPnJl bW90ZSksCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXJtaXNzaW9uX2RpY3QpOwor KyAgLyoKKysgICAqIEhpZGUgYWxsIGV4aXN0aW5nIGFuZCBmdXR1cmUgbm9kZXMgKGV4Y2VwdCB0 aGUgb25lcyB3ZSBleHBsaWNpdGx5IGxpc3QgYWJvdmUpLgorKyAgICovCisrICBnX2FycmF5X2Fw cGVuZF92YWwgKHBlcm1pc3Npb25faXRlbXMsCisrICAgICAgICAgICAgICAgICAgICAgIFBFUk1J U1NJT05fSVRFTSAoUFdfSURfQU5ZLCAwKSk7CisgCistICBnX2xpc3RfZnJlZV9mdWxsIChzdHJp bmdfc3Rhc2gsIGdfZnJlZSk7CisrICBwd19jbGllbnRfdXBkYXRlX3Blcm1pc3Npb25zIChwd19j b3JlX2dldF9jbGllbnQocmVtb3RlLT5jb3JlKSwKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHBlcm1pc3Npb25faXRlbXMtPmxlbiwKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIChjb25zdCBzdHJ1Y3QgcHdfcGVybWlzc2lvbiAqKXBlcm1pc3Npb25faXRlbXMtPmRh dGEpOworIAorICAgcGlwZXdpcmVfcmVtb3RlX3JvdW5kdHJpcCAocmVtb3RlKTsKKyAKK0BAIC05 NDMsNyArODc5LDcgQEAgaGFuZGxlX29wZW5fcGlwZXdpcmVfcmVtb3RlIChYZHBTY3JlZW5DYXN0 ICpvYmplY3QsCisgICAgIH0KKyAKKyAgIG91dF9mZF9saXN0ID0gZ191bml4X2ZkX2xpc3RfbmV3 ICgpOworLSAgZmQgPSBwd19yZW1vdGVfc3RlYWxfZmQgKHJlbW90ZS0+cmVtb3RlKTsKKysgIGZk ID0gcHdfY29yZV9zdGVhbF9mZCAocmVtb3RlLT5jb3JlKTsKKyAgIGZkX2lkID0gZ191bml4X2Zk X2xpc3RfYXBwZW5kIChvdXRfZmRfbGlzdCwgZmQsICZlcnJvcik7CisgICBjbG9zZSAoZmQpOwor ICAgcGlwZXdpcmVfcmVtb3RlX2Rlc3Ryb3kgKHJlbW90ZSk7CmRpZmYgLS1naXQgYS9zcmNwa2dz L3hkZy1kZXNrdG9wLXBvcnRhbC90ZW1wbGF0ZSBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFs L3RlbXBsYXRlCmluZGV4IGViOGE0NjAyZjVkLi4xMTM2YjZhNmUwZSAxMDA2NDQKLS0tIGEvc3Jj cGtncy94ZGctZGVza3RvcC1wb3J0YWwvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94ZGctZGVza3Rv cC1wb3J0YWwvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J3hkZy1kZXNrdG9wLXBvcnRhbCcKIHBrZ25hbWU9eGRnLWRlc2t0b3AtcG9ydGFsCiB2ZXJzaW9u PTEuNi4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJl CiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUtcGlwZXdpcmUgLS1lbmFibGUtZ2VvY2x1ZSAtLWRp c2FibGUtbGlicG9ydGFsIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwi Citob3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtlIGxpYnRvb2wgZ2V0dGV4dC1kZXZlbCBwa2ctY29u ZmlnIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iZmxhdHBhay1kZXZlbCBmdXNlLWRldmVsIHBp cGV3aXJlLWRldmVsIGdlb2NsdWUyLWRldmVsIgogc2hvcnRfZGVzYz0iUG9ydGFsIGZyb250ZW5k IHNlcnZpY2UgZm9yIEZsYXRwYWsiCiBtYWludGFpbmVyPSJEdW5jYWVuIDxkdW5jYWVuQHZvaWRs aW51eC5vcmc+IgpAQCAtMTMsNiArMTMsMTAgQEAgaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNv bS9mbGF0cGFrL3hkZy1kZXNrdG9wLXBvcnRhbCIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIu Y29tL2ZsYXRwYWsvJHtwa2duYW1lfS9yZWxlYXNlcy9kb3dubG9hZC8ke3ZlcnNpb259LyR7cGtn bmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCiBjaGVja3N1bT04ODNjOWM5YTkyNWU0OGFmNTQ4MTJi NTM0N2Y1NDZkZDc3NmVjMmUyNzA3NmE4M2Q1YTgxMjZhZjZiYWZiOWRhCiAKK3ByZV9jb25maWd1 cmUoKSB7CisJYXV0b3JlY29uZiAtdmZpCit9CisKIHBvc3RfaW5zdGFsbCgpIHsKIAlybSAtcmYg IiR7REVTVERJUn0vdXNyL2xpYi9zeXN0ZW1kIgogfQoKRnJvbSBlOWZmYzNiODc4ZGYyYWQ0NGVh NzlmYTM2NGJhMjE1ZjE4YjNmNTc2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLcmlk c2FkYSBUaGFuYWJ1bHBvbmcgPHNpcm5Ab2dzaXRlLm5ldD4KRGF0ZTogVGh1LCAzMCBBcHIgMjAy MCAwNjoxNzoxNyArMDkwMApTdWJqZWN0OiBbUEFUQ0ggNC80XSBtdXR0ZXI6IHJlYnVpbGQgZm9y IHBpcGV3aXJlLTAuMwoKLS0tCiBzcmNwa2dzL211dHRlci9wYXRjaGVzL3BpcGV3aXJlLTAuMy5w YXRjaCB8IDUyMSArKysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL211dHRlci90ZW1wbGF0 ZSAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCA1MjIgaW5zZXJ0 aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXV0dGVy L3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXR0ZXIv cGF0Y2hlcy9waXBld2lyZS0wLjMucGF0Y2ggYi9zcmNwa2dzL211dHRlci9wYXRjaGVzL3BpcGV3 aXJlLTAuMy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZWJm ZjY1ZmJhODUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL211dHRlci9wYXRjaGVzL3BpcGV3 aXJlLTAuMy5wYXRjaApAQCAtMCwwICsxLDUyMSBAQAorQnVpbGQgbXV0dGVyIGFnYWluc3QgcGlw ZXdpcmUtMC4zLCBiYXNlZCBvbiBhIHBhdGNoIGF0OgoraHR0cHM6Ly9naXRsYWIuZ25vbWUub3Jn L0dOT01FL211dHRlci8tL21lcmdlX3JlcXVlc3RzLzEwNjIKKy0tLSBtZXNvbi5idWlsZAorKysr IG1lc29uLmJ1aWxkCitAQCAtNTAsNyArNTAsNyBAQCBsaWJpbnB1dF9yZXEgPSAnPj0gMS43Jwor IGdibV9yZXEgPSAnPj0gMTAuMycKKworICMgc2NyZWVuIGNhc3QgdmVyc2lvbiByZXF1aXJlbWVu dHMKKy1saWJwaXBld2lyZV9yZXEgPSAnPj0gMC4yLjUnCisrbGlicGlwZXdpcmVfcmVxID0gJz49 IDAuMy4wJworCisgZ25vbWUgPSBpbXBvcnQoJ2dub21lJykKKyBwa2cgPSBpbXBvcnQoJ3BrZ2Nv bmZpZycpCitAQCAtMjQxLDcgKzI0MSw3IEBAIGVuZGlmCisKKyBoYXZlX3JlbW90ZV9kZXNrdG9w ID0gZ2V0X29wdGlvbigncmVtb3RlX2Rlc2t0b3AnKQorIGlmIGhhdmVfcmVtb3RlX2Rlc2t0b3AK Ky0gIGxpYnBpcGV3aXJlX2RlcCA9IGRlcGVuZGVuY3koJ2xpYnBpcGV3aXJlLTAuMicsIHZlcnNp b246IGxpYnBpcGV3aXJlX3JlcSkKKysgIGxpYnBpcGV3aXJlX2RlcCA9IGRlcGVuZGVuY3koJ2xp YnBpcGV3aXJlLTAuMycsIHZlcnNpb246IGxpYnBpcGV3aXJlX3JlcSkKKyBlbmRpZgorCisgaGF2 ZV9pbnRyb3NwZWN0aW9uID0gZ2V0X29wdGlvbignaW50cm9zcGVjdGlvbicpCitkaWZmIC0tZ2l0 IGEvc3JjL2JhY2tlbmRzL21ldGEtc2NyZWVuLWNhc3Qtc3RyZWFtLXNyYy5jIGIvc3JjL2JhY2tl bmRzL21ldGEtc2NyZWVuLWNhc3Qtc3RyZWFtLXNyYy5jCitpbmRleCA4MmM1Y2JhNDM2Li5iYTFj ZTk0YTdlIDEwMDY0NAorLS0tIHNyYy9iYWNrZW5kcy9tZXRhLXNjcmVlbi1jYXN0LXN0cmVhbS1z cmMuYworKysrIHNyYy9iYWNrZW5kcy9tZXRhLXNjcmVlbi1jYXN0LXN0cmVhbS1zcmMuYworQEAg LTI5LDYgKzI5LDcgQEAKKyAjaW5jbHVkZSA8c3BhL3BhcmFtL3Byb3BzLmg+CisgI2luY2x1ZGUg PHNwYS9wYXJhbS9mb3JtYXQtdXRpbHMuaD4KKyAjaW5jbHVkZSA8c3BhL3BhcmFtL3ZpZGVvL2Zv cm1hdC11dGlscy5oPgorKyNpbmNsdWRlIDxzcGEvdXRpbHMvcmVzdWx0Lmg+CisgI2luY2x1ZGUg PHN0ZGludC5oPgorICNpbmNsdWRlIDxzeXMvbW1hbi5oPgorCitAQCAtNjIsMTUgKzYzLDYgQEAg ZW51bQorCisgc3RhdGljIGd1aW50IHNpZ25hbHNbTl9TSUdOQUxTXTsKKworLXR5cGVkZWYgc3Ry dWN0IF9NZXRhU3BhVHlwZQorLXsKKy0gIHN0cnVjdCBzcGFfdHlwZV9tZWRpYV90eXBlIG1lZGlh X3R5cGU7CistICBzdHJ1Y3Qgc3BhX3R5cGVfbWVkaWFfc3VidHlwZSBtZWRpYV9zdWJ0eXBlOwor LSAgc3RydWN0IHNwYV90eXBlX2Zvcm1hdF92aWRlbyBmb3JtYXRfdmlkZW87CistICBzdHJ1Y3Qg c3BhX3R5cGVfdmlkZW9fZm9ybWF0IHZpZGVvX2Zvcm1hdDsKKy0gIHVpbnQzMl90IG1ldGFfY3Vy c29yOworLX0gTWV0YVNwYVR5cGU7CistCisgdHlwZWRlZiBzdHJ1Y3QgX01ldGFQaXBlV2lyZVNv dXJjZQorIHsKKyAgIEdTb3VyY2UgYmFzZTsKK0BAIC04MiwxOSArNzQsMTkgQEAgdHlwZWRlZiBz dHJ1Y3QgX01ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZQorIHsKKyAgIE1ldGFTY3JlZW5D YXN0U3RyZWFtICpzdHJlYW07CisKKysgIHN0cnVjdCBwd19jb250ZXh0ICpwaXBld2lyZV9jb250 ZXh0OworICAgc3RydWN0IHB3X2NvcmUgKnBpcGV3aXJlX2NvcmU7CistICBzdHJ1Y3QgcHdfcmVt b3RlICpwaXBld2lyZV9yZW1vdGU7CistICBzdHJ1Y3QgcHdfdHlwZSAqcGlwZXdpcmVfdHlwZTsK KyAgIE1ldGFQaXBlV2lyZVNvdXJjZSAqcGlwZXdpcmVfc291cmNlOworLSAgc3RydWN0IHNwYV9o b29rIHBpcGV3aXJlX3JlbW90ZV9saXN0ZW5lcjsKKysgIHN0cnVjdCBzcGFfaG9vayBwaXBld2ly ZV9jb3JlX2xpc3RlbmVyOworCisgICBnYm9vbGVhbiBpc19lbmFibGVkOworCisgICBzdHJ1Y3Qg cHdfc3RyZWFtICpwaXBld2lyZV9zdHJlYW07CisgICBzdHJ1Y3Qgc3BhX2hvb2sgcGlwZXdpcmVf c3RyZWFtX2xpc3RlbmVyOworKyAgdWludDMyX3Qgbm9kZV9pZDsKKworLSAgTWV0YVNwYVR5cGUg c3BhX3R5cGU7CisgICBzdHJ1Y3Qgc3BhX3ZpZGVvX2luZm9fcmF3IHZpZGVvX2Zvcm1hdDsKKysg IGludCB2aWRlb19zdHJpZGU7CisKKyAgIHVpbnQ2NF90IGxhc3RfZnJhbWVfdGltZXN0YW1wX3Vz OworCitAQCAtMTEyLDggKzEwNCw2IEBAIEdfREVGSU5FX1RZUEVfV0lUSF9DT0RFIChNZXRhU2Ny ZWVuQ2FzdFN0cmVhbVNyYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfaW5pdF9pbml0YWJsZV9pZmFj ZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgR19BRERfUFJJVkFURSAoTWV0YVNjcmVlbkNh c3RTdHJlYW1TcmMpKQorCistI2RlZmluZSBQUk9QX1JBTkdFKG1pbiwgbWF4KSAyLCAobWluKSwg KG1heCkKKy0KKyBzdGF0aWMgdm9pZAorIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRf c3BlY3MgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICpzcmMsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgKndpZHRoLAorQEAg LTI4Niw5ICsyNzYsNiBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfc2V0X2VtcHR5X2N1 cnNvcl9zcHJpdGVfbWV0YWRhdGEgKE1ldGFTY3JlZW5DYXN0U3RyZQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICAgICAg ICAgICAgICAgICAgICAgIHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgeSkKKyB7 CistICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1ByaXZhdGUgKnByaXYgPQorLSAgICBtZXRhX3Nj cmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0X2luc3RhbmNlX3ByaXZhdGUgKHNyYyk7CistICBNZXRh U3BhVHlwZSAqc3BhX3R5cGUgPSAmcHJpdi0+c3BhX3R5cGU7CisgICBzdHJ1Y3Qgc3BhX21ldGFf Yml0bWFwICpzcGFfbWV0YV9iaXRtYXA7CisKKyAgIHNwYV9tZXRhX2N1cnNvci0+aWQgPSAxOwor QEAgLTMwMCw3ICsyODcsNyBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfc2V0X2VtcHR5 X2N1cnNvcl9zcHJpdGVfbWV0YWRhdGEgKE1ldGFTY3JlZW5DYXN0U3RyZQorICAgc3BhX21ldGFf Yml0bWFwID0gU1BBX01FTUJFUiAoc3BhX21ldGFfY3Vyc29yLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgc3BhX21ldGFfY3Vyc29yLT5iaXRtYXBfb2Zmc2V0LAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHNwYV9tZXRhX2JpdG1hcCk7CistICBzcGFf bWV0YV9iaXRtYXAtPmZvcm1hdCA9IHNwYV90eXBlLT52aWRlb19mb3JtYXQuUkdCQTsKKysgIHNw YV9tZXRhX2JpdG1hcC0+Zm9ybWF0ID0gU1BBX1ZJREVPX0ZPUk1BVF9SR0JBOworICAgc3BhX21l dGFfYml0bWFwLT5vZmZzZXQgPSBzaXplb2YgKHN0cnVjdCBzcGFfbWV0YV9iaXRtYXApOworCisg ICBzcGFfbWV0YV9jdXJzb3ItPmhvdHNwb3QueCA9IDA7CitAQCAtMzE3LDkgKzMwNCw2IEBAIG1l dGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19zZXRfY3Vyc29yX3Nwcml0ZV9tZXRhZGF0YSAoTWV0 YVNjcmVlbkNhc3RTdHJlYW1TcmMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGludCAgICAgICAgICAgICAgICAgICAgICB5LAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQg ICAgICAgICAgICAgICAgICAgIHNjYWxlKQorIHsKKy0gIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3Jj UHJpdmF0ZSAqcHJpdiA9CistICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5z dGFuY2VfcHJpdmF0ZSAoc3JjKTsKKy0gIE1ldGFTcGFUeXBlICpzcGFfdHlwZSA9ICZwcml2LT5z cGFfdHlwZTsKKyAgIENvZ2xUZXh0dXJlICpjdXJzb3JfdGV4dHVyZTsKKyAgIHN0cnVjdCBzcGFf bWV0YV9iaXRtYXAgKnNwYV9tZXRhX2JpdG1hcDsKKyAgIGludCBob3RzcG90X3gsIGhvdHNwb3Rf eTsKK0BAIC0zNDYsNyArMzMwLDcgQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX3NldF9j dXJzb3Jfc3ByaXRlX21ldGFkYXRhIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYworICAgc3BhX21l dGFfYml0bWFwID0gU1BBX01FTUJFUiAoc3BhX21ldGFfY3Vyc29yLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgc3BhX21ldGFfY3Vyc29yLT5iaXRtYXBfb2Zmc2V0LAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHNwYV9tZXRhX2JpdG1hcCk7CistICBz cGFfbWV0YV9iaXRtYXAtPmZvcm1hdCA9IHNwYV90eXBlLT52aWRlb19mb3JtYXQuUkdCQTsKKysg IHNwYV9tZXRhX2JpdG1hcC0+Zm9ybWF0ID0gU1BBX1ZJREVPX0ZPUk1BVF9SR0JBOworICAgc3Bh X21ldGFfYml0bWFwLT5vZmZzZXQgPSBzaXplb2YgKHN0cnVjdCBzcGFfbWV0YV9iaXRtYXApOwor CisgICBtZXRhX2N1cnNvcl9zcHJpdGVfZ2V0X2hvdHNwb3QgKGN1cnNvcl9zcHJpdGUsICZob3Rz cG90X3gsICZob3RzcG90X3kpOworQEAgLTM4MiwxMiArMzY2LDEwIEBAIHN0YXRpYyB2b2lkCisg YWRkX2N1cnNvcl9tZXRhZGF0YSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgKnNyYywKKyAgICAg ICAgICAgICAgICAgICAgICBzdHJ1Y3Qgc3BhX2J1ZmZlciAgICAgICAqc3BhX2J1ZmZlcikKKyB7 CistICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1ByaXZhdGUgKnByaXYgPQorLSAgICBtZXRhX3Nj cmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0X2luc3RhbmNlX3ByaXZhdGUgKHNyYyk7CistICBNZXRh U3BhVHlwZSAqc3BhX3R5cGUgPSAmcHJpdi0+c3BhX3R5cGU7CisgICBzdHJ1Y3Qgc3BhX21ldGFf Y3Vyc29yICpzcGFfbWV0YV9jdXJzb3I7CisKKy0gIHNwYV9tZXRhX2N1cnNvciA9IHNwYV9idWZm ZXJfZmluZF9tZXRhIChzcGFfYnVmZmVyLCBzcGFfdHlwZS0+bWV0YV9jdXJzb3IpOworKyAgc3Bh X21ldGFfY3Vyc29yID0gc3BhX2J1ZmZlcl9maW5kX21ldGFfZGF0YSAoc3BhX2J1ZmZlciwgU1BB X01FVEFfQ3Vyc29yLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgc2l6ZW9mICgqc3BhX21ldGFfY3Vyc29yKSk7CisgICBpZiAoc3BhX21ldGFfY3Vyc29y KQorICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfc2V0X2N1cnNvcl9tZXRhZGF0YSAo c3JjLCBzcGFfbWV0YV9jdXJzb3IpOworIH0KK0BAIC00NDcsMTQgKzQyOSwxNCBAQCBtZXRhX3Nj cmVlbl9jYXN0X3N0cmVhbV9zcmNfbWF5YmVfcmVjb3JkX2ZyYW1lIChNZXRhU2NyZWVuQ2FzdFN0 cmVhbVNyYyAqc3JjKQorICAgICB7CisgICAgICAgZGF0YSA9IHNwYV9idWZmZXItPmRhdGFzWzBd LmRhdGE7CisgICAgIH0KKy0gIGVsc2UgaWYgKHNwYV9idWZmZXItPmRhdGFzWzBdLnR5cGUgPT0g cHJpdi0+cGlwZXdpcmVfdHlwZS0+ZGF0YS5NZW1GZCkKKysgIGVsc2UgaWYgKHNwYV9idWZmZXIt PmRhdGFzWzBdLnR5cGUgPT0gU1BBX0RBVEFfTWVtRmQpCisgICAgIHsKKyAgICAgICBtYXAgPSBt bWFwIChOVUxMLCBzcGFfYnVmZmVyLT5kYXRhc1swXS5tYXhzaXplICsgc3BhX2J1ZmZlci0+ZGF0 YXNbMF0ubWFwb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgIFBST1RfUkVBRCB8IFBST1RfV1JJ VEUsIE1BUF9TSEFSRUQsCisgICAgICAgICAgICAgICAgICAgc3BhX2J1ZmZlci0+ZGF0YXNbMF0u ZmQsIDApOworICAgICAgIGlmIChtYXAgPT0gTUFQX0ZBSUxFRCkKKyAgICAgICAgIHsKKy0gICAg ICAgICAgZ193YXJuaW5nICgiRmFpbGVkIHRvIG1tYXAgcGlwZXdpcmUgc3RyZWFtIGJ1ZmZlcjog JXNcbiIsCisrICAgICAgICAgIGdfd2FybmluZyAoIkZhaWxlZCB0byBtbWFwIHBpcGV3aXJlIHN0 cmVhbSBidWZmZXI6ICVzIiwKKyAgICAgICAgICAgICAgICAgICAgICBzdHJlcnJvciAoZXJybm8p KTsKKyAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgfQorQEAgLTQ2OSwyOCArNDUxLDMwIEBA IG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19tYXliZV9yZWNvcmRfZnJhbWUgKE1ldGFTY3Jl ZW5DYXN0U3RyZWFtU3JjICpzcmMpCisKKyAgIGlmIChtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9z cmNfcmVjb3JkX2ZyYW1lIChzcmMsIGRhdGEpKQorICAgICB7CistICAgICAgc3RydWN0IHNwYV9t ZXRhX3ZpZGVvX2Nyb3AgKnNwYV9tZXRhX3ZpZGVvX2Nyb3A7CisrICAgICAgc3RydWN0IHNwYV9t ZXRhX3JlZ2lvbiAqc3BhX21ldGFfdmlkZW9fY3JvcDsKKworICAgICAgIHNwYV9idWZmZXItPmRh dGFzWzBdLmNodW5rLT5zaXplID0gc3BhX2J1ZmZlci0+ZGF0YXNbMF0ubWF4c2l6ZTsKKysgICAg ICBzcGFfYnVmZmVyLT5kYXRhc1swXS5jaHVuay0+c3RyaWRlID0gcHJpdi0+dmlkZW9fc3RyaWRl OworCisgICAgICAgLyogVXBkYXRlIFZpZGVvQ3JvcCBpZiBuZWVkZWQgKi8KKyAgICAgICBzcGFf bWV0YV92aWRlb19jcm9wID0KKy0gICAgICAgIHNwYV9idWZmZXJfZmluZF9tZXRhIChzcGFfYnVm ZmVyLCBwcml2LT5waXBld2lyZV90eXBlLT5tZXRhLlZpZGVvQ3JvcCk7CisrICAgICAgICBzcGFf YnVmZmVyX2ZpbmRfbWV0YV9kYXRhIChzcGFfYnVmZmVyLCBTUEFfTUVUQV9WaWRlb0Nyb3AsCisr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YgKCpzcGFfbWV0YV92aWRl b19jcm9wKSk7CisgICAgICAgaWYgKHNwYV9tZXRhX3ZpZGVvX2Nyb3ApCisgICAgICAgICB7Cisg ICAgICAgICAgIGlmIChtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0X3ZpZGVvY3JvcCAo c3JjLCAmY3JvcF9yZWN0KSkKKyAgICAgICAgICAgICB7CistICAgICAgICAgICAgICBzcGFfbWV0 YV92aWRlb19jcm9wLT54ID0gY3JvcF9yZWN0Lng7CistICAgICAgICAgICAgICBzcGFfbWV0YV92 aWRlb19jcm9wLT55ID0gY3JvcF9yZWN0Lnk7CistICAgICAgICAgICAgICBzcGFfbWV0YV92aWRl b19jcm9wLT53aWR0aCA9IGNyb3BfcmVjdC53aWR0aDsKKy0gICAgICAgICAgICAgIHNwYV9tZXRh X3ZpZGVvX2Nyb3AtPmhlaWdodCA9IGNyb3BfcmVjdC5oZWlnaHQ7CisrICAgICAgICAgICAgICBz cGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24ucG9zaXRpb24ueCA9IGNyb3BfcmVjdC54OworKyAg ICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnBvc2l0aW9uLnkgPSBjcm9w X3JlY3QueTsKKysgICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5zaXpl LndpZHRoID0gY3JvcF9yZWN0LndpZHRoOworKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9f Y3JvcC0+cmVnaW9uLnNpemUuaGVpZ2h0ID0gY3JvcF9yZWN0LmhlaWdodDsKKyAgICAgICAgICAg ICB9CisgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICB7CistICAgICAgICAgICAgICBzcGFf bWV0YV92aWRlb19jcm9wLT54ID0gMDsKKy0gICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Ny b3AtPnkgPSAwOworLSAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+d2lkdGggPSBw cml2LT5zdHJlYW1fd2lkdGg7CistICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5o ZWlnaHQgPSBwcml2LT5zdHJlYW1faGVpZ2h0OworKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlk ZW9fY3JvcC0+cmVnaW9uLnBvc2l0aW9uLnggPSAwOworKyAgICAgICAgICAgICAgc3BhX21ldGFf dmlkZW9fY3JvcC0+cmVnaW9uLnBvc2l0aW9uLnkgPSAwOworKyAgICAgICAgICAgICAgc3BhX21l dGFfdmlkZW9fY3JvcC0+cmVnaW9uLnNpemUud2lkdGggPSBwcml2LT5zdHJlYW1fd2lkdGg7Cisr ICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24uc2l6ZS5oZWlnaHQgPSBw cml2LT5zdHJlYW1faGVpZ2h0OworICAgICAgICAgICAgIH0KKyAgICAgICAgIH0KKyAgICAgfQor QEAgLTU1NSw3ICs1MzksNiBAQCBvbl9zdHJlYW1fc3RhdGVfY2hhbmdlZCAodm9pZCAgICAgICAg ICAgICAgICAgKmRhdGEsCisgICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjID0gZGF0YTsK KyAgIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZSAqcHJpdiA9CisgICAgIG1ldGFfc2Ny ZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKKy0gIHVpbnQz Ml90IG5vZGVfaWQ7CisKKyAgIHN3aXRjaCAoc3RhdGUpCisgICAgIHsKK0BAIC01NjMsMTQgKzU0 NiwxMiBAQCBvbl9zdHJlYW1fc3RhdGVfY2hhbmdlZCAodm9pZCAgICAgICAgICAgICAgICAgKmRh dGEsCisgICAgICAgZ193YXJuaW5nICgicGlwZXdpcmUgc3RyZWFtIGVycm9yOiAlcyIsIGVycm9y X21lc3NhZ2UpOworICAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19ub3RpZnlfY2xv c2VkIChzcmMpOworICAgICAgIGJyZWFrOworLSAgICBjYXNlIFBXX1NUUkVBTV9TVEFURV9DT05G SUdVUkU6CistICAgICAgbm9kZV9pZCA9IHB3X3N0cmVhbV9nZXRfbm9kZV9pZCAocHJpdi0+cGlw ZXdpcmVfc3RyZWFtKTsKKy0gICAgICBnX3NpZ25hbF9lbWl0IChzcmMsIHNpZ25hbHNbUkVBRFld LCAwLCAodW5zaWduZWQgaW50KSBub2RlX2lkKTsKKy0gICAgICBicmVhazsKKy0gICAgY2FzZSBQ V19TVFJFQU1fU1RBVEVfVU5DT05ORUNURUQ6CistICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRFX0NP Tk5FQ1RJTkc6CistICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRFX1JFQURZOgorICAgICBjYXNlIFBX X1NUUkVBTV9TVEFURV9QQVVTRUQ6CisrICAgICAgaWYgKHByaXYtPm5vZGVfaWQgPT0gU1BBX0lE X0lOVkFMSUQgJiYgcHJpdi0+cGlwZXdpcmVfc3RyZWFtKQorKyAgICAgICAgeworKyAgICAgICAg ICBwcml2LT5ub2RlX2lkID0gcHdfc3RyZWFtX2dldF9ub2RlX2lkIChwcml2LT5waXBld2lyZV9z dHJlYW0pOworKyAgICAgICAgICBnX3NpZ25hbF9lbWl0IChzcmMsIHNpZ25hbHNbUkVBRFldLCAw LCAodW5zaWduZWQgaW50KSBwcml2LT5ub2RlX2lkKTsKKysgICAgICAgIH0KKyAgICAgICBpZiAo bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2lzX2VuYWJsZWQgKHNyYykpCisgICAgICAgICBt ZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZGlzYWJsZSAoc3JjKTsKKyAgICAgICBicmVhazsK K0BAIC01NzgsNjggKzU1OSw2OSBAQCBvbl9zdHJlYW1fc3RhdGVfY2hhbmdlZCAodm9pZCAgICAg ICAgICAgICAgICAgKmRhdGEsCisgICAgICAgaWYgKCFtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9z cmNfaXNfZW5hYmxlZCAoc3JjKSkKKyAgICAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3Ny Y19lbmFibGUgKHNyYyk7CisgICAgICAgYnJlYWs7CisrICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRF X1VOQ09OTkVDVEVEOgorKyAgICBjYXNlIFBXX1NUUkVBTV9TVEFURV9DT05ORUNUSU5HOgorKyAg ICAgIGJyZWFrOworICAgICB9CisgfQorCisgc3RhdGljIHZvaWQKKy1vbl9zdHJlYW1fZm9ybWF0 X2NoYW5nZWQgKHZvaWQgICAgICAgICAgICAgICAgICpkYXRhLAorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3Qgc3RydWN0IHNwYV9wb2QgKmZvcm1hdCkKKytvbl9zdHJlYW1fcGFyYW1f Y2hhbmdlZCAodm9pZCAgICAgICAgICAgICAgICAgKmRhdGEsCisrICAgICAgICAgICAgICAgICAg ICAgICAgIHVpbnQzMl90ICAgICAgICAgICAgICBpZCwKKysgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3Qgc3RydWN0IHNwYV9wb2QgKmZvcm1hdCkKKyB7CisgICBNZXRhU2NyZWVuQ2FzdFN0 cmVhbVNyYyAqc3JjID0gZGF0YTsKKyAgIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZSAq cHJpdiA9CisgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFuY2VfcHJp dmF0ZSAoc3JjKTsKKy0gIHN0cnVjdCBwd190eXBlICpwaXBld2lyZV90eXBlID0gcHJpdi0+cGlw ZXdpcmVfdHlwZTsKKyAgIHVpbnQ4X3QgcGFyYW1zX2J1ZmZlclsxMDI0XTsKKyAgIGludDMyX3Qg d2lkdGgsIGhlaWdodCwgc3RyaWRlLCBzaXplOworICAgc3RydWN0IHNwYV9wb2RfYnVpbGRlciBw b2RfYnVpbGRlcjsKKyAgIGNvbnN0IHN0cnVjdCBzcGFfcG9kICpwYXJhbXNbM107CisgICBjb25z dCBpbnQgYnBwID0gNDsKKworLSAgaWYgKCFmb3JtYXQpCistICAgIHsKKy0gICAgICBwd19zdHJl YW1fZmluaXNoX2Zvcm1hdCAocHJpdi0+cGlwZXdpcmVfc3RyZWFtLCAwLCBOVUxMLCAwKTsKKy0g ICAgICByZXR1cm47CistICAgIH0KKysgIGlmICghZm9ybWF0IHx8IGlkICE9IFNQQV9QQVJBTV9G b3JtYXQpCisrICAgIHJldHVybjsKKworICAgc3BhX2Zvcm1hdF92aWRlb19yYXdfcGFyc2UgKGZv cm1hdCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJpdi0+dmlkZW9fZm9ybWF0 LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcml2LT5zcGFfdHlwZS5mb3JtYXRf dmlkZW8pOworKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcml2LT52aWRlb19mb3Jt YXQpOworCisgICB3aWR0aCA9IHByaXYtPnZpZGVvX2Zvcm1hdC5zaXplLndpZHRoOworICAgaGVp Z2h0ID0gcHJpdi0+dmlkZW9fZm9ybWF0LnNpemUuaGVpZ2h0OworICAgc3RyaWRlID0gU1BBX1JP VU5EX1VQX04gKHdpZHRoICogYnBwLCA0KTsKKyAgIHNpemUgPSBoZWlnaHQgKiBzdHJpZGU7CisK KysgIHByaXYtPnZpZGVvX3N0cmlkZSA9IHN0cmlkZTsKKysKKyAgIHBvZF9idWlsZGVyID0gU1BB X1BPRF9CVUlMREVSX0lOSVQgKHBhcmFtc19idWZmZXIsIHNpemVvZiAocGFyYW1zX2J1ZmZlcikp OworCistICBwYXJhbXNbMF0gPSBzcGFfcG9kX2J1aWxkZXJfb2JqZWN0ICgKKysgIHBhcmFtc1sw XSA9IHNwYV9wb2RfYnVpbGRlcl9hZGRfb2JqZWN0ICgKKyAgICAgJnBvZF9idWlsZGVyLAorLSAg ICBwaXBld2lyZV90eXBlLT5wYXJhbS5pZEJ1ZmZlcnMsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX2J1 ZmZlcnMuQnVmZmVycywKKy0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9idWZmZXJzLnNp emUsICJpIiwgc2l6ZSwKKy0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9idWZmZXJzLnN0 cmlkZSwgImkiLCBzdHJpZGUsCistICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fYnVmZmVy cy5idWZmZXJzLCAiaXJ1IiwgMTYsIFBST1BfUkFOR0UgKDIsIDE2KSwKKy0gICAgIjoiLCBwaXBl d2lyZV90eXBlLT5wYXJhbV9idWZmZXJzLmFsaWduLCAiaSIsIDE2KTsKKy0KKy0gIHBhcmFtc1sx XSA9IHNwYV9wb2RfYnVpbGRlcl9vYmplY3QgKAorKyAgICBTUEFfVFlQRV9PQkpFQ1RfUGFyYW1C dWZmZXJzLCBTUEFfUEFSQU1fQnVmZmVycywKKysgICAgU1BBX1BBUkFNX0JVRkZFUlNfYnVmZmVy cywgU1BBX1BPRF9DSE9JQ0VfUkFOR0VfSW50ICgxNiwgMiwgMTYpLAorKyAgICBTUEFfUEFSQU1f QlVGRkVSU19ibG9ja3MsIFNQQV9QT0RfSW50ICgxKSwKKysgICAgU1BBX1BBUkFNX0JVRkZFUlNf c2l6ZSwgU1BBX1BPRF9JbnQgKHNpemUpLAorKyAgICBTUEFfUEFSQU1fQlVGRkVSU19zdHJpZGUs IFNQQV9QT0RfSW50IChzdHJpZGUpLAorKyAgICBTUEFfUEFSQU1fQlVGRkVSU19hbGlnbiwgU1BB X1BPRF9JbnQgKDE2KSk7CisrCisrICBwYXJhbXNbMV0gPSBzcGFfcG9kX2J1aWxkZXJfYWRkX29i amVjdCAoCisgICAgICZwb2RfYnVpbGRlciwKKy0gICAgcGlwZXdpcmVfdHlwZS0+cGFyYW0uaWRN ZXRhLCBwaXBld2lyZV90eXBlLT5wYXJhbV9tZXRhLk1ldGEsCistICAgICI6IiwgcGlwZXdpcmVf dHlwZS0+cGFyYW1fbWV0YS50eXBlLCAiSSIsIHBpcGV3aXJlX3R5cGUtPm1ldGEuVmlkZW9Dcm9w LAorLSAgICAiOiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX21ldGEuc2l6ZSwgImkiLCBzaXplb2Yg KHN0cnVjdCBzcGFfbWV0YV92aWRlb19jcm9wKSk7CisrICAgIFNQQV9UWVBFX09CSkVDVF9QYXJh bU1ldGEsIFNQQV9QQVJBTV9NZXRhLAorKyAgICBTUEFfUEFSQU1fTUVUQV90eXBlLCBTUEFfUE9E X0lkIChTUEFfTUVUQV9WaWRlb0Nyb3ApLAorKyAgICBTUEFfUEFSQU1fTUVUQV9zaXplLCBTUEFf UE9EX0ludCAoc2l6ZW9mIChzdHJ1Y3Qgc3BhX21ldGFfcmVnaW9uKSkpOworCistICBwYXJhbXNb Ml0gPSBzcGFfcG9kX2J1aWxkZXJfb2JqZWN0ICgKKysgIHBhcmFtc1syXSA9IHNwYV9wb2RfYnVp bGRlcl9hZGRfb2JqZWN0ICgKKyAgICAgJnBvZF9idWlsZGVyLAorLSAgICBwaXBld2lyZV90eXBl LT5wYXJhbS5pZE1ldGEsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX21ldGEuTWV0YSwKKy0gICAgIjoi LCBwaXBld2lyZV90eXBlLT5wYXJhbV9tZXRhLnR5cGUsICJJIiwgcHJpdi0+c3BhX3R5cGUubWV0 YV9jdXJzb3IsCistICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fbWV0YS5zaXplLCAiaSIs IENVUlNPUl9NRVRBX1NJWkUgKDY0LCA2NCkpOworKyAgICBTUEFfVFlQRV9PQkpFQ1RfUGFyYW1N ZXRhLCBTUEFfUEFSQU1fTWV0YSwKKysgICAgU1BBX1BBUkFNX01FVEFfdHlwZSwgU1BBX1BPRF9J ZCAoU1BBX01FVEFfQ3Vyc29yKSwKKysgICAgU1BBX1BBUkFNX01FVEFfc2l6ZSwgU1BBX1BPRF9J bnQgKENVUlNPUl9NRVRBX1NJWkUgKDY0LCA2NCkpKTsKKworLSAgcHdfc3RyZWFtX2ZpbmlzaF9m b3JtYXQgKHByaXYtPnBpcGV3aXJlX3N0cmVhbSwgMCwKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICBwYXJhbXMsIEdfTl9FTEVNRU5UUyAocGFyYW1zKSk7CisrICBwd19zdHJlYW1fdXBkYXRl X3BhcmFtcyAocHJpdi0+cGlwZXdpcmVfc3RyZWFtLCBwYXJhbXMsIEdfTl9FTEVNRU5UUyAocGFy YW1zKSk7CisgfQorCisgc3RhdGljIGNvbnN0IHN0cnVjdCBwd19zdHJlYW1fZXZlbnRzIHN0cmVh bV9ldmVudHMgPSB7CisgICBQV19WRVJTSU9OX1NUUkVBTV9FVkVOVFMsCisgICAuc3RhdGVfY2hh bmdlZCA9IG9uX3N0cmVhbV9zdGF0ZV9jaGFuZ2VkLAorLSAgLmZvcm1hdF9jaGFuZ2VkID0gb25f c3RyZWFtX2Zvcm1hdF9jaGFuZ2VkLAorKyAgLnBhcmFtX2NoYW5nZWQgPSBvbl9zdHJlYW1fcGFy YW1fY2hhbmdlZCwKKyB9OworCisgc3RhdGljIHN0cnVjdCBwd19zdHJlYW0gKgorQEAgLTY1Miw4 ICs2MzQsNiBAQCBjcmVhdGVfcGlwZXdpcmVfc3RyZWFtIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNy YyAgKnNyYywKKyAgIHVpbnQ4X3QgYnVmZmVyWzEwMjRdOworICAgc3RydWN0IHNwYV9wb2RfYnVp bGRlciBwb2RfYnVpbGRlciA9CisgICAgIFNQQV9QT0RfQlVJTERFUl9JTklUIChidWZmZXIsIHNp emVvZiAoYnVmZmVyKSk7CistICBNZXRhU3BhVHlwZSAqc3BhX3R5cGUgPSAmcHJpdi0+c3BhX3R5 cGU7CistICBzdHJ1Y3QgcHdfdHlwZSAqcGlwZXdpcmVfdHlwZSA9IHByaXYtPnBpcGV3aXJlX3R5 cGU7CisgICBmbG9hdCBmcmFtZV9yYXRlOworICAgTWV0YUZyYWN0aW9uIGZyYW1lX3JhdGVfZnJh Y3Rpb247CisgICBzdHJ1Y3Qgc3BhX2ZyYWN0aW9uIG1heF9mcmFtZXJhdGU7CitAQCAtNjYxLDcg KzY0MSw5IEBAIGNyZWF0ZV9waXBld2lyZV9zdHJlYW0gKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3Jj ICAqc3JjLAorICAgY29uc3Qgc3RydWN0IHNwYV9wb2QgKnBhcmFtc1sxXTsKKyAgIGludCByZXN1 bHQ7CisKKy0gIHBpcGV3aXJlX3N0cmVhbSA9IHB3X3N0cmVhbV9uZXcgKHByaXYtPnBpcGV3aXJl X3JlbW90ZSwKKysgIHByaXYtPm5vZGVfaWQgPSBTUEFfSURfSU5WQUxJRDsKKysKKysgIHBpcGV3 aXJlX3N0cmVhbSA9IHB3X3N0cmVhbV9uZXcgKHByaXYtPnBpcGV3aXJlX2NvcmUsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWV0YS1zY3JlZW4tY2FzdC1zcmMiLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgICBpZiAoIXBpcGV3aXJl X3N0cmVhbSkKK0BAIC02ODIsMTcgKzY2NCwxNyBAQCBjcmVhdGVfcGlwZXdpcmVfc3RyZWFtIChN ZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAgKnNyYywKKyAgIG1heF9mcmFtZXJhdGUgPSBTUEFfRlJB Q1RJT04gKGZyYW1lX3JhdGVfZnJhY3Rpb24ubnVtLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZnJhbWVfcmF0ZV9mcmFjdGlvbi5kZW5vbSk7CisKKy0gIHBhcmFtc1swXSA9IHNw YV9wb2RfYnVpbGRlcl9vYmplY3QgKAorKyAgcGFyYW1zWzBdID0gc3BhX3BvZF9idWlsZGVyX2Fk ZF9vYmplY3QgKAorICAgICAmcG9kX2J1aWxkZXIsCistICAgIHBpcGV3aXJlX3R5cGUtPnBhcmFt LmlkRW51bUZvcm1hdCwgcGlwZXdpcmVfdHlwZS0+c3BhX2Zvcm1hdCwKKy0gICAgIkkiLCBzcGFf dHlwZS0+bWVkaWFfdHlwZS52aWRlbywKKy0gICAgIkkiLCBzcGFfdHlwZS0+bWVkaWFfc3VidHlw ZS5yYXcsCistICAgICI6Iiwgc3BhX3R5cGUtPmZvcm1hdF92aWRlby5mb3JtYXQsICJJIiwgc3Bh X3R5cGUtPnZpZGVvX2Zvcm1hdC5CR1J4LAorLSAgICAiOiIsIHNwYV90eXBlLT5mb3JtYXRfdmlk ZW8uc2l6ZSwgIlIiLCAmU1BBX1JFQ1RBTkdMRSAocHJpdi0+c3RyZWFtX3dpZHRoLAorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJp di0+c3RyZWFtX2hlaWdodCksCistICAgICI6Iiwgc3BhX3R5cGUtPmZvcm1hdF92aWRlby5mcmFt ZXJhdGUsICJGIiwgJlNQQV9GUkFDVElPTiAoMCwgMSksCistICAgICI6Iiwgc3BhX3R5cGUtPmZv cm1hdF92aWRlby5tYXhfZnJhbWVyYXRlLCAiRnJ1IiwgJm1heF9mcmFtZXJhdGUsCistICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUFJPUF9SQU5H RSAoJm1pbl9mcmFtZXJhdGUsCisrICAgIFNQQV9UWVBFX09CSkVDVF9Gb3JtYXQsIFNQQV9QQVJB TV9FbnVtRm9ybWF0LAorKyAgICBTUEFfRk9STUFUX21lZGlhVHlwZSwgU1BBX1BPRF9JZCAoU1BB X01FRElBX1RZUEVfdmlkZW8pLAorKyAgICBTUEFfRk9STUFUX21lZGlhU3VidHlwZSwgU1BBX1BP RF9JZCAoU1BBX01FRElBX1NVQlRZUEVfcmF3KSwKKysgICAgU1BBX0ZPUk1BVF9WSURFT19mb3Jt YXQsIFNQQV9QT0RfSWQgKFNQQV9WSURFT19GT1JNQVRfQkdSeCksCisrICAgIFNQQV9GT1JNQVRf VklERU9fc2l6ZSwgU1BBX1BPRF9SZWN0YW5nbGUgKCZTUEFfUkVDVEFOR0xFIChwcml2LT5zdHJl YW1fd2lkdGgsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBwcml2LT5zdHJlYW1faGVpZ2h0KSksCisrICAgIFNQQV9GT1JNQVRf VklERU9fZnJhbWVyYXRlLCBTUEFfUE9EX0ZyYWN0aW9uICgmU1BBX0ZSQUNUSU9OICgwLCAxKSks CisrICAgIFNQQV9GT1JNQVRfVklERU9fbWF4RnJhbWVyYXRlLCBTUEFfUE9EX0NIT0lDRV9SQU5H RV9GcmFjdGlvbiAoJm1heF9mcmFtZXJhdGUsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1pbl9mcmFtZXJhdGUsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJm1heF9mcmFtZXJhdGUpKTsKKworICAgcHdfc3RyZWFtX2FkZF9saXN0ZW5lciAo cGlwZXdpcmVfc3RyZWFtLAorQEAgLTcwMiw3ICs2ODQsNyBAQCBjcmVhdGVfcGlwZXdpcmVfc3Ry ZWFtIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAgKnNyYywKKworICAgcmVzdWx0ID0gcHdfc3Ry ZWFtX2Nvbm5lY3QgKHBpcGV3aXJlX3N0cmVhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBQV19ESVJFQ1RJT05fT1VUUFVULAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1BBX0lEX0lOVkFMSUQsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFBXX1NUUkVBTV9GTEFHX0RSSVZFUiB8Cisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBXX1NUUkVBTV9GTEFHX01BUF9CVUZGRVJT KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXMsIEdfTl9FTEVNRU5UUyAo cGFyYW1zKSk7CitAQCAtNzE3LDQwICs2OTksMTggQEAgY3JlYXRlX3BpcGV3aXJlX3N0cmVhbSAo TWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgICpzcmMsCisgfQorCisgc3RhdGljIHZvaWQKKy1vbl9z dGF0ZV9jaGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAqZGF0YSwKKy0gICAgICAgICAgICAg ICAgICBlbnVtIHB3X3JlbW90ZV9zdGF0ZSAgb2xkLAorLSAgICAgICAgICAgICAgICAgIGVudW0g cHdfcmVtb3RlX3N0YXRlICBzdGF0ZSwKKy0gICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICAg ICAgICAgICAqZXJyb3JfbWVzc2FnZSkKKytvbl9jb3JlX2Vycm9yICh2b2lkICAgICAgICpkYXRh LAorKyAgICAgICAgICAgICAgIHVpbnQzMl90ICAgIGlkLAorKwkgICAgICAgaW50ICAgICAgICAg c2VxLAorKwkgICAgICAgaW50ICAgICAgICAgcmVzLAorKwkgICAgICAgY29uc3QgY2hhciAqbWVz c2FnZSkKKyB7CisgICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjID0gZGF0YTsKKy0gIE1l dGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZSAqcHJpdiA9CistICAgIG1ldGFfc2NyZWVuX2Nh c3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKKy0gIHN0cnVjdCBwd19z dHJlYW0gKnBpcGV3aXJlX3N0cmVhbTsKKy0gIEdFcnJvciAqZXJyb3IgPSBOVUxMOworCistICBz d2l0Y2ggKHN0YXRlKQorLSAgICB7CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0VSUk9SOgor LSAgICAgIGdfd2FybmluZyAoInBpcGV3aXJlIHJlbW90ZSBlcnJvcjogJXNcbiIsIGVycm9yX21l c3NhZ2UpOworLSAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19ub3RpZnlfY2xvc2Vk IChzcmMpOworLSAgICAgIGJyZWFrOworLSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9DT05ORUNU RUQ6CistICAgICAgcGlwZXdpcmVfc3RyZWFtID0gY3JlYXRlX3BpcGV3aXJlX3N0cmVhbSAoc3Jj LCAmZXJyb3IpOworLSAgICAgIGlmICghcGlwZXdpcmVfc3RyZWFtKQorLSAgICAgICAgeworLSAg ICAgICAgICBnX3dhcm5pbmcgKCJDb3VsZCBub3QgY3JlYXRlIHBpcGV3aXJlIHN0cmVhbTogJXMi LCBlcnJvci0+bWVzc2FnZSk7CistICAgICAgICAgIGdfZXJyb3JfZnJlZSAoZXJyb3IpOworLSAg ICAgICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfbm90aWZ5X2Nsb3NlZCAoc3JjKTsK Ky0gICAgICAgIH0KKy0gICAgICBlbHNlCistICAgICAgICB7CistICAgICAgICAgIHByaXYtPnBp cGV3aXJlX3N0cmVhbSA9IHBpcGV3aXJlX3N0cmVhbTsKKy0gICAgICAgIH0KKy0gICAgICBicmVh azsKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfVU5DT05ORUNURUQ6CistICAgIGNhc2UgUFdf UkVNT1RFX1NUQVRFX0NPTk5FQ1RJTkc6CistICAgICAgYnJlYWs7CistICAgIH0KKysgIGdfd2Fy bmluZyAoInBpcGV3aXJlIHJlbW90ZSBlcnJvcjogaWQ6JXUgJXMiLCBpZCwgbWVzc2FnZSk7Cisr CisrICBpZiAoaWQgPT0gUFdfSURfQ09SRSAmJiByZXMgPT0gLUVQSVBFKQorKyAgICBtZXRhX3Nj cmVlbl9jYXN0X3N0cmVhbV9zcmNfbm90aWZ5X2Nsb3NlZCAoc3JjKTsKKyB9CisKKyBzdGF0aWMg Z2Jvb2xlYW4KK0BAIC03OTMsMTcgKzc1Myw2IEBAIHN0YXRpYyBHU291cmNlRnVuY3MgcGlwZXdp cmVfc291cmNlX2Z1bmNzID0KKyAgIHBpcGV3aXJlX2xvb3Bfc291cmNlX2ZpbmFsaXplCisgfTsK KworLXN0YXRpYyB2b2lkCistaW5pdF9zcGFfdHlwZSAoTWV0YVNwYVR5cGUgICAgICAgICAqdHlw ZSwKKy0gICAgICAgICAgICAgICBzdHJ1Y3Qgc3BhX3R5cGVfbWFwICptYXApCisteworLSAgc3Bh X3R5cGVfbWVkaWFfdHlwZV9tYXAgKG1hcCwgJnR5cGUtPm1lZGlhX3R5cGUpOworLSAgc3BhX3R5 cGVfbWVkaWFfc3VidHlwZV9tYXAgKG1hcCwgJnR5cGUtPm1lZGlhX3N1YnR5cGUpOworLSAgc3Bh X3R5cGVfZm9ybWF0X3ZpZGVvX21hcCAobWFwLCAmdHlwZS0+Zm9ybWF0X3ZpZGVvKTsKKy0gIHNw YV90eXBlX3ZpZGVvX2Zvcm1hdF9tYXAgKG1hcCwgJnR5cGUtPnZpZGVvX2Zvcm1hdCk7CistICB0 eXBlLT5tZXRhX2N1cnNvciA9IHNwYV90eXBlX21hcF9nZXRfaWQobWFwLCBTUEFfVFlQRV9NRVRB X19DdXJzb3IpOworLX0KKy0KKyBzdGF0aWMgTWV0YVBpcGVXaXJlU291cmNlICoKKyBjcmVhdGVf cGlwZXdpcmVfc291cmNlICh2b2lkKQorIHsKK0BAIC04MjksOSArNzc4LDkgQEAgY3JlYXRlX3Bp cGV3aXJlX3NvdXJjZSAodm9pZCkKKyAgIHJldHVybiBwaXBld2lyZV9zb3VyY2U7CisgfQorCist c3RhdGljIGNvbnN0IHN0cnVjdCBwd19yZW1vdGVfZXZlbnRzIHJlbW90ZV9ldmVudHMgPSB7Cist ICBQV19WRVJTSU9OX1JFTU9URV9FVkVOVFMsCistICAuc3RhdGVfY2hhbmdlZCA9IG9uX3N0YXRl X2NoYW5nZWQsCisrc3RhdGljIGNvbnN0IHN0cnVjdCBwd19jb3JlX2V2ZW50cyBjb3JlX2V2ZW50 cyA9IHsKKysgIFBXX1ZFUlNJT05fQ09SRV9FVkVOVFMsCisrICAuZXJyb3IgPSBvbl9jb3JlX2Vy cm9yLAorIH07CisKKyBzdGF0aWMgZ2Jvb2xlYW4KK0BAIC04NTEsMzcgKzgwMCwzMSBAQCBtZXRh X3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfaW5pdGFibGVfaW5pdCAoR0luaXRhYmxlICAgICAqaW5p dGFibGUsCisgICAgICAgcmV0dXJuIEZBTFNFOworICAgICB9CisKKy0gIHByaXYtPnBpcGV3aXJl X2NvcmUgPSBwd19jb3JlX25ldyAocHJpdi0+cGlwZXdpcmVfc291cmNlLT5waXBld2lyZV9sb29w LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKy0gIGlmICgh cHJpdi0+cGlwZXdpcmVfY29yZSkKKysgIHByaXYtPnBpcGV3aXJlX2NvbnRleHQgPSBwd19jb250 ZXh0X25ldyAocHJpdi0+cGlwZXdpcmVfc291cmNlLT5waXBld2lyZV9sb29wLAorKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAwKTsKKysgIGlmICghcHJp di0+cGlwZXdpcmVfY29udGV4dCkKKyAgICAgeworICAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwg R19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICJGYWls ZWQgdG8gY3JlYXRlIHBpcGV3aXJlIGNvcmUiKTsKKysgICAgICAgICAgICAgICAgICAgIkZhaWxl ZCB0byBjcmVhdGUgcGlwZXdpcmUgY29udGV4dCIpOworICAgICAgIHJldHVybiBGQUxTRTsKKyAg ICAgfQorCistICBwcml2LT5waXBld2lyZV9yZW1vdGUgPSBwd19yZW1vdGVfbmV3IChwcml2LT5w aXBld2lyZV9jb3JlLCBOVUxMLCAwKTsKKy0gIGlmICghcHJpdi0+cGlwZXdpcmVfcmVtb3RlKQor KyAgcHJpdi0+cGlwZXdpcmVfY29yZSA9IHB3X2NvbnRleHRfY29ubmVjdCAocHJpdi0+cGlwZXdp cmVfY29udGV4dCwgTlVMTCwgMCk7CisrICBpZiAoIXByaXYtPnBpcGV3aXJlX2NvcmUpCisgICAg IHsKKyAgICAgICBnX3NldF9lcnJvciAoZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJ TEVELAorLSAgICAgICAgICAgICAgICAgICAiQ291bGRuJ3QgY3JlYXQgcGlwZXdpcmUgcmVtb3Rl Iik7CisrICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBjb25uZWN0IHBpcGV3aXJlIGNvbnRl eHQiKTsKKyAgICAgICByZXR1cm4gRkFMU0U7CisgICAgIH0KKworLSAgcHdfcmVtb3RlX2FkZF9s aXN0ZW5lciAocHJpdi0+cGlwZXdpcmVfcmVtb3RlLAorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgJnByaXYtPnBpcGV3aXJlX3JlbW90ZV9saXN0ZW5lciwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICZyZW1vdGVfZXZlbnRzLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjKTsK KysgIHB3X2NvcmVfYWRkX2xpc3RlbmVyIChwcml2LT5waXBld2lyZV9jb3JlLAorKyAgICAgICAg ICAgICAgICAgICAgICAgICZwcml2LT5waXBld2lyZV9jb3JlX2xpc3RlbmVyLAorKyAgICAgICAg ICAgICAgICAgICAgICAgICZjb3JlX2V2ZW50cywKKysgICAgICAgICAgICAgICAgICAgICAgICBz cmMpOworCistICBwcml2LT5waXBld2lyZV90eXBlID0gcHdfY29yZV9nZXRfdHlwZSAocHJpdi0+ cGlwZXdpcmVfY29yZSk7CistICBpbml0X3NwYV90eXBlICgmcHJpdi0+c3BhX3R5cGUsIHByaXYt PnBpcGV3aXJlX3R5cGUtPm1hcCk7CistCistICBpZiAocHdfcmVtb3RlX2Nvbm5lY3QgKHByaXYt PnBpcGV3aXJlX3JlbW90ZSkgIT0gMCkKKy0gICAgeworLSAgICAgIGdfc2V0X2Vycm9yIChlcnJv ciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICJD b3VsZG4ndCBjb25uZWN0IHBpcGV3aXJlIHJlbW90ZSIpOworLSAgICAgIHJldHVybiBGQUxTRTsK Ky0gICAgfQorKyAgcHJpdi0+cGlwZXdpcmVfc3RyZWFtID0gY3JlYXRlX3BpcGV3aXJlX3N0cmVh bSAoc3JjLCBlcnJvcik7CisrICBpZiAoIXByaXYtPnBpcGV3aXJlX3N0cmVhbSkKKysgICAgcmV0 dXJuIEZBTFNFOworCisgICByZXR1cm4gVFJVRTsKKyB9CitAQCAtOTEyLDggKzg1NSw4IEBAIG1l dGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19maW5hbGl6ZSAoR09iamVjdCAqb2JqZWN0KQorICAg ICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZGlzYWJsZSAoc3JjKTsKKworICAgZ19jbGVh cl9wb2ludGVyICgmcHJpdi0+cGlwZXdpcmVfc3RyZWFtLCBwd19zdHJlYW1fZGVzdHJveSk7Cist ICBnX2NsZWFyX3BvaW50ZXIgKCZwcml2LT5waXBld2lyZV9yZW1vdGUsIHB3X3JlbW90ZV9kZXN0 cm95KTsKKy0gIGdfY2xlYXJfcG9pbnRlciAoJnByaXYtPnBpcGV3aXJlX2NvcmUsIHB3X2NvcmVf ZGVzdHJveSk7CisrICBnX2NsZWFyX3BvaW50ZXIgKCZwcml2LT5waXBld2lyZV9jb3JlLCBwd19j b3JlX2Rpc2Nvbm5lY3QpOworKyAgZ19jbGVhcl9wb2ludGVyICgmcHJpdi0+cGlwZXdpcmVfY29u dGV4dCwgcHdfY29udGV4dF9kZXN0cm95KTsKKyAgIGdfc291cmNlX2Rlc3Ryb3kgKCZwcml2LT5w aXBld2lyZV9zb3VyY2UtPmJhc2UpOworCisgICBHX09CSkVDVF9DTEFTUyAobWV0YV9zY3JlZW5f Y2FzdF9zdHJlYW1fc3JjX3BhcmVudF9jbGFzcyktPmZpbmFsaXplIChvYmplY3QpOwpkaWZmIC0t Z2l0IGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL211dHRlci90ZW1wbGF0ZQpp bmRleCA0ZTBiZDMyYjY3ZC4uODA2YTNiZWY5ZjAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbXV0dGVy L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnbXV0dGVyJwogcGtnbmFtZT1tdXR0ZXIKIHZlcnNpb249My4z NC4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0 eWxlPW1lc29uCiBjb25maWd1cmVfYXJncz0iLURlZ2xfZGV2aWNlPXRydWUgLUR1ZGV2PXRydWUg LURuYXRpdmVfYmFja2VuZD10cnVlCg== --===============4995302858925811656==--