From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) 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.4 Received: (qmail 27555 invoked from network); 30 May 2020 03:59:15 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 30 May 2020 03:59:15 -0000 Content-Type: multipart/mixed; boundary="===============0168795556619925204==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_pipewire=3A_update_to_0=2E3=2E5?= To: ml@inbox.vuxu.org From: sirn Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sat, 30 May 2020 05:59:15 +0200 List-Id: Message-ID: <20200530035915.WziB9q9aP4fyAvodW_Loi7Ek66skZY1tadV-4kw06ho@z> GitHub notification mails are now in MIME to allow UTF8. --===============0168795556619925204== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgc2lybiBhZ2FpbnN0IG1hc3RlciBv biB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vc2lybi92 b2lkLXBhY2thZ2VzIHBpcGV3aXJlLXVwZGF0ZQpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvMjA0MTMKCnBpcGV3aXJlOiB1cGRhdGUgdG8gMC4zLjUKVGhp cyBQUiB1cGRhdGVzIGBwaXBld2lyZWAgdG8gMC4zLjUgYW5kIGFsc28gdXBkYXRpbmcvcGF0Y2hp bmcgYWxsIHBhY2thZ2VzIHRoYXQgZGVwZW5kcyBvbiBpdC4gDQoNCiogYHhkZy1kZXNrdG9wLXBv cnRhbGAgaW5jbHVkZXMgYSBwYXRjaCBiYWNrcG9ydGVkIGZyb20gMS43LjAgdG8gYWxsb3cgMS42 LjAgdG8gYnVpbGQgYWdhaW5zdCBwaXBld2lyZS0wLjMgKDEuNy54IGlzIHByZXJlbGVhc2UpDQoq IGB4ZGctZGVza3RvcC1wb3J0YWwta2RlYCBhbHJlYWR5IGluY2x1ZGVzIFBpcGV3aXJlIDAuMyBz dXBwb3J0IGFuZCBvbmx5IHJlcXVpcmVzIHJldmJ1bXAuDQoqIGBtdXR0ZXJgIGluY2x1ZGVzIGEg cGF0Y2ggYmFja3BvcnRlZCBmcm9tIDMuMzUgdG8gYWxsb3cgMy4zNCB0byBidWlsZCBhZ2FpbnN0 IHBpcGV3aXJlLTAuMyAodXBncmFkaW5nIHRvID49My4zNSBhbHNvIHJlcXVpcmVzIHVwZ3JhZGlu ZyBHTk9NRSkuCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvMjA0MTMucGF0Y2ggaXMgYXR0YWNoZWQ= --===============0168795556619925204== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-pipewire-update-20413.patch" RnJvbSBhMWRkNTBhYzQyZjNmZTVkMzZlNWZiMDdlMjVkZjdmYWUxZGE2ZjQzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLcmlkc2FkYSBUaGFuYWJ1bHBvbmcgPHNpcm5Ab2dzaXRlLm5l dD4KRGF0ZTogVHVlLCAyOCBBcHIgMjAyMCAxNzoxNzoyOCArMDkwMApTdWJqZWN0OiBbUEFUQ0gg MS83XSBuZHBwZDogYnVtcCB0byBsYXRlc3QgMC4yIHNlcmllcwoKLS0tCiAuLi4vMDAwMi1GaXhl cy1zdHJlcnJvcl9yLUdOVS1YU0kucGF0Y2ggICAgICAgfCAzMiArKysrKysrKy0tLS0tLS0tLS0t CiBzcmNwa2dzL25kcHBkL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICAgfCAgOCArKyst LQogMiBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL25kcHBkL3BhdGNoZXMvMDAwMi1GaXhlcy1zdHJlcnJvcl9yLUdO VS1YU0kucGF0Y2ggYi9zcmNwa2dzL25kcHBkL3BhdGNoZXMvMDAwMi1GaXhlcy1zdHJlcnJvcl9y LUdOVS1YU0kucGF0Y2gKaW5kZXggOGJhOWM2M2I0ZTEuLjAzODgzOTFkNTBmIDEwMDY0NAotLS0g YS9zcmNwa2dzL25kcHBkL3BhdGNoZXMvMDAwMi1GaXhlcy1zdHJlcnJvcl9yLUdOVS1YU0kucGF0 Y2gKKysrIGIvc3JjcGtncy9uZHBwZC9wYXRjaGVzLzAwMDItRml4ZXMtc3RyZXJyb3Jfci1HTlUt WFNJLnBhdGNoCkBAIC0xLDMwICsxLDI1IEBACi1Gcm9tIDFmNjEwMTI5YjQ3NWI0MTc1MDliMjUx ZTAyMmFkNDZkMjIxMGZmNTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBSYWZhZWwg Q29zc292YW4gPG5hdm9zc29jQGdtYWlsLmNvbT4KLURhdGU6IFR1ZSwgMyBBcHIgMjAxOCAxNzow NDozNSAtMDMwMAotU3ViamVjdDogW1BBVENIIDIvM10gRml4ZXMgc3RyZXJyb3JfciBHTlUvWFNJ IGlzc3VlICM0MC4KLSBodHRwOi8vd3d3Lnp2ZXJvdmljaC5uZXQvMjAxNS8wMy8xMy9yZWxpYWJs ZS1kZXRlY3Rpb24tb2Ytc3RyZXJyb3ItdmFyaWFudHMuaHRtbAotCi0tLS0KLSBzcmMvbG9nZ2Vy LmNjIHwgMTQgKysrKysrKysrKysrLQotIHNyYy9sb2dnZXIuaCAgfCAgMyArKysKLSAyIGZpbGVz IGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCi0KIGRpZmYgLS1naXQg YS9zcmMvbG9nZ2VyLmNjIGIvc3JjL2xvZ2dlci5jYwotaW5kZXggNmRkYmVhOS4uNmNjYjJhMCAx MDA2NDQKK2luZGV4IDZkZGJlYTkuLjlhMDRiOGEgMTAwNjQ0CiAtLS0gYS9zcmMvbG9nZ2VyLmNj CiArKysgYi9zcmMvbG9nZ2VyLmNjCi1AQCAtODQsNiArODQsNiBAQCBzdGQ6OnN0cmluZyBsb2dn ZXI6OmVycigpCi0geworQEAgLTg1LDExICs4NSwxMSBAQCBzdGQ6OnN0cmluZyBsb2dnZXI6OmVy cigpCiAgICAgIGNoYXIgYnVmWzIwNDhdOworIAorICNpZiAoX1BPU0lYX0NfU09VUkNFID49IDIw MDExMkwgfHwgX1hPUEVOX1NPVVJDRSA+PSA2MDApICYmICEgX0dOVV9TT1VSQ0UKKy0gICAgaWYg KHN0cmVycm9yX3IoZXJybm8sIGJ1Ziwgc2l6ZW9mKGJ1ZikpCisrICAgIGlmIChzdHJlcnJvcl9y X3dyYXBwZXIoc3RyZXJyb3JfcihlcnJubywgYnVmLCBzaXplb2YoYnVmKSkpLCBidWYpCisgICAg ICAgICByZXR1cm4gIlVua25vd24gZXJyb3IiOworICAgICByZXR1cm4gYnVmOworICNlbHNlCiAt ICAgIHJldHVybiBzdHJlcnJvcl9yKGVycm5vLCBidWYsIHNpemVvZihidWYpKTsKICsgICAgcmV0 dXJuIHN0cmVycm9yX3Jfd3JhcHBlcihzdHJlcnJvcl9yKGVycm5vLCBidWYsIHNpemVvZihidWYp KSwgYnVmKTsKKyAjZW5kaWYKICB9CiAgCi0gbG9nZ2VyIGxvZ2dlcjo6ZXJyb3IoKQotQEAgLTIy MSw0ICsyMjEsMTYgQEAgCitAQCAtMjI4LDQgKzIyOCwxNiBAQCBib29sIGxvZ2dlcjo6dmVyYm9z aXR5KGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1lKQogICAgICByZXR1cm4gZmFsc2U7CiAgfQotCisg CiArLy8gWFNJLWNvbXBsaWFudDogaW50CiArc3RkOjpzdHJpbmcgbG9nZ2VyOjpzdHJlcnJvcl9y X3dyYXBwZXIoaW50LCBjaGFyKiBzKQogK3sKQEAgLTQyLDcgKzM3LDcgQEAgZGlmZiAtLWdpdCBh L3NyYy9sb2dnZXIuaCBiL3NyYy9sb2dnZXIuaAogaW5kZXggN2QzZDdkYi4uMDQ0NjU5NSAxMDA2 NDQKIC0tLSBhL3NyYy9sb2dnZXIuaAogKysrIGIvc3JjL2xvZ2dlci5oCi1AQCAtOTEsNiArOTEs OSBAQCBjbGFzcyBsb2dnZXIgeworQEAgLTkxLDYgKzkxLDkgQEAgcHJpdmF0ZToKICAKICAgICAg c3RhdGljIGludCBfbWF4X3ByaTsKICAKQEAgLTUyLDQgKzQ3LDMgQEAgaW5kZXggN2QzZDdkYi4u MDQ0NjU5NSAxMDA2NDQKICAKICB9OwogIAotCmRpZmYgLS1naXQgYS9zcmNwa2dzL25kcHBkL3Rl bXBsYXRlIGIvc3JjcGtncy9uZHBwZC90ZW1wbGF0ZQppbmRleCA0OGY3OGMwNDBhYi4uYzA0M2Q5 MDk2MjkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbmRwcGQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9u ZHBwZC90ZW1wbGF0ZQpAQCAtMSwxNCArMSwxNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbmRw cGQnCiBwa2duYW1lPW5kcHBkCi12ZXJzaW9uPTAuMi41Cit2ZXJzaW9uPTAuMi41LmdpdDIwMTkx MjE1CitfdmVyc2lvbj0yZWI1NWM4ZTJiMTIyOTk4ODAwYmVmODcxZDYyMTdlYTBjOTMyZWM2CiBy ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtbWFrZWZpbGUKIHNob3J0X2Rlc2M9Ik5EUCBQcm94 eSBEYWVtb24iCiBtYWludGFpbmVyPSJsZW1taSA8bGVtbWlAbmVyZDJuZXJkLm9yZz4iCiBsaWNl bnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9EYW5p ZWxBZG9sZnNzb24vbmRwcGQiCi1kaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9EYW5pZWxB ZG9sZnNzb24vbmRwcGQvYXJjaGl2ZS8ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWVlOTM0 MTY3ZjgzNTdmMGJkMDAxNWUyMDFhNzdmYmU0ZDAyOGM1OWU4OWRjOTgxMTM4MDVjNjg1NWUxYzM5 OTIKK2Rpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL0RhbmllbEFkb2xmc3Nvbi9uZHBwZC9h cmNoaXZlLyR7X3ZlcnNpb259LnRhci5neiIKK2NoZWNrc3VtPWNkMDkyOWRkZmEzNzYzOGZmNzg2 YTdmMzhiODRlYjIxZmUyMDk4YzQ5MGFmMzM2YTRjOTNmYTMzNzJlMmI4ODMKK3dya3NyYz0iJHtw a2duYW1lfS0ke192ZXJzaW9ufSIKIHBhdGNoX2FyZ3M9Ii1OcDEiCiAKIGRvX2luc3RhbGwoKSB7 CgpGcm9tIDRlMzFhMTFlOWI4ODhkZTYxMzdmM2U4MTU2ZTI0NWMzMjEyNWY2YmQgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IEtyaWRzYWRhIFRoYW5hYnVscG9uZyA8c2lybkBvZ3NpdGUu bmV0PgpEYXRlOiBXZWQsIDI5IEFwciAyMDIwIDAxOjEzOjQ4ICswOTAwClN1YmplY3Q6IFtQQVRD SCAyLzddIGdydWI6IGFkZCB6ZnMgcnBvb2wgZGV0ZWN0aW9uIHBhdGNoCgotLS0KIHNyY3BrZ3Mv Z3J1Yi9wYXRjaGVzL2xpbnV4LXJwb29sLWRldGVjdC5wYXRjaCB8IDE0ICsrKysrKysrKysrKysr CiAxIGZpbGUgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvZ3J1Yi9wYXRjaGVzL2xpbnV4LXJwb29sLWRldGVjdC5wYXRjaAoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ3J1Yi9wYXRjaGVzL2xpbnV4LXJwb29sLWRldGVjdC5wYXRjaCBiL3NyY3BrZ3Mv Z3J1Yi9wYXRjaGVzL2xpbnV4LXJwb29sLWRldGVjdC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMC4uMjgxMzkzY2IzMmIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL2dydWIvcGF0Y2hlcy9saW51eC1ycG9vbC1kZXRlY3QucGF0Y2gKQEAgLTAsMCArMSwxNCBA QAorUGF0Y2hlcyBycG9vbCBkZXRlY3Rpb24gc2luY2UgZ3J1Yi1wcm9iZSBtYXkgbm90IGJlIGFi bGUgdG8gZGV0ZWN0Cit6ZnMgZmlsZXN5c3RlbSB3aXRoIGNlcnRhaW4gZmxhZ3MuCistLS0gdXRp bC9ncnViLmQvMTBfbGludXguaW4JMjAxOC0xMS0yNSAwMjoxMzowMi4wMDAwMDAwMDAgKzA5MDAK KysrKyB1dGlsL2dydWIuZC8xMF9saW51eC5pbgkyMDIwLTA0LTI5IDAwOjM4OjUzLjA5MTIzMTI2 OSArMDkwMAorQEAgLTcyLDYgKzcyLDkgQEAKKyAJZmk7OworICAgICB4emZzKQorIAlycG9vbD1g JHtncnViX3Byb2JlfSAtLWRldmljZSAke0dSVUJfREVWSUNFfSAtLXRhcmdldD1mc19sYWJlbCAy Pi9kZXYvbnVsbCB8fCB0cnVlYAorKwlpZiBbIC16ICIke3Jwb29sfSIgXSAmJiBjb21tYW5kIC12 IHpkYiA+L2Rldi9udWxsOyB0aGVuCisrCQlycG9vbD1gemRiIC1sICR7R1JVQl9ERVZJQ0V9IHxn cmVwICIgbmFtZToiIHwgY3V0IC1kXCcgLWYyYAorKwlmaQorIAlib290ZnM9ImBtYWtlX3N5c3Rl bV9wYXRoX3JlbGF0aXZlX3RvX2l0c19yb290IC8gfCBzZWQgLWUgInMsQCQsLCJgIgorIAlMSU5V WF9ST09UX0RFVklDRT0iWkZTPSR7cnBvb2x9JHtib290ZnMlL30iCisgCTs7CgpGcm9tIDkxMTEw NWM5NzFiMDQ2MzZlNGQ3Y2Q5ZjU1YmUyMWFjZTJiZjNlZTUgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IEtyaWRzYWRhIFRoYW5hYnVscG9uZyA8c2lybkBvZ3NpdGUubmV0PgpEYXRlOiBT dW4sIDE3IE1heSAyMDIwIDA3OjIxOjMxICswOTAwClN1YmplY3Q6IFtQQVRDSCAzLzddIHBsYXNt YS1hcHBsZXQtY2FmZmVpbmUtcGx1czogbmV3IHBhY2thZ2UKCi0tLQogLi4uL3BhdGNoZXMvMDBf YWRkX3N5c3RlbV90cmF5X3N1cHBvcnQucGF0Y2ggIHwgMjQgKysrKysrKysrKysrKysrKysrKwog c3JjcGtncy9wbGFzbWEtYXBwbGV0LWNhZmZlaW5lLXBsdXMvdGVtcGxhdGUgIHwgMTIgKysrKysr KysrKwogMiBmaWxlcyBjaGFuZ2VkLCAzNiBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9wbGFzbWEtYXBwbGV0LWNhZmZlaW5lLXBsdXMvcGF0Y2hlcy8wMF9hZGRfc3lz dGVtX3RyYXlfc3VwcG9ydC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcGxhc21h LWFwcGxldC1jYWZmZWluZS1wbHVzL3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wbGFz bWEtYXBwbGV0LWNhZmZlaW5lLXBsdXMvcGF0Y2hlcy8wMF9hZGRfc3lzdGVtX3RyYXlfc3VwcG9y dC5wYXRjaCBiL3NyY3BrZ3MvcGxhc21hLWFwcGxldC1jYWZmZWluZS1wbHVzL3BhdGNoZXMvMDBf YWRkX3N5c3RlbV90cmF5X3N1cHBvcnQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMDAuLmQ3NGY5ZWIzODEwCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9wbGFz bWEtYXBwbGV0LWNhZmZlaW5lLXBsdXMvcGF0Y2hlcy8wMF9hZGRfc3lzdGVtX3RyYXlfc3VwcG9y dC5wYXRjaApAQCAtMCwwICsxLDI0IEBACitGcm9tIGYyMTU5ZDk1ZmM4NDMyNjNmNjAwODYxZjll NzQyOTczN2Y1MDhlOGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBwcm9wZXJseXB1 cnBsZSA8NDA4NTgxNDQrcHJvcGVybHlwdXJwbGVAdXNlcnMubm9yZXBseS5naXRodWIuY29tPgor RGF0ZTogV2VkLCAyMiBBcHIgMjAyMCAxNToxNToyMSArMDUzMAorU3ViamVjdDogW1BBVENIXSBV cGRhdGUgbWV0YWRhdGEuZGVza3RvcAorCitBZGQgb3B0aW9uIHRvIHNob3cgcGxhc21vaWQgaW4g bm90aWZpY2F0aW9uIGFyZWEoc3lzdGVtIHRyYXkpCistLS0KKyBwbGFzbW9pZC9tZXRhZGF0YS5k ZXNrdG9wIHwgNSArKysrLQorIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEgZGVs ZXRpb24oLSkKKworZGlmZiAtLWdpdCBhL3BsYXNtb2lkL21ldGFkYXRhLmRlc2t0b3AgYi9wbGFz bW9pZC9tZXRhZGF0YS5kZXNrdG9wCitpbmRleCBkMWM3ZTA4Li42MjBlZmY4IDEwMDY0NAorLS0t IHBsYXNtb2lkL21ldGFkYXRhLmRlc2t0b3AKKysrKyBwbGFzbW9pZC9tZXRhZGF0YS5kZXNrdG9w CitAQCAtMTUsNCArMTUsNyBAQCBYLUtERS1QbHVnaW5JbmZvLVdlYnNpdGU9cGxhc21hLmtkZS5v cmcKKyBYLVBsYXNtYS1BUEk9ZGVjbGFyYXRpdmVhcHBsZXRzY3JpcHQKKyBYLVBsYXNtYS1NYWlu U2NyaXB0PXVpL21haW4ucW1sCisgWC1LREUtUGx1Z2luSW5mby1DYXRlZ29yeT1NaXNjZWxsYW5l b3VzCistWC1LREUtUGx1Z2luSW5mby1FbmFibGVkQnlEZWZhdWx0PXRydWUKK1wgTm8gbmV3bGlu ZSBhdCBlbmQgb2YgZmlsZQorK1gtS0RFLVBsdWdpbkluZm8tRW5hYmxlZEJ5RGVmYXVsdD10cnVl CisrCisrWC1QbGFzbWEtTm90aWZpY2F0aW9uQXJlYT10cnVlCisrWC1QbGFzbWEtTm90aWZpY2F0 aW9uQXJlYUNhdGVnb3J5PUhhcmR3YXJlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3BsYXNtYS1hcHBs ZXQtY2FmZmVpbmUtcGx1cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGxhc21hLWFwcGxldC1jYWZmZWlu ZS1wbHVzL3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5m ZjI1MThiMGQ2ZQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcGxhc21hLWFwcGxldC1jYWZm ZWluZS1wbHVzL3RlbXBsYXRlCkBAIC0wLDAgKzEsMTIgQEAKK3BrZ25hbWU9cGxhc21hLWFwcGxl dC1jYWZmZWluZS1wbHVzCit2ZXJzaW9uPTEuNAorcmV2aXNpb249MQorYnVpbGRfc3R5bGU9Y21h a2UKK2hvc3RtYWtlZGVwZW5kcz0iZXh0cmEtY21ha2UtbW9kdWxlcyIKK21ha2VkZXBlbmRzPSJw bGFzbWEtZnJhbWV3b3JrLWRldmVsIGtkZWNsYXJhdGl2ZS1kZXZlbCIKK3Nob3J0X2Rlc2M9IkRp c2FibGUgc2NyZWVuc2F2ZXIgYW5kIGF1dG8gc3VzcGVuZCIKK21haW50YWluZXI9IktyaWRzYWRh IFRoYW5hYnVscG9uZyA8c2lybkBvZ3NpdGUubmV0PiIKK2xpY2Vuc2U9IkdQTC0yLjAiCitob21l cGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL3F1bnh5ei9wbGFzbWEtYXBwbGV0LWNhZmZlaW5lLXBs dXMiCitkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9xdW54eXovcGxhc21hLWFwcGxldC1j YWZmZWluZS1wbHVzL2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09ZjE1YWMy ODNkNWFkYmRiZDkwOWRjNzZiMjU4YWE0MDZiN2JhMDVkMDE1NmJlZjc2Yzk2MzJlZjdkYTY3Y2U4 ZgoKRnJvbSA1MDg4YTU2ODNkYzhkNzRjZTZhMGZlOWFiZDI5OWVhMTMwNjg2MjM3IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLcmlkc2FkYSBUaGFuYWJ1bHBvbmcgPHNpcm5Ab2dzaXRl Lm5ldD4KRGF0ZTogU2F0LCAyOCBNYXIgMjAyMCAxNjoyMzo1MiArMDkwMApTdWJqZWN0OiBbUEFU Q0ggNC83XSBwaXBld2lyZTogdXBkYXRlIHRvIDAuMy41CgotLS0KIGNvbW1vbi9zaGxpYnMgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxNCArLQogc3JjcGtncy9hbHNhLXBpcGV3 aXJlICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGliamFjay1waXBl d2lyZSAgICAgICAgICAgICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzL2xpYnB1bHNlYXVkaW8t cGlwZXdpcmUgICAgICAgICAgICAgICAgfCAgIDEgKwogc3JjcGtncy9saWJzcGEtYWxzYSAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGlic3BhLWF1ZGlvY29udmVy dCAgICAgICAgICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzL2xpYnNwYS1hdWRpb21peGVyICAg ICAgICAgICAgICAgICAgICAgfCAgIDEgKwogc3JjcGtncy9saWJzcGEtY29udHJvbCAgICAgICAg ICAgICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGlic3BhLWphY2sgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzL2xpYnNwYS12NGwyICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgIDEgKwogc3JjcGtncy9saWJzcGEtdmlkZW9jb252ZXJ0ICAgICAgICAg ICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGlic3BhLXZ1bGthbiAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAgMSArCiAuLi4vcGlwZXdpcmUvcGF0Y2hlcy9maXgtbmVvbi1kZXRlY3Rpb24u cGF0Y2ggfCAgNTIgKysrKysrKwogc3JjcGtncy9waXBld2lyZS90ZW1wbGF0ZSAgICAgICAgICAg ICAgICAgICAgIHwgMTMxICsrKysrKysrKysrKysrKy0tLQogMTQgZmlsZXMgY2hhbmdlZCwgMTg4 IGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3Br Z3MvYWxzYS1waXBld2lyZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGliamFjay1waXBl d2lyZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGlicHVsc2VhdWRpby1waXBld2lyZQog Y3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGlic3BhLWFsc2EKIGNyZWF0ZSBtb2RlIDEyMDAw MCBzcmNwa2dzL2xpYnNwYS1hdWRpb2NvbnZlcnQKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dz L2xpYnNwYS1hdWRpb21peGVyCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9saWJzcGEtY29u dHJvbAogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGlic3BhLWphY2sKIGNyZWF0ZSBtb2Rl IDEyMDAwMCBzcmNwa2dzL2xpYnNwYS12NGwyCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9s aWJzcGEtdmlkZW9jb252ZXJ0CiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9saWJzcGEtdnVs a2FuCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9waXBld2lyZS9wYXRjaGVzL2ZpeC1uZW9u LWRldGVjdGlvbi5wYXRjaAoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hs aWJzCmluZGV4IDIyZTM1ZTI2ODgyLi43Y2Q5YTcxMTIxNCAxMDA2NDQKLS0tIGEvY29tbW9uL3No bGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC0zMjA0LDcgKzMyMDQsNyBAQCBsaWJhcmNhbl9z aG1pZl9leHQuc28uMC4xMSBhcmNhbi0wLjUuNC4zXzEKIGxpYmFyY2FuX3NobWlmX3NlcnZlci5z by4wLjExIGFyY2FuLTAuNS40LjNfMQogbGliYXJjYW5fdHVpLnNvLjAuMTEgYXJjYW4tMC41LjQu M18xCiBsaWJsd2lwdjYuc28uMiBsd2lwdjYtMS41YV8xCi1saWJwaXBld2lyZS0wLjIuc28uMSBs aWJwaXBld2lyZS0wLjIuMl8xCitsaWJwaXBld2lyZS0wLjMuc28uMCBsaWJwaXBld2lyZS0wLjMu NV8xCiBsaWJ2b2xrLnNvLjIuMi4xIHZvbGstMi4yLjFfMQogbGliZ251cmFkaW8tcnVudGltZS5z by4zLjguMCBnbnVyYWRpby0zLjguMC4wXzEKIGxpYmdudXJhZGlvLXBtdC5zby4zLjguMCBnbnVy YWRpby0zLjguMC4wXzEKQEAgLTM0MzMsNiArMzQzMywxOCBAQCBsaWJjc3NfcGFyc2VyLnNvLjAg aHRtbGN4eC0wLjg2XzEKIGxpYmFvbS5zby4wIGxpYmFvbS0xLjAuMF8xCiBsaWJyZS5zbyByZS0w LjUuOF8xCiBsaWJzcGFuZHNwLnNvLjIgc3BhbmRzcC0wLjAuNl8xCitsaWJzcGEtYWxzYS5zbyBs aWJzcGEtYWxzYS0wLjMuNV8xCitsaWJzcGEtYXVkaW9jb252ZXJ0LnNvIGxpYnNwYS1hdWRpb2Nv bnZlcnQtMC4zLjVfMQorbGlic3BhLWF1ZGlvbWl4ZXIuc28gbGlic3BhLWF1ZGlvbWl4ZXItMC4z LjVfMQorbGlic3BhLWJsdWV6NS5zbyBsaWJzcGEtYmx1ZXRvb3RoLTAuMy41XzEKK2xpYnNwYS1j b250cm9sLnNvIGxpYnNwYS1jb250cm9sLTAuMy41XzEKK2xpYnNwYS1mZm1wZWcuc28gbGlic3Bh LWZmbXBlZy0wLjMuNV8xCitsaWJzcGEtamFjay5zbyBsaWJzcGEtamFjay0wLjMuNV8xCitsaWJz cGEtdjRsMi5zbyBsaWJzcGEtdjRsMi0wLjMuNV8xCitsaWJzcGEtdmlkZW9jb252ZXJ0LnNvIGxp YnNwYS12aWRlb2NvbnZlcnQtMC4zLjVfMQorbGlic3BhLXZ1bGthbi5zbyBsaWJzcGEtdnVsa2Fu LTAuMy41XzEKK2xpYnNwYS1ibHVlejUuc28gbGlic3BhLWJsdWV0b290aC0wLjMuNV8xCitsaWJz cGEtZmZtcGVnLnNvIGxpYnNwYS1mZm1wZWctMC4zLjVfMQogbGlicmVtLnNvIHJlbS0wLjUuM18x CiBsaWJzaHAuc28uMSBzaGFwZWxpYi0xLjQuMV8xCiBsaWJhbnRscjNjLnNvIGxpYmFudGxyM2Mt My40XzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYWxzYS1waXBld2lyZSBiL3NyY3BrZ3MvYWxzYS1w aXBld2lyZQpuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMC4uYzljOTdjZjY3 MDcKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2Fsc2EtcGlwZXdpcmUKQEAgLTAsMCArMSBA QAorcGlwZXdpcmUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNw a2dzL2xpYmphY2stcGlwZXdpcmUgYi9zcmNwa2dzL2xpYmphY2stcGlwZXdpcmUKbmV3IGZpbGUg bW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAuLmM5Yzk3Y2Y2NzA3Ci0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9saWJqYWNrLXBpcGV3aXJlCkBAIC0wLDAgKzEgQEAKK3BpcGV3aXJlClwg Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJwdWxzZWF1 ZGlvLXBpcGV3aXJlIGIvc3JjcGtncy9saWJwdWxzZWF1ZGlvLXBpcGV3aXJlCm5ldyBmaWxlIG1v ZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwLi5jOWM5N2NmNjcwNwotLS0gL2Rldi9udWxsCisr KyBiL3NyY3BrZ3MvbGlicHVsc2VhdWRpby1waXBld2lyZQpAQCAtMCwwICsxIEBACitwaXBld2ly ZQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGlic3Bh LWFsc2EgYi9zcmNwa2dzL2xpYnNwYS1hbHNhCm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAw MDAwMDAwMDAwLi5jOWM5N2NmNjcwNwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGlic3Bh LWFsc2EKQEAgLTAsMCArMSBAQAorcGlwZXdpcmUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl CmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYnNwYS1hdWRpb2NvbnZlcnQgYi9zcmNwa2dzL2xpYnNw YS1hdWRpb2NvbnZlcnQKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAuLmM5 Yzk3Y2Y2NzA3Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJzcGEtYXVkaW9jb252ZXJ0 CkBAIC0wLDAgKzEgQEAKK3BpcGV3aXJlClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9saWJzcGEtYXVkaW9taXhlciBiL3NyY3BrZ3MvbGlic3BhLWF1ZGlv bWl4ZXIKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAuLmM5Yzk3Y2Y2NzA3 Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJzcGEtYXVkaW9taXhlcgpAQCAtMCwwICsx IEBACitwaXBld2lyZQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvbGlic3BhLWNvbnRyb2wgYi9zcmNwa2dzL2xpYnNwYS1jb250cm9sCm5ldyBmaWxlIG1v ZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwLi5jOWM5N2NmNjcwNwotLS0gL2Rldi9udWxsCisr KyBiL3NyY3BrZ3MvbGlic3BhLWNvbnRyb2wKQEAgLTAsMCArMSBAQAorcGlwZXdpcmUKXCBObyBu ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYnNwYS1qYWNrIGIv c3JjcGtncy9saWJzcGEtamFjawpuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAw MC4uYzljOTdjZjY3MDcKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xpYnNwYS1qYWNrCkBA IC0wLDAgKzEgQEAKK3BpcGV3aXJlClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t Z2l0IGEvc3JjcGtncy9saWJzcGEtdjRsMiBiL3NyY3BrZ3MvbGlic3BhLXY0bDIKbmV3IGZpbGUg bW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAuLmM5Yzk3Y2Y2NzA3Ci0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9saWJzcGEtdjRsMgpAQCAtMCwwICsxIEBACitwaXBld2lyZQpcIE5vIG5l d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGlic3BhLXZpZGVvY29u dmVydCBiL3NyY3BrZ3MvbGlic3BhLXZpZGVvY29udmVydApuZXcgZmlsZSBtb2RlIDEyMDAwMApp bmRleCAwMDAwMDAwMDAwMC4uYzljOTdjZjY3MDcKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dz L2xpYnNwYS12aWRlb2NvbnZlcnQKQEAgLTAsMCArMSBAQAorcGlwZXdpcmUKXCBObyBuZXdsaW5l IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYnNwYS12dWxrYW4gYi9zcmNw a2dzL2xpYnNwYS12dWxrYW4KbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAu LmM5Yzk3Y2Y2NzA3Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJzcGEtdnVsa2FuCkBA IC0wLDAgKzEgQEAKK3BpcGV3aXJlClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t Z2l0IGEvc3JjcGtncy9waXBld2lyZS9wYXRjaGVzL2ZpeC1uZW9uLWRldGVjdGlvbi5wYXRjaCBi L3NyY3BrZ3MvcGlwZXdpcmUvcGF0Y2hlcy9maXgtbmVvbi1kZXRlY3Rpb24ucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjlkY2M5MGZhYjM2Ci0tLSAvZGV2L251 bGwKKysrIGIvc3JjcGtncy9waXBld2lyZS9wYXRjaGVzL2ZpeC1uZW9uLWRldGVjdGlvbi5wYXRj aApAQCAtMCwwICsxLDUyIEBACitkaWZmIC0tZ2l0IG1lc29uLmJ1aWxkIG1lc29uLmJ1aWxkCitp bmRleCAyOWI0Yjg5Mi4uMGQwNDhhMWYgMTAwNjQ0CistLS0gbWVzb24uYnVpbGQKKysrKyBtZXNv bi5idWlsZAorQEAgLTk5LDM3ICs5OSwxNiBAQCBoYXZlX2F2eCA9IGNjLmhhc19hcmd1bWVudChh dnhfYXJncykKKyBoYXZlX2F2eDIgPSBjYy5oYXNfYXJndW1lbnQoYXZ4Ml9hcmdzKQorIAorIGhh dmVfbmVvbiA9IGZhbHNlCistaWYgaG9zdF9tYWNoaW5lLmNwdV9mYW1pbHkoKSA9PSAnYWFyY2g2 NCcKKy0gIGlmIGNjLmNvbXBpbGVzKCcnJworLSAgICAjaW5jbHVkZSA8YXJtX25lb24uaD4KKy0g ICAgaW50IG1haW4gKCkgeworLSAgICAgIGZsb2F0ICpzOworLSAgICAgIGFzbSB2b2xhdGlsZSgK Ky0JIiAgICAgIGxkMSB7IHYwLjRzIH0sIFslW3NdXSwgIzE2XG4iCistICAgICAgICAiICAgICAg ZmN2dHpzIHYwLjRzLCB2MC40cywgIzMxXG4iCistCTogW3NdICIrciIgKHMpIDogOik7CistICAg IH0KKy0gICAgJycnLAorLSAgICBuYW1lIDogJ2FhcmNoNjQgTmVvbiBTdXBwb3J0JykKKy0gICAg ICBuZW9uX2FyZ3MgPSBbXQorLSAgICAgIGhhdmVfbmVvbiA9IHRydWUKKy0KKy0gIGVuZGlmCist ZWxpZiBjYy5oYXNfYXJndW1lbnQoJy1tZnB1PW5lb24nKQorLSAgaWYgY2MuY29tcGlsZXMoJycn CistICAgICNpbmNsdWRlIDxhcm1fbmVvbi5oPgorLSAgICBpbnQgbWFpbiAoKSB7CistICAgICAg ZmxvYXQgKnM7CistICAgICAgYXNtIHZvbGF0aWxlKAorLSAgICAgICAgIiAgICAgIHZsZDEuMzIg eyBxMCB9LCBbJVtzXV0hXG4iCistICAgICAgICAiICAgICAgdmN2dC5zMzIuZjMyIHEwLCBxMCwg IzMxXG4iCistCTogW3NdICIrciIgKHMpIDogOik7CistICAgIH0KKy0gICAgJycnLAorLSAgICBh cmdzOiAnLW1mcHU9bmVvbicsCistICAgIG5hbWUgOiAnYXJtIE5lb24gU3VwcG9ydCcpCistICAg ICAgbmVvbl9hcmdzID0gWyctbWZwdT1uZW9uJ10KKy0gICAgICBoYXZlX25lb24gPSB0cnVlCisr aWYgaG9zdF9tYWNoaW5lLmNwdV9mYW1pbHkoKSA9PSAnYXJtJyBvciBob3N0X21hY2hpbmUuY3B1 X2ZhbWlseSgpID09ICdhYXJjaDY0JworKyAgaWYgY2MuY29tcGlsZXMoCisrJycnCisrI2luY2x1 ZGUgPGFybV9uZW9uLmg+CisraW50MzJ4NF90IHRlc3RmdW5jKGludDE2X3QgKmEsIGludDE2X3Qg KmIpIHsKKytyZXR1cm4gdm11bGxfczE2KHZsZDFfczE2KGEpLCB2bGQxX3MxNihiKSk7CisrfQor KycnJywKKysgICBuYW1lIDogJ05FT04gc3VwcG9ydCcpCisrICAgIGhhdmVfbmVvbiA9IHRydWUK KyAgIGVuZGlmCisgZW5kaWYKKyAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGlwZXdpcmUvdGVtcGxh dGUgYi9zcmNwa2dzL3BpcGV3aXJlL3RlbXBsYXRlCmluZGV4IDdmNjQ2ZGFkMTFkLi5kMmRlYzhm NDY5NSAxMDA2NDQKLS0tIGEvc3JjcGtncy9waXBld2lyZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L3BpcGV3aXJlL3RlbXBsYXRlCkBAIC0xLDI2ICsxLDM3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdwaXBld2lyZScKIHBrZ25hbWU9cGlwZXdpcmUKLXZlcnNpb249MC4yLjcKK3ZlcnNpb249MC4z LjUKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1jb25maWd1cmVfYXJncz0iLURtYW49 dHJ1ZSAtRGdzdHJlYW1lcj1lbmFibGVkIC1EZG9jcz10cnVlIC1Ec3lzdGVtZD1mYWxzZSIKK2Nv bmZpZ3VyZV9hcmdzPSItRG1hbj10cnVlIC1EZ3N0cmVhbWVyPXRydWUgLURkb2NzPXRydWUgLURz eXN0ZW1kPWZhbHNlCisgLURibHVlejU9dHJ1ZSAtRGZmbXBlZz10cnVlIC1EcGlwZXdpcmUtYWxz YT10cnVlIC1EcGlwZXdpcmUtamFjaz10cnVlCisgLURwaXBld2lyZS1wdWxzZWF1ZGlvPXRydWUi CiBob3N0bWFrZWRlcGVuZHM9ImRveHlnZW4gZ3JhcGh2aXogcGtnLWNvbmZpZyB4bWx0b21hbiIK IG1ha2VkZXBlbmRzPSJTREwyLWRldmVsIGZmbXBlZy1kZXZlbCBnc3QtcGx1Z2lucy1iYXNlMS1k ZXZlbCBqYWNrLWRldmVsCi0gc2JjLWRldmVsIHY0bC11dGlscy1kZXZlbCBsaWJ2YS1kZXZlbCIK KyBzYmMtZGV2ZWwgdjRsLXV0aWxzLWRldmVsIGxpYnZhLWRldmVsIGxpYmJsdWV0b290aC1kZXZl bCIKIHNob3J0X2Rlc2M9IlNlcnZlciBhbmQgdXNlciBzcGFjZSBBUEkgdG8gZGVhbCB3aXRoIG11 bHRpbWVkaWEgcGlwZWxpbmVzIgotbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGlu dXgub3JnPiIKLSNOZXh0IHJlbGVhc2Ugd2lsbCBwcm9iYWJseSBjaGFuZ2UgdG8gTUlULCBjdXJy ZW50bHkgbGlzdGVkIGluIG1hc3RlcgotbGljZW5zZT0iTEdQTC0yLjEtb25seSwgR1BMLTIuMC1v bmx5ICIKK21haW50YWluZXI9IktyaWRzYWRhIFRoYW5hYnVscG9uZyA8c2lybkBvZ3NpdGUubmV0 PiIKK2xpY2Vuc2U9Ik1JVCIKIGhvbWVwYWdlPSJodHRwczovL3BpcGV3aXJlLm9yZy8iCi1jaGFu Z2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9QaXBlV2lyZS9waXBld2ly ZS9tYXN0ZXIvTkVXUyIKLWRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL1BpcGVXaXJlL3Bp cGV3aXJlL2FyY2hpdmUvJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1iZmFhMGY2YWU2YzA3 OTFlMmUwYjU5MjM0ZDM5OTc1M2JmMjRmMWIzM2RiZjU4NzY4MjM2M2E4NDYzZGQ4ZGYxCitjaGFu Z2Vsb2c9Imh0dHBzOi8vZ2l0bGFiLmZyZWVkZXNrdG9wLm9yZy9waXBld2lyZS9waXBld2lyZS8t L3Jhdy9tYXN0ZXIvTkVXUyIKK2Rpc3RmaWxlcz0iaHR0cHM6Ly9naXRsYWIuZnJlZWRlc2t0b3Au b3JnL3BpcGV3aXJlL3BpcGV3aXJlLy0vYXJjaGl2ZS8ke3ZlcnNpb259L3BpcGV3aXJlLSR7dmVy c2lvbn0udGFyLmd6IgorY2hlY2tzdW09YzhjZWY5Y2U5M2RlZTMyODE4N2IyNzRlMjEzZGJlY2Zl MmRmOGVjYzQ1YmJhMmJjMjFkNDcwMTEyYjJkZjNmNgogY29uZl9maWxlcz0iL2V0Yy9waXBld2ly ZS9waXBld2lyZS5jb25mIgogCitpZiBbICIkWEJQU19UQVJHRVRfTk9fQVRPTUlDOCIgXTsgdGhl bgorCW1ha2VkZXBlbmRzKz0iIGxpYmF0b21pYy1kZXZlbCIKKwlMREZMQUdTKz0iIC1sYXRvbWlj IgorZmkKKworcG9zdF9pbnN0YWxsKCkgeworCXZsaWNlbnNlIExJQ0VOU0UKK30KKwogbGlicGlw ZXdpcmVfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gcGlwZXdpcmUgbGlicmFyeSIKIAlw a2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgInVzci9saWIvbGlicGlwZXdpcmUtMC4yLnNvLioiCisJ CXZtb3ZlICJ1c3IvbGliL2xpYnBpcGV3aXJlLTAuMy5zby4qIgorCQl2bW92ZSAidXNyL2xpYi9w aXBld2lyZS0wLjMvKi5zbyIKIAl9CiB9CiAKQEAgLTI4LDI1ICszOSw4MSBAQCBwaXBld2lyZS1k ZXZlbF9wYWNrYWdlKCkgewogCWRlcGVuZHM9ImxpYnBpcGV3aXJlLSR7dmVyc2lvbn1fJHtyZXZp c2lvbn0iCiAJc2hvcnRfZGVzYys9IiAtIHBpcGV3aXJlIGFuZCBsaWJzcGEgZGV2ZWxvcG1lbnQg ZmlsZXMiCiAJcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVzci9pbmNsdWRlL3BpcGV3aXJlCi0J CXZtb3ZlIHVzci9pbmNsdWRlL3NwYQotCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZy9saWJwaXBl d2lyZS0wLjIucGMKLQkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcvbGlic3BhLTAuMS5wYwotCQl2 bW92ZSB1c3IvbGliL2xpYnBpcGV3aXJlLTAuMi5zbworCQl2bW92ZSB1c3IvaW5jbHVkZS9waXBl d2lyZS0wLjMKKwkJdm1vdmUgdXNyL2luY2x1ZGUvc3BhLTAuMgorCQl2bW92ZSB1c3IvbGliL3Br Z2NvbmZpZy9saWJwaXBld2lyZS0wLjMucGMKKwkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcvbGli c3BhLTAuMi5wYworCQl2bW92ZSB1c3IvbGliL2xpYnBpcGV3aXJlLTAuMy5zbwogCX0KIH0KIAot bGlic3BhLWZmbXBlZ19wYWNrYWdlKCkgewotCXNob3J0X2Rlc2MrPSIgLSBmZm1wZWcgcGx1Z2lu cyIKK2xpYnNwYS1hbHNhX3BhY2thZ2UoKSB7CisJc2hvcnRfZGVzYys9IiAtIGFsc2EgcGx1Z2lu cyIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2xpYi9zcGEtMC4yL2Fsc2EKKwl9Cit9 CisKK2xpYnNwYS1hdWRpb2NvbnZlcnRfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjKz0iIC0gYXVk aW9jb252ZXJ0IHBsdWdpbnMiCiAJcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVzci9saWIvc3Bh L2ZmbXBlZworCQl2bW92ZSB1c3IvbGliL3NwYS0wLjIvYXVkaW9jb252ZXJ0CisJfQorfQorCits aWJzcGEtYXVkaW9taXhlcl9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2MrPSIgLSBhdWRpb21peGVy IHBsdWdpbnMiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9saWIvc3BhLTAuMi9hdWRp b21peGVyCiAJfQogfQogCiBsaWJzcGEtYmx1ZXRvb3RoX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVz Yys9IiAtIGJsdWV0b290aCBwbHVnaW5zIgogCXBrZ19pbnN0YWxsKCkgewotCQl2bW92ZSB1c3Iv bGliL3NwYS9ibHVlejUKKwkJdm1vdmUgdXNyL2xpYi9zcGEtMC4yL2JsdWV6NQorCX0KK30KKwor bGlic3BhLWNvbnRyb2xfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjKz0iIC0gY29udHJvbCBwbHVn aW5zIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvbGliL3NwYS0wLjIvY29udHJvbAor CX0KK30KKworbGlic3BhLWZmbXBlZ19wYWNrYWdlKCkgeworCXNob3J0X2Rlc2MrPSIgLSBmZm1w ZWcgcGx1Z2lucyIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2xpYi9zcGEtMC4yL2Zm bXBlZworCX0KK30KKworbGlic3BhLWphY2tfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjKz0iIC0g amFjayBwbHVnaW5zIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvbGliL3NwYS0wLjIv amFjaworCX0KK30KKworbGlic3BhLXY0bDJfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjKz0iIC0g djRsMiBwbHVnaW5zIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvbGliL3NwYS0wLjIv djRsMgorCX0KK30KKworbGlic3BhLXZpZGVvY29udmVydF9wYWNrYWdlKCkgeworCXNob3J0X2Rl c2MrPSIgLSB2aWRlb2NvbnZlcnQgcGx1Z2lucyIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUg dXNyL2xpYi9zcGEtMC4yL3ZpZGVvY29udmVydAorCX0KK30KKworbGlic3BhLXZ1bGthbl9wYWNr YWdlKCkgeworCXNob3J0X2Rlc2MrPSIgLSB2dWxrYW4gcGx1Z2lucyIKKwlwa2dfaW5zdGFsbCgp IHsKKwkJdm1vdmUgdXNyL2xpYi9zcGEtMC4yL3Z1bGthbgogCX0KIH0KIApAQCAtNTcsNiArMTI0 LDMyIEBAIGdzdHJlYW1lcjEtcGlwZXdpcmVfcGFja2FnZSgpIHsKIAl9CiB9CiAKK2xpYnB1bHNl YXVkaW8tcGlwZXdpcmVfcGFja2FnZSgpIHsKKwlkZXBlbmRzPSJsaWJwaXBld2lyZS0ke3ZlcnNp b259XyR7cmV2aXNpb259IgorCXNob3J0X2Rlc2MrPSIgLSBQdWxzZUF1ZGlvIGNsaWVudCBsaWJy YXJ5IgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvbGliL3BpcGV3aXJlLTAuMy9wdWxz ZQorCQl2bW92ZSB1c3IvYmluL3B3LXB1bHNlCisJfQorfQorCithbHNhLXBpcGV3aXJlX3BhY2th Z2UoKSB7CisJZGVwZW5kcz0ibGlicGlwZXdpcmUtJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlz aG9ydF9kZXNjKz0iIC0gQUxTQSBjbGllbnQgbGlicmFyeSIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJ dm1vdmUgdXNyL2xpYi9hbHNhLWxpYgorCX0KK30KKworbGliamFjay1waXBld2lyZV9wYWNrYWdl KCkgeworCWRlcGVuZHM9ImxpYnBpcGV3aXJlLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJc2hv cnRfZGVzYys9IiAtIEpBQ0sgY2xpZW50IGxpYnJhcnkiCisJcGtnX2luc3RhbGwoKSB7CisJCXZt b3ZlIHVzci9saWIvcGlwZXdpcmUtMC4zL2phY2sKKwkJdm1vdmUgdXNyL2Jpbi9wdy1qYWNrCisJ fQorfQorCiBwaXBld2lyZS1kb2NfcGFja2FnZSgpIHsKIAlhcmNocz1ub2FyY2gKIAlzaG9ydF9k ZXNjKz0iIC0gZG9jdW1lbnRhdGlvbiIKCkZyb20gMzIxNjYxNGZiYzIzYjZlZTUwODY2ZGI1YmUz OGExNjA4YjU5OWJjZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogS3JpZHNhZGEgVGhh bmFidWxwb25nIDxzaXJuQG9nc2l0ZS5uZXQ+CkRhdGU6IFNhdCwgMjggTWFyIDIwMjAgMTY6MjQ6 NDYgKzA5MDAKU3ViamVjdDogW1BBVENIIDUvN10geGRnLWRlc2t0b3AtcG9ydGFsLWtkZTogcmVi dWlsZCBmb3IgcGlwZXdpcmUtMC4zCgotLS0KIHNyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWtk ZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxl dGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWtkZS90ZW1w bGF0ZSBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWtkZS90ZW1wbGF0ZQppbmRleCA3YTJh YWYxNmI5Ni4uNTc0ZTI4NTA0YjcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9y dGFsLWtkZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1rZGUvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4ZGctZGVza3RvcC1w b3J0YWwta2RlJwogcGtnbmFtZT14ZGctZGVza3RvcC1wb3J0YWwta2RlCiB2ZXJzaW9uPTUuMTgu NQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVw ZW5kcz0iZXh0cmEtY21ha2UtbW9kdWxlcyBxdDUtcW1ha2UgcXQ1LWhvc3QtdG9vbHMga2NvcmVh ZGRvbnMgZ2V0dGV4dCIKIG1ha2VkZXBlbmRzPSJnbGliLWRldmVsIGtpby1kZXZlbCBrd2F5bGFu ZC1kZXZlbCBsaWJlcG94eS1kZXZlbCBwaXBld2lyZS1kZXZlbAoKRnJvbSA5N2U0MDE1M2ViNmY2 OTBmMTNlZTM5YmVhNDNiOGZhNzQ0YTI4OWIyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBLcmlkc2FkYSBUaGFuYWJ1bHBvbmcgPHNpcm5Ab2dzaXRlLm5ldD4KRGF0ZTogU2F0LCAyOCBN YXIgMjAyMCAxNjoyNDoyNiArMDkwMApTdWJqZWN0OiBbUEFUQ0ggNi83XSB4ZGctZGVza3RvcC1w b3J0YWw6IHJlYnVpbGQgZm9yIHBpcGV3aXJlLTAuMwoKLS0tCiAuLi4vcGF0Y2hlcy9waXBld2ly ZS0wLjMucGF0Y2ggICAgICAgICAgICAgICAgfCA1NTEgKysrKysrKysrKysrKysrKysrCiBzcmNw a2dzL3hkZy1kZXNrdG9wLXBvcnRhbC90ZW1wbGF0ZSAgICAgICAgICAgfCAgIDggKy0KIDIgZmls ZXMgY2hhbmdlZCwgNTU3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9k ZSAxMDA2NDQgc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwvcGF0Y2hlcy9waXBld2lyZS0wLjMu cGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC9wYXRjaGVzL3Bp cGV3aXJlLTAuMy5wYXRjaCBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsL3BhdGNoZXMvcGlw ZXdpcmUtMC4zLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi45 NGViZTA4MzU5OAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFs L3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoCkBAIC0wLDAgKzEsNTUxIEBACitGcm9tIGEzODkw MWU1ZTdmODM1ZWZlN2I3YTA2YzU1NzkwYzhjMjBiYzkxYTIgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCitGcm9tOiBXaW0gVGF5bWFucyA8d3RheW1hbnNAcmVkaGF0LmNvbT4KK0RhdGU6IFR1ZSwg MTQgSmFuIDIwMjAgMDk6Mzc6MDkgKzAxMDAKK1N1YmplY3Q6IFtQQVRDSF0gUGlwZVdpcmU6IHVw ZGF0ZSB0byAwLjMgQVBJCisKKy0tLQorIGNvbmZpZ3VyZS5hYyAgICAgIHwgICAyICstCisgc3Jj L2NhbWVyYS5jICAgICAgfCAgMjQgKysrKy0tLS0KKyBzcmMvcGlwZXdpcmUuYyAgICB8IDE0MSAr KysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc3JjL3BpcGV3 aXJlLmggICAgfCAgMTAgKystLQorIHNyYy9zY3JlZW4tY2FzdC5jIHwgIDk4ICsrKysrKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgNSBmaWxlcyBjaGFuZ2VkLCA3MiBpbnNlcnRpb25zKCsp LCAyMDMgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgY29uZmlndXJlLmFjIGNvbmZpZ3VyZS5h YworaW5kZXggODk5MDJmYS4uNjJkNzk2MCAxMDA2NDQKKy0tLSBjb25maWd1cmUuYWMKKysrKyBj b25maWd1cmUuYWMKK0BAIC05Nyw3ICs5Nyw3IEBAIEFDX0FSR19FTkFCTEUocGlwZXdpcmUsCisg CSAgICAgIFtBU19IRUxQX1NUUklORyhbLS1lbmFibGUtcGlwZXdpcmVdLFtFbmFibGUgUGlwZVdp cmUgc3VwcG9ydC4gTmVlZGVkIGZvciBzY3JlZW4gY2FzdCBwb3J0YWxdKV0sCisgCSAgICAgIGVu YWJsZV9waXBld2lyZT0kZW5hYmxldmFsLCBlbmFibGVfcGlwZXdpcmU9eWVzKQorIGlmIHRlc3Qg eCRlbmFibGVfcGlwZXdpcmUgPSB4eWVzIDsgdGhlbgorLQlQS0dfQ0hFQ0tfTU9EVUxFUyhQSVBF V0lSRSwgW2xpYnBpcGV3aXJlLTAuMiA+PSAwLjIuNl0pCisrCVBLR19DSEVDS19NT0RVTEVTKFBJ UEVXSVJFLCBbbGlicGlwZXdpcmUtMC4zID49IDAuMi45MF0pCisgCUFDX0RFRklORShbSEFWRV9Q SVBFV0lSRV0sWzFdLCBbRGVmaW5lIHRvIGVuYWJsZSBQaXBlV2lyZSBzdXBwb3J0XSkKKyBmaQor IEFNX0NPTkRJVElPTkFMKFtIQVZFX1BJUEVXSVJFXSxbdGVzdCAiJGVuYWJsZV9waXBld2lyZSIg PSAieWVzIl0pCitkaWZmIC0tZ2l0IHNyYy9jYW1lcmEuYyBzcmMvY2FtZXJhLmMKK2luZGV4IGMy YjM5MmMuLjIwZmUzYWEgMTAwNjQ0CistLS0gc3JjL2NhbWVyYS5jCisrKysgc3JjL2NhbWVyYS5j CitAQCAtMTQxLDcgKzE0MSw3IEBAIG9wZW5fcGlwZXdpcmVfY2FtZXJhX3JlbW90ZSAoY29uc3Qg Y2hhciAqYXBwX2lkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0Vycm9yICoqZXJy b3IpCisgeworICAgUGlwZVdpcmVSZW1vdGUgKnJlbW90ZTsKKy0gIHN0cnVjdCBzcGFfZGljdF9p dGVtIHBlcm1pc3Npb25faXRlbXNbMV07CisrICBzdHJ1Y3QgcHdfcGVybWlzc2lvbiBwZXJtaXNz aW9uX2l0ZW1zWzJdOworICAgc3RydWN0IHB3X3Byb3BlcnRpZXMgKnBpcGV3aXJlX3Byb3BlcnRp ZXM7CisgCisgICBwaXBld2lyZV9wcm9wZXJ0aWVzID0KK0BAIC0xNTgsMTIgKzE1OCwxMiBAQCBv cGVuX3BpcGV3aXJlX2NhbWVyYV9yZW1vdGUgKGNvbnN0IGNoYXIgKmFwcF9pZCwKKyAgICAqIEhp ZGUgYWxsIGV4aXN0aW5nIGFuZCBmdXR1cmUgbm9kZXMgYnkgZGVmYXVsdC4gUGlwZVdpcmUgd2ls bCB1c2UgdGhlCisgICAgKiBwZXJtaXNzaW9uIHN0b3JlIHRvIHNldCB1cCBwZXJtaXNzaW9ucy4K KyAgICAqLworLSAgcGVybWlzc2lvbl9pdGVtc1swXS5rZXkgPSBQV19DT1JFX1BST1hZX1BFUk1J U1NJT05TX0RFRkFVTFQ7CistICBwZXJtaXNzaW9uX2l0ZW1zWzBdLnZhbHVlID0gIi0tLSI7Cisr ICBwZXJtaXNzaW9uX2l0ZW1zWzBdID0gUFdfUEVSTUlTU0lPTl9JTklUIChQV19JRF9DT1JFLCBQ V19QRVJNX1JXWCk7CisrICBwZXJtaXNzaW9uX2l0ZW1zWzFdID0gUFdfUEVSTUlTU0lPTl9JTklU IChQV19JRF9BTlksIDApOworIAorLSAgcHdfY29yZV9wcm94eV9wZXJtaXNzaW9ucyAocHdfcmVt b3RlX2dldF9jb3JlX3Byb3h5IChyZW1vdGUtPnJlbW90ZSksCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAmU1BBX0RJQ1RfSU5JVCAocGVybWlzc2lvbl9pdGVtcywKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX05fRUxFTUVOVFMgKHBlcm1pc3Np b25faXRlbXMpKSk7CisrICBwd19jbGllbnRfdXBkYXRlX3Blcm1pc3Npb25zIChwd19jb3JlX2dl dF9jbGllbnQocmVtb3RlLT5jb3JlKSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEdfTl9FTEVNRU5UUyAocGVybWlzc2lvbl9pdGVtcyksCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBwZXJtaXNzaW9uX2l0ZW1zKTsKKyAKKyAgIHBpcGV3aXJlX3JlbW90ZV9yb3Vu ZHRyaXAgKHJlbW90ZSk7CisgCitAQCAtMjE5LDcgKzIxOSw3IEBAIGhhbmRsZV9vcGVuX3BpcGV3 aXJlX3JlbW90ZSAoWGRwQ2FtZXJhICpvYmplY3QsCisgICAgIH0KKyAKKyAgIG91dF9mZF9saXN0 ID0gZ191bml4X2ZkX2xpc3RfbmV3ICgpOworLSAgZmQgPSBwd19yZW1vdGVfc3RlYWxfZmQgKHJl bW90ZS0+cmVtb3RlKTsKKysgIGZkID0gcHdfY29yZV9zdGVhbF9mZCAocmVtb3RlLT5jb3JlKTsK KyAgIGZkX2lkID0gZ191bml4X2ZkX2xpc3RfYXBwZW5kIChvdXRfZmRfbGlzdCwgZmQsICZlcnJv cik7CisgICBjbG9zZSAoZmQpOworICAgcGlwZXdpcmVfcmVtb3RlX2Rlc3Ryb3kgKHJlbW90ZSk7 CitAQCAtMjUwLDI5ICsyNTAsMjggQEAgY2FtZXJhX2lmYWNlX2luaXQgKFhkcENhbWVyYUlmYWNl ICppZmFjZSkKKyBzdGF0aWMgdm9pZAorIGdsb2JhbF9hZGRlZF9jYiAoUGlwZVdpcmVSZW1vdGUg KnJlbW90ZSwKKyAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGlkLAorLSAgICAgICAgICAgICAg ICAgdWludDMyX3QgdHlwZSwKKysgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnR5cGUsCisg ICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3Qgc3BhX2RpY3QgKnByb3BzLAorICAgICAgICAg ICAgICAgICAgZ3BvaW50ZXIgdXNlcl9kYXRhKQorIHsKKyAgIENhbWVyYSAqY2FtZXJhID0gdXNl cl9kYXRhOworLSAgc3RydWN0IHB3X3R5cGUgKmNvcmVfdHlwZSA9IHB3X2NvcmVfZ2V0X3R5cGUg KHJlbW90ZS0+Y29yZSk7CisgICBjb25zdCBzdHJ1Y3Qgc3BhX2RpY3RfaXRlbSAqbWVkaWFfY2xh c3M7CisgICBjb25zdCBzdHJ1Y3Qgc3BhX2RpY3RfaXRlbSAqbWVkaWFfcm9sZTsKKyAKKy0gIGlm ICh0eXBlICE9IGNvcmVfdHlwZS0+bm9kZSkKKysgIGlmIChzdHJjbXAodHlwZSwgUFdfVFlQRV9J TlRFUkZBQ0VfTm9kZSkgIT0gMCkKKyAgICAgcmV0dXJuOworIAorICAgaWYgKCFwcm9wcykKKyAg ICAgcmV0dXJuOworIAorLSAgbWVkaWFfY2xhc3MgPSBzcGFfZGljdF9sb29rdXBfaXRlbSAocHJv cHMsICJtZWRpYS5jbGFzcyIpOworKyAgbWVkaWFfY2xhc3MgPSBzcGFfZGljdF9sb29rdXBfaXRl bSAocHJvcHMsIFBXX0tFWV9NRURJQV9DTEFTUyk7CisgICBpZiAoIW1lZGlhX2NsYXNzKQorICAg ICByZXR1cm47CisgCisgICBpZiAoZ19zdHJjbXAwIChtZWRpYV9jbGFzcy0+dmFsdWUsICJWaWRl by9Tb3VyY2UiKSAhPSAwKQorICAgICByZXR1cm47CisgCistICBtZWRpYV9yb2xlID0gc3BhX2Rp Y3RfbG9va3VwX2l0ZW0gKHByb3BzLCAibWVkaWEucm9sZSIpOworKyAgbWVkaWFfcm9sZSA9IHNw YV9kaWN0X2xvb2t1cF9pdGVtIChwcm9wcywgUFdfS0VZX01FRElBX1JPTEUpOworICAgaWYgKCFt ZWRpYV9yb2xlKQorICAgICByZXR1cm47CisgCitAQCAtMzQyLDYgKzM0MSw3IEBAIGNyZWF0ZV9w aXBld2lyZV9yZW1vdGUgKENhbWVyYSAqY2FtZXJhLAorICAgICB9CisgCisgICBwaXBld2lyZV9w cm9wZXJ0aWVzID0gcHdfcHJvcGVydGllc19uZXcgKCJwaXBld2lyZS5hY2Nlc3MucG9ydGFsLmlz X3BvcnRhbCIsICJ0cnVlIiwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgInBvcnRhbC5tb25pdG9yIiwgIkNhbWVyYSIsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgY2FtZXJhLT5waXBld2lyZV9yZW1vdGUg PSBwaXBld2lyZV9yZW1vdGVfbmV3X3N5bmMgKHBpcGV3aXJlX3Byb3BlcnRpZXMsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2xvYmFsX2Fk ZGVkX2NiLAorZGlmZiAtLWdpdCBzcmMvcGlwZXdpcmUuYyBzcmMvcGlwZXdpcmUuYworaW5kZXgg NzkzYTM3OC4uMTYyY2Q1NSAxMDA2NDQKKy0tLSBzcmMvcGlwZXdpcmUuYworKysrIHNyYy9waXBl d2lyZS5jCitAQCAtMjEsNiArMjEsNyBAQAorICNpbmNsdWRlIDxlcnJuby5oPgorICNpbmNsdWRl IDxnbGliLmg+CisgI2luY2x1ZGUgPHBpcGV3aXJlL3BpcGV3aXJlLmg+CisrI2luY2x1ZGUgPHNw YS91dGlscy9yZXN1bHQuaD4KKyAKKyAjaW5jbHVkZSAicGlwZXdpcmUuaCIKKyAKK0BAIC0zNiwy NyArMzcsMjUgQEAgc3RhdGljIGdib29sZWFuIGlzX3BpcGV3aXJlX2luaXRpYWxpemVkID0gRkFM U0U7Cisgc3RhdGljIHZvaWQKKyByZWdpc3RyeV9ldmVudF9nbG9iYWwgKHZvaWQgKnVzZXJfZGF0 YSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGlkLAorLSAgICAgICAgICAgICAg ICAgICAgICAgdWludDMyX3QgcGFyZW50X2lkLAorICAgICAgICAgICAgICAgICAgICAgICAgdWlu dDMyX3QgcGVybWlzc2lvbnMsCistICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB0eXBl LAorKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqdHlwZSwKKyAgICAgICAgICAg ICAgICAgICAgICAgIHVpbnQzMl90IHZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBzdHJ1Y3Qgc3BhX2RpY3QgKnByb3BzKQorIHsKKyAgIFBpcGVXaXJlUmVtb3RlICpyZW1v dGUgPSB1c2VyX2RhdGE7CistICBzdHJ1Y3QgcHdfdHlwZSAqY29yZV90eXBlID0gcHdfY29yZV9n ZXRfdHlwZSAocmVtb3RlLT5jb3JlKTsKKyAgIGNvbnN0IHN0cnVjdCBzcGFfZGljdF9pdGVtICpm YWN0b3J5X29iamVjdF90eXBlOworICAgUGlwZVdpcmVHbG9iYWwgKmdsb2JhbDsKKyAKKyAgIGds b2JhbCA9IGdfbmV3MCAoUGlwZVdpcmVHbG9iYWwsIDEpOworICAgKmdsb2JhbCA9IChQaXBlV2ly ZUdsb2JhbCkgeworLSAgICAucGFyZW50X2lkID0gcGFyZW50X2lkLAorKyAgICAucGFyZW50X2lk ID0gaWQsCisgICB9OworIAorICAgZ19oYXNoX3RhYmxlX2luc2VydCAocmVtb3RlLT5nbG9iYWxz LCBHSU5UX1RPX1BPSU5URVIgKGlkKSwgZ2xvYmFsKTsKKyAgIGlmIChyZW1vdGUtPmdsb2JhbF9h ZGRlZF9jYikKKyAgICAgcmVtb3RlLT5nbG9iYWxfYWRkZWRfY2IgKHJlbW90ZSwgaWQsIHR5cGUs IHByb3BzLCByZW1vdGUtPnVzZXJfZGF0YSk7CisgCistICBpZiAodHlwZSAhPSBjb3JlX3R5cGUt PmZhY3RvcnkpCisrICBpZiAoc3RyY21wKHR5cGUsIFBXX1RZUEVfSU5URVJGQUNFX0ZhY3Rvcnkp ICE9IDApCisgICAgIHJldHVybjsKKyAKKyAgIGZhY3Rvcnlfb2JqZWN0X3R5cGUgPSBzcGFfZGlj dF9sb29rdXBfaXRlbSAocHJvcHMsICJmYWN0b3J5LnR5cGUubmFtZSIpOworQEAgLTgxLDggKzgw LDggQEAgcmVnaXN0cnlfZXZlbnRfZ2xvYmFsX3JlbW92ZSAodm9pZCAqdXNlcl9kYXRhLAorICAg Z19oYXNoX3RhYmxlX3JlbW92ZSAocmVtb3RlLT5nbG9iYWxzLCBHSU5UX1RPX1BPSU5URVIgKGlk KSk7CisgfQorIAorLXN0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfcmVnaXN0cnlfcHJveHlfZXZlbnRz IHJlZ2lzdHJ5X2V2ZW50cyA9IHsKKy0gIFBXX1ZFUlNJT05fUkVHSVNUUllfUFJPWFlfRVZFTlRT LAorK3N0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfcmVnaXN0cnlfZXZlbnRzIHJlZ2lzdHJ5X2V2ZW50 cyA9IHsKKysgIFBXX1ZFUlNJT05fUkVHSVNUUllfRVZFTlRTLAorICAgLmdsb2JhbCA9IHJlZ2lz dHJ5X2V2ZW50X2dsb2JhbCwKKyAgIC5nbG9iYWxfcmVtb3ZlID0gcmVnaXN0cnlfZXZlbnRfZ2xv YmFsX3JlbW92ZSwKKyB9OworQEAgLTkwLDcgKzg5LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBw d19yZWdpc3RyeV9wcm94eV9ldmVudHMgcmVnaXN0cnlfZXZlbnRzID0geworIHZvaWQKKyBwaXBl d2lyZV9yZW1vdGVfcm91bmR0cmlwIChQaXBlV2lyZVJlbW90ZSAqcmVtb3RlKQorIHsKKy0gIHB3 X2NvcmVfcHJveHlfc3luYyAocmVtb3RlLT5jb3JlX3Byb3h5LCArK3JlbW90ZS0+c3luY19zZXEp OworKyAgcmVtb3RlLT5zeW5jX3NlcSA9IHB3X2NvcmVfc3luYyAocmVtb3RlLT5jb3JlLCBQV19J RF9DT1JFLCByZW1vdGUtPnN5bmNfc2VxKTsKKyAgIHB3X21haW5fbG9vcF9ydW4gKHJlbW90ZS0+ bG9vcCk7CisgfQorIAorQEAgLTk4LDE2ICs5NywxMyBAQCBzdGF0aWMgZ2Jvb2xlYW4KKyBkaXNj b3Zlcl9ub2RlX2ZhY3Rvcnlfc3luYyAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgR0Vycm9yICoqZXJyb3IpCisgeworLSAgc3RydWN0IHB3X3R5 cGUgKmNvcmVfdHlwZSA9IHB3X2NvcmVfZ2V0X3R5cGUgKHJlbW90ZS0+Y29yZSk7CistICBzdHJ1 Y3QgcHdfcmVnaXN0cnlfcHJveHkgKnJlZ2lzdHJ5X3Byb3h5OworKyAgc3RydWN0IHB3X3JlZ2lz dHJ5ICpyZWdpc3RyeTsKKyAKKy0gIHJlZ2lzdHJ5X3Byb3h5ID0gcHdfY29yZV9wcm94eV9nZXRf cmVnaXN0cnkgKHJlbW90ZS0+Y29yZV9wcm94eSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvcmVfdHlwZS0+cmVnaXN0cnksCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQV19WRVJTSU9OX1JFR0lTVFJZLCAw KTsKKy0gIHB3X3JlZ2lzdHJ5X3Byb3h5X2FkZF9saXN0ZW5lciAocmVnaXN0cnlfcHJveHksCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZyZW1vdGUtPnJlZ2lzdHJ5X2xpc3Rl bmVyLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcmVnaXN0cnlfZXZlbnRz LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZW1vdGUpOworKyAgcmVnaXN0 cnkgPSBwd19jb3JlX2dldF9yZWdpc3RyeSAocmVtb3RlLT5jb3JlLCBQV19WRVJTSU9OX1JFR0lT VFJZLCAwKTsKKysgIHB3X3JlZ2lzdHJ5X2FkZF9saXN0ZW5lciAocmVnaXN0cnksCisrICAgICAg ICAgICAgICAgICAgICAgICAgICAgICZyZW1vdGUtPnJlZ2lzdHJ5X2xpc3RlbmVyLAorKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAmcmVnaXN0cnlfZXZlbnRzLAorKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICByZW1vdGUpOworIAorICAgcGlwZXdpcmVfcmVtb3RlX3JvdW5kdHJpcCAo cmVtb3RlKTsKKyAKK0BAIC0xMjIsNTkgKzExOCwzNSBAQCBkaXNjb3Zlcl9ub2RlX2ZhY3Rvcnlf c3luYyAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKyB9CisgCisgc3RhdGljIHZvaWQKKy1vbl9z dGF0ZV9jaGFuZ2VkICh2b2lkICp1c2VyX2RhdGEsCistICAgICAgICAgICAgICAgICAgZW51bSBw d19yZW1vdGVfc3RhdGUgb2xkLAorLSAgICAgICAgICAgICAgICAgIGVudW0gcHdfcmVtb3RlX3N0 YXRlIHN0YXRlLAorLSAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9yKQorK2NvcmVf ZXZlbnRfZXJyb3IgKHZvaWQgICAgICAgKnVzZXJfZGF0YSwKKysgICAgICAgICAgICAgICAgICB1 aW50MzJfdCAgICBpZCwKKysJCSAgaW50ICAgICAgICAgc2VxLAorKwkJICBpbnQgICAgICAgICBy ZXMsCisrCQkgIGNvbnN0IGNoYXIgKm1lc3NhZ2UpCisgeworICAgUGlwZVdpcmVSZW1vdGUgKnJl bW90ZSA9IHVzZXJfZGF0YTsKKyAKKy0gIHN3aXRjaCAoc3RhdGUpCisrICBpZiAoaWQgPT0gUFdf SURfQ09SRSkKKyAgICAgeworLSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9FUlJPUjoKKy0gICAg ICBpZiAoIXJlbW90ZS0+ZXJyb3IpCistICAgICAgICB7CistICAgICAgICAgIGdfc2V0X2Vycm9y ICgmcmVtb3RlLT5lcnJvciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCistICAgICAg ICAgICAgICAgICAgICAgICAiJXMiLCBlcnJvcik7CistICAgICAgICB9CisrICAgICAgZ19zZXRf ZXJyb3IgKCZyZW1vdGUtPmVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9SX0ZBSUxFRCwKKysg ICAgICAgICAgICAgICAgICIlcyIsIG1lc3NhZ2UpOworICAgICAgIHB3X21haW5fbG9vcF9xdWl0 IChyZW1vdGUtPmxvb3ApOworLSAgICAgIGJyZWFrOworLSAgICBjYXNlIFBXX1JFTU9URV9TVEFU RV9VTkNPTk5FQ1RFRDoKKy0gICAgICBpZiAoIXJlbW90ZS0+ZXJyb3IpCistICAgICAgICB7Cist ICAgICAgICAgIGdfc2V0X2Vycm9yICgmcmVtb3RlLT5lcnJvciwgR19JT19FUlJPUiwgR19JT19F UlJPUl9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICAgICAiRGlzY29ubmVjdGVkIik7Cist ICAgICAgICB9CistICAgICAgcHdfbWFpbl9sb29wX3F1aXQgKHJlbW90ZS0+bG9vcCk7CistICAg ICAgYnJlYWs7CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0NPTk5FQ1RJTkc6CistICAgICAg YnJlYWs7CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0NPTk5FQ1RFRDoKKy0gICAgICBwd19t YWluX2xvb3BfcXVpdCAocmVtb3RlLT5sb29wKTsKKy0gICAgICBicmVhazsKKy0gICAgZGVmYXVs dDoKKy0gICAgICBnX3dhcm5pbmcgKCJVbmtub3duIFBpcGVXaXJlIHN0YXRlIik7CistICAgICAg YnJlYWs7CisgICAgIH0KKyB9CisgCistc3RhdGljIGNvbnN0IHN0cnVjdCBwd19yZW1vdGVfZXZl bnRzIHJlbW90ZV9ldmVudHMgPSB7CistICBQV19WRVJTSU9OX1JFTU9URV9FVkVOVFMsCistICAu c3RhdGVfY2hhbmdlZCA9IG9uX3N0YXRlX2NoYW5nZWQsCistfTsKKy0KKyBzdGF0aWMgdm9pZAor IGNvcmVfZXZlbnRfZG9uZSAodm9pZCAqdXNlcl9kYXRhLAorLSAgICAgICAgICAgICAgICAgdWlu dDMyX3Qgc2VxKQorKyAgICAgICAgICAgICAgICAgdWludDMyX3QgaWQsIGludCBzZXEpCisgewor ICAgUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSA9IHVzZXJfZGF0YTsKKyAKKy0gIGlmIChyZW1vdGUt PnN5bmNfc2VxID09IHNlcSkKKysgIGlmIChpZCA9PSBQV19JRF9DT1JFICYmIHJlbW90ZS0+c3lu Y19zZXEgPT0gc2VxKQorICAgICBwd19tYWluX2xvb3BfcXVpdCAocmVtb3RlLT5sb29wKTsKKyB9 CisgCistc3RhdGljIGNvbnN0IHN0cnVjdCBwd19jb3JlX3Byb3h5X2V2ZW50cyBjb3JlX2V2ZW50 cyA9IHsKKy0gIFBXX1ZFUlNJT05fQ09SRV9QUk9YWV9FVkVOVFMsCisrc3RhdGljIGNvbnN0IHN0 cnVjdCBwd19jb3JlX2V2ZW50cyBjb3JlX2V2ZW50cyA9IHsKKysgIFBXX1ZFUlNJT05fQ09SRV9F VkVOVFMsCisrICAuZXJyb3IgPSBjb3JlX2V2ZW50X2Vycm9yLAorICAgLmRvbmUgPSBjb3JlX2V2 ZW50X2RvbmUsCisgfTsKKyAKK0BAIC0yMzcsOCArMjA5LDggQEAgdm9pZAorIHBpcGV3aXJlX3Jl bW90ZV9kZXN0cm95IChQaXBlV2lyZVJlbW90ZSAqcmVtb3RlKQorIHsKKyAgIGdfY2xlYXJfcG9p bnRlciAoJnJlbW90ZS0+Z2xvYmFscywgZ19oYXNoX3RhYmxlX2Rlc3Ryb3kpOworLSAgZ19jbGVh cl9wb2ludGVyICgmcmVtb3RlLT5yZW1vdGUsIHB3X3JlbW90ZV9kZXN0cm95KTsKKy0gIGdfY2xl YXJfcG9pbnRlciAoJnJlbW90ZS0+Y29yZSwgcHdfY29yZV9kZXN0cm95KTsKKysgIGdfY2xlYXJf cG9pbnRlciAoJnJlbW90ZS0+Y29yZSwgcHdfY29yZV9kaXNjb25uZWN0KTsKKysgIGdfY2xlYXJf cG9pbnRlciAoJnJlbW90ZS0+Y29udGV4dCwgcHdfY29udGV4dF9kZXN0cm95KTsKKyAgIGdfY2xl YXJfcG9pbnRlciAoJnJlbW90ZS0+bG9vcCwgcHdfbWFpbl9sb29wX2Rlc3Ryb3kpOworICAgZ19j bGVhcl9lcnJvciAoJnJlbW90ZS0+ZXJyb3IpOworIAorQEAgLTMwNyw2OCArMjc5LDMxIEBAIHBp cGV3aXJlX3JlbW90ZV9uZXdfc3luYyAoc3RydWN0IHB3X3Byb3BlcnRpZXMgKnBpcGV3aXJlX3By b3BlcnRpZXMsCisgICAgICAgcmV0dXJuIE5VTEw7CisgICAgIH0KKyAKKy0gIHJlbW90ZS0+Y29y ZSA9IHB3X2NvcmVfbmV3IChwd19tYWluX2xvb3BfZ2V0X2xvb3AgKHJlbW90ZS0+bG9vcCksIE5V TEwpOworLSAgaWYgKCFyZW1vdGUtPmNvcmUpCisrICByZW1vdGUtPmNvbnRleHQgPSBwd19jb250 ZXh0X25ldyAocHdfbWFpbl9sb29wX2dldF9sb29wIChyZW1vdGUtPmxvb3ApLCBOVUxMLCAwKTsK KysgIGlmICghcmVtb3RlLT5jb250ZXh0KQorICAgICB7CisgICAgICAgcGlwZXdpcmVfcmVtb3Rl X2Rlc3Ryb3kgKHJlbW90ZSk7CisgICAgICAgcHdfcHJvcGVydGllc19mcmVlIChwaXBld2lyZV9w cm9wZXJ0aWVzKTsKKyAgICAgICBnX3NldF9lcnJvciAoZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9f RVJST1JfRkFJTEVELAorLSAgICAgICAgICAgICAgICAgICAiQ291bGRuJ3QgY3JlYXRlIFBpcGVX aXJlIGNvcmUiKTsKKysgICAgICAgICAgICAgICAgICAgIkNvdWxkbid0IGNyZWF0ZSBQaXBlV2ly ZSBjb250ZXh0Iik7CisgICAgICAgcmV0dXJuIE5VTEw7CisgICAgIH0KKyAKKy0gIHJlbW90ZS0+ cmVtb3RlID0gcHdfcmVtb3RlX25ldyAocmVtb3RlLT5jb3JlLCBwaXBld2lyZV9wcm9wZXJ0aWVz LCAwKTsKKy0gIGlmICghcmVtb3RlLT5yZW1vdGUpCisrICByZW1vdGUtPmNvcmUgPSBwd19jb250 ZXh0X2Nvbm5lY3QgKHJlbW90ZS0+Y29udGV4dCwgcGlwZXdpcmVfcHJvcGVydGllcywgMCk7Cisr ICBpZiAoIXJlbW90ZS0+Y29yZSkKKyAgICAgeworICAgICAgIHBpcGV3aXJlX3JlbW90ZV9kZXN0 cm95IChyZW1vdGUpOworICAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwgR19JT19FUlJPUiwgR19J T19FUlJPUl9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBjcmVhdGUgUGlw ZVdpcmUgcmVtb3RlIik7CisrICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBjb25uZWN0IHRv IFBpcGVXaXJlIik7CisgICAgICAgcmV0dXJuIE5VTEw7CisgICAgIH0KKyAKKyAgIHJlbW90ZS0+ Z2xvYmFscyA9IGdfaGFzaF90YWJsZV9uZXdfZnVsbCAoTlVMTCwgTlVMTCwgTlVMTCwgZ19mcmVl KTsKKyAKKy0gIHB3X3JlbW90ZV9hZGRfbGlzdGVuZXIgKHJlbW90ZS0+cmVtb3RlLAorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgJnJlbW90ZS0+cmVtb3RlX2xpc3RlbmVyLAorLSAgICAgICAg ICAgICAgICAgICAgICAgICAgJnJlbW90ZV9ldmVudHMsCistICAgICAgICAgICAgICAgICAgICAg ICAgICByZW1vdGUpOworLQorLSAgaWYgKHB3X3JlbW90ZV9jb25uZWN0IChyZW1vdGUtPnJlbW90 ZSkgIT0gMCkKKy0gICAgeworLSAgICAgIHBpcGV3aXJlX3JlbW90ZV9kZXN0cm95IChyZW1vdGUp OworLSAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlM RUQsCistICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBjb25uZWN0IFBpcGVXaXJlIHJlbW90 ZSIpOworLSAgICAgIHJldHVybiBOVUxMOworLSAgICB9CistCistICBwd19tYWluX2xvb3BfcnVu IChyZW1vdGUtPmxvb3ApOworLQorLSAgc3dpdGNoIChwd19yZW1vdGVfZ2V0X3N0YXRlIChyZW1v dGUtPnJlbW90ZSwgTlVMTCkpCistICAgIHsKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfRVJS T1I6CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX1VOQ09OTkVDVEVEOgorLSAgICAgICplcnJv ciA9IGdfc3RlYWxfcG9pbnRlciAoJnJlbW90ZS0+ZXJyb3IpOworLSAgICAgIHBpcGV3aXJlX3Jl bW90ZV9kZXN0cm95IChyZW1vdGUpOworLSAgICAgIHJldHVybiBOVUxMOworLSAgICBjYXNlIFBX X1JFTU9URV9TVEFURV9DT05ORUNUSU5HOgorLSAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwgR19J T19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCistICAgICAgICAgICAgICAgICAgICJQaXBlV2ly ZSBsb29wIHN0b3BwZWQgdW5leHBlY3RlZGx5Iik7CistICAgICAgcGlwZXdpcmVfcmVtb3RlX2Rl c3Ryb3kgKHJlbW90ZSk7CistICAgICAgcmV0dXJuIE5VTEw7CistICAgIGNhc2UgUFdfUkVNT1RF X1NUQVRFX0NPTk5FQ1RFRDoKKy0gICAgICBicmVhazsKKy0gICAgZGVmYXVsdDoKKy0gICAgICBn X3NldF9lcnJvciAoZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVELAorLSAgICAg ICAgICAgICAgICAgICAiVW5leHBlY3RlZCBQaXBlV2lyZSBzdGF0ZSIpOworLSAgICAgIHBpcGV3 aXJlX3JlbW90ZV9kZXN0cm95IChyZW1vdGUpOworLSAgICAgIHJldHVybiBOVUxMOworLSAgICB9 CistCistICByZW1vdGUtPmNvcmVfcHJveHkgPSBwd19yZW1vdGVfZ2V0X2NvcmVfcHJveHkgKHJl bW90ZS0+cmVtb3RlKTsKKy0gIHB3X2NvcmVfcHJveHlfYWRkX2xpc3RlbmVyIChyZW1vdGUtPmNv cmVfcHJveHksCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJlbW90ZS0+Y29yZV9s aXN0ZW5lciwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY29yZV9ldmVudHMsCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3RlKTsKKysgIHB3X2NvcmVfYWRkX2xp c3RlbmVyIChyZW1vdGUtPmNvcmUsCisrICAgICAgICAgICAgICAgICAgICAgICAgJnJlbW90ZS0+ Y29yZV9saXN0ZW5lciwKKysgICAgICAgICAgICAgICAgICAgICAgICAmY29yZV9ldmVudHMsCisr ICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3RlKTsKKyAKKyAgIGlmICghZGlzY292ZXJfbm9k ZV9mYWN0b3J5X3N5bmMgKHJlbW90ZSwgZXJyb3IpKQorICAgICB7CitkaWZmIC0tZ2l0IHNyYy9w aXBld2lyZS5oIHNyYy9waXBld2lyZS5oCitpbmRleCAwZjFiZjU0Li5iZjQ4ZDVlIDEwMDY0NAor LS0tIHNyYy9waXBld2lyZS5oCisrKysgc3JjL3BpcGV3aXJlLmgKK0BAIC0zMiw3ICszMiw3IEBA IHR5cGVkZWYgc3RydWN0IF9QaXBlV2lyZUdsb2JhbAorIAorIHR5cGVkZWYgdm9pZCAoKiBQaXBl V2lyZUdsb2JhbEFkZGVkQ2FsbGJhY2spIChQaXBlV2lyZVJlbW90ZSAqcmVtb3RlLAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpZCwKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdHlw ZSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg Y2hhciAqdHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3Qgc3RydWN0IHNwYV9kaWN0ICpwcm9wcywKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZ3BvaW50ZXIgdXNlcl9kYXRhKTsKKyAKK0BAIC00Mywx MyArNDMsMTEgQEAgdHlwZWRlZiB2b2lkICgqIFBpcGVXaXJlR2xvYmFsUmVtb3ZlZENhbGxiYWNr KSAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKyBzdHJ1Y3QgX1BpcGVXaXJlUmVtb3RlCisgewor ICAgc3RydWN0IHB3X21haW5fbG9vcCAqbG9vcDsKKysgIHN0cnVjdCBwd19jb250ZXh0ICpjb250 ZXh0OworICAgc3RydWN0IHB3X2NvcmUgKmNvcmU7CistICBzdHJ1Y3QgcHdfcmVtb3RlICpyZW1v dGU7CistICBzdHJ1Y3Qgc3BhX2hvb2sgcmVtb3RlX2xpc3RlbmVyOworLQorLSAgc3RydWN0IHB3 X2NvcmVfcHJveHkgKmNvcmVfcHJveHk7CisgICBzdHJ1Y3Qgc3BhX2hvb2sgY29yZV9saXN0ZW5l cjsKKy0gIHVpbnQzMl90IHN5bmNfc2VxOworKworKyAgaW50IHN5bmNfc2VxOworIAorICAgc3Ry dWN0IHNwYV9ob29rIHJlZ2lzdHJ5X2xpc3RlbmVyOworIAorZGlmZiAtLWdpdCBzcmMvc2NyZWVu LWNhc3QuYyBzcmMvc2NyZWVuLWNhc3QuYworaW5kZXggNzg4MWRkYy4uMTY3NzA1MCAxMDA2NDQK Ky0tLSBzcmMvc2NyZWVuLWNhc3QuYworKysrIHNyYy9zY3JlZW4tY2FzdC5jCitAQCAtMzEsMTAg KzMxLDEwIEBACisgI2luY2x1ZGUgInhkcC1pbXBsLWRidXMuaCIKKyAjaW5jbHVkZSAieGRwLXV0 aWxzLmgiCisgCistI2RlZmluZSBQRVJNSVNTSU9OX0lURU0oaXRlbV9rZXksIGl0ZW1fdmFsdWUp IFwKKy0gICgoc3RydWN0IHNwYV9kaWN0X2l0ZW0pIHsgXAorLSAgICAua2V5ID0gaXRlbV9rZXks IFwKKy0gICAgLnZhbHVlID0gaXRlbV92YWx1ZSBcCisrI2RlZmluZSBQRVJNSVNTSU9OX0lURU0o aXRlbV9pZCwgaXRlbV9wZXJtaXNzaW9ucykgXAorKyAgKChzdHJ1Y3QgcHdfcGVybWlzc2lvbikg eyBcCisrICAgIC5pZCA9IGl0ZW1faWQsIFwKKysgICAgLnBlcm1pc3Npb25zID0gaXRlbV9wZXJt aXNzaW9ucyBcCisgICB9KQorIAorIHR5cGVkZWYgc3RydWN0IF9TY3JlZW5DYXN0IFNjcmVlbkNh c3Q7CitAQCAtNTE3LDQyICs1MTcsOSBAQCBzY3JlZW5fY2FzdF9zdHJlYW1fZ2V0X3BpcGV3aXJl X25vZGVfaWQgKFNjcmVlbkNhc3RTdHJlYW0gKnN0cmVhbSkKKyAgIHJldHVybiBzdHJlYW0tPmlk OworIH0KKyAKKy1zdGF0aWMgdm9pZAorLWFwcGVuZF9wYXJlbnRfcGVybWlzc2lvbnMgKFBpcGVX aXJlUmVtb3RlICpyZW1vdGUsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgR0FycmF5ICpw ZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgIEdMaXN0ICoqc3Ry aW5nX3N0YXNoLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgIFBpcGVXaXJlR2xvYmFsICpn bG9iYWwsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcGVybWlzc2lv bikKKy17CistICBQaXBlV2lyZUdsb2JhbCAqcGFyZW50OworLSAgY2hhciAqcGFyZW50X3Blcm1p c3Npb25fdmFsdWU7CistCistICBpZiAoZ2xvYmFsLT5wYXJlbnRfaWQgPT0gMCkKKy0gICAgcmV0 dXJuOworLQorLSAgcGFyZW50ID0gZ19oYXNoX3RhYmxlX2xvb2t1cCAocmVtb3RlLT5nbG9iYWxz LCBHSU5UX1RPX1BPSU5URVIgKGdsb2JhbC0+cGFyZW50X2lkKSk7CistCistICBpZiAocGFyZW50 LT5wZXJtaXNzaW9uX3NldCkKKy0gICAgcmV0dXJuOworLSAgcGFyZW50LT5wZXJtaXNzaW9uX3Nl dCA9IFRSVUU7CistCistICBhcHBlbmRfcGFyZW50X3Blcm1pc3Npb25zIChyZW1vdGUsIHBlcm1p c3Npb25faXRlbXMsIHN0cmluZ19zdGFzaCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg IHBhcmVudCwgcGVybWlzc2lvbik7CistCistICBwYXJlbnRfcGVybWlzc2lvbl92YWx1ZSA9IGdf c3RyZHVwX3ByaW50ZiAoIiV1OiVzIiwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBnbG9iYWwtPnBhcmVudF9pZCwKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBwZXJtaXNzaW9uKTsKKy0gICpzdHJpbmdfc3Rhc2ggPSBn X2xpc3RfcHJlcGVuZCAoKnN0cmluZ19zdGFzaCwgcGFyZW50X3Blcm1pc3Npb25fdmFsdWUpOwor LQorLSAgZ19hcnJheV9hcHBlbmRfdmFsIChwZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAgICAgICAg ICAgICAgICAgICBQRVJNSVNTSU9OX0lURU0gKFBXX0NPUkVfUFJPWFlfUEVSTUlTU0lPTlNfR0xP QkFMLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmVudF9wZXJt aXNzaW9uX3ZhbHVlKSk7CistfQorLQorIHN0YXRpYyB2b2lkCisgYXBwZW5kX3N0cmVhbV9wZXJt aXNzaW9ucyAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICBHQXJyYXkgKnBlcm1pc3Npb25faXRlbXMsCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgR0xpc3QgKipzdHJpbmdfc3Rhc2gsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0xp c3QgKnN0cmVhbXMpCisgeworICAgR0xpc3QgKmw7CitAQCAtNTYxLDIxICs1MjgsMTAgQEAgYXBw ZW5kX3N0cmVhbV9wZXJtaXNzaW9ucyAoUGlwZVdpcmVSZW1vdGUgKnJlbW90ZSwKKyAgICAgewor ICAgICAgIFNjcmVlbkNhc3RTdHJlYW0gKnN0cmVhbSA9IGwtPmRhdGE7CisgICAgICAgdWludDMy X3Qgc3RyZWFtX2lkOworLSAgICAgIFBpcGVXaXJlR2xvYmFsICpzdHJlYW1fZ2xvYmFsOworLSAg ICAgIGNoYXIgKnN0cmVhbV9wZXJtaXNzaW9uX3ZhbHVlOworIAorICAgICAgIHN0cmVhbV9pZCA9 IHNjcmVlbl9jYXN0X3N0cmVhbV9nZXRfcGlwZXdpcmVfbm9kZV9pZCAoc3RyZWFtKTsKKy0gICAg ICBzdHJlYW1fZ2xvYmFsID0gZ19oYXNoX3RhYmxlX2xvb2t1cCAocmVtb3RlLT5nbG9iYWxzLAor LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHSU5UX1RPX1BPSU5U RVIgKHN0cmVhbV9pZCkpOworLQorLSAgICAgIGFwcGVuZF9wYXJlbnRfcGVybWlzc2lvbnMgKHJl bW90ZSwgcGVybWlzc2lvbl9pdGVtcywgc3RyaW5nX3N0YXNoLAorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHN0cmVhbV9nbG9iYWwsICJyLS0iKTsKKy0KKy0gICAgICBzdHJlYW1f cGVybWlzc2lvbl92YWx1ZSA9IGdfc3RyZHVwX3ByaW50ZiAoIiV1OnJ3eCIsIHN0cmVhbV9pZCk7 CistICAgICAgKnN0cmluZ19zdGFzaCA9IGdfbGlzdF9wcmVwZW5kICgqc3RyaW5nX3N0YXNoLCBz dHJlYW1fcGVybWlzc2lvbl92YWx1ZSk7CisgICAgICAgZ19hcnJheV9hcHBlbmRfdmFsIChwZXJt aXNzaW9uX2l0ZW1zLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgUEVSTUlTU0lPTl9JVEVN IChQV19DT1JFX1BST1hZX1BFUk1JU1NJT05TX0dMT0JBTCwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc3RyZWFtX3Blcm1pc3Npb25fdmFsdWUpKTsKKysgICAg ICAgICAgICAgICAgICAgICAgICAgIFBFUk1JU1NJT05fSVRFTSAoc3RyZWFtX2lkLCBQV19QRVJN X1JXWCkpOworICAgICB9CisgfQorIAorQEAgLTU4Nyw5ICs1NDMsNiBAQCBvcGVuX3BpcGV3aXJl X3NjcmVlbl9jYXN0X3JlbW90ZSAoY29uc3QgY2hhciAqYXBwX2lkLAorICAgc3RydWN0IHB3X3By b3BlcnRpZXMgKnBpcGV3aXJlX3Byb3BlcnRpZXM7CisgICBQaXBlV2lyZVJlbW90ZSAqcmVtb3Rl OworICAgZ19hdXRvcHRyKEdBcnJheSkgcGVybWlzc2lvbl9pdGVtcyA9IE5VTEw7CistICBjaGFy ICpub2RlX2ZhY3RvcnlfcGVybWlzc2lvbl9zdHJpbmc7CistICBHTGlzdCAqc3RyaW5nX3N0YXNo ID0gTlVMTDsKKy0gIHN0cnVjdCBzcGFfZGljdCAqcGVybWlzc2lvbl9kaWN0OworICAgUGlwZVdp cmVHbG9iYWwgKm5vZGVfZ2xvYmFsOworIAorICAgcGlwZXdpcmVfcHJvcGVydGllcyA9IHB3X3By b3BlcnRpZXNfbmV3ICgicGlwZXdpcmUuYWNjZXNzLnBvcnRhbC5hcHBfaWQiLCBhcHBfaWQsCitA QCAtNjAzLDQ4ICs1NTYsMzEgQEAgb3Blbl9waXBld2lyZV9zY3JlZW5fY2FzdF9yZW1vdGUgKGNv bnN0IGNoYXIgKmFwcF9pZCwKKyAKKyAgIHBlcm1pc3Npb25faXRlbXMgPSBnX2FycmF5X25ldyAo RkFMU0UsIFRSVUUsIHNpemVvZiAoc3RydWN0IHNwYV9kaWN0X2l0ZW0pKTsKKyAKKy0gIC8qCist ICAgKiBIaWRlIGFsbCBleGlzdGluZyBhbmQgZnV0dXJlIG5vZGVzIChleGNlcHQgdGhlIG9uZXMg d2UgZXhwbGljaXRseSBsaXN0IGJlbG93LgorLSAgICovCistICBnX2FycmF5X2FwcGVuZF92YWwg KHBlcm1pc3Npb25faXRlbXMsCistICAgICAgICAgICAgICAgICAgICAgIFBFUk1JU1NJT05fSVRF TSAoUFdfQ09SRV9QUk9YWV9QRVJNSVNTSU9OU19FWElTVElORywKKy0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAiLS0tIikpOworLSAgZ19hcnJheV9hcHBlbmRfdmFsIChw ZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAgICAgICAgICAgICAgICAgICBQRVJNSVNTSU9OX0lURU0g KFBXX0NPUkVfUFJPWFlfUEVSTUlTU0lPTlNfREVGQVVMVCwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiLS0tIikpOworLQorICAgLyoKKyAgICAqIFBpcGVXaXJlOklu dGVyZmFjZTpDb3JlCisgICAgKiBOZWVkcyByd3ggdG8gYmUgYWJsZSBjcmVhdGUgdGhlIHNpbmsg bm9kZSB1c2luZyB0aGUgY3JlYXRlLW9iamVjdCBtZXRob2QKKyAgICAqLworICAgZ19hcnJheV9h cHBlbmRfdmFsIChwZXJtaXNzaW9uX2l0ZW1zLAorLSAgICAgICAgICAgICAgICAgICAgICBQRVJN SVNTSU9OX0lURU0gKFBXX0NPUkVfUFJPWFlfUEVSTUlTU0lPTlNfR0xPQkFMLAorLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIwOnJ3eCIpKTsKKysgICAgICAgICAgICAg ICAgICAgICAgUEVSTUlTU0lPTl9JVEVNIChQV19JRF9DT1JFLCBQV19QRVJNX1JXWCkpOworIAor ICAgLyoKKyAgICAqIFBpcGVXaXJlOkludGVyZmFjZTpOb2RlRmFjdG9yeQorICAgICogTmVlZHMg ci0tIHNvIGl0IGNhbiBiZSBwYXNzZWQgdG8gY3JlYXRlLW9iamVjdCB3aGVuIGNyZWF0aW5nIHRo ZSBzaW5rIG5vZGUuCisgICAgKi8KKy0gIG5vZGVfZmFjdG9yeV9wZXJtaXNzaW9uX3N0cmluZyA9 IGdfc3RyZHVwX3ByaW50ZiAoIiVkOnItLSIsCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHJlbW90ZS0+bm9kZV9mYWN0b3J5X2lkKTsKKy0gIHN0 cmluZ19zdGFzaCA9IGdfbGlzdF9wcmVwZW5kIChzdHJpbmdfc3Rhc2gsIG5vZGVfZmFjdG9yeV9w ZXJtaXNzaW9uX3N0cmluZyk7CisgICBnX2FycmF5X2FwcGVuZF92YWwgKHBlcm1pc3Npb25faXRl bXMsCistICAgICAgICAgICAgICAgICAgICAgIFBFUk1JU1NJT05fSVRFTSAoUFdfQ09SRV9QUk9Y WV9QRVJNSVNTSU9OU19HTE9CQUwsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgbm9kZV9mYWN0b3J5X3Blcm1pc3Npb25fc3RyaW5nKSk7CistICBub2RlX2dsb2JhbCA9 IGdfaGFzaF90YWJsZV9sb29rdXAgKHJlbW90ZS0+Z2xvYmFscywKKy0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgR0lOVF9UT19QT0lOVEVSIChyZW1vdGUtPm5vZGVfZmFjdG9y eV9pZCkpOworLSAgYXBwZW5kX3BhcmVudF9wZXJtaXNzaW9ucyAocmVtb3RlLCBwZXJtaXNzaW9u X2l0ZW1zLCAmc3RyaW5nX3N0YXNoLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9k ZV9nbG9iYWwsICJyLS0iKTsKKysgICAgICAgICAgICAgICAgICAgICAgUEVSTUlTU0lPTl9JVEVN IChyZW1vdGUtPm5vZGVfZmFjdG9yeV9pZCwgUFdfUEVSTV9SKSk7CisgCistICBhcHBlbmRfc3Ry ZWFtX3Blcm1pc3Npb25zIChyZW1vdGUsIHBlcm1pc3Npb25faXRlbXMsICZzdHJpbmdfc3Rhc2gs IHN0cmVhbXMpOworKyAgYXBwZW5kX3N0cmVhbV9wZXJtaXNzaW9ucyAocmVtb3RlLCBwZXJtaXNz aW9uX2l0ZW1zLCBzdHJlYW1zKTsKKyAKKy0gIHBlcm1pc3Npb25fZGljdCA9CistICAgICZTUEFf RElDVF9JTklUICgoc3RydWN0IHNwYV9kaWN0X2l0ZW0gKikgcGVybWlzc2lvbl9pdGVtcy0+ZGF0 YSwKKy0gICAgICAgICAgICAgICAgICAgIHBlcm1pc3Npb25faXRlbXMtPmxlbik7CistICBwd19j b3JlX3Byb3h5X3Blcm1pc3Npb25zIChwd19yZW1vdGVfZ2V0X2NvcmVfcHJveHkgKHJlbW90ZS0+ cmVtb3RlKSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcm1pc3Npb25fZGljdCk7 CisrICAvKgorKyAgICogSGlkZSBhbGwgZXhpc3RpbmcgYW5kIGZ1dHVyZSBub2RlcyAoZXhjZXB0 IHRoZSBvbmVzIHdlIGV4cGxpY2l0bHkgbGlzdCBhYm92ZSkuCisrICAgKi8KKysgIGdfYXJyYXlf YXBwZW5kX3ZhbCAocGVybWlzc2lvbl9pdGVtcywKKysgICAgICAgICAgICAgICAgICAgICAgUEVS TUlTU0lPTl9JVEVNIChQV19JRF9BTlksIDApKTsKKyAKKy0gIGdfbGlzdF9mcmVlX2Z1bGwgKHN0 cmluZ19zdGFzaCwgZ19mcmVlKTsKKysgIHB3X2NsaWVudF91cGRhdGVfcGVybWlzc2lvbnMgKHB3 X2NvcmVfZ2V0X2NsaWVudChyZW1vdGUtPmNvcmUpLAorKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcGVybWlzc2lvbl9pdGVtcy0+bGVuLAorKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKGNvbnN0IHN0cnVjdCBwd19wZXJtaXNzaW9uICopcGVybWlzc2lvbl9pdGVtcy0+ ZGF0YSk7CisgCisgICBwaXBld2lyZV9yZW1vdGVfcm91bmR0cmlwIChyZW1vdGUpOworIAorQEAg LTk0Myw3ICs4NzksNyBAQCBoYW5kbGVfb3Blbl9waXBld2lyZV9yZW1vdGUgKFhkcFNjcmVlbkNh c3QgKm9iamVjdCwKKyAgICAgfQorIAorICAgb3V0X2ZkX2xpc3QgPSBnX3VuaXhfZmRfbGlzdF9u ZXcgKCk7CistICBmZCA9IHB3X3JlbW90ZV9zdGVhbF9mZCAocmVtb3RlLT5yZW1vdGUpOworKyAg ZmQgPSBwd19jb3JlX3N0ZWFsX2ZkIChyZW1vdGUtPmNvcmUpOworICAgZmRfaWQgPSBnX3VuaXhf ZmRfbGlzdF9hcHBlbmQgKG91dF9mZF9saXN0LCBmZCwgJmVycm9yKTsKKyAgIGNsb3NlIChmZCk7 CisgICBwaXBld2lyZV9yZW1vdGVfZGVzdHJveSAocmVtb3RlKTsKZGlmZiAtLWdpdCBhL3NyY3Br Z3MveGRnLWRlc2t0b3AtcG9ydGFsL3RlbXBsYXRlIGIvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0 YWwvdGVtcGxhdGUKaW5kZXggZWI4YTQ2MDJmNWQuLjExMzZiNmE2ZTBlIDEwMDY0NAotLS0gYS9z cmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3hkZy1kZXNr dG9wLXBvcnRhbC90ZW1wbGF0ZQpAQCAtMSwxMCArMSwxMCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAneGRnLWRlc2t0b3AtcG9ydGFsJwogcGtnbmFtZT14ZGctZGVza3RvcC1wb3J0YWwKIHZlcnNp b249MS42LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1waXBld2lyZSAtLWVuYWJsZS1nZW9jbHVlIC0t ZGlzYWJsZS1saWJwb3J0YWwiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2xpYi1kZXZl bCIKK2hvc3RtYWtlZGVwZW5kcz0iYXV0b21ha2UgbGlidG9vbCBnZXR0ZXh0LWRldmVsIHBrZy1j b25maWcgZ2xpYi1kZXZlbCIKIG1ha2VkZXBlbmRzPSJmbGF0cGFrLWRldmVsIGZ1c2UtZGV2ZWwg cGlwZXdpcmUtZGV2ZWwgZ2VvY2x1ZTItZGV2ZWwiCiBzaG9ydF9kZXNjPSJQb3J0YWwgZnJvbnRl bmQgc2VydmljZSBmb3IgRmxhdHBhayIKIG1haW50YWluZXI9IkR1bmNhZW4gPGR1bmNhZW5Adm9p ZGxpbnV4Lm9yZz4iCkBAIC0xMyw2ICsxMywxMCBAQCBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIu Y29tL2ZsYXRwYWsveGRnLWRlc2t0b3AtcG9ydGFsIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1 Yi5jb20vZmxhdHBhay8ke3BrZ25hbWV9L3JlbGVhc2VzL2Rvd25sb2FkLyR7dmVyc2lvbn0vJHtw a2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3VtPTg4M2M5YzlhOTI1ZTQ4YWY1NDgx MmI1MzQ3ZjU0NmRkNzc2ZWMyZTI3MDc2YTgzZDVhODEyNmFmNmJhZmI5ZGEKIAorcHJlX2NvbmZp Z3VyZSgpIHsKKwlhdXRvcmVjb25mIC12ZmkKK30KKwogcG9zdF9pbnN0YWxsKCkgewogCXJtIC1y ZiAiJHtERVNURElSfS91c3IvbGliL3N5c3RlbWQiCiB9CgpGcm9tIGI0YWQ5YTM1MDAxYTk0ZjE2 YjkxOGFlYTg1YTIzMDM5NjAyNDM2M2YgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEty aWRzYWRhIFRoYW5hYnVscG9uZyA8c2lybkBvZ3NpdGUubmV0PgpEYXRlOiBUaHUsIDMwIEFwciAy MDIwIDA2OjE3OjE3ICswOTAwClN1YmplY3Q6IFtQQVRDSCA3LzddIG11dHRlcjogcmVidWlsZCBm b3IgcGlwZXdpcmUtMC4zCgotLS0KIHNyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvcGlwZXdpcmUtMC4z LnBhdGNoIHwgNTIxICsrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvbXV0dGVyL3RlbXBs YXRlICAgICAgICAgICAgICAgICAgIHwgICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDUyMiBpbnNl cnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9tdXR0 ZXIvcGF0Y2hlcy9waXBld2lyZS0wLjMucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL211dHRl ci9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaCBiL3NyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvcGlw ZXdpcmUtMC4zLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5l YmZmNjVmYmE4NQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvcGlw ZXdpcmUtMC4zLnBhdGNoCkBAIC0wLDAgKzEsNTIxIEBACitCdWlsZCBtdXR0ZXIgYWdhaW5zdCBw aXBld2lyZS0wLjMsIGJhc2VkIG9uIGEgcGF0Y2ggYXQ6CitodHRwczovL2dpdGxhYi5nbm9tZS5v cmcvR05PTUUvbXV0dGVyLy0vbWVyZ2VfcmVxdWVzdHMvMTA2MgorLS0tIG1lc29uLmJ1aWxkCisr KysgbWVzb24uYnVpbGQKK0BAIC01MCw3ICs1MCw3IEBAIGxpYmlucHV0X3JlcSA9ICc+PSAxLjcn CisgZ2JtX3JlcSA9ICc+PSAxMC4zJworCisgIyBzY3JlZW4gY2FzdCB2ZXJzaW9uIHJlcXVpcmVt ZW50cworLWxpYnBpcGV3aXJlX3JlcSA9ICc+PSAwLjIuNScKKytsaWJwaXBld2lyZV9yZXEgPSAn Pj0gMC4zLjAnCisKKyBnbm9tZSA9IGltcG9ydCgnZ25vbWUnKQorIHBrZyA9IGltcG9ydCgncGtn Y29uZmlnJykKK0BAIC0yNDEsNyArMjQxLDcgQEAgZW5kaWYKKworIGhhdmVfcmVtb3RlX2Rlc2t0 b3AgPSBnZXRfb3B0aW9uKCdyZW1vdGVfZGVza3RvcCcpCisgaWYgaGF2ZV9yZW1vdGVfZGVza3Rv cAorLSAgbGlicGlwZXdpcmVfZGVwID0gZGVwZW5kZW5jeSgnbGlicGlwZXdpcmUtMC4yJywgdmVy c2lvbjogbGlicGlwZXdpcmVfcmVxKQorKyAgbGlicGlwZXdpcmVfZGVwID0gZGVwZW5kZW5jeSgn bGlicGlwZXdpcmUtMC4zJywgdmVyc2lvbjogbGlicGlwZXdpcmVfcmVxKQorIGVuZGlmCisKKyBo YXZlX2ludHJvc3BlY3Rpb24gPSBnZXRfb3B0aW9uKCdpbnRyb3NwZWN0aW9uJykKK2RpZmYgLS1n aXQgYS9zcmMvYmFja2VuZHMvbWV0YS1zY3JlZW4tY2FzdC1zdHJlYW0tc3JjLmMgYi9zcmMvYmFj a2VuZHMvbWV0YS1zY3JlZW4tY2FzdC1zdHJlYW0tc3JjLmMKK2luZGV4IDgyYzVjYmE0MzYuLmJh MWNlOTRhN2UgMTAwNjQ0CistLS0gc3JjL2JhY2tlbmRzL21ldGEtc2NyZWVuLWNhc3Qtc3RyZWFt LXNyYy5jCisrKysgc3JjL2JhY2tlbmRzL21ldGEtc2NyZWVuLWNhc3Qtc3RyZWFtLXNyYy5jCitA QCAtMjksNiArMjksNyBAQAorICNpbmNsdWRlIDxzcGEvcGFyYW0vcHJvcHMuaD4KKyAjaW5jbHVk ZSA8c3BhL3BhcmFtL2Zvcm1hdC11dGlscy5oPgorICNpbmNsdWRlIDxzcGEvcGFyYW0vdmlkZW8v Zm9ybWF0LXV0aWxzLmg+CisrI2luY2x1ZGUgPHNwYS91dGlscy9yZXN1bHQuaD4KKyAjaW5jbHVk ZSA8c3RkaW50Lmg+CisgI2luY2x1ZGUgPHN5cy9tbWFuLmg+CisKK0BAIC02MiwxNSArNjMsNiBA QCBlbnVtCisKKyBzdGF0aWMgZ3VpbnQgc2lnbmFsc1tOX1NJR05BTFNdOworCistdHlwZWRlZiBz dHJ1Y3QgX01ldGFTcGFUeXBlCisteworLSAgc3RydWN0IHNwYV90eXBlX21lZGlhX3R5cGUgbWVk aWFfdHlwZTsKKy0gIHN0cnVjdCBzcGFfdHlwZV9tZWRpYV9zdWJ0eXBlIG1lZGlhX3N1YnR5cGU7 CistICBzdHJ1Y3Qgc3BhX3R5cGVfZm9ybWF0X3ZpZGVvIGZvcm1hdF92aWRlbzsKKy0gIHN0cnVj dCBzcGFfdHlwZV92aWRlb19mb3JtYXQgdmlkZW9fZm9ybWF0OworLSAgdWludDMyX3QgbWV0YV9j dXJzb3I7CistfSBNZXRhU3BhVHlwZTsKKy0KKyB0eXBlZGVmIHN0cnVjdCBfTWV0YVBpcGVXaXJl U291cmNlCisgeworICAgR1NvdXJjZSBiYXNlOworQEAgLTgyLDE5ICs3NCwxOSBAQCB0eXBlZGVm IHN0cnVjdCBfTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRlCisgeworICAgTWV0YVNjcmVl bkNhc3RTdHJlYW0gKnN0cmVhbTsKKworKyAgc3RydWN0IHB3X2NvbnRleHQgKnBpcGV3aXJlX2Nv bnRleHQ7CisgICBzdHJ1Y3QgcHdfY29yZSAqcGlwZXdpcmVfY29yZTsKKy0gIHN0cnVjdCBwd19y ZW1vdGUgKnBpcGV3aXJlX3JlbW90ZTsKKy0gIHN0cnVjdCBwd190eXBlICpwaXBld2lyZV90eXBl OworICAgTWV0YVBpcGVXaXJlU291cmNlICpwaXBld2lyZV9zb3VyY2U7CistICBzdHJ1Y3Qgc3Bh X2hvb2sgcGlwZXdpcmVfcmVtb3RlX2xpc3RlbmVyOworKyAgc3RydWN0IHNwYV9ob29rIHBpcGV3 aXJlX2NvcmVfbGlzdGVuZXI7CisKKyAgIGdib29sZWFuIGlzX2VuYWJsZWQ7CisKKyAgIHN0cnVj dCBwd19zdHJlYW0gKnBpcGV3aXJlX3N0cmVhbTsKKyAgIHN0cnVjdCBzcGFfaG9vayBwaXBld2ly ZV9zdHJlYW1fbGlzdGVuZXI7CisrICB1aW50MzJfdCBub2RlX2lkOworCistICBNZXRhU3BhVHlw ZSBzcGFfdHlwZTsKKyAgIHN0cnVjdCBzcGFfdmlkZW9faW5mb19yYXcgdmlkZW9fZm9ybWF0Owor KyAgaW50IHZpZGVvX3N0cmlkZTsKKworICAgdWludDY0X3QgbGFzdF9mcmFtZV90aW1lc3RhbXBf dXM7CisKK0BAIC0xMTIsOCArMTA0LDYgQEAgR19ERUZJTkVfVFlQRV9XSVRIX0NPREUgKE1ldGFT Y3JlZW5DYXN0U3RyZWFtU3JjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19pbml0X2luaXRhYmxlX2lm YWNlKQorICAgICAgICAgICAgICAgICAgICAgICAgICBHX0FERF9QUklWQVRFIChNZXRhU2NyZWVu Q2FzdFN0cmVhbVNyYykpCisKKy0jZGVmaW5lIFBST1BfUkFOR0UobWluLCBtYXgpIDIsIChtaW4p LCAobWF4KQorLQorIHN0YXRpYyB2b2lkCisgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dl dF9zcGVjcyAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgKnNyYywKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAqd2lkdGgsCitA QCAtMjg2LDkgKzI3Niw2IEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19zZXRfZW1wdHlf Y3Vyc29yX3Nwcml0ZV9tZXRhZGF0YSAoTWV0YVNjcmVlbkNhc3RTdHJlCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgICAg ICAgICAgICAgICAgICAgICAgeCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAgICAgICAgICAgICAgICAgICAgICB5KQor IHsKKy0gIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZSAqcHJpdiA9CistICAgIG1ldGFf c2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKKy0gIE1l dGFTcGFUeXBlICpzcGFfdHlwZSA9ICZwcml2LT5zcGFfdHlwZTsKKyAgIHN0cnVjdCBzcGFfbWV0 YV9iaXRtYXAgKnNwYV9tZXRhX2JpdG1hcDsKKworICAgc3BhX21ldGFfY3Vyc29yLT5pZCA9IDE7 CitAQCAtMzAwLDcgKzI4Nyw3IEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19zZXRfZW1w dHlfY3Vyc29yX3Nwcml0ZV9tZXRhZGF0YSAoTWV0YVNjcmVlbkNhc3RTdHJlCisgICBzcGFfbWV0 YV9iaXRtYXAgPSBTUEFfTUVNQkVSIChzcGFfbWV0YV9jdXJzb3IsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzcGFfbWV0YV9jdXJzb3ItPmJpdG1hcF9vZmZzZXQsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgc3BhX21ldGFfYml0bWFwKTsKKy0gIHNw YV9tZXRhX2JpdG1hcC0+Zm9ybWF0ID0gc3BhX3R5cGUtPnZpZGVvX2Zvcm1hdC5SR0JBOworKyAg c3BhX21ldGFfYml0bWFwLT5mb3JtYXQgPSBTUEFfVklERU9fRk9STUFUX1JHQkE7CisgICBzcGFf bWV0YV9iaXRtYXAtPm9mZnNldCA9IHNpemVvZiAoc3RydWN0IHNwYV9tZXRhX2JpdG1hcCk7CisK KyAgIHNwYV9tZXRhX2N1cnNvci0+aG90c3BvdC54ID0gMDsKK0BAIC0zMTcsOSArMzA0LDYgQEAg bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX3NldF9jdXJzb3Jfc3ByaXRlX21ldGFkYXRhIChN ZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgIHksCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9h dCAgICAgICAgICAgICAgICAgICAgc2NhbGUpCisgeworLSAgTWV0YVNjcmVlbkNhc3RTdHJlYW1T cmNQcml2YXRlICpwcml2ID0KKy0gICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9p bnN0YW5jZV9wcml2YXRlIChzcmMpOworLSAgTWV0YVNwYVR5cGUgKnNwYV90eXBlID0gJnByaXYt PnNwYV90eXBlOworICAgQ29nbFRleHR1cmUgKmN1cnNvcl90ZXh0dXJlOworICAgc3RydWN0IHNw YV9tZXRhX2JpdG1hcCAqc3BhX21ldGFfYml0bWFwOworICAgaW50IGhvdHNwb3RfeCwgaG90c3Bv dF95OworQEAgLTM0Niw3ICszMzAsNyBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfc2V0 X2N1cnNvcl9zcHJpdGVfbWV0YWRhdGEgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjCisgICBzcGFf bWV0YV9iaXRtYXAgPSBTUEFfTUVNQkVSIChzcGFfbWV0YV9jdXJzb3IsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzcGFfbWV0YV9jdXJzb3ItPmJpdG1hcF9vZmZzZXQsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgc3BhX21ldGFfYml0bWFwKTsKKy0g IHNwYV9tZXRhX2JpdG1hcC0+Zm9ybWF0ID0gc3BhX3R5cGUtPnZpZGVvX2Zvcm1hdC5SR0JBOwor KyAgc3BhX21ldGFfYml0bWFwLT5mb3JtYXQgPSBTUEFfVklERU9fRk9STUFUX1JHQkE7CisgICBz cGFfbWV0YV9iaXRtYXAtPm9mZnNldCA9IHNpemVvZiAoc3RydWN0IHNwYV9tZXRhX2JpdG1hcCk7 CisKKyAgIG1ldGFfY3Vyc29yX3Nwcml0ZV9nZXRfaG90c3BvdCAoY3Vyc29yX3Nwcml0ZSwgJmhv dHNwb3RfeCwgJmhvdHNwb3RfeSk7CitAQCAtMzgyLDEyICszNjYsMTAgQEAgc3RhdGljIHZvaWQK KyBhZGRfY3Vyc29yX21ldGFkYXRhIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjLAorICAg ICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzcGFfYnVmZmVyICAgICAgICpzcGFfYnVmZmVyKQor IHsKKy0gIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZSAqcHJpdiA9CistICAgIG1ldGFf c2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKKy0gIE1l dGFTcGFUeXBlICpzcGFfdHlwZSA9ICZwcml2LT5zcGFfdHlwZTsKKyAgIHN0cnVjdCBzcGFfbWV0 YV9jdXJzb3IgKnNwYV9tZXRhX2N1cnNvcjsKKworLSAgc3BhX21ldGFfY3Vyc29yID0gc3BhX2J1 ZmZlcl9maW5kX21ldGEgKHNwYV9idWZmZXIsIHNwYV90eXBlLT5tZXRhX2N1cnNvcik7CisrICBz cGFfbWV0YV9jdXJzb3IgPSBzcGFfYnVmZmVyX2ZpbmRfbWV0YV9kYXRhIChzcGFfYnVmZmVyLCBT UEFfTUVUQV9DdXJzb3IsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBzaXplb2YgKCpzcGFfbWV0YV9jdXJzb3IpKTsKKyAgIGlmIChzcGFfbWV0YV9jdXJz b3IpCisgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19zZXRfY3Vyc29yX21ldGFkYXRh IChzcmMsIHNwYV9tZXRhX2N1cnNvcik7CisgfQorQEAgLTQ0NywxNCArNDI5LDE0IEBAIG1ldGFf c2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19tYXliZV9yZWNvcmRfZnJhbWUgKE1ldGFTY3JlZW5DYXN0 U3RyZWFtU3JjICpzcmMpCisgICAgIHsKKyAgICAgICBkYXRhID0gc3BhX2J1ZmZlci0+ZGF0YXNb MF0uZGF0YTsKKyAgICAgfQorLSAgZWxzZSBpZiAoc3BhX2J1ZmZlci0+ZGF0YXNbMF0udHlwZSA9 PSBwcml2LT5waXBld2lyZV90eXBlLT5kYXRhLk1lbUZkKQorKyAgZWxzZSBpZiAoc3BhX2J1ZmZl ci0+ZGF0YXNbMF0udHlwZSA9PSBTUEFfREFUQV9NZW1GZCkKKyAgICAgeworICAgICAgIG1hcCA9 IG1tYXAgKE5VTEwsIHNwYV9idWZmZXItPmRhdGFzWzBdLm1heHNpemUgKyBzcGFfYnVmZmVyLT5k YXRhc1swXS5tYXBvZmZzZXQsCisgICAgICAgICAgICAgICAgICAgUFJPVF9SRUFEIHwgUFJPVF9X UklURSwgTUFQX1NIQVJFRCwKKyAgICAgICAgICAgICAgICAgICBzcGFfYnVmZmVyLT5kYXRhc1sw XS5mZCwgMCk7CisgICAgICAgaWYgKG1hcCA9PSBNQVBfRkFJTEVEKQorICAgICAgICAgeworLSAg ICAgICAgICBnX3dhcm5pbmcgKCJGYWlsZWQgdG8gbW1hcCBwaXBld2lyZSBzdHJlYW0gYnVmZmVy OiAlc1xuIiwKKysgICAgICAgICAgZ193YXJuaW5nICgiRmFpbGVkIHRvIG1tYXAgcGlwZXdpcmUg c3RyZWFtIGJ1ZmZlcjogJXMiLAorICAgICAgICAgICAgICAgICAgICAgIHN0cmVycm9yIChlcnJu bykpOworICAgICAgICAgICByZXR1cm47CisgICAgICAgICB9CitAQCAtNDY5LDI4ICs0NTEsMzAg QEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX21heWJlX3JlY29yZF9mcmFtZSAoTWV0YVNj cmVlbkNhc3RTdHJlYW1TcmMgKnNyYykKKworICAgaWYgKG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFt X3NyY19yZWNvcmRfZnJhbWUgKHNyYywgZGF0YSkpCisgICAgIHsKKy0gICAgICBzdHJ1Y3Qgc3Bh X21ldGFfdmlkZW9fY3JvcCAqc3BhX21ldGFfdmlkZW9fY3JvcDsKKysgICAgICBzdHJ1Y3Qgc3Bh X21ldGFfcmVnaW9uICpzcGFfbWV0YV92aWRlb19jcm9wOworCisgICAgICAgc3BhX2J1ZmZlci0+ ZGF0YXNbMF0uY2h1bmstPnNpemUgPSBzcGFfYnVmZmVyLT5kYXRhc1swXS5tYXhzaXplOworKyAg ICAgIHNwYV9idWZmZXItPmRhdGFzWzBdLmNodW5rLT5zdHJpZGUgPSBwcml2LT52aWRlb19zdHJp ZGU7CisKKyAgICAgICAvKiBVcGRhdGUgVmlkZW9Dcm9wIGlmIG5lZWRlZCAqLworICAgICAgIHNw YV9tZXRhX3ZpZGVvX2Nyb3AgPQorLSAgICAgICAgc3BhX2J1ZmZlcl9maW5kX21ldGEgKHNwYV9i dWZmZXIsIHByaXYtPnBpcGV3aXJlX3R5cGUtPm1ldGEuVmlkZW9Dcm9wKTsKKysgICAgICAgIHNw YV9idWZmZXJfZmluZF9tZXRhX2RhdGEgKHNwYV9idWZmZXIsIFNQQV9NRVRBX1ZpZGVvQ3JvcCwK KysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZiAoKnNwYV9tZXRhX3Zp ZGVvX2Nyb3ApKTsKKyAgICAgICBpZiAoc3BhX21ldGFfdmlkZW9fY3JvcCkKKyAgICAgICAgIHsK KyAgICAgICAgICAgaWYgKG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfdmlkZW9jcm9w IChzcmMsICZjcm9wX3JlY3QpKQorICAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgIHNwYV9t ZXRhX3ZpZGVvX2Nyb3AtPnggPSBjcm9wX3JlY3QueDsKKy0gICAgICAgICAgICAgIHNwYV9tZXRh X3ZpZGVvX2Nyb3AtPnkgPSBjcm9wX3JlY3QueTsKKy0gICAgICAgICAgICAgIHNwYV9tZXRhX3Zp ZGVvX2Nyb3AtPndpZHRoID0gY3JvcF9yZWN0LndpZHRoOworLSAgICAgICAgICAgICAgc3BhX21l dGFfdmlkZW9fY3JvcC0+aGVpZ2h0ID0gY3JvcF9yZWN0LmhlaWdodDsKKysgICAgICAgICAgICAg IHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5wb3NpdGlvbi54ID0gY3JvcF9yZWN0Lng7Cisr ICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24ucG9zaXRpb24ueSA9IGNy b3BfcmVjdC55OworKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnNp emUud2lkdGggPSBjcm9wX3JlY3Qud2lkdGg7CisrICAgICAgICAgICAgICBzcGFfbWV0YV92aWRl b19jcm9wLT5yZWdpb24uc2l6ZS5oZWlnaHQgPSBjcm9wX3JlY3QuaGVpZ2h0OworICAgICAgICAg ICAgIH0KKyAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgIHNw YV9tZXRhX3ZpZGVvX2Nyb3AtPnggPSAwOworLSAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9f Y3JvcC0+eSA9IDA7CistICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT53aWR0aCA9 IHByaXYtPnN0cmVhbV93aWR0aDsKKy0gICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3At PmhlaWdodCA9IHByaXYtPnN0cmVhbV9oZWlnaHQ7CisrICAgICAgICAgICAgICBzcGFfbWV0YV92 aWRlb19jcm9wLT5yZWdpb24ucG9zaXRpb24ueCA9IDA7CisrICAgICAgICAgICAgICBzcGFfbWV0 YV92aWRlb19jcm9wLT5yZWdpb24ucG9zaXRpb24ueSA9IDA7CisrICAgICAgICAgICAgICBzcGFf bWV0YV92aWRlb19jcm9wLT5yZWdpb24uc2l6ZS53aWR0aCA9IHByaXYtPnN0cmVhbV93aWR0aDsK KysgICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5zaXplLmhlaWdodCA9 IHByaXYtPnN0cmVhbV9oZWlnaHQ7CisgICAgICAgICAgICAgfQorICAgICAgICAgfQorICAgICB9 CitAQCAtNTU1LDcgKzUzOSw2IEBAIG9uX3N0cmVhbV9zdGF0ZV9jaGFuZ2VkICh2b2lkICAgICAg ICAgICAgICAgICAqZGF0YSwKKyAgIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICpzcmMgPSBkYXRh OworICAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRlICpwcml2ID0KKyAgICAgbWV0YV9z Y3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5jZV9wcml2YXRlIChzcmMpOworLSAgdWlu dDMyX3Qgbm9kZV9pZDsKKworICAgc3dpdGNoIChzdGF0ZSkKKyAgICAgeworQEAgLTU2MywxNCAr NTQ2LDEyIEBAIG9uX3N0cmVhbV9zdGF0ZV9jaGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAq ZGF0YSwKKyAgICAgICBnX3dhcm5pbmcgKCJwaXBld2lyZSBzdHJlYW0gZXJyb3I6ICVzIiwgZXJy b3JfbWVzc2FnZSk7CisgICAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX25vdGlmeV9j bG9zZWQgKHNyYyk7CisgICAgICAgYnJlYWs7CistICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRFX0NP TkZJR1VSRToKKy0gICAgICBub2RlX2lkID0gcHdfc3RyZWFtX2dldF9ub2RlX2lkIChwcml2LT5w aXBld2lyZV9zdHJlYW0pOworLSAgICAgIGdfc2lnbmFsX2VtaXQgKHNyYywgc2lnbmFsc1tSRUFE WV0sIDAsICh1bnNpZ25lZCBpbnQpIG5vZGVfaWQpOworLSAgICAgIGJyZWFrOworLSAgICBjYXNl IFBXX1NUUkVBTV9TVEFURV9VTkNPTk5FQ1RFRDoKKy0gICAgY2FzZSBQV19TVFJFQU1fU1RBVEVf Q09OTkVDVElORzoKKy0gICAgY2FzZSBQV19TVFJFQU1fU1RBVEVfUkVBRFk6CisgICAgIGNhc2Ug UFdfU1RSRUFNX1NUQVRFX1BBVVNFRDoKKysgICAgICBpZiAocHJpdi0+bm9kZV9pZCA9PSBTUEFf SURfSU5WQUxJRCAmJiBwcml2LT5waXBld2lyZV9zdHJlYW0pCisrICAgICAgICB7CisrICAgICAg ICAgIHByaXYtPm5vZGVfaWQgPSBwd19zdHJlYW1fZ2V0X25vZGVfaWQgKHByaXYtPnBpcGV3aXJl X3N0cmVhbSk7CisrICAgICAgICAgIGdfc2lnbmFsX2VtaXQgKHNyYywgc2lnbmFsc1tSRUFEWV0s IDAsICh1bnNpZ25lZCBpbnQpIHByaXYtPm5vZGVfaWQpOworKyAgICAgICAgfQorICAgICAgIGlm IChtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfaXNfZW5hYmxlZCAoc3JjKSkKKyAgICAgICAg IG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19kaXNhYmxlIChzcmMpOworICAgICAgIGJyZWFr OworQEAgLTU3OCw2OCArNTU5LDY5IEBAIG9uX3N0cmVhbV9zdGF0ZV9jaGFuZ2VkICh2b2lkICAg ICAgICAgICAgICAgICAqZGF0YSwKKyAgICAgICBpZiAoIW1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFt X3NyY19pc19lbmFibGVkIChzcmMpKQorICAgICAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1f c3JjX2VuYWJsZSAoc3JjKTsKKyAgICAgICBicmVhazsKKysgICAgY2FzZSBQV19TVFJFQU1fU1RB VEVfVU5DT05ORUNURUQ6CisrICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRFX0NPTk5FQ1RJTkc6Cisr ICAgICAgYnJlYWs7CisgICAgIH0KKyB9CisKKyBzdGF0aWMgdm9pZAorLW9uX3N0cmVhbV9mb3Jt YXRfY2hhbmdlZCAodm9pZCAgICAgICAgICAgICAgICAgKmRhdGEsCistICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBzdHJ1Y3Qgc3BhX3BvZCAqZm9ybWF0KQorK29uX3N0cmVhbV9wYXJh bV9jaGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAqZGF0YSwKKysgICAgICAgICAgICAgICAg ICAgICAgICAgdWludDMyX3QgICAgICAgICAgICAgIGlkLAorKyAgICAgICAgICAgICAgICAgICAg ICAgICBjb25zdCBzdHJ1Y3Qgc3BhX3BvZCAqZm9ybWF0KQorIHsKKyAgIE1ldGFTY3JlZW5DYXN0 U3RyZWFtU3JjICpzcmMgPSBkYXRhOworICAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRl ICpwcml2ID0KKyAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5jZV9w cml2YXRlIChzcmMpOworLSAgc3RydWN0IHB3X3R5cGUgKnBpcGV3aXJlX3R5cGUgPSBwcml2LT5w aXBld2lyZV90eXBlOworICAgdWludDhfdCBwYXJhbXNfYnVmZmVyWzEwMjRdOworICAgaW50MzJf dCB3aWR0aCwgaGVpZ2h0LCBzdHJpZGUsIHNpemU7CisgICBzdHJ1Y3Qgc3BhX3BvZF9idWlsZGVy IHBvZF9idWlsZGVyOworICAgY29uc3Qgc3RydWN0IHNwYV9wb2QgKnBhcmFtc1szXTsKKyAgIGNv bnN0IGludCBicHAgPSA0OworCistICBpZiAoIWZvcm1hdCkKKy0gICAgeworLSAgICAgIHB3X3N0 cmVhbV9maW5pc2hfZm9ybWF0IChwcml2LT5waXBld2lyZV9zdHJlYW0sIDAsIE5VTEwsIDApOwor LSAgICAgIHJldHVybjsKKy0gICAgfQorKyAgaWYgKCFmb3JtYXQgfHwgaWQgIT0gU1BBX1BBUkFN X0Zvcm1hdCkKKysgICAgcmV0dXJuOworCisgICBzcGFfZm9ybWF0X3ZpZGVvX3Jhd19wYXJzZSAo Zm9ybWF0LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcml2LT52aWRlb19mb3Jt YXQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnByaXYtPnNwYV90eXBlLmZvcm1h dF92aWRlbyk7CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnByaXYtPnZpZGVvX2Zv cm1hdCk7CisKKyAgIHdpZHRoID0gcHJpdi0+dmlkZW9fZm9ybWF0LnNpemUud2lkdGg7CisgICBo ZWlnaHQgPSBwcml2LT52aWRlb19mb3JtYXQuc2l6ZS5oZWlnaHQ7CisgICBzdHJpZGUgPSBTUEFf Uk9VTkRfVVBfTiAod2lkdGggKiBicHAsIDQpOworICAgc2l6ZSA9IGhlaWdodCAqIHN0cmlkZTsK KworKyAgcHJpdi0+dmlkZW9fc3RyaWRlID0gc3RyaWRlOworKworICAgcG9kX2J1aWxkZXIgPSBT UEFfUE9EX0JVSUxERVJfSU5JVCAocGFyYW1zX2J1ZmZlciwgc2l6ZW9mIChwYXJhbXNfYnVmZmVy KSk7CisKKy0gIHBhcmFtc1swXSA9IHNwYV9wb2RfYnVpbGRlcl9vYmplY3QgKAorKyAgcGFyYW1z WzBdID0gc3BhX3BvZF9idWlsZGVyX2FkZF9vYmplY3QgKAorICAgICAmcG9kX2J1aWxkZXIsCist ICAgIHBpcGV3aXJlX3R5cGUtPnBhcmFtLmlkQnVmZmVycywgcGlwZXdpcmVfdHlwZS0+cGFyYW1f YnVmZmVycy5CdWZmZXJzLAorLSAgICAiOiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX2J1ZmZlcnMu c2l6ZSwgImkiLCBzaXplLAorLSAgICAiOiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX2J1ZmZlcnMu c3RyaWRlLCAiaSIsIHN0cmlkZSwKKy0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9idWZm ZXJzLmJ1ZmZlcnMsICJpcnUiLCAxNiwgUFJPUF9SQU5HRSAoMiwgMTYpLAorLSAgICAiOiIsIHBp cGV3aXJlX3R5cGUtPnBhcmFtX2J1ZmZlcnMuYWxpZ24sICJpIiwgMTYpOworLQorLSAgcGFyYW1z WzFdID0gc3BhX3BvZF9idWlsZGVyX29iamVjdCAoCisrICAgIFNQQV9UWVBFX09CSkVDVF9QYXJh bUJ1ZmZlcnMsIFNQQV9QQVJBTV9CdWZmZXJzLAorKyAgICBTUEFfUEFSQU1fQlVGRkVSU19idWZm ZXJzLCBTUEFfUE9EX0NIT0lDRV9SQU5HRV9JbnQgKDE2LCAyLCAxNiksCisrICAgIFNQQV9QQVJB TV9CVUZGRVJTX2Jsb2NrcywgU1BBX1BPRF9JbnQgKDEpLAorKyAgICBTUEFfUEFSQU1fQlVGRkVS U19zaXplLCBTUEFfUE9EX0ludCAoc2l6ZSksCisrICAgIFNQQV9QQVJBTV9CVUZGRVJTX3N0cmlk ZSwgU1BBX1BPRF9JbnQgKHN0cmlkZSksCisrICAgIFNQQV9QQVJBTV9CVUZGRVJTX2FsaWduLCBT UEFfUE9EX0ludCAoMTYpKTsKKysKKysgIHBhcmFtc1sxXSA9IHNwYV9wb2RfYnVpbGRlcl9hZGRf b2JqZWN0ICgKKyAgICAgJnBvZF9idWlsZGVyLAorLSAgICBwaXBld2lyZV90eXBlLT5wYXJhbS5p ZE1ldGEsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX21ldGEuTWV0YSwKKy0gICAgIjoiLCBwaXBld2ly ZV90eXBlLT5wYXJhbV9tZXRhLnR5cGUsICJJIiwgcGlwZXdpcmVfdHlwZS0+bWV0YS5WaWRlb0Ny b3AsCistICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fbWV0YS5zaXplLCAiaSIsIHNpemVv ZiAoc3RydWN0IHNwYV9tZXRhX3ZpZGVvX2Nyb3ApKTsKKysgICAgU1BBX1RZUEVfT0JKRUNUX1Bh cmFtTWV0YSwgU1BBX1BBUkFNX01ldGEsCisrICAgIFNQQV9QQVJBTV9NRVRBX3R5cGUsIFNQQV9Q T0RfSWQgKFNQQV9NRVRBX1ZpZGVvQ3JvcCksCisrICAgIFNQQV9QQVJBTV9NRVRBX3NpemUsIFNQ QV9QT0RfSW50IChzaXplb2YgKHN0cnVjdCBzcGFfbWV0YV9yZWdpb24pKSk7CisKKy0gIHBhcmFt c1syXSA9IHNwYV9wb2RfYnVpbGRlcl9vYmplY3QgKAorKyAgcGFyYW1zWzJdID0gc3BhX3BvZF9i dWlsZGVyX2FkZF9vYmplY3QgKAorICAgICAmcG9kX2J1aWxkZXIsCistICAgIHBpcGV3aXJlX3R5 cGUtPnBhcmFtLmlkTWV0YSwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fbWV0YS5NZXRhLAorLSAgICAi OiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX21ldGEudHlwZSwgIkkiLCBwcml2LT5zcGFfdHlwZS5t ZXRhX2N1cnNvciwKKy0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9tZXRhLnNpemUsICJp IiwgQ1VSU09SX01FVEFfU0laRSAoNjQsIDY0KSk7CisrICAgIFNQQV9UWVBFX09CSkVDVF9QYXJh bU1ldGEsIFNQQV9QQVJBTV9NZXRhLAorKyAgICBTUEFfUEFSQU1fTUVUQV90eXBlLCBTUEFfUE9E X0lkIChTUEFfTUVUQV9DdXJzb3IpLAorKyAgICBTUEFfUEFSQU1fTUVUQV9zaXplLCBTUEFfUE9E X0ludCAoQ1VSU09SX01FVEFfU0laRSAoNjQsIDY0KSkpOworCistICBwd19zdHJlYW1fZmluaXNo X2Zvcm1hdCAocHJpdi0+cGlwZXdpcmVfc3RyZWFtLCAwLAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgIHBhcmFtcywgR19OX0VMRU1FTlRTIChwYXJhbXMpKTsKKysgIHB3X3N0cmVhbV91cGRh dGVfcGFyYW1zIChwcml2LT5waXBld2lyZV9zdHJlYW0sIHBhcmFtcywgR19OX0VMRU1FTlRTIChw YXJhbXMpKTsKKyB9CisKKyBzdGF0aWMgY29uc3Qgc3RydWN0IHB3X3N0cmVhbV9ldmVudHMgc3Ry ZWFtX2V2ZW50cyA9IHsKKyAgIFBXX1ZFUlNJT05fU1RSRUFNX0VWRU5UUywKKyAgIC5zdGF0ZV9j aGFuZ2VkID0gb25fc3RyZWFtX3N0YXRlX2NoYW5nZWQsCistICAuZm9ybWF0X2NoYW5nZWQgPSBv bl9zdHJlYW1fZm9ybWF0X2NoYW5nZWQsCisrICAucGFyYW1fY2hhbmdlZCA9IG9uX3N0cmVhbV9w YXJhbV9jaGFuZ2VkLAorIH07CisKKyBzdGF0aWMgc3RydWN0IHB3X3N0cmVhbSAqCitAQCAtNjUy LDggKzYzNCw2IEBAIGNyZWF0ZV9waXBld2lyZV9zdHJlYW0gKE1ldGFTY3JlZW5DYXN0U3RyZWFt U3JjICAqc3JjLAorICAgdWludDhfdCBidWZmZXJbMTAyNF07CisgICBzdHJ1Y3Qgc3BhX3BvZF9i dWlsZGVyIHBvZF9idWlsZGVyID0KKyAgICAgU1BBX1BPRF9CVUlMREVSX0lOSVQgKGJ1ZmZlciwg c2l6ZW9mIChidWZmZXIpKTsKKy0gIE1ldGFTcGFUeXBlICpzcGFfdHlwZSA9ICZwcml2LT5zcGFf dHlwZTsKKy0gIHN0cnVjdCBwd190eXBlICpwaXBld2lyZV90eXBlID0gcHJpdi0+cGlwZXdpcmVf dHlwZTsKKyAgIGZsb2F0IGZyYW1lX3JhdGU7CisgICBNZXRhRnJhY3Rpb24gZnJhbWVfcmF0ZV9m cmFjdGlvbjsKKyAgIHN0cnVjdCBzcGFfZnJhY3Rpb24gbWF4X2ZyYW1lcmF0ZTsKK0BAIC02NjEs NyArNjQxLDkgQEAgY3JlYXRlX3BpcGV3aXJlX3N0cmVhbSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1T cmMgICpzcmMsCisgICBjb25zdCBzdHJ1Y3Qgc3BhX3BvZCAqcGFyYW1zWzFdOworICAgaW50IHJl c3VsdDsKKworLSAgcGlwZXdpcmVfc3RyZWFtID0gcHdfc3RyZWFtX25ldyAocHJpdi0+cGlwZXdp cmVfcmVtb3RlLAorKyAgcHJpdi0+bm9kZV9pZCA9IFNQQV9JRF9JTlZBTElEOworKworKyAgcGlw ZXdpcmVfc3RyZWFtID0gcHdfc3RyZWFtX25ldyAocHJpdi0+cGlwZXdpcmVfY29yZSwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZXRhLXNjcmVlbi1jYXN0LXNyYyIsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgIGlmICghcGlwZXdp cmVfc3RyZWFtKQorQEAgLTY4MiwxNyArNjY0LDE3IEBAIGNyZWF0ZV9waXBld2lyZV9zdHJlYW0g KE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICAqc3JjLAorICAgbWF4X2ZyYW1lcmF0ZSA9IFNQQV9G UkFDVElPTiAoZnJhbWVfcmF0ZV9mcmFjdGlvbi5udW0sCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBmcmFtZV9yYXRlX2ZyYWN0aW9uLmRlbm9tKTsKKworLSAgcGFyYW1zWzBdID0g c3BhX3BvZF9idWlsZGVyX29iamVjdCAoCisrICBwYXJhbXNbMF0gPSBzcGFfcG9kX2J1aWxkZXJf YWRkX29iamVjdCAoCisgICAgICZwb2RfYnVpbGRlciwKKy0gICAgcGlwZXdpcmVfdHlwZS0+cGFy YW0uaWRFbnVtRm9ybWF0LCBwaXBld2lyZV90eXBlLT5zcGFfZm9ybWF0LAorLSAgICAiSSIsIHNw YV90eXBlLT5tZWRpYV90eXBlLnZpZGVvLAorLSAgICAiSSIsIHNwYV90eXBlLT5tZWRpYV9zdWJ0 eXBlLnJhdywKKy0gICAgIjoiLCBzcGFfdHlwZS0+Zm9ybWF0X3ZpZGVvLmZvcm1hdCwgIkkiLCBz cGFfdHlwZS0+dmlkZW9fZm9ybWF0LkJHUngsCistICAgICI6Iiwgc3BhX3R5cGUtPmZvcm1hdF92 aWRlby5zaXplLCAiUiIsICZTUEFfUkVDVEFOR0xFIChwcml2LT5zdHJlYW1fd2lkdGgsCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw cml2LT5zdHJlYW1faGVpZ2h0KSwKKy0gICAgIjoiLCBzcGFfdHlwZS0+Zm9ybWF0X3ZpZGVvLmZy YW1lcmF0ZSwgIkYiLCAmU1BBX0ZSQUNUSU9OICgwLCAxKSwKKy0gICAgIjoiLCBzcGFfdHlwZS0+ Zm9ybWF0X3ZpZGVvLm1heF9mcmFtZXJhdGUsICJGcnUiLCAmbWF4X2ZyYW1lcmF0ZSwKKy0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQUk9QX1JB TkdFICgmbWluX2ZyYW1lcmF0ZSwKKysgICAgU1BBX1RZUEVfT0JKRUNUX0Zvcm1hdCwgU1BBX1BB UkFNX0VudW1Gb3JtYXQsCisrICAgIFNQQV9GT1JNQVRfbWVkaWFUeXBlLCBTUEFfUE9EX0lkIChT UEFfTUVESUFfVFlQRV92aWRlbyksCisrICAgIFNQQV9GT1JNQVRfbWVkaWFTdWJ0eXBlLCBTUEFf UE9EX0lkIChTUEFfTUVESUFfU1VCVFlQRV9yYXcpLAorKyAgICBTUEFfRk9STUFUX1ZJREVPX2Zv cm1hdCwgU1BBX1BPRF9JZCAoU1BBX1ZJREVPX0ZPUk1BVF9CR1J4KSwKKysgICAgU1BBX0ZPUk1B VF9WSURFT19zaXplLCBTUEFfUE9EX1JlY3RhbmdsZSAoJlNQQV9SRUNUQU5HTEUgKHByaXYtPnN0 cmVhbV93aWR0aCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHByaXYtPnN0cmVhbV9oZWlnaHQpKSwKKysgICAgU1BBX0ZPUk1B VF9WSURFT19mcmFtZXJhdGUsIFNQQV9QT0RfRnJhY3Rpb24gKCZTUEFfRlJBQ1RJT04gKDAsIDEp KSwKKysgICAgU1BBX0ZPUk1BVF9WSURFT19tYXhGcmFtZXJhdGUsIFNQQV9QT0RfQ0hPSUNFX1JB TkdFX0ZyYWN0aW9uICgmbWF4X2ZyYW1lcmF0ZSwKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWluX2ZyYW1lcmF0ZSwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAmbWF4X2ZyYW1lcmF0ZSkpOworCisgICBwd19zdHJlYW1fYWRkX2xpc3RlbmVy IChwaXBld2lyZV9zdHJlYW0sCitAQCAtNzAyLDcgKzY4NCw3IEBAIGNyZWF0ZV9waXBld2lyZV9z dHJlYW0gKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICAqc3JjLAorCisgICByZXN1bHQgPSBwd19z dHJlYW1fY29ubmVjdCAocGlwZXdpcmVfc3RyZWFtLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFBXX0RJUkVDVElPTl9PVVRQVVQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTUEFfSURfSU5WQUxJRCwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUFdfU1RSRUFNX0ZMQUdfRFJJVkVSIHwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUFdfU1RSRUFNX0ZMQUdfTUFQX0JVRkZF UlMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtcywgR19OX0VMRU1FTlRT IChwYXJhbXMpKTsKK0BAIC03MTcsNDAgKzY5OSwxOCBAQCBjcmVhdGVfcGlwZXdpcmVfc3RyZWFt IChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAgKnNyYywKKyB9CisKKyBzdGF0aWMgdm9pZAorLW9u X3N0YXRlX2NoYW5nZWQgKHZvaWQgICAgICAgICAgICAgICAgICpkYXRhLAorLSAgICAgICAgICAg ICAgICAgIGVudW0gcHdfcmVtb3RlX3N0YXRlICBvbGQsCistICAgICAgICAgICAgICAgICAgZW51 bSBwd19yZW1vdGVfc3RhdGUgIHN0YXRlLAorLSAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIg ICAgICAgICAgICplcnJvcl9tZXNzYWdlKQorK29uX2NvcmVfZXJyb3IgKHZvaWQgICAgICAgKmRh dGEsCisrICAgICAgICAgICAgICAgdWludDMyX3QgICAgaWQsCisrCSAgICAgICBpbnQgICAgICAg ICBzZXEsCisrCSAgICAgICBpbnQgICAgICAgICByZXMsCisrCSAgICAgICBjb25zdCBjaGFyICpt ZXNzYWdlKQorIHsKKyAgIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICpzcmMgPSBkYXRhOworLSAg TWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRlICpwcml2ID0KKy0gICAgbWV0YV9zY3JlZW5f Y2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5jZV9wcml2YXRlIChzcmMpOworLSAgc3RydWN0IHB3 X3N0cmVhbSAqcGlwZXdpcmVfc3RyZWFtOworLSAgR0Vycm9yICplcnJvciA9IE5VTEw7CisKKy0g IHN3aXRjaCAoc3RhdGUpCistICAgIHsKKy0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfRVJST1I6 CistICAgICAgZ193YXJuaW5nICgicGlwZXdpcmUgcmVtb3RlIGVycm9yOiAlc1xuIiwgZXJyb3Jf bWVzc2FnZSk7CistICAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX25vdGlmeV9jbG9z ZWQgKHNyYyk7CistICAgICAgYnJlYWs7CistICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0NPTk5F Q1RFRDoKKy0gICAgICBwaXBld2lyZV9zdHJlYW0gPSBjcmVhdGVfcGlwZXdpcmVfc3RyZWFtIChz cmMsICZlcnJvcik7CistICAgICAgaWYgKCFwaXBld2lyZV9zdHJlYW0pCistICAgICAgICB7Cist ICAgICAgICAgIGdfd2FybmluZyAoIkNvdWxkIG5vdCBjcmVhdGUgcGlwZXdpcmUgc3RyZWFtOiAl cyIsIGVycm9yLT5tZXNzYWdlKTsKKy0gICAgICAgICAgZ19lcnJvcl9mcmVlIChlcnJvcik7Cist ICAgICAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19ub3RpZnlfY2xvc2VkIChzcmMp OworLSAgICAgICAgfQorLSAgICAgIGVsc2UKKy0gICAgICAgIHsKKy0gICAgICAgICAgcHJpdi0+ cGlwZXdpcmVfc3RyZWFtID0gcGlwZXdpcmVfc3RyZWFtOworLSAgICAgICAgfQorLSAgICAgIGJy ZWFrOworLSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9VTkNPTk5FQ1RFRDoKKy0gICAgY2FzZSBQ V19SRU1PVEVfU1RBVEVfQ09OTkVDVElORzoKKy0gICAgICBicmVhazsKKy0gICAgfQorKyAgZ193 YXJuaW5nICgicGlwZXdpcmUgcmVtb3RlIGVycm9yOiBpZDoldSAlcyIsIGlkLCBtZXNzYWdlKTsK KysKKysgIGlmIChpZCA9PSBQV19JRF9DT1JFICYmIHJlcyA9PSAtRVBJUEUpCisrICAgIG1ldGFf c2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19ub3RpZnlfY2xvc2VkIChzcmMpOworIH0KKworIHN0YXRp YyBnYm9vbGVhbgorQEAgLTc5MywxNyArNzUzLDYgQEAgc3RhdGljIEdTb3VyY2VGdW5jcyBwaXBl d2lyZV9zb3VyY2VfZnVuY3MgPQorICAgcGlwZXdpcmVfbG9vcF9zb3VyY2VfZmluYWxpemUKKyB9 OworCistc3RhdGljIHZvaWQKKy1pbml0X3NwYV90eXBlIChNZXRhU3BhVHlwZSAgICAgICAgICp0 eXBlLAorLSAgICAgICAgICAgICAgIHN0cnVjdCBzcGFfdHlwZV9tYXAgKm1hcCkKKy17CistICBz cGFfdHlwZV9tZWRpYV90eXBlX21hcCAobWFwLCAmdHlwZS0+bWVkaWFfdHlwZSk7CistICBzcGFf dHlwZV9tZWRpYV9zdWJ0eXBlX21hcCAobWFwLCAmdHlwZS0+bWVkaWFfc3VidHlwZSk7CistICBz cGFfdHlwZV9mb3JtYXRfdmlkZW9fbWFwIChtYXAsICZ0eXBlLT5mb3JtYXRfdmlkZW8pOworLSAg c3BhX3R5cGVfdmlkZW9fZm9ybWF0X21hcCAobWFwLCAmdHlwZS0+dmlkZW9fZm9ybWF0KTsKKy0g IHR5cGUtPm1ldGFfY3Vyc29yID0gc3BhX3R5cGVfbWFwX2dldF9pZChtYXAsIFNQQV9UWVBFX01F VEFfX0N1cnNvcik7CistfQorLQorIHN0YXRpYyBNZXRhUGlwZVdpcmVTb3VyY2UgKgorIGNyZWF0 ZV9waXBld2lyZV9zb3VyY2UgKHZvaWQpCisgeworQEAgLTgyOSw5ICs3NzgsOSBAQCBjcmVhdGVf cGlwZXdpcmVfc291cmNlICh2b2lkKQorICAgcmV0dXJuIHBpcGV3aXJlX3NvdXJjZTsKKyB9CisK Ky1zdGF0aWMgY29uc3Qgc3RydWN0IHB3X3JlbW90ZV9ldmVudHMgcmVtb3RlX2V2ZW50cyA9IHsK Ky0gIFBXX1ZFUlNJT05fUkVNT1RFX0VWRU5UUywKKy0gIC5zdGF0ZV9jaGFuZ2VkID0gb25fc3Rh dGVfY2hhbmdlZCwKKytzdGF0aWMgY29uc3Qgc3RydWN0IHB3X2NvcmVfZXZlbnRzIGNvcmVfZXZl bnRzID0geworKyAgUFdfVkVSU0lPTl9DT1JFX0VWRU5UUywKKysgIC5lcnJvciA9IG9uX2NvcmVf ZXJyb3IsCisgfTsKKworIHN0YXRpYyBnYm9vbGVhbgorQEAgLTg1MSwzNyArODAwLDMxIEBAIG1l dGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19pbml0YWJsZV9pbml0IChHSW5pdGFibGUgICAgICpp bml0YWJsZSwKKyAgICAgICByZXR1cm4gRkFMU0U7CisgICAgIH0KKworLSAgcHJpdi0+cGlwZXdp cmVfY29yZSA9IHB3X2NvcmVfbmV3IChwcml2LT5waXBld2lyZV9zb3VyY2UtPnBpcGV3aXJlX2xv b3AsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworLSAgaWYg KCFwcml2LT5waXBld2lyZV9jb3JlKQorKyAgcHJpdi0+cGlwZXdpcmVfY29udGV4dCA9IHB3X2Nv bnRleHRfbmV3IChwcml2LT5waXBld2lyZV9zb3VyY2UtPnBpcGV3aXJlX2xvb3AsCisrICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIDApOworKyAgaWYgKCFw cml2LT5waXBld2lyZV9jb250ZXh0KQorICAgICB7CisgICAgICAgZ19zZXRfZXJyb3IgKGVycm9y LCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9SX0ZBSUxFRCwKKy0gICAgICAgICAgICAgICAgICAgIkZh aWxlZCB0byBjcmVhdGUgcGlwZXdpcmUgY29yZSIpOworKyAgICAgICAgICAgICAgICAgICAiRmFp bGVkIHRvIGNyZWF0ZSBwaXBld2lyZSBjb250ZXh0Iik7CisgICAgICAgcmV0dXJuIEZBTFNFOwor ICAgICB9CisKKy0gIHByaXYtPnBpcGV3aXJlX3JlbW90ZSA9IHB3X3JlbW90ZV9uZXcgKHByaXYt PnBpcGV3aXJlX2NvcmUsIE5VTEwsIDApOworLSAgaWYgKCFwcml2LT5waXBld2lyZV9yZW1vdGUp CisrICBwcml2LT5waXBld2lyZV9jb3JlID0gcHdfY29udGV4dF9jb25uZWN0IChwcml2LT5waXBl d2lyZV9jb250ZXh0LCBOVUxMLCAwKTsKKysgIGlmICghcHJpdi0+cGlwZXdpcmVfY29yZSkKKyAg ICAgeworICAgICAgIGdfc2V0X2Vycm9yIChlcnJvciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9G QUlMRUQsCistICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBjcmVhdCBwaXBld2lyZSByZW1v dGUiKTsKKysgICAgICAgICAgICAgICAgICAgIkNvdWxkbid0IGNvbm5lY3QgcGlwZXdpcmUgY29u dGV4dCIpOworICAgICAgIHJldHVybiBGQUxTRTsKKyAgICAgfQorCistICBwd19yZW1vdGVfYWRk X2xpc3RlbmVyIChwcml2LT5waXBld2lyZV9yZW1vdGUsCistICAgICAgICAgICAgICAgICAgICAg ICAgICAmcHJpdi0+cGlwZXdpcmVfcmVtb3RlX2xpc3RlbmVyLAorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgJnJlbW90ZV9ldmVudHMsCistICAgICAgICAgICAgICAgICAgICAgICAgICBzcmMp OworKyAgcHdfY29yZV9hZGRfbGlzdGVuZXIgKHByaXYtPnBpcGV3aXJlX2NvcmUsCisrICAgICAg ICAgICAgICAgICAgICAgICAgJnByaXYtPnBpcGV3aXJlX2NvcmVfbGlzdGVuZXIsCisrICAgICAg ICAgICAgICAgICAgICAgICAgJmNvcmVfZXZlbnRzLAorKyAgICAgICAgICAgICAgICAgICAgICAg IHNyYyk7CisKKy0gIHByaXYtPnBpcGV3aXJlX3R5cGUgPSBwd19jb3JlX2dldF90eXBlIChwcml2 LT5waXBld2lyZV9jb3JlKTsKKy0gIGluaXRfc3BhX3R5cGUgKCZwcml2LT5zcGFfdHlwZSwgcHJp di0+cGlwZXdpcmVfdHlwZS0+bWFwKTsKKy0KKy0gIGlmIChwd19yZW1vdGVfY29ubmVjdCAocHJp di0+cGlwZXdpcmVfcmVtb3RlKSAhPSAwKQorLSAgICB7CistICAgICAgZ19zZXRfZXJyb3IgKGVy cm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9SX0ZBSUxFRCwKKy0gICAgICAgICAgICAgICAgICAg IkNvdWxkbid0IGNvbm5lY3QgcGlwZXdpcmUgcmVtb3RlIik7CistICAgICAgcmV0dXJuIEZBTFNF OworLSAgICB9CisrICBwcml2LT5waXBld2lyZV9zdHJlYW0gPSBjcmVhdGVfcGlwZXdpcmVfc3Ry ZWFtIChzcmMsIGVycm9yKTsKKysgIGlmICghcHJpdi0+cGlwZXdpcmVfc3RyZWFtKQorKyAgICBy ZXR1cm4gRkFMU0U7CisKKyAgIHJldHVybiBUUlVFOworIH0KK0BAIC05MTIsOCArODU1LDggQEAg bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2ZpbmFsaXplIChHT2JqZWN0ICpvYmplY3QpCisg ICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19kaXNhYmxlIChzcmMpOworCisgICBnX2Ns ZWFyX3BvaW50ZXIgKCZwcml2LT5waXBld2lyZV9zdHJlYW0sIHB3X3N0cmVhbV9kZXN0cm95KTsK Ky0gIGdfY2xlYXJfcG9pbnRlciAoJnByaXYtPnBpcGV3aXJlX3JlbW90ZSwgcHdfcmVtb3RlX2Rl c3Ryb3kpOworLSAgZ19jbGVhcl9wb2ludGVyICgmcHJpdi0+cGlwZXdpcmVfY29yZSwgcHdfY29y ZV9kZXN0cm95KTsKKysgIGdfY2xlYXJfcG9pbnRlciAoJnByaXYtPnBpcGV3aXJlX2NvcmUsIHB3 X2NvcmVfZGlzY29ubmVjdCk7CisrICBnX2NsZWFyX3BvaW50ZXIgKCZwcml2LT5waXBld2lyZV9j b250ZXh0LCBwd19jb250ZXh0X2Rlc3Ryb3kpOworICAgZ19zb3VyY2VfZGVzdHJveSAoJnByaXYt PnBpcGV3aXJlX3NvdXJjZS0+YmFzZSk7CisKKyAgIEdfT0JKRUNUX0NMQVNTIChtZXRhX3NjcmVl bl9jYXN0X3N0cmVhbV9zcmNfcGFyZW50X2NsYXNzKS0+ZmluYWxpemUgKG9iamVjdCk7CmRpZmYg LS1naXQgYS9zcmNwa2dzL211dHRlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRl CmluZGV4IDRlMGJkMzJiNjdkLi44MDZhM2JlZjlmMCAxMDA2NDQKLS0tIGEvc3JjcGtncy9tdXR0 ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtdXR0ZXInCiBwa2duYW1lPW11dHRlcgogdmVyc2lvbj0z LjM0LjEKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRf c3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRGVnbF9kZXZpY2U9dHJ1ZSAtRHVkZXY9dHJ1 ZSAtRG5hdGl2ZV9iYWNrZW5kPXRydWUK --===============0168795556619925204==--