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 11759 invoked from network); 29 Apr 2020 21:18:26 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 29 Apr 2020 21:18:26 -0000 Content-Type: multipart/mixed; boundary="===============4065726756273457930==" 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: Wed, 29 Apr 2020 23:18:25 +0200 List-Id: Message-ID: <20200429211825.GfAdJgOx0pWLsDnQNMqy7qVpAL_3kXLhdUYB1jp-DW4@z> GitHub notification mails are now in MIME to allow UTF8. --===============4065726756273457930== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgc2lybiBhZ2FpbnN0IG1hc3RlciBv biB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vc2lybi92 b2lkLXBhY2thZ2VzIHBpcGV3aXJlLXVwZGF0ZQpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvMjA0MTMKCnBpcGV3aXJlOiB1cGRhdGUgdG8gMC4zLjIKVGhp cyBQUiB1cGRhdGVzIHBpcGV3aXJlIHRvIDAuMy4yIGFzIHdlbGwgYXMgdXBkYXRlIHBhY2thZ2Vz IHRoYXQgZGVwZW5kcyBvbiBpdCAoeGRnLWRlc2t0b3AtcG9ydGFsIHRvIDEuNy4xIGFuZCBidW1w IHJldmlzaW9uIG9mIHhkZy1kZXNrdG9wLXBvcnRhbC1rZGUgdG8gZm9yY2UgcmVidWlsZCB3aXRo IHBpcGV3aXJlLTAuMykNCg0KeGRnLWRlc2t0b3AtcG9ydGFsIDEuNy4xIGhhcyBmZXcgY2hhbmdl cyB0byB4ZGctZG9jdW1lbnQtcG9ydGFsIGFuZCByZXF1aXJlcyBhIHBhdGNoIHRvIGJ1aWxkIG9u IG11c2wgKGBPX0ZTWU5DYCBiZWluZyB1bmRlZmluZWQsIHNlZSBbbXVzbCdzIEZGU1lOQyBwYXRj aF0oaHR0cHM6Ly9naXQubXVzbC1saWJjLm9yZy9jZ2l0L211c2wvY29tbWl0Lz9pZD1jMWY0ZWQx NTAxMzdkNzkzYzlkMDczNTYzMDVhODllODc4NWU3ZTAyKSkuIA0KDQpFZGl0OiBvbiBhIHNlY29u ZCB0aG91Z2h0LCBJJ20gbm93IHByb3ZpZGluZyBgYWxzYS1waXBld2lyZWAgKGluc3RhbGxzIGBs aWJhc291bmRfbW9kdWxlX3BjbV9waXBld2lyZS5zb2AsIHNvIG5vdCBtdWNoIHRvIGNvbmZpZ3Vy ZSkgYXMgd2VsbCBhcyBgbGliamFjay1waXBld2lyZWAgYW5kIGBsaWJwdWxzZWF1ZGlvLXBpcGV3 aXJlYCBidXQgc3RpbGwgbm90IHN1cmUgd2hhdCB3b3VsZCBiZSB0aGUgYmVzdCB3YXkgdG8gcHJv dmlkZSBhbiBvcHRpb24gdG8gcmVwbGFjZSBgbGlicHVsc2Uuc29gL2BsaWJqYWNrLnNvYCB3aXRo IHRoZW0uIAoKQSBwYXRjaCBmaWxlIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgv dm9pZC1wYWNrYWdlcy9wdWxsLzIwNDEzLnBhdGNoIGlzIGF0dGFjaGVk --===============4065726756273457930== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-pipewire-update-20413.patch" RnJvbSBiY2ZmYTY4ZDY4MTZjY2ZjZDFjYjViOTQxOGZhN2VjZjlkZGYzMGVkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLcmlkc2FkYSBUaGFuYWJ1bHBvbmcgPHNpcm5Ab2dzaXRlLm5l dD4KRGF0ZTogU2F0LCAyOCBNYXIgMjAyMCAxNjoyMzo1MiArMDkwMApTdWJqZWN0OiBbUEFUQ0gg MS80XSBwaXBld2lyZTogdXBkYXRlIHRvIDAuMy4yCgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAg ICAgICAgICAgICB8ICAyICstCiBzcmNwa2dzL2Fsc2EtcGlwZXdpcmUgICAgICAgICAgfCAgMSAr CiBzcmNwa2dzL2xpYmphY2stcGlwZXdpcmUgICAgICAgfCAgMSArCiBzcmNwa2dzL2xpYnB1bHNl YXVkaW8tcGlwZXdpcmUgfCAgMSArCiBzcmNwa2dzL3BpcGV3aXJlL3RlbXBsYXRlICAgICAgfCA3 MSArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDU5 IGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3Br Z3MvYWxzYS1waXBld2lyZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGliamFjay1waXBl d2lyZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGlicHVsc2VhdWRpby1waXBld2lyZQoK ZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IGEyMDg0MDdi MzU5Li4wYjU4Nzc3ZGI3MiAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24v c2hsaWJzCkBAIC0zMTk5LDcgKzMxOTksNyBAQCBsaWJhcmNhbl9zaG1pZl9leHQuc28uMC4xMSBh cmNhbi0wLjUuNC4zXzEKIGxpYmFyY2FuX3NobWlmX3NlcnZlci5zby4wLjExIGFyY2FuLTAuNS40 LjNfMQogbGliYXJjYW5fdHVpLnNvLjAuMTEgYXJjYW4tMC41LjQuM18xCiBsaWJsd2lwdjYuc28u MiBsd2lwdjYtMS41YV8xCi1saWJwaXBld2lyZS0wLjIuc28uMSBsaWJwaXBld2lyZS0wLjIuMl8x CitsaWJwaXBld2lyZS0wLjMuc28uMCBsaWJwaXBld2lyZS0wLjMuMl8xCiBsaWJ2b2xrLnNvLjIu Mi4xIHZvbGstMi4yLjFfMQogbGliZ251cmFkaW8tcnVudGltZS5zby4zLjguMCBnbnVyYWRpby0z LjguMC4wXzEKIGxpYmdudXJhZGlvLXBtdC5zby4zLjguMCBnbnVyYWRpby0zLjguMC4wXzEKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvYWxzYS1waXBld2lyZSBiL3NyY3BrZ3MvYWxzYS1waXBld2lyZQpu ZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMC4uYzljOTdjZjY3MDcKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL2Fsc2EtcGlwZXdpcmUKQEAgLTAsMCArMSBAQAorcGlwZXdp cmUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmph Y2stcGlwZXdpcmUgYi9zcmNwa2dzL2xpYmphY2stcGlwZXdpcmUKbmV3IGZpbGUgbW9kZSAxMjAw MDAKaW5kZXggMDAwMDAwMDAwMDAuLmM5Yzk3Y2Y2NzA3Ci0tLSAvZGV2L251bGwKKysrIGIvc3Jj cGtncy9saWJqYWNrLXBpcGV3aXJlCkBAIC0wLDAgKzEgQEAKK3BpcGV3aXJlClwgTm8gbmV3bGlu ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJwdWxzZWF1ZGlvLXBpcGV3 aXJlIGIvc3JjcGtncy9saWJwdWxzZWF1ZGlvLXBpcGV3aXJlCm5ldyBmaWxlIG1vZGUgMTIwMDAw CmluZGV4IDAwMDAwMDAwMDAwLi5jOWM5N2NmNjcwNwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvbGlicHVsc2VhdWRpby1waXBld2lyZQpAQCAtMCwwICsxIEBACitwaXBld2lyZQpcIE5vIG5l d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGlwZXdpcmUvdGVtcGxh dGUgYi9zcmNwa2dzL3BpcGV3aXJlL3RlbXBsYXRlCmluZGV4IDdmNjQ2ZGFkMTFkLi42OTdjMjBj MDM0NyAxMDA2NDQKLS0tIGEvc3JjcGtncy9waXBld2lyZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L3BpcGV3aXJlL3RlbXBsYXRlCkBAIC0xLDI2ICsxLDM5IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdwaXBld2lyZScKIHBrZ25hbWU9cGlwZXdpcmUKLXZlcnNpb249MC4yLjcKK3ZlcnNpb249MC4z LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1jb25maWd1cmVfYXJncz0iLURtYW49 dHJ1ZSAtRGdzdHJlYW1lcj1lbmFibGVkIC1EZG9jcz10cnVlIC1Ec3lzdGVtZD1mYWxzZSIKK2Nv bmZpZ3VyZV9hcmdzPSItRG1hbj10cnVlIC1EZ3N0cmVhbWVyPXRydWUgLURkb2NzPXRydWUgLURz eXN0ZW1kPWZhbHNlCisgLURibHVlejU9dHJ1ZSAtRGZmbXBlZz10cnVlIC1EcGlwZXdpcmUtYWxz YT10cnVlIC1EcGlwZXdpcmUtamFjaz10cnVlCisgLURwaXBld2lyZS1wdWxzZWF1ZGlvPXRydWUi CiBob3N0bWFrZWRlcGVuZHM9ImRveHlnZW4gZ3JhcGh2aXogcGtnLWNvbmZpZyB4bWx0b21hbiIK IG1ha2VkZXBlbmRzPSJTREwyLWRldmVsIGZmbXBlZy1kZXZlbCBnc3QtcGx1Z2lucy1iYXNlMS1k ZXZlbCBqYWNrLWRldmVsCi0gc2JjLWRldmVsIHY0bC11dGlscy1kZXZlbCBsaWJ2YS1kZXZlbCIK KyBzYmMtZGV2ZWwgdjRsLXV0aWxzLWRldmVsIGxpYnZhLWRldmVsIGxpYmJsdWV0b290aC1kZXZl bCIKIHNob3J0X2Rlc2M9IlNlcnZlciBhbmQgdXNlciBzcGFjZSBBUEkgdG8gZGVhbCB3aXRoIG11 bHRpbWVkaWEgcGlwZWxpbmVzIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGlu dXgub3JnPiIKLSNOZXh0IHJlbGVhc2Ugd2lsbCBwcm9iYWJseSBjaGFuZ2UgdG8gTUlULCBjdXJy ZW50bHkgbGlzdGVkIGluIG1hc3RlcgotbGljZW5zZT0iTEdQTC0yLjEtb25seSwgR1BMLTIuMC1v bmx5ICIKK2xpY2Vuc2U9Ik1JVCIKIGhvbWVwYWdlPSJodHRwczovL3BpcGV3aXJlLm9yZy8iCi1j aGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9QaXBlV2lyZS9waXBl d2lyZS9tYXN0ZXIvTkVXUyIKLWRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL1BpcGVXaXJl L3BpcGV3aXJlL2FyY2hpdmUvJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1iZmFhMGY2YWU2 YzA3OTFlMmUwYjU5MjM0ZDM5OTc1M2JmMjRmMWIzM2RiZjU4NzY4MjM2M2E4NDYzZGQ4ZGYxCitj aGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0bGFiLmZyZWVkZXNrdG9wLm9yZy9waXBld2lyZS9waXBld2ly ZS8tL3Jhdy9tYXN0ZXIvTkVXUyIKK2Rpc3RmaWxlcz0iaHR0cHM6Ly9naXRsYWIuZnJlZWRlc2t0 b3Aub3JnL3BpcGV3aXJlL3BpcGV3aXJlLy0vYXJjaGl2ZS8ke3ZlcnNpb259L3BpcGV3aXJlLSR7 dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09ZmQxYmIyYWU2NTk5N2Q5MjFkNmMxOGUxODI4ZjIz MjUxZGFjMzE0NWJiZTUwMzFjMzI0YWZlYjM5ZjliMjZmYgogY29uZl9maWxlcz0iL2V0Yy9waXBl d2lyZS9waXBld2lyZS5jb25mIgogCitDRkxBR1MrPSItV2Zvcm1hdCIKKworaWYgWyAiJFhCUFNf VEFSR0VUX05PX0FUT01JQzgiIF07IHRoZW4KKwltYWtlZGVwZW5kcys9IiBsaWJhdG9taWMtZGV2 ZWwiCisJTERGTEFHUys9IiAtbGF0b21pYyIKK2ZpCisKK3Bvc3RfaW5zdGFsbCgpIHsKKwl2bGlj ZW5zZSBMSUNFTlNFCit9CisKIGxpYnBpcGV3aXJlX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9 IiAtIHBpcGV3aXJlIGxpYnJhcnkiCiAJcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlICJ1c3IvbGli L2xpYnBpcGV3aXJlLTAuMi5zby4qIgorCQl2bW92ZSAidXNyL2xpYi9saWJwaXBld2lyZS0wLjMu c28uKiIKKwkJdm1vdmUgdXNyL2xpYi9waXBld2lyZS0wLjMKIAl9CiB9CiAKQEAgLTI4LDI1ICs0 MSwyNSBAQCBwaXBld2lyZS1kZXZlbF9wYWNrYWdlKCkgewogCWRlcGVuZHM9ImxpYnBpcGV3aXJl LSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCiAJc2hvcnRfZGVzYys9IiAtIHBpcGV3aXJlIGFuZCBs aWJzcGEgZGV2ZWxvcG1lbnQgZmlsZXMiCiAJcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVzci9p bmNsdWRlL3BpcGV3aXJlCi0JCXZtb3ZlIHVzci9pbmNsdWRlL3NwYQotCQl2bW92ZSB1c3IvbGli L3BrZ2NvbmZpZy9saWJwaXBld2lyZS0wLjIucGMKLQkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcv bGlic3BhLTAuMS5wYwotCQl2bW92ZSB1c3IvbGliL2xpYnBpcGV3aXJlLTAuMi5zbworCQl2bW92 ZSB1c3IvaW5jbHVkZS9waXBld2lyZS0wLjMKKwkJdm1vdmUgdXNyL2luY2x1ZGUvc3BhLTAuMgor CQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZy9saWJwaXBld2lyZS0wLjMucGMKKwkJdm1vdmUgdXNy L2xpYi9wa2djb25maWcvbGlic3BhLTAuMi5wYworCQl2bW92ZSB1c3IvbGliL2xpYnBpcGV3aXJl LTAuMy5zbwogCX0KIH0KIAogbGlic3BhLWZmbXBlZ19wYWNrYWdlKCkgewogCXNob3J0X2Rlc2Mr PSIgLSBmZm1wZWcgcGx1Z2lucyIKIAlwa2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgdXNyL2xpYi9z cGEvZmZtcGVnCisJCXZtb3ZlIHVzci9saWIvc3BhLTAuMi9mZm1wZWcKIAl9CiB9CiAKIGxpYnNw YS1ibHVldG9vdGhfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gYmx1ZXRvb3RoIHBsdWdp bnMiCiAJcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVzci9saWIvc3BhL2JsdWV6NQorCQl2bW92 ZSB1c3IvbGliL3NwYS0wLjIvYmx1ZXo1CiAJfQogfQogCkBAIC01Nyw2ICs3MCwzMiBAQCBnc3Ry ZWFtZXIxLXBpcGV3aXJlX3BhY2thZ2UoKSB7CiAJfQogfQogCitsaWJwdWxzZWF1ZGlvLXBpcGV3 aXJlX3BhY2thZ2UoKSB7CisJZGVwZW5kcz0ibGlicGlwZXdpcmUtJHt2ZXJzaW9ufV8ke3Jldmlz aW9ufSIKKwlzaG9ydF9kZXNjKz0iIC0gUHVsc2VBdWRpbyBjbGllbnQgbGlicmFyeSIKKwlwa2df aW5zdGFsbCgpIHsKKwkJdm1vdmUgInVzci9saWIvbGlicHVsc2UtbWFpbmxvb3AtZ2xpYi1wdy5z byoiCisJCXZtb3ZlICJ1c3IvbGliL2xpYnB1bHNlLXB3LnNvKiIKKwkJdm1vdmUgInVzci9saWIv bGlicHVsc2Utc2ltcGxlLXB3LnNvKiIKKwl9Cit9CisKK2Fsc2EtcGlwZXdpcmVfcGFja2FnZSgp IHsKKwlkZXBlbmRzPSJsaWJwaXBld2lyZS0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorCXNob3J0 X2Rlc2MrPSIgLSBBTFNBIGNsaWVudCBsaWJyYXJ5IgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92 ZSAidXNyL2xpYi9hbHNhLWxpYiIKKwl9Cit9CisKK2xpYmphY2stcGlwZXdpcmVfcGFja2FnZSgp IHsKKwlkZXBlbmRzPSJsaWJwaXBld2lyZS0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorCXNob3J0 X2Rlc2MrPSIgLSBKQUNLIGNsaWVudCBsaWJyYXJ5IgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92 ZSAidXNyL2xpYi9saWJqYWNrLXB3LnNvKiIKKwl9Cit9CisKIHBpcGV3aXJlLWRvY19wYWNrYWdl KCkgewogCWFyY2hzPW5vYXJjaAogCXNob3J0X2Rlc2MrPSIgLSBkb2N1bWVudGF0aW9uIgoKRnJv bSA2MDA3YjBjZjdjM2IzYzU5ZjFjNzg3NDc0Yzk2NmJhNTk0NTdjOTI1IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBLcmlkc2FkYSBUaGFuYWJ1bHBvbmcgPHNpcm5Ab2dzaXRlLm5ldD4K RGF0ZTogU2F0LCAyOCBNYXIgMjAyMCAxNjoyNDo0NiArMDkwMApTdWJqZWN0OiBbUEFUQ0ggMi80 XSB4ZGctZGVza3RvcC1wb3J0YWwta2RlOiByZWJ1aWxkIGZvciBwaXBld2lyZS0wLjMKCi0tLQog c3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwta2RlL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNo YW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy94ZGctZGVza3RvcC1wb3J0YWwta2RlL3RlbXBsYXRlIGIvc3JjcGtncy94ZGctZGVza3RvcC1w b3J0YWwta2RlL3RlbXBsYXRlCmluZGV4IGYyNjA1N2QzMjNhLi45NTE5YWJjMTlmNiAxMDA2NDQK LS0tIGEvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwta2RlL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MveGRnLWRlc2t0b3AtcG9ydGFsLWtkZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ3hkZy1kZXNrdG9wLXBvcnRhbC1rZGUnCiBwa2duYW1lPXhkZy1kZXNr dG9wLXBvcnRhbC1rZGUKIHZlcnNpb249NS4xOC40LjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIK IGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFrZWRlcGVuZHM9ImV4dHJhLWNtYWtlLW1vZHVsZXMg cXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xzIGtjb3JlYWRkb25zIGdldHRleHQiCiBtYWtlZGVwZW5k cz0iZ2xpYi1kZXZlbCBraW8tZGV2ZWwga3dheWxhbmQtZGV2ZWwgbGliZXBveHktZGV2ZWwgcGlw ZXdpcmUtZGV2ZWwKCkZyb20gM2VlYTBkZTliMGMwOGUwNzg3MTdiMGVjYmM5ZTNiYTMzYTY5ZGFm NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS3JpZHNhZGEgVGhhbmFidWxwb25nIDxz aXJuQG9nc2l0ZS5uZXQ+CkRhdGU6IFNhdCwgMjggTWFyIDIwMjAgMTY6MjQ6MjYgKzA5MDAKU3Vi amVjdDogW1BBVENIIDMvNF0geGRnLWRlc2t0b3AtcG9ydGFsOiByZWJ1aWxkIGZvciBwaXBld2ly ZS0wLjMKCi0tLQogLi4uL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoICAgICAgICAgICAgICAg IHwgNTUxICsrKysrKysrKysrKysrKysrKwogc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwvdGVt cGxhdGUgICAgICAgICAgIHwgICA4ICstCiAyIGZpbGVzIGNoYW5nZWQsIDU1NyBpbnNlcnRpb25z KCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MveGRnLWRlc2t0 b3AtcG9ydGFsL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy94ZGctZGVza3RvcC1wb3J0YWwvcGF0Y2hlcy9waXBld2lyZS0wLjMucGF0Y2ggYi9zcmNwa2dz L3hkZy1kZXNrdG9wLXBvcnRhbC9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOTRlYmUwODM1OTgKLS0tIC9kZXYvbnVsbAor KysgYi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRj aApAQCAtMCwwICsxLDU1MSBAQAorRnJvbSBhMzg5MDFlNWU3ZjgzNWVmZTdiN2EwNmM1NTc5MGM4 YzIwYmM5MWEyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogV2ltIFRheW1hbnMgPHd0 YXltYW5zQHJlZGhhdC5jb20+CitEYXRlOiBUdWUsIDE0IEphbiAyMDIwIDA5OjM3OjA5ICswMTAw CitTdWJqZWN0OiBbUEFUQ0hdIFBpcGVXaXJlOiB1cGRhdGUgdG8gMC4zIEFQSQorCistLS0KKyBj b25maWd1cmUuYWMgICAgICB8ICAgMiArLQorIHNyYy9jYW1lcmEuYyAgICAgIHwgIDI0ICsrKyst LS0tCisgc3JjL3BpcGV3aXJlLmMgICAgfCAxNDEgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQorIHNyYy9waXBld2lyZS5oICAgIHwgIDEwICsrLS0KKyBzcmMv c2NyZWVuLWNhc3QuYyB8ICA5OCArKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDUg ZmlsZXMgY2hhbmdlZCwgNzIgaW5zZXJ0aW9ucygrKSwgMjAzIGRlbGV0aW9ucygtKQorCitkaWZm IC0tZ2l0IGNvbmZpZ3VyZS5hYyBjb25maWd1cmUuYWMKK2luZGV4IDg5OTAyZmEuLjYyZDc5NjAg MTAwNjQ0CistLS0gY29uZmlndXJlLmFjCisrKysgY29uZmlndXJlLmFjCitAQCAtOTcsNyArOTcs NyBAQCBBQ19BUkdfRU5BQkxFKHBpcGV3aXJlLAorIAkgICAgICBbQVNfSEVMUF9TVFJJTkcoWy0t ZW5hYmxlLXBpcGV3aXJlXSxbRW5hYmxlIFBpcGVXaXJlIHN1cHBvcnQuIE5lZWRlZCBmb3Igc2Ny ZWVuIGNhc3QgcG9ydGFsXSldLAorIAkgICAgICBlbmFibGVfcGlwZXdpcmU9JGVuYWJsZXZhbCwg ZW5hYmxlX3BpcGV3aXJlPXllcykKKyBpZiB0ZXN0IHgkZW5hYmxlX3BpcGV3aXJlID0geHllcyA7 IHRoZW4KKy0JUEtHX0NIRUNLX01PRFVMRVMoUElQRVdJUkUsIFtsaWJwaXBld2lyZS0wLjIgPj0g MC4yLjZdKQorKwlQS0dfQ0hFQ0tfTU9EVUxFUyhQSVBFV0lSRSwgW2xpYnBpcGV3aXJlLTAuMyA+ PSAwLjIuOTBdKQorIAlBQ19ERUZJTkUoW0hBVkVfUElQRVdJUkVdLFsxXSwgW0RlZmluZSB0byBl bmFibGUgUGlwZVdpcmUgc3VwcG9ydF0pCisgZmkKKyBBTV9DT05ESVRJT05BTChbSEFWRV9QSVBF V0lSRV0sW3Rlc3QgIiRlbmFibGVfcGlwZXdpcmUiID0gInllcyJdKQorZGlmZiAtLWdpdCBzcmMv Y2FtZXJhLmMgc3JjL2NhbWVyYS5jCitpbmRleCBjMmIzOTJjLi4yMGZlM2FhIDEwMDY0NAorLS0t IHNyYy9jYW1lcmEuYworKysrIHNyYy9jYW1lcmEuYworQEAgLTE0MSw3ICsxNDEsNyBAQCBvcGVu X3BpcGV3aXJlX2NhbWVyYV9yZW1vdGUgKGNvbnN0IGNoYXIgKmFwcF9pZCwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEdFcnJvciAqKmVycm9yKQorIHsKKyAgIFBpcGVXaXJlUmVtb3Rl ICpyZW1vdGU7CistICBzdHJ1Y3Qgc3BhX2RpY3RfaXRlbSBwZXJtaXNzaW9uX2l0ZW1zWzFdOwor KyAgc3RydWN0IHB3X3Blcm1pc3Npb24gcGVybWlzc2lvbl9pdGVtc1syXTsKKyAgIHN0cnVjdCBw d19wcm9wZXJ0aWVzICpwaXBld2lyZV9wcm9wZXJ0aWVzOworIAorICAgcGlwZXdpcmVfcHJvcGVy dGllcyA9CitAQCAtMTU4LDEyICsxNTgsMTIgQEAgb3Blbl9waXBld2lyZV9jYW1lcmFfcmVtb3Rl IChjb25zdCBjaGFyICphcHBfaWQsCisgICAgKiBIaWRlIGFsbCBleGlzdGluZyBhbmQgZnV0dXJl IG5vZGVzIGJ5IGRlZmF1bHQuIFBpcGVXaXJlIHdpbGwgdXNlIHRoZQorICAgICogcGVybWlzc2lv biBzdG9yZSB0byBzZXQgdXAgcGVybWlzc2lvbnMuCisgICAgKi8KKy0gIHBlcm1pc3Npb25faXRl bXNbMF0ua2V5ID0gUFdfQ09SRV9QUk9YWV9QRVJNSVNTSU9OU19ERUZBVUxUOworLSAgcGVybWlz c2lvbl9pdGVtc1swXS52YWx1ZSA9ICItLS0iOworKyAgcGVybWlzc2lvbl9pdGVtc1swXSA9IFBX X1BFUk1JU1NJT05fSU5JVCAoUFdfSURfQ09SRSwgUFdfUEVSTV9SV1gpOworKyAgcGVybWlzc2lv bl9pdGVtc1sxXSA9IFBXX1BFUk1JU1NJT05fSU5JVCAoUFdfSURfQU5ZLCAwKTsKKyAKKy0gIHB3 X2NvcmVfcHJveHlfcGVybWlzc2lvbnMgKHB3X3JlbW90ZV9nZXRfY29yZV9wcm94eSAocmVtb3Rl LT5yZW1vdGUpLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlNQQV9ESUNUX0lOSVQg KHBlcm1pc3Npb25faXRlbXMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgR19OX0VMRU1FTlRTIChwZXJtaXNzaW9uX2l0ZW1zKSkpOworKyAgcHdfY2xpZW50 X3VwZGF0ZV9wZXJtaXNzaW9ucyAocHdfY29yZV9nZXRfY2xpZW50KHJlbW90ZS0+Y29yZSksCisr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX05fRUxFTUVOVFMgKHBlcm1pc3Npb25f aXRlbXMpLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVybWlzc2lvbl9pdGVt cyk7CisgCisgICBwaXBld2lyZV9yZW1vdGVfcm91bmR0cmlwIChyZW1vdGUpOworIAorQEAgLTIx OSw3ICsyMTksNyBAQCBoYW5kbGVfb3Blbl9waXBld2lyZV9yZW1vdGUgKFhkcENhbWVyYSAqb2Jq ZWN0LAorICAgICB9CisgCisgICBvdXRfZmRfbGlzdCA9IGdfdW5peF9mZF9saXN0X25ldyAoKTsK Ky0gIGZkID0gcHdfcmVtb3RlX3N0ZWFsX2ZkIChyZW1vdGUtPnJlbW90ZSk7CisrICBmZCA9IHB3 X2NvcmVfc3RlYWxfZmQgKHJlbW90ZS0+Y29yZSk7CisgICBmZF9pZCA9IGdfdW5peF9mZF9saXN0 X2FwcGVuZCAob3V0X2ZkX2xpc3QsIGZkLCAmZXJyb3IpOworICAgY2xvc2UgKGZkKTsKKyAgIHBp cGV3aXJlX3JlbW90ZV9kZXN0cm95IChyZW1vdGUpOworQEAgLTI1MCwyOSArMjUwLDI4IEBAIGNh bWVyYV9pZmFjZV9pbml0IChYZHBDYW1lcmFJZmFjZSAqaWZhY2UpCisgc3RhdGljIHZvaWQKKyBn bG9iYWxfYWRkZWRfY2IgKFBpcGVXaXJlUmVtb3RlICpyZW1vdGUsCisgICAgICAgICAgICAgICAg ICB1aW50MzJfdCBpZCwKKy0gICAgICAgICAgICAgICAgIHVpbnQzMl90IHR5cGUsCisrICAgICAg ICAgICAgICAgICBjb25zdCBjaGFyICp0eXBlLAorICAgICAgICAgICAgICAgICAgY29uc3Qgc3Ry dWN0IHNwYV9kaWN0ICpwcm9wcywKKyAgICAgICAgICAgICAgICAgIGdwb2ludGVyIHVzZXJfZGF0 YSkKKyB7CisgICBDYW1lcmEgKmNhbWVyYSA9IHVzZXJfZGF0YTsKKy0gIHN0cnVjdCBwd190eXBl ICpjb3JlX3R5cGUgPSBwd19jb3JlX2dldF90eXBlIChyZW1vdGUtPmNvcmUpOworICAgY29uc3Qg c3RydWN0IHNwYV9kaWN0X2l0ZW0gKm1lZGlhX2NsYXNzOworICAgY29uc3Qgc3RydWN0IHNwYV9k aWN0X2l0ZW0gKm1lZGlhX3JvbGU7CisgCistICBpZiAodHlwZSAhPSBjb3JlX3R5cGUtPm5vZGUp CisrICBpZiAoc3RyY21wKHR5cGUsIFBXX1RZUEVfSU5URVJGQUNFX05vZGUpICE9IDApCisgICAg IHJldHVybjsKKyAKKyAgIGlmICghcHJvcHMpCisgICAgIHJldHVybjsKKyAKKy0gIG1lZGlhX2Ns YXNzID0gc3BhX2RpY3RfbG9va3VwX2l0ZW0gKHByb3BzLCAibWVkaWEuY2xhc3MiKTsKKysgIG1l ZGlhX2NsYXNzID0gc3BhX2RpY3RfbG9va3VwX2l0ZW0gKHByb3BzLCBQV19LRVlfTUVESUFfQ0xB U1MpOworICAgaWYgKCFtZWRpYV9jbGFzcykKKyAgICAgcmV0dXJuOworIAorICAgaWYgKGdfc3Ry Y21wMCAobWVkaWFfY2xhc3MtPnZhbHVlLCAiVmlkZW8vU291cmNlIikgIT0gMCkKKyAgICAgcmV0 dXJuOworIAorLSAgbWVkaWFfcm9sZSA9IHNwYV9kaWN0X2xvb2t1cF9pdGVtIChwcm9wcywgIm1l ZGlhLnJvbGUiKTsKKysgIG1lZGlhX3JvbGUgPSBzcGFfZGljdF9sb29rdXBfaXRlbSAocHJvcHMs IFBXX0tFWV9NRURJQV9ST0xFKTsKKyAgIGlmICghbWVkaWFfcm9sZSkKKyAgICAgcmV0dXJuOwor IAorQEAgLTM0Miw2ICszNDEsNyBAQCBjcmVhdGVfcGlwZXdpcmVfcmVtb3RlIChDYW1lcmEgKmNh bWVyYSwKKyAgICAgfQorIAorICAgcGlwZXdpcmVfcHJvcGVydGllcyA9IHB3X3Byb3BlcnRpZXNf bmV3ICgicGlwZXdpcmUuYWNjZXNzLnBvcnRhbC5pc19wb3J0YWwiLCAidHJ1ZSIsCisrICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwb3J0YWwubW9uaXRvciIsICJD YW1lcmEiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM KTsKKyAgIGNhbWVyYS0+cGlwZXdpcmVfcmVtb3RlID0gcGlwZXdpcmVfcmVtb3RlX25ld19zeW5j IChwaXBld2lyZV9wcm9wZXJ0aWVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGdsb2JhbF9hZGRlZF9jYiwKK2RpZmYgLS1naXQgc3JjL3Bp cGV3aXJlLmMgc3JjL3BpcGV3aXJlLmMKK2luZGV4IDc5M2EzNzguLjE2MmNkNTUgMTAwNjQ0Cist LS0gc3JjL3BpcGV3aXJlLmMKKysrKyBzcmMvcGlwZXdpcmUuYworQEAgLTIxLDYgKzIxLDcgQEAK KyAjaW5jbHVkZSA8ZXJybm8uaD4KKyAjaW5jbHVkZSA8Z2xpYi5oPgorICNpbmNsdWRlIDxwaXBl d2lyZS9waXBld2lyZS5oPgorKyNpbmNsdWRlIDxzcGEvdXRpbHMvcmVzdWx0Lmg+CisgCisgI2lu Y2x1ZGUgInBpcGV3aXJlLmgiCisgCitAQCAtMzYsMjcgKzM3LDI1IEBAIHN0YXRpYyBnYm9vbGVh biBpc19waXBld2lyZV9pbml0aWFsaXplZCA9IEZBTFNFOworIHN0YXRpYyB2b2lkCisgcmVnaXN0 cnlfZXZlbnRfZ2xvYmFsICh2b2lkICp1c2VyX2RhdGEsCisgICAgICAgICAgICAgICAgICAgICAg ICB1aW50MzJfdCBpZCwKKy0gICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHBhcmVudF9p ZCwKKyAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHBlcm1pc3Npb25zLAorLSAgICAg ICAgICAgICAgICAgICAgICAgdWludDMyX3QgdHlwZSwKKysgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IGNoYXIgKnR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2ZXJz aW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHNwYV9kaWN0ICpwcm9w cykKKyB7CisgICBQaXBlV2lyZVJlbW90ZSAqcmVtb3RlID0gdXNlcl9kYXRhOworLSAgc3RydWN0 IHB3X3R5cGUgKmNvcmVfdHlwZSA9IHB3X2NvcmVfZ2V0X3R5cGUgKHJlbW90ZS0+Y29yZSk7Cisg ICBjb25zdCBzdHJ1Y3Qgc3BhX2RpY3RfaXRlbSAqZmFjdG9yeV9vYmplY3RfdHlwZTsKKyAgIFBp cGVXaXJlR2xvYmFsICpnbG9iYWw7CisgCisgICBnbG9iYWwgPSBnX25ldzAgKFBpcGVXaXJlR2xv YmFsLCAxKTsKKyAgICpnbG9iYWwgPSAoUGlwZVdpcmVHbG9iYWwpIHsKKy0gICAgLnBhcmVudF9p ZCA9IHBhcmVudF9pZCwKKysgICAgLnBhcmVudF9pZCA9IGlkLAorICAgfTsKKyAKKyAgIGdfaGFz aF90YWJsZV9pbnNlcnQgKHJlbW90ZS0+Z2xvYmFscywgR0lOVF9UT19QT0lOVEVSIChpZCksIGds b2JhbCk7CisgICBpZiAocmVtb3RlLT5nbG9iYWxfYWRkZWRfY2IpCisgICAgIHJlbW90ZS0+Z2xv YmFsX2FkZGVkX2NiIChyZW1vdGUsIGlkLCB0eXBlLCBwcm9wcywgcmVtb3RlLT51c2VyX2RhdGEp OworIAorLSAgaWYgKHR5cGUgIT0gY29yZV90eXBlLT5mYWN0b3J5KQorKyAgaWYgKHN0cmNtcCh0 eXBlLCBQV19UWVBFX0lOVEVSRkFDRV9GYWN0b3J5KSAhPSAwKQorICAgICByZXR1cm47CisgCisg ICBmYWN0b3J5X29iamVjdF90eXBlID0gc3BhX2RpY3RfbG9va3VwX2l0ZW0gKHByb3BzLCAiZmFj dG9yeS50eXBlLm5hbWUiKTsKK0BAIC04MSw4ICs4MCw4IEBAIHJlZ2lzdHJ5X2V2ZW50X2dsb2Jh bF9yZW1vdmUgKHZvaWQgKnVzZXJfZGF0YSwKKyAgIGdfaGFzaF90YWJsZV9yZW1vdmUgKHJlbW90 ZS0+Z2xvYmFscywgR0lOVF9UT19QT0lOVEVSIChpZCkpOworIH0KKyAKKy1zdGF0aWMgY29uc3Qg c3RydWN0IHB3X3JlZ2lzdHJ5X3Byb3h5X2V2ZW50cyByZWdpc3RyeV9ldmVudHMgPSB7CistICBQ V19WRVJTSU9OX1JFR0lTVFJZX1BST1hZX0VWRU5UUywKKytzdGF0aWMgY29uc3Qgc3RydWN0IHB3 X3JlZ2lzdHJ5X2V2ZW50cyByZWdpc3RyeV9ldmVudHMgPSB7CisrICBQV19WRVJTSU9OX1JFR0lT VFJZX0VWRU5UUywKKyAgIC5nbG9iYWwgPSByZWdpc3RyeV9ldmVudF9nbG9iYWwsCisgICAuZ2xv YmFsX3JlbW92ZSA9IHJlZ2lzdHJ5X2V2ZW50X2dsb2JhbF9yZW1vdmUsCisgfTsKK0BAIC05MCw3 ICs4OSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfcmVnaXN0cnlfcHJveHlfZXZlbnRzIHJl Z2lzdHJ5X2V2ZW50cyA9IHsKKyB2b2lkCisgcGlwZXdpcmVfcmVtb3RlX3JvdW5kdHJpcCAoUGlw ZVdpcmVSZW1vdGUgKnJlbW90ZSkKKyB7CistICBwd19jb3JlX3Byb3h5X3N5bmMgKHJlbW90ZS0+ Y29yZV9wcm94eSwgKytyZW1vdGUtPnN5bmNfc2VxKTsKKysgIHJlbW90ZS0+c3luY19zZXEgPSBw d19jb3JlX3N5bmMgKHJlbW90ZS0+Y29yZSwgUFdfSURfQ09SRSwgcmVtb3RlLT5zeW5jX3NlcSk7 CisgICBwd19tYWluX2xvb3BfcnVuIChyZW1vdGUtPmxvb3ApOworIH0KKyAKK0BAIC05OCwxNiAr OTcsMTMgQEAgc3RhdGljIGdib29sZWFuCisgZGlzY292ZXJfbm9kZV9mYWN0b3J5X3N5bmMgKFBp cGVXaXJlUmVtb3RlICpyZW1vdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdFcnJv ciAqKmVycm9yKQorIHsKKy0gIHN0cnVjdCBwd190eXBlICpjb3JlX3R5cGUgPSBwd19jb3JlX2dl dF90eXBlIChyZW1vdGUtPmNvcmUpOworLSAgc3RydWN0IHB3X3JlZ2lzdHJ5X3Byb3h5ICpyZWdp c3RyeV9wcm94eTsKKysgIHN0cnVjdCBwd19yZWdpc3RyeSAqcmVnaXN0cnk7CisgCistICByZWdp c3RyeV9wcm94eSA9IHB3X2NvcmVfcHJveHlfZ2V0X3JlZ2lzdHJ5IChyZW1vdGUtPmNvcmVfcHJv eHksCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3Jl X3R5cGUtPnJlZ2lzdHJ5LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgUFdfVkVSU0lPTl9SRUdJU1RSWSwgMCk7CistICBwd19yZWdpc3RyeV9wcm94eV9h ZGRfbGlzdGVuZXIgKHJlZ2lzdHJ5X3Byb3h5LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAmcmVtb3RlLT5yZWdpc3RyeV9saXN0ZW5lciwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJnJlZ2lzdHJ5X2V2ZW50cywKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgcmVtb3RlKTsKKysgIHJlZ2lzdHJ5ID0gcHdfY29yZV9nZXRfcmVnaXN0cnkg KHJlbW90ZS0+Y29yZSwgUFdfVkVSU0lPTl9SRUdJU1RSWSwgMCk7CisrICBwd19yZWdpc3RyeV9h ZGRfbGlzdGVuZXIgKHJlZ2lzdHJ5LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcmVt b3RlLT5yZWdpc3RyeV9saXN0ZW5lciwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJl Z2lzdHJ5X2V2ZW50cywKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3RlKTsKKyAK KyAgIHBpcGV3aXJlX3JlbW90ZV9yb3VuZHRyaXAgKHJlbW90ZSk7CisgCitAQCAtMTIyLDU5ICsx MTgsMzUgQEAgZGlzY292ZXJfbm9kZV9mYWN0b3J5X3N5bmMgKFBpcGVXaXJlUmVtb3RlICpyZW1v dGUsCisgfQorIAorIHN0YXRpYyB2b2lkCistb25fc3RhdGVfY2hhbmdlZCAodm9pZCAqdXNlcl9k YXRhLAorLSAgICAgICAgICAgICAgICAgIGVudW0gcHdfcmVtb3RlX3N0YXRlIG9sZCwKKy0gICAg ICAgICAgICAgICAgICBlbnVtIHB3X3JlbW90ZV9zdGF0ZSBzdGF0ZSwKKy0gICAgICAgICAgICAg ICAgICBjb25zdCBjaGFyICplcnJvcikKKytjb3JlX2V2ZW50X2Vycm9yICh2b2lkICAgICAgICp1 c2VyX2RhdGEsCisrICAgICAgICAgICAgICAgICAgdWludDMyX3QgICAgaWQsCisrCQkgIGludCAg ICAgICAgIHNlcSwKKysJCSAgaW50ICAgICAgICAgcmVzLAorKwkJICBjb25zdCBjaGFyICptZXNz YWdlKQorIHsKKyAgIFBpcGVXaXJlUmVtb3RlICpyZW1vdGUgPSB1c2VyX2RhdGE7CisgCistICBz d2l0Y2ggKHN0YXRlKQorKyAgaWYgKGlkID09IFBXX0lEX0NPUkUpCisgICAgIHsKKy0gICAgY2Fz ZSBQV19SRU1PVEVfU1RBVEVfRVJST1I6CistICAgICAgaWYgKCFyZW1vdGUtPmVycm9yKQorLSAg ICAgICAgeworLSAgICAgICAgICBnX3NldF9lcnJvciAoJnJlbW90ZS0+ZXJyb3IsIEdfSU9fRVJS T1IsIEdfSU9fRVJST1JfRkFJTEVELAorLSAgICAgICAgICAgICAgICAgICAgICAgIiVzIiwgZXJy b3IpOworLSAgICAgICAgfQorKyAgICAgIGdfc2V0X2Vycm9yICgmcmVtb3RlLT5lcnJvciwgR19J T19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCisrICAgICAgICAgICAgICAgICAiJXMiLCBtZXNz YWdlKTsKKyAgICAgICBwd19tYWluX2xvb3BfcXVpdCAocmVtb3RlLT5sb29wKTsKKy0gICAgICBi cmVhazsKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfVU5DT05ORUNURUQ6CistICAgICAgaWYg KCFyZW1vdGUtPmVycm9yKQorLSAgICAgICAgeworLSAgICAgICAgICBnX3NldF9lcnJvciAoJnJl bW90ZS0+ZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVELAorLSAgICAgICAgICAg ICAgICAgICAgICAgIkRpc2Nvbm5lY3RlZCIpOworLSAgICAgICAgfQorLSAgICAgIHB3X21haW5f bG9vcF9xdWl0IChyZW1vdGUtPmxvb3ApOworLSAgICAgIGJyZWFrOworLSAgICBjYXNlIFBXX1JF TU9URV9TVEFURV9DT05ORUNUSU5HOgorLSAgICAgIGJyZWFrOworLSAgICBjYXNlIFBXX1JFTU9U RV9TVEFURV9DT05ORUNURUQ6CistICAgICAgcHdfbWFpbl9sb29wX3F1aXQgKHJlbW90ZS0+bG9v cCk7CistICAgICAgYnJlYWs7CistICAgIGRlZmF1bHQ6CistICAgICAgZ193YXJuaW5nICgiVW5r bm93biBQaXBlV2lyZSBzdGF0ZSIpOworLSAgICAgIGJyZWFrOworICAgICB9CisgfQorIAorLXN0 YXRpYyBjb25zdCBzdHJ1Y3QgcHdfcmVtb3RlX2V2ZW50cyByZW1vdGVfZXZlbnRzID0geworLSAg UFdfVkVSU0lPTl9SRU1PVEVfRVZFTlRTLAorLSAgLnN0YXRlX2NoYW5nZWQgPSBvbl9zdGF0ZV9j aGFuZ2VkLAorLX07CistCisgc3RhdGljIHZvaWQKKyBjb3JlX2V2ZW50X2RvbmUgKHZvaWQgKnVz ZXJfZGF0YSwKKy0gICAgICAgICAgICAgICAgIHVpbnQzMl90IHNlcSkKKysgICAgICAgICAgICAg ICAgIHVpbnQzMl90IGlkLCBpbnQgc2VxKQorIHsKKyAgIFBpcGVXaXJlUmVtb3RlICpyZW1vdGUg PSB1c2VyX2RhdGE7CisgCistICBpZiAocmVtb3RlLT5zeW5jX3NlcSA9PSBzZXEpCisrICBpZiAo aWQgPT0gUFdfSURfQ09SRSAmJiByZW1vdGUtPnN5bmNfc2VxID09IHNlcSkKKyAgICAgcHdfbWFp bl9sb29wX3F1aXQgKHJlbW90ZS0+bG9vcCk7CisgfQorIAorLXN0YXRpYyBjb25zdCBzdHJ1Y3Qg cHdfY29yZV9wcm94eV9ldmVudHMgY29yZV9ldmVudHMgPSB7CistICBQV19WRVJTSU9OX0NPUkVf UFJPWFlfRVZFTlRTLAorK3N0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfY29yZV9ldmVudHMgY29yZV9l dmVudHMgPSB7CisrICBQV19WRVJTSU9OX0NPUkVfRVZFTlRTLAorKyAgLmVycm9yID0gY29yZV9l dmVudF9lcnJvciwKKyAgIC5kb25lID0gY29yZV9ldmVudF9kb25lLAorIH07CisgCitAQCAtMjM3 LDggKzIwOSw4IEBAIHZvaWQKKyBwaXBld2lyZV9yZW1vdGVfZGVzdHJveSAoUGlwZVdpcmVSZW1v dGUgKnJlbW90ZSkKKyB7CisgICBnX2NsZWFyX3BvaW50ZXIgKCZyZW1vdGUtPmdsb2JhbHMsIGdf aGFzaF90YWJsZV9kZXN0cm95KTsKKy0gIGdfY2xlYXJfcG9pbnRlciAoJnJlbW90ZS0+cmVtb3Rl LCBwd19yZW1vdGVfZGVzdHJveSk7CistICBnX2NsZWFyX3BvaW50ZXIgKCZyZW1vdGUtPmNvcmUs IHB3X2NvcmVfZGVzdHJveSk7CisrICBnX2NsZWFyX3BvaW50ZXIgKCZyZW1vdGUtPmNvcmUsIHB3 X2NvcmVfZGlzY29ubmVjdCk7CisrICBnX2NsZWFyX3BvaW50ZXIgKCZyZW1vdGUtPmNvbnRleHQs IHB3X2NvbnRleHRfZGVzdHJveSk7CisgICBnX2NsZWFyX3BvaW50ZXIgKCZyZW1vdGUtPmxvb3As IHB3X21haW5fbG9vcF9kZXN0cm95KTsKKyAgIGdfY2xlYXJfZXJyb3IgKCZyZW1vdGUtPmVycm9y KTsKKyAKK0BAIC0zMDcsNjggKzI3OSwzMSBAQCBwaXBld2lyZV9yZW1vdGVfbmV3X3N5bmMgKHN0 cnVjdCBwd19wcm9wZXJ0aWVzICpwaXBld2lyZV9wcm9wZXJ0aWVzLAorICAgICAgIHJldHVybiBO VUxMOworICAgICB9CisgCistICByZW1vdGUtPmNvcmUgPSBwd19jb3JlX25ldyAocHdfbWFpbl9s b29wX2dldF9sb29wIChyZW1vdGUtPmxvb3ApLCBOVUxMKTsKKy0gIGlmICghcmVtb3RlLT5jb3Jl KQorKyAgcmVtb3RlLT5jb250ZXh0ID0gcHdfY29udGV4dF9uZXcgKHB3X21haW5fbG9vcF9nZXRf bG9vcCAocmVtb3RlLT5sb29wKSwgTlVMTCwgMCk7CisrICBpZiAoIXJlbW90ZS0+Y29udGV4dCkK KyAgICAgeworICAgICAgIHBpcGV3aXJlX3JlbW90ZV9kZXN0cm95IChyZW1vdGUpOworICAgICAg IHB3X3Byb3BlcnRpZXNfZnJlZSAocGlwZXdpcmVfcHJvcGVydGllcyk7CisgICAgICAgZ19zZXRf ZXJyb3IgKGVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9SX0ZBSUxFRCwKKy0gICAgICAgICAg ICAgICAgICAgIkNvdWxkbid0IGNyZWF0ZSBQaXBlV2lyZSBjb3JlIik7CisrICAgICAgICAgICAg ICAgICAgICJDb3VsZG4ndCBjcmVhdGUgUGlwZVdpcmUgY29udGV4dCIpOworICAgICAgIHJldHVy biBOVUxMOworICAgICB9CisgCistICByZW1vdGUtPnJlbW90ZSA9IHB3X3JlbW90ZV9uZXcgKHJl bW90ZS0+Y29yZSwgcGlwZXdpcmVfcHJvcGVydGllcywgMCk7CistICBpZiAoIXJlbW90ZS0+cmVt b3RlKQorKyAgcmVtb3RlLT5jb3JlID0gcHdfY29udGV4dF9jb25uZWN0IChyZW1vdGUtPmNvbnRl eHQsIHBpcGV3aXJlX3Byb3BlcnRpZXMsIDApOworKyAgaWYgKCFyZW1vdGUtPmNvcmUpCisgICAg IHsKKyAgICAgICBwaXBld2lyZV9yZW1vdGVfZGVzdHJveSAocmVtb3RlKTsKKyAgICAgICBnX3Nl dF9lcnJvciAoZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVELAorLSAgICAgICAg ICAgICAgICAgICAiQ291bGRuJ3QgY3JlYXRlIFBpcGVXaXJlIHJlbW90ZSIpOworKyAgICAgICAg ICAgICAgICAgICAiQ291bGRuJ3QgY29ubmVjdCB0byBQaXBlV2lyZSIpOworICAgICAgIHJldHVy biBOVUxMOworICAgICB9CisgCisgICByZW1vdGUtPmdsb2JhbHMgPSBnX2hhc2hfdGFibGVfbmV3 X2Z1bGwgKE5VTEwsIE5VTEwsIE5VTEwsIGdfZnJlZSk7CisgCistICBwd19yZW1vdGVfYWRkX2xp c3RlbmVyIChyZW1vdGUtPnJlbW90ZSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICZyZW1v dGUtPnJlbW90ZV9saXN0ZW5lciwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICZyZW1vdGVf ZXZlbnRzLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3RlKTsKKy0KKy0gIGlmIChw d19yZW1vdGVfY29ubmVjdCAocmVtb3RlLT5yZW1vdGUpICE9IDApCistICAgIHsKKy0gICAgICBw aXBld2lyZV9yZW1vdGVfZGVzdHJveSAocmVtb3RlKTsKKy0gICAgICBnX3NldF9lcnJvciAoZXJy b3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVELAorLSAgICAgICAgICAgICAgICAgICAi Q291bGRuJ3QgY29ubmVjdCBQaXBlV2lyZSByZW1vdGUiKTsKKy0gICAgICByZXR1cm4gTlVMTDsK Ky0gICAgfQorLQorLSAgcHdfbWFpbl9sb29wX3J1biAocmVtb3RlLT5sb29wKTsKKy0KKy0gIHN3 aXRjaCAocHdfcmVtb3RlX2dldF9zdGF0ZSAocmVtb3RlLT5yZW1vdGUsIE5VTEwpKQorLSAgICB7 CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0VSUk9SOgorLSAgICBjYXNlIFBXX1JFTU9URV9T VEFURV9VTkNPTk5FQ1RFRDoKKy0gICAgICAqZXJyb3IgPSBnX3N0ZWFsX3BvaW50ZXIgKCZyZW1v dGUtPmVycm9yKTsKKy0gICAgICBwaXBld2lyZV9yZW1vdGVfZGVzdHJveSAocmVtb3RlKTsKKy0g ICAgICByZXR1cm4gTlVMTDsKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfQ09OTkVDVElORzoK Ky0gICAgICBnX3NldF9lcnJvciAoZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVE LAorLSAgICAgICAgICAgICAgICAgICAiUGlwZVdpcmUgbG9vcCBzdG9wcGVkIHVuZXhwZWN0ZWRs eSIpOworLSAgICAgIHBpcGV3aXJlX3JlbW90ZV9kZXN0cm95IChyZW1vdGUpOworLSAgICAgIHJl dHVybiBOVUxMOworLSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9DT05ORUNURUQ6CistICAgICAg YnJlYWs7CistICAgIGRlZmF1bHQ6CistICAgICAgZ19zZXRfZXJyb3IgKGVycm9yLCBHX0lPX0VS Uk9SLCBHX0lPX0VSUk9SX0ZBSUxFRCwKKy0gICAgICAgICAgICAgICAgICAgIlVuZXhwZWN0ZWQg UGlwZVdpcmUgc3RhdGUiKTsKKy0gICAgICBwaXBld2lyZV9yZW1vdGVfZGVzdHJveSAocmVtb3Rl KTsKKy0gICAgICByZXR1cm4gTlVMTDsKKy0gICAgfQorLQorLSAgcmVtb3RlLT5jb3JlX3Byb3h5 ID0gcHdfcmVtb3RlX2dldF9jb3JlX3Byb3h5IChyZW1vdGUtPnJlbW90ZSk7CistICBwd19jb3Jl X3Byb3h5X2FkZF9saXN0ZW5lciAocmVtb3RlLT5jb3JlX3Byb3h5LAorLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICZyZW1vdGUtPmNvcmVfbGlzdGVuZXIsCistICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJmNvcmVfZXZlbnRzLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHJlbW90ZSk7CisrICBwd19jb3JlX2FkZF9saXN0ZW5lciAocmVtb3RlLT5jb3JlLAorKyAg ICAgICAgICAgICAgICAgICAgICAgICZyZW1vdGUtPmNvcmVfbGlzdGVuZXIsCisrICAgICAgICAg ICAgICAgICAgICAgICAgJmNvcmVfZXZlbnRzLAorKyAgICAgICAgICAgICAgICAgICAgICAgIHJl bW90ZSk7CisgCisgICBpZiAoIWRpc2NvdmVyX25vZGVfZmFjdG9yeV9zeW5jIChyZW1vdGUsIGVy cm9yKSkKKyAgICAgeworZGlmZiAtLWdpdCBzcmMvcGlwZXdpcmUuaCBzcmMvcGlwZXdpcmUuaAor aW5kZXggMGYxYmY1NC4uYmY0OGQ1ZSAxMDA2NDQKKy0tLSBzcmMvcGlwZXdpcmUuaAorKysrIHNy Yy9waXBld2lyZS5oCitAQCAtMzIsNyArMzIsNyBAQCB0eXBlZGVmIHN0cnVjdCBfUGlwZVdpcmVH bG9iYWwKKyAKKyB0eXBlZGVmIHZvaWQgKCogUGlwZVdpcmVHbG9iYWxBZGRlZENhbGxiYWNrKSAo UGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdWludDMyX3QgaWQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHR5cGUsCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnR5cGUsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBzcGFfZGljdCAq cHJvcHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdw b2ludGVyIHVzZXJfZGF0YSk7CisgCitAQCAtNDMsMTMgKzQzLDExIEBAIHR5cGVkZWYgdm9pZCAo KiBQaXBlV2lyZUdsb2JhbFJlbW92ZWRDYWxsYmFjaykgKFBpcGVXaXJlUmVtb3RlICpyZW1vdGUs Cisgc3RydWN0IF9QaXBlV2lyZVJlbW90ZQorIHsKKyAgIHN0cnVjdCBwd19tYWluX2xvb3AgKmxv b3A7CisrICBzdHJ1Y3QgcHdfY29udGV4dCAqY29udGV4dDsKKyAgIHN0cnVjdCBwd19jb3JlICpj b3JlOworLSAgc3RydWN0IHB3X3JlbW90ZSAqcmVtb3RlOworLSAgc3RydWN0IHNwYV9ob29rIHJl bW90ZV9saXN0ZW5lcjsKKy0KKy0gIHN0cnVjdCBwd19jb3JlX3Byb3h5ICpjb3JlX3Byb3h5Owor ICAgc3RydWN0IHNwYV9ob29rIGNvcmVfbGlzdGVuZXI7CistICB1aW50MzJfdCBzeW5jX3NlcTsK KysKKysgIGludCBzeW5jX3NlcTsKKyAKKyAgIHN0cnVjdCBzcGFfaG9vayByZWdpc3RyeV9saXN0 ZW5lcjsKKyAKK2RpZmYgLS1naXQgc3JjL3NjcmVlbi1jYXN0LmMgc3JjL3NjcmVlbi1jYXN0LmMK K2luZGV4IDc4ODFkZGMuLjE2NzcwNTAgMTAwNjQ0CistLS0gc3JjL3NjcmVlbi1jYXN0LmMKKysr KyBzcmMvc2NyZWVuLWNhc3QuYworQEAgLTMxLDEwICszMSwxMCBAQAorICNpbmNsdWRlICJ4ZHAt aW1wbC1kYnVzLmgiCisgI2luY2x1ZGUgInhkcC11dGlscy5oIgorIAorLSNkZWZpbmUgUEVSTUlT U0lPTl9JVEVNKGl0ZW1fa2V5LCBpdGVtX3ZhbHVlKSBcCistICAoKHN0cnVjdCBzcGFfZGljdF9p dGVtKSB7IFwKKy0gICAgLmtleSA9IGl0ZW1fa2V5LCBcCistICAgIC52YWx1ZSA9IGl0ZW1fdmFs dWUgXAorKyNkZWZpbmUgUEVSTUlTU0lPTl9JVEVNKGl0ZW1faWQsIGl0ZW1fcGVybWlzc2lvbnMp IFwKKysgICgoc3RydWN0IHB3X3Blcm1pc3Npb24pIHsgXAorKyAgICAuaWQgPSBpdGVtX2lkLCBc CisrICAgIC5wZXJtaXNzaW9ucyA9IGl0ZW1fcGVybWlzc2lvbnMgXAorICAgfSkKKyAKKyB0eXBl ZGVmIHN0cnVjdCBfU2NyZWVuQ2FzdCBTY3JlZW5DYXN0OworQEAgLTUxNyw0MiArNTE3LDkgQEAg c2NyZWVuX2Nhc3Rfc3RyZWFtX2dldF9waXBld2lyZV9ub2RlX2lkIChTY3JlZW5DYXN0U3RyZWFt ICpzdHJlYW0pCisgICByZXR1cm4gc3RyZWFtLT5pZDsKKyB9CisgCistc3RhdGljIHZvaWQKKy1h cHBlbmRfcGFyZW50X3Blcm1pc3Npb25zIChQaXBlV2lyZVJlbW90ZSAqcmVtb3RlLAorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgIEdBcnJheSAqcGVybWlzc2lvbl9pdGVtcywKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICBHTGlzdCAqKnN0cmluZ19zdGFzaCwKKy0gICAgICAgICAgICAg ICAgICAgICAgICAgICBQaXBlV2lyZUdsb2JhbCAqZ2xvYmFsLAorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IGNoYXIgKnBlcm1pc3Npb24pCisteworLSAgUGlwZVdpcmVHbG9iYWwg KnBhcmVudDsKKy0gIGNoYXIgKnBhcmVudF9wZXJtaXNzaW9uX3ZhbHVlOworLQorLSAgaWYgKGds b2JhbC0+cGFyZW50X2lkID09IDApCistICAgIHJldHVybjsKKy0KKy0gIHBhcmVudCA9IGdfaGFz aF90YWJsZV9sb29rdXAgKHJlbW90ZS0+Z2xvYmFscywgR0lOVF9UT19QT0lOVEVSIChnbG9iYWwt PnBhcmVudF9pZCkpOworLQorLSAgaWYgKHBhcmVudC0+cGVybWlzc2lvbl9zZXQpCistICAgIHJl dHVybjsKKy0gIHBhcmVudC0+cGVybWlzc2lvbl9zZXQgPSBUUlVFOworLQorLSAgYXBwZW5kX3Bh cmVudF9wZXJtaXNzaW9ucyAocmVtb3RlLCBwZXJtaXNzaW9uX2l0ZW1zLCBzdHJpbmdfc3Rhc2gs CistICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJlbnQsIHBlcm1pc3Npb24pOworLQor LSAgcGFyZW50X3Blcm1pc3Npb25fdmFsdWUgPSBnX3N0cmR1cF9wcmludGYgKCIldTolcyIsCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2xvYmFsLT5wYXJl bnRfaWQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVy bWlzc2lvbik7CistICAqc3RyaW5nX3N0YXNoID0gZ19saXN0X3ByZXBlbmQgKCpzdHJpbmdfc3Rh c2gsIHBhcmVudF9wZXJtaXNzaW9uX3ZhbHVlKTsKKy0KKy0gIGdfYXJyYXlfYXBwZW5kX3ZhbCAo cGVybWlzc2lvbl9pdGVtcywKKy0gICAgICAgICAgICAgICAgICAgICAgUEVSTUlTU0lPTl9JVEVN IChQV19DT1JFX1BST1hZX1BFUk1JU1NJT05TX0dMT0JBTCwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBwYXJlbnRfcGVybWlzc2lvbl92YWx1ZSkpOworLX0KKy0KKyBz dGF0aWMgdm9pZAorIGFwcGVuZF9zdHJlYW1fcGVybWlzc2lvbnMgKFBpcGVXaXJlUmVtb3RlICpy ZW1vdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0FycmF5ICpwZXJtaXNzaW9uX2l0 ZW1zLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaXN0ICoqc3RyaW5nX3N0YXNoLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaXN0ICpzdHJlYW1zKQorIHsKKyAgIEdMaXN0 ICpsOworQEAgLTU2MSwyMSArNTI4LDEwIEBAIGFwcGVuZF9zdHJlYW1fcGVybWlzc2lvbnMgKFBp cGVXaXJlUmVtb3RlICpyZW1vdGUsCisgICAgIHsKKyAgICAgICBTY3JlZW5DYXN0U3RyZWFtICpz dHJlYW0gPSBsLT5kYXRhOworICAgICAgIHVpbnQzMl90IHN0cmVhbV9pZDsKKy0gICAgICBQaXBl V2lyZUdsb2JhbCAqc3RyZWFtX2dsb2JhbDsKKy0gICAgICBjaGFyICpzdHJlYW1fcGVybWlzc2lv bl92YWx1ZTsKKyAKKyAgICAgICBzdHJlYW1faWQgPSBzY3JlZW5fY2FzdF9zdHJlYW1fZ2V0X3Bp cGV3aXJlX25vZGVfaWQgKHN0cmVhbSk7CistICAgICAgc3RyZWFtX2dsb2JhbCA9IGdfaGFzaF90 YWJsZV9sb29rdXAgKHJlbW90ZS0+Z2xvYmFscywKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgR0lOVF9UT19QT0lOVEVSIChzdHJlYW1faWQpKTsKKy0KKy0gICAg ICBhcHBlbmRfcGFyZW50X3Blcm1pc3Npb25zIChyZW1vdGUsIHBlcm1pc3Npb25faXRlbXMsIHN0 cmluZ19zdGFzaCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJlYW1fZ2xv YmFsLCAici0tIik7CistCistICAgICAgc3RyZWFtX3Blcm1pc3Npb25fdmFsdWUgPSBnX3N0cmR1 cF9wcmludGYgKCIldTpyd3giLCBzdHJlYW1faWQpOworLSAgICAgICpzdHJpbmdfc3Rhc2ggPSBn X2xpc3RfcHJlcGVuZCAoKnN0cmluZ19zdGFzaCwgc3RyZWFtX3Blcm1pc3Npb25fdmFsdWUpOwor ICAgICAgIGdfYXJyYXlfYXBwZW5kX3ZhbCAocGVybWlzc2lvbl9pdGVtcywKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgIFBFUk1JU1NJT05fSVRFTSAoUFdfQ09SRV9QUk9YWV9QRVJNSVNTSU9O U19HTE9CQUwsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0 cmVhbV9wZXJtaXNzaW9uX3ZhbHVlKSk7CisrICAgICAgICAgICAgICAgICAgICAgICAgICBQRVJN SVNTSU9OX0lURU0gKHN0cmVhbV9pZCwgUFdfUEVSTV9SV1gpKTsKKyAgICAgfQorIH0KKyAKK0BA IC01ODcsOSArNTQzLDYgQEAgb3Blbl9waXBld2lyZV9zY3JlZW5fY2FzdF9yZW1vdGUgKGNvbnN0 IGNoYXIgKmFwcF9pZCwKKyAgIHN0cnVjdCBwd19wcm9wZXJ0aWVzICpwaXBld2lyZV9wcm9wZXJ0 aWVzOworICAgUGlwZVdpcmVSZW1vdGUgKnJlbW90ZTsKKyAgIGdfYXV0b3B0cihHQXJyYXkpIHBl cm1pc3Npb25faXRlbXMgPSBOVUxMOworLSAgY2hhciAqbm9kZV9mYWN0b3J5X3Blcm1pc3Npb25f c3RyaW5nOworLSAgR0xpc3QgKnN0cmluZ19zdGFzaCA9IE5VTEw7CistICBzdHJ1Y3Qgc3BhX2Rp Y3QgKnBlcm1pc3Npb25fZGljdDsKKyAgIFBpcGVXaXJlR2xvYmFsICpub2RlX2dsb2JhbDsKKyAK KyAgIHBpcGV3aXJlX3Byb3BlcnRpZXMgPSBwd19wcm9wZXJ0aWVzX25ldyAoInBpcGV3aXJlLmFj Y2Vzcy5wb3J0YWwuYXBwX2lkIiwgYXBwX2lkLAorQEAgLTYwMyw0OCArNTU2LDMxIEBAIG9wZW5f cGlwZXdpcmVfc2NyZWVuX2Nhc3RfcmVtb3RlIChjb25zdCBjaGFyICphcHBfaWQsCisgCisgICBw ZXJtaXNzaW9uX2l0ZW1zID0gZ19hcnJheV9uZXcgKEZBTFNFLCBUUlVFLCBzaXplb2YgKHN0cnVj dCBzcGFfZGljdF9pdGVtKSk7CisgCistICAvKgorLSAgICogSGlkZSBhbGwgZXhpc3RpbmcgYW5k IGZ1dHVyZSBub2RlcyAoZXhjZXB0IHRoZSBvbmVzIHdlIGV4cGxpY2l0bHkgbGlzdCBiZWxvdy4K Ky0gICAqLworLSAgZ19hcnJheV9hcHBlbmRfdmFsIChwZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAg ICAgICAgICAgICAgICAgICBQRVJNSVNTSU9OX0lURU0gKFBXX0NPUkVfUFJPWFlfUEVSTUlTU0lP TlNfRVhJU1RJTkcsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi0t LSIpKTsKKy0gIGdfYXJyYXlfYXBwZW5kX3ZhbCAocGVybWlzc2lvbl9pdGVtcywKKy0gICAgICAg ICAgICAgICAgICAgICAgUEVSTUlTU0lPTl9JVEVNIChQV19DT1JFX1BST1hZX1BFUk1JU1NJT05T X0RFRkFVTFQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi0tLSIp KTsKKy0KKyAgIC8qCisgICAgKiBQaXBlV2lyZTpJbnRlcmZhY2U6Q29yZQorICAgICogTmVlZHMg cnd4IHRvIGJlIGFibGUgY3JlYXRlIHRoZSBzaW5rIG5vZGUgdXNpbmcgdGhlIGNyZWF0ZS1vYmpl Y3QgbWV0aG9kCisgICAgKi8KKyAgIGdfYXJyYXlfYXBwZW5kX3ZhbCAocGVybWlzc2lvbl9pdGVt cywKKy0gICAgICAgICAgICAgICAgICAgICAgUEVSTUlTU0lPTl9JVEVNIChQV19DT1JFX1BST1hZ X1BFUk1JU1NJT05TX0dMT0JBTCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAiMDpyd3giKSk7CisrICAgICAgICAgICAgICAgICAgICAgIFBFUk1JU1NJT05fSVRFTSAo UFdfSURfQ09SRSwgUFdfUEVSTV9SV1gpKTsKKyAKKyAgIC8qCisgICAgKiBQaXBlV2lyZTpJbnRl cmZhY2U6Tm9kZUZhY3RvcnkKKyAgICAqIE5lZWRzIHItLSBzbyBpdCBjYW4gYmUgcGFzc2VkIHRv IGNyZWF0ZS1vYmplY3Qgd2hlbiBjcmVhdGluZyB0aGUgc2luayBub2RlLgorICAgICovCistICBu b2RlX2ZhY3RvcnlfcGVybWlzc2lvbl9zdHJpbmcgPSBnX3N0cmR1cF9wcmludGYgKCIlZDpyLS0i LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBy ZW1vdGUtPm5vZGVfZmFjdG9yeV9pZCk7CistICBzdHJpbmdfc3Rhc2ggPSBnX2xpc3RfcHJlcGVu ZCAoc3RyaW5nX3N0YXNoLCBub2RlX2ZhY3RvcnlfcGVybWlzc2lvbl9zdHJpbmcpOworICAgZ19h cnJheV9hcHBlbmRfdmFsIChwZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAgICAgICAgICAgICAgICAg ICBQRVJNSVNTSU9OX0lURU0gKFBXX0NPUkVfUFJPWFlfUEVSTUlTU0lPTlNfR0xPQkFMLAorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vZGVfZmFjdG9yeV9wZXJtaXNz aW9uX3N0cmluZykpOworLSAgbm9kZV9nbG9iYWwgPSBnX2hhc2hfdGFibGVfbG9va3VwIChyZW1v dGUtPmdsb2JhbHMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdJTlRf VE9fUE9JTlRFUiAocmVtb3RlLT5ub2RlX2ZhY3RvcnlfaWQpKTsKKy0gIGFwcGVuZF9wYXJlbnRf cGVybWlzc2lvbnMgKHJlbW90ZSwgcGVybWlzc2lvbl9pdGVtcywgJnN0cmluZ19zdGFzaCwKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vZGVfZ2xvYmFsLCAici0tIik7CisrICAgICAg ICAgICAgICAgICAgICAgIFBFUk1JU1NJT05fSVRFTSAocmVtb3RlLT5ub2RlX2ZhY3RvcnlfaWQs IFBXX1BFUk1fUikpOworIAorLSAgYXBwZW5kX3N0cmVhbV9wZXJtaXNzaW9ucyAocmVtb3RlLCBw ZXJtaXNzaW9uX2l0ZW1zLCAmc3RyaW5nX3N0YXNoLCBzdHJlYW1zKTsKKysgIGFwcGVuZF9zdHJl YW1fcGVybWlzc2lvbnMgKHJlbW90ZSwgcGVybWlzc2lvbl9pdGVtcywgc3RyZWFtcyk7CisgCist ICBwZXJtaXNzaW9uX2RpY3QgPQorLSAgICAmU1BBX0RJQ1RfSU5JVCAoKHN0cnVjdCBzcGFfZGlj dF9pdGVtICopIHBlcm1pc3Npb25faXRlbXMtPmRhdGEsCistICAgICAgICAgICAgICAgICAgICBw ZXJtaXNzaW9uX2l0ZW1zLT5sZW4pOworLSAgcHdfY29yZV9wcm94eV9wZXJtaXNzaW9ucyAocHdf cmVtb3RlX2dldF9jb3JlX3Byb3h5IChyZW1vdGUtPnJlbW90ZSksCistICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBwZXJtaXNzaW9uX2RpY3QpOworKyAgLyoKKysgICAqIEhpZGUgYWxsIGV4 aXN0aW5nIGFuZCBmdXR1cmUgbm9kZXMgKGV4Y2VwdCB0aGUgb25lcyB3ZSBleHBsaWNpdGx5IGxp c3QgYWJvdmUpLgorKyAgICovCisrICBnX2FycmF5X2FwcGVuZF92YWwgKHBlcm1pc3Npb25faXRl bXMsCisrICAgICAgICAgICAgICAgICAgICAgIFBFUk1JU1NJT05fSVRFTSAoUFdfSURfQU5ZLCAw KSk7CisgCistICBnX2xpc3RfZnJlZV9mdWxsIChzdHJpbmdfc3Rhc2gsIGdfZnJlZSk7CisrICBw d19jbGllbnRfdXBkYXRlX3Blcm1pc3Npb25zIChwd19jb3JlX2dldF9jbGllbnQocmVtb3RlLT5j b3JlKSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcm1pc3Npb25faXRlbXMt PmxlbiwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjb25zdCBzdHJ1Y3QgcHdf cGVybWlzc2lvbiAqKXBlcm1pc3Npb25faXRlbXMtPmRhdGEpOworIAorICAgcGlwZXdpcmVfcmVt b3RlX3JvdW5kdHJpcCAocmVtb3RlKTsKKyAKK0BAIC05NDMsNyArODc5LDcgQEAgaGFuZGxlX29w ZW5fcGlwZXdpcmVfcmVtb3RlIChYZHBTY3JlZW5DYXN0ICpvYmplY3QsCisgICAgIH0KKyAKKyAg IG91dF9mZF9saXN0ID0gZ191bml4X2ZkX2xpc3RfbmV3ICgpOworLSAgZmQgPSBwd19yZW1vdGVf c3RlYWxfZmQgKHJlbW90ZS0+cmVtb3RlKTsKKysgIGZkID0gcHdfY29yZV9zdGVhbF9mZCAocmVt b3RlLT5jb3JlKTsKKyAgIGZkX2lkID0gZ191bml4X2ZkX2xpc3RfYXBwZW5kIChvdXRfZmRfbGlz dCwgZmQsICZlcnJvcik7CisgICBjbG9zZSAoZmQpOworICAgcGlwZXdpcmVfcmVtb3RlX2Rlc3Ry b3kgKHJlbW90ZSk7CmRpZmYgLS1naXQgYS9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC90ZW1w bGF0ZSBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsL3RlbXBsYXRlCmluZGV4IGViOGE0NjAy ZjVkLi4xMTM2YjZhNmUwZSAxMDA2NDQKLS0tIGEvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwv dGVtcGxhdGUKKysrIGIvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwvdGVtcGxhdGUKQEAgLTEs MTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3hkZy1kZXNrdG9wLXBvcnRhbCcKIHBr Z25hbWU9eGRnLWRlc2t0b3AtcG9ydGFsCiB2ZXJzaW9uPTEuNi4wCi1yZXZpc2lvbj0xCityZXZp c2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1lbmFi bGUtcGlwZXdpcmUgLS1lbmFibGUtZ2VvY2x1ZSAtLWRpc2FibGUtbGlicG9ydGFsIgotaG9zdG1h a2VkZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwiCitob3N0bWFrZWRlcGVuZHM9ImF1dG9t YWtlIGxpYnRvb2wgZ2V0dGV4dC1kZXZlbCBwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBtYWtlZGVw ZW5kcz0iZmxhdHBhay1kZXZlbCBmdXNlLWRldmVsIHBpcGV3aXJlLWRldmVsIGdlb2NsdWUyLWRl dmVsIgogc2hvcnRfZGVzYz0iUG9ydGFsIGZyb250ZW5kIHNlcnZpY2UgZm9yIEZsYXRwYWsiCiBt YWludGFpbmVyPSJEdW5jYWVuIDxkdW5jYWVuQHZvaWRsaW51eC5vcmc+IgpAQCAtMTMsNiArMTMs MTAgQEAgaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9mbGF0cGFrL3hkZy1kZXNrdG9wLXBv cnRhbCIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsYXRwYWsvJHtwa2duYW1lfS9y ZWxlYXNlcy9kb3dubG9hZC8ke3ZlcnNpb259LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoi CiBjaGVja3N1bT04ODNjOWM5YTkyNWU0OGFmNTQ4MTJiNTM0N2Y1NDZkZDc3NmVjMmUyNzA3NmE4 M2Q1YTgxMjZhZjZiYWZiOWRhCiAKK3ByZV9jb25maWd1cmUoKSB7CisJYXV0b3JlY29uZiAtdmZp Cit9CisKIHBvc3RfaW5zdGFsbCgpIHsKIAlybSAtcmYgIiR7REVTVERJUn0vdXNyL2xpYi9zeXN0 ZW1kIgogfQoKRnJvbSA3MDhmYTYyY2Y5NTM1MWYxYjQ4NTA3YjE0NDU4YTdjMGY4YWY2YzFmIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLcmlkc2FkYSBUaGFuYWJ1bHBvbmcgPHNpcm5A b2dzaXRlLm5ldD4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAwNjoxNzoxNyArMDkwMApTdWJqZWN0 OiBbUEFUQ0ggNC80XSBtdXR0ZXI6IHJlYnVpbGQgZm9yIHBpcGV3aXJlLTAuMwoKLS0tCiBzcmNw a2dzL211dHRlci9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaCB8IDUyMSArKysrKysrKysrKysr KysrKysrKysrCiBzcmNwa2dzL211dHRlci90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICB8ICAg MiArLQogMiBmaWxlcyBjaGFuZ2VkLCA1MjIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQog Y3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBh dGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9waXBld2lyZS0wLjMucGF0 Y2ggYi9zcmNwa2dzL211dHRlci9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZWJmZjY1ZmJhODUKLS0tIC9kZXYvbnVsbAor KysgYi9zcmNwa2dzL211dHRlci9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaApAQCAtMCwwICsx LDUyMSBAQAorQnVpbGQgbXV0dGVyIGFnYWluc3QgcGlwZXdpcmUtMC4zLCBiYXNlZCBvbiBhIHBh dGNoIGF0OgoraHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL211dHRlci8tL21lcmdlX3Jl cXVlc3RzLzEwNjIKKy0tLSBtZXNvbi5idWlsZAorKysrIG1lc29uLmJ1aWxkCitAQCAtNTAsNyAr NTAsNyBAQCBsaWJpbnB1dF9yZXEgPSAnPj0gMS43JworIGdibV9yZXEgPSAnPj0gMTAuMycKKwor ICMgc2NyZWVuIGNhc3QgdmVyc2lvbiByZXF1aXJlbWVudHMKKy1saWJwaXBld2lyZV9yZXEgPSAn Pj0gMC4yLjUnCisrbGlicGlwZXdpcmVfcmVxID0gJz49IDAuMy4wJworCisgZ25vbWUgPSBpbXBv cnQoJ2dub21lJykKKyBwa2cgPSBpbXBvcnQoJ3BrZ2NvbmZpZycpCitAQCAtMjQxLDcgKzI0MSw3 IEBAIGVuZGlmCisKKyBoYXZlX3JlbW90ZV9kZXNrdG9wID0gZ2V0X29wdGlvbigncmVtb3RlX2Rl c2t0b3AnKQorIGlmIGhhdmVfcmVtb3RlX2Rlc2t0b3AKKy0gIGxpYnBpcGV3aXJlX2RlcCA9IGRl cGVuZGVuY3koJ2xpYnBpcGV3aXJlLTAuMicsIHZlcnNpb246IGxpYnBpcGV3aXJlX3JlcSkKKysg IGxpYnBpcGV3aXJlX2RlcCA9IGRlcGVuZGVuY3koJ2xpYnBpcGV3aXJlLTAuMycsIHZlcnNpb246 IGxpYnBpcGV3aXJlX3JlcSkKKyBlbmRpZgorCisgaGF2ZV9pbnRyb3NwZWN0aW9uID0gZ2V0X29w dGlvbignaW50cm9zcGVjdGlvbicpCitkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmRzL21ldGEtc2Ny ZWVuLWNhc3Qtc3RyZWFtLXNyYy5jIGIvc3JjL2JhY2tlbmRzL21ldGEtc2NyZWVuLWNhc3Qtc3Ry ZWFtLXNyYy5jCitpbmRleCA4MmM1Y2JhNDM2Li5iYTFjZTk0YTdlIDEwMDY0NAorLS0tIHNyYy9i YWNrZW5kcy9tZXRhLXNjcmVlbi1jYXN0LXN0cmVhbS1zcmMuYworKysrIHNyYy9iYWNrZW5kcy9t ZXRhLXNjcmVlbi1jYXN0LXN0cmVhbS1zcmMuYworQEAgLTI5LDYgKzI5LDcgQEAKKyAjaW5jbHVk ZSA8c3BhL3BhcmFtL3Byb3BzLmg+CisgI2luY2x1ZGUgPHNwYS9wYXJhbS9mb3JtYXQtdXRpbHMu aD4KKyAjaW5jbHVkZSA8c3BhL3BhcmFtL3ZpZGVvL2Zvcm1hdC11dGlscy5oPgorKyNpbmNsdWRl IDxzcGEvdXRpbHMvcmVzdWx0Lmg+CisgI2luY2x1ZGUgPHN0ZGludC5oPgorICNpbmNsdWRlIDxz eXMvbW1hbi5oPgorCitAQCAtNjIsMTUgKzYzLDYgQEAgZW51bQorCisgc3RhdGljIGd1aW50IHNp Z25hbHNbTl9TSUdOQUxTXTsKKworLXR5cGVkZWYgc3RydWN0IF9NZXRhU3BhVHlwZQorLXsKKy0g IHN0cnVjdCBzcGFfdHlwZV9tZWRpYV90eXBlIG1lZGlhX3R5cGU7CistICBzdHJ1Y3Qgc3BhX3R5 cGVfbWVkaWFfc3VidHlwZSBtZWRpYV9zdWJ0eXBlOworLSAgc3RydWN0IHNwYV90eXBlX2Zvcm1h dF92aWRlbyBmb3JtYXRfdmlkZW87CistICBzdHJ1Y3Qgc3BhX3R5cGVfdmlkZW9fZm9ybWF0IHZp ZGVvX2Zvcm1hdDsKKy0gIHVpbnQzMl90IG1ldGFfY3Vyc29yOworLX0gTWV0YVNwYVR5cGU7Cist CisgdHlwZWRlZiBzdHJ1Y3QgX01ldGFQaXBlV2lyZVNvdXJjZQorIHsKKyAgIEdTb3VyY2UgYmFz ZTsKK0BAIC04MiwxOSArNzQsMTkgQEAgdHlwZWRlZiBzdHJ1Y3QgX01ldGFTY3JlZW5DYXN0U3Ry ZWFtU3JjUHJpdmF0ZQorIHsKKyAgIE1ldGFTY3JlZW5DYXN0U3RyZWFtICpzdHJlYW07CisKKysg IHN0cnVjdCBwd19jb250ZXh0ICpwaXBld2lyZV9jb250ZXh0OworICAgc3RydWN0IHB3X2NvcmUg KnBpcGV3aXJlX2NvcmU7CistICBzdHJ1Y3QgcHdfcmVtb3RlICpwaXBld2lyZV9yZW1vdGU7Cist ICBzdHJ1Y3QgcHdfdHlwZSAqcGlwZXdpcmVfdHlwZTsKKyAgIE1ldGFQaXBlV2lyZVNvdXJjZSAq cGlwZXdpcmVfc291cmNlOworLSAgc3RydWN0IHNwYV9ob29rIHBpcGV3aXJlX3JlbW90ZV9saXN0 ZW5lcjsKKysgIHN0cnVjdCBzcGFfaG9vayBwaXBld2lyZV9jb3JlX2xpc3RlbmVyOworCisgICBn Ym9vbGVhbiBpc19lbmFibGVkOworCisgICBzdHJ1Y3QgcHdfc3RyZWFtICpwaXBld2lyZV9zdHJl YW07CisgICBzdHJ1Y3Qgc3BhX2hvb2sgcGlwZXdpcmVfc3RyZWFtX2xpc3RlbmVyOworKyAgdWlu dDMyX3Qgbm9kZV9pZDsKKworLSAgTWV0YVNwYVR5cGUgc3BhX3R5cGU7CisgICBzdHJ1Y3Qgc3Bh X3ZpZGVvX2luZm9fcmF3IHZpZGVvX2Zvcm1hdDsKKysgIGludCB2aWRlb19zdHJpZGU7CisKKyAg IHVpbnQ2NF90IGxhc3RfZnJhbWVfdGltZXN0YW1wX3VzOworCitAQCAtMTEyLDggKzEwNCw2IEBA IEdfREVGSU5FX1RZUEVfV0lUSF9DT0RFIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYywKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhX3NjcmVlbl9j YXN0X3N0cmVhbV9zcmNfaW5pdF9pbml0YWJsZV9pZmFjZSkKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgR19BRERfUFJJVkFURSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMpKQorCistI2RlZmlu ZSBQUk9QX1JBTkdFKG1pbiwgbWF4KSAyLCAobWluKSwgKG1heCkKKy0KKyBzdGF0aWMgdm9pZAor IG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfc3BlY3MgKE1ldGFTY3JlZW5DYXN0U3Ry ZWFtU3JjICpzcmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50 ICAgICAgICAgICAgICAgICAgICAgKndpZHRoLAorQEAgLTI4Niw5ICsyNzYsNiBAQCBtZXRhX3Nj cmVlbl9jYXN0X3N0cmVhbV9zcmNfc2V0X2VtcHR5X2N1cnNvcl9zcHJpdGVfbWV0YWRhdGEgKE1l dGFTY3JlZW5DYXN0U3RyZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgIHgsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBpbnQgICAgICAgICAgICAgICAgICAgICAgeSkKKyB7CistICBNZXRhU2NyZWVuQ2FzdFN0cmVh bVNyY1ByaXZhdGUgKnByaXYgPQorLSAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0 X2luc3RhbmNlX3ByaXZhdGUgKHNyYyk7CistICBNZXRhU3BhVHlwZSAqc3BhX3R5cGUgPSAmcHJp di0+c3BhX3R5cGU7CisgICBzdHJ1Y3Qgc3BhX21ldGFfYml0bWFwICpzcGFfbWV0YV9iaXRtYXA7 CisKKyAgIHNwYV9tZXRhX2N1cnNvci0+aWQgPSAxOworQEAgLTMwMCw3ICsyODcsNyBAQCBtZXRh X3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfc2V0X2VtcHR5X2N1cnNvcl9zcHJpdGVfbWV0YWRhdGEg KE1ldGFTY3JlZW5DYXN0U3RyZQorICAgc3BhX21ldGFfYml0bWFwID0gU1BBX01FTUJFUiAoc3Bh X21ldGFfY3Vyc29yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhX21ldGFf Y3Vyc29yLT5iaXRtYXBfb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg c3RydWN0IHNwYV9tZXRhX2JpdG1hcCk7CistICBzcGFfbWV0YV9iaXRtYXAtPmZvcm1hdCA9IHNw YV90eXBlLT52aWRlb19mb3JtYXQuUkdCQTsKKysgIHNwYV9tZXRhX2JpdG1hcC0+Zm9ybWF0ID0g U1BBX1ZJREVPX0ZPUk1BVF9SR0JBOworICAgc3BhX21ldGFfYml0bWFwLT5vZmZzZXQgPSBzaXpl b2YgKHN0cnVjdCBzcGFfbWV0YV9iaXRtYXApOworCisgICBzcGFfbWV0YV9jdXJzb3ItPmhvdHNw b3QueCA9IDA7CitAQCAtMzE3LDkgKzMwNCw2IEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3Ny Y19zZXRfY3Vyc29yX3Nwcml0ZV9tZXRhZGF0YSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu dCAgICAgICAgICAgICAgICAgICAgICB5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQgICAgICAgICAgICAgICAgICAgIHNjYWxl KQorIHsKKy0gIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZSAqcHJpdiA9CistICAgIG1l dGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKKy0g IE1ldGFTcGFUeXBlICpzcGFfdHlwZSA9ICZwcml2LT5zcGFfdHlwZTsKKyAgIENvZ2xUZXh0dXJl ICpjdXJzb3JfdGV4dHVyZTsKKyAgIHN0cnVjdCBzcGFfbWV0YV9iaXRtYXAgKnNwYV9tZXRhX2Jp dG1hcDsKKyAgIGludCBob3RzcG90X3gsIGhvdHNwb3RfeTsKK0BAIC0zNDYsNyArMzMwLDcgQEAg bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX3NldF9jdXJzb3Jfc3ByaXRlX21ldGFkYXRhIChN ZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYworICAgc3BhX21ldGFfYml0bWFwID0gU1BBX01FTUJFUiAo c3BhX21ldGFfY3Vyc29yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhX21l dGFfY3Vyc29yLT5iaXRtYXBfb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgc3RydWN0IHNwYV9tZXRhX2JpdG1hcCk7CistICBzcGFfbWV0YV9iaXRtYXAtPmZvcm1hdCA9 IHNwYV90eXBlLT52aWRlb19mb3JtYXQuUkdCQTsKKysgIHNwYV9tZXRhX2JpdG1hcC0+Zm9ybWF0 ID0gU1BBX1ZJREVPX0ZPUk1BVF9SR0JBOworICAgc3BhX21ldGFfYml0bWFwLT5vZmZzZXQgPSBz aXplb2YgKHN0cnVjdCBzcGFfbWV0YV9iaXRtYXApOworCisgICBtZXRhX2N1cnNvcl9zcHJpdGVf Z2V0X2hvdHNwb3QgKGN1cnNvcl9zcHJpdGUsICZob3RzcG90X3gsICZob3RzcG90X3kpOworQEAg LTM4MiwxMiArMzY2LDEwIEBAIHN0YXRpYyB2b2lkCisgYWRkX2N1cnNvcl9tZXRhZGF0YSAoTWV0 YVNjcmVlbkNhc3RTdHJlYW1TcmMgKnNyYywKKyAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qg c3BhX2J1ZmZlciAgICAgICAqc3BhX2J1ZmZlcikKKyB7CistICBNZXRhU2NyZWVuQ2FzdFN0cmVh bVNyY1ByaXZhdGUgKnByaXYgPQorLSAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0 X2luc3RhbmNlX3ByaXZhdGUgKHNyYyk7CistICBNZXRhU3BhVHlwZSAqc3BhX3R5cGUgPSAmcHJp di0+c3BhX3R5cGU7CisgICBzdHJ1Y3Qgc3BhX21ldGFfY3Vyc29yICpzcGFfbWV0YV9jdXJzb3I7 CisKKy0gIHNwYV9tZXRhX2N1cnNvciA9IHNwYV9idWZmZXJfZmluZF9tZXRhIChzcGFfYnVmZmVy LCBzcGFfdHlwZS0+bWV0YV9jdXJzb3IpOworKyAgc3BhX21ldGFfY3Vyc29yID0gc3BhX2J1ZmZl cl9maW5kX21ldGFfZGF0YSAoc3BhX2J1ZmZlciwgU1BBX01FVEFfQ3Vyc29yLAorKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mICgqc3BhX21ldGFf Y3Vyc29yKSk7CisgICBpZiAoc3BhX21ldGFfY3Vyc29yKQorICAgICBtZXRhX3NjcmVlbl9jYXN0 X3N0cmVhbV9zcmNfc2V0X2N1cnNvcl9tZXRhZGF0YSAoc3JjLCBzcGFfbWV0YV9jdXJzb3IpOwor IH0KK0BAIC00NDcsMTQgKzQyOSwxNCBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfbWF5 YmVfcmVjb3JkX2ZyYW1lIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjKQorICAgICB7Cisg ICAgICAgZGF0YSA9IHNwYV9idWZmZXItPmRhdGFzWzBdLmRhdGE7CisgICAgIH0KKy0gIGVsc2Ug aWYgKHNwYV9idWZmZXItPmRhdGFzWzBdLnR5cGUgPT0gcHJpdi0+cGlwZXdpcmVfdHlwZS0+ZGF0 YS5NZW1GZCkKKysgIGVsc2UgaWYgKHNwYV9idWZmZXItPmRhdGFzWzBdLnR5cGUgPT0gU1BBX0RB VEFfTWVtRmQpCisgICAgIHsKKyAgICAgICBtYXAgPSBtbWFwIChOVUxMLCBzcGFfYnVmZmVyLT5k YXRhc1swXS5tYXhzaXplICsgc3BhX2J1ZmZlci0+ZGF0YXNbMF0ubWFwb2Zmc2V0LAorICAgICAg ICAgICAgICAgICAgIFBST1RfUkVBRCB8IFBST1RfV1JJVEUsIE1BUF9TSEFSRUQsCisgICAgICAg ICAgICAgICAgICAgc3BhX2J1ZmZlci0+ZGF0YXNbMF0uZmQsIDApOworICAgICAgIGlmIChtYXAg PT0gTUFQX0ZBSUxFRCkKKyAgICAgICAgIHsKKy0gICAgICAgICAgZ193YXJuaW5nICgiRmFpbGVk IHRvIG1tYXAgcGlwZXdpcmUgc3RyZWFtIGJ1ZmZlcjogJXNcbiIsCisrICAgICAgICAgIGdfd2Fy bmluZyAoIkZhaWxlZCB0byBtbWFwIHBpcGV3aXJlIHN0cmVhbSBidWZmZXI6ICVzIiwKKyAgICAg ICAgICAgICAgICAgICAgICBzdHJlcnJvciAoZXJybm8pKTsKKyAgICAgICAgICAgcmV0dXJuOwor ICAgICAgICAgfQorQEAgLTQ2OSwyOCArNDUxLDMwIEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFt X3NyY19tYXliZV9yZWNvcmRfZnJhbWUgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICpzcmMpCisK KyAgIGlmIChtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfcmVjb3JkX2ZyYW1lIChzcmMsIGRh dGEpKQorICAgICB7CistICAgICAgc3RydWN0IHNwYV9tZXRhX3ZpZGVvX2Nyb3AgKnNwYV9tZXRh X3ZpZGVvX2Nyb3A7CisrICAgICAgc3RydWN0IHNwYV9tZXRhX3JlZ2lvbiAqc3BhX21ldGFfdmlk ZW9fY3JvcDsKKworICAgICAgIHNwYV9idWZmZXItPmRhdGFzWzBdLmNodW5rLT5zaXplID0gc3Bh X2J1ZmZlci0+ZGF0YXNbMF0ubWF4c2l6ZTsKKysgICAgICBzcGFfYnVmZmVyLT5kYXRhc1swXS5j aHVuay0+c3RyaWRlID0gcHJpdi0+dmlkZW9fc3RyaWRlOworCisgICAgICAgLyogVXBkYXRlIFZp ZGVvQ3JvcCBpZiBuZWVkZWQgKi8KKyAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wID0KKy0gICAg ICAgIHNwYV9idWZmZXJfZmluZF9tZXRhIChzcGFfYnVmZmVyLCBwcml2LT5waXBld2lyZV90eXBl LT5tZXRhLlZpZGVvQ3JvcCk7CisrICAgICAgICBzcGFfYnVmZmVyX2ZpbmRfbWV0YV9kYXRhIChz cGFfYnVmZmVyLCBTUEFfTUVUQV9WaWRlb0Nyb3AsCisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBzaXplb2YgKCpzcGFfbWV0YV92aWRlb19jcm9wKSk7CisgICAgICAgaWYgKHNw YV9tZXRhX3ZpZGVvX2Nyb3ApCisgICAgICAgICB7CisgICAgICAgICAgIGlmIChtZXRhX3NjcmVl bl9jYXN0X3N0cmVhbV9zcmNfZ2V0X3ZpZGVvY3JvcCAoc3JjLCAmY3JvcF9yZWN0KSkKKyAgICAg ICAgICAgICB7CistICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT54ID0gY3JvcF9y ZWN0Lng7CistICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT55ID0gY3JvcF9yZWN0 Lnk7CistICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT53aWR0aCA9IGNyb3BfcmVj dC53aWR0aDsKKy0gICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPmhlaWdodCA9IGNy b3BfcmVjdC5oZWlnaHQ7CisrICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdp b24ucG9zaXRpb24ueCA9IGNyb3BfcmVjdC54OworKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlk ZW9fY3JvcC0+cmVnaW9uLnBvc2l0aW9uLnkgPSBjcm9wX3JlY3QueTsKKysgICAgICAgICAgICAg IHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5zaXplLndpZHRoID0gY3JvcF9yZWN0LndpZHRo OworKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnNpemUuaGVpZ2h0 ID0gY3JvcF9yZWN0LmhlaWdodDsKKyAgICAgICAgICAgICB9CisgICAgICAgICAgIGVsc2UKKyAg ICAgICAgICAgICB7CistICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT54ID0gMDsK Ky0gICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnkgPSAwOworLSAgICAgICAgICAg ICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+d2lkdGggPSBwcml2LT5zdHJlYW1fd2lkdGg7CistICAg ICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5oZWlnaHQgPSBwcml2LT5zdHJlYW1faGVp Z2h0OworKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnBvc2l0aW9u LnggPSAwOworKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnBvc2l0 aW9uLnkgPSAwOworKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnNp emUud2lkdGggPSBwcml2LT5zdHJlYW1fd2lkdGg7CisrICAgICAgICAgICAgICBzcGFfbWV0YV92 aWRlb19jcm9wLT5yZWdpb24uc2l6ZS5oZWlnaHQgPSBwcml2LT5zdHJlYW1faGVpZ2h0OworICAg ICAgICAgICAgIH0KKyAgICAgICAgIH0KKyAgICAgfQorQEAgLTU1NSw3ICs1MzksNiBAQCBvbl9z dHJlYW1fc3RhdGVfY2hhbmdlZCAodm9pZCAgICAgICAgICAgICAgICAgKmRhdGEsCisgICBNZXRh U2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjID0gZGF0YTsKKyAgIE1ldGFTY3JlZW5DYXN0U3RyZWFt U3JjUHJpdmF0ZSAqcHJpdiA9CisgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRf aW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKKy0gIHVpbnQzMl90IG5vZGVfaWQ7CisKKyAgIHN3aXRj aCAoc3RhdGUpCisgICAgIHsKK0BAIC01NjMsMTQgKzU0NiwxMiBAQCBvbl9zdHJlYW1fc3RhdGVf Y2hhbmdlZCAodm9pZCAgICAgICAgICAgICAgICAgKmRhdGEsCisgICAgICAgZ193YXJuaW5nICgi cGlwZXdpcmUgc3RyZWFtIGVycm9yOiAlcyIsIGVycm9yX21lc3NhZ2UpOworICAgICAgIG1ldGFf c2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19ub3RpZnlfY2xvc2VkIChzcmMpOworICAgICAgIGJyZWFr OworLSAgICBjYXNlIFBXX1NUUkVBTV9TVEFURV9DT05GSUdVUkU6CistICAgICAgbm9kZV9pZCA9 IHB3X3N0cmVhbV9nZXRfbm9kZV9pZCAocHJpdi0+cGlwZXdpcmVfc3RyZWFtKTsKKy0gICAgICBn X3NpZ25hbF9lbWl0IChzcmMsIHNpZ25hbHNbUkVBRFldLCAwLCAodW5zaWduZWQgaW50KSBub2Rl X2lkKTsKKy0gICAgICBicmVhazsKKy0gICAgY2FzZSBQV19TVFJFQU1fU1RBVEVfVU5DT05ORUNU RUQ6CistICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRFX0NPTk5FQ1RJTkc6CistICAgIGNhc2UgUFdf U1RSRUFNX1NUQVRFX1JFQURZOgorICAgICBjYXNlIFBXX1NUUkVBTV9TVEFURV9QQVVTRUQ6Cisr ICAgICAgaWYgKHByaXYtPm5vZGVfaWQgPT0gU1BBX0lEX0lOVkFMSUQgJiYgcHJpdi0+cGlwZXdp cmVfc3RyZWFtKQorKyAgICAgICAgeworKyAgICAgICAgICBwcml2LT5ub2RlX2lkID0gcHdfc3Ry ZWFtX2dldF9ub2RlX2lkIChwcml2LT5waXBld2lyZV9zdHJlYW0pOworKyAgICAgICAgICBnX3Np Z25hbF9lbWl0IChzcmMsIHNpZ25hbHNbUkVBRFldLCAwLCAodW5zaWduZWQgaW50KSBwcml2LT5u b2RlX2lkKTsKKysgICAgICAgIH0KKyAgICAgICBpZiAobWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1f c3JjX2lzX2VuYWJsZWQgKHNyYykpCisgICAgICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9z cmNfZGlzYWJsZSAoc3JjKTsKKyAgICAgICBicmVhazsKK0BAIC01NzgsNjggKzU1OSw2OSBAQCBv bl9zdHJlYW1fc3RhdGVfY2hhbmdlZCAodm9pZCAgICAgICAgICAgICAgICAgKmRhdGEsCisgICAg ICAgaWYgKCFtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfaXNfZW5hYmxlZCAoc3JjKSkKKyAg ICAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19lbmFibGUgKHNyYyk7CisgICAgICAg YnJlYWs7CisrICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRFX1VOQ09OTkVDVEVEOgorKyAgICBjYXNl IFBXX1NUUkVBTV9TVEFURV9DT05ORUNUSU5HOgorKyAgICAgIGJyZWFrOworICAgICB9CisgfQor Cisgc3RhdGljIHZvaWQKKy1vbl9zdHJlYW1fZm9ybWF0X2NoYW5nZWQgKHZvaWQgICAgICAgICAg ICAgICAgICpkYXRhLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHNw YV9wb2QgKmZvcm1hdCkKKytvbl9zdHJlYW1fcGFyYW1fY2hhbmdlZCAodm9pZCAgICAgICAgICAg ICAgICAgKmRhdGEsCisrICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICAgICAgICAg ICAgICBpZCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHNwYV9wb2Qg KmZvcm1hdCkKKyB7CisgICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjID0gZGF0YTsKKyAg IE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZSAqcHJpdiA9CisgICAgIG1ldGFfc2NyZWVu X2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKKy0gIHN0cnVjdCBw d190eXBlICpwaXBld2lyZV90eXBlID0gcHJpdi0+cGlwZXdpcmVfdHlwZTsKKyAgIHVpbnQ4X3Qg cGFyYW1zX2J1ZmZlclsxMDI0XTsKKyAgIGludDMyX3Qgd2lkdGgsIGhlaWdodCwgc3RyaWRlLCBz aXplOworICAgc3RydWN0IHNwYV9wb2RfYnVpbGRlciBwb2RfYnVpbGRlcjsKKyAgIGNvbnN0IHN0 cnVjdCBzcGFfcG9kICpwYXJhbXNbM107CisgICBjb25zdCBpbnQgYnBwID0gNDsKKworLSAgaWYg KCFmb3JtYXQpCistICAgIHsKKy0gICAgICBwd19zdHJlYW1fZmluaXNoX2Zvcm1hdCAocHJpdi0+ cGlwZXdpcmVfc3RyZWFtLCAwLCBOVUxMLCAwKTsKKy0gICAgICByZXR1cm47CistICAgIH0KKysg IGlmICghZm9ybWF0IHx8IGlkICE9IFNQQV9QQVJBTV9Gb3JtYXQpCisrICAgIHJldHVybjsKKwor ICAgc3BhX2Zvcm1hdF92aWRlb19yYXdfcGFyc2UgKGZvcm1hdCwKKy0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAmcHJpdi0+dmlkZW9fZm9ybWF0LAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICZwcml2LT5zcGFfdHlwZS5mb3JtYXRfdmlkZW8pOworKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICZwcml2LT52aWRlb19mb3JtYXQpOworCisgICB3aWR0aCA9IHByaXYt PnZpZGVvX2Zvcm1hdC5zaXplLndpZHRoOworICAgaGVpZ2h0ID0gcHJpdi0+dmlkZW9fZm9ybWF0 LnNpemUuaGVpZ2h0OworICAgc3RyaWRlID0gU1BBX1JPVU5EX1VQX04gKHdpZHRoICogYnBwLCA0 KTsKKyAgIHNpemUgPSBoZWlnaHQgKiBzdHJpZGU7CisKKysgIHByaXYtPnZpZGVvX3N0cmlkZSA9 IHN0cmlkZTsKKysKKyAgIHBvZF9idWlsZGVyID0gU1BBX1BPRF9CVUlMREVSX0lOSVQgKHBhcmFt c19idWZmZXIsIHNpemVvZiAocGFyYW1zX2J1ZmZlcikpOworCistICBwYXJhbXNbMF0gPSBzcGFf cG9kX2J1aWxkZXJfb2JqZWN0ICgKKysgIHBhcmFtc1swXSA9IHNwYV9wb2RfYnVpbGRlcl9hZGRf b2JqZWN0ICgKKyAgICAgJnBvZF9idWlsZGVyLAorLSAgICBwaXBld2lyZV90eXBlLT5wYXJhbS5p ZEJ1ZmZlcnMsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX2J1ZmZlcnMuQnVmZmVycywKKy0gICAgIjoi LCBwaXBld2lyZV90eXBlLT5wYXJhbV9idWZmZXJzLnNpemUsICJpIiwgc2l6ZSwKKy0gICAgIjoi LCBwaXBld2lyZV90eXBlLT5wYXJhbV9idWZmZXJzLnN0cmlkZSwgImkiLCBzdHJpZGUsCistICAg ICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fYnVmZmVycy5idWZmZXJzLCAiaXJ1IiwgMTYsIFBS T1BfUkFOR0UgKDIsIDE2KSwKKy0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9idWZmZXJz LmFsaWduLCAiaSIsIDE2KTsKKy0KKy0gIHBhcmFtc1sxXSA9IHNwYV9wb2RfYnVpbGRlcl9vYmpl Y3QgKAorKyAgICBTUEFfVFlQRV9PQkpFQ1RfUGFyYW1CdWZmZXJzLCBTUEFfUEFSQU1fQnVmZmVy cywKKysgICAgU1BBX1BBUkFNX0JVRkZFUlNfYnVmZmVycywgU1BBX1BPRF9DSE9JQ0VfUkFOR0Vf SW50ICgxNiwgMiwgMTYpLAorKyAgICBTUEFfUEFSQU1fQlVGRkVSU19ibG9ja3MsIFNQQV9QT0Rf SW50ICgxKSwKKysgICAgU1BBX1BBUkFNX0JVRkZFUlNfc2l6ZSwgU1BBX1BPRF9JbnQgKHNpemUp LAorKyAgICBTUEFfUEFSQU1fQlVGRkVSU19zdHJpZGUsIFNQQV9QT0RfSW50IChzdHJpZGUpLAor KyAgICBTUEFfUEFSQU1fQlVGRkVSU19hbGlnbiwgU1BBX1BPRF9JbnQgKDE2KSk7CisrCisrICBw YXJhbXNbMV0gPSBzcGFfcG9kX2J1aWxkZXJfYWRkX29iamVjdCAoCisgICAgICZwb2RfYnVpbGRl ciwKKy0gICAgcGlwZXdpcmVfdHlwZS0+cGFyYW0uaWRNZXRhLCBwaXBld2lyZV90eXBlLT5wYXJh bV9tZXRhLk1ldGEsCistICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fbWV0YS50eXBlLCAi SSIsIHBpcGV3aXJlX3R5cGUtPm1ldGEuVmlkZW9Dcm9wLAorLSAgICAiOiIsIHBpcGV3aXJlX3R5 cGUtPnBhcmFtX21ldGEuc2l6ZSwgImkiLCBzaXplb2YgKHN0cnVjdCBzcGFfbWV0YV92aWRlb19j cm9wKSk7CisrICAgIFNQQV9UWVBFX09CSkVDVF9QYXJhbU1ldGEsIFNQQV9QQVJBTV9NZXRhLAor KyAgICBTUEFfUEFSQU1fTUVUQV90eXBlLCBTUEFfUE9EX0lkIChTUEFfTUVUQV9WaWRlb0Nyb3Ap LAorKyAgICBTUEFfUEFSQU1fTUVUQV9zaXplLCBTUEFfUE9EX0ludCAoc2l6ZW9mIChzdHJ1Y3Qg c3BhX21ldGFfcmVnaW9uKSkpOworCistICBwYXJhbXNbMl0gPSBzcGFfcG9kX2J1aWxkZXJfb2Jq ZWN0ICgKKysgIHBhcmFtc1syXSA9IHNwYV9wb2RfYnVpbGRlcl9hZGRfb2JqZWN0ICgKKyAgICAg JnBvZF9idWlsZGVyLAorLSAgICBwaXBld2lyZV90eXBlLT5wYXJhbS5pZE1ldGEsIHBpcGV3aXJl X3R5cGUtPnBhcmFtX21ldGEuTWV0YSwKKy0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9t ZXRhLnR5cGUsICJJIiwgcHJpdi0+c3BhX3R5cGUubWV0YV9jdXJzb3IsCistICAgICI6IiwgcGlw ZXdpcmVfdHlwZS0+cGFyYW1fbWV0YS5zaXplLCAiaSIsIENVUlNPUl9NRVRBX1NJWkUgKDY0LCA2 NCkpOworKyAgICBTUEFfVFlQRV9PQkpFQ1RfUGFyYW1NZXRhLCBTUEFfUEFSQU1fTWV0YSwKKysg ICAgU1BBX1BBUkFNX01FVEFfdHlwZSwgU1BBX1BPRF9JZCAoU1BBX01FVEFfQ3Vyc29yKSwKKysg ICAgU1BBX1BBUkFNX01FVEFfc2l6ZSwgU1BBX1BPRF9JbnQgKENVUlNPUl9NRVRBX1NJWkUgKDY0 LCA2NCkpKTsKKworLSAgcHdfc3RyZWFtX2ZpbmlzaF9mb3JtYXQgKHByaXYtPnBpcGV3aXJlX3N0 cmVhbSwgMCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXMsIEdfTl9FTEVNRU5U UyAocGFyYW1zKSk7CisrICBwd19zdHJlYW1fdXBkYXRlX3BhcmFtcyAocHJpdi0+cGlwZXdpcmVf c3RyZWFtLCBwYXJhbXMsIEdfTl9FTEVNRU5UUyAocGFyYW1zKSk7CisgfQorCisgc3RhdGljIGNv bnN0IHN0cnVjdCBwd19zdHJlYW1fZXZlbnRzIHN0cmVhbV9ldmVudHMgPSB7CisgICBQV19WRVJT SU9OX1NUUkVBTV9FVkVOVFMsCisgICAuc3RhdGVfY2hhbmdlZCA9IG9uX3N0cmVhbV9zdGF0ZV9j aGFuZ2VkLAorLSAgLmZvcm1hdF9jaGFuZ2VkID0gb25fc3RyZWFtX2Zvcm1hdF9jaGFuZ2VkLAor KyAgLnBhcmFtX2NoYW5nZWQgPSBvbl9zdHJlYW1fcGFyYW1fY2hhbmdlZCwKKyB9OworCisgc3Rh dGljIHN0cnVjdCBwd19zdHJlYW0gKgorQEAgLTY1Miw4ICs2MzQsNiBAQCBjcmVhdGVfcGlwZXdp cmVfc3RyZWFtIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAgKnNyYywKKyAgIHVpbnQ4X3QgYnVm ZmVyWzEwMjRdOworICAgc3RydWN0IHNwYV9wb2RfYnVpbGRlciBwb2RfYnVpbGRlciA9CisgICAg IFNQQV9QT0RfQlVJTERFUl9JTklUIChidWZmZXIsIHNpemVvZiAoYnVmZmVyKSk7CistICBNZXRh U3BhVHlwZSAqc3BhX3R5cGUgPSAmcHJpdi0+c3BhX3R5cGU7CistICBzdHJ1Y3QgcHdfdHlwZSAq cGlwZXdpcmVfdHlwZSA9IHByaXYtPnBpcGV3aXJlX3R5cGU7CisgICBmbG9hdCBmcmFtZV9yYXRl OworICAgTWV0YUZyYWN0aW9uIGZyYW1lX3JhdGVfZnJhY3Rpb247CisgICBzdHJ1Y3Qgc3BhX2Zy YWN0aW9uIG1heF9mcmFtZXJhdGU7CitAQCAtNjYxLDcgKzY0MSw5IEBAIGNyZWF0ZV9waXBld2ly ZV9zdHJlYW0gKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICAqc3JjLAorICAgY29uc3Qgc3RydWN0 IHNwYV9wb2QgKnBhcmFtc1sxXTsKKyAgIGludCByZXN1bHQ7CisKKy0gIHBpcGV3aXJlX3N0cmVh bSA9IHB3X3N0cmVhbV9uZXcgKHByaXYtPnBpcGV3aXJlX3JlbW90ZSwKKysgIHByaXYtPm5vZGVf aWQgPSBTUEFfSURfSU5WQUxJRDsKKysKKysgIHBpcGV3aXJlX3N0cmVhbSA9IHB3X3N0cmVhbV9u ZXcgKHByaXYtPnBpcGV3aXJlX2NvcmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAibWV0YS1zY3JlZW4tY2FzdC1zcmMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCk7CisgICBpZiAoIXBpcGV3aXJlX3N0cmVhbSkKK0BAIC02ODIsMTcgKzY2 NCwxNyBAQCBjcmVhdGVfcGlwZXdpcmVfc3RyZWFtIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAg KnNyYywKKyAgIG1heF9mcmFtZXJhdGUgPSBTUEFfRlJBQ1RJT04gKGZyYW1lX3JhdGVfZnJhY3Rp b24ubnVtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVfcmF0ZV9mcmFj dGlvbi5kZW5vbSk7CisKKy0gIHBhcmFtc1swXSA9IHNwYV9wb2RfYnVpbGRlcl9vYmplY3QgKAor KyAgcGFyYW1zWzBdID0gc3BhX3BvZF9idWlsZGVyX2FkZF9vYmplY3QgKAorICAgICAmcG9kX2J1 aWxkZXIsCistICAgIHBpcGV3aXJlX3R5cGUtPnBhcmFtLmlkRW51bUZvcm1hdCwgcGlwZXdpcmVf dHlwZS0+c3BhX2Zvcm1hdCwKKy0gICAgIkkiLCBzcGFfdHlwZS0+bWVkaWFfdHlwZS52aWRlbywK Ky0gICAgIkkiLCBzcGFfdHlwZS0+bWVkaWFfc3VidHlwZS5yYXcsCistICAgICI6Iiwgc3BhX3R5 cGUtPmZvcm1hdF92aWRlby5mb3JtYXQsICJJIiwgc3BhX3R5cGUtPnZpZGVvX2Zvcm1hdC5CR1J4 LAorLSAgICAiOiIsIHNwYV90eXBlLT5mb3JtYXRfdmlkZW8uc2l6ZSwgIlIiLCAmU1BBX1JFQ1RB TkdMRSAocHJpdi0+c3RyZWFtX3dpZHRoLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpdi0+c3RyZWFtX2hlaWdodCksCistICAg ICI6Iiwgc3BhX3R5cGUtPmZvcm1hdF92aWRlby5mcmFtZXJhdGUsICJGIiwgJlNQQV9GUkFDVElP TiAoMCwgMSksCistICAgICI6Iiwgc3BhX3R5cGUtPmZvcm1hdF92aWRlby5tYXhfZnJhbWVyYXRl LCAiRnJ1IiwgJm1heF9mcmFtZXJhdGUsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgUFJPUF9SQU5HRSAoJm1pbl9mcmFtZXJhdGUsCisrICAg IFNQQV9UWVBFX09CSkVDVF9Gb3JtYXQsIFNQQV9QQVJBTV9FbnVtRm9ybWF0LAorKyAgICBTUEFf Rk9STUFUX21lZGlhVHlwZSwgU1BBX1BPRF9JZCAoU1BBX01FRElBX1RZUEVfdmlkZW8pLAorKyAg ICBTUEFfRk9STUFUX21lZGlhU3VidHlwZSwgU1BBX1BPRF9JZCAoU1BBX01FRElBX1NVQlRZUEVf cmF3KSwKKysgICAgU1BBX0ZPUk1BVF9WSURFT19mb3JtYXQsIFNQQV9QT0RfSWQgKFNQQV9WSURF T19GT1JNQVRfQkdSeCksCisrICAgIFNQQV9GT1JNQVRfVklERU9fc2l6ZSwgU1BBX1BPRF9SZWN0 YW5nbGUgKCZTUEFfUkVDVEFOR0xFIChwcml2LT5zdHJlYW1fd2lkdGgsCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcml2LT5z dHJlYW1faGVpZ2h0KSksCisrICAgIFNQQV9GT1JNQVRfVklERU9fZnJhbWVyYXRlLCBTUEFfUE9E X0ZyYWN0aW9uICgmU1BBX0ZSQUNUSU9OICgwLCAxKSksCisrICAgIFNQQV9GT1JNQVRfVklERU9f bWF4RnJhbWVyYXRlLCBTUEFfUE9EX0NIT0lDRV9SQU5HRV9GcmFjdGlvbiAoJm1heF9mcmFtZXJh dGUsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJm1pbl9mcmFtZXJhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1heF9mcmFtZXJhdGUp KTsKKworICAgcHdfc3RyZWFtX2FkZF9saXN0ZW5lciAocGlwZXdpcmVfc3RyZWFtLAorQEAgLTcw Miw3ICs2ODQsNyBAQCBjcmVhdGVfcGlwZXdpcmVfc3RyZWFtIChNZXRhU2NyZWVuQ2FzdFN0cmVh bVNyYyAgKnNyYywKKworICAgcmVzdWx0ID0gcHdfc3RyZWFtX2Nvbm5lY3QgKHBpcGV3aXJlX3N0 cmVhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQV19ESVJFQ1RJT05fT1VUUFVU LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsCisrICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgU1BBX0lEX0lOVkFMSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKFBXX1NUUkVBTV9GTEFHX0RSSVZFUiB8CisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFBXX1NUUkVBTV9GTEFHX01BUF9CVUZGRVJTKSwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBwYXJhbXMsIEdfTl9FTEVNRU5UUyAocGFyYW1zKSk7CitAQCAtNzE3LDQwICs2 OTksMTggQEAgY3JlYXRlX3BpcGV3aXJlX3N0cmVhbSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMg ICpzcmMsCisgfQorCisgc3RhdGljIHZvaWQKKy1vbl9zdGF0ZV9jaGFuZ2VkICh2b2lkICAgICAg ICAgICAgICAgICAqZGF0YSwKKy0gICAgICAgICAgICAgICAgICBlbnVtIHB3X3JlbW90ZV9zdGF0 ZSAgb2xkLAorLSAgICAgICAgICAgICAgICAgIGVudW0gcHdfcmVtb3RlX3N0YXRlICBzdGF0ZSwK Ky0gICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICAgICAgICAgICAqZXJyb3JfbWVzc2FnZSkK Kytvbl9jb3JlX2Vycm9yICh2b2lkICAgICAgICpkYXRhLAorKyAgICAgICAgICAgICAgIHVpbnQz Ml90ICAgIGlkLAorKwkgICAgICAgaW50ICAgICAgICAgc2VxLAorKwkgICAgICAgaW50ICAgICAg ICAgcmVzLAorKwkgICAgICAgY29uc3QgY2hhciAqbWVzc2FnZSkKKyB7CisgICBNZXRhU2NyZWVu Q2FzdFN0cmVhbVNyYyAqc3JjID0gZGF0YTsKKy0gIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJp dmF0ZSAqcHJpdiA9CistICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFu Y2VfcHJpdmF0ZSAoc3JjKTsKKy0gIHN0cnVjdCBwd19zdHJlYW0gKnBpcGV3aXJlX3N0cmVhbTsK Ky0gIEdFcnJvciAqZXJyb3IgPSBOVUxMOworCistICBzd2l0Y2ggKHN0YXRlKQorLSAgICB7Cist ICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0VSUk9SOgorLSAgICAgIGdfd2FybmluZyAoInBpcGV3 aXJlIHJlbW90ZSBlcnJvcjogJXNcbiIsIGVycm9yX21lc3NhZ2UpOworLSAgICAgIG1ldGFfc2Ny ZWVuX2Nhc3Rfc3RyZWFtX3NyY19ub3RpZnlfY2xvc2VkIChzcmMpOworLSAgICAgIGJyZWFrOwor LSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9DT05ORUNURUQ6CistICAgICAgcGlwZXdpcmVfc3Ry ZWFtID0gY3JlYXRlX3BpcGV3aXJlX3N0cmVhbSAoc3JjLCAmZXJyb3IpOworLSAgICAgIGlmICgh cGlwZXdpcmVfc3RyZWFtKQorLSAgICAgICAgeworLSAgICAgICAgICBnX3dhcm5pbmcgKCJDb3Vs ZCBub3QgY3JlYXRlIHBpcGV3aXJlIHN0cmVhbTogJXMiLCBlcnJvci0+bWVzc2FnZSk7CistICAg ICAgICAgIGdfZXJyb3JfZnJlZSAoZXJyb3IpOworLSAgICAgICAgICBtZXRhX3NjcmVlbl9jYXN0 X3N0cmVhbV9zcmNfbm90aWZ5X2Nsb3NlZCAoc3JjKTsKKy0gICAgICAgIH0KKy0gICAgICBlbHNl CistICAgICAgICB7CistICAgICAgICAgIHByaXYtPnBpcGV3aXJlX3N0cmVhbSA9IHBpcGV3aXJl X3N0cmVhbTsKKy0gICAgICAgIH0KKy0gICAgICBicmVhazsKKy0gICAgY2FzZSBQV19SRU1PVEVf U1RBVEVfVU5DT05ORUNURUQ6CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0NPTk5FQ1RJTkc6 CistICAgICAgYnJlYWs7CistICAgIH0KKysgIGdfd2FybmluZyAoInBpcGV3aXJlIHJlbW90ZSBl cnJvcjogaWQ6JXUgJXMiLCBpZCwgbWVzc2FnZSk7CisrCisrICBpZiAoaWQgPT0gUFdfSURfQ09S RSAmJiByZXMgPT0gLUVQSVBFKQorKyAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfbm90 aWZ5X2Nsb3NlZCAoc3JjKTsKKyB9CisKKyBzdGF0aWMgZ2Jvb2xlYW4KK0BAIC03OTMsMTcgKzc1 Myw2IEBAIHN0YXRpYyBHU291cmNlRnVuY3MgcGlwZXdpcmVfc291cmNlX2Z1bmNzID0KKyAgIHBp cGV3aXJlX2xvb3Bfc291cmNlX2ZpbmFsaXplCisgfTsKKworLXN0YXRpYyB2b2lkCistaW5pdF9z cGFfdHlwZSAoTWV0YVNwYVR5cGUgICAgICAgICAqdHlwZSwKKy0gICAgICAgICAgICAgICBzdHJ1 Y3Qgc3BhX3R5cGVfbWFwICptYXApCisteworLSAgc3BhX3R5cGVfbWVkaWFfdHlwZV9tYXAgKG1h cCwgJnR5cGUtPm1lZGlhX3R5cGUpOworLSAgc3BhX3R5cGVfbWVkaWFfc3VidHlwZV9tYXAgKG1h cCwgJnR5cGUtPm1lZGlhX3N1YnR5cGUpOworLSAgc3BhX3R5cGVfZm9ybWF0X3ZpZGVvX21hcCAo bWFwLCAmdHlwZS0+Zm9ybWF0X3ZpZGVvKTsKKy0gIHNwYV90eXBlX3ZpZGVvX2Zvcm1hdF9tYXAg KG1hcCwgJnR5cGUtPnZpZGVvX2Zvcm1hdCk7CistICB0eXBlLT5tZXRhX2N1cnNvciA9IHNwYV90 eXBlX21hcF9nZXRfaWQobWFwLCBTUEFfVFlQRV9NRVRBX19DdXJzb3IpOworLX0KKy0KKyBzdGF0 aWMgTWV0YVBpcGVXaXJlU291cmNlICoKKyBjcmVhdGVfcGlwZXdpcmVfc291cmNlICh2b2lkKQor IHsKK0BAIC04MjksOSArNzc4LDkgQEAgY3JlYXRlX3BpcGV3aXJlX3NvdXJjZSAodm9pZCkKKyAg IHJldHVybiBwaXBld2lyZV9zb3VyY2U7CisgfQorCistc3RhdGljIGNvbnN0IHN0cnVjdCBwd19y ZW1vdGVfZXZlbnRzIHJlbW90ZV9ldmVudHMgPSB7CistICBQV19WRVJTSU9OX1JFTU9URV9FVkVO VFMsCistICAuc3RhdGVfY2hhbmdlZCA9IG9uX3N0YXRlX2NoYW5nZWQsCisrc3RhdGljIGNvbnN0 IHN0cnVjdCBwd19jb3JlX2V2ZW50cyBjb3JlX2V2ZW50cyA9IHsKKysgIFBXX1ZFUlNJT05fQ09S RV9FVkVOVFMsCisrICAuZXJyb3IgPSBvbl9jb3JlX2Vycm9yLAorIH07CisKKyBzdGF0aWMgZ2Jv b2xlYW4KK0BAIC04NTEsMzcgKzgwMCwzMSBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNf aW5pdGFibGVfaW5pdCAoR0luaXRhYmxlICAgICAqaW5pdGFibGUsCisgICAgICAgcmV0dXJuIEZB TFNFOworICAgICB9CisKKy0gIHByaXYtPnBpcGV3aXJlX2NvcmUgPSBwd19jb3JlX25ldyAocHJp di0+cGlwZXdpcmVfc291cmNlLT5waXBld2lyZV9sb29wLAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMKTsKKy0gIGlmICghcHJpdi0+cGlwZXdpcmVfY29yZSkKKysg IHByaXYtPnBpcGV3aXJlX2NvbnRleHQgPSBwd19jb250ZXh0X25ldyAocHJpdi0+cGlwZXdpcmVf c291cmNlLT5waXBld2lyZV9sb29wLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBOVUxMLCAwKTsKKysgIGlmICghcHJpdi0+cGlwZXdpcmVfY29udGV4dCkKKyAg ICAgeworICAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9G QUlMRUQsCistICAgICAgICAgICAgICAgICAgICJGYWlsZWQgdG8gY3JlYXRlIHBpcGV3aXJlIGNv cmUiKTsKKysgICAgICAgICAgICAgICAgICAgIkZhaWxlZCB0byBjcmVhdGUgcGlwZXdpcmUgY29u dGV4dCIpOworICAgICAgIHJldHVybiBGQUxTRTsKKyAgICAgfQorCistICBwcml2LT5waXBld2ly ZV9yZW1vdGUgPSBwd19yZW1vdGVfbmV3IChwcml2LT5waXBld2lyZV9jb3JlLCBOVUxMLCAwKTsK Ky0gIGlmICghcHJpdi0+cGlwZXdpcmVfcmVtb3RlKQorKyAgcHJpdi0+cGlwZXdpcmVfY29yZSA9 IHB3X2NvbnRleHRfY29ubmVjdCAocHJpdi0+cGlwZXdpcmVfY29udGV4dCwgTlVMTCwgMCk7Cisr ICBpZiAoIXByaXYtPnBpcGV3aXJlX2NvcmUpCisgICAgIHsKKyAgICAgICBnX3NldF9lcnJvciAo ZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVELAorLSAgICAgICAgICAgICAgICAg ICAiQ291bGRuJ3QgY3JlYXQgcGlwZXdpcmUgcmVtb3RlIik7CisrICAgICAgICAgICAgICAgICAg ICJDb3VsZG4ndCBjb25uZWN0IHBpcGV3aXJlIGNvbnRleHQiKTsKKyAgICAgICByZXR1cm4gRkFM U0U7CisgICAgIH0KKworLSAgcHdfcmVtb3RlX2FkZF9saXN0ZW5lciAocHJpdi0+cGlwZXdpcmVf cmVtb3RlLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgJnByaXYtPnBpcGV3aXJlX3JlbW90 ZV9saXN0ZW5lciwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICZyZW1vdGVfZXZlbnRzLAor LSAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjKTsKKysgIHB3X2NvcmVfYWRkX2xpc3RlbmVy IChwcml2LT5waXBld2lyZV9jb3JlLAorKyAgICAgICAgICAgICAgICAgICAgICAgICZwcml2LT5w aXBld2lyZV9jb3JlX2xpc3RlbmVyLAorKyAgICAgICAgICAgICAgICAgICAgICAgICZjb3JlX2V2 ZW50cywKKysgICAgICAgICAgICAgICAgICAgICAgICBzcmMpOworCistICBwcml2LT5waXBld2ly ZV90eXBlID0gcHdfY29yZV9nZXRfdHlwZSAocHJpdi0+cGlwZXdpcmVfY29yZSk7CistICBpbml0 X3NwYV90eXBlICgmcHJpdi0+c3BhX3R5cGUsIHByaXYtPnBpcGV3aXJlX3R5cGUtPm1hcCk7Cist CistICBpZiAocHdfcmVtb3RlX2Nvbm5lY3QgKHByaXYtPnBpcGV3aXJlX3JlbW90ZSkgIT0gMCkK Ky0gICAgeworLSAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwgR19JT19FUlJPUiwgR19JT19FUlJP Ul9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBjb25uZWN0IHBpcGV3aXJl IHJlbW90ZSIpOworLSAgICAgIHJldHVybiBGQUxTRTsKKy0gICAgfQorKyAgcHJpdi0+cGlwZXdp cmVfc3RyZWFtID0gY3JlYXRlX3BpcGV3aXJlX3N0cmVhbSAoc3JjLCBlcnJvcik7CisrICBpZiAo IXByaXYtPnBpcGV3aXJlX3N0cmVhbSkKKysgICAgcmV0dXJuIEZBTFNFOworCisgICByZXR1cm4g VFJVRTsKKyB9CitAQCAtOTEyLDggKzg1NSw4IEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3Ny Y19maW5hbGl6ZSAoR09iamVjdCAqb2JqZWN0KQorICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVh bV9zcmNfZGlzYWJsZSAoc3JjKTsKKworICAgZ19jbGVhcl9wb2ludGVyICgmcHJpdi0+cGlwZXdp cmVfc3RyZWFtLCBwd19zdHJlYW1fZGVzdHJveSk7CistICBnX2NsZWFyX3BvaW50ZXIgKCZwcml2 LT5waXBld2lyZV9yZW1vdGUsIHB3X3JlbW90ZV9kZXN0cm95KTsKKy0gIGdfY2xlYXJfcG9pbnRl ciAoJnByaXYtPnBpcGV3aXJlX2NvcmUsIHB3X2NvcmVfZGVzdHJveSk7CisrICBnX2NsZWFyX3Bv aW50ZXIgKCZwcml2LT5waXBld2lyZV9jb3JlLCBwd19jb3JlX2Rpc2Nvbm5lY3QpOworKyAgZ19j bGVhcl9wb2ludGVyICgmcHJpdi0+cGlwZXdpcmVfY29udGV4dCwgcHdfY29udGV4dF9kZXN0cm95 KTsKKyAgIGdfc291cmNlX2Rlc3Ryb3kgKCZwcml2LT5waXBld2lyZV9zb3VyY2UtPmJhc2UpOwor CisgICBHX09CSkVDVF9DTEFTUyAobWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX3BhcmVudF9j bGFzcyktPmZpbmFsaXplIChvYmplY3QpOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXR0ZXIvdGVt cGxhdGUgYi9zcmNwa2dzL211dHRlci90ZW1wbGF0ZQppbmRleCA0ZTBiZDMyYjY3ZC4uODA2YTNi ZWY5ZjAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv bXV0dGVyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbXV0 dGVyJwogcGtnbmFtZT1tdXR0ZXIKIHZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0yCityZXZpc2lv bj0zCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCiBjb25maWd1cmVfYXJn cz0iLURlZ2xfZGV2aWNlPXRydWUgLUR1ZGV2PXRydWUgLURuYXRpdmVfYmFja2VuZD10cnVlCg== --===============4065726756273457930==--