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=ham autolearn_force=no version=3.4.2 Received: from inbox.vuxu.org (localhost [::1]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id 98a8da88 for ; Sun, 2 Feb 2020 07:36:07 +0000 (UTC) Content-Type: multipart/mixed; boundary="===============3862485271379606222==" MIME-Version: 1.0 Subject: Re: [PR PATCH] [Updated] p7zip: fix CVE-2018-10115. To: ml@inbox.vuxu.org From: voidlinux-github@inbox.vuxu.org Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sun, 02 Feb 2020 08:36:07 +0100 Message-ID: <20200202073607.zL17F9U8RDcfFsrTaDhfK9pwW8p93YOSZ_BPptCx0NM@z> GitHub notification mails are now in MIME to allow UTF8. --===============3862485271379606222== MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgdHJhdmFua29yIGFnYWluc3QgbWFz dGVyIG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS90 cmF2YW5rb3Ivdm9pZC1wYWNrYWdlcyBwN3ppcApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvMTg3MzIKCnA3emlwOiBmaXggQ1ZFLTIwMTgtMTAxMTUuCk5v bmUKCkEgcGF0Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQt cGFja2FnZXMvcHVsbC8xODczMi5wYXRjaCBpcyBhdHRhY2hlZA== --===============3862485271379606222== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-p7zip-18732.patch" RnJvbSBjYzhlZjRhNzgyNGE4MDMzN2EzNjQ0MTdhOWU2NDRlM2E4MzZmNmIxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiB0cmF2YW5rb3IgPHRyYXZhbmtvckB0dXRhLmlvPgpEYXRlOiBT YXQsIDEgRmViIDIwMjAgMjM6MjI6MjggLTA3MDAKU3ViamVjdDogW1BBVENIXSBwN3ppcDogZml4 IENWRS0yMDE4LTEwMTE1LgoKLS0tCiAuLi4yMDE4LTU5OTYucGF0Y2ggPT4gMjAtQ1ZFLTIwMTgt NTk5Ni5wYXRjaH0gfCAgIDAKIHNyY3BrZ3MvcDd6aXAvcGF0Y2hlcy8zMC1DVkUtMjAxOC0xMDEx NS5wYXRjaCB8IDMxMSArKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvcDd6aXAvdGVtcGxhdGUg ICAgICAgICAgICAgICAgICAgICAgICB8ICAgOCArLQogMyBmaWxlcyBjaGFuZ2VkLCAzMTUgaW5z ZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKIHJlbmFtZSBzcmNwa2dzL3A3emlwL3BhdGNoZXMv e0NWRS0yMDE4LTU5OTYucGF0Y2ggPT4gMjAtQ1ZFLTIwMTgtNTk5Ni5wYXRjaH0gKDEwMCUpCiBj cmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9wN3ppcC9wYXRjaGVzLzMwLUNWRS0yMDE4LTEwMTE1 LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wN3ppcC9wYXRjaGVzL0NWRS0yMDE4LTU5OTYu cGF0Y2ggYi9zcmNwa2dzL3A3emlwL3BhdGNoZXMvMjAtQ1ZFLTIwMTgtNTk5Ni5wYXRjaApzaW1p bGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gc3JjcGtncy9wN3ppcC9wYXRjaGVzL0NWRS0y MDE4LTU5OTYucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvcDd6aXAvcGF0Y2hlcy8yMC1DVkUtMjAx OC01OTk2LnBhdGNoCmRpZmYgLS1naXQgYS9zcmNwa2dzL3A3emlwL3BhdGNoZXMvMzAtQ1ZFLTIw MTgtMTAxMTUucGF0Y2ggYi9zcmNwa2dzL3A3emlwL3BhdGNoZXMvMzAtQ1ZFLTIwMTgtMTAxMTUu cGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjE5NDFhYjQ2OWZh Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9wN3ppcC9wYXRjaGVzLzMwLUNWRS0yMDE4LTEw MTE1LnBhdGNoCkBAIC0wLDAgKzEsMzExIEBACitGcm9tOiBSb2JlcnQgTHViZXJkYSA8cm9iZXJ0 QGRlYmlhbi5vcmc+CitEYXRlOiBUdWUsIDI5IE1heSAyMDE4IDIzOjU5OjA5ICswMjAwCitTdWJq ZWN0OiBGaXggQ1ZFLTIwMTgtMTAxMTUKKworQXBwbHkgInBhdGNoIiB0YWtlbiBmcm9tIGh0dHBz Oi8vbGFuZGF2ZS5pby9maWxlcy9wYXRjaF83emlwX0NWRS0yMDE4LTEwMTE1LnR4dAorCisKK0J1 Z3MtRGViaWFuOiBodHRwczovL2J1Z3MuZGViaWFuLm9yZy84OTc2NzQKKy0tLQorIENQUC83emlw L0NvbXByZXNzL1JhcjFEZWNvZGVyLmNwcCB8IDE2ICsrKysrKysrKysrLS0tLS0KKyBDUFAvN3pp cC9Db21wcmVzcy9SYXIxRGVjb2Rlci5oICAgfCAgMyArKy0KKyBDUFAvN3ppcC9Db21wcmVzcy9S YXIyRGVjb2Rlci5jcHAgfCAxNyArKysrKysrKysrKysrLS0tLQorIENQUC83emlwL0NvbXByZXNz L1JhcjJEZWNvZGVyLmggICB8ICAzICsrLQorIENQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVy LmNwcCB8IDE5ICsrKysrKysrKysrKysrKy0tLS0KKyBDUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVj b2Rlci5oICAgfCAgMyArKy0KKyBDUFAvN3ppcC9Db21wcmVzcy9SYXI1RGVjb2Rlci5jcHAgfCAg OCArKysrKysrKworIENQUC83emlwL0NvbXByZXNzL1JhcjVEZWNvZGVyLmggICB8ICAxICsKKyA4 IGZpbGVzIGNoYW5nZWQsIDU0IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQorCitkaWZm IC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMURlY29kZXIuY3BwIGIvQ1BQLzd6aXAvQ29t cHJlc3MvUmFyMURlY29kZXIuY3BwCitpbmRleCA2ODAzMGM3Li44Yzg5MGM4IDEwMDY0NAorLS0t IENQUC83emlwL0NvbXByZXNzL1JhcjFEZWNvZGVyLmNwcAorKysrIENQUC83emlwL0NvbXByZXNz L1JhcjFEZWNvZGVyLmNwcAorQEAgLTI5LDcgKzI5LDcgQEAgcHVibGljOgorIH07CisgKi8KKyAK Ky1DRGVjb2Rlcjo6Q0RlY29kZXIoKTogbV9Jc1NvbGlkKGZhbHNlKSwgX2Vycm9yTW9kZShmYWxz ZSkgeyB9CisrQ0RlY29kZXI6OkNEZWNvZGVyKCk6IF9pc1NvbGlkKGZhbHNlKSwgX3NvbGlkQWxs b3dlZChmYWxzZSksIF9lcnJvck1vZGUoZmFsc2UpIHsgfQorIAorIHZvaWQgQ0RlY29kZXI6Oklu aXRTdHJ1Y3R1cmVzKCkKKyB7CitAQCAtMzQ1LDcgKzM0NSw3IEBAIHZvaWQgQ0RlY29kZXI6Okdl dEZsYWdzQnVmKCkKKyAKKyB2b2lkIENEZWNvZGVyOjpJbml0RGF0YSgpCisgeworLSAgaWYgKCFt X0lzU29saWQpCisrICBpZiAoIV9pc1NvbGlkKQorICAgeworICAgICBBdnJQbGNCID0gQXZyTG4x ID0gQXZyTG4yID0gQXZyTG4zID0gTnVtSHVmID0gQnVmNjAgPSAwOworICAgICBBdnJQbGMgPSAw eDM1MDA7CitAQCAtMzkxLDYgKzM5MSwxMSBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJ U2VxdWVudGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgorICAg aWYgKGluU2l6ZSA9PSBOVUxMIHx8IG91dFNpemUgPT0gTlVMTCkKKyAgICAgcmV0dXJuIEVfSU5W QUxJREFSRzsKKyAKKysgIGlmIChfaXNTb2xpZCAmJiAhX3NvbGlkQWxsb3dlZCkKKysgICAgcmV0 dXJuIFNfRkFMU0U7CisrCisrICBfc29saWRBbGxvd2VkID0gZmFsc2U7CisrCisgICBpZiAoIW1f T3V0V2luZG93U3RyZWFtLkNyZWF0ZShrSGlzdG9yeVNpemUpKQorICAgICByZXR1cm4gRV9PVVRP Rk1FTU9SWTsKKyAgIGlmICghbV9JbkJpdFN0cmVhbS5DcmVhdGUoMSA8PCAyMCkpCitAQCAtMzk4 LDEzICs0MDMsMTMgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSVNlcXVlbnRpYWxJblN0 cmVhbSAqaW5TdHJlYW0sIElTZXF1ZW50aWFsT3V0U3RyZWFtICoKKyAKKyAgIG1fVW5wYWNrU2l6 ZSA9IChJbnQ2NCkqb3V0U2l6ZTsKKyAgIG1fT3V0V2luZG93U3RyZWFtLlNldFN0cmVhbShvdXRT dHJlYW0pOworLSAgbV9PdXRXaW5kb3dTdHJlYW0uSW5pdChtX0lzU29saWQpOworKyAgbV9PdXRX aW5kb3dTdHJlYW0uSW5pdChfaXNTb2xpZCk7CisgICBtX0luQml0U3RyZWFtLlNldFN0cmVhbShp blN0cmVhbSk7CisgICBtX0luQml0U3RyZWFtLkluaXQoKTsKKyAKKyAgIC8vIENDb2RlclJlbGVh c2VyIGNvZGVyUmVsZWFzZXIodGhpcyk7CisgICBJbml0RGF0YSgpOworLSAgaWYgKCFtX0lzU29s aWQpCisrICBpZiAoIV9pc1NvbGlkKQorICAgeworICAgICBfZXJyb3JNb2RlID0gZmFsc2U7Cisg ICAgIEluaXRTdHJ1Y3R1cmVzKCk7CitAQCAtNDc1LDYgKzQ4MCw3IEBAIEhSRVNVTFQgQ0RlY29k ZXI6OkNvZGVSZWFsKElTZXF1ZW50aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91 dFN0cmVhbSAqCisgICB9CisgICBpZiAobV9VbnBhY2tTaXplIDwgMCkKKyAgICAgcmV0dXJuIFNf RkFMU0U7CisrICBfc29saWRBbGxvd2VkID0gdHJ1ZTsKKyAgIHJldHVybiBtX091dFdpbmRvd1N0 cmVhbS5GbHVzaCgpOworIH0KKyAKK0BAIC00OTEsNyArNDk3LDcgQEAgU1RETUVUSE9ESU1QIENE ZWNvZGVyOjpTZXREZWNvZGVyUHJvcGVydGllczIoY29uc3QgQnl0ZSAqZGF0YSwgVUludDMyIHNp emUpCisgeworICAgaWYgKHNpemUgPCAxKQorICAgICByZXR1cm4gRV9JTlZBTElEQVJHOworLSAg bV9Jc1NvbGlkID0gKChkYXRhWzBdICYgMSkgIT0gMCk7CisrICBfaXNTb2xpZCA9ICgoZGF0YVsw XSAmIDEpICE9IDApOworICAgcmV0dXJuIFNfT0s7CisgfQorIAorZGlmZiAtLWdpdCBhL0NQUC83 emlwL0NvbXByZXNzL1JhcjFEZWNvZGVyLmggYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rl ci5oCitpbmRleCAwMWI2MDZiLi44YWJiM2EzIDEwMDY0NAorLS0tIENQUC83emlwL0NvbXByZXNz L1JhcjFEZWNvZGVyLmgKKysrKyBDUFAvN3ppcC9Db21wcmVzcy9SYXIxRGVjb2Rlci5oCitAQCAt MzgsNyArMzgsOCBAQCBwdWJsaWM6CisgICBVSW50MzIgTGFzdExlbmd0aDsKKyAKKyAgIEludDY0 IG1fVW5wYWNrU2l6ZTsKKy0gIGJvb2wgbV9Jc1NvbGlkOworKyAgYm9vbCBfaXNTb2xpZDsKKysg IGJvb2wgX3NvbGlkQWxsb3dlZDsKKyAgIGJvb2wgX2Vycm9yTW9kZTsKKyAKKyAgIFVJbnQzMiBS ZWFkQml0cyhpbnQgbnVtQml0cyk7CitkaWZmIC0tZ2l0IGEvQ1BQLzd6aXAvQ29tcHJlc3MvUmFy MkRlY29kZXIuY3BwIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuY3BwCitpbmRleCAw NTgwYzhkLi5iZThkODQyIDEwMDY0NAorLS0tIENQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVy LmNwcAorKysrIENQUC83emlwL0NvbXByZXNzL1JhcjJEZWNvZGVyLmNwcAorQEAgLTgwLDcgKzgw LDggQEAgc3RhdGljIGNvbnN0IFVJbnQzMiBrSGlzdG9yeVNpemUgPSAxIDw8IDIwOworIHN0YXRp YyBjb25zdCBVSW50MzIga1dpbmRvd1Jlc2VydlNpemUgPSAoMSA8PCAyMikgKyAyNTY7CisgCisg Q0RlY29kZXI6OkNEZWNvZGVyKCk6CistICBtX0lzU29saWQoZmFsc2UpLAorKyAgX2lzU29saWQo ZmFsc2UpLAorKyAgX3NvbGlkQWxsb3dlZChmYWxzZSksCisgICBtX1RhYmxlc09LKGZhbHNlKQor IHsKKyB9CitAQCAtMzIwLDYgKzMyMSwxMCBAQCBIUkVTVUxUIENEZWNvZGVyOjpDb2RlUmVhbChJ U2VxdWVudGlhbEluU3RyZWFtICppblN0cmVhbSwgSVNlcXVlbnRpYWxPdXRTdHJlYW0gKgorICAg aWYgKGluU2l6ZSA9PSBOVUxMIHx8IG91dFNpemUgPT0gTlVMTCkKKyAgICAgcmV0dXJuIEVfSU5W QUxJREFSRzsKKyAKKysgIGlmIChfaXNTb2xpZCAmJiAhX3NvbGlkQWxsb3dlZCkKKysgICAgcmV0 dXJuIFNfRkFMU0U7CisrICBfc29saWRBbGxvd2VkID0gZmFsc2U7CisrCisgICBpZiAoIW1fT3V0 V2luZG93U3RyZWFtLkNyZWF0ZShrSGlzdG9yeVNpemUpKQorICAgICByZXR1cm4gRV9PVVRPRk1F TU9SWTsKKyAgIGlmICghbV9JbkJpdFN0cmVhbS5DcmVhdGUoMSA8PCAyMCkpCitAQCAtMzMwLDEy ICszMzUsMTIgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSVNlcXVlbnRpYWxJblN0cmVh bSAqaW5TdHJlYW0sIElTZXF1ZW50aWFsT3V0U3RyZWFtICoKKyAgIFVJbnQ2NCBwb3MgPSAwLCB1 blBhY2tTaXplID0gKm91dFNpemU7CisgICAKKyAgIG1fT3V0V2luZG93U3RyZWFtLlNldFN0cmVh bShvdXRTdHJlYW0pOworLSAgbV9PdXRXaW5kb3dTdHJlYW0uSW5pdChtX0lzU29saWQpOworKyAg bV9PdXRXaW5kb3dTdHJlYW0uSW5pdChfaXNTb2xpZCk7CisgICBtX0luQml0U3RyZWFtLlNldFN0 cmVhbShpblN0cmVhbSk7CisgICBtX0luQml0U3RyZWFtLkluaXQoKTsKKyAKKyAgIC8vIENDb2Rl clJlbGVhc2VyIGNvZGVyUmVsZWFzZXIodGhpcyk7CistICBpZiAoIW1fSXNTb2xpZCkKKysgIGlm ICghX2lzU29saWQpCisgICB7CisgICAgIEluaXRTdHJ1Y3R1cmVzKCk7CisgICAgIGlmICh1blBh Y2tTaXplID09IDApCitAQCAtMzQzLDYgKzM0OCw3IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVS ZWFsKElTZXF1ZW50aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbSAq CisgICAgICAgaWYgKG1fSW5CaXRTdHJlYW0uR2V0UHJvY2Vzc2VkU2l6ZSgpICsgMiA8PSBtX1Bh Y2tTaXplKSAvLyB0ZXN0IGl0OiBwcm9iYWJseSBpbmNvcnJlY3Q7CisgICAgICAgICBpZiAoIVJl YWRUYWJsZXMoKSkKKyAgICAgICAgICAgcmV0dXJuIFNfRkFMU0U7CisrICAgICAgX3NvbGlkQWxs b3dlZCA9IHRydWU7CisgICAgICAgcmV0dXJuIFNfT0s7CisgICAgIH0KKyAgICAgaWYgKCFSZWFk VGFibGVzKCkpCitAQCAtMzg2LDYgKzM5Miw5IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFs KElTZXF1ZW50aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbSAqCisg CisgICBpZiAoIVJlYWRMYXN0VGFibGVzKCkpCisgICAgIHJldHVybiBTX0ZBTFNFOworKworKyAg X3NvbGlkQWxsb3dlZCA9IHRydWU7CisrCisgICByZXR1cm4gbV9PdXRXaW5kb3dTdHJlYW0uRmx1 c2goKTsKKyB9CisgCitAQCAtNDAyLDcgKzQxMSw3IEBAIFNURE1FVEhPRElNUCBDRGVjb2Rlcjo6 U2V0RGVjb2RlclByb3BlcnRpZXMyKGNvbnN0IEJ5dGUgKmRhdGEsIFVJbnQzMiBzaXplKQorIHsK KyAgIGlmIChzaXplIDwgMSkKKyAgICAgcmV0dXJuIEVfSU5WQUxJREFSRzsKKy0gIG1fSXNTb2xp ZCA9ICgoZGF0YVswXSAmIDEpICE9IDApOworKyAgX2lzU29saWQgPSAoKGRhdGFbMF0gJiAxKSAh PSAwKTsKKyAgIHJldHVybiBTX09LOworIH0KKyAKK2RpZmYgLS1naXQgYS9DUFAvN3ppcC9Db21w cmVzcy9SYXIyRGVjb2Rlci5oIGIvQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuaAoraW5k ZXggMGU5MDA1Zi4uMzcwYmNlMiAxMDA2NDQKKy0tLSBDUFAvN3ppcC9Db21wcmVzcy9SYXIyRGVj b2Rlci5oCisrKysgQ1BQLzd6aXAvQ29tcHJlc3MvUmFyMkRlY29kZXIuaAorQEAgLTEzOCw3ICsx MzgsOCBAQCBjbGFzcyBDRGVjb2RlciA6CisgICBCeXRlIG1fTGFzdExldmVsc1trTWF4VGFibGVT aXplXTsKKyAKKyAgIFVJbnQ2NCBtX1BhY2tTaXplOworLSAgYm9vbCBtX0lzU29saWQ7CisrICBi b29sIF9pc1NvbGlkOworKyAgYm9vbCBfc29saWRBbGxvd2VkOworICAgYm9vbCBtX1RhYmxlc09L OworIAorICAgdm9pZCBJbml0U3RydWN0dXJlcygpOworZGlmZiAtLWdpdCBhL0NQUC83emlwL0Nv bXByZXNzL1JhcjNEZWNvZGVyLmNwcCBiL0NQUC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmNw cAoraW5kZXggNmNiOGE2YS4uN2I4NTgzMyAxMDA2NDQKKy0tLSBDUFAvN3ppcC9Db21wcmVzcy9S YXIzRGVjb2Rlci5jcHAKKysrKyBDUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5jcHAKK0BA IC05Miw3ICs5Miw4IEBAIENEZWNvZGVyOjpDRGVjb2RlcigpOgorICAgX3dyaXR0ZW5GaWxlU2l6 ZSgwKSwKKyAgIF92bURhdGEoMCksCisgICBfdm1Db2RlKDApLAorLSAgbV9Jc1NvbGlkKGZhbHNl KSwKKysgIF9pc1NvbGlkKGZhbHNlKSwKKysgIF9zb2xpZEFsbG93ZWQoZmFsc2UpLAorICAgX2Vy cm9yTW9kZShmYWxzZSkKKyB7CisgICBQcG1kN19Db25zdHJ1Y3QoJl9wcG1kKTsKK0BAIC04MjEs NyArODIyLDcgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSUNvbXByZXNzUHJvZ3Jlc3NJ bmZvICpwcm9ncmVzcykKKyB7CisgICBfd3JpdHRlbkZpbGVTaXplID0gMDsKKyAgIF91bnN1cHBv cnRlZEZpbHRlciA9IGZhbHNlOworLSAgaWYgKCFtX0lzU29saWQpCisrICBpZiAoIV9pc1NvbGlk KQorICAgeworICAgICBfbHpTaXplID0gMDsKKyAgICAgX3dpblBvcyA9IDA7CitAQCAtODQwLDEy ICs4NDEsMTUgQEAgSFJFU1VMVCBDRGVjb2Rlcjo6Q29kZVJlYWwoSUNvbXByZXNzUHJvZ3Jlc3NJ bmZvICpwcm9ncmVzcykKKyAgIGlmIChfZXJyb3JNb2RlKQorICAgICByZXR1cm4gU19GQUxTRTsK KyAKKy0gIGlmICghbV9Jc1NvbGlkIHx8ICFUYWJsZXNSZWFkKQorKyAgaWYgKCFfaXNTb2xpZCB8 fCAhVGFibGVzUmVhZCkKKyAgIHsKKyAgICAgYm9vbCBrZWVwRGVjb21wcmVzc2luZzsKKyAgICAg UklOT0soUmVhZFRhYmxlcyhrZWVwRGVjb21wcmVzc2luZykpOworICAgICBpZiAoIWtlZXBEZWNv bXByZXNzaW5nKQorKyAgICB7CisrICAgICAgX3NvbGlkQWxsb3dlZCA9IHRydWU7CisgICAgICAg cmV0dXJuIFNfT0s7CisrICAgIH0KKyAgIH0KKyAKKyAgIGZvciAoOzspCitAQCAtODcwLDYgKzg3 NCw5IEBAIEhSRVNVTFQgQ0RlY29kZXI6OkNvZGVSZWFsKElDb21wcmVzc1Byb2dyZXNzSW5mbyAq cHJvZ3Jlc3MpCisgICAgIGlmICgha2VlcERlY29tcHJlc3NpbmcpCisgICAgICAgYnJlYWs7Cisg ICB9CisrCisrICBfc29saWRBbGxvd2VkID0gdHJ1ZTsKKysKKyAgIFJJTk9LKFdyaXRlQnVmKCkp OworICAgVUludDY0IHBhY2tTaXplID0gbV9JbkJpdFN0cmVhbS5CaXREZWNvZGVyLkdldFByb2Nl c3NlZFNpemUoKTsKKyAgIFJJTk9LKHByb2dyZXNzLT5TZXRSYXRpb0luZm8oJnBhY2tTaXplLCAm X3dyaXR0ZW5GaWxlU2l6ZSkpOworQEAgLTg5MCw2ICs4OTcsMTAgQEAgU1RETUVUSE9ESU1QIENE ZWNvZGVyOjpDb2RlKElTZXF1ZW50aWFsSW5TdHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91 dFN0cmVhbQorICAgICBpZiAoIWluU2l6ZSkKKyAgICAgICByZXR1cm4gRV9JTlZBTElEQVJHOwor IAorKyAgICBpZiAoX2lzU29saWQgJiYgIV9zb2xpZEFsbG93ZWQpCisrICAgICAgcmV0dXJuIFNf RkFMU0U7CisrICAgIF9zb2xpZEFsbG93ZWQgPSBmYWxzZTsKKysKKyAgICAgaWYgKCFfdm1EYXRh KQorICAgICB7CisgICAgICAgX3ZtRGF0YSA9IChCeXRlICopOjpNaWRBbGxvYyhrVm1EYXRhU2l6 ZU1heCArIGtWbUNvZGVTaXplTWF4KTsKK0BAIC05MjgsNyArOTM5LDcgQEAgU1RETUVUSE9ESU1Q IENEZWNvZGVyOjpTZXREZWNvZGVyUHJvcGVydGllczIoY29uc3QgQnl0ZSAqZGF0YSwgVUludDMy IHNpemUpCisgeworICAgaWYgKHNpemUgPCAxKQorICAgICByZXR1cm4gRV9JTlZBTElEQVJHOwor LSAgbV9Jc1NvbGlkID0gKChkYXRhWzBdICYgMSkgIT0gMCk7CisrICBfaXNTb2xpZCA9ICgoZGF0 YVswXSAmIDEpICE9IDApOworICAgcmV0dXJuIFNfT0s7CisgfQorIAorZGlmZiAtLWdpdCBhL0NQ UC83emlwL0NvbXByZXNzL1JhcjNEZWNvZGVyLmggYi9DUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVj b2Rlci5oCitpbmRleCAyZjcyZDdkLi4zMmM4OTQzIDEwMDY0NAorLS0tIENQUC83emlwL0NvbXBy ZXNzL1JhcjNEZWNvZGVyLmgKKysrKyBDUFAvN3ppcC9Db21wcmVzcy9SYXIzRGVjb2Rlci5oCitA QCAtMTkxLDcgKzE5MSw4IEBAIGNsYXNzIENEZWNvZGVyOgorICAgQ1JlY29yZFZlY3RvcjxDVGVt cEZpbHRlciAqPiAgX3RlbXBGaWx0ZXJzOworICAgVUludDMyIF9sYXN0RmlsdGVyOworIAorLSAg Ym9vbCBtX0lzU29saWQ7CisrICBib29sIF9pc1NvbGlkOworKyAgYm9vbCBfc29saWRBbGxvd2Vk OworICAgYm9vbCBfZXJyb3JNb2RlOworIAorICAgYm9vbCBfbHpNb2RlOworZGlmZiAtLWdpdCBh L0NQUC83emlwL0NvbXByZXNzL1JhcjVEZWNvZGVyLmNwcCBiL0NQUC83emlwL0NvbXByZXNzL1Jh cjVEZWNvZGVyLmNwcAoraW5kZXggZGM4ODMwZi4uYTgyNmQ1YSAxMDA2NDQKKy0tLSBDUFAvN3pp cC9Db21wcmVzcy9SYXI1RGVjb2Rlci5jcHAKKysrKyBDUFAvN3ppcC9Db21wcmVzcy9SYXI1RGVj b2Rlci5jcHAKK0BAIC03Miw2ICs3Miw3IEBAIENEZWNvZGVyOjpDRGVjb2RlcigpOgorICAgICBf d3JpdHRlbkZpbGVTaXplKDApLAorICAgICBfZGljdFNpemVMb2coMCksCisgICAgIF9pc1NvbGlk KGZhbHNlKSwKKysgICAgX3NvbGlkQWxsb3dlZChmYWxzZSksCisgICAgIF93YXNJbml0KGZhbHNl KSwKKyAgICAgX2lucHV0QnVmKE5VTEwpCisgeworQEAgLTgwMSw3ICs4MDIsMTAgQEAgSFJFU1VM VCBDRGVjb2Rlcjo6Q29kZVJlYWwoKQorICAgKi8KKyAKKyAgIGlmIChyZXMgPT0gU19PSykKKysg IHsKKysgICAgX3NvbGlkQWxsb3dlZCA9IHRydWU7CisgICAgIHJlcyA9IHJlczI7CisrICB9Cisg ICAgICAKKyAgIGlmIChyZXMgPT0gU19PSyAmJiBfdW5wYWNrU2l6ZV9EZWZpbmVkICYmIF93cml0 dGVuRmlsZVNpemUgIT0gX3VucGFja1NpemUpCisgICAgIHJldHVybiBTX0ZBTFNFOworQEAgLTgy MSw2ICs4MjUsMTAgQEAgU1RETUVUSE9ESU1QIENEZWNvZGVyOjpDb2RlKElTZXF1ZW50aWFsSW5T dHJlYW0gKmluU3RyZWFtLCBJU2VxdWVudGlhbE91dFN0cmVhbQorIHsKKyAgIHRyeQorICAgewor KyAgICBpZiAoX2lzU29saWQgJiYgIV9zb2xpZEFsbG93ZWQpCisrICAgICAgcmV0dXJuIFNfRkFM U0U7CisrICAgIF9zb2xpZEFsbG93ZWQgPSBmYWxzZTsKKysKKyAgICAgaWYgKF9kaWN0U2l6ZUxv ZyA+PSBzaXplb2Yoc2l6ZV90KSAqIDgpCisgICAgICAgcmV0dXJuIEVfTk9USU1QTDsKKyAKK2Rp ZmYgLS1naXQgYS9DUFAvN3ppcC9Db21wcmVzcy9SYXI1RGVjb2Rlci5oIGIvQ1BQLzd6aXAvQ29t cHJlc3MvUmFyNURlY29kZXIuaAoraW5kZXggYjBhNGRkMS4uM2RiNTAxOCAxMDA2NDQKKy0tLSBD UFAvN3ppcC9Db21wcmVzcy9SYXI1RGVjb2Rlci5oCisrKysgQ1BQLzd6aXAvQ29tcHJlc3MvUmFy NURlY29kZXIuaAorQEAgLTI3MSw2ICsyNzEsNyBAQCBjbGFzcyBDRGVjb2RlcjoKKyAgIEJ5dGUg X2RpY3RTaXplTG9nOworICAgYm9vbCBfdGFibGVXYXNGaWxsZWQ7CisgICBib29sIF9pc1NvbGlk OworKyAgYm9vbCBfc29saWRBbGxvd2VkOworICAgYm9vbCBfd2FzSW5pdDsKKyAKKyAgIFVJbnQz MiBfcmVwc1trTnVtUmVwc107CmRpZmYgLS1naXQgYS9zcmNwa2dzL3A3emlwL3RlbXBsYXRlIGIv c3JjcGtncy9wN3ppcC90ZW1wbGF0ZQppbmRleCAxNWM1ZjdjYWJiYS4uYzE3MDk4MDA4M2EgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvcDd6aXAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9wN3ppcC90ZW1w bGF0ZQpAQCAtMSwxMyArMSwxMyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncDd6aXAnCiBwa2du YW1lPXA3emlwCiB2ZXJzaW9uPTE2LjAyCi1yZXZpc2lvbj00CityZXZpc2lvbj01CiB3cmtzcmM9 IiR7cGtnbmFtZX1fJHt2ZXJzaW9ufSIKIGhvc3RtYWtlZGVwZW5kcz0ieWFzbSBuYXNtIgogc2hv cnRfZGVzYz0iQ29tbWFuZC1saW5lIHZlcnNpb24gb2YgdGhlIDd6aXAgY29tcHJlc3NlZCBmaWxl IGFyY2hpdmUiCi1ob21lcGFnZT0iaHR0cDovL3A3emlwLnNvdXJjZWZvcmdlLm5ldC8iCi1saWNl bnNlPSJMR1BMLTIuMSIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9y Zz4iCitsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciIKK2hvbWVwYWdlPSJodHRwOi8vcDd6aXAu c291cmNlZm9yZ2UubmV0LyIKIGRpc3RmaWxlcz0iJHtTT1VSQ0VGT1JHRV9TSVRFfS8ke3BrZ25h bWV9LyR7cGtnbmFtZX1fJHt2ZXJzaW9ufV9zcmNfYWxsLnRhci5iejIiCiBjaGVja3N1bT01ZWIy MGFjMGUyOTQ0ZjZjYjljMmQ1MWRkNmM0NTE4OTQxYzE4NTM0N2Q0MDg5ZWE4OTA4N2ZmZGQ2ZTIz NDFmCiAKQEAgLTM1LDcgKzM1LDcgQEAgZG9faW5zdGFsbCgpIHsKIAogcDd6aXAtdW5yYXJfcGFj a2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gUkFSIHN1cHBvcnQiCi0JbGljZW5zZT0idW5yYXIi CisJbGljZW5zZT0iY3VzdG9tOmZyZWV3YXJlIgogCWRlcGVuZHM9IiR7c291cmNlcGtnfS0ke3Zl cnNpb259XyR7cmV2aXNpb259IgogCXJlcG9zaXRvcnk9bm9uZnJlZQogCXBrZ19pbnN0YWxsKCkg ewo= --===============3862485271379606222==--