From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.2 Received: (qmail 30327 invoked from network); 14 Apr 2020 20:15:46 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with UTF8ESMTPZ; 14 Apr 2020 20:15:46 -0000 Content-Type: multipart/mixed; boundary="===============8945626117877304142==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_zziplib=3A_update_to_0=2E13=2E70=2E?= To: ml@inbox.vuxu.org From: mobinmob Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Tue, 14 Apr 2020 22:15:46 +0200 List-Id: Message-ID: <20200414201546.opsXXOSzt4Fiij7BdIeLWhu94AtC7MgrbsEkWw6BMHw@z> GitHub notification mails are now in MIME to allow UTF8. --===============8945626117877304142== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgbW9iaW5tb2IgYWdhaW5zdCBtYXN0 ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL21v YmlubW9iL3ZvaWQtcGFja2FnZXMgenppcGxpYgpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvMjA5ODQKCnp6aXBsaWI6IHVwZGF0ZSB0byAwLjEzLjcwLgot IFVzZSBjbWFrZSAocGVyIHVwc3RyZWFtIHJlY29tZW5kYXRpb24pLg0KLSBEbyBub3QgYnVpbGQg c3RhdGljIGxpYnMgKHVwc3RyZWFtIGRlZmF1bHQpLg0KLSBEbyBub3QgYnVpbGQgZG9jcyAoc2Vl bXMgdGhlIHB5dGhvbiBzY3JpcHRzIGFyZSBicm9rZW4pLg0KLSBVc2UgcHl0aG9uMy4KCkEgcGF0 Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMv cHVsbC8yMDk4NC5wYXRjaCBpcyBhdHRhY2hlZA== --===============8945626117877304142== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-zziplib-20984.patch" RnJvbSBmOGM3MDc2YzNkNTY5ZjU0MDE1N2JmNjI3NWY4MjU0MDYwYjk5ZWNkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBtb2Jpbm1vYiA8bW9iaW5tb2JAZGlzcm9vdC5vcmc+CkRhdGU6 IFR1ZSwgMTQgQXByIDIwMjAgMjA6MTc6NDEgKzAzMDAKU3ViamVjdDogW1BBVENIXSB6emlwbGli OiB1cGRhdGUgdG8gMC4xMy43MC4KCi0tLQogLi4uL3p6aXBsaWIvcGF0Y2hlcy8wMDAxLUNWRS0y MDE4LTE3ODI4LnBhdGNoIHwgIDkxIC0tLS0tLS0tLQogc3JjcGtncy96emlwbGliL3BhdGNoZXMv Q1ZFLTIwMTgtMTY1NDgucGF0Y2ggIHwgMTcyIC0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy96 emlwbGliL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgIHwgIDIwICstCiAzIGZpbGVzIGNo YW5nZWQsIDExIGluc2VydGlvbnMoKyksIDI3MiBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL3p6aXBsaWIvcGF0Y2hlcy8wMDAxLUNWRS0yMDE4LTE3ODI4LnBhdGNoCiBk ZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy96emlwbGliL3BhdGNoZXMvQ1ZFLTIwMTgtMTY1NDgu cGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3p6aXBsaWIvcGF0Y2hlcy8wMDAxLUNWRS0yMDE4 LTE3ODI4LnBhdGNoIGIvc3JjcGtncy96emlwbGliL3BhdGNoZXMvMDAwMS1DVkUtMjAxOC0xNzgy OC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjRlZDUxMjVkM2EuLjAwMDAw MDAwMDAwCi0tLSBhL3NyY3BrZ3MvenppcGxpYi9wYXRjaGVzLzAwMDEtQ1ZFLTIwMTgtMTc4Mjgu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw5MSArMCwwIEBACi1Gcm9tIDUzNWZhOGQ0ZGVlZGMx ZGE1OTg4NGNlNGYyZmNjNjUyOGJmMDcyNTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9t OiBOYXRoYW4gT3dlbnMgPG5kb3dlbnMwNEBnbWFpbC5jb20+Ci1EYXRlOiBTYXQsIDEyIEphbiAy MDE5IDIyOjI5OjQ5IC0wNjAwCi1TdWJqZWN0OiBbUEFUQ0hdIENWRS0yMDE4LTE3ODI4Ci0KLS0t LQotIGJpbnMvdW56emlwY2F0LWJpZy5jIHwgIDU3ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKy0KLSB0ZXN0L3Rlc3QuemlwICAgICAgICB8IEJpbiAxMzYxIC0+IDAg Ynl0ZXMKLSAyIGZpbGVzIGNoYW5nZWQsIDU2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkK LSBkZWxldGUgbW9kZSAxMDA2NDQgdGVzdC90ZXN0LnppcAotCi1kaWZmIC0tZ2l0IGJpbnMvdW56 emlwY2F0LWJpZy5jIGJpbnMvdW56emlwY2F0LWJpZy5jCi1pbmRleCA5ODJkMjYyLi44OGM0ZDY1 IDEwMDY0NAotLS0tIGJpbnMvdW56emlwY2F0LWJpZy5jCi0rKysgYmlucy91bnp6aXBjYXQtYmln LmMKLUBAIC01Myw2ICs1Myw0OCBAQCBzdGF0aWMgdm9pZCB1bnp6aXBfY2F0X2ZpbGUoRklMRSog ZGlzaywgY2hhciogbmFtZSwgRklMRSogb3V0KQotICAgICB9Ci0gfQotIAotKy8qCi0rICogTkFN RTogcmVtb3ZlX2RvdGRvdHNsYXNoCi0rICogUFVSUE9TRTogVG8gcmVtb3ZlIGFueSAiLi4vIiBj b21wb25lbnRzIGZyb20gdGhlIGdpdmVuIHBhdGhuYW1lCi0rICogQVJHVU1FTlRTOiBwYXRoOiBw YXRoIG5hbWUgd2l0aCBtYXliZSAiLi4vIiBjb21wb25lbnRzCi0rICogUkVUVVJOUzogTm90aGlu ZywgInBhdGgiIGlzIG1vZGlmaWVkIGluLXBsYWNlCi0rICogTk9URTogcmVtb3ZpbmcgIi4uLyIg ZnJvbSB0aGUgcGF0aCBBTFdBWVMgc2hvcnRlbnMgdGhlIHBhdGgsIG5ldmVyIGFkZHMgdG8gaXQh Ci0rICoJQWxzbywgInBhdGgiIGlzIG5vdCB1c2VkIGFmdGVyIGNyZWF0aW5nIGl0LgotKyAqCVNv IG1vZGlmeWluZyAicGF0aCIgaW4tcGxhY2UgaXMgc2FmZSB0byBkby4KLSsgKi8KLStzdGF0aWMg aW5saW5lIHZvaWQKLStyZW1vdmVfZG90ZG90c2xhc2goY2hhciAqcGF0aCkKLSt7Ci0rICAgIC8q IE5vdGU6IHJlbW92aW5nICIuLi8iIGZyb20gdGhlIHBhdGggQUxXQVlTIHNob3J0ZW5zIHRoZSBw YXRoLCBuZXZlciBhZGRzIHRvIGl0ISAqLwotKyAgICBjaGFyICpkb3Rkb3RzbGFzaDsKLSsgICAg aW50IHdhcm5lZCA9IDA7Ci0rCi0rICAgIGRvdGRvdHNsYXNoID0gcGF0aDsKLSsgICAgd2hpbGUg KChkb3Rkb3RzbGFzaCA9IHN0cnN0cihkb3Rkb3RzbGFzaCwgIi4uLyIpKSAhPSBOVUxMKQotKyAg ICB7Ci0rICAgICAgICAvKgotKyAgICAgICAgICogUmVtb3ZlIG9ubHkgaWYgYXQgdGhlIGJlZ2lu bmluZyBvZiB0aGUgcGF0aG5hbWUgKCIuLi9wYXRoL25hbWUiKQotKyAgICAgICAgICogb3Igd2hl biBwcmVjZWRlZCBieSBhIHNsYXNoICgicGF0aC8uLi9uYW1lIiksCi0rICAgICAgICAgKiBvdGhl cndpc2Ugbm90ICgicGF0aC4uL25hbWUuLiIpIQotKyAgICAgICAgICovCi0rICAgICAgICBpZiAo ZG90ZG90c2xhc2ggPT0gcGF0aCB8fCBkb3Rkb3RzbGFzaFstMV0gPT0gJy8nKQotKyAgICAgICAg ewotKyAgICAgICAgICAgIGNoYXIgKnNyYywgKmRzdDsKLSsgICAgICAgICAgICBpZiAoIXdhcm5l ZCkKLSsgICAgICAgICAgICB7Ci0rICAgICAgICAgICAgICAgIC8qIE5vdGU6IHRoZSBmaXJzdCB0 aW1lIHRocm91Z2ggdGhlIHBhdGhuYW1lIGlzIHN0aWxsIGludGFjdCAqLwotKyAgICAgICAgICAg ICAgICBmcHJpbnRmKHN0ZGVyciwgIlJlbW92aW5nIFwiLi4vXCIgcGF0aCBjb21wb25lbnQocykg aW4gJXNcbiIsIHBhdGgpOwotKyAgICAgICAgICAgICAgICB3YXJuZWQgPSAxOwotKyAgICAgICAg ICAgIH0KLSsgICAgICAgICAgICAvKiBXZSBjYW5ub3QgdXNlIHN0cmNweSgpLCBhcyB0aGVyZSAi VGhlIHN0cmluZ3MgbWF5IG5vdCBvdmVybGFwIiAqLwotKyAgICAgICAgICAgIGZvciAoc3JjID0g ZG90ZG90c2xhc2grMywgZHN0PWRvdGRvdHNsYXNoOyAoKmRzdCA9ICpzcmMpICE9ICdcMCc7IHNy YysrLCBkc3QrKykKLSsgICAgICAgICAgICAgICAgOwotKyAgICAgICAgfQotKyAgICAgICAgZWxz ZQotKyAgICAgICAgICAgIGRvdGRvdHNsYXNoICs9MzsJLyogc2tpcCB0aGlzIGluc3RhbmNlIHRv IHByZXZlbnQgaW5maW5pdGUgbG9vcCAqLwotKyAgICB9Ci0rfQotKwotIHN0YXRpYyB2b2lkIG1h a2VkaXJzKGNvbnN0IGNoYXIqIG5hbWUpCi0gewotICAgICAgIGNoYXIqIHAgPSBzdHJyY2hyKG5h bWUsICcvJyk7Ci1AQCAtNzAsNiArMTEyLDE2IEBAIHN0YXRpYyB2b2lkIG1ha2VkaXJzKGNvbnN0 IGNoYXIqIG5hbWUpCi0gCi0gc3RhdGljIEZJTEUqIGNyZWF0ZV9mb3BlbihjaGFyKiBuYW1lLCBj aGFyKiBtb2RlLCBpbnQgc3ViZGlycykKLSB7Ci0rICAgY2hhciAqbmFtZV9zdHJpcHBlZDsKLSsg ICBGSUxFICpmcDsKLSsgICBpbnQgbXVzdGZyZWUgPSAwOwotKwotKyAgIGlmICgobmFtZV9zdHJp cHBlZCA9IHN0cmR1cChuYW1lKSkgIT0gTlVMTCkKLSsgICB7Ci0rICAgICAgIHJlbW92ZV9kb3Rk b3RzbGFzaChuYW1lX3N0cmlwcGVkKTsKLSsgICAgICAgbmFtZSA9IG5hbWVfc3RyaXBwZWQ7Ci0r ICAgICAgIG11c3RmcmVlID0gMTsKLSsgICB9Ci0gICAgaWYgKHN1YmRpcnMpCi0gICAgewotICAg ICAgIGNoYXIqIHAgPSBzdHJyY2hyKG5hbWUsICcvJyk7Ci1AQCAtNzksNyArMTMxLDEwIEBAIHN0 YXRpYyBGSUxFKiBjcmVhdGVfZm9wZW4oY2hhciogbmFtZSwgY2hhciogbW9kZSwgaW50IHN1YmRp cnMpCi0gICAgICAgICAgIGZyZWUgKGRpcl9uYW1lKTsKLSAgICAgICB9Ci0gICAgfQotLSAgIHJl dHVybiBmb3BlbihuYW1lLCBtb2RlKTsgICAgICAKLSsgICBmcCA9IGZvcGVuKG5hbWUsIG1vZGUp OwotKyAgIGlmIChtdXN0ZnJlZSkKLSsgICAgICAgZnJlZShuYW1lX3N0cmlwcGVkKTsKLSsgICAg cmV0dXJuIGZwOwotIH0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvenppcGxpYi9wYXRjaGVzL0NWRS0y MDE4LTE2NTQ4LnBhdGNoIGIvc3JjcGtncy96emlwbGliL3BhdGNoZXMvQ1ZFLTIwMTgtMTY1NDgu cGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJiZGNhOTNhZTAwLi4wMDAwMDAw MDAwMAotLS0gYS9zcmNwa2dzL3p6aXBsaWIvcGF0Y2hlcy9DVkUtMjAxOC0xNjU0OC5wYXRjaAor KysgL2Rldi9udWxsCkBAIC0xLDE3MiArMCwwIEBACi1Gcm9tIDU5YzM2ZWJlMjlmZGRkODMyYzdh ZmVjYzI2ZGM1ZmUzZTYxZmFmMWYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBqbW9l bGxlcnMgPGpvc2VmLm1vZWxsZXJzQHN1c2UuY29tPgotRGF0ZTogRnJpLCA3IFNlcCAyMDE4IDEz OjU1OjM1ICswMjAwCi1TdWJqZWN0OiBbUEFUQ0ggMS8zXSBPbmUgbW9yZSBmcmVlKCkgdG8gYXZv aWQgbWVtb3J5IGxlYWsuCi0KLS0tLQotIHp6aXAvemlwLmMgfCAyICsrCi0gMSBmaWxlIGNoYW5n ZWQsIDIgaW5zZXJ0aW9ucygrKQotCi1kaWZmIC0tZ2l0IHp6aXAvemlwLmMgenppcC96aXAuYwot aW5kZXggMTRlMmUwNi4uYTI4NDU2ZiAxMDA2NDQKLS0tLSB6emlwL3ppcC5jCi0rKysgenppcC96 aXAuYwotQEAgLTU3NSw2ICs1NzUsOCBAQCBfX3p6aXBfcGFyc2Vfcm9vdF9kaXJlY3RvcnkoaW50 IGZkLAotICAgICAgICAgaWYgKGhkcl9yZXR1cm4pCi0gICAgICAgICAgICAgKmhkcl9yZXR1cm4g PSBoZHIwOwotICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogZWxzZSB6ZXJvIChz YW5lKSBlbnRyaWVzICovCi0rICAgIGVsc2UKLSsgICAgICAgIGZyZWUoaGRyMCk7Ci0gIyAgaWZu ZGVmIFpaSVBfQUxMT1dfTU9EVUxPX0VOVFJJRVMKLSAgICAgcmV0dXJuIChlbnRyaWVzICE9IHp6 X2VudHJpZXMgPyBaWklQX0NPUlJVUFRFRCA6IDApOwotICMgIGVsc2UKLS0tIAotMi4yMC4xCi0K LQotRnJvbSA0OTBkNmU3MjAzMTc5MGRhMGE0ZDIyOWQxM2Y3ZDVhMzg5Nzg5OTc3IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQotRnJvbTogam1vZWxsZXJzIDxqb3NlZi5tb2VsbGVyc0BzdXNlLmNv bT4KLURhdGU6IEZyaSwgNyBTZXAgMjAxOCAxMTo0OToyOCArMDIwMAotU3ViamVjdDogW1BBVENI IDIvM10gQXZvaWQgbWVtb3J5IGxlYWsgZnJvbSBfX3p6aXBfcGFyc2Vfcm9vdF9kaXJlY3Rvcnko KS4KLQotLS0tCi0genppcC96aXAuYyB8IDI4ICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0K LSAxIGZpbGUgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKLQotZGlm ZiAtLWdpdCB6emlwL3ppcC5jIHp6aXAvemlwLmMKLWluZGV4IGEyODQ1NmYuLjUxYTFhNGQgMTAw NjQ0Ci0tLS0genppcC96aXAuYwotKysrIHp6aXAvemlwLmMKLUBAIC04Miw3ICs4Miw4IEBAIGlu dCBfX3p6aXBfZmV0Y2hfZGlza190cmFpbGVyKGludCBmZCwgenppcF9vZmZfdCBmaWxlc2l6ZSwK LSBpbnQgX196emlwX3BhcnNlX3Jvb3RfZGlyZWN0b3J5KGludCBmZCwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHN0cnVjdCBfZGlza190cmFpbGVyICp0cmFpbGVyLAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHp6aXBfZGlyX2hkciAqKmhkcl9yZXR1 cm4sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6emlwX3BsdWdpbl9pb190IGlv KTsKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHp6aXBfcGx1Z2luX2lvX3QgaW8s Ci0rCQkJCXp6aXBfb2ZmX3QgZmlsZXNpemUpOwotIAotIF96emlwX2lubGluZSBzdGF0aWMgY2hh ciAqX196emlwX2FsaWduZWQ0KGNoYXIgKnApOwotIAotQEAgLTQwNiw3ICs0MDcsOCBAQCBpbnQK LSBfX3p6aXBfcGFyc2Vfcm9vdF9kaXJlY3RvcnkoaW50IGZkLAotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBzdHJ1Y3QgX2Rpc2tfdHJhaWxlciAqdHJhaWxlciwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgc3RydWN0IHp6aXBfZGlyX2hkciAqKmhkcl9yZXR1cm4sCi0tICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHp6aXBfcGx1Z2luX2lvX3QgaW8pCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHp6aXBfcGx1Z2luX2lvX3QgaW8sCi0rICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHp6aXBfb2ZmX3QgZmlsZXNpemUpCi0gewotICAgICBhdXRvIHN0cnVjdCB6emlw X2Rpc2tfZW50cnkgZGlyZW50OwotICAgICBzdHJ1Y3QgenppcF9kaXJfaGRyICpoZHI7Ci1AQCAt NDIxLDcgKzQyMyw4IEBAIF9fenppcF9wYXJzZV9yb290X2RpcmVjdG9yeShpbnQgZmQsCi0gICAg IHp6aXBfb2ZmNjRfdCB6el9yb290c2VlayA9IF9kaXNrX3RyYWlsZXJfcm9vdHNlZWsodHJhaWxl cik7Ci0gICAgIF9fY29ycmVjdF9yb290c2Vlayh6el9yb290c2Vlaywgenpfcm9vdHNpemUsIHRy YWlsZXIpOwotIAotLSAgICBpZiAoenpfZW50cmllcyA8IDAgfHwgenpfcm9vdHNlZWsgPCAwIHx8 IHp6X3Jvb3RzaXplIDwgMCkKLSsgICAgaWYgKHp6X2VudHJpZXMgPD0gMCB8fCB6el9yb290c2l6 ZSA8IDAgfHwKLSsgICAgICAgIHp6X3Jvb3RzZWVrIDwgMCB8fCB6el9yb290c2VlayA+PSBmaWxl c2l6ZSkKLSAgICAgICAgIHJldHVybiBaWklQX0NPUlJVUFRFRDsKLSAKLSAgICAgaGRyMCA9IChz dHJ1Y3QgenppcF9kaXJfaGRyICopIG1hbGxvYyh6el9yb290c2l6ZSk7Ci1AQCAtNDcyLDkgKzQ3 NSwxNSBAQCBfX3p6aXBfcGFyc2Vfcm9vdF9kaXJlY3RvcnkoaW50IGZkLAotICAgICAgICAgfSBl bHNlCi0gICAgICAgICB7Ci0gICAgICAgICAgICAgaWYgKGlvLT5mZC5zZWVrcyhmZCwgenpfcm9v dHNlZWsgKyB6el9vZmZzZXQsIFNFRUtfU0VUKSA8IDApCi0rCSAgICB7Ci0rCSAgICAJZnJlZSho ZHIwKTsKLSAgICAgICAgICAgICAgICAgcmV0dXJuIFpaSVBfRElSX1NFRUs7Ci0rCSAgICB9Ci0g ICAgICAgICAgICAgaWYgKGlvLT5mZC5yZWFkKGZkLCAmZGlyZW50LCBzaXplb2YoZGlyZW50KSkg PCBfX3NpemVvZihkaXJlbnQpKQotKwkgICAgewotKwkgICAgCWZyZWUoaGRyMCk7Ci0gICAgICAg ICAgICAgICAgIHJldHVybiBaWklQX0RJUl9SRUFEOwotKwkgICAgfQotICAgICAgICAgICAgIGQg PSAmZGlyZW50OwotICAgICAgICAgfQotIAotQEAgLTU3NCwxMyArNTgzLDE2IEBAIF9fenppcF9w YXJzZV9yb290X2RpcmVjdG9yeShpbnQgZmQsCi0gCi0gICAgICAgICBpZiAoaGRyX3JldHVybikK LSAgICAgICAgICAgICAqaGRyX3JldHVybiA9IGhkcjA7Ci0rCWVsc2UKLSsJewotKwkgICAgLyog SWYgaXQgaXMgbm90IGFzc2lnbmVkIHRvICpoZHJfcmV0dXJuLCBpdCB3aWxsIG5ldmVyIGJlIGZy ZWUoKSdkICovCi0rCSAgICBmcmVlKGhkcjApOwotKwl9Ci0gICAgIH0gICAgICAgICAgICAgICAg ICAgICAgICAgICAvKiBlbHNlIHplcm8gKHNhbmUpIGVudHJpZXMgKi8KLS0gICAgZWxzZQotLSAg ICAgICAgZnJlZShoZHIwKTsKLSAjICBpZm5kZWYgWlpJUF9BTExPV19NT0RVTE9fRU5UUklFUwot LSAgICByZXR1cm4gKGVudHJpZXMgIT0genpfZW50cmllcyA/IFpaSVBfQ09SUlVQVEVEIDogMCk7 Ci0rICAgIHJldHVybiAoZW50cmllcyAhPSB6el9lbnRyaWVzKSA/IFpaSVBfQ09SUlVQVEVEIDog MDsKLSAjICBlbHNlCi0tICAgIHJldHVybiAoKGVudHJpZXMgJiAodW5zaWduZWQpMHhGRkZGKSAh PSB6el9lbnRyaWVzID8gWlpJUF9DT1JSVVBURUQgOiAwKTsKLSsgICAgcmV0dXJuICgoZW50cmll cyAmICh1bnNpZ25lZCkweEZGRkYpICE9IHp6X2VudHJpZXMpID8gWlpJUF9DT1JSVVBURUQgOiAw OwotICMgIGVuZGlmCi0gfQotIAotQEAgLTc1Nyw3ICs3NjksNyBAQCBfX3p6aXBfZGlyX3BhcnNl KFpaSVBfRElSICogZGlyKQotICAgICAgICAgICAobG9uZykgX2Rpc2tfdHJhaWxlcl9yb290c2Vl aygmdHJhaWxlcikpOwotIAotICAgICBpZiAoKHJ2ID0gX196emlwX3BhcnNlX3Jvb3RfZGlyZWN0 b3J5KGRpci0+ZmQsICZ0cmFpbGVyLCAmZGlyLT5oZHIwLAotLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGRpci0+aW8pKSAhPSAwKQotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGRpci0+aW8sIGZpbGVzaXplKSkgIT0gMCkKLSAgICAg ICAgIHsgZ290byBlcnJvcjsgfQotICAgZXJyb3I6Ci0gICAgIHJldHVybiBydjsKLS0tIAotMi4y MC4xCi0KLQotRnJvbSBhYWI0OWQyM2JjMjhkMTMxODNjYjYyZTcxYjg4NGUyNDU5NWNiZTY1IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogam1vZWxsZXJzIDxqb3NlZi5tb2VsbGVyc0Bz dXNlLmNvbT4KLURhdGU6IEZyaSwgNyBTZXAgMjAxOCAxMTozMjowNCArMDIwMAotU3ViamVjdDog W1BBVENIIDMvM10gQXZvaWQgbWVtb3J5IGxlYWsgZnJvbSBfX3p6aXBfcGFyc2Vfcm9vdF9kaXJl Y3RvcnkoKS4KLQotLS0tCi0genppcC96aXAuYyB8IDI1ICsrKysrKysrKysrKysrKysrKysrKysr LS0KLSAxIGZpbGUgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKLQot ZGlmZiAtLWdpdCB6emlwL3ppcC5jIHp6aXAvemlwLmMKLWluZGV4IDUxYTFhNGQuLmE2ODUyODAg MTAwNjQ0Ci0tLS0genppcC96aXAuYwotKysrIHp6aXAvemlwLmMKLUBAIC01ODcsMTMgKzU4Nywz NCBAQCBfX3p6aXBfcGFyc2Vfcm9vdF9kaXJlY3RvcnkoaW50IGZkLAotIAl7Ci0gCSAgICAvKiBJ ZiBpdCBpcyBub3QgYXNzaWduZWQgdG8gKmhkcl9yZXR1cm4sIGl0IHdpbGwgbmV2ZXIgYmUgZnJl ZSgpJ2QgKi8KLSAJICAgIGZyZWUoaGRyMCk7Ci0rCSAgICAvKiBNYWtlIHN1cmUgd2UgZG9uJ3Qg ZnJlZSBpdCBhZ2FpbiBpbiBjYXNlIG9mIGVycm9yICovCi0rCSAgICBoZHIwID0gTlVMTDsKLSAJ fQotICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogZWxzZSB6ZXJvIChzYW5lKSBl bnRyaWVzICovCi0gIyAgaWZuZGVmIFpaSVBfQUxMT1dfTU9EVUxPX0VOVFJJRVMKLS0gICAgcmV0 dXJuIChlbnRyaWVzICE9IHp6X2VudHJpZXMpID8gWlpJUF9DT1JSVVBURUQgOiAwOwotKyAgICBp ZiAoZW50cmllcyAhPSB6el9lbnRyaWVzKQotKyAgICB7Ci0rCS8qIElmIGl0IHdhcyBhc3NpZ25l ZCB0byAqaGRyX3JldHVybiwgdW5kbyBhc3NpZ25tZW50ICovCi0rCWlmIChwX3JlY2xlbiAmJiBo ZHJfcmV0dXJuKQotKwkgICAgKmhkcl9yZXR1cm4gPSBOVUxMOwotKwkvKiBGcmVlIGl0LCBpZiBp dCB3YXMgbm90IGFscmVhZHkgZnJlZSgpJ2QgKi8KLSsJaWYgKGhkcjAgIT0gTlVMTCkKLSsJICAg IGZyZWUoaGRyMCk7Ci0rCXJldHVybiBaWklQX0NPUlJVUFRFRDsKLSsgICAgfQotICMgIGVsc2UK LS0gICAgcmV0dXJuICgoZW50cmllcyAmICh1bnNpZ25lZCkweEZGRkYpICE9IHp6X2VudHJpZXMp ID8gWlpJUF9DT1JSVVBURUQgOiAwOwotKyAgICBpZiAoKChlbnRyaWVzICYgKHVuc2lnbmVkKTB4 RkZGRikgIT0genpfZW50cmllcykKLSsgICAgewotKwkvKiBJZiBpdCB3YXMgYXNzaWduZWQgdG8g Kmhkcl9yZXR1cm4sIHVuZG8gYXNzaWdubWVudCAqLwotKwlpZiAocF9yZWNsZW4gJiYgaGRyX3Jl dHVybikKLSsJICAgICpoZHJfcmV0dXJuID0gTlVMTDsKLSsJLyogRnJlZSBpdCwgaWYgaXQgd2Fz IG5vdCBhbHJlYWR5IGZyZWUoKSdkICovCi0rCWlmIChoZHIwICE9IE5VTEwpCi0rCSAgICBmcmVl KGhkcjApOwotKwlyZXR1cm4gWlpJUF9DT1JSVVBURUQ7Ci0rICAgIH0KLSAjICBlbmRpZgotKyAg ICByZXR1cm4gMDsKLSB9Ci0gCi0gLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBoaWdoLWxl dmVsIGludGVyZmFjZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi0tLSAKLTIuMjAuMQot CmRpZmYgLS1naXQgYS9zcmNwa2dzL3p6aXBsaWIvdGVtcGxhdGUgYi9zcmNwa2dzL3p6aXBsaWIv dGVtcGxhdGUKaW5kZXggYzhkNjkzYTk0NDAuLjJmMGZlMWUzMTdkIDEwMDY0NAotLS0gYS9zcmNw a2dzL3p6aXBsaWIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy96emlwbGliL3RlbXBsYXRlCkBAIC0x LDIwICsxLDIzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd6emlwbGliJwogcGtnbmFtZT16emlw bGliCi12ZXJzaW9uPTAuMTMuNjkKLXJldmlzaW9uPTIKLWJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBweXRob24iCit2ZXJzaW9uPTAuMTMuNzAK K3JldmlzaW9uPTEKK2J1aWxkX3N0eWxlPWNtYWtlCitjb25maWd1cmVfYXJncz0iIC1EWlpJUERP Q1M9T0ZGIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHB5dGhvbjMgdGFyIHppcCBnemlw IgogbWFrZWRlcGVuZHM9InpsaWItZGV2ZWwiCiBzaG9ydF9kZXNjPSJMaWdodHdlaWdodCBsaWJy YXJ5IHRvIGV4dHJhY3QgZGF0YSBmcm9tIHppcCBmaWxlcyIKIG1haW50YWluZXI9Ik9ycGhhbmVk IDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciwgTVBM LTEuMSIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vZ2RyYWhlaW0venppcGxpYiIKIGRp c3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2dkcmFoZWltL3p6aXBsaWIvYXJjaGl2ZS92JHt2 ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT04NDYyNDZkN2NkZWVlNDA1ZDhkMjFlMjkyMmM2ZTk3 ZjU1ZjI0ZWNiZTNiNmRjZjU3NzgwNzNhODhmMTIwNTQ0CitjaGVja3N1bT1hMTQ1NzI2MmQ3YTIz N2RjNTBjZTFmOThjYTU3MjQyYmM3MTQwNTVmZjgxMTQ2ZjQxOWVlNTNjZGVhMWJmMDI5CisKK2lm IFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgorCWNvbmZpZ3VyZV9hcmdzKz0iIC1EWlpJUFRFU1Q9 T0ZGIgorZmkKKwogCi1wcmVfY29uZmlndXJlKCkgewotCXNlZCAtaSAnL1NVQkRJUlMvcy9kb2Nz Ly8nIE1ha2VmaWxlLmluCi19CiBwb3N0X2luc3RhbGwoKSB7CiAJc2VkIC1pICJzfFwoLXNwZWNz PS4qaGFyZGVuZWQtbGRcKXx8ZyIgLWkgJHtERVNURElSfS91c3IvbGliL3BrZ2NvbmZpZy8qLnBj CiB9CkBAIC0yNSw3ICsyOCw2IEBAIHp6aXBsaWItZGV2ZWxfcGFja2FnZSgpIHsKIAlwa2dfaW5z dGFsbCgpIHsKIAkJdm1vdmUgdXNyL2luY2x1ZGUKIAkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcK LQkJdm1vdmUgInVzci9saWIvKi5hIgogCQl2bW92ZSAidXNyL2xpYi8qLnNvIgogCQl2bW92ZSB1 c3Ivc2hhcmUKIAl9Cg== --===============8945626117877304142==--