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 28579 invoked from network); 30 Apr 2020 20:51:40 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 30 Apr 2020 20:51:40 -0000 Content-Type: multipart/mixed; boundary="===============1367719046604113939==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_pipewire=3A_update_to_0=2E3=2E2?= To: ml@inbox.vuxu.org From: sirn Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Thu, 30 Apr 2020 22:51:40 +0200 List-Id: Message-ID: <20200430205140.2quMpUfU-U4NXXkhlWnu3vYMlwxlxOx6KUD_msgLhF4@z> GitHub notification mails are now in MIME to allow UTF8. --===============1367719046604113939== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgc2lybiBhZ2FpbnN0IG1hc3RlciBv biB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vc2lybi92 b2lkLXBhY2thZ2VzIHBpcGV3aXJlLXVwZGF0ZQpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvMjA0MTMKCnBpcGV3aXJlOiB1cGRhdGUgdG8gMC4zLjIKVGhp cyBQUiB1cGRhdGVzIGBwaXBld2lyZWAgdG8gMC4zLjIgYW5kIGFsc28gdXBkYXRpbmcvcGF0Y2hp bmcgYWxsIHBhY2thZ2VzIHRoYXQgZGVwZW5kcyBvbiBpdC4gDQoNCiogYHhkZy1kZXNrdG9wLXBv cnRhbGAgaW5jbHVkZXMgYSBwYXRjaCBiYWNrcG9ydGVkIGZyb20gMS43LjAgdG8gYWxsb3cgMS42 LjAgdG8gYnVpbGQgYWdhaW5zdCBwaXBld2lyZS0wLjMgKDEuNy54IGlzIHByZXJlbGVhc2UpDQoq IGB4ZGctZGVza3RvcC1wb3J0YWwta2RlYCBhbHJlYWR5IGluY2x1ZGVzIFBpcGV3aXJlIDAuMyBz dXBwb3J0IGFuZCBvbmx5IHJlcXVpcmVzIHJldmJ1bXAuDQoqIGBtdXR0ZXJgIGluY2x1ZGVzIGEg cGF0Y2ggYmFja3BvcnRlZCBmcm9tIDMuMzUgdG8gYWxsb3cgMy4zNCB0byBidWlsZCBhZ2FpbnN0 IHBpcGV3aXJlLTAuMyAodXBncmFkaW5nIHRvID49My4zNSBhbHNvIHJlcXVpcmVzIHVwZ3JhZGlu ZyBHTk9NRSkuCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvMjA0MTMucGF0Y2ggaXMgYXR0YWNoZWQ= --===============1367719046604113939== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-pipewire-update-20413.patch" RnJvbSBlNjE2ODliYTk1ZGM3OWFjMjAzYWM1NWQ1ZDNjNWRkN2YyYjkzYjYyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLcmlkc2FkYSBUaGFuYWJ1bHBvbmcgPHNpcm5Ab2dzaXRlLm5l dD4KRGF0ZTogU2F0LCAyOCBNYXIgMjAyMCAxNjoyMzo1MiArMDkwMApTdWJqZWN0OiBbUEFUQ0gg MS80XSBwaXBld2lyZTogdXBkYXRlIHRvIDAuMy40CgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAg ICAgICAgICAgICB8ICAyICstCiBzcmNwa2dzL2Fsc2EtcGlwZXdpcmUgICAgICAgICAgfCAgMSAr CiBzcmNwa2dzL2xpYmphY2stcGlwZXdpcmUgICAgICAgfCAgMSArCiBzcmNwa2dzL2xpYnB1bHNl YXVkaW8tcGlwZXdpcmUgfCAgMSArCiBzcmNwa2dzL3BpcGV3aXJlL3RlbXBsYXRlICAgICAgfCA3 NSArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDYy IGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3Br Z3MvYWxzYS1waXBld2lyZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGliamFjay1waXBl d2lyZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGlicHVsc2VhdWRpby1waXBld2lyZQoK ZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IGEyMDg0MDdi MzU5Li4wYjU4Nzc3ZGI3MiAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24v c2hsaWJzCkBAIC0zMTk5LDcgKzMxOTksNyBAQCBsaWJhcmNhbl9zaG1pZl9leHQuc28uMC4xMSBh cmNhbi0wLjUuNC4zXzEKIGxpYmFyY2FuX3NobWlmX3NlcnZlci5zby4wLjExIGFyY2FuLTAuNS40 LjNfMQogbGliYXJjYW5fdHVpLnNvLjAuMTEgYXJjYW4tMC41LjQuM18xCiBsaWJsd2lwdjYuc28u MiBsd2lwdjYtMS41YV8xCi1saWJwaXBld2lyZS0wLjIuc28uMSBsaWJwaXBld2lyZS0wLjIuMl8x CitsaWJwaXBld2lyZS0wLjMuc28uMCBsaWJwaXBld2lyZS0wLjMuMl8xCiBsaWJ2b2xrLnNvLjIu Mi4xIHZvbGstMi4yLjFfMQogbGliZ251cmFkaW8tcnVudGltZS5zby4zLjguMCBnbnVyYWRpby0z LjguMC4wXzEKIGxpYmdudXJhZGlvLXBtdC5zby4zLjguMCBnbnVyYWRpby0zLjguMC4wXzEKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvYWxzYS1waXBld2lyZSBiL3NyY3BrZ3MvYWxzYS1waXBld2lyZQpu ZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMC4uYzljOTdjZjY3MDcKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL2Fsc2EtcGlwZXdpcmUKQEAgLTAsMCArMSBAQAorcGlwZXdp cmUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmph Y2stcGlwZXdpcmUgYi9zcmNwa2dzL2xpYmphY2stcGlwZXdpcmUKbmV3IGZpbGUgbW9kZSAxMjAw MDAKaW5kZXggMDAwMDAwMDAwMDAuLmM5Yzk3Y2Y2NzA3Ci0tLSAvZGV2L251bGwKKysrIGIvc3Jj cGtncy9saWJqYWNrLXBpcGV3aXJlCkBAIC0wLDAgKzEgQEAKK3BpcGV3aXJlClwgTm8gbmV3bGlu ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJwdWxzZWF1ZGlvLXBpcGV3 aXJlIGIvc3JjcGtncy9saWJwdWxzZWF1ZGlvLXBpcGV3aXJlCm5ldyBmaWxlIG1vZGUgMTIwMDAw CmluZGV4IDAwMDAwMDAwMDAwLi5jOWM5N2NmNjcwNwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvbGlicHVsc2VhdWRpby1waXBld2lyZQpAQCAtMCwwICsxIEBACitwaXBld2lyZQpcIE5vIG5l d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGlwZXdpcmUvdGVtcGxh dGUgYi9zcmNwa2dzL3BpcGV3aXJlL3RlbXBsYXRlCmluZGV4IDdmNjQ2ZGFkMTFkLi41ZjE0YTE4 OWU2ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9waXBld2lyZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz 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 Ki5zbyIKIAl9CiB9CiAKQEAgLTI4LDI1ICs0NCwyNCBAQCBwaXBld2lyZS1kZXZlbF9wYWNrYWdl KCkgewogCWRlcGVuZHM9ImxpYnBpcGV3aXJlLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCiAJc2hv cnRfZGVzYys9IiAtIHBpcGV3aXJlIGFuZCBsaWJzcGEgZGV2ZWxvcG1lbnQgZmlsZXMiCiAJcGtn X2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVzci9pbmNsdWRlL3BpcGV3aXJlCi0JCXZtb3ZlIHVzci9p bmNsdWRlL3NwYQotCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZy9saWJwaXBld2lyZS0wLjIucGMK LQkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcvbGlic3BhLTAuMS5wYwotCQl2bW92ZSB1c3IvbGli L2xpYnBpcGV3aXJlLTAuMi5zbworCQl2bW92ZSB1c3IvaW5jbHVkZS9waXBld2lyZS0wLjMKKwkJ dm1vdmUgdXNyL2luY2x1ZGUvc3BhLTAuMgorCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZy9saWJw aXBld2lyZS0wLjMucGMKKwkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcvbGlic3BhLTAuMi5wYwog CX0KIH0KIAogbGlic3BhLWZmbXBlZ19wYWNrYWdlKCkgewogCXNob3J0X2Rlc2MrPSIgLSBmZm1w ZWcgcGx1Z2lucyIKIAlwa2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgdXNyL2xpYi9zcGEvZmZtcGVn CisJCXZtb3ZlIHVzci9saWIvc3BhLTAuMi9mZm1wZWcKIAl9CiB9CiAKIGxpYnNwYS1ibHVldG9v dGhfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gYmx1ZXRvb3RoIHBsdWdpbnMiCiAJcGtn X2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVzci9saWIvc3BhL2JsdWV6NQorCQl2bW92ZSB1c3IvbGli L3NwYS0wLjIvYmx1ZXo1CiAJfQogfQogCkBAIC01NywxMCArNzIsMzYgQEAgZ3N0cmVhbWVyMS1w aXBld2lyZV9wYWNrYWdlKCkgewogCX0KIH0KIAorbGlicHVsc2VhdWRpby1waXBld2lyZV9wYWNr YWdlKCkgeworCWRlcGVuZHM9ImxpYnBpcGV3aXJlLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJ c2hvcnRfZGVzYys9IiAtIFB1bHNlQXVkaW8gY2xpZW50IGxpYnJhcnkiCisJcGtnX2luc3RhbGwo KSB7CisJCXZtb3ZlIHVzci9saWIvcGlwZXdpcmUtMC4zL3B1bHNlCisJCXZtb3ZlIHVzci9iaW4v cHctcHVsc2UKKwl9Cit9CisKK2Fsc2EtcGlwZXdpcmVfcGFja2FnZSgpIHsKKwlkZXBlbmRzPSJs aWJwaXBld2lyZS0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorCXNob3J0X2Rlc2MrPSIgLSBBTFNB IGNsaWVudCBsaWJyYXJ5IgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvbGliL2Fsc2Et bGliCisJfQorfQorCitsaWJqYWNrLXBpcGV3aXJlX3BhY2thZ2UoKSB7CisJZGVwZW5kcz0ibGli cGlwZXdpcmUtJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlzaG9ydF9kZXNjKz0iIC0gSkFDSyBj bGllbnQgbGlicmFyeSIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2xpYi9waXBld2ly ZS0wLjMvamFjaworCQl2bW92ZSB1c3IvYmluL3B3LWphY2sKKwl9Cit9CisKIHBpcGV3aXJlLWRv Y19wYWNrYWdlKCkgewogCWFyY2hzPW5vYXJjaAogCXNob3J0X2Rlc2MrPSIgLSBkb2N1bWVudGF0 aW9uIgogCXBrZ19pbnN0YWxsKCkgewogCQl2bW92ZSB1c3Ivc2hhcmUvZG9jCiAJfQotfQorfQpc IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKCkZyb20gZmIwNDVmMjM2NDM4YWM0ZGMwNTQyN2Qw OTE4N2MyZTU5YzAzMGRlOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS3JpZHNhZGEg VGhhbmFidWxwb25nIDxzaXJuQG9nc2l0ZS5uZXQ+CkRhdGU6IFNhdCwgMjggTWFyIDIwMjAgMTY6 MjQ6NDYgKzA5MDAKU3ViamVjdDogW1BBVENIIDIvNF0geGRnLWRlc2t0b3AtcG9ydGFsLWtkZTog cmVidWlsZCBmb3IgcGlwZXdpcmUtMC4zCgotLS0KIHNyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFs LWtkZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBk ZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWtkZS90 ZW1wbGF0ZSBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWtkZS90ZW1wbGF0ZQppbmRleCBm MjYwNTdkMzIzYS4uOTUxOWFiYzE5ZjYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MveGRnLWRlc2t0b3At cG9ydGFsLWtkZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1rZGUv dGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4ZGctZGVza3Rv cC1wb3J0YWwta2RlJwogcGtnbmFtZT14ZGctZGVza3RvcC1wb3J0YWwta2RlCiB2ZXJzaW9uPTUu MTguNC4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1h a2VkZXBlbmRzPSJleHRyYS1jbWFrZS1tb2R1bGVzIHF0NS1xbWFrZSBxdDUtaG9zdC10b29scyBr Y29yZWFkZG9ucyBnZXR0ZXh0IgogbWFrZWRlcGVuZHM9ImdsaWItZGV2ZWwga2lvLWRldmVsIGt3 YXlsYW5kLWRldmVsIGxpYmVwb3h5LWRldmVsIHBpcGV3aXJlLWRldmVsCgpGcm9tIDg3NDk3OTZh MWNkOWE4YTg4YTZiYmE5NGY2YzQyZTVlMDVmNjEzNjIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IEtyaWRzYWRhIFRoYW5hYnVscG9uZyA8c2lybkBvZ3NpdGUubmV0PgpEYXRlOiBTYXQs IDI4IE1hciAyMDIwIDE2OjI0OjI2ICswOTAwClN1YmplY3Q6IFtQQVRDSCAzLzRdIHhkZy1kZXNr dG9wLXBvcnRhbDogcmVidWlsZCBmb3IgcGlwZXdpcmUtMC4zCgotLS0KIC4uLi9wYXRjaGVzL3Bp cGV3aXJlLTAuMy5wYXRjaCAgICAgICAgICAgICAgICB8IDU1MSArKysrKysrKysrKysrKysrKysK IHNyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsL3RlbXBsYXRlICAgICAgICAgICB8ICAgOCArLQog MiBmaWxlcyBjaGFuZ2VkLCA1NTcgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC9wYXRjaGVzL3BpcGV3aXJl LTAuMy5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsL3BhdGNo ZXMvcGlwZXdpcmUtMC4zLnBhdGNoIGIvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwvcGF0Y2hl cy9waXBld2lyZS0wLjMucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAuLjk0ZWJlMDgzNTk4Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy94ZGctZGVza3RvcC1w b3J0YWwvcGF0Y2hlcy9waXBld2lyZS0wLjMucGF0Y2gKQEAgLTAsMCArMSw1NTEgQEAKK0Zyb20g YTM4OTAxZTVlN2Y4MzVlZmU3YjdhMDZjNTU3OTBjOGMyMGJjOTFhMiBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKK0Zyb206IFdpbSBUYXltYW5zIDx3dGF5bWFuc0ByZWRoYXQuY29tPgorRGF0ZTog VHVlLCAxNCBKYW4gMjAyMCAwOTozNzowOSArMDEwMAorU3ViamVjdDogW1BBVENIXSBQaXBlV2ly ZTogdXBkYXRlIHRvIDAuMyBBUEkKKworLS0tCisgY29uZmlndXJlLmFjICAgICAgfCAgIDIgKy0K KyBzcmMvY2FtZXJhLmMgICAgICB8ICAyNCArKysrLS0tLQorIHNyYy9waXBld2lyZS5jICAgIHwg MTQxICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMv cGlwZXdpcmUuaCAgICB8ICAxMCArKy0tCisgc3JjL3NjcmVlbi1jYXN0LmMgfCAgOTggKysrKysr LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyA1IGZpbGVzIGNoYW5nZWQsIDcyIGluc2VydGlv bnMoKyksIDIwMyBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBjb25maWd1cmUuYWMgY29uZmln dXJlLmFjCitpbmRleCA4OTkwMmZhLi42MmQ3OTYwIDEwMDY0NAorLS0tIGNvbmZpZ3VyZS5hYwor KysrIGNvbmZpZ3VyZS5hYworQEAgLTk3LDcgKzk3LDcgQEAgQUNfQVJHX0VOQUJMRShwaXBld2ly ZSwKKyAJICAgICAgW0FTX0hFTFBfU1RSSU5HKFstLWVuYWJsZS1waXBld2lyZV0sW0VuYWJsZSBQ aXBlV2lyZSBzdXBwb3J0LiBOZWVkZWQgZm9yIHNjcmVlbiBjYXN0IHBvcnRhbF0pXSwKKyAJICAg ICAgZW5hYmxlX3BpcGV3aXJlPSRlbmFibGV2YWwsIGVuYWJsZV9waXBld2lyZT15ZXMpCisgaWYg dGVzdCB4JGVuYWJsZV9waXBld2lyZSA9IHh5ZXMgOyB0aGVuCistCVBLR19DSEVDS19NT0RVTEVT KFBJUEVXSVJFLCBbbGlicGlwZXdpcmUtMC4yID49IDAuMi42XSkKKysJUEtHX0NIRUNLX01PRFVM RVMoUElQRVdJUkUsIFtsaWJwaXBld2lyZS0wLjMgPj0gMC4yLjkwXSkKKyAJQUNfREVGSU5FKFtI QVZFX1BJUEVXSVJFXSxbMV0sIFtEZWZpbmUgdG8gZW5hYmxlIFBpcGVXaXJlIHN1cHBvcnRdKQor IGZpCisgQU1fQ09ORElUSU9OQUwoW0hBVkVfUElQRVdJUkVdLFt0ZXN0ICIkZW5hYmxlX3BpcGV3 aXJlIiA9ICJ5ZXMiXSkKK2RpZmYgLS1naXQgc3JjL2NhbWVyYS5jIHNyYy9jYW1lcmEuYworaW5k ZXggYzJiMzkyYy4uMjBmZTNhYSAxMDA2NDQKKy0tLSBzcmMvY2FtZXJhLmMKKysrKyBzcmMvY2Ft ZXJhLmMKK0BAIC0xNDEsNyArMTQxLDcgQEAgb3Blbl9waXBld2lyZV9jYW1lcmFfcmVtb3RlIChj b25zdCBjaGFyICphcHBfaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHRXJyb3Ig KiplcnJvcikKKyB7CisgICBQaXBlV2lyZVJlbW90ZSAqcmVtb3RlOworLSAgc3RydWN0IHNwYV9k aWN0X2l0ZW0gcGVybWlzc2lvbl9pdGVtc1sxXTsKKysgIHN0cnVjdCBwd19wZXJtaXNzaW9uIHBl cm1pc3Npb25faXRlbXNbMl07CisgICBzdHJ1Y3QgcHdfcHJvcGVydGllcyAqcGlwZXdpcmVfcHJv cGVydGllczsKKyAKKyAgIHBpcGV3aXJlX3Byb3BlcnRpZXMgPQorQEAgLTE1OCwxMiArMTU4LDEy IEBAIG9wZW5fcGlwZXdpcmVfY2FtZXJhX3JlbW90ZSAoY29uc3QgY2hhciAqYXBwX2lkLAorICAg ICogSGlkZSBhbGwgZXhpc3RpbmcgYW5kIGZ1dHVyZSBub2RlcyBieSBkZWZhdWx0LiBQaXBlV2ly ZSB3aWxsIHVzZSB0aGUKKyAgICAqIHBlcm1pc3Npb24gc3RvcmUgdG8gc2V0IHVwIHBlcm1pc3Np b25zLgorICAgICovCistICBwZXJtaXNzaW9uX2l0ZW1zWzBdLmtleSA9IFBXX0NPUkVfUFJPWFlf UEVSTUlTU0lPTlNfREVGQVVMVDsKKy0gIHBlcm1pc3Npb25faXRlbXNbMF0udmFsdWUgPSAiLS0t IjsKKysgIHBlcm1pc3Npb25faXRlbXNbMF0gPSBQV19QRVJNSVNTSU9OX0lOSVQgKFBXX0lEX0NP UkUsIFBXX1BFUk1fUldYKTsKKysgIHBlcm1pc3Npb25faXRlbXNbMV0gPSBQV19QRVJNSVNTSU9O X0lOSVQgKFBXX0lEX0FOWSwgMCk7CisgCistICBwd19jb3JlX3Byb3h5X3Blcm1pc3Npb25zIChw d19yZW1vdGVfZ2V0X2NvcmVfcHJveHkgKHJlbW90ZS0+cmVtb3RlKSwKKy0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICZTUEFfRElDVF9JTklUIChwZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfTl9FTEVNRU5UUyAocGVy bWlzc2lvbl9pdGVtcykpKTsKKysgIHB3X2NsaWVudF91cGRhdGVfcGVybWlzc2lvbnMgKHB3X2Nv cmVfZ2V0X2NsaWVudChyZW1vdGUtPmNvcmUpLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgR19OX0VMRU1FTlRTIChwZXJtaXNzaW9uX2l0ZW1zKSwKKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHBlcm1pc3Npb25faXRlbXMpOworIAorICAgcGlwZXdpcmVfcmVtb3Rl X3JvdW5kdHJpcCAocmVtb3RlKTsKKyAKK0BAIC0yMTksNyArMjE5LDcgQEAgaGFuZGxlX29wZW5f cGlwZXdpcmVfcmVtb3RlIChYZHBDYW1lcmEgKm9iamVjdCwKKyAgICAgfQorIAorICAgb3V0X2Zk X2xpc3QgPSBnX3VuaXhfZmRfbGlzdF9uZXcgKCk7CistICBmZCA9IHB3X3JlbW90ZV9zdGVhbF9m ZCAocmVtb3RlLT5yZW1vdGUpOworKyAgZmQgPSBwd19jb3JlX3N0ZWFsX2ZkIChyZW1vdGUtPmNv cmUpOworICAgZmRfaWQgPSBnX3VuaXhfZmRfbGlzdF9hcHBlbmQgKG91dF9mZF9saXN0LCBmZCwg JmVycm9yKTsKKyAgIGNsb3NlIChmZCk7CisgICBwaXBld2lyZV9yZW1vdGVfZGVzdHJveSAocmVt b3RlKTsKK0BAIC0yNTAsMjkgKzI1MCwyOCBAQCBjYW1lcmFfaWZhY2VfaW5pdCAoWGRwQ2FtZXJh SWZhY2UgKmlmYWNlKQorIHN0YXRpYyB2b2lkCisgZ2xvYmFsX2FkZGVkX2NiIChQaXBlV2lyZVJl bW90ZSAqcmVtb3RlLAorICAgICAgICAgICAgICAgICAgdWludDMyX3QgaWQsCistICAgICAgICAg ICAgICAgICB1aW50MzJfdCB0eXBlLAorKyAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqdHlw ZSwKKyAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBzcGFfZGljdCAqcHJvcHMsCisgICAg ICAgICAgICAgICAgICBncG9pbnRlciB1c2VyX2RhdGEpCisgeworICAgQ2FtZXJhICpjYW1lcmEg PSB1c2VyX2RhdGE7CistICBzdHJ1Y3QgcHdfdHlwZSAqY29yZV90eXBlID0gcHdfY29yZV9nZXRf dHlwZSAocmVtb3RlLT5jb3JlKTsKKyAgIGNvbnN0IHN0cnVjdCBzcGFfZGljdF9pdGVtICptZWRp YV9jbGFzczsKKyAgIGNvbnN0IHN0cnVjdCBzcGFfZGljdF9pdGVtICptZWRpYV9yb2xlOworIAor LSAgaWYgKHR5cGUgIT0gY29yZV90eXBlLT5ub2RlKQorKyAgaWYgKHN0cmNtcCh0eXBlLCBQV19U WVBFX0lOVEVSRkFDRV9Ob2RlKSAhPSAwKQorICAgICByZXR1cm47CisgCisgICBpZiAoIXByb3Bz KQorICAgICByZXR1cm47CisgCistICBtZWRpYV9jbGFzcyA9IHNwYV9kaWN0X2xvb2t1cF9pdGVt IChwcm9wcywgIm1lZGlhLmNsYXNzIik7CisrICBtZWRpYV9jbGFzcyA9IHNwYV9kaWN0X2xvb2t1 cF9pdGVtIChwcm9wcywgUFdfS0VZX01FRElBX0NMQVNTKTsKKyAgIGlmICghbWVkaWFfY2xhc3Mp CisgICAgIHJldHVybjsKKyAKKyAgIGlmIChnX3N0cmNtcDAgKG1lZGlhX2NsYXNzLT52YWx1ZSwg IlZpZGVvL1NvdXJjZSIpICE9IDApCisgICAgIHJldHVybjsKKyAKKy0gIG1lZGlhX3JvbGUgPSBz cGFfZGljdF9sb29rdXBfaXRlbSAocHJvcHMsICJtZWRpYS5yb2xlIik7CisrICBtZWRpYV9yb2xl ID0gc3BhX2RpY3RfbG9va3VwX2l0ZW0gKHByb3BzLCBQV19LRVlfTUVESUFfUk9MRSk7CisgICBp ZiAoIW1lZGlhX3JvbGUpCisgICAgIHJldHVybjsKKyAKK0BAIC0zNDIsNiArMzQxLDcgQEAgY3Jl YXRlX3BpcGV3aXJlX3JlbW90ZSAoQ2FtZXJhICpjYW1lcmEsCisgICAgIH0KKyAKKyAgIHBpcGV3 aXJlX3Byb3BlcnRpZXMgPSBwd19wcm9wZXJ0aWVzX25ldyAoInBpcGV3aXJlLmFjY2Vzcy5wb3J0 YWwuaXNfcG9ydGFsIiwgInRydWUiLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAicG9ydGFsLm1vbml0b3IiLCAiQ2FtZXJhIiwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgICBjYW1lcmEtPnBpcGV3aXJlX3Jl bW90ZSA9IHBpcGV3aXJlX3JlbW90ZV9uZXdfc3luYyAocGlwZXdpcmVfcHJvcGVydGllcywKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbG9i YWxfYWRkZWRfY2IsCitkaWZmIC0tZ2l0IHNyYy9waXBld2lyZS5jIHNyYy9waXBld2lyZS5jCitp bmRleCA3OTNhMzc4Li4xNjJjZDU1IDEwMDY0NAorLS0tIHNyYy9waXBld2lyZS5jCisrKysgc3Jj L3BpcGV3aXJlLmMKK0BAIC0yMSw2ICsyMSw3IEBACisgI2luY2x1ZGUgPGVycm5vLmg+CisgI2lu Y2x1ZGUgPGdsaWIuaD4KKyAjaW5jbHVkZSA8cGlwZXdpcmUvcGlwZXdpcmUuaD4KKysjaW5jbHVk ZSA8c3BhL3V0aWxzL3Jlc3VsdC5oPgorIAorICNpbmNsdWRlICJwaXBld2lyZS5oIgorIAorQEAg LTM2LDI3ICszNywyNSBAQCBzdGF0aWMgZ2Jvb2xlYW4gaXNfcGlwZXdpcmVfaW5pdGlhbGl6ZWQg PSBGQUxTRTsKKyBzdGF0aWMgdm9pZAorIHJlZ2lzdHJ5X2V2ZW50X2dsb2JhbCAodm9pZCAqdXNl cl9kYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgaWQsCistICAgICAgICAg ICAgICAgICAgICAgICB1aW50MzJfdCBwYXJlbnRfaWQsCisgICAgICAgICAgICAgICAgICAgICAg ICB1aW50MzJfdCBwZXJtaXNzaW9ucywKKy0gICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90 IHR5cGUsCisrICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp0eXBlLAorICAgICAg ICAgICAgICAgICAgICAgICAgdWludDMyX3QgdmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IHN0cnVjdCBzcGFfZGljdCAqcHJvcHMpCisgeworICAgUGlwZVdpcmVSZW1vdGUg KnJlbW90ZSA9IHVzZXJfZGF0YTsKKy0gIHN0cnVjdCBwd190eXBlICpjb3JlX3R5cGUgPSBwd19j b3JlX2dldF90eXBlIChyZW1vdGUtPmNvcmUpOworICAgY29uc3Qgc3RydWN0IHNwYV9kaWN0X2l0 ZW0gKmZhY3Rvcnlfb2JqZWN0X3R5cGU7CisgICBQaXBlV2lyZUdsb2JhbCAqZ2xvYmFsOworIAor ICAgZ2xvYmFsID0gZ19uZXcwIChQaXBlV2lyZUdsb2JhbCwgMSk7CisgICAqZ2xvYmFsID0gKFBp cGVXaXJlR2xvYmFsKSB7CistICAgIC5wYXJlbnRfaWQgPSBwYXJlbnRfaWQsCisrICAgIC5wYXJl bnRfaWQgPSBpZCwKKyAgIH07CisgCisgICBnX2hhc2hfdGFibGVfaW5zZXJ0IChyZW1vdGUtPmds b2JhbHMsIEdJTlRfVE9fUE9JTlRFUiAoaWQpLCBnbG9iYWwpOworICAgaWYgKHJlbW90ZS0+Z2xv YmFsX2FkZGVkX2NiKQorICAgICByZW1vdGUtPmdsb2JhbF9hZGRlZF9jYiAocmVtb3RlLCBpZCwg dHlwZSwgcHJvcHMsIHJlbW90ZS0+dXNlcl9kYXRhKTsKKyAKKy0gIGlmICh0eXBlICE9IGNvcmVf dHlwZS0+ZmFjdG9yeSkKKysgIGlmIChzdHJjbXAodHlwZSwgUFdfVFlQRV9JTlRFUkZBQ0VfRmFj dG9yeSkgIT0gMCkKKyAgICAgcmV0dXJuOworIAorICAgZmFjdG9yeV9vYmplY3RfdHlwZSA9IHNw YV9kaWN0X2xvb2t1cF9pdGVtIChwcm9wcywgImZhY3RvcnkudHlwZS5uYW1lIik7CitAQCAtODEs OCArODAsOCBAQCByZWdpc3RyeV9ldmVudF9nbG9iYWxfcmVtb3ZlICh2b2lkICp1c2VyX2RhdGEs CisgICBnX2hhc2hfdGFibGVfcmVtb3ZlIChyZW1vdGUtPmdsb2JhbHMsIEdJTlRfVE9fUE9JTlRF UiAoaWQpKTsKKyB9CisgCistc3RhdGljIGNvbnN0IHN0cnVjdCBwd19yZWdpc3RyeV9wcm94eV9l dmVudHMgcmVnaXN0cnlfZXZlbnRzID0geworLSAgUFdfVkVSU0lPTl9SRUdJU1RSWV9QUk9YWV9F VkVOVFMsCisrc3RhdGljIGNvbnN0IHN0cnVjdCBwd19yZWdpc3RyeV9ldmVudHMgcmVnaXN0cnlf ZXZlbnRzID0geworKyAgUFdfVkVSU0lPTl9SRUdJU1RSWV9FVkVOVFMsCisgICAuZ2xvYmFsID0g cmVnaXN0cnlfZXZlbnRfZ2xvYmFsLAorICAgLmdsb2JhbF9yZW1vdmUgPSByZWdpc3RyeV9ldmVu dF9nbG9iYWxfcmVtb3ZlLAorIH07CitAQCAtOTAsNyArODksNyBAQCBzdGF0aWMgY29uc3Qgc3Ry dWN0IHB3X3JlZ2lzdHJ5X3Byb3h5X2V2ZW50cyByZWdpc3RyeV9ldmVudHMgPSB7Cisgdm9pZAor IHBpcGV3aXJlX3JlbW90ZV9yb3VuZHRyaXAgKFBpcGVXaXJlUmVtb3RlICpyZW1vdGUpCisgewor LSAgcHdfY29yZV9wcm94eV9zeW5jIChyZW1vdGUtPmNvcmVfcHJveHksICsrcmVtb3RlLT5zeW5j X3NlcSk7CisrICByZW1vdGUtPnN5bmNfc2VxID0gcHdfY29yZV9zeW5jIChyZW1vdGUtPmNvcmUs IFBXX0lEX0NPUkUsIHJlbW90ZS0+c3luY19zZXEpOworICAgcHdfbWFpbl9sb29wX3J1biAocmVt b3RlLT5sb29wKTsKKyB9CisgCitAQCAtOTgsMTYgKzk3LDEzIEBAIHN0YXRpYyBnYm9vbGVhbgor IGRpc2NvdmVyX25vZGVfZmFjdG9yeV9zeW5jIChQaXBlV2lyZVJlbW90ZSAqcmVtb3RlLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBHRXJyb3IgKiplcnJvcikKKyB7CistICBzdHJ1Y3Qg cHdfdHlwZSAqY29yZV90eXBlID0gcHdfY29yZV9nZXRfdHlwZSAocmVtb3RlLT5jb3JlKTsKKy0g IHN0cnVjdCBwd19yZWdpc3RyeV9wcm94eSAqcmVnaXN0cnlfcHJveHk7CisrICBzdHJ1Y3QgcHdf cmVnaXN0cnkgKnJlZ2lzdHJ5OworIAorLSAgcmVnaXN0cnlfcHJveHkgPSBwd19jb3JlX3Byb3h5 X2dldF9yZWdpc3RyeSAocmVtb3RlLT5jb3JlX3Byb3h5LAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29yZV90eXBlLT5yZWdpc3RyeSwKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBXX1ZFUlNJT05fUkVHSVNU UlksIDApOworLSAgcHdfcmVnaXN0cnlfcHJveHlfYWRkX2xpc3RlbmVyIChyZWdpc3RyeV9wcm94 eSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJlbW90ZS0+cmVnaXN0cnlf bGlzdGVuZXIsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZyZWdpc3RyeV9l dmVudHMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbW90ZSk7CisrICBy ZWdpc3RyeSA9IHB3X2NvcmVfZ2V0X3JlZ2lzdHJ5IChyZW1vdGUtPmNvcmUsIFBXX1ZFUlNJT05f UkVHSVNUUlksIDApOworKyAgcHdfcmVnaXN0cnlfYWRkX2xpc3RlbmVyIChyZWdpc3RyeSwKKysg ICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJlbW90ZS0+cmVnaXN0cnlfbGlzdGVuZXIsCisr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICZyZWdpc3RyeV9ldmVudHMsCisrICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHJlbW90ZSk7CisgCisgICBwaXBld2lyZV9yZW1vdGVfcm91bmR0 cmlwIChyZW1vdGUpOworIAorQEAgLTEyMiw1OSArMTE4LDM1IEBAIGRpc2NvdmVyX25vZGVfZmFj dG9yeV9zeW5jIChQaXBlV2lyZVJlbW90ZSAqcmVtb3RlLAorIH0KKyAKKyBzdGF0aWMgdm9pZAor LW9uX3N0YXRlX2NoYW5nZWQgKHZvaWQgKnVzZXJfZGF0YSwKKy0gICAgICAgICAgICAgICAgICBl bnVtIHB3X3JlbW90ZV9zdGF0ZSBvbGQsCistICAgICAgICAgICAgICAgICAgZW51bSBwd19yZW1v dGVfc3RhdGUgc3RhdGUsCistICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3IpCisr Y29yZV9ldmVudF9lcnJvciAodm9pZCAgICAgICAqdXNlcl9kYXRhLAorKyAgICAgICAgICAgICAg ICAgIHVpbnQzMl90ICAgIGlkLAorKwkJICBpbnQgICAgICAgICBzZXEsCisrCQkgIGludCAgICAg ICAgIHJlcywKKysJCSAgY29uc3QgY2hhciAqbWVzc2FnZSkKKyB7CisgICBQaXBlV2lyZVJlbW90 ZSAqcmVtb3RlID0gdXNlcl9kYXRhOworIAorLSAgc3dpdGNoIChzdGF0ZSkKKysgIGlmIChpZCA9 PSBQV19JRF9DT1JFKQorICAgICB7CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0VSUk9SOgor LSAgICAgIGlmICghcmVtb3RlLT5lcnJvcikKKy0gICAgICAgIHsKKy0gICAgICAgICAgZ19zZXRf ZXJyb3IgKCZyZW1vdGUtPmVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9SX0ZBSUxFRCwKKy0g ICAgICAgICAgICAgICAgICAgICAgICIlcyIsIGVycm9yKTsKKy0gICAgICAgIH0KKysgICAgICBn X3NldF9lcnJvciAoJnJlbW90ZS0+ZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVE LAorKyAgICAgICAgICAgICAgICAgIiVzIiwgbWVzc2FnZSk7CisgICAgICAgcHdfbWFpbl9sb29w X3F1aXQgKHJlbW90ZS0+bG9vcCk7CistICAgICAgYnJlYWs7CistICAgIGNhc2UgUFdfUkVNT1RF X1NUQVRFX1VOQ09OTkVDVEVEOgorLSAgICAgIGlmICghcmVtb3RlLT5lcnJvcikKKy0gICAgICAg IHsKKy0gICAgICAgICAgZ19zZXRfZXJyb3IgKCZyZW1vdGUtPmVycm9yLCBHX0lPX0VSUk9SLCBH X0lPX0VSUk9SX0ZBSUxFRCwKKy0gICAgICAgICAgICAgICAgICAgICAgICJEaXNjb25uZWN0ZWQi KTsKKy0gICAgICAgIH0KKy0gICAgICBwd19tYWluX2xvb3BfcXVpdCAocmVtb3RlLT5sb29wKTsK Ky0gICAgICBicmVhazsKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfQ09OTkVDVElORzoKKy0g ICAgICBicmVhazsKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfQ09OTkVDVEVEOgorLSAgICAg IHB3X21haW5fbG9vcF9xdWl0IChyZW1vdGUtPmxvb3ApOworLSAgICAgIGJyZWFrOworLSAgICBk ZWZhdWx0OgorLSAgICAgIGdfd2FybmluZyAoIlVua25vd24gUGlwZVdpcmUgc3RhdGUiKTsKKy0g ICAgICBicmVhazsKKyAgICAgfQorIH0KKyAKKy1zdGF0aWMgY29uc3Qgc3RydWN0IHB3X3JlbW90 ZV9ldmVudHMgcmVtb3RlX2V2ZW50cyA9IHsKKy0gIFBXX1ZFUlNJT05fUkVNT1RFX0VWRU5UUywK Ky0gIC5zdGF0ZV9jaGFuZ2VkID0gb25fc3RhdGVfY2hhbmdlZCwKKy19OworLQorIHN0YXRpYyB2 b2lkCisgY29yZV9ldmVudF9kb25lICh2b2lkICp1c2VyX2RhdGEsCistICAgICAgICAgICAgICAg ICB1aW50MzJfdCBzZXEpCisrICAgICAgICAgICAgICAgICB1aW50MzJfdCBpZCwgaW50IHNlcSkK KyB7CisgICBQaXBlV2lyZVJlbW90ZSAqcmVtb3RlID0gdXNlcl9kYXRhOworIAorLSAgaWYgKHJl bW90ZS0+c3luY19zZXEgPT0gc2VxKQorKyAgaWYgKGlkID09IFBXX0lEX0NPUkUgJiYgcmVtb3Rl LT5zeW5jX3NlcSA9PSBzZXEpCisgICAgIHB3X21haW5fbG9vcF9xdWl0IChyZW1vdGUtPmxvb3Ap OworIH0KKyAKKy1zdGF0aWMgY29uc3Qgc3RydWN0IHB3X2NvcmVfcHJveHlfZXZlbnRzIGNvcmVf ZXZlbnRzID0geworLSAgUFdfVkVSU0lPTl9DT1JFX1BST1hZX0VWRU5UUywKKytzdGF0aWMgY29u c3Qgc3RydWN0IHB3X2NvcmVfZXZlbnRzIGNvcmVfZXZlbnRzID0geworKyAgUFdfVkVSU0lPTl9D T1JFX0VWRU5UUywKKysgIC5lcnJvciA9IGNvcmVfZXZlbnRfZXJyb3IsCisgICAuZG9uZSA9IGNv cmVfZXZlbnRfZG9uZSwKKyB9OworIAorQEAgLTIzNyw4ICsyMDksOCBAQCB2b2lkCisgcGlwZXdp cmVfcmVtb3RlX2Rlc3Ryb3kgKFBpcGVXaXJlUmVtb3RlICpyZW1vdGUpCisgeworICAgZ19jbGVh cl9wb2ludGVyICgmcmVtb3RlLT5nbG9iYWxzLCBnX2hhc2hfdGFibGVfZGVzdHJveSk7CistICBn X2NsZWFyX3BvaW50ZXIgKCZyZW1vdGUtPnJlbW90ZSwgcHdfcmVtb3RlX2Rlc3Ryb3kpOworLSAg Z19jbGVhcl9wb2ludGVyICgmcmVtb3RlLT5jb3JlLCBwd19jb3JlX2Rlc3Ryb3kpOworKyAgZ19j bGVhcl9wb2ludGVyICgmcmVtb3RlLT5jb3JlLCBwd19jb3JlX2Rpc2Nvbm5lY3QpOworKyAgZ19j bGVhcl9wb2ludGVyICgmcmVtb3RlLT5jb250ZXh0LCBwd19jb250ZXh0X2Rlc3Ryb3kpOworICAg Z19jbGVhcl9wb2ludGVyICgmcmVtb3RlLT5sb29wLCBwd19tYWluX2xvb3BfZGVzdHJveSk7Cisg ICBnX2NsZWFyX2Vycm9yICgmcmVtb3RlLT5lcnJvcik7CisgCitAQCAtMzA3LDY4ICsyNzksMzEg QEAgcGlwZXdpcmVfcmVtb3RlX25ld19zeW5jIChzdHJ1Y3QgcHdfcHJvcGVydGllcyAqcGlwZXdp cmVfcHJvcGVydGllcywKKyAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgfQorIAorLSAgcmVtb3Rl LT5jb3JlID0gcHdfY29yZV9uZXcgKHB3X21haW5fbG9vcF9nZXRfbG9vcCAocmVtb3RlLT5sb29w KSwgTlVMTCk7CistICBpZiAoIXJlbW90ZS0+Y29yZSkKKysgIHJlbW90ZS0+Y29udGV4dCA9IHB3 X2NvbnRleHRfbmV3IChwd19tYWluX2xvb3BfZ2V0X2xvb3AgKHJlbW90ZS0+bG9vcCksIE5VTEws IDApOworKyAgaWYgKCFyZW1vdGUtPmNvbnRleHQpCisgICAgIHsKKyAgICAgICBwaXBld2lyZV9y ZW1vdGVfZGVzdHJveSAocmVtb3RlKTsKKyAgICAgICBwd19wcm9wZXJ0aWVzX2ZyZWUgKHBpcGV3 aXJlX3Byb3BlcnRpZXMpOworICAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwgR19JT19FUlJPUiwg R19JT19FUlJPUl9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBjcmVhdGUg UGlwZVdpcmUgY29yZSIpOworKyAgICAgICAgICAgICAgICAgICAiQ291bGRuJ3QgY3JlYXRlIFBp cGVXaXJlIGNvbnRleHQiKTsKKyAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgfQorIAorLSAgcmVt b3RlLT5yZW1vdGUgPSBwd19yZW1vdGVfbmV3IChyZW1vdGUtPmNvcmUsIHBpcGV3aXJlX3Byb3Bl cnRpZXMsIDApOworLSAgaWYgKCFyZW1vdGUtPnJlbW90ZSkKKysgIHJlbW90ZS0+Y29yZSA9IHB3 X2NvbnRleHRfY29ubmVjdCAocmVtb3RlLT5jb250ZXh0LCBwaXBld2lyZV9wcm9wZXJ0aWVzLCAw KTsKKysgIGlmICghcmVtb3RlLT5jb3JlKQorICAgICB7CisgICAgICAgcGlwZXdpcmVfcmVtb3Rl X2Rlc3Ryb3kgKHJlbW90ZSk7CisgICAgICAgZ19zZXRfZXJyb3IgKGVycm9yLCBHX0lPX0VSUk9S LCBHX0lPX0VSUk9SX0ZBSUxFRCwKKy0gICAgICAgICAgICAgICAgICAgIkNvdWxkbid0IGNyZWF0 ZSBQaXBlV2lyZSByZW1vdGUiKTsKKysgICAgICAgICAgICAgICAgICAgIkNvdWxkbid0IGNvbm5l Y3QgdG8gUGlwZVdpcmUiKTsKKyAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgfQorIAorICAgcmVt b3RlLT5nbG9iYWxzID0gZ19oYXNoX3RhYmxlX25ld19mdWxsIChOVUxMLCBOVUxMLCBOVUxMLCBn X2ZyZWUpOworIAorLSAgcHdfcmVtb3RlX2FkZF9saXN0ZW5lciAocmVtb3RlLT5yZW1vdGUsCist ICAgICAgICAgICAgICAgICAgICAgICAgICAmcmVtb3RlLT5yZW1vdGVfbGlzdGVuZXIsCistICAg ICAgICAgICAgICAgICAgICAgICAgICAmcmVtb3RlX2V2ZW50cywKKy0gICAgICAgICAgICAgICAg ICAgICAgICAgIHJlbW90ZSk7CistCistICBpZiAocHdfcmVtb3RlX2Nvbm5lY3QgKHJlbW90ZS0+ cmVtb3RlKSAhPSAwKQorLSAgICB7CistICAgICAgcGlwZXdpcmVfcmVtb3RlX2Rlc3Ryb3kgKHJl bW90ZSk7CistICAgICAgZ19zZXRfZXJyb3IgKGVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9S X0ZBSUxFRCwKKy0gICAgICAgICAgICAgICAgICAgIkNvdWxkbid0IGNvbm5lY3QgUGlwZVdpcmUg cmVtb3RlIik7CistICAgICAgcmV0dXJuIE5VTEw7CistICAgIH0KKy0KKy0gIHB3X21haW5fbG9v cF9ydW4gKHJlbW90ZS0+bG9vcCk7CistCistICBzd2l0Y2ggKHB3X3JlbW90ZV9nZXRfc3RhdGUg KHJlbW90ZS0+cmVtb3RlLCBOVUxMKSkKKy0gICAgeworLSAgICBjYXNlIFBXX1JFTU9URV9TVEFU RV9FUlJPUjoKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfVU5DT05ORUNURUQ6CistICAgICAg KmVycm9yID0gZ19zdGVhbF9wb2ludGVyICgmcmVtb3RlLT5lcnJvcik7CistICAgICAgcGlwZXdp cmVfcmVtb3RlX2Rlc3Ryb3kgKHJlbW90ZSk7CistICAgICAgcmV0dXJuIE5VTEw7CistICAgIGNh c2UgUFdfUkVNT1RFX1NUQVRFX0NPTk5FQ1RJTkc6CistICAgICAgZ19zZXRfZXJyb3IgKGVycm9y LCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9SX0ZBSUxFRCwKKy0gICAgICAgICAgICAgICAgICAgIlBp cGVXaXJlIGxvb3Agc3RvcHBlZCB1bmV4cGVjdGVkbHkiKTsKKy0gICAgICBwaXBld2lyZV9yZW1v dGVfZGVzdHJveSAocmVtb3RlKTsKKy0gICAgICByZXR1cm4gTlVMTDsKKy0gICAgY2FzZSBQV19S RU1PVEVfU1RBVEVfQ09OTkVDVEVEOgorLSAgICAgIGJyZWFrOworLSAgICBkZWZhdWx0OgorLSAg ICAgIGdfc2V0X2Vycm9yIChlcnJvciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCist ICAgICAgICAgICAgICAgICAgICJVbmV4cGVjdGVkIFBpcGVXaXJlIHN0YXRlIik7CistICAgICAg cGlwZXdpcmVfcmVtb3RlX2Rlc3Ryb3kgKHJlbW90ZSk7CistICAgICAgcmV0dXJuIE5VTEw7Cist ICAgIH0KKy0KKy0gIHJlbW90ZS0+Y29yZV9wcm94eSA9IHB3X3JlbW90ZV9nZXRfY29yZV9wcm94 eSAocmVtb3RlLT5yZW1vdGUpOworLSAgcHdfY29yZV9wcm94eV9hZGRfbGlzdGVuZXIgKHJlbW90 ZS0+Y29yZV9wcm94eSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcmVtb3RlLT5j b3JlX2xpc3RlbmVyLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZjb3JlX2V2ZW50 cywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZW1vdGUpOworKyAgcHdfY29yZV9h ZGRfbGlzdGVuZXIgKHJlbW90ZS0+Y29yZSwKKysgICAgICAgICAgICAgICAgICAgICAgICAmcmVt b3RlLT5jb3JlX2xpc3RlbmVyLAorKyAgICAgICAgICAgICAgICAgICAgICAgICZjb3JlX2V2ZW50 cywKKysgICAgICAgICAgICAgICAgICAgICAgICByZW1vdGUpOworIAorICAgaWYgKCFkaXNjb3Zl cl9ub2RlX2ZhY3Rvcnlfc3luYyAocmVtb3RlLCBlcnJvcikpCisgICAgIHsKK2RpZmYgLS1naXQg c3JjL3BpcGV3aXJlLmggc3JjL3BpcGV3aXJlLmgKK2luZGV4IDBmMWJmNTQuLmJmNDhkNWUgMTAw NjQ0CistLS0gc3JjL3BpcGV3aXJlLmgKKysrKyBzcmMvcGlwZXdpcmUuaAorQEAgLTMyLDcgKzMy LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgX1BpcGVXaXJlR2xvYmFsCisgCisgdHlwZWRlZiB2b2lkICgq IFBpcGVXaXJlR2xvYmFsQWRkZWRDYWxsYmFjaykgKFBpcGVXaXJlUmVtb3RlICpyZW1vdGUsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGlk LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJf dCB0eXBlLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBjaGFyICp0eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCBzdHJ1Y3Qgc3BhX2RpY3QgKnByb3BzLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncG9pbnRlciB1c2VyX2RhdGEpOworIAorQEAg LTQzLDEzICs0MywxMSBAQCB0eXBlZGVmIHZvaWQgKCogUGlwZVdpcmVHbG9iYWxSZW1vdmVkQ2Fs bGJhY2spIChQaXBlV2lyZVJlbW90ZSAqcmVtb3RlLAorIHN0cnVjdCBfUGlwZVdpcmVSZW1vdGUK KyB7CisgICBzdHJ1Y3QgcHdfbWFpbl9sb29wICpsb29wOworKyAgc3RydWN0IHB3X2NvbnRleHQg KmNvbnRleHQ7CisgICBzdHJ1Y3QgcHdfY29yZSAqY29yZTsKKy0gIHN0cnVjdCBwd19yZW1vdGUg KnJlbW90ZTsKKy0gIHN0cnVjdCBzcGFfaG9vayByZW1vdGVfbGlzdGVuZXI7CistCistICBzdHJ1 Y3QgcHdfY29yZV9wcm94eSAqY29yZV9wcm94eTsKKyAgIHN0cnVjdCBzcGFfaG9vayBjb3JlX2xp c3RlbmVyOworLSAgdWludDMyX3Qgc3luY19zZXE7CisrCisrICBpbnQgc3luY19zZXE7CisgCisg ICBzdHJ1Y3Qgc3BhX2hvb2sgcmVnaXN0cnlfbGlzdGVuZXI7CisgCitkaWZmIC0tZ2l0IHNyYy9z Y3JlZW4tY2FzdC5jIHNyYy9zY3JlZW4tY2FzdC5jCitpbmRleCA3ODgxZGRjLi4xNjc3MDUwIDEw MDY0NAorLS0tIHNyYy9zY3JlZW4tY2FzdC5jCisrKysgc3JjL3NjcmVlbi1jYXN0LmMKK0BAIC0z MSwxMCArMzEsMTAgQEAKKyAjaW5jbHVkZSAieGRwLWltcGwtZGJ1cy5oIgorICNpbmNsdWRlICJ4 ZHAtdXRpbHMuaCIKKyAKKy0jZGVmaW5lIFBFUk1JU1NJT05fSVRFTShpdGVtX2tleSwgaXRlbV92 YWx1ZSkgXAorLSAgKChzdHJ1Y3Qgc3BhX2RpY3RfaXRlbSkgeyBcCistICAgIC5rZXkgPSBpdGVt X2tleSwgXAorLSAgICAudmFsdWUgPSBpdGVtX3ZhbHVlIFwKKysjZGVmaW5lIFBFUk1JU1NJT05f SVRFTShpdGVtX2lkLCBpdGVtX3Blcm1pc3Npb25zKSBcCisrICAoKHN0cnVjdCBwd19wZXJtaXNz aW9uKSB7IFwKKysgICAgLmlkID0gaXRlbV9pZCwgXAorKyAgICAucGVybWlzc2lvbnMgPSBpdGVt X3Blcm1pc3Npb25zIFwKKyAgIH0pCisgCisgdHlwZWRlZiBzdHJ1Y3QgX1NjcmVlbkNhc3QgU2Ny ZWVuQ2FzdDsKK0BAIC01MTcsNDIgKzUxNyw5IEBAIHNjcmVlbl9jYXN0X3N0cmVhbV9nZXRfcGlw ZXdpcmVfbm9kZV9pZCAoU2NyZWVuQ2FzdFN0cmVhbSAqc3RyZWFtKQorICAgcmV0dXJuIHN0cmVh bS0+aWQ7CisgfQorIAorLXN0YXRpYyB2b2lkCistYXBwZW5kX3BhcmVudF9wZXJtaXNzaW9ucyAo UGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICBHQXJy YXkgKnBlcm1pc3Npb25faXRlbXMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xpc3Qg KipzdHJpbmdfc3Rhc2gsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgUGlwZVdpcmVHbG9i YWwgKmdsb2JhbCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwZXJt aXNzaW9uKQorLXsKKy0gIFBpcGVXaXJlR2xvYmFsICpwYXJlbnQ7CistICBjaGFyICpwYXJlbnRf cGVybWlzc2lvbl92YWx1ZTsKKy0KKy0gIGlmIChnbG9iYWwtPnBhcmVudF9pZCA9PSAwKQorLSAg ICByZXR1cm47CistCistICBwYXJlbnQgPSBnX2hhc2hfdGFibGVfbG9va3VwIChyZW1vdGUtPmds b2JhbHMsIEdJTlRfVE9fUE9JTlRFUiAoZ2xvYmFsLT5wYXJlbnRfaWQpKTsKKy0KKy0gIGlmIChw YXJlbnQtPnBlcm1pc3Npb25fc2V0KQorLSAgICByZXR1cm47CistICBwYXJlbnQtPnBlcm1pc3Np b25fc2V0ID0gVFJVRTsKKy0KKy0gIGFwcGVuZF9wYXJlbnRfcGVybWlzc2lvbnMgKHJlbW90ZSwg cGVybWlzc2lvbl9pdGVtcywgc3RyaW5nX3N0YXNoLAorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcGFyZW50LCBwZXJtaXNzaW9uKTsKKy0KKy0gIHBhcmVudF9wZXJtaXNzaW9uX3ZhbHVl ID0gZ19zdHJkdXBfcHJpbnRmICgiJXU6JXMiLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGdsb2JhbC0+cGFyZW50X2lkLAorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcm1pc3Npb24pOworLSAgKnN0cmluZ19zdGFz aCA9IGdfbGlzdF9wcmVwZW5kICgqc3RyaW5nX3N0YXNoLCBwYXJlbnRfcGVybWlzc2lvbl92YWx1 ZSk7CistCistICBnX2FycmF5X2FwcGVuZF92YWwgKHBlcm1pc3Npb25faXRlbXMsCistICAgICAg ICAgICAgICAgICAgICAgIFBFUk1JU1NJT05fSVRFTSAoUFdfQ09SRV9QUk9YWV9QRVJNSVNTSU9O U19HTE9CQUwsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyZW50 X3Blcm1pc3Npb25fdmFsdWUpKTsKKy19CistCisgc3RhdGljIHZvaWQKKyBhcHBlbmRfc3RyZWFt X3Blcm1pc3Npb25zIChQaXBlV2lyZVJlbW90ZSAqcmVtb3RlLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEdBcnJheSAqcGVybWlzc2lvbl9pdGVtcywKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICBHTGlzdCAqKnN0cmluZ19zdGFzaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICBHTGlzdCAqc3RyZWFtcykKKyB7CisgICBHTGlzdCAqbDsKK0BAIC01NjEsMjEgKzUyOCwxMCBA QCBhcHBlbmRfc3RyZWFtX3Blcm1pc3Npb25zIChQaXBlV2lyZVJlbW90ZSAqcmVtb3RlLAorICAg ICB7CisgICAgICAgU2NyZWVuQ2FzdFN0cmVhbSAqc3RyZWFtID0gbC0+ZGF0YTsKKyAgICAgICB1 aW50MzJfdCBzdHJlYW1faWQ7CistICAgICAgUGlwZVdpcmVHbG9iYWwgKnN0cmVhbV9nbG9iYWw7 CistICAgICAgY2hhciAqc3RyZWFtX3Blcm1pc3Npb25fdmFsdWU7CisgCisgICAgICAgc3RyZWFt X2lkID0gc2NyZWVuX2Nhc3Rfc3RyZWFtX2dldF9waXBld2lyZV9ub2RlX2lkIChzdHJlYW0pOwor LSAgICAgIHN0cmVhbV9nbG9iYWwgPSBnX2hhc2hfdGFibGVfbG9va3VwIChyZW1vdGUtPmdsb2Jh bHMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdJTlRfVE9f UE9JTlRFUiAoc3RyZWFtX2lkKSk7CistCistICAgICAgYXBwZW5kX3BhcmVudF9wZXJtaXNzaW9u cyAocmVtb3RlLCBwZXJtaXNzaW9uX2l0ZW1zLCBzdHJpbmdfc3Rhc2gsCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc3RyZWFtX2dsb2JhbCwgInItLSIpOworLQorLSAgICAgIHN0 cmVhbV9wZXJtaXNzaW9uX3ZhbHVlID0gZ19zdHJkdXBfcHJpbnRmICgiJXU6cnd4Iiwgc3RyZWFt X2lkKTsKKy0gICAgICAqc3RyaW5nX3N0YXNoID0gZ19saXN0X3ByZXBlbmQgKCpzdHJpbmdfc3Rh c2gsIHN0cmVhbV9wZXJtaXNzaW9uX3ZhbHVlKTsKKyAgICAgICBnX2FycmF5X2FwcGVuZF92YWwg KHBlcm1pc3Npb25faXRlbXMsCistICAgICAgICAgICAgICAgICAgICAgICAgICBQRVJNSVNTSU9O X0lURU0gKFBXX0NPUkVfUFJPWFlfUEVSTUlTU0lPTlNfR0xPQkFMLAorLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJlYW1fcGVybWlzc2lvbl92YWx1ZSkpOwor KyAgICAgICAgICAgICAgICAgICAgICAgICAgUEVSTUlTU0lPTl9JVEVNIChzdHJlYW1faWQsIFBX X1BFUk1fUldYKSk7CisgICAgIH0KKyB9CisgCitAQCAtNTg3LDkgKzU0Myw2IEBAIG9wZW5fcGlw ZXdpcmVfc2NyZWVuX2Nhc3RfcmVtb3RlIChjb25zdCBjaGFyICphcHBfaWQsCisgICBzdHJ1Y3Qg cHdfcHJvcGVydGllcyAqcGlwZXdpcmVfcHJvcGVydGllczsKKyAgIFBpcGVXaXJlUmVtb3RlICpy ZW1vdGU7CisgICBnX2F1dG9wdHIoR0FycmF5KSBwZXJtaXNzaW9uX2l0ZW1zID0gTlVMTDsKKy0g IGNoYXIgKm5vZGVfZmFjdG9yeV9wZXJtaXNzaW9uX3N0cmluZzsKKy0gIEdMaXN0ICpzdHJpbmdf c3Rhc2ggPSBOVUxMOworLSAgc3RydWN0IHNwYV9kaWN0ICpwZXJtaXNzaW9uX2RpY3Q7CisgICBQ aXBlV2lyZUdsb2JhbCAqbm9kZV9nbG9iYWw7CisgCisgICBwaXBld2lyZV9wcm9wZXJ0aWVzID0g cHdfcHJvcGVydGllc19uZXcgKCJwaXBld2lyZS5hY2Nlc3MucG9ydGFsLmFwcF9pZCIsIGFwcF9p ZCwKK0BAIC02MDMsNDggKzU1NiwzMSBAQCBvcGVuX3BpcGV3aXJlX3NjcmVlbl9jYXN0X3JlbW90 ZSAoY29uc3QgY2hhciAqYXBwX2lkLAorIAorICAgcGVybWlzc2lvbl9pdGVtcyA9IGdfYXJyYXlf bmV3IChGQUxTRSwgVFJVRSwgc2l6ZW9mIChzdHJ1Y3Qgc3BhX2RpY3RfaXRlbSkpOworIAorLSAg LyoKKy0gICAqIEhpZGUgYWxsIGV4aXN0aW5nIGFuZCBmdXR1cmUgbm9kZXMgKGV4Y2VwdCB0aGUg b25lcyB3ZSBleHBsaWNpdGx5IGxpc3QgYmVsb3cuCistICAgKi8KKy0gIGdfYXJyYXlfYXBwZW5k X3ZhbCAocGVybWlzc2lvbl9pdGVtcywKKy0gICAgICAgICAgICAgICAgICAgICAgUEVSTUlTU0lP Tl9JVEVNIChQV19DT1JFX1BST1hZX1BFUk1JU1NJT05TX0VYSVNUSU5HLAorLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICItLS0iKSk7CistICBnX2FycmF5X2FwcGVuZF92 YWwgKHBlcm1pc3Npb25faXRlbXMsCistICAgICAgICAgICAgICAgICAgICAgIFBFUk1JU1NJT05f SVRFTSAoUFdfQ09SRV9QUk9YWV9QRVJNSVNTSU9OU19ERUZBVUxULAorLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICItLS0iKSk7CistCisgICAvKgorICAgICogUGlwZVdp cmU6SW50ZXJmYWNlOkNvcmUKKyAgICAqIE5lZWRzIHJ3eCB0byBiZSBhYmxlIGNyZWF0ZSB0aGUg c2luayBub2RlIHVzaW5nIHRoZSBjcmVhdGUtb2JqZWN0IG1ldGhvZAorICAgICovCisgICBnX2Fy cmF5X2FwcGVuZF92YWwgKHBlcm1pc3Npb25faXRlbXMsCistICAgICAgICAgICAgICAgICAgICAg IFBFUk1JU1NJT05fSVRFTSAoUFdfQ09SRV9QUk9YWV9QRVJNSVNTSU9OU19HTE9CQUwsCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIjA6cnd4IikpOworKyAgICAgICAg ICAgICAgICAgICAgICBQRVJNSVNTSU9OX0lURU0gKFBXX0lEX0NPUkUsIFBXX1BFUk1fUldYKSk7 CisgCisgICAvKgorICAgICogUGlwZVdpcmU6SW50ZXJmYWNlOk5vZGVGYWN0b3J5CisgICAgKiBO ZWVkcyByLS0gc28gaXQgY2FuIGJlIHBhc3NlZCB0byBjcmVhdGUtb2JqZWN0IHdoZW4gY3JlYXRp bmcgdGhlIHNpbmsgbm9kZS4KKyAgICAqLworLSAgbm9kZV9mYWN0b3J5X3Blcm1pc3Npb25fc3Ry aW5nID0gZ19zdHJkdXBfcHJpbnRmICgiJWQ6ci0tIiwKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3RlLT5ub2RlX2ZhY3RvcnlfaWQpOwor LSAgc3RyaW5nX3N0YXNoID0gZ19saXN0X3ByZXBlbmQgKHN0cmluZ19zdGFzaCwgbm9kZV9mYWN0 b3J5X3Blcm1pc3Npb25fc3RyaW5nKTsKKyAgIGdfYXJyYXlfYXBwZW5kX3ZhbCAocGVybWlzc2lv bl9pdGVtcywKKy0gICAgICAgICAgICAgICAgICAgICAgUEVSTUlTU0lPTl9JVEVNIChQV19DT1JF X1BST1hZX1BFUk1JU1NJT05TX0dMT0JBTCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBub2RlX2ZhY3RvcnlfcGVybWlzc2lvbl9zdHJpbmcpKTsKKy0gIG5vZGVfZ2xv YmFsID0gZ19oYXNoX3RhYmxlX2xvb2t1cCAocmVtb3RlLT5nbG9iYWxzLAorLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBHSU5UX1RPX1BPSU5URVIgKHJlbW90ZS0+bm9kZV9m YWN0b3J5X2lkKSk7CistICBhcHBlbmRfcGFyZW50X3Blcm1pc3Npb25zIChyZW1vdGUsIHBlcm1p c3Npb25faXRlbXMsICZzdHJpbmdfc3Rhc2gsCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBub2RlX2dsb2JhbCwgInItLSIpOworKyAgICAgICAgICAgICAgICAgICAgICBQRVJNSVNTSU9O X0lURU0gKHJlbW90ZS0+bm9kZV9mYWN0b3J5X2lkLCBQV19QRVJNX1IpKTsKKyAKKy0gIGFwcGVu ZF9zdHJlYW1fcGVybWlzc2lvbnMgKHJlbW90ZSwgcGVybWlzc2lvbl9pdGVtcywgJnN0cmluZ19z dGFzaCwgc3RyZWFtcyk7CisrICBhcHBlbmRfc3RyZWFtX3Blcm1pc3Npb25zIChyZW1vdGUsIHBl cm1pc3Npb25faXRlbXMsIHN0cmVhbXMpOworIAorLSAgcGVybWlzc2lvbl9kaWN0ID0KKy0gICAg JlNQQV9ESUNUX0lOSVQgKChzdHJ1Y3Qgc3BhX2RpY3RfaXRlbSAqKSBwZXJtaXNzaW9uX2l0ZW1z LT5kYXRhLAorLSAgICAgICAgICAgICAgICAgICAgcGVybWlzc2lvbl9pdGVtcy0+bGVuKTsKKy0g IHB3X2NvcmVfcHJveHlfcGVybWlzc2lvbnMgKHB3X3JlbW90ZV9nZXRfY29yZV9wcm94eSAocmVt b3RlLT5yZW1vdGUpLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVybWlzc2lvbl9k aWN0KTsKKysgIC8qCisrICAgKiBIaWRlIGFsbCBleGlzdGluZyBhbmQgZnV0dXJlIG5vZGVzIChl eGNlcHQgdGhlIG9uZXMgd2UgZXhwbGljaXRseSBsaXN0IGFib3ZlKS4KKysgICAqLworKyAgZ19h cnJheV9hcHBlbmRfdmFsIChwZXJtaXNzaW9uX2l0ZW1zLAorKyAgICAgICAgICAgICAgICAgICAg ICBQRVJNSVNTSU9OX0lURU0gKFBXX0lEX0FOWSwgMCkpOworIAorLSAgZ19saXN0X2ZyZWVfZnVs bCAoc3RyaW5nX3N0YXNoLCBnX2ZyZWUpOworKyAgcHdfY2xpZW50X3VwZGF0ZV9wZXJtaXNzaW9u cyAocHdfY29yZV9nZXRfY2xpZW50KHJlbW90ZS0+Y29yZSksCisrICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBwZXJtaXNzaW9uX2l0ZW1zLT5sZW4sCisrICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAoY29uc3Qgc3RydWN0IHB3X3Blcm1pc3Npb24gKilwZXJtaXNzaW9uX2l0 ZW1zLT5kYXRhKTsKKyAKKyAgIHBpcGV3aXJlX3JlbW90ZV9yb3VuZHRyaXAgKHJlbW90ZSk7Cisg CitAQCAtOTQzLDcgKzg3OSw3IEBAIGhhbmRsZV9vcGVuX3BpcGV3aXJlX3JlbW90ZSAoWGRwU2Ny ZWVuQ2FzdCAqb2JqZWN0LAorICAgICB9CisgCisgICBvdXRfZmRfbGlzdCA9IGdfdW5peF9mZF9s aXN0X25ldyAoKTsKKy0gIGZkID0gcHdfcmVtb3RlX3N0ZWFsX2ZkIChyZW1vdGUtPnJlbW90ZSk7 CisrICBmZCA9IHB3X2NvcmVfc3RlYWxfZmQgKHJlbW90ZS0+Y29yZSk7CisgICBmZF9pZCA9IGdf dW5peF9mZF9saXN0X2FwcGVuZCAob3V0X2ZkX2xpc3QsIGZkLCAmZXJyb3IpOworICAgY2xvc2Ug KGZkKTsKKyAgIHBpcGV3aXJlX3JlbW90ZV9kZXN0cm95IChyZW1vdGUpOwpkaWZmIC0tZ2l0IGEv c3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwvdGVtcGxhdGUgYi9zcmNwa2dzL3hkZy1kZXNrdG9w LXBvcnRhbC90ZW1wbGF0ZQppbmRleCBlYjhhNDYwMmY1ZC4uMTEzNmI2YTZlMGUgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MveGRn LWRlc2t0b3AtcG9ydGFsL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICd4ZGctZGVza3RvcC1wb3J0YWwnCiBwa2duYW1lPXhkZy1kZXNrdG9wLXBvcnRhbAog dmVyc2lvbj0xLjYuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNv bmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLXBpcGV3aXJlIC0tZW5hYmxlLWdlb2Ns dWUgLS1kaXNhYmxlLWxpYnBvcnRhbCIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBnbGli LWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBsaWJ0b29sIGdldHRleHQtZGV2ZWwg cGtnLWNvbmZpZyBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9ImZsYXRwYWstZGV2ZWwgZnVzZS1k ZXZlbCBwaXBld2lyZS1kZXZlbCBnZW9jbHVlMi1kZXZlbCIKIHNob3J0X2Rlc2M9IlBvcnRhbCBm cm9udGVuZCBzZXJ2aWNlIGZvciBGbGF0cGFrIgogbWFpbnRhaW5lcj0iRHVuY2FlbiA8ZHVuY2Fl bkB2b2lkbGludXgub3JnPiIKQEAgLTEzLDYgKzEzLDEwIEBAIGhvbWVwYWdlPSJodHRwczovL2dp dGh1Yi5jb20vZmxhdHBhay94ZGctZGVza3RvcC1wb3J0YWwiCiBkaXN0ZmlsZXM9Imh0dHBzOi8v Z2l0aHViLmNvbS9mbGF0cGFrLyR7cGtnbmFtZX0vcmVsZWFzZXMvZG93bmxvYWQvJHt2ZXJzaW9u fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09ODgzYzljOWE5MjVlNDhh ZjU0ODEyYjUzNDdmNTQ2ZGQ3NzZlYzJlMjcwNzZhODNkNWE4MTI2YWY2YmFmYjlkYQogCitwcmVf Y29uZmlndXJlKCkgeworCWF1dG9yZWNvbmYgLXZmaQorfQorCiBwb3N0X2luc3RhbGwoKSB7CiAJ cm0gLXJmICIke0RFU1RESVJ9L3Vzci9saWIvc3lzdGVtZCIKIH0KCkZyb20gZTc0OTVkMTk2Y2E0 NTRkMzViZDU1MmYzZjdjMTc3MWU5ODNhNDFkMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogS3JpZHNhZGEgVGhhbmFidWxwb25nIDxzaXJuQG9nc2l0ZS5uZXQ+CkRhdGU6IFRodSwgMzAg QXByIDIwMjAgMDY6MTc6MTcgKzA5MDAKU3ViamVjdDogW1BBVENIIDQvNF0gbXV0dGVyOiByZWJ1 aWxkIGZvciBwaXBld2lyZS0wLjMKCi0tLQogc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9waXBld2ly ZS0wLjMucGF0Y2ggfCA1MjEgKysrKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9tdXR0ZXIv dGVtcGxhdGUgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgNTIy IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L211dHRlci9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv bXV0dGVyL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoIGIvc3JjcGtncy9tdXR0ZXIvcGF0Y2hl cy9waXBld2lyZS0wLjMucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAuLmViZmY2NWZiYTg1Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9tdXR0ZXIvcGF0Y2hl cy9waXBld2lyZS0wLjMucGF0Y2gKQEAgLTAsMCArMSw1MjEgQEAKK0J1aWxkIG11dHRlciBhZ2Fp bnN0IHBpcGV3aXJlLTAuMywgYmFzZWQgb24gYSBwYXRjaCBhdDoKK2h0dHBzOi8vZ2l0bGFiLmdu b21lLm9yZy9HTk9NRS9tdXR0ZXIvLS9tZXJnZV9yZXF1ZXN0cy8xMDYyCistLS0gbWVzb24uYnVp bGQKKysrKyBtZXNvbi5idWlsZAorQEAgLTUwLDcgKzUwLDcgQEAgbGliaW5wdXRfcmVxID0gJz49 IDEuNycKKyBnYm1fcmVxID0gJz49IDEwLjMnCisKKyAjIHNjcmVlbiBjYXN0IHZlcnNpb24gcmVx dWlyZW1lbnRzCistbGlicGlwZXdpcmVfcmVxID0gJz49IDAuMi41JworK2xpYnBpcGV3aXJlX3Jl cSA9ICc+PSAwLjMuMCcKKworIGdub21lID0gaW1wb3J0KCdnbm9tZScpCisgcGtnID0gaW1wb3J0 KCdwa2djb25maWcnKQorQEAgLTI0MSw3ICsyNDEsNyBAQCBlbmRpZgorCisgaGF2ZV9yZW1vdGVf ZGVza3RvcCA9IGdldF9vcHRpb24oJ3JlbW90ZV9kZXNrdG9wJykKKyBpZiBoYXZlX3JlbW90ZV9k ZXNrdG9wCistICBsaWJwaXBld2lyZV9kZXAgPSBkZXBlbmRlbmN5KCdsaWJwaXBld2lyZS0wLjIn LCB2ZXJzaW9uOiBsaWJwaXBld2lyZV9yZXEpCisrICBsaWJwaXBld2lyZV9kZXAgPSBkZXBlbmRl bmN5KCdsaWJwaXBld2lyZS0wLjMnLCB2ZXJzaW9uOiBsaWJwaXBld2lyZV9yZXEpCisgZW5kaWYK KworIGhhdmVfaW50cm9zcGVjdGlvbiA9IGdldF9vcHRpb24oJ2ludHJvc3BlY3Rpb24nKQorZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kcy9tZXRhLXNjcmVlbi1jYXN0LXN0cmVhbS1zcmMuYyBiL3Ny Yy9iYWNrZW5kcy9tZXRhLXNjcmVlbi1jYXN0LXN0cmVhbS1zcmMuYworaW5kZXggODJjNWNiYTQz Ni4uYmExY2U5NGE3ZSAxMDA2NDQKKy0tLSBzcmMvYmFja2VuZHMvbWV0YS1zY3JlZW4tY2FzdC1z dHJlYW0tc3JjLmMKKysrKyBzcmMvYmFja2VuZHMvbWV0YS1zY3JlZW4tY2FzdC1zdHJlYW0tc3Jj LmMKK0BAIC0yOSw2ICsyOSw3IEBACisgI2luY2x1ZGUgPHNwYS9wYXJhbS9wcm9wcy5oPgorICNp bmNsdWRlIDxzcGEvcGFyYW0vZm9ybWF0LXV0aWxzLmg+CisgI2luY2x1ZGUgPHNwYS9wYXJhbS92 aWRlby9mb3JtYXQtdXRpbHMuaD4KKysjaW5jbHVkZSA8c3BhL3V0aWxzL3Jlc3VsdC5oPgorICNp bmNsdWRlIDxzdGRpbnQuaD4KKyAjaW5jbHVkZSA8c3lzL21tYW4uaD4KKworQEAgLTYyLDE1ICs2 Myw2IEBAIGVudW0KKworIHN0YXRpYyBndWludCBzaWduYWxzW05fU0lHTkFMU107CisKKy10eXBl ZGVmIHN0cnVjdCBfTWV0YVNwYVR5cGUKKy17CistICBzdHJ1Y3Qgc3BhX3R5cGVfbWVkaWFfdHlw ZSBtZWRpYV90eXBlOworLSAgc3RydWN0IHNwYV90eXBlX21lZGlhX3N1YnR5cGUgbWVkaWFfc3Vi dHlwZTsKKy0gIHN0cnVjdCBzcGFfdHlwZV9mb3JtYXRfdmlkZW8gZm9ybWF0X3ZpZGVvOworLSAg c3RydWN0IHNwYV90eXBlX3ZpZGVvX2Zvcm1hdCB2aWRlb19mb3JtYXQ7CistICB1aW50MzJfdCBt ZXRhX2N1cnNvcjsKKy19IE1ldGFTcGFUeXBlOworLQorIHR5cGVkZWYgc3RydWN0IF9NZXRhUGlw ZVdpcmVTb3VyY2UKKyB7CisgICBHU291cmNlIGJhc2U7CitAQCAtODIsMTkgKzc0LDE5IEBAIHR5 cGVkZWYgc3RydWN0IF9NZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1ByaXZhdGUKKyB7CisgICBNZXRh U2NyZWVuQ2FzdFN0cmVhbSAqc3RyZWFtOworCisrICBzdHJ1Y3QgcHdfY29udGV4dCAqcGlwZXdp cmVfY29udGV4dDsKKyAgIHN0cnVjdCBwd19jb3JlICpwaXBld2lyZV9jb3JlOworLSAgc3RydWN0 IHB3X3JlbW90ZSAqcGlwZXdpcmVfcmVtb3RlOworLSAgc3RydWN0IHB3X3R5cGUgKnBpcGV3aXJl X3R5cGU7CisgICBNZXRhUGlwZVdpcmVTb3VyY2UgKnBpcGV3aXJlX3NvdXJjZTsKKy0gIHN0cnVj dCBzcGFfaG9vayBwaXBld2lyZV9yZW1vdGVfbGlzdGVuZXI7CisrICBzdHJ1Y3Qgc3BhX2hvb2sg cGlwZXdpcmVfY29yZV9saXN0ZW5lcjsKKworICAgZ2Jvb2xlYW4gaXNfZW5hYmxlZDsKKworICAg c3RydWN0IHB3X3N0cmVhbSAqcGlwZXdpcmVfc3RyZWFtOworICAgc3RydWN0IHNwYV9ob29rIHBp cGV3aXJlX3N0cmVhbV9saXN0ZW5lcjsKKysgIHVpbnQzMl90IG5vZGVfaWQ7CisKKy0gIE1ldGFT cGFUeXBlIHNwYV90eXBlOworICAgc3RydWN0IHNwYV92aWRlb19pbmZvX3JhdyB2aWRlb19mb3Jt YXQ7CisrICBpbnQgdmlkZW9fc3RyaWRlOworCisgICB1aW50NjRfdCBsYXN0X2ZyYW1lX3RpbWVz dGFtcF91czsKKworQEAgLTExMiw4ICsxMDQsNiBAQCBHX0RFRklORV9UWVBFX1dJVEhfQ09ERSAo TWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2luaXRfaW5pdGFi bGVfaWZhY2UpCisgICAgICAgICAgICAgICAgICAgICAgICAgIEdfQUREX1BSSVZBVEUgKE1ldGFT Y3JlZW5DYXN0U3RyZWFtU3JjKSkKKworLSNkZWZpbmUgUFJPUF9SQU5HRShtaW4sIG1heCkgMiwg KG1pbiksIChtYXgpCistCisgc3RhdGljIHZvaWQKKyBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9z cmNfZ2V0X3NwZWNzIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAgICAgICAgICAgICAgICAgICAgICp3aWR0 aCwKK0BAIC0yODYsOSArMjc2LDYgQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX3NldF9l bXB0eV9jdXJzb3Jfc3ByaXRlX21ldGFkYXRhIChNZXRhU2NyZWVuQ2FzdFN0cmUKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu dCAgICAgICAgICAgICAgICAgICAgICB4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICAgICAgICAgICAgICAgICAgICAg IHkpCisgeworLSAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRlICpwcml2ID0KKy0gICAg bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5jZV9wcml2YXRlIChzcmMpOwor LSAgTWV0YVNwYVR5cGUgKnNwYV90eXBlID0gJnByaXYtPnNwYV90eXBlOworICAgc3RydWN0IHNw YV9tZXRhX2JpdG1hcCAqc3BhX21ldGFfYml0bWFwOworCisgICBzcGFfbWV0YV9jdXJzb3ItPmlk ID0gMTsKK0BAIC0zMDAsNyArMjg3LDcgQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX3Nl dF9lbXB0eV9jdXJzb3Jfc3ByaXRlX21ldGFkYXRhIChNZXRhU2NyZWVuQ2FzdFN0cmUKKyAgIHNw YV9tZXRhX2JpdG1hcCA9IFNQQV9NRU1CRVIgKHNwYV9tZXRhX2N1cnNvciwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHNwYV9tZXRhX2N1cnNvci0+Yml0bWFwX29mZnNldCwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzcGFfbWV0YV9iaXRtYXApOwor LSAgc3BhX21ldGFfYml0bWFwLT5mb3JtYXQgPSBzcGFfdHlwZS0+dmlkZW9fZm9ybWF0LlJHQkE7 CisrICBzcGFfbWV0YV9iaXRtYXAtPmZvcm1hdCA9IFNQQV9WSURFT19GT1JNQVRfUkdCQTsKKyAg IHNwYV9tZXRhX2JpdG1hcC0+b2Zmc2V0ID0gc2l6ZW9mIChzdHJ1Y3Qgc3BhX21ldGFfYml0bWFw KTsKKworICAgc3BhX21ldGFfY3Vyc29yLT5ob3RzcG90LnggPSAwOworQEAgLTMxNyw5ICszMDQs NiBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfc2V0X2N1cnNvcl9zcHJpdGVfbWV0YWRh dGEgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgeSwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGZsb2F0ICAgICAgICAgICAgICAgICAgICBzY2FsZSkKKyB7CistICBNZXRhU2NyZWVuQ2FzdFN0 cmVhbVNyY1ByaXZhdGUgKnByaXYgPQorLSAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNf Z2V0X2luc3RhbmNlX3ByaXZhdGUgKHNyYyk7CistICBNZXRhU3BhVHlwZSAqc3BhX3R5cGUgPSAm cHJpdi0+c3BhX3R5cGU7CisgICBDb2dsVGV4dHVyZSAqY3Vyc29yX3RleHR1cmU7CisgICBzdHJ1 Y3Qgc3BhX21ldGFfYml0bWFwICpzcGFfbWV0YV9iaXRtYXA7CisgICBpbnQgaG90c3BvdF94LCBo b3RzcG90X3k7CitAQCAtMzQ2LDcgKzMzMCw3IEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3Ny Y19zZXRfY3Vyc29yX3Nwcml0ZV9tZXRhZGF0YSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMKKyAg IHNwYV9tZXRhX2JpdG1hcCA9IFNQQV9NRU1CRVIgKHNwYV9tZXRhX2N1cnNvciwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHNwYV9tZXRhX2N1cnNvci0+Yml0bWFwX29mZnNldCwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzcGFfbWV0YV9iaXRtYXAp OworLSAgc3BhX21ldGFfYml0bWFwLT5mb3JtYXQgPSBzcGFfdHlwZS0+dmlkZW9fZm9ybWF0LlJH QkE7CisrICBzcGFfbWV0YV9iaXRtYXAtPmZvcm1hdCA9IFNQQV9WSURFT19GT1JNQVRfUkdCQTsK KyAgIHNwYV9tZXRhX2JpdG1hcC0+b2Zmc2V0ID0gc2l6ZW9mIChzdHJ1Y3Qgc3BhX21ldGFfYml0 bWFwKTsKKworICAgbWV0YV9jdXJzb3Jfc3ByaXRlX2dldF9ob3RzcG90IChjdXJzb3Jfc3ByaXRl LCAmaG90c3BvdF94LCAmaG90c3BvdF95KTsKK0BAIC0zODIsMTIgKzM2NiwxMCBAQCBzdGF0aWMg dm9pZAorIGFkZF9jdXJzb3JfbWV0YWRhdGEgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICpzcmMs CisgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHNwYV9idWZmZXIgICAgICAgKnNwYV9idWZm ZXIpCisgeworLSAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRlICpwcml2ID0KKy0gICAg bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5jZV9wcml2YXRlIChzcmMpOwor LSAgTWV0YVNwYVR5cGUgKnNwYV90eXBlID0gJnByaXYtPnNwYV90eXBlOworICAgc3RydWN0IHNw YV9tZXRhX2N1cnNvciAqc3BhX21ldGFfY3Vyc29yOworCistICBzcGFfbWV0YV9jdXJzb3IgPSBz cGFfYnVmZmVyX2ZpbmRfbWV0YSAoc3BhX2J1ZmZlciwgc3BhX3R5cGUtPm1ldGFfY3Vyc29yKTsK KysgIHNwYV9tZXRhX2N1cnNvciA9IHNwYV9idWZmZXJfZmluZF9tZXRhX2RhdGEgKHNwYV9idWZm ZXIsIFNQQV9NRVRBX0N1cnNvciwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHNpemVvZiAoKnNwYV9tZXRhX2N1cnNvcikpOworICAgaWYgKHNwYV9tZXRh X2N1cnNvcikKKyAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX3NldF9jdXJzb3JfbWV0 YWRhdGEgKHNyYywgc3BhX21ldGFfY3Vyc29yKTsKKyB9CitAQCAtNDQ3LDE0ICs0MjksMTQgQEAg bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX21heWJlX3JlY29yZF9mcmFtZSAoTWV0YVNjcmVl bkNhc3RTdHJlYW1TcmMgKnNyYykKKyAgICAgeworICAgICAgIGRhdGEgPSBzcGFfYnVmZmVyLT5k YXRhc1swXS5kYXRhOworICAgICB9CistICBlbHNlIGlmIChzcGFfYnVmZmVyLT5kYXRhc1swXS50 eXBlID09IHByaXYtPnBpcGV3aXJlX3R5cGUtPmRhdGEuTWVtRmQpCisrICBlbHNlIGlmIChzcGFf YnVmZmVyLT5kYXRhc1swXS50eXBlID09IFNQQV9EQVRBX01lbUZkKQorICAgICB7CisgICAgICAg bWFwID0gbW1hcCAoTlVMTCwgc3BhX2J1ZmZlci0+ZGF0YXNbMF0ubWF4c2l6ZSArIHNwYV9idWZm ZXItPmRhdGFzWzBdLm1hcG9mZnNldCwKKyAgICAgICAgICAgICAgICAgICBQUk9UX1JFQUQgfCBQ Uk9UX1dSSVRFLCBNQVBfU0hBUkVELAorICAgICAgICAgICAgICAgICAgIHNwYV9idWZmZXItPmRh dGFzWzBdLmZkLCAwKTsKKyAgICAgICBpZiAobWFwID09IE1BUF9GQUlMRUQpCisgICAgICAgICB7 CistICAgICAgICAgIGdfd2FybmluZyAoIkZhaWxlZCB0byBtbWFwIHBpcGV3aXJlIHN0cmVhbSBi dWZmZXI6ICVzXG4iLAorKyAgICAgICAgICBnX3dhcm5pbmcgKCJGYWlsZWQgdG8gbW1hcCBwaXBl d2lyZSBzdHJlYW0gYnVmZmVyOiAlcyIsCisgICAgICAgICAgICAgICAgICAgICAgc3RyZXJyb3Ig KGVycm5vKSk7CisgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgIH0KK0BAIC00NjksMjggKzQ1 MSwzMCBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfbWF5YmVfcmVjb3JkX2ZyYW1lIChN ZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjKQorCisgICBpZiAobWV0YV9zY3JlZW5fY2FzdF9z dHJlYW1fc3JjX3JlY29yZF9mcmFtZSAoc3JjLCBkYXRhKSkKKyAgICAgeworLSAgICAgIHN0cnVj dCBzcGFfbWV0YV92aWRlb19jcm9wICpzcGFfbWV0YV92aWRlb19jcm9wOworKyAgICAgIHN0cnVj dCBzcGFfbWV0YV9yZWdpb24gKnNwYV9tZXRhX3ZpZGVvX2Nyb3A7CisKKyAgICAgICBzcGFfYnVm ZmVyLT5kYXRhc1swXS5jaHVuay0+c2l6ZSA9IHNwYV9idWZmZXItPmRhdGFzWzBdLm1heHNpemU7 CisrICAgICAgc3BhX2J1ZmZlci0+ZGF0YXNbMF0uY2h1bmstPnN0cmlkZSA9IHByaXYtPnZpZGVv X3N0cmlkZTsKKworICAgICAgIC8qIFVwZGF0ZSBWaWRlb0Nyb3AgaWYgbmVlZGVkICovCisgICAg ICAgc3BhX21ldGFfdmlkZW9fY3JvcCA9CistICAgICAgICBzcGFfYnVmZmVyX2ZpbmRfbWV0YSAo c3BhX2J1ZmZlciwgcHJpdi0+cGlwZXdpcmVfdHlwZS0+bWV0YS5WaWRlb0Nyb3ApOworKyAgICAg ICAgc3BhX2J1ZmZlcl9maW5kX21ldGFfZGF0YSAoc3BhX2J1ZmZlciwgU1BBX01FVEFfVmlkZW9D cm9wLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mICgqc3BhX21l dGFfdmlkZW9fY3JvcCkpOworICAgICAgIGlmIChzcGFfbWV0YV92aWRlb19jcm9wKQorICAgICAg ICAgeworICAgICAgICAgICBpZiAobWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF92aWRl b2Nyb3AgKHNyYywgJmNyb3BfcmVjdCkpCisgICAgICAgICAgICAgeworLSAgICAgICAgICAgICAg c3BhX21ldGFfdmlkZW9fY3JvcC0+eCA9IGNyb3BfcmVjdC54OworLSAgICAgICAgICAgICAgc3Bh X21ldGFfdmlkZW9fY3JvcC0+eSA9IGNyb3BfcmVjdC55OworLSAgICAgICAgICAgICAgc3BhX21l dGFfdmlkZW9fY3JvcC0+d2lkdGggPSBjcm9wX3JlY3Qud2lkdGg7CistICAgICAgICAgICAgICBz cGFfbWV0YV92aWRlb19jcm9wLT5oZWlnaHQgPSBjcm9wX3JlY3QuaGVpZ2h0OworKyAgICAgICAg ICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnBvc2l0aW9uLnggPSBjcm9wX3JlY3Qu eDsKKysgICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5wb3NpdGlvbi55 ID0gY3JvcF9yZWN0Lnk7CisrICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdp b24uc2l6ZS53aWR0aCA9IGNyb3BfcmVjdC53aWR0aDsKKysgICAgICAgICAgICAgIHNwYV9tZXRh X3ZpZGVvX2Nyb3AtPnJlZ2lvbi5zaXplLmhlaWdodCA9IGNyb3BfcmVjdC5oZWlnaHQ7CisgICAg ICAgICAgICAgfQorICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgeworLSAgICAgICAgICAg ICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+eCA9IDA7CistICAgICAgICAgICAgICBzcGFfbWV0YV92 aWRlb19jcm9wLT55ID0gMDsKKy0gICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPndp ZHRoID0gcHJpdi0+c3RyZWFtX3dpZHRoOworLSAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9f Y3JvcC0+aGVpZ2h0ID0gcHJpdi0+c3RyZWFtX2hlaWdodDsKKysgICAgICAgICAgICAgIHNwYV9t ZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5wb3NpdGlvbi54ID0gMDsKKysgICAgICAgICAgICAgIHNw YV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5wb3NpdGlvbi55ID0gMDsKKysgICAgICAgICAgICAg IHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5zaXplLndpZHRoID0gcHJpdi0+c3RyZWFtX3dp ZHRoOworKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnNpemUuaGVp Z2h0ID0gcHJpdi0+c3RyZWFtX2hlaWdodDsKKyAgICAgICAgICAgICB9CisgICAgICAgICB9Cisg ICAgIH0KK0BAIC01NTUsNyArNTM5LDYgQEAgb25fc3RyZWFtX3N0YXRlX2NoYW5nZWQgKHZvaWQg ICAgICAgICAgICAgICAgICpkYXRhLAorICAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgKnNyYyA9 IGRhdGE7CisgICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1ByaXZhdGUgKnByaXYgPQorICAgICBt ZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0X2luc3RhbmNlX3ByaXZhdGUgKHNyYyk7Cist ICB1aW50MzJfdCBub2RlX2lkOworCisgICBzd2l0Y2ggKHN0YXRlKQorICAgICB7CitAQCAtNTYz LDE0ICs1NDYsMTIgQEAgb25fc3RyZWFtX3N0YXRlX2NoYW5nZWQgKHZvaWQgICAgICAgICAgICAg ICAgICpkYXRhLAorICAgICAgIGdfd2FybmluZyAoInBpcGV3aXJlIHN0cmVhbSBlcnJvcjogJXMi LCBlcnJvcl9tZXNzYWdlKTsKKyAgICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfbm90 aWZ5X2Nsb3NlZCAoc3JjKTsKKyAgICAgICBicmVhazsKKy0gICAgY2FzZSBQV19TVFJFQU1fU1RB VEVfQ09ORklHVVJFOgorLSAgICAgIG5vZGVfaWQgPSBwd19zdHJlYW1fZ2V0X25vZGVfaWQgKHBy aXYtPnBpcGV3aXJlX3N0cmVhbSk7CistICAgICAgZ19zaWduYWxfZW1pdCAoc3JjLCBzaWduYWxz W1JFQURZXSwgMCwgKHVuc2lnbmVkIGludCkgbm9kZV9pZCk7CistICAgICAgYnJlYWs7CistICAg IGNhc2UgUFdfU1RSRUFNX1NUQVRFX1VOQ09OTkVDVEVEOgorLSAgICBjYXNlIFBXX1NUUkVBTV9T VEFURV9DT05ORUNUSU5HOgorLSAgICBjYXNlIFBXX1NUUkVBTV9TVEFURV9SRUFEWToKKyAgICAg Y2FzZSBQV19TVFJFQU1fU1RBVEVfUEFVU0VEOgorKyAgICAgIGlmIChwcml2LT5ub2RlX2lkID09 IFNQQV9JRF9JTlZBTElEICYmIHByaXYtPnBpcGV3aXJlX3N0cmVhbSkKKysgICAgICAgIHsKKysg ICAgICAgICAgcHJpdi0+bm9kZV9pZCA9IHB3X3N0cmVhbV9nZXRfbm9kZV9pZCAocHJpdi0+cGlw ZXdpcmVfc3RyZWFtKTsKKysgICAgICAgICAgZ19zaWduYWxfZW1pdCAoc3JjLCBzaWduYWxzW1JF QURZXSwgMCwgKHVuc2lnbmVkIGludCkgcHJpdi0+bm9kZV9pZCk7CisrICAgICAgICB9CisgICAg ICAgaWYgKG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19pc19lbmFibGVkIChzcmMpKQorICAg ICAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2Rpc2FibGUgKHNyYyk7CisgICAgICAg YnJlYWs7CitAQCAtNTc4LDY4ICs1NTksNjkgQEAgb25fc3RyZWFtX3N0YXRlX2NoYW5nZWQgKHZv aWQgICAgICAgICAgICAgICAgICpkYXRhLAorICAgICAgIGlmICghbWV0YV9zY3JlZW5fY2FzdF9z dHJlYW1fc3JjX2lzX2VuYWJsZWQgKHNyYykpCisgICAgICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0 cmVhbV9zcmNfZW5hYmxlIChzcmMpOworICAgICAgIGJyZWFrOworKyAgICBjYXNlIFBXX1NUUkVB TV9TVEFURV9VTkNPTk5FQ1RFRDoKKysgICAgY2FzZSBQV19TVFJFQU1fU1RBVEVfQ09OTkVDVElO RzoKKysgICAgICBicmVhazsKKyAgICAgfQorIH0KKworIHN0YXRpYyB2b2lkCistb25fc3RyZWFt X2Zvcm1hdF9jaGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAqZGF0YSwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBzcGFfcG9kICpmb3JtYXQpCisrb25fc3RyZWFt X3BhcmFtX2NoYW5nZWQgKHZvaWQgICAgICAgICAgICAgICAgICpkYXRhLAorKyAgICAgICAgICAg ICAgICAgICAgICAgICB1aW50MzJfdCAgICAgICAgICAgICAgaWQsCisrICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IHN0cnVjdCBzcGFfcG9kICpmb3JtYXQpCisgeworICAgTWV0YVNjcmVl bkNhc3RTdHJlYW1TcmMgKnNyYyA9IGRhdGE7CisgICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1By aXZhdGUgKnByaXYgPQorICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0X2luc3Rh bmNlX3ByaXZhdGUgKHNyYyk7CistICBzdHJ1Y3QgcHdfdHlwZSAqcGlwZXdpcmVfdHlwZSA9IHBy aXYtPnBpcGV3aXJlX3R5cGU7CisgICB1aW50OF90IHBhcmFtc19idWZmZXJbMTAyNF07CisgICBp bnQzMl90IHdpZHRoLCBoZWlnaHQsIHN0cmlkZSwgc2l6ZTsKKyAgIHN0cnVjdCBzcGFfcG9kX2J1 aWxkZXIgcG9kX2J1aWxkZXI7CisgICBjb25zdCBzdHJ1Y3Qgc3BhX3BvZCAqcGFyYW1zWzNdOwor ICAgY29uc3QgaW50IGJwcCA9IDQ7CisKKy0gIGlmICghZm9ybWF0KQorLSAgICB7CistICAgICAg cHdfc3RyZWFtX2ZpbmlzaF9mb3JtYXQgKHByaXYtPnBpcGV3aXJlX3N0cmVhbSwgMCwgTlVMTCwg MCk7CistICAgICAgcmV0dXJuOworLSAgICB9CisrICBpZiAoIWZvcm1hdCB8fCBpZCAhPSBTUEFf UEFSQU1fRm9ybWF0KQorKyAgICByZXR1cm47CisKKyAgIHNwYV9mb3JtYXRfdmlkZW9fcmF3X3Bh cnNlIChmb3JtYXQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnByaXYtPnZpZGVv X2Zvcm1hdCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJpdi0+c3BhX3R5cGUu Zm9ybWF0X3ZpZGVvKTsKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJpdi0+dmlk ZW9fZm9ybWF0KTsKKworICAgd2lkdGggPSBwcml2LT52aWRlb19mb3JtYXQuc2l6ZS53aWR0aDsK KyAgIGhlaWdodCA9IHByaXYtPnZpZGVvX2Zvcm1hdC5zaXplLmhlaWdodDsKKyAgIHN0cmlkZSA9 IFNQQV9ST1VORF9VUF9OICh3aWR0aCAqIGJwcCwgNCk7CisgICBzaXplID0gaGVpZ2h0ICogc3Ry aWRlOworCisrICBwcml2LT52aWRlb19zdHJpZGUgPSBzdHJpZGU7CisrCisgICBwb2RfYnVpbGRl ciA9IFNQQV9QT0RfQlVJTERFUl9JTklUIChwYXJhbXNfYnVmZmVyLCBzaXplb2YgKHBhcmFtc19i dWZmZXIpKTsKKworLSAgcGFyYW1zWzBdID0gc3BhX3BvZF9idWlsZGVyX29iamVjdCAoCisrICBw YXJhbXNbMF0gPSBzcGFfcG9kX2J1aWxkZXJfYWRkX29iamVjdCAoCisgICAgICZwb2RfYnVpbGRl ciwKKy0gICAgcGlwZXdpcmVfdHlwZS0+cGFyYW0uaWRCdWZmZXJzLCBwaXBld2lyZV90eXBlLT5w YXJhbV9idWZmZXJzLkJ1ZmZlcnMsCistICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fYnVm ZmVycy5zaXplLCAiaSIsIHNpemUsCistICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fYnVm ZmVycy5zdHJpZGUsICJpIiwgc3RyaWRlLAorLSAgICAiOiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFt X2J1ZmZlcnMuYnVmZmVycywgImlydSIsIDE2LCBQUk9QX1JBTkdFICgyLCAxNiksCistICAgICI6 IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fYnVmZmVycy5hbGlnbiwgImkiLCAxNik7CistCistICBw YXJhbXNbMV0gPSBzcGFfcG9kX2J1aWxkZXJfb2JqZWN0ICgKKysgICAgU1BBX1RZUEVfT0JKRUNU X1BhcmFtQnVmZmVycywgU1BBX1BBUkFNX0J1ZmZlcnMsCisrICAgIFNQQV9QQVJBTV9CVUZGRVJT X2J1ZmZlcnMsIFNQQV9QT0RfQ0hPSUNFX1JBTkdFX0ludCAoMTYsIDIsIDE2KSwKKysgICAgU1BB X1BBUkFNX0JVRkZFUlNfYmxvY2tzLCBTUEFfUE9EX0ludCAoMSksCisrICAgIFNQQV9QQVJBTV9C VUZGRVJTX3NpemUsIFNQQV9QT0RfSW50IChzaXplKSwKKysgICAgU1BBX1BBUkFNX0JVRkZFUlNf c3RyaWRlLCBTUEFfUE9EX0ludCAoc3RyaWRlKSwKKysgICAgU1BBX1BBUkFNX0JVRkZFUlNfYWxp Z24sIFNQQV9QT0RfSW50ICgxNikpOworKworKyAgcGFyYW1zWzFdID0gc3BhX3BvZF9idWlsZGVy X2FkZF9vYmplY3QgKAorICAgICAmcG9kX2J1aWxkZXIsCistICAgIHBpcGV3aXJlX3R5cGUtPnBh cmFtLmlkTWV0YSwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fbWV0YS5NZXRhLAorLSAgICAiOiIsIHBp cGV3aXJlX3R5cGUtPnBhcmFtX21ldGEudHlwZSwgIkkiLCBwaXBld2lyZV90eXBlLT5tZXRhLlZp ZGVvQ3JvcCwKKy0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9tZXRhLnNpemUsICJpIiwg c2l6ZW9mIChzdHJ1Y3Qgc3BhX21ldGFfdmlkZW9fY3JvcCkpOworKyAgICBTUEFfVFlQRV9PQkpF Q1RfUGFyYW1NZXRhLCBTUEFfUEFSQU1fTWV0YSwKKysgICAgU1BBX1BBUkFNX01FVEFfdHlwZSwg U1BBX1BPRF9JZCAoU1BBX01FVEFfVmlkZW9Dcm9wKSwKKysgICAgU1BBX1BBUkFNX01FVEFfc2l6 ZSwgU1BBX1BPRF9JbnQgKHNpemVvZiAoc3RydWN0IHNwYV9tZXRhX3JlZ2lvbikpKTsKKworLSAg cGFyYW1zWzJdID0gc3BhX3BvZF9idWlsZGVyX29iamVjdCAoCisrICBwYXJhbXNbMl0gPSBzcGFf cG9kX2J1aWxkZXJfYWRkX29iamVjdCAoCisgICAgICZwb2RfYnVpbGRlciwKKy0gICAgcGlwZXdp cmVfdHlwZS0+cGFyYW0uaWRNZXRhLCBwaXBld2lyZV90eXBlLT5wYXJhbV9tZXRhLk1ldGEsCist ICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fbWV0YS50eXBlLCAiSSIsIHByaXYtPnNwYV90 eXBlLm1ldGFfY3Vyc29yLAorLSAgICAiOiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX21ldGEuc2l6 ZSwgImkiLCBDVVJTT1JfTUVUQV9TSVpFICg2NCwgNjQpKTsKKysgICAgU1BBX1RZUEVfT0JKRUNU X1BhcmFtTWV0YSwgU1BBX1BBUkFNX01ldGEsCisrICAgIFNQQV9QQVJBTV9NRVRBX3R5cGUsIFNQ QV9QT0RfSWQgKFNQQV9NRVRBX0N1cnNvciksCisrICAgIFNQQV9QQVJBTV9NRVRBX3NpemUsIFNQ QV9QT0RfSW50IChDVVJTT1JfTUVUQV9TSVpFICg2NCwgNjQpKSk7CisKKy0gIHB3X3N0cmVhbV9m aW5pc2hfZm9ybWF0IChwcml2LT5waXBld2lyZV9zdHJlYW0sIDAsCistICAgICAgICAgICAgICAg ICAgICAgICAgICAgcGFyYW1zLCBHX05fRUxFTUVOVFMgKHBhcmFtcykpOworKyAgcHdfc3RyZWFt X3VwZGF0ZV9wYXJhbXMgKHByaXYtPnBpcGV3aXJlX3N0cmVhbSwgcGFyYW1zLCBHX05fRUxFTUVO VFMgKHBhcmFtcykpOworIH0KKworIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfc3RyZWFtX2V2ZW50 cyBzdHJlYW1fZXZlbnRzID0geworICAgUFdfVkVSU0lPTl9TVFJFQU1fRVZFTlRTLAorICAgLnN0 YXRlX2NoYW5nZWQgPSBvbl9zdHJlYW1fc3RhdGVfY2hhbmdlZCwKKy0gIC5mb3JtYXRfY2hhbmdl ZCA9IG9uX3N0cmVhbV9mb3JtYXRfY2hhbmdlZCwKKysgIC5wYXJhbV9jaGFuZ2VkID0gb25fc3Ry ZWFtX3BhcmFtX2NoYW5nZWQsCisgfTsKKworIHN0YXRpYyBzdHJ1Y3QgcHdfc3RyZWFtICoKK0BA IC02NTIsOCArNjM0LDYgQEAgY3JlYXRlX3BpcGV3aXJlX3N0cmVhbSAoTWV0YVNjcmVlbkNhc3RT dHJlYW1TcmMgICpzcmMsCisgICB1aW50OF90IGJ1ZmZlclsxMDI0XTsKKyAgIHN0cnVjdCBzcGFf cG9kX2J1aWxkZXIgcG9kX2J1aWxkZXIgPQorICAgICBTUEFfUE9EX0JVSUxERVJfSU5JVCAoYnVm ZmVyLCBzaXplb2YgKGJ1ZmZlcikpOworLSAgTWV0YVNwYVR5cGUgKnNwYV90eXBlID0gJnByaXYt PnNwYV90eXBlOworLSAgc3RydWN0IHB3X3R5cGUgKnBpcGV3aXJlX3R5cGUgPSBwcml2LT5waXBl d2lyZV90eXBlOworICAgZmxvYXQgZnJhbWVfcmF0ZTsKKyAgIE1ldGFGcmFjdGlvbiBmcmFtZV9y YXRlX2ZyYWN0aW9uOworICAgc3RydWN0IHNwYV9mcmFjdGlvbiBtYXhfZnJhbWVyYXRlOworQEAg LTY2MSw3ICs2NDEsOSBAQCBjcmVhdGVfcGlwZXdpcmVfc3RyZWFtIChNZXRhU2NyZWVuQ2FzdFN0 cmVhbVNyYyAgKnNyYywKKyAgIGNvbnN0IHN0cnVjdCBzcGFfcG9kICpwYXJhbXNbMV07CisgICBp bnQgcmVzdWx0OworCistICBwaXBld2lyZV9zdHJlYW0gPSBwd19zdHJlYW1fbmV3IChwcml2LT5w aXBld2lyZV9yZW1vdGUsCisrICBwcml2LT5ub2RlX2lkID0gU1BBX0lEX0lOVkFMSUQ7CisrCisr ICBwaXBld2lyZV9zdHJlYW0gPSBwd19zdHJlYW1fbmV3IChwcml2LT5waXBld2lyZV9jb3JlLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1ldGEtc2NyZWVuLWNhc3Qtc3Jj IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgaWYgKCFw aXBld2lyZV9zdHJlYW0pCitAQCAtNjgyLDE3ICs2NjQsMTcgQEAgY3JlYXRlX3BpcGV3aXJlX3N0 cmVhbSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgICpzcmMsCisgICBtYXhfZnJhbWVyYXRlID0g U1BBX0ZSQUNUSU9OIChmcmFtZV9yYXRlX2ZyYWN0aW9uLm51bSwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGZyYW1lX3JhdGVfZnJhY3Rpb24uZGVub20pOworCistICBwYXJhbXNb MF0gPSBzcGFfcG9kX2J1aWxkZXJfb2JqZWN0ICgKKysgIHBhcmFtc1swXSA9IHNwYV9wb2RfYnVp bGRlcl9hZGRfb2JqZWN0ICgKKyAgICAgJnBvZF9idWlsZGVyLAorLSAgICBwaXBld2lyZV90eXBl LT5wYXJhbS5pZEVudW1Gb3JtYXQsIHBpcGV3aXJlX3R5cGUtPnNwYV9mb3JtYXQsCistICAgICJJ Iiwgc3BhX3R5cGUtPm1lZGlhX3R5cGUudmlkZW8sCistICAgICJJIiwgc3BhX3R5cGUtPm1lZGlh X3N1YnR5cGUucmF3LAorLSAgICAiOiIsIHNwYV90eXBlLT5mb3JtYXRfdmlkZW8uZm9ybWF0LCAi SSIsIHNwYV90eXBlLT52aWRlb19mb3JtYXQuQkdSeCwKKy0gICAgIjoiLCBzcGFfdHlwZS0+Zm9y bWF0X3ZpZGVvLnNpemUsICJSIiwgJlNQQV9SRUNUQU5HTEUgKHByaXYtPnN0cmVhbV93aWR0aCwK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHByaXYtPnN0cmVhbV9oZWlnaHQpLAorLSAgICAiOiIsIHNwYV90eXBlLT5mb3JtYXRfdmlk ZW8uZnJhbWVyYXRlLCAiRiIsICZTUEFfRlJBQ1RJT04gKDAsIDEpLAorLSAgICAiOiIsIHNwYV90 eXBlLT5mb3JtYXRfdmlkZW8ubWF4X2ZyYW1lcmF0ZSwgIkZydSIsICZtYXhfZnJhbWVyYXRlLAor LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBS T1BfUkFOR0UgKCZtaW5fZnJhbWVyYXRlLAorKyAgICBTUEFfVFlQRV9PQkpFQ1RfRm9ybWF0LCBT UEFfUEFSQU1fRW51bUZvcm1hdCwKKysgICAgU1BBX0ZPUk1BVF9tZWRpYVR5cGUsIFNQQV9QT0Rf SWQgKFNQQV9NRURJQV9UWVBFX3ZpZGVvKSwKKysgICAgU1BBX0ZPUk1BVF9tZWRpYVN1YnR5cGUs IFNQQV9QT0RfSWQgKFNQQV9NRURJQV9TVUJUWVBFX3JhdyksCisrICAgIFNQQV9GT1JNQVRfVklE RU9fZm9ybWF0LCBTUEFfUE9EX0lkIChTUEFfVklERU9fRk9STUFUX0JHUngpLAorKyAgICBTUEFf Rk9STUFUX1ZJREVPX3NpemUsIFNQQV9QT0RfUmVjdGFuZ2xlICgmU1BBX1JFQ1RBTkdMRSAocHJp di0+c3RyZWFtX3dpZHRoLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgcHJpdi0+c3RyZWFtX2hlaWdodCkpLAorKyAgICBTUEFf Rk9STUFUX1ZJREVPX2ZyYW1lcmF0ZSwgU1BBX1BPRF9GcmFjdGlvbiAoJlNQQV9GUkFDVElPTiAo MCwgMSkpLAorKyAgICBTUEFfRk9STUFUX1ZJREVPX21heEZyYW1lcmF0ZSwgU1BBX1BPRF9DSE9J Q0VfUkFOR0VfRnJhY3Rpb24gKCZtYXhfZnJhbWVyYXRlLAorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtaW5fZnJhbWVy YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICZtYXhfZnJhbWVyYXRlKSk7CisKKyAgIHB3X3N0cmVhbV9hZGRfbGlz dGVuZXIgKHBpcGV3aXJlX3N0cmVhbSwKK0BAIC03MDIsNyArNjg0LDcgQEAgY3JlYXRlX3BpcGV3 aXJlX3N0cmVhbSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgICpzcmMsCisKKyAgIHJlc3VsdCA9 IHB3X3N0cmVhbV9jb25uZWN0IChwaXBld2lyZV9zdHJlYW0sCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgUFdfRElSRUNUSU9OX09VVFBVVCwKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNQQV9JRF9JTlZB TElELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChQV19TVFJFQU1fRkxBR19EUklW RVIgfAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQV19TVFJFQU1fRkxBR19NQVBf QlVGRkVSUyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zLCBHX05fRUxF TUVOVFMgKHBhcmFtcykpOworQEAgLTcxNyw0MCArNjk5LDE4IEBAIGNyZWF0ZV9waXBld2lyZV9z dHJlYW0gKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICAqc3JjLAorIH0KKworIHN0YXRpYyB2b2lk Cistb25fc3RhdGVfY2hhbmdlZCAodm9pZCAgICAgICAgICAgICAgICAgKmRhdGEsCistICAgICAg ICAgICAgICAgICAgZW51bSBwd19yZW1vdGVfc3RhdGUgIG9sZCwKKy0gICAgICAgICAgICAgICAg ICBlbnVtIHB3X3JlbW90ZV9zdGF0ZSAgc3RhdGUsCistICAgICAgICAgICAgICAgICAgY29uc3Qg Y2hhciAgICAgICAgICAgKmVycm9yX21lc3NhZ2UpCisrb25fY29yZV9lcnJvciAodm9pZCAgICAg ICAqZGF0YSwKKysgICAgICAgICAgICAgICB1aW50MzJfdCAgICBpZCwKKysJICAgICAgIGludCAg ICAgICAgIHNlcSwKKysJICAgICAgIGludCAgICAgICAgIHJlcywKKysJICAgICAgIGNvbnN0IGNo YXIgKm1lc3NhZ2UpCisgeworICAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgKnNyYyA9IGRhdGE7 CistICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1ByaXZhdGUgKnByaXYgPQorLSAgICBtZXRhX3Nj cmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0X2luc3RhbmNlX3ByaXZhdGUgKHNyYyk7CistICBzdHJ1 Y3QgcHdfc3RyZWFtICpwaXBld2lyZV9zdHJlYW07CistICBHRXJyb3IgKmVycm9yID0gTlVMTDsK KworLSAgc3dpdGNoIChzdGF0ZSkKKy0gICAgeworLSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9F UlJPUjoKKy0gICAgICBnX3dhcm5pbmcgKCJwaXBld2lyZSByZW1vdGUgZXJyb3I6ICVzXG4iLCBl cnJvcl9tZXNzYWdlKTsKKy0gICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfbm90aWZ5 X2Nsb3NlZCAoc3JjKTsKKy0gICAgICBicmVhazsKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVf Q09OTkVDVEVEOgorLSAgICAgIHBpcGV3aXJlX3N0cmVhbSA9IGNyZWF0ZV9waXBld2lyZV9zdHJl YW0gKHNyYywgJmVycm9yKTsKKy0gICAgICBpZiAoIXBpcGV3aXJlX3N0cmVhbSkKKy0gICAgICAg IHsKKy0gICAgICAgICAgZ193YXJuaW5nICgiQ291bGQgbm90IGNyZWF0ZSBwaXBld2lyZSBzdHJl YW06ICVzIiwgZXJyb3ItPm1lc3NhZ2UpOworLSAgICAgICAgICBnX2Vycm9yX2ZyZWUgKGVycm9y KTsKKy0gICAgICAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX25vdGlmeV9jbG9zZWQg KHNyYyk7CistICAgICAgICB9CistICAgICAgZWxzZQorLSAgICAgICAgeworLSAgICAgICAgICBw cml2LT5waXBld2lyZV9zdHJlYW0gPSBwaXBld2lyZV9zdHJlYW07CistICAgICAgICB9CistICAg ICAgYnJlYWs7CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX1VOQ09OTkVDVEVEOgorLSAgICBj YXNlIFBXX1JFTU9URV9TVEFURV9DT05ORUNUSU5HOgorLSAgICAgIGJyZWFrOworLSAgICB9Cisr ICBnX3dhcm5pbmcgKCJwaXBld2lyZSByZW1vdGUgZXJyb3I6IGlkOiV1ICVzIiwgaWQsIG1lc3Nh Z2UpOworKworKyAgaWYgKGlkID09IFBXX0lEX0NPUkUgJiYgcmVzID09IC1FUElQRSkKKysgICAg bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX25vdGlmeV9jbG9zZWQgKHNyYyk7CisgfQorCisg c3RhdGljIGdib29sZWFuCitAQCAtNzkzLDE3ICs3NTMsNiBAQCBzdGF0aWMgR1NvdXJjZUZ1bmNz IHBpcGV3aXJlX3NvdXJjZV9mdW5jcyA9CisgICBwaXBld2lyZV9sb29wX3NvdXJjZV9maW5hbGl6 ZQorIH07CisKKy1zdGF0aWMgdm9pZAorLWluaXRfc3BhX3R5cGUgKE1ldGFTcGFUeXBlICAgICAg ICAgKnR5cGUsCistICAgICAgICAgICAgICAgc3RydWN0IHNwYV90eXBlX21hcCAqbWFwKQorLXsK Ky0gIHNwYV90eXBlX21lZGlhX3R5cGVfbWFwIChtYXAsICZ0eXBlLT5tZWRpYV90eXBlKTsKKy0g IHNwYV90eXBlX21lZGlhX3N1YnR5cGVfbWFwIChtYXAsICZ0eXBlLT5tZWRpYV9zdWJ0eXBlKTsK Ky0gIHNwYV90eXBlX2Zvcm1hdF92aWRlb19tYXAgKG1hcCwgJnR5cGUtPmZvcm1hdF92aWRlbyk7 CistICBzcGFfdHlwZV92aWRlb19mb3JtYXRfbWFwIChtYXAsICZ0eXBlLT52aWRlb19mb3JtYXQp OworLSAgdHlwZS0+bWV0YV9jdXJzb3IgPSBzcGFfdHlwZV9tYXBfZ2V0X2lkKG1hcCwgU1BBX1RZ UEVfTUVUQV9fQ3Vyc29yKTsKKy19CistCisgc3RhdGljIE1ldGFQaXBlV2lyZVNvdXJjZSAqCisg Y3JlYXRlX3BpcGV3aXJlX3NvdXJjZSAodm9pZCkKKyB7CitAQCAtODI5LDkgKzc3OCw5IEBAIGNy ZWF0ZV9waXBld2lyZV9zb3VyY2UgKHZvaWQpCisgICByZXR1cm4gcGlwZXdpcmVfc291cmNlOwor IH0KKworLXN0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfcmVtb3RlX2V2ZW50cyByZW1vdGVfZXZlbnRz ID0geworLSAgUFdfVkVSU0lPTl9SRU1PVEVfRVZFTlRTLAorLSAgLnN0YXRlX2NoYW5nZWQgPSBv bl9zdGF0ZV9jaGFuZ2VkLAorK3N0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfY29yZV9ldmVudHMgY29y ZV9ldmVudHMgPSB7CisrICBQV19WRVJTSU9OX0NPUkVfRVZFTlRTLAorKyAgLmVycm9yID0gb25f Y29yZV9lcnJvciwKKyB9OworCisgc3RhdGljIGdib29sZWFuCitAQCAtODUxLDM3ICs4MDAsMzEg QEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2luaXRhYmxlX2luaXQgKEdJbml0YWJsZSAg ICAgKmluaXRhYmxlLAorICAgICAgIHJldHVybiBGQUxTRTsKKyAgICAgfQorCistICBwcml2LT5w aXBld2lyZV9jb3JlID0gcHdfY29yZV9uZXcgKHByaXYtPnBpcGV3aXJlX3NvdXJjZS0+cGlwZXdp cmVfbG9vcCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7Cist ICBpZiAoIXByaXYtPnBpcGV3aXJlX2NvcmUpCisrICBwcml2LT5waXBld2lyZV9jb250ZXh0ID0g cHdfY29udGV4dF9uZXcgKHByaXYtPnBpcGV3aXJlX3NvdXJjZS0+cGlwZXdpcmVfbG9vcCwKKysg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCk7CisrICBp ZiAoIXByaXYtPnBpcGV3aXJlX2NvbnRleHQpCisgICAgIHsKKyAgICAgICBnX3NldF9lcnJvciAo ZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVELAorLSAgICAgICAgICAgICAgICAg ICAiRmFpbGVkIHRvIGNyZWF0ZSBwaXBld2lyZSBjb3JlIik7CisrICAgICAgICAgICAgICAgICAg ICJGYWlsZWQgdG8gY3JlYXRlIHBpcGV3aXJlIGNvbnRleHQiKTsKKyAgICAgICByZXR1cm4gRkFM U0U7CisgICAgIH0KKworLSAgcHJpdi0+cGlwZXdpcmVfcmVtb3RlID0gcHdfcmVtb3RlX25ldyAo cHJpdi0+cGlwZXdpcmVfY29yZSwgTlVMTCwgMCk7CistICBpZiAoIXByaXYtPnBpcGV3aXJlX3Jl bW90ZSkKKysgIHByaXYtPnBpcGV3aXJlX2NvcmUgPSBwd19jb250ZXh0X2Nvbm5lY3QgKHByaXYt PnBpcGV3aXJlX2NvbnRleHQsIE5VTEwsIDApOworKyAgaWYgKCFwcml2LT5waXBld2lyZV9jb3Jl KQorICAgICB7CisgICAgICAgZ19zZXRfZXJyb3IgKGVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VS Uk9SX0ZBSUxFRCwKKy0gICAgICAgICAgICAgICAgICAgIkNvdWxkbid0IGNyZWF0IHBpcGV3aXJl IHJlbW90ZSIpOworKyAgICAgICAgICAgICAgICAgICAiQ291bGRuJ3QgY29ubmVjdCBwaXBld2ly ZSBjb250ZXh0Iik7CisgICAgICAgcmV0dXJuIEZBTFNFOworICAgICB9CisKKy0gIHB3X3JlbW90 ZV9hZGRfbGlzdGVuZXIgKHByaXYtPnBpcGV3aXJlX3JlbW90ZSwKKy0gICAgICAgICAgICAgICAg ICAgICAgICAgICZwcml2LT5waXBld2lyZV9yZW1vdGVfbGlzdGVuZXIsCistICAgICAgICAgICAg ICAgICAgICAgICAgICAmcmVtb3RlX2V2ZW50cywKKy0gICAgICAgICAgICAgICAgICAgICAgICAg IHNyYyk7CisrICBwd19jb3JlX2FkZF9saXN0ZW5lciAocHJpdi0+cGlwZXdpcmVfY29yZSwKKysg ICAgICAgICAgICAgICAgICAgICAgICAmcHJpdi0+cGlwZXdpcmVfY29yZV9saXN0ZW5lciwKKysg ICAgICAgICAgICAgICAgICAgICAgICAmY29yZV9ldmVudHMsCisrICAgICAgICAgICAgICAgICAg ICAgICAgc3JjKTsKKworLSAgcHJpdi0+cGlwZXdpcmVfdHlwZSA9IHB3X2NvcmVfZ2V0X3R5cGUg KHByaXYtPnBpcGV3aXJlX2NvcmUpOworLSAgaW5pdF9zcGFfdHlwZSAoJnByaXYtPnNwYV90eXBl LCBwcml2LT5waXBld2lyZV90eXBlLT5tYXApOworLQorLSAgaWYgKHB3X3JlbW90ZV9jb25uZWN0 IChwcml2LT5waXBld2lyZV9yZW1vdGUpICE9IDApCistICAgIHsKKy0gICAgICBnX3NldF9lcnJv ciAoZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVELAorLSAgICAgICAgICAgICAg ICAgICAiQ291bGRuJ3QgY29ubmVjdCBwaXBld2lyZSByZW1vdGUiKTsKKy0gICAgICByZXR1cm4g RkFMU0U7CistICAgIH0KKysgIHByaXYtPnBpcGV3aXJlX3N0cmVhbSA9IGNyZWF0ZV9waXBld2ly ZV9zdHJlYW0gKHNyYywgZXJyb3IpOworKyAgaWYgKCFwcml2LT5waXBld2lyZV9zdHJlYW0pCisr ICAgIHJldHVybiBGQUxTRTsKKworICAgcmV0dXJuIFRSVUU7CisgfQorQEAgLTkxMiw4ICs4NTUs OCBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZmluYWxpemUgKEdPYmplY3QgKm9iamVj dCkKKyAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2Rpc2FibGUgKHNyYyk7CisKKyAg IGdfY2xlYXJfcG9pbnRlciAoJnByaXYtPnBpcGV3aXJlX3N0cmVhbSwgcHdfc3RyZWFtX2Rlc3Ry b3kpOworLSAgZ19jbGVhcl9wb2ludGVyICgmcHJpdi0+cGlwZXdpcmVfcmVtb3RlLCBwd19yZW1v dGVfZGVzdHJveSk7CistICBnX2NsZWFyX3BvaW50ZXIgKCZwcml2LT5waXBld2lyZV9jb3JlLCBw d19jb3JlX2Rlc3Ryb3kpOworKyAgZ19jbGVhcl9wb2ludGVyICgmcHJpdi0+cGlwZXdpcmVfY29y ZSwgcHdfY29yZV9kaXNjb25uZWN0KTsKKysgIGdfY2xlYXJfcG9pbnRlciAoJnByaXYtPnBpcGV3 aXJlX2NvbnRleHQsIHB3X2NvbnRleHRfZGVzdHJveSk7CisgICBnX3NvdXJjZV9kZXN0cm95ICgm cHJpdi0+cGlwZXdpcmVfc291cmNlLT5iYXNlKTsKKworICAgR19PQkpFQ1RfQ0xBU1MgKG1ldGFf c2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19wYXJlbnRfY2xhc3MpLT5maW5hbGl6ZSAob2JqZWN0KTsK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlIGIvc3JjcGtncy9tdXR0ZXIvdGVt cGxhdGUKaW5kZXggNGUwYmQzMmI2N2QuLjgwNmEzYmVmOWYwIDEwMDY0NAotLS0gYS9zcmNwa2dz L211dHRlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL211dHRlci90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ211dHRlcicKIHBrZ25hbWU9bXV0dGVyCiB2ZXJz aW9uPTMuMzQuMQotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfaGVscGVyPSJnaXIiCiBi dWlsZF9zdHlsZT1tZXNvbgogY29uZmlndXJlX2FyZ3M9Ii1EZWdsX2RldmljZT10cnVlIC1EdWRl dj10cnVlIC1EbmF0aXZlX2JhY2tlbmQ9dHJ1ZQo= --===============1367719046604113939==--