From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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=unavailable autolearn_force=no version=3.4.2 Received: from inbox.vuxu.org (localhost [IPv6:::1]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id ce482be5 for ; Thu, 12 Sep 2019 15:09:52 +0000 (UTC) Content-Type: multipart/mixed; boundary="===============6611162606408932116==" MIME-Version: 1.0 Subject: Re: [PR PATCH] [Updated] dqlite: update to 0.9.1 To: ml@inbox.vuxu.org From: voidlinux-github@inbox.vuxu.org Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Thu, 12 Sep 2019 17:09:52 +0200 Message-ID: <20190912150952.7SZZyWYp9se5QbTgTdPTRSybDzy1zzdhaGQEJifQjA4@z> GitHub notification mails are now in MIME to allow UTF8. --===============6611162606408932116== MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkganVsaW82NDE3NDIgYWdhaW5zdCBt YXN0ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29t L2p1bGlvNjQxNzQyL3ZvaWQtcGFja2FnZXMgZHFsaXRlCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lk LWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC8xMzE2MwoKZHFsaXRlOiB1cGRhdGUgdG8gMC45LjEK CgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBh Y2thZ2VzL3B1bGwvMTMxNjMucGF0Y2ggaXMgYXR0YWNoZWQ= --===============6611162606408932116== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-dqlite-13163.patch" RnJvbSA1NmZmNzg0NTBiNDU4MTlmNzU5ZjdkN2RhNWUxMDgyOWVkYjAyZmI3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKdWxpbyBHYWx2YW4gPGp1bGlvQGVwYXpvdGUubmV0PgpEYXRl OiBUdWUsIDE2IEp1bCAyMDE5IDE2OjQ4OjMyIC0wNzAwClN1YmplY3Q6IFtQQVRDSCAxLzZdIE5l dyBwYWNrYWdlOiBsaWJjby0xOS4xCgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgfCAgMSAr CiBzcmNwa2dzL2xpYmNvLWRldmVsICAgIHwgIDEgKwogc3JjcGtncy9saWJjby90ZW1wbGF0ZSB8 IDI2ICsrKysrKysrKysrKysrKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDI4IGluc2Vy dGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL2xpYmNvLWRldmVsCiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9saWJjby90ZW1wbGF0ZQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9z aGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IDA5ZGY0ZjNjZWNhLi4yN2Y5ZWE2MDIxOCAxMDA2 NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC0zNTA4LDMgKzM1 MDgsNCBAQCBsaWJkcnVtc3RpY2stZmlsZS5zby4xIGRydW1zdGljay0xLjEuMl8xCiBsaWJkcnVt c3RpY2stYWxzYS5zby4xIGRydW1zdGljay0xLjEuMl8xCiBsaWJkcnVtc3RpY2stcnQuc28uMSBk cnVtc3RpY2stMS4xLjJfMQogbGlibm96emxlLnNvLjEgbGlibm96emxlMS0xLjExXzIKK2xpYmNv LnNvLjAgbGliY28tMTkuMV8xCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmNvLWRldmVsIGIvc3Jj cGtncy9saWJjby1kZXZlbApuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMC4u OWNiZWUzOTZhZGYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xpYmNvLWRldmVsCkBAIC0w LDAgKzEgQEAKK2xpYmNvClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv c3JjcGtncy9saWJjby90ZW1wbGF0ZSBiL3NyY3BrZ3MvbGliY28vdGVtcGxhdGUKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmY5YmNlODAwYjhhCi0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9saWJjby90ZW1wbGF0ZQpAQCAtMCwwICsxLDI2IEBACisjIFRlbXBsYXRl IGZpbGUgZm9yICdsaWJjbycKK3BrZ25hbWU9bGliY28KK3ZlcnNpb249MTkuMQorcmV2aXNpb249 MQorYnVpbGRfc3R5bGU9Z251LW1ha2VmaWxlCitzaG9ydF9kZXNjPSJDb29wZXJhdGl2ZSBtdWx0 aXRocmVhZGluZyBsaWJyYXJ5IHdyaXR0ZW4gaW4gQzg5IgorbWFpbnRhaW5lcj0iSnVsaW8gR2Fs dmFuIDxqdWxpb2dhbHZhbkBwcm90b25tYWlsLmNvbT4iCitsaWNlbnNlPSJJU0MiCitob21lcGFn ZT0iaHR0cHM6Ly9naXRodWIuY29tL2ZyZWVla2FuYXlha2EvbGliY28iCitkaXN0ZmlsZXM9Imh0 dHBzOi8vZ2l0aHViLmNvbS9mcmVlZWthbmF5YWthL2xpYmNvL2FyY2hpdmUvdiR7dmVyc2lvbn0u dGFyLmd6IgorY2hlY2tzdW09MGNiYjNhNmJhMjNjNTk4NTY4M2JhMGJlMjEzYmIzM2JkNjE3NDkw YWViNTRhNGQ0NDIxOTY3YTRmZTllMmI5NQorCitwb3N0X2luc3RhbGwoKSB7CisJdmxpY2Vuc2Ug TElDRU5TRQorfQorCitsaWJjby1kZXZlbF9wYWNrYWdlKCkgeworCWRlcGVuZHM9ImxpYmNvPj0k e3ZlcnNpb259XyR7cmV2aXNpb259IgorCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBmaWxl cyIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2luY2x1ZGUKKwkJdm1vdmUgdXNyL2xp Yi9wa2djb25maWcKKwkJdm1vdmUgInVzci9saWIvKi5hIgorCQl2bW92ZSAidXNyL2xpYi8qLnNv IgorCX0KK30KCkZyb20gMzk0ZTUyMjdjYzViZDdhMmU5ZTY4MjE2YjA0OTAwOTFlNjc5OGE0NSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSnVsaW8gR2FsdmFuIDxqdWxpb0BlcGF6b3Rl Lm5ldD4KRGF0ZTogVHVlLCAxNiBKdWwgMjAxOSAxNjo1OTo1NCAtMDcwMApTdWJqZWN0OiBbUEFU Q0ggMi82XSBOZXcgcGFja2FnZTogcmFmdC0wLjkuNQoKLS0tCiBzcmNwa2dzL3JhZnQtZGV2ZWwg ICAgfCAgMSArCiBzcmNwa2dzL3JhZnQvdGVtcGxhdGUgfCAyOSArKysrKysrKysrKysrKysrKysr KysrKysrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCAzMCBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9k ZSAxMjAwMDAgc3JjcGtncy9yYWZ0LWRldmVsCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9y YWZ0L3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9yYWZ0LWRldmVsIGIvc3JjcGtncy9y YWZ0LWRldmVsCm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwLi5kOTZjOTA4 NTc4YQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcmFmdC1kZXZlbApAQCAtMCwwICsxIEBA CityYWZ0ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9y YWZ0L3RlbXBsYXRlIGIvc3JjcGtncy9yYWZ0L3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAwLi4yMDFmYWQ5ODg4YwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvcmFmdC90ZW1wbGF0ZQpAQCAtMCwwICsxLDI5IEBACisjIFRlbXBsYXRlIGZpbGUgZm9yICdy YWZ0JworcGtnbmFtZT1yYWZ0Cit2ZXJzaW9uPTAuOS41CityZXZpc2lvbj0xCitidWlsZF9zdHls ZT1nbnUtY29uZmlndXJlCitjb25maWd1cmVfYXJncz0iLS1lbmFibGUtZXhhbXBsZT1ubyIKK2hv c3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBhdXRvY29uZiBhdXRvbWFrZSBsaWJ0b29sIgorbWFr ZWRlcGVuZHM9ImxpYnV2LWRldmVsIgorc2hvcnRfZGVzYz0iQyBpbXBsZW1lbnRhdGlvbiBvZiB0 aGUgUmFmdCBjb25zZW5zdXMgcHJvdG9jb2wiCittYWludGFpbmVyPSJKdWxpbyBHYWx2YW4gPGp1 bGlvZ2FsdmFuQHByb3Rvbm1haWwuY29tPiIKK2xpY2Vuc2U9IkFwYWNoZS0yLjAiCitob21lcGFn ZT0iaHR0cHM6Ly9naXRodWIuY29tL0Nhbm9uaWNhbEx0ZC9yYWZ0IgorZGlzdGZpbGVzPSJodHRw czovL2dpdGh1Yi5jb20vQ2Fub25pY2FsTHRkL3JhZnQvYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIu Z3oiCitjaGVja3N1bT0xZjhlMjUzMDQ2MjU0NmIzOWU1OTE1YzQ5YjY2ZWNlNDE3NzBmYzQwZTdi MWU1MzdjZjdhN2ZhZGFiYjVhODdkCisKK3ByZV9jb25maWd1cmUoKSB7CisJYXV0b3JlY29uZiAt aQorfQorCityYWZ0LWRldmVsX3BhY2thZ2UoKSB7CisJZGVwZW5kcz0iJHttYWtlZGVwZW5kc30g cmFmdD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1l bnQgZmlsZXMiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9pbmNsdWRlCisJCXZtb3Zl IHVzci9saWIvcGtnY29uZmlnCisJCXZtb3ZlICJ1c3IvbGliLyouYSIKKwkJdm1vdmUgInVzci9s aWIvKi5zbyIKKwl9Cit9CgpGcm9tIGJhNmE5YWNkMmYyOTE3NzRiM2JmNTE1OGNmYTA3OTMyYTQy OWMyYmQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEp1bGlvIEdhbHZhbiA8anVsaW9A ZXBhem90ZS5uZXQ+CkRhdGU6IFNhdCwgNyBTZXAgMjAxOSAxMDowMDo1MiAtMDcwMApTdWJqZWN0 OiBbUEFUQ0ggMy82XSBzcWxpdGUtcmVwbGljYXRpb246IHVwZGF0ZSB0byAzLjI5LjAKCi0tLQog c3JjcGtncy9zcWxpdGUtcmVwbGljYXRpb24vdGVtcGxhdGUgfCA5ICsrKy0tLS0tLQogMSBmaWxl IGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL3NxbGl0ZS1yZXBsaWNhdGlvbi90ZW1wbGF0ZSBiL3NyY3BrZ3Mvc3FsaXRlLXJlcGxp Y2F0aW9uL3RlbXBsYXRlCmluZGV4IGI1YjEwNjNkOGNhLi44MTg5OTlmMTU5ZCAxMDA2NDQKLS0t IGEvc3JjcGtncy9zcWxpdGUtcmVwbGljYXRpb24vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9zcWxp dGUtcmVwbGljYXRpb24vdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ3NxbGl0ZS1yZXBsaWNhdGlvbicKIHBrZ25hbWU9c3FsaXRlLXJlcGxpY2F0aW9uCi12 ZXJzaW9uPTMuMjguMAordmVyc2lvbj0zLjI5LjAKIHJldmlzaW9uPTEKIHdya3NyYz0ic3FsaXRl LXZlcnNpb24tJHt2ZXJzaW9ufS1yZXBsaWNhdGlvbjMiCiBidWlsZF9zdHlsZT1nbnUtY29uZmln dXJlCi1jb25maWd1cmVfYXJncz0iLS1lbmFibGUtd2FsLXJlcGxpY2F0aW9uIC0tZW5hYmxlLXRo cmVhZHNhZmUgLS1lbmFibGUtZHluYW1pYy1leHRlbnNpb25zIC0tZW5hYmxlLWZ0czUiCitjb25m aWd1cmVfYXJncz0iLS1lbmFibGUtcmVwbGljYXRpb24gLS1lbmFibGUtdGhyZWFkc2FmZSAtLWVu YWJsZS1keW5hbWljLWV4dGVuc2lvbnMgLS1lbmFibGUtZnRzNSIKIGhvc3RtYWtlZGVwZW5kcz0i dGNsIgogbWFrZWRlcGVuZHM9ImxpYmVkaXQtZGV2ZWwiCiBzaG9ydF9kZXNjPSJSZXBsaWNhdGlv biBFbmFibGVkIFNRTCBEYXRhYmFzZSBFbmdpbmUgaW4gYSBDIExpYnJhcnkiCkBAIC0xMiw3ICsx Miw3IEBAIG1haW50YWluZXI9IkNhbWVyb24gTmVtbyA8Y2FtZXJvbnRub3JtYW5AZ21haWwuY29t PiIKIGxpY2Vuc2U9IlB1YmxpYyBEb21haW4iCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29t L0Nhbm9uaWNhbEx0ZC9zcWxpdGUiCiBkaXN0ZmlsZXM9IiR7aG9tZXBhZ2V9L2FyY2hpdmUvdmVy c2lvbi0ke3ZlcnNpb259K3JlcGxpY2F0aW9uMy50YXIuZ3oiCi1jaGVja3N1bT0zZTUyZmI5MmVm OGY2NmJhNjQwMTQ1OTQxZjA1YWFiYmZmYjRmNDIyYTBiOWE0MmE5N2I2ODA2ZTJjM2M2ODEyCitj aGVja3N1bT01MTZhZTA0YjdiZWY0NGI2ZGU3MWZlZDk5ZjQxZjFmMTFhZmM3ODE0OTUxNDVjN2Jj Y2YzYzFlMTA3M2MzN2JlCiByZXBsYWNlcz0ic3FsaXRlPj0zLjguMTEuMV8zIgogcHJvdmlkZXM9 InNxbGl0ZS0ke3ZlcnNpb259XyR7cmV2aXNpb259Igogc2hsaWJfcHJvdmlkZXM9ImxpYnNxbGl0 ZTMuc28iCkBAIC0yNiw5ICsyNiw2IEBAIENGTEFHUys9IiAtREhBVkVfRkRBVEFTWU5DIgogZGlz YWJsZV9wYXJhbGxlbF9idWlsZD15ZXMKIAogcHJlX2NvbmZpZ3VyZSgpIHsKLQlwcmludGYgLS0g IkQgMjAxOS0wMy0wOVQxNTo0NTo0NlxuIiA+IG1hbmlmZXN0Ci0JcHJpbnRmIC0tICI4MjUwOTg0 YTM2ODA3OWJiMTgzOGQ0OGQ5OWY4YzFhNjI4MmUwMGJjIiA+IG1hbmlmZXN0LnV1aWQKLQogCXNl ZCAtaSAtZSAncy8gLWx0aW5mby8vZycgY29uZmlndXJlCiB9CiAKCkZyb20gMjAxZDE2ZGM1ODRi OWFmNTRhMDIxNjFmOGU0MjQ3MGNiYTU2OTMwOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogSnVsaW8gR2FsdmFuIDxqdWxpb0BlcGF6b3RlLm5ldD4KRGF0ZTogVHVlLCAxNiBKdWwgMjAx OSAxNTozOToyNCAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggNC82XSBkcWxpdGU6IHVwZGF0ZSB0byAx LjAuMAoKLS0tCiBzcmNwa2dzL2RxbGl0ZS90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBj aGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9kcWxpdGUvdGVtcGxhdGUgYi9zcmNwa2dzL2RxbGl0ZS90ZW1wbGF0ZQppbmRleCBiMTFj MmU5M2JkOS4uMGY1MGQ3YjU3NzkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZHFsaXRlL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvZHFsaXRlL3RlbXBsYXRlCkBAIC0xLDI0ICsxLDI0IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdkcWxpdGUnCiBwa2duYW1lPWRxbGl0ZQotdmVyc2lvbj0wLjIuNgordmVy c2lvbj0xLjAuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1h a2VkZXBlbmRzPSJwa2ctY29uZmlnIGF1dG9jb25mIGF1dG9tYWtlIGxpYnRvb2wiCi1tYWtlZGVw ZW5kcz0ibGlidXYtZGV2ZWwgc3FsaXRlLXJlcGxpY2F0aW9uLWRldmVsIgorbWFrZWRlcGVuZHM9 InNxbGl0ZS1yZXBsaWNhdGlvbi1kZXZlbCByYWZ0LWRldmVsIGxpYmNvLWRldmVsIgogZGVwZW5k cz0ic3FsaXRlLXJlcGxpY2F0aW9uIgogc2hvcnRfZGVzYz0iRGlzdHJpYnV0ZWQgU1FMaXRlIGRh dGFiYXNlIHVzaW5nIHRoZSBSYWZ0IGFsZ29yaXRobSIKIG1haW50YWluZXI9IkNhbWVyb24gTmVt byA8Y2FtZXJvbnRub3JtYW5AZ21haWwuY29tPiIKIGxpY2Vuc2U9IkFwYWNoZS0yLjAiCiBob21l cGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL0Nhbm9uaWNhbEx0ZC9kcWxpdGUiCiBkaXN0ZmlsZXM9 IiR7aG9tZXBhZ2V9L2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09NDdkMzE1 NTBkOTcwYTEyZDI1MTAxYzMzMTg5NmNmYjg1NTEyOGMxMTBkOTEyZjVkYTMzNzEwNjJkOWVjZTUy YgorY2hlY2tzdW09ZjY4YTA0ZjQxODI5ZTQ1MzgzMWI2Y2U3MTg0MDM3MGIxNmU3OTNjNzM1YTBk ZWQyOTFjYmE5NWIyNGY3ZjI1NAogCiBwcmVfY29uZmlndXJlKCkgewogCWF1dG9yZWNvbmYgLWkK IH0KIAogZHFsaXRlLWRldmVsX3BhY2thZ2UoKSB7Ci0JZGVwZW5kcz0ic3FsaXRlLXJlcGxpY2F0 aW9uLWRldmVsIGRxbGl0ZT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlkZXBlbmRzPSIke21h a2VkZXBlbmRzfSBkcWxpdGU+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCiAJc2hvcnRfZGVzYys9 IiAtIGRldmVsb3BtZW50IGZpbGVzIgogCXBrZ19pbnN0YWxsKCkgewogCQl2bW92ZSB1c3IvaW5j bHVkZQoKRnJvbSAyMmY0M2FiNmQyNzdkYWU3MThlMGI2YmRmMTg2NGNmMjFkNDA2NDM3IE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWxpbyBHYWx2YW4gPGp1bGlvQGVwYXpvdGUubmV0 PgpEYXRlOiBTYXQsIDcgU2VwIDIwMTkgMTI6MDA6MTcgLTA3MDAKU3ViamVjdDogW1BBVENIIDUv Nl0gbHhjOiB1cGRhdGUgdG8gMy4yLjEKCi0tLQogc3JjcGtncy9seGMvcGF0Y2hlcy9DVkUtMjAx OS01NzM2LnBhdGNoIHwgMzk5IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9seGMv cGF0Y2hlcy9tdXNsLWNvbXBhdC5wYXRjaCAgIHwgIDEwIC0KIHNyY3BrZ3MvbHhjL3BhdGNoZXMv cmV4ZWN1dGUucGF0Y2ggICAgICB8IDE0OCAtLS0tLS0tLS0KIHNyY3BrZ3MvbHhjL3RlbXBsYXRl ICAgICAgICAgICAgICAgICAgICB8ICAgNCArLQogNCBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlv bnMoKyksIDU1OSBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2x4Yy9w YXRjaGVzL0NWRS0yMDE5LTU3MzYucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2x4 Yy9wYXRjaGVzL211c2wtY29tcGF0LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9s eGMvcGF0Y2hlcy9yZXhlY3V0ZS5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbHhjL3BhdGNo ZXMvQ1ZFLTIwMTktNTczNi5wYXRjaCBiL3NyY3BrZ3MvbHhjL3BhdGNoZXMvQ1ZFLTIwMTktNTcz Ni5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2IxMDVlMjkxMjQuLjAwMDAw MDAwMDAwCi0tLSBhL3NyY3BrZ3MvbHhjL3BhdGNoZXMvQ1ZFLTIwMTktNTczNi5wYXRjaAorKysg L2Rldi9udWxsCkBAIC0xLDM5OSArMCwwIEBACi1Gcm9tIDY0MDAyMzhkMDhjZGYxY2EyMGQ0OWJh ZmI4NWY0ZTIyNDM0OGJmOWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBDaHJpc3Rp YW4gQnJhdW5lciA8Y2hyaXN0aWFuLmJyYXVuZXJAdWJ1bnR1LmNvbT4KLURhdGU6IFNhdCwgMjYg SmFuIDIwMTkgMDE6MTk6MjkgKzAxMDAKLVN1YmplY3Q6IFtQQVRDSF0gQ1ZFLTIwMTktNTczNiAo cnVuQyk6IHJleGVjIGNhbGxlcnMgYXMgbWVtZmQKLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50 LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rp bmc6IDhiaXQKLQotQWRhbSBJd2FuaXVrIGFuZCBCb3J5cyBQb3DFgmF3c2tpIGRpc2NvdmVyZWQg dGhhdCBhbiBhdHRhY2tlciBjYW4gY29tcHJvbWlzZSB0aGUKLXJ1bkMgaG9zdCBiaW5hcnkgZnJv bSBpbnNpZGUgYSBwcml2aWxlZ2VkIHJ1bkMgY29udGFpbmVyLiBBcyBhIHJlc3VsdCwgdGhpcwot Y291bGQgYmUgZXhwbG9pdGVkIHRvIGdhaW4gcm9vdCBhY2Nlc3Mgb24gdGhlIGhvc3QuIHJ1bkMg aXMgdXNlZCBhcyB0aGUgZGVmYXVsdAotcnVudGltZSBmb3IgY29udGFpbmVycyB3aXRoIERvY2tl ciwgY29udGFpbmVyZCwgUG9kbWFuLCBhbmQgQ1JJLU8uCi0KLVRoZSBhdHRhY2sgY2FuIGJlIG1h ZGUgd2hlbiBhdHRhY2hpbmcgdG8gYSBydW5uaW5nIGNvbnRhaW5lciBvciB3aGVuIHN0YXJ0aW5n IGEKLWNvbnRhaW5lciBydW5uaW5nIGEgc3BlY2lhbGx5IGNyYWZ0ZWQgaW1hZ2UuICBGb3IgZXhh bXBsZSwgd2hlbiBydW5DIGF0dGFjaGVzCi10byBhIGNvbnRhaW5lciB0aGUgYXR0YWNrZXIgY2Fu IHRyaWNrIGl0IGludG8gZXhlY3V0aW5nIGl0c2VsZi4gVGhpcyBjb3VsZCBiZQotZG9uZSBieSBy ZXBsYWNpbmcgdGhlIHRhcmdldCBiaW5hcnkgaW5zaWRlIHRoZSBjb250YWluZXIgd2l0aCBhIGN1 c3RvbSBiaW5hcnkKLXBvaW50aW5nIGJhY2sgYXQgdGhlIHJ1bkMgYmluYXJ5IGl0c2VsZi4gQXMg YW4gZXhhbXBsZSwgaWYgdGhlIHRhcmdldCBiaW5hcnkKLXdhcyAvYmluL2Jhc2gsIHRoaXMgY291 bGQgYmUgcmVwbGFjZWQgd2l0aCBhbiBleGVjdXRhYmxlIHNjcmlwdCBzcGVjaWZ5aW5nIHRoZQot aW50ZXJwcmV0ZXIgcGF0aCAjIS9wcm9jL3NlbGYvZXhlICgvcHJvYy9zZWxmL2V4ZWMgaXMgYSBz eW1ib2xpYyBsaW5rIGNyZWF0ZWQKLWJ5IHRoZSBrZXJuZWwgZm9yIGV2ZXJ5IHByb2Nlc3Mgd2hp Y2ggcG9pbnRzIHRvIHRoZSBiaW5hcnkgdGhhdCB3YXMgZXhlY3V0ZWQKLWZvciB0aGF0IHByb2Nl c3MpLiBBcyBzdWNoIHdoZW4gL2Jpbi9iYXNoIGlzIGV4ZWN1dGVkIGluc2lkZSB0aGUgY29udGFp bmVyLAotaW5zdGVhZCB0aGUgdGFyZ2V0IG9mIC9wcm9jL3NlbGYvZXhlIHdpbGwgYmUgZXhlY3V0 ZWQgLSB3aGljaCB3aWxsIHBvaW50IHRvIHRoZQotcnVuYyBiaW5hcnkgb24gdGhlIGhvc3QuIFRo ZSBhdHRhY2tlciBjYW4gdGhlbiBwcm9jZWVkIHRvIHdyaXRlIHRvIHRoZSB0YXJnZXQKLW9mIC9w cm9jL3NlbGYvZXhlIHRvIHRyeSBhbmQgb3ZlcndyaXRlIHRoZSBydW5DIGJpbmFyeSBvbiB0aGUg aG9zdC4gSG93ZXZlciBpbgotZ2VuZXJhbCwgdGhpcyB3aWxsIG5vdCBzdWNjZWVkIGFzIHRoZSBr ZXJuZWwgd2lsbCBub3QgcGVybWl0IGl0IHRvIGJlCi1vdmVyd3JpdHRlbiB3aGlsc3QgcnVuQyBp cyBleGVjdXRpbmcuIFRvIG92ZXJjb21lIHRoaXMsIHRoZSBhdHRhY2tlciBjYW4KLWluc3RlYWQg b3BlbiBhIGZpbGUgZGVzY3JpcHRvciB0byAvcHJvYy9zZWxmL2V4ZSB1c2luZyB0aGUgT19QQVRI IGZsYWcgYW5kIHRoZW4KLXByb2NlZWQgdG8gcmVvcGVuIHRoZSBiaW5hcnkgYXMgT19XUk9OTFkg dGhyb3VnaCAvcHJvYy9zZWxmL2ZkLzxucj4gYW5kIHRyeSB0bwotd3JpdGUgdG8gaXQgaW4gYSBi dXN5IGxvb3AgZnJvbSBhIHNlcGFyYXRlIHByb2Nlc3MuIFVsdGltYXRlbHkgaXQgd2lsbCBzdWNj ZWVkCi13aGVuIHRoZSBydW5DIGJpbmFyeSBleGl0cy4gQWZ0ZXIgdGhpcyB0aGUgcnVuQyBiaW5h cnkgaXMgY29tcHJvbWlzZWQgYW5kIGNhbgotYmUgdXNlZCB0byBhdHRhY2sgb3RoZXIgY29udGFp bmVycyBvciB0aGUgaG9zdCBpdHNlbGYuCi0KLVRoaXMgYXR0YWNrIGlzIG9ubHkgcG9zc2libGUg d2l0aCBwcml2aWxlZ2VkIGNvbnRhaW5lcnMgc2luY2UgaXQgcmVxdWlyZXMgcm9vdAotcHJpdmls ZWdlIG9uIHRoZSBob3N0IHRvIG92ZXJ3cml0ZSB0aGUgcnVuQyBiaW5hcnkuIFVucHJpdmlsZWdl ZCBjb250YWluZXJzCi13aXRoIGEgbm9uLWlkZW50aXR5IElEIG1hcHBpbmcgZG8gbm90IGhhdmUg dGhlIHBlcm1pc3Npb24gdG8gd3JpdGUgdG8gdGhlIGhvc3QKLWJpbmFyeSBhbmQgdGhlcmVmb3Jl IGFyZSB1bmFmZmVjdGVkIGJ5IHRoaXMgYXR0YWNrLgotCi1MWEMgaXMgYWxzbyBpbXBhY3RlZCBp biBhIHNpbWlsYXIgbWFubmVyIGJ5IHRoaXMgdnVsbmVyYWJpbGl0eSwgaG93ZXZlciBhcyB0aGUK LUxYQyBwcm9qZWN0IGNvbnNpZGVycyBwcml2aWxlZ2VkIGNvbnRhaW5lcnMgdG8gYmUgdW5zYWZl IG5vIENWRSBoYXMgYmVlbgotYXNzaWduZWQgZm9yIHRoaXMgaXNzdWUgZm9yIExYQy4gUXVvdGlu ZyBmcm9tIHRoZQotaHR0cHM6Ly9saW51eGNvbnRhaW5lcnMub3JnL2x4Yy9zZWN1cml0eS8gcHJv amVjdCdzIFNlY3VyaXR5IGluZm9ybWF0aW9uIHBhZ2U6Ci0KLSJBcyBwcml2aWxlZ2VkIGNvbnRh aW5lcnMgYXJlIGNvbnNpZGVyZWQgdW5zYWZlLCB3ZSB0eXBpY2FsbHkgd2lsbCBub3QgY29uc2lk ZXIKLW5ldyBjb250YWluZXIgZXNjYXBlIGV4cGxvaXRzIHRvIGJlIHNlY3VyaXR5IGlzc3VlcyB3 b3J0aHkgb2YgYSBDVkUgYW5kIHF1aWNrCi1maXguIFdlIHdpbGwgaG93ZXZlciB0cnkgdG8gbWl0 aWdhdGUgdGhvc2UgaXNzdWVzIHNvIHRoYXQgYWNjaWRlbnRhbCBkYW1hZ2UgdG8KLXRoZSBob3N0 IGlzIHByZXZlbnRlZC4iCi0KLVRvIHByZXZlbnQgdGhpcyBhdHRhY2ssIExYQyBoYXMgYmVlbiBw YXRjaGVkIHRvIGNyZWF0ZSBhIHRlbXBvcmFyeSBjb3B5IG9mIHRoZQotY2FsbGluZyBiaW5hcnkg aXRzZWxmIHdoZW4gaXQgc3RhcnRzIG9yIGF0dGFjaGVzIHRvIGNvbnRhaW5lcnMuIFRvIGRvIHRo aXMgTFhDCi1jcmVhdGVzIGFuIGFub255bW91cywgaW4tbWVtb3J5IGZpbGUgdXNpbmcgdGhlIG1l bWZkX2NyZWF0ZSgpIHN5c3RlbSBjYWxsIGFuZAotY29waWVzIGl0c2VsZiBpbnRvIHRoZSB0ZW1w b3JhcnkgaW4tbWVtb3J5IGZpbGUsIHdoaWNoIGlzIHRoZW4gc2VhbGVkIHRvCi1wcmV2ZW50IGZ1 cnRoZXIgbW9kaWZpY2F0aW9ucy4gTFhDIHRoZW4gZXhlY3V0ZXMgdGhpcyBzZWFsZWQsIGluLW1l bW9yeSBmaWxlCi1pbnN0ZWFkIG9mIHRoZSBvcmlnaW5hbCBvbi1kaXNrIGJpbmFyeS4gQW55IGNv bXByb21pc2luZyB3cml0ZSBvcGVyYXRpb25zIGZyb20KLWEgcHJpdmlsZWdlZCBjb250YWluZXIg dG8gdGhlIGhvc3QgTFhDIGJpbmFyeSB3aWxsIHRoZW4gd3JpdGUgdG8gdGhlIHRlbXBvcmFyeQot aW4tbWVtb3J5IGJpbmFyeSBhbmQgbm90IHRvIHRoZSBob3N0IGJpbmFyeSBvbi1kaXNrLCBwcmVz ZXJ2aW5nIHRoZSBpbnRlZ3JpdHkKLW9mIHRoZSBob3N0IExYQyBiaW5hcnkuIEFsc28gYXMgdGhl IHRlbXBvcmFyeSwgaW4tbWVtb3J5IExYQyBiaW5hcnkgaXMgc2VhbGVkLAotd3JpdGVzIHRvIHRo aXMgd2lsbCBhbHNvIGZhaWwuCi0KLU5vdGU6IG1lbWZkX2NyZWF0ZSgpIHdhcyBhZGRlZCB0byB0 aGUgTGludXgga2VybmVsIGluIHRoZSAzLjE3IHJlbGVhc2UuCi0KLVNpZ25lZC1vZmYtYnk6IENo cmlzdGlhbiBCcmF1bmVyIDxjaHJpc3RpYW4uYnJhdW5lckB1YnVudHUuY29tPgotQ28tRGV2ZWxv cGVkLWJ5OiBBbGVzYSBTYXJhaSA8YXNhcmFpQHN1c2UuZGU+Ci1BY2tlZC1ieTogU2VyZ2UgSGFs bHluIDxzZXJnZUBoYWxseW4uY29tPgotU2lnbmVkLW9mZi1ieTogQ2hyaXN0aWFuIEJyYXVuZXIg PGNocmlzdGlhbi5icmF1bmVyQHVidW50dS5jb20+Ci0tLS0KLSBjb25maWd1cmUuYWMgICAgICAg ICAgICAgICB8ICAxMiArKysKLSBzcmMvbHhjL01ha2VmaWxlLmFtICAgICAgICB8ICAgNCArCi0g c3JjL2x4Yy9maWxlX3V0aWxzLmMgICAgICAgfCAgNDEgKysrKysrKystCi0gc3JjL2x4Yy9maWxl X3V0aWxzLmggICAgICAgfCAgIDEgKwotIHNyYy9seGMvcmV4ZWMuYyAgICAgICAgICAgIHwgMTgx ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKLSBzcmMvbHhjL3N5c2NhbGxf d3JhcHBlcnMuaCB8ICAxNCArKysKLSA2IGZpbGVzIGNoYW5nZWQsIDI1MiBpbnNlcnRpb25zKCsp LCAxIGRlbGV0aW9uKC0pCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy9seGMvcmV4ZWMuYwotCi1k aWZmIC0tZ2l0IGEvY29uZmlndXJlLmFjIGIvY29uZmlndXJlLmFjCi1pbmRleCA4MzEzYjE4ZDEu LmQ0M2RhYmMwZCAxMDA2NDQKLS0tLSBjb25maWd1cmUuYWMKLSsrKyBjb25maWd1cmUuYWMKLUBA IC03NDYsNiArNzQ2LDE3IEBAIEFNX0NPTkRfSUYoW0VOQUJMRV9ETE9HXSwKLSAJCV0pCi0gCV0p Ci0gCi0rQUNfQVJHX0VOQUJMRShbbWVtZmQtcmV4ZWNdLAotKwlbQUNfSEVMUF9TVFJJTkcoWy0t ZW5hYmxlLW1lbWZkLXJleGVjXSwgW2VuZm9yY2UgbGlibHhjIGFzIGEgbWVtZmQgdG8gcHJvdGVj dCBhZ2FpbnN0IGNlcnRhaW4gc3ltbGluayBhdHRhY2tzIFtkZWZhdWx0PXllc11dKV0sCi0rCVtd LCBbZW5hYmxlX21lbWZkX3JleGVjPXllc10pCi0rQU1fQ09ORElUSU9OQUwoW0VORk9SQ0VfTUVN RkRfUkVYRUNdLCBbdGVzdCAieCRlbmFibGVfbWVtZmRfcmV4ZWMiID0gInh5ZXMiXSkKLStpZiB0 ZXN0ICJ4JGVuYWJsZV9tZW1mZF9yZXhlYyIgPSAieHllcyI7IHRoZW4KLSsJQUNfREVGSU5FKFtF TkZPUkNFX01FTUZEX1JFWEVDXSwgMSwgW1JleGVjIGxpYmx4YyBhcyBtZW1mZF0pCi0rCUFDX01T R19SRVNVTFQoW3llc10pCi0rZWxzZQotKwlBQ19NU0dfUkVTVUxUKFtub10pCi0rZmkKLSsKLSAj IEZpbGVzIHJlcXVpcmluZyBzb21lIHZhcmlhYmxlIGV4cGFuc2lvbgotIEFDX0NPTkZJR19GSUxF UyhbCi0gCU1ha2VmaWxlCi1AQCAtOTc0LDYgKzk4NSw3IEBAIFNlY3VyaXR5IGZlYXR1cmVzOgot ICAtIExpbnV4IGNhcGFiaWxpdGllczogJGVuYWJsZV9jYXBhYmlsaXRpZXMKLSAgLSBzZWNjb21w OiAkZW5hYmxlX3NlY2NvbXAKLSAgLSBTRUxpbnV4OiAkZW5hYmxlX3NlbGludXgKLSsgLSBtZW1m ZCByZXhlYzogJGVuYWJsZV9tZW1mZF9yZXhlYwotIAotIFBBTToKLSAgLSBQQU0gbW9kdWxlOiAk ZW5hYmxlX3BhbQotZGlmZiAtLWdpdCBhL3NyYy9seGMvTWFrZWZpbGUuYW0gYi9zcmMvbHhjL01h a2VmaWxlLmFtCi1pbmRleCA2YmE5ZWNhZDIuLmRjOGFhM2Q3NyAxMDA2NDQKLS0tLSBzcmMvbHhj L01ha2VmaWxlLmFtCi0rKysgc3JjL2x4Yy9NYWtlZmlsZS5hbQotQEAgLTE3Nyw2ICsxNzcsMTAg QEAgaWYgIUhBVkVfU1RSTENBVAotIGxpYmx4Y19sYV9TT1VSQ0VTICs9IC4uL2luY2x1ZGUvc3Ry bGNhdC5jIC4uL2luY2x1ZGUvc3RybGNhdC5oCi0gZW5kaWYKLSAKLStpZiBFTkZPUkNFX01FTUZE X1JFWEVDCi0rbGlibHhjX2xhX1NPVVJDRVMgKz0gcmV4ZWMuYwotK2VuZGlmCi0rCi0gQU1fQ0ZM QUdTID0gLURMWENST09URlNNT1VOVD1cIiQoTFhDUk9PVEZTTU9VTlQpXCIgXAotIAkgICAgLURM WENQQVRIPVwiJChMWENQQVRIKVwiIFwKLSAJICAgIC1ETFhDX0dMT0JBTF9DT05GPVwiJChMWENf R0xPQkFMX0NPTkYpXCIgXAotZGlmZiAtLWdpdCBhL3NyYy9seGMvZmlsZV91dGlscy5jIGIvc3Jj L2x4Yy9maWxlX3V0aWxzLmMKLWluZGV4IGY4OWFhNjM4ZC4uOTMwZmQ3MzhhIDEwMDY0NAotLS0t IHNyYy9seGMvZmlsZV91dGlscy5jCi0rKysgc3JjL2x4Yy9maWxlX3V0aWxzLmMKLUBAIC0zMSw3 ICszMSw3IEBACi0gI2luY2x1ZGUgImNvbmZpZy5oIgotICNpbmNsdWRlICJmaWxlX3V0aWxzLmgi Ci0gI2luY2x1ZGUgIm1hY3JvLmgiCi0tI2luY2x1ZGUgInN0cmluZy5oIgotKyNpbmNsdWRlICJz dHJpbmdfdXRpbHMuaCIKLSAKLSBpbnQgbHhjX3dyaXRlX3RvX2ZpbGUoY29uc3QgY2hhciAqZmls ZW5hbWUsIGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGNvdW50LAotIAkJICAgICAgYm9vbCBhZGRf bmV3bGluZSwgbW9kZV90IG1vZGUpCi1AQCAtMzI3LDMgKzMyNyw0MiBAQCBzc2l6ZV90IGx4Y19z ZW5kZmlsZV9ub2ludHIoaW50IG91dF9mZCwgaW50IGluX2ZkLCBvZmZfdCAqb2Zmc2V0LCBzaXpl X3QgY291bnQpCi0gCi0gCXJldHVybiByZXQ7Ci0gfQotKwotK2NoYXIgKmZpbGVfdG9fYnVmKGNo YXIgKnBhdGgsIHNpemVfdCAqbGVuZ3RoKQotK3sKLSsJaW50IGZkOwotKwljaGFyIGJ1ZltQQVRI X01BWF07Ci0rCWNoYXIgKmNvcHkgPSBOVUxMOwotKwotKwlpZiAoIWxlbmd0aCkKLSsJCXJldHVy biBOVUxMOwotKwotKwlmZCA9IG9wZW4ocGF0aCwgT19SRE9OTFkgfCBPX0NMT0VYRUMpOwotKwlp ZiAoZmQgPCAwKQotKwkJcmV0dXJuIE5VTEw7Ci0rCi0rCSpsZW5ndGggPSAwOwotKwlmb3IgKDs7 KSB7Ci0rCQlpbnQgbjsKLSsJCWNoYXIgKm9sZCA9IGNvcHk7Ci0rCi0rCQluID0gbHhjX3JlYWRf bm9pbnRyKGZkLCBidWYsIHNpemVvZihidWYpKTsKLSsJCWlmIChuIDwgMCkKLSsJCQlnb3RvIG9u X2Vycm9yOwotKwkJaWYgKCFuKQotKwkJCWJyZWFrOwotKwotKwkJY29weSA9IG11c3RfcmVhbGxv YyhvbGQsICgqbGVuZ3RoICsgbikgKiBzaXplb2YoKm9sZCkpOwotKwkJbWVtY3B5KGNvcHkgKyAq bGVuZ3RoLCBidWYsIG4pOwotKwkJKmxlbmd0aCArPSBuOwotKwl9Ci0rCi0rCWNsb3NlKGZkKTsK LSsJcmV0dXJuIGNvcHk7Ci0rCi0rb25fZXJyb3I6Ci0rCWNsb3NlKGZkKTsKLSsJZnJlZShjb3B5 KTsKLSsKLSsJcmV0dXJuIE5VTEw7Ci0rfQotZGlmZiAtLWdpdCBhL3NyYy9seGMvZmlsZV91dGls cy5oIGIvc3JjL2x4Yy9maWxlX3V0aWxzLmgKLWluZGV4IDYzNjE1NTdhMC4uNTE4YTYxYWYzIDEw MDY0NAotLS0tIHNyYy9seGMvZmlsZV91dGlscy5oCi0rKysgc3JjL2x4Yy9maWxlX3V0aWxzLmgK LUBAIC01NSw1ICs1NSw2IEBAIGV4dGVybiBib29sIGlzX2ZzX3R5cGUoY29uc3Qgc3RydWN0IHN0 YXRmcyAqZnMsIGZzX3R5cGVfbWFnaWMgbWFnaWNfdmFsKTsKLSBleHRlcm4gRklMRSAqZm9wZW5f Y2xvZXhlYyhjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICptb2RlKTsKLSBleHRlcm4gc3Np emVfdCBseGNfc2VuZGZpbGVfbm9pbnRyKGludCBvdXRfZmQsIGludCBpbl9mZCwgb2ZmX3QgKm9m ZnNldCwKLSAJCQkJICAgc2l6ZV90IGNvdW50KTsKLStleHRlcm4gY2hhciAqZmlsZV90b19idWYo Y2hhciAqcGF0aCwgc2l6ZV90ICpsZW5ndGgpOwotIAotICNlbmRpZiAvKiBfX0xYQ19GSUxFX1VU SUxTX0ggKi8KLWRpZmYgLS1naXQgYS9zcmMvbHhjL3JleGVjLmMgYi9zcmMvbHhjL3JleGVjLmMK LW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwMDAuLjM5NmJkNjE3ZgotLS0tIC9k ZXYvbnVsbAotKysrIHNyYy9seGMvcmV4ZWMuYwotQEAgLTAsMCArMSwxODEgQEAKLSsvKiBsaWJs eGNhcGkKLSsgKgotKyAqIENvcHlyaWdodCDCqSAyMDE5IENocmlzdGlhbiBCcmF1bmVyIDxjaHJp c3RpYW4uYnJhdW5lckB1YnVudHUuY29tPi4KLSsgKiBDb3B5cmlnaHQgwqkgMjAxOSBDYW5vbmlj YWwgTHRkLgotKyAqCi0rICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4g cmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKLSsgKiBpdCB1bmRlciB0aGUgdGVybXMgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiwgYXMKLSsgKiBwdWJsaXNo ZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbi4KLSsgKgotKyAqIFRoaXMgcHJvZ3Jh bSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotKyAq IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mCi0rICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ VVJQT1NFLiAgU2VlIHRoZQotKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl IGRldGFpbHMuCi0rICoKLSsgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhbG9uZwotKyAqIHdpdGggdGhpcyBwcm9ncmFt OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sCi0r ICogNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAx IFVTQS4KLSsgKi8KLSsKLSsjaWZuZGVmIF9HTlVfU09VUkNFCi0rI2RlZmluZSBfR05VX1NPVVJD RSAxCi0rI2VuZGlmCi0rI2luY2x1ZGUgPGVycm5vLmg+Ci0rI2luY2x1ZGUgPHN0ZGlvLmg+Ci0r I2luY2x1ZGUgPHN0ZGxpYi5oPgotKyNpbmNsdWRlIDxzdHJpbmcuaD4KLSsKLSsjaW5jbHVkZSAi Y29uZmlnLmgiCi0rI2luY2x1ZGUgImZpbGVfdXRpbHMuaCIKLSsjaW5jbHVkZSAicmF3X3N5c2Nh bGxzLmgiCi0rI2luY2x1ZGUgInN0cmluZ191dGlscy5oIgotKyNpbmNsdWRlICJzeXNjYWxsX3dy YXBwZXJzLmgiCi0rCi0rI2RlZmluZSBMWENfTUVNRkRfUkVYRUNfU0VBTFMgXAotKwkoRl9TRUFM X1NFQUwgfCBGX1NFQUxfU0hSSU5LIHwgRl9TRUFMX0dST1cgfCBGX1NFQUxfV1JJVEUpCi0rCi0r c3RhdGljIGludCBwdXNoX3ZhcmdzKGNoYXIgKmRhdGEsIGludCBkYXRhX2xlbmd0aCwgY2hhciAq KipvdXRwdXQpCi0rewotKwlpbnQgbnVtID0gMDsKLSsJY2hhciAqY3VyID0gZGF0YTsKLSsKLSsJ aWYgKCFkYXRhIHx8ICpvdXRwdXQpCi0rCQlyZXR1cm4gLTE7Ci0rCi0rCSpvdXRwdXQgPSBtdXN0 X3JlYWxsb2MoTlVMTCwgc2l6ZW9mKCoqb3V0cHV0KSk7Ci0rCi0rCXdoaWxlIChjdXIgPCBkYXRh ICsgZGF0YV9sZW5ndGgpIHsKLSsJCW51bSsrOwotKwkJKm91dHB1dCA9IG11c3RfcmVhbGxvYygq b3V0cHV0LCAobnVtICsgMSkgKiBzaXplb2YoKipvdXRwdXQpKTsKLSsKLSsJCSgqb3V0cHV0KVtu dW0gLSAxXSA9IGN1cjsKLSsJCWN1ciArPSBzdHJsZW4oY3VyKSArIDE7Ci0rCX0KLSsJKCpvdXRw dXQpW251bV0gPSBOVUxMOwotKwlyZXR1cm4gbnVtOwotK30KLSsKLStzdGF0aWMgaW50IHBhcnNl X2V4ZWNfcGFyYW1zKGNoYXIgKioqYXJndiwgY2hhciAqKiplbnZwKQotK3sKLSsJaW50IHJldDsK LSsJY2hhciAqY21kbGluZSA9IE5VTEwsICplbnYgPSBOVUxMOwotKwlzaXplX3QgY21kbGluZV9z aXplLCBlbnZfc2l6ZTsKLSsKLSsJY21kbGluZSA9IGZpbGVfdG9fYnVmKCIvcHJvYy9zZWxmL2Nt ZGxpbmUiLCAmY21kbGluZV9zaXplKTsKLSsJaWYgKCFjbWRsaW5lKQotKwkJZ290byBvbl9lcnJv cjsKLSsKLSsJZW52ID0gZmlsZV90b19idWYoIi9wcm9jL3NlbGYvZW52aXJvbiIsICZlbnZfc2l6 ZSk7Ci0rCWlmICghZW52KQotKwkJZ290byBvbl9lcnJvcjsKLSsKLSsJcmV0ID0gcHVzaF92YXJn cyhjbWRsaW5lLCBjbWRsaW5lX3NpemUsIGFyZ3YpOwotKwlpZiAocmV0IDw9IDApCi0rCQlnb3Rv IG9uX2Vycm9yOwotKwotKwlyZXQgPSBwdXNoX3ZhcmdzKGVudiwgZW52X3NpemUsIGVudnApOwot KwlpZiAocmV0IDw9IDApCi0rCQlnb3RvIG9uX2Vycm9yOwotKwotKwlyZXR1cm4gMDsKLSsKLStv bl9lcnJvcjoKLSsJZnJlZShlbnYpOwotKwlmcmVlKGNtZGxpbmUpOwotKwotKwlyZXR1cm4gLTE7 Ci0rfQotKwotK3N0YXRpYyBpbnQgaXNfbWVtZmQodm9pZCkKLSt7Ci0rCWludCBmZCwgc2F2ZWRf ZXJybm8sIHNlYWxzOwotKwotKwlmZCA9IG9wZW4oIi9wcm9jL3NlbGYvZXhlIiwgT19SRE9OTFkg fCBPX0NMT0VYRUMpOwotKwlpZiAoZmQgPCAwKQotKwkJcmV0dXJuIC1FTk9UUkVDT1ZFUkFCTEU7 Ci0rCi0rCXNlYWxzID0gZmNudGwoZmQsIEZfR0VUX1NFQUxTKTsKLSsJc2F2ZWRfZXJybm8gPSBl cnJubzsKLSsJY2xvc2UoZmQpOwotKwllcnJubyA9IHNhdmVkX2Vycm5vOwotKwlpZiAoc2VhbHMg PCAwKQotKwkJcmV0dXJuIC1FSU5WQUw7Ci0rCi0rCXJldHVybiBzZWFscyA9PSBMWENfTUVNRkRf UkVYRUNfU0VBTFM7Ci0rfQotKwotK3N0YXRpYyB2b2lkIGx4Y19yZXhlY19hc19tZW1mZChjaGFy ICoqYXJndiwgY2hhciAqKmVudnAsIGNvbnN0IGNoYXIgKm1lbWZkX25hbWUpCi0rewotKwlpbnQg c2F2ZWRfZXJybm87Ci0rCXNzaXplX3QgYnl0ZXNfc2VudDsKLSsJaW50IGZkID0gLTEsIG1lbWZk ID0gLTE7Ci0rCi0rCW1lbWZkID0gbWVtZmRfY3JlYXRlKG1lbWZkX25hbWUsIE1GRF9BTExPV19T RUFMSU5HIHwgTUZEX0NMT0VYRUMpOwotKwlpZiAobWVtZmQgPCAwKQotKwkJcmV0dXJuOwotKwot KwlmZCA9IG9wZW4oIi9wcm9jL3NlbGYvZXhlIiwgT19SRE9OTFkgfCBPX0NMT0VYRUMpOwotKwlp ZiAoZmQgPCAwKQotKwkJZ290byBvbl9lcnJvcjsKLSsKLSsJLyogc2VuZGZpbGUoKSBoYW5kbGVz IHVwIHRvIDJHQi4gKi8KLSsJYnl0ZXNfc2VudCA9IGx4Y19zZW5kZmlsZV9ub2ludHIobWVtZmQs IGZkLCBOVUxMLCBMWENfU0VOREZJTEVfTUFYKTsKLSsJc2F2ZWRfZXJybm8gPSBlcnJubzsKLSsJ Y2xvc2UoZmQpOwotKwllcnJubyA9IHNhdmVkX2Vycm5vOwotKwlpZiAoYnl0ZXNfc2VudCA8IDAp Ci0rCQlnb3RvIG9uX2Vycm9yOwotKwotKwlpZiAoZmNudGwobWVtZmQsIEZfQUREX1NFQUxTLCBM WENfTUVNRkRfUkVYRUNfU0VBTFMpKQotKwkJZ290byBvbl9lcnJvcjsKLSsKLSsJZmV4ZWN2ZSht ZW1mZCwgYXJndiwgZW52cCk7Ci0rCi0rb25fZXJyb3I6Ci0rCXNhdmVkX2Vycm5vID0gZXJybm87 Ci0rCWNsb3NlKG1lbWZkKTsKLSsJZXJybm8gPSBzYXZlZF9lcnJubzsKLSt9Ci0rCi0rc3RhdGlj IGludCBseGNfcmV4ZWMoY29uc3QgY2hhciAqbWVtZmRfbmFtZSkKLSt7Ci0rCWludCByZXQ7Ci0r CWNoYXIgKiphcmd2ID0gTlVMTCwgKiplbnZwID0gTlVMTDsKLSsKLSsJcmV0ID0gaXNfbWVtZmQo KTsKLSsJaWYgKHJldCA8IDAgJiYgcmV0ID09IC1FTk9UUkVDT1ZFUkFCTEUpIHsKLSsJCWZwcmlu dGYoc3RkZXJyLAotKwkJCSIlcyAtIEZhaWxlZCB0byBkZXRlcm1pbmUgd2hldGhlciB0aGlzIGlz IGEgbWVtZmRcbiIsCi0rCQkJc3RyZXJyb3IoZXJybm8pKTsKLSsJCXJldHVybiAtMTsKLSsJfSBl bHNlIGlmIChyZXQgPiAwKSB7Ci0rCQlyZXR1cm4gMDsKLSsJfQotKwotKwlyZXQgPSBwYXJzZV9l eGVjX3BhcmFtcygmYXJndiwgJmVudnApOwotKwlpZiAocmV0IDwgMCkgewotKwkJZnByaW50Zihz dGRlcnIsCi0rCQkJIiVzIC0gRmFpbGVkIHRvIHBhcnNlIGNvbW1hbmQgbGluZSBwYXJhbWV0ZXJz XG4iLAotKwkJCXN0cmVycm9yKGVycm5vKSk7Ci0rCQlyZXR1cm4gLTE7Ci0rCX0KLSsKLSsJbHhj X3JleGVjX2FzX21lbWZkKGFyZ3YsIGVudnAsIG1lbWZkX25hbWUpOwotKwlmcHJpbnRmKHN0ZGVy ciwgIiVzIC0gRmFpbGVkIHRvIHJleGVjIGFzIG1lbWZkXG4iLCBzdHJlcnJvcihlcnJubykpOwot KwlyZXR1cm4gLTE7Ci0rfQotKwotKy8qKgotKyAqIFRoaXMgZnVuY3Rpb24gd2lsbCBjb3B5IGFu eSBiaW5hcnkgdGhhdCBjYWxscyBsaWJseGMgaW50byBhIG1lbW9yeSBmaWxlIGFuZAotKyAqIHdp bGwgdXNlIHRoZSBtZW1mZCB0byByZXhlY3V0ZSB0aGUgYmluYXJ5LiBUaGlzIGlzIGRvbmUgdG8g cHJldmVudCBhdHRhY2tzCi0rICogdGhyb3VnaCB0aGUgL3Byb2Mvc2VsZi9leGUgc3ltbGluayB0 byBjb3JydXB0IHRoZSBob3N0IGJpbmFyeSB3aGVuIGhvc3QgYW5kCi0rICogY29udGFpbmVyIGFy ZSBpbiB0aGUgc2FtZSB1c2VyIG5hbWVzcGFjZSBvciBoYXZlIHNldCB1cCBhbiBpZGVudGl0eSBp ZAotKyAqIG1hcHBpbmc6IENWRS0yMDE5LTU3MzYuCi0rICovCi0rX19hdHRyaWJ1dGVfXygoY29u c3RydWN0b3IpKSBzdGF0aWMgdm9pZCBsaWJseGNfcmV4ZWModm9pZCkKLSt7Ci0rCWlmIChseGNf cmV4ZWMoImxpYmx4YyIpKSB7Ci0rCQlmcHJpbnRmKHN0ZGVyciwgIkZhaWxlZCB0byByZS1leGVj dXRlIGxpYmx4YyB2aWEgbWVtb3J5IGZpbGUgZGVzY3JpcHRvclxuIik7Ci0rCQlfZXhpdChFWElU X0ZBSUxVUkUpOwotKwl9Ci0rfQotZGlmZiAtLWdpdCBhL3NyYy9seGMvc3lzY2FsbF93cmFwcGVy cy5oIGIvc3JjL2x4Yy9zeXNjYWxsX3dyYXBwZXJzLmgKLWluZGV4IDQyZDk0ZGIyOC4uZGNhNGQx NTcxIDEwMDY0NAotLS0tIHNyYy9seGMvc3lzY2FsbF93cmFwcGVycy5oCi0rKysgc3JjL2x4Yy9z eXNjYWxsX3dyYXBwZXJzLmgKLUBAIC01OCw2ICs1OCwyMCBAQCBzdGF0aWMgaW5saW5lIGxvbmcg X19rZXljdGwoaW50IGNtZCwgdW5zaWduZWQgbG9uZyBhcmcyLCB1bnNpZ25lZCBsb25nIGFyZzMs Ci0gI2RlZmluZSBrZXljdGwgX19rZXljdGwKLSAjZW5kaWYKLSAKLSsjaWZuZGVmIEZfTElOVVhf U1BFQ0lGSUNfQkFTRQotKyNkZWZpbmUgRl9MSU5VWF9TUEVDSUZJQ19CQVNFIDEwMjQKLSsjZW5k aWYKLSsjaWZuZGVmIEZfQUREX1NFQUxTCi0rI2RlZmluZSBGX0FERF9TRUFMUyAoRl9MSU5VWF9T UEVDSUZJQ19CQVNFICsgOSkKLSsjZGVmaW5lIEZfR0VUX1NFQUxTIChGX0xJTlVYX1NQRUNJRklD X0JBU0UgKyAxMCkKLSsjZW5kaWYKLSsjaWZuZGVmIEZfU0VBTF9TRUFMCi0rI2RlZmluZSBGX1NF QUxfU0VBTCAweDAwMDEKLSsjZGVmaW5lIEZfU0VBTF9TSFJJTksgMHgwMDAyCi0rI2RlZmluZSBG X1NFQUxfR1JPVyAweDAwMDQKLSsjZGVmaW5lIEZfU0VBTF9XUklURSAweDAwMDgKLSsjZW5kaWYK LSsKLSAjaWZuZGVmIEhBVkVfTUVNRkRfQ1JFQVRFCi0gc3RhdGljIGlubGluZSBpbnQgbWVtZmRf Y3JlYXRlKGNvbnN0IGNoYXIgKm5hbWUsIHVuc2lnbmVkIGludCBmbGFncykgewotIAkjaWZuZGVm IF9fTlJfbWVtZmRfY3JlYXRlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2x4Yy9wYXRjaGVzL211c2wt Y29tcGF0LnBhdGNoIGIvc3JjcGtncy9seGMvcGF0Y2hlcy9tdXNsLWNvbXBhdC5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzRjOTYyOWI4ZjcuLjAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvbHhjL3BhdGNoZXMvbXVzbC1jb21wYXQucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAt MSwxMCArMCwwIEBACi0tLS0gc3JjL2x4Yy9jb21waWxlci5oCTIwMTgtMTEtMjMgMDE6MDg6Mjcu MDAwMDAwMDAwICswMjAwCi0rKysgc3JjL2x4Yy9jb21waWxlci5oCTIwMTgtMTEtMjYgMjE6MjQ6 NDkuNjI5NTM3NjMwICswMjAwCi1AQCAtMjMsNyArMjMsNiBAQAotICNpZm5kZWYgX0dOVV9TT1VS Q0UKLSAjZGVmaW5lIF9HTlVfU09VUkNFIDEKLSAjZW5kaWYKLS0jaW5jbHVkZSA8c3lzL2NkZWZz Lmg+Ci0gCi0gI2luY2x1ZGUgImNvbmZpZy5oIgotIApkaWZmIC0tZ2l0IGEvc3JjcGtncy9seGMv cGF0Y2hlcy9yZXhlY3V0ZS5wYXRjaCBiL3NyY3BrZ3MvbHhjL3BhdGNoZXMvcmV4ZWN1dGUucGF0 Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiYzQzY2NmNmRjLi4wMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL2x4Yy9wYXRjaGVzL3JleGVjdXRlLnBhdGNoCisrKyAvZGV2L251bGwK QEAgLTEsMTQ4ICswLDAgQEAKLUZyb20gZDNhOWJlZmM4NjExMzIyOGY3N2M4OTAzMDMzNmZhYTg0 YTU1NTdjMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IENocmlzdGlhbiBCcmF1bmVy IDxjaHJpc3RpYW4uYnJhdW5lckB1YnVudHUuY29tPgotRGF0ZTogVHVlLCAxMiBGZWIgMjAxOSAx NzozMToxNCArMDEwMAotU3ViamVjdDogW1BBVENIXSByZXhlYzogbWFrZSByZXhlY3V0aW9uIG9w dC1pbiBmb3IgbGlicmFyeSBjYWxsZXJzCi1NSU1FLVZlcnNpb246IDEuMAotQ29udGVudC1UeXBl OiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04Ci1Db250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4 Yml0Ci0KLVdlIGNhbm5vdCByZXhlY3V0ZSB0aGUgbGlibHhjIHNoYXJlZCBsaWJyYXJ5IHVuY29u ZGl0aW9uYWxseSBhcyB0aGlzIHdvdWxkCi1icmVhayBtb3N0IG9mIG91ciBkb3duc3RyZWFtcy4g SGVyZSBhcmUgc29tZSBzY2VuYXJpb3M6Ci0tIGFueW9uZSBwZXJmb3JtaW5nIGEgZGxvcGVuKCkg b24gdGhlIHNoYXJlZCBsaWJyYXJ5IChlLmcuIHVzZXJzIG9mIHRoZSBMWEMKLSAgUHl0aG9uIGJp bmRpbmdzKQotLSBMWEQgYXMgaXQgbmVlZHMgdG8ga25vdyB0aGUgYWJzb2x1dGUgcGF0aCB0byBp dHMgb3duIGV4ZWN1dGFibGUgYmFzZWQgb24KLSAgL3Byb2Mvc2VsZi9leGUgZXRjLgotCi1UaGlz IGNvbW1pdCBtYWtlcyB0aGUgcmV4ZWN1dGlvbiBvZiBsaWJseGMgY29uZGl0aW9uYWwgb24gd2hl dGhlciB0aGUKLUxYQ19NRU1GRF9SRVhFQyBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBzZXQgb3Ig bm90LiBJZiBpdCBpcyB0aGVuIGxpYmx4YyBpcwotdW5jb25kaXRpb25hbGx5IHJleGVjdXRlZC4K LQotVGhlIG9ubHkgcmVsZXZhbnQgYXR0YWNrIHZlY3RvciBleGlzdHMgZm9yIGx4Yy1hdHRhY2gg d2hpY2ggd2Ugc2ltcGx5IHJlZXhlY3V0ZQotdW5jb25kaXRpb25hbGx5LgotCi1SZXBvcnRlZC1i eTogU3TDqXBoYW5lIEdyYWJlciA8c3RncmFiZXJAdWJ1bnR1LmNvbT4KLVNpZ25lZC1vZmYtYnk6 IENocmlzdGlhbiBCcmF1bmVyIDxjaHJpc3RpYW4uYnJhdW5lckB1YnVudHUuY29tPgotLS0tCi0g c3JjL2x4Yy9NYWtlZmlsZS5hbSAgICAgICAgfCAgNCArKystCi0gc3JjL2x4Yy9yZXhlYy5jICAg ICAgICAgICAgfCAgNCArKy0tCi0gc3JjL2x4Yy9yZXhlYy5oICAgICAgICAgICAgfCAyNiArKysr KysrKysrKysrKysrKysrKysrKysrKwotIHNyYy9seGMvdG9vbHMvbHhjX2F0dGFjaC5jIHwgMTgg KysrKysrKysrKysrKysrKysrCi0gNCBmaWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCAz IGRlbGV0aW9ucygtKQotIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvbHhjL3JleGVjLmgKLQotZGlm ZiAtLWdpdCBhL3NyYy9seGMvTWFrZWZpbGUuYW0gYi9zcmMvbHhjL01ha2VmaWxlLmFtCi1pbmRl eCBlMTQ5OWE3ZWIuLmVmMTlkZjllMCAxMDA2NDQKLS0tLSBzcmMvbHhjL01ha2VmaWxlLmFtCi0r Kysgc3JjL2x4Yy9NYWtlZmlsZS5hbQotQEAgLTI1LDYgKzI1LDcgQEAgbm9pbnN0X0hFQURFUlMg PSBhcGlfZXh0ZW5zaW9ucy5oIFwKLSAJCSBtb25pdG9yLmggXAotIAkJIG5hbWVzcGFjZS5oIFwK LSAJCSByYXdfc3lzY2FsbHMuaCBcCi0rCQkgcmV4ZWMuaCBcCi0gCQkgc3RhcnQuaCBcCi0gCQkg c3RhdGUuaCBcCi0gCQkgc3RvcmFnZS9idHJmcy5oIFwKLUBAIC0xODAsNyArMTgxLDcgQEAgbGli bHhjX2xhX1NPVVJDRVMgKz0gLi4vaW5jbHVkZS9zdHJsY2F0LmMgLi4vaW5jbHVkZS9zdHJsY2F0 LmgKLSBlbmRpZgotIAotIGlmIEVORk9SQ0VfTUVNRkRfUkVYRUMKLS1saWJseGNfbGFfU09VUkNF UyArPSByZXhlYy5jCi0rbGlibHhjX2xhX1NPVVJDRVMgKz0gcmV4ZWMuYyByZXhlYy5oCi0gZW5k aWYKLSAKLSBBTV9DRkxBR1MgPSAtRExYQ1JPT1RGU01PVU5UPVwiJChMWENST09URlNNT1VOVClc IiBcCi1AQCAtMzA3LDYgKzMwOCw3IEBAIExEQUREID0gbGlibHhjLmxhIFwKLSAKLSBpZiBFTkFC TEVfVE9PTFMKLSBseGNfYXR0YWNoX1NPVVJDRVMgPSB0b29scy9seGNfYXR0YWNoLmMgXAotKwkJ ICAgICByZXhlYy5jIHJleGVjLmggXAotIAkJICAgICB0b29scy9hcmd1bWVudHMuYyB0b29scy9h cmd1bWVudHMuaAotIGx4Y19hdXRvc3RhcnRfU09VUkNFUyA9IHRvb2xzL2x4Y19hdXRvc3RhcnQu YyBcCi0gCQkJdG9vbHMvYXJndW1lbnRzLmMgdG9vbHMvYXJndW1lbnRzLmgKLWRpZmYgLS1naXQg YS9zcmMvbHhjL3JleGVjLmMgYi9zcmMvbHhjL3JleGVjLmMKLWluZGV4IDNjZTQ5OWIxZS4uMDI0 NzI4ZDg1IDEwMDY0NAotLS0tIHNyYy9seGMvcmV4ZWMuYwotKysrIHNyYy9seGMvcmV4ZWMuYwot QEAgLTE0Miw3ICsxNDIsNyBAQCBzdGF0aWMgdm9pZCBseGNfcmV4ZWNfYXNfbWVtZmQoY2hhciAq KmFyZ3YsIGNoYXIgKiplbnZwLCBjb25zdCBjaGFyICptZW1mZF9uYW1lKQotIAllcnJubyA9IHNh dmVkX2Vycm5vOwotIH0KLSAKLS1zdGF0aWMgaW50IGx4Y19yZXhlYyhjb25zdCBjaGFyICptZW1m ZF9uYW1lKQotK2ludCBseGNfcmV4ZWMoY29uc3QgY2hhciAqbWVtZmRfbmFtZSkKLSB7Ci0gCWlu dCByZXQ7Ci0gCWNoYXIgKiphcmd2ID0gTlVMTCwgKiplbnZwID0gTlVMTDsKLUBAIC0xNzksNyAr MTc5LDcgQEAgc3RhdGljIGludCBseGNfcmV4ZWMoY29uc3QgY2hhciAqbWVtZmRfbmFtZSkKLSAg Ki8KLSBfX2F0dHJpYnV0ZV9fKChjb25zdHJ1Y3RvcikpIHN0YXRpYyB2b2lkIGxpYmx4Y19yZXhl Yyh2b2lkKQotIHsKLS0JaWYgKGx4Y19yZXhlYygibGlibHhjIikpIHsKLSsJaWYgKGdldGVudigi TFhDX01FTUZEX1JFWEVDIikgJiYgbHhjX3JleGVjKCJsaWJseGMiKSkgewotIAkJZnByaW50Zihz dGRlcnIsICJGYWlsZWQgdG8gcmUtZXhlY3V0ZSBsaWJseGMgdmlhIG1lbW9yeSBmaWxlIGRlc2Ny aXB0b3JcbiIpOwotIAkJX2V4aXQoRVhJVF9GQUlMVVJFKTsKLSAJfQotZGlmZiAtLWdpdCBhL3Ny Yy9seGMvcmV4ZWMuaCBiL3NyYy9seGMvcmV4ZWMuaAotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWlu ZGV4IDAwMDAwMDAwMC4uMDg4ZGVkOTMyCi0tLS0gL2Rldi9udWxsCi0rKysgc3JjL2x4Yy9yZXhl Yy5oCi1AQCAtMCwwICsxLDI2IEBACi0rLyogbGlibHhjYXBpCi0rICoKLSsgKiBDb3B5cmlnaHQg wqkgMjAxOSBDaHJpc3RpYW4gQnJhdW5lciA8Y2hyaXN0aWFuLmJyYXVuZXJAdWJ1bnR1LmNvbT4u Ci0rICogQ29weXJpZ2h0IMKpIDIwMTkgQ2Fub25pY2FsIEx0ZC4KLSsgKgotKyAqIFRoaXMgbGli cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKLSsg KiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVi bGljCi0rICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbjsgZWl0aGVyCi0rICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3Vy IG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi0rCi0rICogVGhpcyBsaWJyYXJ5IGlzIGRpc3Ry aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCi0rICogYnV0IFdJVEhP VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKLSsg KiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT ZWUgdGhlIEdOVQotKyAqIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRl dGFpbHMuCi0rCi0rICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05V IExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCi0rICogYWxvbmcgd2l0aCB0aGlzIGxpYnJh cnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwKLSsgKiBJ bmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0x MzAxICBVU0EKLSsgKi8KLSsKLSsjaWZuZGVmIF9fTFhDX1JFWEVDX0gKLSsjZGVmaW5lIF9fTFhD X1JFWEVDX0gKLSsKLStleHRlcm4gaW50IGx4Y19yZXhlYyhjb25zdCBjaGFyICptZW1mZF9uYW1l KTsKLSsKLSsjZW5kaWYgLyogX19MWENfUkVYRUNfSCAqLwotZGlmZiAtLWdpdCBhL3NyYy9seGMv dG9vbHMvbHhjX2F0dGFjaC5jIGIvc3JjL2x4Yy90b29scy9seGNfYXR0YWNoLmMKLWluZGV4IDNk ZTBkNzc0Ny4uZDEwYjZlY2MyIDEwMDY0NAotLS0tIHNyYy9seGMvdG9vbHMvbHhjX2F0dGFjaC5j Ci0rKysgc3JjL2x4Yy90b29scy9seGNfYXR0YWNoLmMKLUBAIC00NCwxMCArNDQsMjggQEAKLSAj aW5jbHVkZSAiY29uZmlnLmgiCi0gI2luY2x1ZGUgImNvbmZpbGUuaCIKLSAjaW5jbHVkZSAibG9n LmgiCi0rI2luY2x1ZGUgInJleGVjLmgiCi0gI2luY2x1ZGUgInV0aWxzLmgiCi0gCi0gbHhjX2xv Z19kZWZpbmUobHhjX2F0dGFjaCwgbHhjKTsKLSAKLSsvKioKLSsgKiBUaGlzIGZ1bmN0aW9uIHdp bGwgY29weSBhbnkgYmluYXJ5IHRoYXQgY2FsbHMgbGlibHhjIGludG8gYSBtZW1vcnkgZmlsZSBh bmQKLSsgKiB3aWxsIHVzZSB0aGUgbWVtZmQgdG8gcmV4ZWN1dGUgdGhlIGJpbmFyeS4gVGhpcyBp cyBkb25lIHRvIHByZXZlbnQgYXR0YWNrcwotKyAqIHRocm91Z2ggdGhlIC9wcm9jL3NlbGYvZXhl IHN5bWxpbmsgdG8gY29ycnVwdCB0aGUgaG9zdCBiaW5hcnkgd2hlbiBob3N0IGFuZAotKyAqIGNv bnRhaW5lciBhcmUgaW4gdGhlIHNhbWUgdXNlciBuYW1lc3BhY2Ugb3IgaGF2ZSBzZXQgdXAgYW4g aWRlbnRpdHkgaWQKLSsgKiBtYXBwaW5nOiBDVkUtMjAxOS01NzM2LgotKyAqLwotKyNpZmRlZiBF TkZPUkNFX01FTUZEX1JFWEVDCi0rX19hdHRyaWJ1dGVfXygoY29uc3RydWN0b3IpKSBzdGF0aWMg dm9pZCBseGNfYXR0YWNoX3JleGVjKHZvaWQpCi0rewotKwlpZiAoIWdldGVudigiTFhDX01FTUZE X1JFWEVDIikgJiYgbHhjX3JleGVjKCJseGMtYXR0YWNoIikpIHsKLSsJCWZwcmludGYoc3RkZXJy LCAiRmFpbGVkIHRvIHJlLWV4ZWN1dGUgbHhjLWF0dGFjaCB2aWEgbWVtb3J5IGZpbGUgZGVzY3Jp cHRvclxuIik7Ci0rCQlfZXhpdChFWElUX0ZBSUxVUkUpOwotKwl9Ci0rfQotKyNlbmRpZgotKwot IHN0YXRpYyBpbnQgbXlfcGFyc2VyKHN0cnVjdCBseGNfYXJndW1lbnRzICphcmdzLCBpbnQgYywg Y2hhciAqYXJnKTsKLSBzdGF0aWMgaW50IGFkZF90b19zaW1wbGVfYXJyYXkoY2hhciAqKiphcnJh eSwgc3NpemVfdCAqY2FwYWNpdHksIGNoYXIgKnZhbHVlKTsKLSBzdGF0aWMgYm9vbCBzdGRmZF9p c19wdHkodm9pZCk7CmRpZmYgLS1naXQgYS9zcmNwa2dzL2x4Yy90ZW1wbGF0ZSBiL3NyY3BrZ3Mv bHhjL3RlbXBsYXRlCmluZGV4IDYzOWNkNjMyMmY1Li41YzA2ZjQ5MzlmZCAxMDA2NDQKLS0tIGEv c3JjcGtncy9seGMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9seGMvdGVtcGxhdGUKQEAgLTIsNyAr Miw3IEBACiBfZGVzYz0iTGludXggQ29udGFpbmVycyIKIAogcGtnbmFtZT1seGMKLXZlcnNpb249 My4xLjAKK3ZlcnNpb249My4yLjEKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1kb2MgLS1lbmFibGUtc2VjY29tcApAQCAtMTYs NyArMTYsNyBAQCBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+Igog aG9tZXBhZ2U9Imh0dHBzOi8vbGludXhjb250YWluZXJzLm9yZyIKIGxpY2Vuc2U9IkxHUEwtMi4x LW9yLWxhdGVyIgogZGlzdGZpbGVzPSJodHRwczovL2xpbnV4Y29udGFpbmVycy5vcmcvZG93bmxv YWRzL2x4Yy0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTRkODc3MmMyNWJhZWFlYTJjMzdh OTU0OTAyYjg4YzA1ZDE0NTRjOTFjODg3Y2I2YTA5OTcyNThjZmFjM2ZkYzUKK2NoZWNrc3VtPTVm OTAzOTg2YTRiMTdkNjA3ZWVhMjhjMGFhNTZiZjFlNzZlODcwNzc0N2IxYWEwN2QzMTY4MDMzOGIx Y2MzZDQKIAogY29uZl9maWxlcz0iL2V0Yy9seGMvZGVmYXVsdC5jb25mIgogbWFrZV9kaXJzPSIK CkZyb20gNGVkMTgxN2ZiZGZhYWVlYTZhMTRkYjgxNWU0MmFiZWM4YzIyNzg5NyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogSnVsaW8gR2FsdmFuIDxqdWxpb0BlcGF6b3RlLm5ldD4KRGF0 ZTogU2F0LCAzIEF1ZyAyMDE5IDE2OjMyOjU2IC0wNzAwClN1YmplY3Q6IFtQQVRDSCA2LzZdIGx4 ZDogdXBkYXRlIHRvIDMuMTcKCi0tLQogc3JjcGtncy9seGQvcGF0Y2hlcy9zZWNjb21wLnBhdGNo IHwgNDEgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9seGQvdGVtcGxh dGUgICAgICAgICAgICAgIHwgMjAgKysrLS0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDQg aW5zZXJ0aW9ucygrKSwgNTcgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtn cy9seGQvcGF0Y2hlcy9zZWNjb21wLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9seGQvcGF0 Y2hlcy9zZWNjb21wLnBhdGNoIGIvc3JjcGtncy9seGQvcGF0Y2hlcy9zZWNjb21wLnBhdGNoCmRl bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlN2I1MmEzMTkzMS4uMDAwMDAwMDAwMDAKLS0t IGEvc3JjcGtncy9seGQvcGF0Y2hlcy9zZWNjb21wLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEs NDEgKzAsMCBAQAotbHhjL2x4ZEBhMTgxZWQ0IFtQQVRDSF0gc2VjY29tcDogZGVmaW5lIF9fTlJf bWtub2QgaWYgbWlzc2luZwotbHhjL2x4ZEBjNjU1ZWQ1IFtQQVRDSF0gc2VjY29tcDogcmV3b3Jr IG1pc3Npbmcgc3lzY2FsbCBudW1iZXIgZGVmaW5pdGlvbnMKLS0tLQotIGx4ZC9zZWNjb21wLmdv IHwgOSArKysrKysrKysKLSAxIGZpbGUgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspCi0KLWRpZmYg LS1naXQgYS9seGQvc2VjY29tcC5nbyBiL2x4ZC9zZWNjb21wLmdvCi1pbmRleCAwYWZhZDdjYWNj Li4zMjM5N2I5NzI5IDEwMDY0NAotLS0tIGx4ZC9zZWNjb21wLmdvCi0rKysgbHhkL3NlY2NvbXAu Z28KLUBAIC0xMDksNiArMTA5LDE0IEBACi0gCXJldHVybiAtRVBFUk07Ci0gfQotCi0rI2lmbmRl ZiBfX05SX21rbm9kYXQKLSsJI2Vycm9yIG1pc3Npbmcga2VybmVsIGhlYWRlcnMKLSsjZWxzZQot KwkjaWZkZWYgX19OUl9ta25vZAotKwkJI2RlZmluZSBMWERfTVVTVF9DSEVDS19NS05PRAotKyAJ I2VuZGlmCi0rI2VuZGlmCi0rCi0gc3RhdGljIGludCBzZWNjb21wX25vdGlmeV9ta25vZF9zZXRf cmVzcG9uc2UoaW50IGZkX21lbSwgc3RydWN0IHNlY2NvbXBfbm90aWZ5X3Byb3h5X21zZyAqbXNn LAotIAkJCQkJICAgICBjaGFyICpidWYsIHNpemVfdCBzaXplLAotIAkJCQkJICAgICBtb2RlX3Qg Km1vZGUsIGRldl90ICpkZXYsCi1AQCAtMTI0LDYgKzEzMiw3IEBAIHN0YXRpYyBpbnQgc2VjY29t cF9ub3RpZnlfbWtub2Rfc2V0X3Jlc3BvbnNlKGludCBmZF9tZW0sIHN0cnVjdCBzZWNjb21wX25v dGlmeV9wCi0JcmVzcC0+dmFsID0gMDsKLQotCXN3aXRjaCAocmVxLT5kYXRhLm5yKSB7Ci0rI2lm ZGVmIExYRF9NVVNUX0NIRUNLX01LTk9ECi0JY2FzZSBfX05SX21rbm9kOgotCQlyZXNwLT5lcnJv ciA9IGRldmljZV9hbGxvd2VkKHJlcS0+ZGF0YS5hcmdzWzJdLCByZXEtPmRhdGEuYXJnc1sxXSk7 Ci0JCWlmIChyZXNwLT5lcnJvcikgewotQEAgLTE0Myw2ICsxNDksNyBAQCBzdGF0aWMgaW50IHNl Y2NvbXBfbm90aWZ5X21rbm9kX3NldF9yZXNwb25zZShpbnQgZmRfbWVtLCBzdHJ1Y3Qgc2VjY29t cF9ub3RpZnlfcAotCQkqcGlkID0gcmVxLT5waWQ7Ci0KLQkJYnJlYWs7Ci0rI2VuZGlmCi0JY2Fz ZSBfX05SX21rbm9kYXQ6Ci0JCWlmIChyZXEtPmRhdGEuYXJnc1swXSAhPSBBVF9GRENXRCkgewot CQkJZXJybm8gPSBFSU5WQUw7CmRpZmYgLS1naXQgYS9zcmNwa2dzL2x4ZC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvbHhkL3RlbXBsYXRlCmluZGV4IDJhOWNmNDRkODhkLi4yNzlmYzFkODBlZiAxMDA2NDQK LS0tIGEvc3JjcGtncy9seGQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9seGQvdGVtcGxhdGUKQEAg LTEsMzUgKzEsMjMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2x4ZCcKIHBrZ25hbWU9bHhkCi12 ZXJzaW9uPTMuMTQKK3ZlcnNpb249My4xNwogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z28KIGdv X2ltcG9ydF9wYXRoPWdpdGh1Yi5jb20vbHhjL2x4ZAogZ29fYnVpbGRfdGFncz1saWJzcWxpdGUz CiBnb19wYWNrYWdlPSIke2dvX2ltcG9ydF9wYXRofS9seGQgJHtnb19pbXBvcnRfcGF0aH0vbHhj CiAgJHtnb19pbXBvcnRfcGF0aH0vbHhkLXAyYyAke2dvX2ltcG9ydF9wYXRofS9mdWlkc2hpZnQi Ci1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCi1tYWtlZGVwZW5kcz0ibHhjLWRldmVsIGFj bC1kZXZlbCBkcWxpdGUtZGV2ZWwiCitob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2l0Igor bWFrZWRlcGVuZHM9Imx4Yy1kZXZlbCBhY2wtZGV2ZWwgZHFsaXRlLWRldmVsIGxpYnV2LWRldmVs IHJhZnQtZGV2ZWwiCiBkZXBlbmRzPSJseGMgYWNsIGFjbC1wcm9ncyByc3luYyBzcXVhc2hmcy10 b29scyB4eiBkbnNtYXNxIGlwdGFibGVzIgogc2hvcnRfZGVzYz0iTmV4dCBnZW5lcmF0aW9uIHN5 c3RlbSBjb250YWluZXIgbWFuYWdlciIKIG1haW50YWluZXI9IkNhbWVyb24gTmVtbyA8Y2FtZXJv bnRub3JtYW5AZ21haWwuY29tPiIKIGxpY2Vuc2U9IkFwYWNoZS0yLjAiCiBob21lcGFnZT0iaHR0 cHM6Ly9saW51eGNvbnRhaW5lcnMub3JnL2x4ZCIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9saW51eGNv bnRhaW5lcnMub3JnL2Rvd25sb2Fkcy9seGQvbHhkLSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tz dW09NDA5ZTQ3NThjYmViNDNiMDk4ZDAyNjVjNGNlMDVhZWVhYzVhZTczZjg5MTRjZWIxMDA2ZTZh NmQ4OWZlMWZlNQorY2hlY2tzdW09OTQ4NGFjYjQ4OWI5MWY1OGFlOGZlNDUxOGU1YTA5YmRmMjQ2 MDgwODgxN2VmZDMyNzY1YWQ5MjQxZWY3MjllZgogc3lzdGVtX2dyb3Vwcz0ibHhkIgogCi1kb19j b25maWd1cmUoKSB7Ci0JIyB0aGUgTFhEIHRhcmJhbGwgcGFja2FnZXMgdXAgdGhlIHJlcXVpcmVk IGRlcGVuZGVuY2llcwotCWxuIC1zICIkd3Jrc3JjL2Rpc3QiICIkR09QQVRIIgotfQotCi1kb19i dWlsZCgpIHsKLQkjIGRvbid0IGdvLWdldCB0aGUgZGVwZW5kZW5jaWVzLCBqdXN0IGluc3RhbGwg d2l0aCB3aGF0J3MgdGhlcmUKLQljZCAiJEdPU1JDUEFUSCIKLQlnb19wYWNrYWdlPSR7Z29fcGFj a2FnZTotJGdvX2ltcG9ydF9wYXRofQotCWdvIGluc3RhbGwgLXRhZ3MgIiR7Z29fYnVpbGRfdGFn c30iIC1sZGZsYWdzICIke2dvX2xkZmxhZ3N9IiAke2dvX3BhY2thZ2V9Ci19Ci0KIHBvc3RfaW5z dGFsbCgpIHsKIAl2aW5zdGFsbCBzY3JpcHRzL2Jhc2gvbHhkLWNsaWVudCA2NDQgL3Vzci9zaGFy ZS9iYXNoLWNvbXBsZXRpb24vY29tcGxldGlvbnMgbHhkCiAJdmxpY2Vuc2UgQ09QWUlORyBMSUNF TlNFCg== --===============6611162606408932116==--