From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: =?utf-8?b?THVrw6HFoSBaYW9yYWwgPGx6YW9yYWxAcmVkaGF0LmNvbT4=?= To: git-commits@fedoraproject.org Subject: [rpms/tftp] rawhide: rebase to the latest upstream release Date: Thu, 03 Sep 2026 09:12:29 GMT Message-ID: <178842674926.1.12027486397434219689.rpms-tftp-b2b5876d55ea@fedoraproject.org> List-ID: X-Git-Repo: rpms/tftp X-Git-Branch: rawhide X-Git-Rev: b2b5876d55ea3c28d665b9c7d9b0b46f3f536080 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvdGZ0cAogICAgICAgICAgICBCcmFuY2ggOiByYXdoaWRlCiAgICAgICAgICAg IENvbW1pdCA6IGIyYjU4NzZkNTVlYTNjMjhkNjY1YjljN2Q5YjBiNDZmM2Y1MzYwODAKICAgICAg ICAgICAgQXV0aG9yIDogTHVrw6HFoSBaYW9yYWwgPGx6YW9yYWxAcmVkaGF0LmNvbT4KICAgICAg ICAgICAgRGF0ZSAgIDogMjAyNi0wOS0wMVQxNjoxMzo0OCswMjowMAogICAgICAgICAgICBTdGF0 cyAgOiArMzcwLy0yNjQgaW4gMTAgZmlsZShzKQogICAgICAgICAgICBVUkwgICAgOiBodHRwczov L3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL3RmdHAvYy9iMmI1ODc2ZDU1ZWEzYzI4ZDY2NWI5 YzdkOWIwYjQ2ZjNmNTM2MDgwP2JyYW5jaD1yYXdoaWRlCgogICAgICAgICAgICBMb2c6CiAgICAg ICAgICAgIHJlYmFzZSB0byB0aGUgbGF0ZXN0IHVwc3RyZWFtIHJlbGVhc2UKClJlc29sdmVzOiBy aGJ6IzI1MjU4NTkKCi0tLQpkaWZmIC0tZ2l0IGEvLmdpdGlnbm9yZSBiLy5naXRpZ25vcmUKaW5k ZXggY2RhMTZhYy4uMjBmNWUzNyAxMDA2NDQKLS0tIGEvLmdpdGlnbm9yZQorKysgYi8uZ2l0aWdu b3JlCkBAIC00LDMgKzQsNSBAQCB0ZnRwLWhwYS0wLjQ5LnRhci5iejIKIC90ZnRwLWhwYS01LjMu dGFyLmd6CiAvdGZ0cC1ocGEtNS40LnRhci5negogL3RmdHAtaHBhLTUuNC50YXIuc2lnbgorL3Rm dHAtaHBhLTYuMC50YXIuZ3oKKy90ZnRwLWhwYS02LjAudGFyLnNpZ24KCmRpZmYgLS1naXQgYS9z b3VyY2VzIGIvc291cmNlcwppbmRleCBhNGFlNjE1Li4zODkxNGEyIDEwMDY0NAotLS0gYS9zb3Vy Y2VzCisrKyBiL3NvdXJjZXMKQEAgLTEsMiArMSwyIEBACi1TSEE1MTIgKHRmdHAtaHBhLTUuNC50 YXIuZ3opID0gYTdmNDJmN2UxMjhiNTUzZGE0ZjViNjdjYjQ5NGNiMGY5NWVjNmIwNTMwMGJkMGVk NjUwY2NmMmNlNjU4Y2M5ZmVlOWI0NjJmMGEwOGQ5MjgwMDI3NTYwOGQ4MzBkMjQzZTIwMTZkNmE1 MGQ5YmE2NTZiZWVmYjliZWI4OTI3MzkKLVNIQTUxMiAodGZ0cC1ocGEtNS40LnRhci5zaWduKSA9 IGE4ZGIwMWNjYjVlNzFiMGI0ZTIwMDExMjk2NGZlZGU3NDgwMTM0Yjk0MTIyMzJhMWVkNTg5MjNl ZDVmY2MzNzU4ZWQ4MGYxNDk2NzYxMTQ2ZjQyNzRiNjhiNDZhZmMzNTMwYmJiZGM1NzYyMWZlNTcw ZWE3MWE3OGZiMzIwZDE3CitTSEE1MTIgKHRmdHAtaHBhLTYuMC50YXIuZ3opID0gODU2MjBjNWNl NWI3ZmRlYjA3NGEwMDkzYzY0MGFjZTk0MTk1NDE4OTMyOGMyYTQyYjAzMzliNzQwMDc3NjcyMjE1 NjcyNDA3MzFhMTVkNTI5YzUzMDhjODY4ZjAzZmU5NDY0ZjljZTZhNjY2OTMyZmI3MzhkM2VkMTUz ZGQ2NmYKK1NIQTUxMiAodGZ0cC1ocGEtNi4wLnRhci5zaWduKSA9IDY5NzU5NWQxZWYzYmIxMTRi OWFjYzRhOTU5NTBlNDI0NGZiNjM3NWE2Yjk3YmEwNjA0OTQ2YTk3Y2MyZTRjNzJiZThjN2Q2ODA0 MGQ5ZDE0MjRlZjBmYzUzYWVmMWQ2YWU0NDBlNzE0OWRlYjU5ZWMxMjRkZGYxZTEzNWI5MTAzCgpk aWZmIC0tZ2l0IGEvdGZ0cC0wLjQyLXRmdHBib290LnBhdGNoIGIvdGZ0cC0wLjQyLXRmdHBib290 LnBhdGNoCmluZGV4IDk4YjkyZjkuLmZiZDcyMTggMTAwNjQ0Ci0tLSBhL3RmdHAtMC40Mi10ZnRw Ym9vdC5wYXRjaAorKysgYi90ZnRwLTAuNDItdGZ0cGJvb3QucGF0Y2gKQEAgLTEsMTEgKzEsMTEg QEAKIGRpZmYgLS1naXQgYS9SRUFETUUuc2VjdXJpdHkgYi9SRUFETUUuc2VjdXJpdHkKLWluZGV4 IDY0NGJhYmIuLjI0ZjUxMDMgMTAwNjQ0CitpbmRleCA4ZmY5ZTg1Li5kZjJmYTM4IDEwMDY0NAog LS0tIGEvUkVBRE1FLnNlY3VyaXR5CiArKysgYi9SRUFETUUuc2VjdXJpdHkKLUBAIC0xMywxMCAr MTMsMTAgQEAgcHJvYmFibHkgdGhlIGZvbGxvd2luZzoKK0BAIC0yMywxMCArMjMsMTAgQEAgcHJv YmFibHkgdGhlIGZvbGxvd2luZzoKICAKICAxLiBDcmVhdGUgYSBzZXBhcmF0ZSAidGZ0cGQiIHVz ZXIgYW5kIGdyb3VwIG9ubHkgdXNlZCBmb3IgdGZ0cGQ7Ci0gMi4gSGF2ZSBhbGwgeW91ciBib290 IGZpbGVzIGluIGEgc2luZ2xlIGRpcmVjdG9yeSB0cmVlICh1c3VhbGx5IGNhbGxlZCAKKyAyLiBI YXZlIGFsbCB5b3VyIGJvb3QgZmlsZXMgaW4gYSBzaW5nbGUgZGlyZWN0b3J5IHRyZWUgKHVzdWFs bHkgY2FsbGVkCiAtICAgL3RmdHBib290KS4KIC0zLiBTcGVjaWZ5ICItcCAtdSB0ZnRwZCAtcyAv dGZ0cGJvb3QiIG9uIHRoZSB0ZnRwZCBjb21tYW5kIGxpbmU7IGlmCiArICAgL3Zhci9saWIvdGZ0 cGJvb3QpLgpAQCAtMTUsOCArMTUsOCBAQCBpbmRleCA2NDRiYWJiLi4yNGY1MTAzIDEwMDY0NAog KyAgICItcCAtYyAtVSAwMDIgLXUgdGZ0cGQgLXMgL3Zhci9saWIvdGZ0cGJvb3QiIChyZXBsYWNl IDAwMiB3aXRoIHdoYXRldmVyCiAgICAgdW1hc2sgaXMgYXBwcm9wcmlhdGUgZm9yIHlvdXIgc2V0 dXAuKQogIAotIAkgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 Ci1AQCAtMzYsMTIgKzM2LDEyIEBAIGRpcmVjdGx5LiAgVGh1cywgaWYgeW91ciAvZXRjL2luZXRk LmNvbmYgbG9va3MgbGlrZSB0aGlzIChhbGwgb24gb25lCisgV2hlbiB0aGUgLXMgKGNocm9vdCkg b3B0aW9uIGlzIHVzZWQsIHRmdHBkIG5lZWRzIHRvIGJlIHN0YXJ0ZWQgYXMKK0BAIC01MSwxMiAr NTEsMTIgQEAgZGlyZWN0bHkuICBUaHVzLCBpZiB5b3VyIC9ldGMvaW5ldGQuY29uZiBsb29rcyBs aWtlIHRoaXMgKGFsbCBvbiBvbmUKICBsaW5lKToKICAKICB0ZnRwCWRncmFtCXVkcAl3YWl0CXJv b3QJL3Vzci9zYmluL3RjcGQKCmRpZmYgLS1naXQgYS90ZnRwLWRvYy5wYXRjaCBiL3RmdHAtZG9j LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjMzczM2Q5Li4wMDAwMDAwCi0t LSBhL3RmdHAtZG9jLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotLS0tIGEv dGZ0cC9tYWluLmMKLSsrKyBiL3RmdHAvbWFpbi5jCi1AQCAtMTY1LDkgKzE2NSwxMSBAQCBzdGF0 aWMgdm9pZCB1c2FnZShpbnQgZXJyY29kZSkKLSB7Ci0gICAgIGZwcmludGYoc3RkZXJyLAotICNp ZmRlZiBIQVZFX0lQVjYKLS0gICAgICAgICAgICAiVXNhZ2U6ICVzIFstNF1bLTZdWy12XVstbF1b LW0gbW9kZV0gW2hvc3QgW3BvcnRdXSBbLWMgY29tbWFuZF1cbiIsCi0rICAgICAgICAgICAgIlVz YWdlOiAlcyBbLTRdWy02XVstdl1bLVZdWy1sXVstbSBtb2RlXSBbLVIgcG9ydDpwb3J0XSAiCi0r CQkJIltob3N0IFtwb3J0XV0gWy1jIGNvbW1hbmRdXG4iLAotICNlbHNlCi0tICAgICAgICAgICAg IlVzYWdlOiAlcyBbLXZdWy1sXVstbSBtb2RlXSBbaG9zdCBbcG9ydF1dIFstYyBjb21tYW5kXVxu IiwKLSsgICAgICAgICAgICAiVXNhZ2U6ICVzIFstdl1bLVZdWy1sXVstbSBtb2RlXSBbLVIgcG9y dDpwb3J0XSAiCi0rCQkJIltob3N0IFtwb3J0XV0gWy1jIGNvbW1hbmRdXG4iLAotICNlbmRpZgot ICAgICAgICAgICAgIF9wcm9nbmFtZSk7Ci0gICAgIGV4aXQoZXJyY29kZSk7CgpkaWZmIC0tZ2l0 IGEvdGZ0cC1lbmhhbmNlZC1sb2dnaW5nLnBhdGNoIGIvdGZ0cC1lbmhhbmNlZC1sb2dnaW5nLnBh dGNoCmluZGV4IGNmYjM0NWYuLmY0N2M0MDYgMTAwNjQ0Ci0tLSBhL3RmdHAtZW5oYW5jZWQtbG9n Z2luZy5wYXRjaAorKysgYi90ZnRwLWVuaGFuY2VkLWxvZ2dpbmcucGF0Y2gKQEAgLTEsNiArMSw4 IEBACitkaWZmIC0tZ2l0IGEvdGZ0cGQvdGZ0cGQuYyBiL3RmdHBkL3RmdHBkLmMKK2luZGV4IDlj MWQxOTUuLjk4Zjc5NTAgMTAwNjQ0CiAtLS0gYS90ZnRwZC90ZnRwZC5jCiArKysgYi90ZnRwZC90 ZnRwZC5jCi1AQCAtMTA4OSw3ICsxMDg5LDcgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiph cmd2KQorQEAgLTEwMjYsNyArMTAyNiw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJn dikKICBzdGF0aWMgY2hhciAqcmV3cml0ZV9hY2Nlc3MoY29uc3Qgc3RydWN0IGZvcm1hdHMgKiwK ICAJCQkgICAgY2hhciAqLCBpbnQsIGludCwgY29uc3QgY2hhciAqKik7CiAgc3RhdGljIGludCB2 YWxpZGF0ZV9hY2Nlc3MoY2hhciAqLCBpbnQsIGNvbnN0IHN0cnVjdCBmb3JtYXRzICosIGNvbnN0 IGNoYXIgKiopOwpAQCAtOSw3ICsxMSw3IEBACiAgc3RhdGljIHZvaWQgdGZ0cF9yZWN2ZmlsZShj b25zdCBzdHJ1Y3QgZm9ybWF0cyAqLCBzdHJ1Y3QgdGZ0cGhkciAqLCBpbnQpOwogIAogIHN0YXRp YyBjb25zdCBzdHJ1Y3QgZm9ybWF0cyBmb3JtYXRzW10gPSB7Ci1AQCAtMTE4MCw2ICsxMTgwLDkg QEAgaW50IHRmdHAoc3RydWN0IHRmdHBoZHIgKnRwLCBpbnQgc2l6ZSkKK0BAIC0xMTE5LDYgKzEx MTksOSBAQCBpbnQgdGZ0cChzdHJ1Y3QgdGZ0cGhkciAqdHAsIGludCBzaXplKQogIAkgICAgaWYg KCFmaWxlKSB7CiAgCQllY29kZSA9CiAgCQkgICAgKCpwZi0+Zl92YWxpZGF0ZSkgKGZpbGVuYW1l LCB0cF9vcGNvZGUsIHBmLCAmZXJybXNncHRyKTsKQEAgLTE5LDcgKzIxLDcgQEAKICAJCWlmIChl Y29kZSkgewogIAkJICAgIG5hayhlY29kZSwgZXJybXNncHRyKTsKICAJCSAgICBleGl0KDApOwot QEAgLTEyMDMsMTIgKzEyMDYsMTIgQEAgaW50IHRmdHAoc3RydWN0IHRmdHBoZHIgKnRwLCBpbnQg c2l6ZSkKK0BAIC0xMTQ1LDEyICsxMTQ4LDEyIEBAIGludCB0ZnRwKHN0cnVjdCB0ZnRwaGRyICp0 cCwgaW50IHNpemUpCiAgICAgICAgICBpZiAodHBfb3Bjb2RlID09IFdSUSkKICAgICAgICAgICAg ICAoKnBmLT5mX3JlY3YpIChwZiwgKHN0cnVjdCB0ZnRwaGRyICopYWNrYnVmLCBhcCAtIGFja2J1 Zik7CiAgICAgICAgICBlbHNlCkBAIC0zNCw3ICszNiw3IEBACiAgICAgIH0KICAgICAgZXhpdCgw KTsgICAgICAgICAgICAgICAgICAgIC8qIFJlcXVlc3QgY29tcGxldGVkICovCiAgfQotQEAgLTE2 NTUsNyArMTY1OCw3IEBAIHN0YXRpYyBpbnQgdmFsaWRhdGVfYWNjZXNzKGNoYXIgKmZpbGVuYW1l LCBpbnQgbW9kZSwKK0BAIC0xNjcyLDcgKzE2NzUsNyBAQCBzdGF0aWMgaW50IHZhbGlkYXRlX2Fj Y2VzcyhjaGFyICpmaWxlbmFtZSwgaW50IG1vZGUsCiAgLyoKICAgKiBTZW5kIHRoZSByZXF1ZXN0 ZWQgZmlsZS4KICAgKi8KQEAgLTQzLDEwICs0NSwyNCBAQAogIHsKICAgICAgc3RydWN0IHRmdHBo ZHIgKmRwOwogICAgICBzdHJ1Y3QgdGZ0cGhkciAqYXA7ICAgICAgICAgLyogYWNrIHBhY2tldCAq LwotQEAgLTE3NDYsNiArMTc0OSwxMyBAQCBzdGF0aWMgdm9pZCB0ZnRwX3NlbmRmaWxlKGNvbnN0 IHN0cnVjdCBmb3JtYXRzICpwZiwgc3RydWN0IHRmdHBoZHIgKm9hcCwgaW50IG9hYwotIAlpZiAo ISsrYmxvY2spCi0gCSAgYmxvY2sgPSByb2xsb3Zlcl92YWw7Ci0gICAgIH0gd2hpbGUgKHNpemUg PT0gc2Vnc2l6ZSk7CitAQCAtMTc4Myw2ICsxNzg2LDEzIEBAIHN0YXRpYyB2b2lkIHRmdHBfc2Vu ZGZpbGUoY29uc3Qgc3RydWN0IGZvcm1hdHMgKnBmLCBzdHJ1Y3QgdGZ0cGhkciAqb2FwLCBpbnQg b2FjCisgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgfQorICAgICB9CisrICAgIHRt cF9wID0gKGNoYXIgKilpbmV0X250b3AoZnJvbS5zYS5zYV9mYW1pbHksIFNPQ0tBRERSX1AoJmZy b20pLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRtcGJ1ZiwgSU5FVDZfQUREUlNU UkxFTik7CisrICAgIGlmICghdG1wX3ApIHsKKysgICAgICAgICAgICB0bXBfcCA9IHRtcGJ1ZjsK KysgICAgICAgICAgICBzdHJjcHkodG1wYnVmLCAiPz8/Iik7CisrICAgIH0KKysgICAgdGZ0cGRf bG9nKExPR19OT1RJQ0UsICJDbGllbnQgJXMgZmluaXNoZWQgJXMiLCB0bXBfcCwgZmlsZW5hbWUp OworICAgYWJvcnQ6CisgICAgIHRmdHBpb19zdG9wKGlvKTsKKyAgICAgaW8gPSBOVUxMOworQEAg LTE4NTYsNiArMTg2NiwxMyBAQCBzdGF0aWMgdm9pZCB0ZnRwX3NlbmRmaWxlKGNvbnN0IHN0cnVj dCBmb3JtYXRzICpwZiwgc3RydWN0IHRmdHBoZHIgKm9hcCwgaW50IG9hYworICAgICAgICAgeGZy ZWUocGFja2V0cyk7CisgICAgICAgICB4ZnJlZShsZW5ndGhzKTsKKyAgICAgfQogKyAgICB0bXBf cCA9IChjaGFyICopaW5ldF9udG9wKGZyb20uc2Euc2FfZmFtaWx5LCBTT0NLQUREUl9QKCZmcm9t KSwKICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0bXBidWYsIElORVQ2X0FERFJTVFJM RU4pOwogKyAgICBpZiAoIXRtcF9wKSB7CkBAIC01NiwxMCArNzIsMTIgQEAKICsgICAgdGZ0cGRf bG9nKExPR19OT1RJQ0UsICJDbGllbnQgJXMgZmluaXNoZWQgJXMiLCB0bXBfcCwgZmlsZW5hbWUp OwogICAgYWJvcnQ6CiAgICAgICh2b2lkKWZjbG9zZShmaWxlKTsKLSB9CisgI2VuZGlmCitkaWZm IC0tZ2l0IGEvdGZ0cGQvdGZ0cGQuaCBiL3RmdHBkL3RmdHBkLmgKK2luZGV4IGI2NjU4ZDQuLmE1 MmFkYzUgMTAwNjQ0CiAtLS0gYS90ZnRwZC90ZnRwZC5oCiArKysgYi90ZnRwZC90ZnRwZC5oCi1A QCAtMzMsNyArMzMsNyBAQCBzdHJ1Y3QgZm9ybWF0cyB7CitAQCAtMzQsNyArMzQsNyBAQCBzdHJ1 Y3QgZm9ybWF0cyB7CiAgICAgIGNvbnN0IGNoYXIgKmZfbW9kZTsKICAgICAgY2hhciAqKCpmX3Jl d3JpdGUpIChjb25zdCBzdHJ1Y3QgZm9ybWF0cyAqLCBjaGFyICosIGludCwgaW50LCBjb25zdCBj aGFyICoqKTsKICAgICAgaW50ICgqZl92YWxpZGF0ZSkgKGNoYXIgKiwgaW50LCBjb25zdCBzdHJ1 Y3QgZm9ybWF0cyAqLCBjb25zdCBjaGFyICoqKTsKCmRpZmYgLS1naXQgYS90ZnRwLWhwYS01LjIt b3NoLnBhdGNoIGIvdGZ0cC1ocGEtNS4yLW9zaC5wYXRjaAppbmRleCA3NDM1YTNlLi40NjBiNWE4 IDEwMDY0NAotLS0gYS90ZnRwLWhwYS01LjItb3NoLnBhdGNoCisrKyBiL3RmdHAtaHBhLTUuMi1v c2gucGF0Y2gKQEAgLTEsOSArMSw5IEBACiAjIEZpeCBsZWFrZWRfaGFuZGxlOiBIYW5kbGUgdmFy aWFibGUgImZkIiBnb2luZyBvdXQgb2Ygc2NvcGUgbGVha3MgdGhlIGhhbmRsZS4KIGRpZmYgLS1n aXQgYS90ZnRwZC90ZnRwZC5jIGIvdGZ0cGQvdGZ0cGQuYwotaW5kZXggNmRjZjE0Zi4uYjI2NzM2 NCAxMDA2NDQKK2luZGV4IDk4Zjc5NTAuLmIzZmQwNmMgMTAwNjQ0CiAtLS0gYS90ZnRwZC90ZnRw ZC5jCiArKysgYi90ZnRwZC90ZnRwZC5jCi1AQCAtMTYxNiw2ICsxNjIzLDcgQEAgc3RhdGljIGlu dCB2YWxpZGF0ZV9hY2Nlc3MoY2hhciAqZmlsZW5hbWUsIGludCBtb2RlLAorQEAgLTE2MzYsNiAr MTYzNiw3IEBAIHN0YXRpYyBpbnQgdmFsaWRhdGVfYWNjZXNzKGNoYXIgKmZpbGVuYW1lLCBpbnQg bW9kZSwKICAKICAgICAgaWYgKG1vZGUgPT0gUlJRKSB7CiAgICAgICAgICBpZiAoIXVuaXhwZXJt cyAmJiAoc3RidWYuc3RfbW9kZSAmIChTX0lSRUFEID4+IDYpKSA9PSAwKSB7CkBAIC0xMSw3ICsx MSw3IEBAIGluZGV4IDZkY2YxNGYuLmIyNjczNjQgMTAwNjQ0CiAgICAgICAgICAgICAgKmVycm1z ZyA9ICJGaWxlIG11c3QgaGF2ZSBnbG9iYWwgcmVhZCBwZXJtaXNzaW9ucyI7CiAgICAgICAgICAg ICAgcmV0dXJuIChFQUNDRVNTKTsKICAgICAgICAgIH0KLUBAIC0xNjI1LDYgKzE2MzMsNyBAQCBz dGF0aWMgaW50IHZhbGlkYXRlX2FjY2VzcyhjaGFyICpmaWxlbmFtZSwgaW50IG1vZGUsCitAQCAt MTY0NSw2ICsxNjQ2LDcgQEAgc3RhdGljIGludCB2YWxpZGF0ZV9hY2Nlc3MoY2hhciAqZmlsZW5h bWUsIGludCBtb2RlLAogICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCF1bml4cGVybXMpIHsK ICAgICAgICAgICAgICBpZiAoKHN0YnVmLnN0X21vZGUgJiAoU19JV1JJVEUgPj4gNikpID09IDAp IHsKQEAgLTE5LDcgKzE5LDcgQEAgaW5kZXggNmRjZjE0Zi4uYjI2NzM2NCAxMDA2NDQKICAgICAg ICAgICAgICAgICAgKmVycm1zZyA9ICJGaWxlIG11c3QgaGF2ZSBnbG9iYWwgd3JpdGUgcGVybWlz c2lvbnMiOwogICAgICAgICAgICAgICAgICByZXR1cm4gKEVBQ0NFU1MpOwogICAgICAgICAgICAg IH0KLUBAIC0xNjMzLDYgKzE2NDIsNyBAQCBzdGF0aWMgaW50IHZhbGlkYXRlX2FjY2VzcyhjaGFy ICpmaWxlbmFtZSwgaW50IG1vZGUsCitAQCAtMTY1Myw2ICsxNjU1LDcgQEAgc3RhdGljIGludCB2 YWxpZGF0ZV9hY2Nlc3MoY2hhciAqZmlsZW5hbWUsIGludCBtb2RlLAogICNpZmRlZiBIQVZFX0ZU UlVOQ0FURQogIAkvKiBXZSBkaWRuJ3QgZ2V0IHRvIHRydW5jYXRlIHRoZSBmaWxlIGF0IG9wZW4o KSB0aW1lICovCiAgCWlmIChmdHJ1bmNhdGUoZmQsIChvZmZfdCkgMCkpIHsKQEAgLTI3LDM0ICsy NywzIEBAIGluZGV4IDZkY2YxNGYuLmIyNjczNjQgMTAwNjQ0CiAgCSAgKmVycm1zZyA9ICJDYW5u b3QgcmVzZXQgZmlsZSBzaXplIjsKICAJICByZXR1cm4gKEVBQ0NFU1MpOwogIAl9Ci0KLUZyb20g NWY2MDM1NWM0YmQxMGI4NjY4NDdhMGQ1OGE5NTgyYmRhN2RiNzJhYSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKLUZyb206ID0/VVRGLTg/cT9MdWs9QzM9QTE9QzU9QTE9MjBaYW9yYWw/PSA8bHph b3JhbEByZWRoYXQuY29tPgotRGF0ZTogV2VkLCA2IEFwciAyMDIyIDA5OjM0OjQ2ICswMjAwCi1T dWJqZWN0OiBbUEFUQ0hdIHRmdHBkOiBGaXggYSBwb3NzaWJsZSB1c2FnZSBvZiAtMSBmaWxlIGRl c2NyaXB0b3IgaW4KLSBzdGFuZGFsb25lIG1vZGUKLQotLS0tCi0gdGZ0cGQvdGZ0cGQuYyB8IDcg KysrKysrKwotIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKykKLQotZGlmZiAtLWdpdCBh L3RmdHBkL3RmdHBkLmMgYi90ZnRwZC90ZnRwZC5jCi1pbmRleCAwMGZhMWNmLi5hZmQ1OTVkIDEw MDY0NAotLS0tIGEvdGZ0cGQvdGZ0cGQuYwotKysrIGIvdGZ0cGQvdGZ0cGQuYwotQEAgLTY3Miw2 ICs2NzIsMTMgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQotICAgICAgICAgICAg ICAgICAgICAgICAgIGV4aXQoRVhfVVNBR0UpOwotICAgICAgICAgICAgICAgICAgICAgfQotICAg ICAgICAgICAgICAgICAgICAgYWlfZmFtID0gQUZfSU5FVDY7Ci0rCi0rICAgICAgICAgICAgICAg ICAgICBpZiAoZmQ2IDwgMCkgewotKyAgICAgICAgICAgICAgICAgICAgICAgIHN5c2xvZyhMT0df RVJSLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiSVB2NiB3YXMgZGlzYWJsZWQg YnV0IGFkZHJlc3MgJXMgaXMgaW4gYWRkcmVzcyAiCi0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJmYW1pbHkgQUZfSU5FVDYiLCBhZGRyZXNzKTsKLSsgICAgICAgICAgICAgICAgICAg ICAgICBleGl0KEVYX1VTQUdFKTsKLSsgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg ICAgICAgfQotICAgICAgICAgICAgICAgICBicmVhazsKLSAjZW5kaWYKLS0tIAotMi4zNS4xCgpk aWZmIC0tZ2l0IGEvdGZ0cC1ocGEtNS4zLXN0YXRzLnBhdGNoIGIvdGZ0cC1ocGEtNS4zLXN0YXRz LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1NzFhYjMwLi4wMDAwMDAwCi0t LSBhL3RmdHAtaHBhLTUuMy1zdGF0cy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQyICswLDAg QEAKLUZyb20gN2IxMDUxY2FmY2ZiNGZkNjFjODQwZTQ4OWNlY2VhODM4MDE3N2FhNCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKLUZyb206ID0/VVRGLTg/cT9MdWs9QzM9QTE9QzU9QTE9MjBaYW9y YWw/PSA8bHphb3JhbEByZWRoYXQuY29tPgotRGF0ZTogVHVlLCAxNCBBcHIgMjAyNiAxNzo1ODo0 MSArMDIwMAotU3ViamVjdDogW1BBVENIXSA9P1VURi04P3E/dGZ0cDo9MjBjb3JyZWN0bHk9MjBj b252ZXJ0PTIwPUNFPUJDcz0yMHRvPTIwcz89Ci0gPT9VVEYtOD9xPz0yMHRvPTIwZml4PTIwdHJh bnNmZXI9MjBzdGF0aXN0aWNzPz0KLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6IHRl eHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQK LQotQmVmb3JlIHRoaXMgcGF0Y2gsIHRoZSBtaWNyb3NlY29uZHMgZGlmZmVyZW5jZSB3YXMgY29t cHV0ZWQgaW5jb3JyZWN0bHkKLWxlYWRpbmcgdG8gd3JvbmcgdHJhbnNmZXIgc3RhdGlzdGljcy4g IFRoZSB2YWx1ZSBzaG91bGQgYmUgZGl2aWRlZCBieQotYSBtaWxsaW9uIGFuZCBub3QgYnkgdGVu IHRob3VzYW5kLgotCi0kIC4vdGZ0cC90ZnRwIGxvY2FsaG9zdCAtdiAtYyBnZXQgMTBNQgotQ29u bmVjdGVkIHRvIGxvY2FsaG9zdCAoOjoxKSwgcG9ydCA2OQotZ2V0dGluZyBmcm9tIGxvY2FsaG9z dDoxME1CIHRvIDEwTUIgW25ldGFzY2lpXQotUmVjZWl2ZWQgMTA0ODU3NjAgYnl0ZXMgaW4gLTcu NSBzZWNvbmRzIFstMTExNjQyOTggYml0L3NdCi0KLVJldmlld2VkLWJ5OiBQYXVsIE1lbnplbCA8 cG1lbnplbEBtb2xnZW4ubXBnLmRlPgotU2lnbmVkLW9mZi1ieTogTHVrw6HFoSBaYW9yYWwgPGx6 YW9yYWxAcmVkaGF0LmNvbT4KLS0tLQotIHRmdHAvdGZ0cC5jIHwgNCArKy0tCi0gMSBmaWxlIGNo YW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3Rm dHAvdGZ0cC5jIGIvdGZ0cC90ZnRwLmMKLWluZGV4IDE0YzNhNzUuLmUxNjE1MjcgMTAwNjQ0Ci0t LS0gYS90ZnRwL3RmdHAuYwotKysrIGIvdGZ0cC90ZnRwLmMKLUBAIC00MDYsOCArNDA2LDggQEAg c3RhdGljIHZvaWQgcHJpbnRzdGF0cyhjb25zdCBjaGFyICpkaXJlY3Rpb24sIHVuc2lnbmVkIGxv bmcgYW1vdW50KQotIHsKLSAgICAgZG91YmxlIGRlbHRhOwotIAotLSAgICBkZWx0YSA9ICh0c3Rv cC50dl9zZWMgKyAodHN0b3AudHZfdXNlYyAvIDEwMDAwMC4wKSkgLQotLSAgICAgICAgKHRzdGFy dC50dl9zZWMgKyAodHN0YXJ0LnR2X3VzZWMgLyAxMDAwMDAuMCkpOwotKyAgICBkZWx0YSA9ICh0 c3RvcC50dl9zZWMgKyAodHN0b3AudHZfdXNlYyAvIDEwMDAwMDAuMCkpIC0KLSsgICAgICAgICh0 c3RhcnQudHZfc2VjICsgKHRzdGFydC50dl91c2VjIC8gMTAwMDAwMC4wKSk7Ci0gICAgIGlmICh2 ZXJib3NlKSB7Ci0gICAgICAgICBwcmludGYoIiVzICVsdSBieXRlcyBpbiAlLjFmIHNlY29uZHMi LCBkaXJlY3Rpb24sIGFtb3VudCwgZGVsdGEpOwotICAgICAgICAgcHJpbnRmKCIgWyUuMGYgYml0 L3NdIiwgKGFtb3VudCAqIDguKSAvIGRlbHRhKTsKLS0tIAotMi41NS4wCi0KCmRpZmYgLS1naXQg YS90ZnRwLWhwYS01LjMtdGZ0cC1leGl0LWNvZGUtY21kbW9kZS5wYXRjaCBiL3RmdHAtaHBhLTUu My10ZnRwLWV4aXQtY29kZS1jbWRtb2RlLnBhdGNoCmluZGV4IDQ3YzgzNTEuLjhhYjEwMWIgMTAw NjQ0Ci0tLSBhL3RmdHAtaHBhLTUuMy10ZnRwLWV4aXQtY29kZS1jbWRtb2RlLnBhdGNoCisrKyBi L3RmdHAtaHBhLTUuMy10ZnRwLWV4aXQtY29kZS1jbWRtb2RlLnBhdGNoCkBAIC01LDMyICs1LDMy IEBAIFN1YmplY3Q6IFtQQVRDSF0gdGZ0cDogcHJvcGFnYXRlIGVycm9ycyB0byBleGl0IGNvZGUg aW4gc2luZ2xlIGNvbW1hbmQgbW9kZQogCiAtLS0KICB0ZnRwL2V4dGVybi5oIHwgICA0ICstCi0g dGZ0cC9tYWluLmMgICB8IDEzMiArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQotIHRmdHAvdGZ0cC5jICAgfCAgMjIgKysrKysrKy0tCi0gMyBmaWxlcyBj aGFuZ2VkLCA5NCBpbnNlcnRpb25zKCspLCA2NCBkZWxldGlvbnMoLSkKKyB0ZnRwL21haW4uYyAg IHwgMTQ0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0t CisgdGZ0cC90ZnRwLmMgICB8ICAzNyArKysrKysrKysrKy0tCisgMyBmaWxlcyBjaGFuZ2VkLCAx MTUgaW5zZXJ0aW9ucygrKSwgNzAgZGVsZXRpb25zKC0pCiAKIGRpZmYgLS1naXQgYS90ZnRwL2V4 dGVybi5oIGIvdGZ0cC9leHRlcm4uaAotaW5kZXggOWZkNDI0Yi4uYzFlMTk4MCAxMDA2NDQKK2lu ZGV4IDc3NDBjYjcuLjI5NWI4ZTkgMTAwNjQ0CiAtLS0gYS90ZnRwL2V4dGVybi5oCiArKysgYi90 ZnRwL2V4dGVybi5oCiBAQCAtMTAsOCArMTAsOCBAQAogIAogICNpbmNsdWRlICJjb25maWcuaCIK ICAKLS12b2lkIHRmdHBfcmVjdmZpbGUoaW50LCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7 Ci0tdm9pZCB0ZnRwX3NlbmRmaWxlKGludCwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwot K2ludCB0ZnRwX3JlY3ZmaWxlKGludCwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwotK2lu dCB0ZnRwX3NlbmRmaWxlKGludCwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOworLXZvaWQg dGZ0cF9yZWN2ZmlsZShpbnQsIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCB1bnNpZ25lZCBp bnQpOworLXZvaWQgdGZ0cF9zZW5kZmlsZShpbnQsIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAq LCB1bnNpZ25lZCBpbnQpOworK2ludCB0ZnRwX3JlY3ZmaWxlKGludCwgY29uc3QgY2hhciAqLCBj b25zdCBjaGFyICosIHVuc2lnbmVkIGludCk7CisraW50IHRmdHBfc2VuZGZpbGUoaW50LCBjb25z dCBjaGFyICosIGNvbnN0IGNoYXIgKiwgdW5zaWduZWQgaW50KTsKICBleHRlcm4gc2lnam1wX2J1 ZiB0b3BsZXZlbDsKICAKICAjZW5kaWYKIGRpZmYgLS1naXQgYS90ZnRwL21haW4uYyBiL3RmdHAv bWFpbi5jCi1pbmRleCBlZWQwMmJmLi5lN2IzMzhjIDEwMDY0NAoraW5kZXggZDg5NWEzMC4uZTg5 MDBlZiAxMDA2NDQKIC0tLSBhL3RmdHAvbWFpbi5jCiArKysgYi90ZnRwL21haW4uYwotQEAgLTc3 LDIwICs3NywyMCBAQCBpbnQgcG9ydHJhbmdlID0gMDsKLSB1bnNpZ25lZCBpbnQgcG9ydHJhbmdl X2Zyb20gPSAwOwotIHVuc2lnbmVkIGludCBwb3J0cmFuZ2VfdG8gPSAwOworQEAgLTgyLDIyICs4 MiwyMiBAQCB1bnNpZ25lZCBpbnQgcG9ydHJhbmdlX3RvID0gMDsKKyB1bnNpZ25lZCBpbnQgYmxv Y2tzaXplID0gU0VHU0laRTsKKyB1bnNpZ25lZCBpbnQgd2luZG93c2l6ZTsKICAKIC12b2lkIGdl dChpbnQsIGNoYXIgKiopOwogLXZvaWQgaGVscChpbnQsIGNoYXIgKiopOwpAQCAtMzksNiArMzks NyBAQCBpbmRleCBlZWQwMmJmLi5lN2IzMzhjIDEwMDY0NAogLXZvaWQgcXVpdChpbnQsIGNoYXIg KiopOwogLXZvaWQgc2V0YXNjaWkoaW50LCBjaGFyICoqKTsKIC12b2lkIHNldGJpbmFyeShpbnQs IGNoYXIgKiopOworLXZvaWQgc2V0YmxvY2tzaXplKGludCwgY2hhciAqKik7CiAtdm9pZCBzZXRw ZWVyKGludCwgY2hhciAqKik7CiAtdm9pZCBzZXRyZXhtdChpbnQsIGNoYXIgKiopOwogLXZvaWQg c2V0dGltZW91dChpbnQsIGNoYXIgKiopOwpAQCAtNDYsNiArNDcsNyBAQCBpbmRleCBlZWQwMmJm Li5lN2IzMzhjIDEwMDY0NAogLXZvaWQgc2V0dmVyYm9zZShpbnQsIGNoYXIgKiopOwogLXZvaWQg c3RhdHVzKGludCwgY2hhciAqKik7CiAtdm9pZCBzZXRsaXRlcmFsKGludCwgY2hhciAqKik7Cist dm9pZCBzZXR3aW5kb3dzaXplKGludCwgY2hhciAqKik7CiAraW50IGdldChpbnQsIGNoYXIgKiop OwogK2ludCBoZWxwKGludCwgY2hhciAqKik7CiAraW50IG1vZGVjbWQoaW50LCBjaGFyICoqKTsK QEAgLTUzLDYgKzU1LDcgQEAgaW5kZXggZWVkMDJiZi4uZTdiMzM4YyAxMDA2NDQKICtpbnQgcXVp dChpbnQsIGNoYXIgKiopOwogK2ludCBzZXRhc2NpaShpbnQsIGNoYXIgKiopOwogK2ludCBzZXRi aW5hcnkoaW50LCBjaGFyICoqKTsKKytpbnQgc2V0YmxvY2tzaXplKGludCwgY2hhciAqKik7CiAr aW50IHNldHBlZXIoaW50LCBjaGFyICoqKTsKICtpbnQgc2V0cmV4bXQoaW50LCBjaGFyICoqKTsK ICtpbnQgc2V0dGltZW91dChpbnQsIGNoYXIgKiopOwpAQCAtNjAsMTAgKzYzLDExIEBAIGluZGV4 IGVlZDAyYmYuLmU3YjMzOGMgMTAwNjQ0CiAraW50IHNldHZlcmJvc2UoaW50LCBjaGFyICoqKTsK ICtpbnQgc3RhdHVzKGludCwgY2hhciAqKik7CiAraW50IHNldGxpdGVyYWwoaW50LCBjaGFyICoq KTsKKytpbnQgc2V0d2luZG93c2l6ZShpbnQsIGNoYXIgKiopOwogIAogIHN0YXRpYyB2b2lkIGNv bW1hbmQodm9pZCk7CiAgCi1AQCAtMTA0LDcgKzEwNCw3IEBAIHN0YXRpYyB2b2lkIHNldHRmdHBt b2RlKGNvbnN0IHN0cnVjdCBtb2RlcyAqKTsKK0BAIC0xMTMsNyArMTEzLDcgQEAgc3RhdGljIHZv aWQgc2V0dGZ0cG1vZGUoY29uc3Qgc3RydWN0IG1vZGVzICopOwogIHN0cnVjdCBjbWQgewogICAg ICBjb25zdCBjaGFyICpuYW1lOwogICAgICBjb25zdCBjaGFyICpoZWxwOwpAQCAtNzEsMzcgKzc1 LDI5IEBAIGluZGV4IGVlZDAyYmYuLmU3YjMzOGMgMTAwNjQ0CiArICAgIGludCAoKmhhbmRsZXIp IChpbnQsIGNoYXIgKiopOwogIH07CiAgCi0gc3RydWN0IGNtZCBjbWR0YWJbXSA9IHsKLUBAIC0x NjEsNyArMTYxLDcgQEAgY2hhciAqdGFpbChjaGFyICopOwotIAotIGNoYXIgKnhzdHJkdXAoY29u c3QgY2hhciAqKTsKLSAKLS1zdGF0aWMgdm9pZCB1c2FnZShpbnQgZXJyY29kZSkKLStzdGF0aWMg aW50IHVzYWdlKGludCBlcnJjb2RlKQotIHsKLSAgICAgZnByaW50ZihzdGRlcnIsCi0gI2lmZGVm IEhBVkVfSVBWNgotQEAgLTE3Niw3ICsxNzYsNyBAQCBzdGF0aWMgdm9pZCB1c2FnZShpbnQgZXJy Y29kZSkKKyBzdGF0aWMgY29uc3Qgc3RydWN0IGNtZCBjbWR0YWJbXSA9IHsKK0BAIC0yNDMsNyAr MjQzLDcgQEAgc3RhdGljIGNvbnN0IGNoYXIgc2hvcnRfb3B0aW9uc1tdID0gIis0NnZWbG06Y1I6 QjpXOnc6aCI7CiAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICB7CiAgICAgIHVu aW9uIHNvY2tfYWRkciBzYTsKLS0gICAgaW50IGFyZzsKLSsgICAgaW50IGFyZywgcmV0OworLSAg ICBpbnQgb3B0YzsKKysgICAgaW50IG9wdGMsIHJldDsKICAgICAgc3RhdGljIGludCBwYXJnYywg cGVlcmFyZ2M7CiAgICAgIHN0YXRpYyBpbnQgaXNjbWQgPSAwOwotICAgICBjaGFyICoqcGFyZ3Y7 Ci1AQCAtMzE1LDggKzMxNSw4IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCi0g ICAgICAgICAgICAgICAgICAgICBwYXJndlsxXSk7Ci0gICAgICAgICAgICAgZXhpdChFWF9VU0FH RSk7Ci0gICAgICAgICB9CisgICAgIHN0YXRpYyBjaGFyICoqcGFyZ3Y7CitAQCAtNDE4LDkgKzQx OCw5IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCisgICAgICAgICBpZiAoc2ln c2V0am1wKHRvcGxldmVsLCAxKSAhPSAwKQorICAgICAgICAgICAgIGV4aXQoRVhfVU5BVkFJTEFC TEUpOworIAogLSAgICAgICAgKCpjLT5oYW5kbGVyKSAocGFyZ2MsIHBhcmd2KTsKLS0gICAgICAg IGV4aXQoMCk7CiArICAgICAgICByZXQgPSAoKmMtPmhhbmRsZXIpIChwYXJnYywgcGFyZ3YpOwor ICAgICAgICAgeGZyZWUoc3BsaXRidWYpOworLSAgICAgICAgZXhpdCgwKTsKICsgICAgICAgIGV4 aXQocmV0KTsKICAgICAgfQogICNpZmRlZiBXSVRIX1JFQURMSU5FCiAgI2lmZGVmIEhBVkVfUkVB RExJTkVfSElTVE9SWV9ICi1AQCAtMzcxLDcgKzM3MSw3IEBAIHN0YXRpYyB2b2lkIGdldG1vcmVh cmdzKGNvbnN0IGNoYXIgKnBhcnRpYWwsIGNvbnN0IGNoYXIgKm1wcm9tcHQpCitAQCAtNDc1LDcg KzQ3NSw3IEBAIHN0YXRpYyB2b2lkIGdldG1vcmVhcmdzKGNvbnN0IGNoYXIgKnBhcnRpYWwsIGNv bnN0IGNoYXIgKm1wcm9tcHQpCiAgI2VuZGlmCiAgfQogIApAQCAtMTEwLDcgKzEwNiw3IEBAIGlu ZGV4IGVlZDAyYmYuLmU3YjMzOGMgMTAwNjQ0CiAgewogICAgICBpbnQgZXJyOwogIAotQEAgLTM4 Myw3ICszODMsNyBAQCB2b2lkIHNldHBlZXIoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKK0BAIC00 ODcsNyArNDg3LDcgQEAgdm9pZCBzZXRwZWVyKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAg IH0KICAgICAgaWYgKChhcmdjIDwgMikgfHwgKGFyZ2MgPiAzKSkgewogICAgICAgICAgcHJpbnRm KCJ1c2FnZTogJXMgaG9zdC1uYW1lIFtwb3J0XVxuIiwgYXJndlswXSk7CkBAIC0xMTksNyArMTE1 LDcgQEAgaW5kZXggZWVkMDJiZi4uZTdiMzM4YyAxMDA2NDQKICAgICAgfQogIAogICAgICBwZWVy YWRkci5zYS5zYV9mYW1pbHkgPSBhaV9mYW07Ci1AQCAtMzkyLDcgKzM5Miw3IEBAIHZvaWQgc2V0 cGVlcihpbnQgYXJnYywgY2hhciAqYXJndltdKQorQEAgLTQ5Niw3ICs0OTYsNyBAQCB2b2lkIHNl dHBlZXIoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgIHByaW50ZigiRXJyb3I6ICVz XG4iLCBnYWlfc3RyZXJyb3IoZXJyKSk7CiAgICAgICAgICBwcmludGYoIiVzOiB1bmtub3duIGhv c3RcbiIsIGFyZ3ZbMV0pOwogICAgICAgICAgY29ubmVjdGVkID0gMDsKQEAgLTEyOCw3ICsxMjQs NyBAQCBpbmRleCBlZWQwMmJmLi5lN2IzMzhjIDEwMDY0NAogICAgICB9CiAgICAgIGFpX2ZhbSA9 IHBlZXJhZGRyLnNhLnNhX2ZhbWlseTsKICAgICAgaWYgKGYgPT0gLTEpIHsgLyogc29ja2V0IG5v dCBvcGVuICovCi1AQCAtNDI5LDcgKzQyOSw3IEBAIHZvaWQgc2V0cGVlcihpbnQgYXJnYywgY2hh ciAqYXJndltdKQorQEAgLTUzMyw3ICs1MzMsNyBAQCB2b2lkIHNldHBlZXIoaW50IGFyZ2MsIGNo YXIgKmFyZ3ZbXSkKICAgICAgICAgICAgICBpZiAoKmVwIHx8IG15cG9ydCA+IDY1NTM1VUwpIHsK ICAgICAgICAgICAgICAgICAgcHJpbnRmKCIlczogYmFkIHBvcnQgbnVtYmVyXG4iLCBhcmd2WzJd KTsKICAgICAgICAgICAgICAgICAgY29ubmVjdGVkID0gMDsKQEAgLTEzNyw3ICsxMzMsNyBAQCBp bmRleCBlZWQwMmJmLi5lN2IzMzhjIDEwMDY0NAogICAgICAgICAgICAgIH0KICAgICAgICAgICAg ICBwb3J0ID0gaHRvbnMoKHVfc2hvcnQpIG15cG9ydCk7CiAgICAgICAgICB9Ci1AQCAtNDQ1LDE2 ICs0NDUsMTcgQEAgdm9pZCBzZXRwZWVyKGludCBhcmdjLCBjaGFyICphcmd2W10pCitAQCAtNTQ5 LDE2ICs1NDksMTcgQEAgdm9pZCBzZXRwZWVyKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAg ICAgICAgICAgICAgaG9zdG5hbWUsIHRwLCAodW5zaWduZWQgaW50KW50b2hzKHBvcnQpKTsKICAg ICAgfQogICAgICBjb25uZWN0ZWQgPSAxOwpAQCAtMTU3LDcgKzE1Myw3IEBAIGluZGV4IGVlZDAy YmYuLmU3YjMzOGMgMTAwNjQ0CiAgICAgIH0KICAgICAgaWYgKGFyZ2MgPT0gMikgewogICAgICAg ICAgZm9yIChwID0gbW9kZXM7IHAtPm1fbmFtZTsgcCsrKQotQEAgLTQ2Miw3ICs0NjMsNyBAQCB2 b2lkIG1vZGVjbWQoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKK0BAIC01NjYsNyArNTY3LDcgQEAg dm9pZCBtb2RlY21kKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICAgICAgIGJy ZWFrOwogICAgICAgICAgaWYgKHAtPm1fbmFtZSkgewogICAgICAgICAgICAgIHNldHRmdHBtb2Rl KHApOwpAQCAtMTY2LDcgKzE2Miw3IEBAIGluZGV4IGVlZDAyYmYuLmU3YjMzOGMgMTAwNjQ0CiAg ICAgICAgICB9CiAgICAgICAgICBwcmludGYoIiVzOiB1bmtub3duIG1vZGVcbiIsIGFyZ3ZbMV0p OwogICAgICAgICAgLyogZHJvcCB0aHJvdWdoIGFuZCBwcmludCB1c2FnZSBtZXNzYWdlICovCi1A QCAtNDc2LDIxICs0NzcsMjMgQEAgdm9pZCBtb2RlY21kKGludCBhcmdjLCBjaGFyICphcmd2W10p CitAQCAtNTgwLDIxICs1ODEsMjMgQEAgdm9pZCBtb2RlY21kKGludCBhcmdjLCBjaGFyICphcmd2 W10pCiAgICAgICAgICAgICAgc2VwID0gIiB8ICI7CiAgICAgIH0KICAgICAgcHJpbnRmKCIgXVxu Iik7CkBAIC0xOTMsNyArMTg5LDcgQEAgaW5kZXggZWVkMDJiZi4uZTdiMzM4YyAxMDA2NDQKICB9 CiAgCiAgc3RhdGljIHZvaWQgc2V0dGZ0cG1vZGUoY29uc3Qgc3RydWN0IG1vZGVzICpuZXdtb2Rl KQotQEAgLTUwMyw3ICs1MDYsNyBAQCBzdGF0aWMgdm9pZCBzZXR0ZnRwbW9kZShjb25zdCBzdHJ1 Y3QgbW9kZXMgKm5ld21vZGUpCitAQCAtNjA3LDcgKzYxMCw3IEBAIHN0YXRpYyB2b2lkIHNldHRm dHBtb2RlKGNvbnN0IHN0cnVjdCBtb2RlcyAqbmV3bW9kZSkKICAvKgogICAqIFNlbmQgZmlsZShz KS4KICAgKi8KQEAgLTIwMiw3ICsxOTgsNyBAQCBpbmRleCBlZWQwMmJmLi5lN2IzMzhjIDEwMDY0 NAogIHsKICAgICAgaW50IGZkOwogICAgICBpbnQgbiwgZXJyOwotQEAgLTUxNywxNCArNTIwLDE0 IEBAIHZvaWQgcHV0KGludCBhcmdjLCBjaGFyICphcmd2W10pCitAQCAtNjIxLDE0ICs2MjQsMTQg QEAgdm9pZCBwdXQoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgfQogICAgICBpZiAoYXJn YyA8IDIpIHsKICAgICAgICAgIHB1dHVzYWdlKGFyZ3ZbMF0pOwpAQCAtMjE5LDcgKzIxNSw3IEBA IGluZGV4IGVlZDAyYmYuLmU3YjMzOGMgMTAwNjQ0CiAgICAgICAgICAgICAgfQogICAgICAgICAg Y3AgPSBhcmd2W2FyZ2MgLSAxXTsKICAgICAgICAgIHRhcmcgPSBzdHJjaHIoY3AsICc6Jyk7Ci1A QCAtNTM1LDE0ICs1MzgsMTQgQEAgdm9pZCBwdXQoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKK0BA IC02MzksMTQgKzY0MiwxNCBAQCB2b2lkIHB1dChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAg ICAgICAgICAgIHByaW50ZigiRXJyb3I6ICVzXG4iLCBnYWlfc3RyZXJyb3IoZXJyKSk7CiAgICAg ICAgICAgICAgcHJpbnRmKCIlczogdW5rbm93biBob3N0XG4iLCBhcmd2WzFdKTsKICAgICAgICAg ICAgICBjb25uZWN0ZWQgPSAwOwpAQCAtMjM2LDcgKzIzMiw3IEBAIGluZGV4IGVlZDAyYmYuLmU3 YjMzOGMgMTAwNjQ0CiAgICAgIH0KICAgICAgaWYgKGFyZ2MgPCA0KSB7CiAgICAgICAgICBjcCA9 IGFyZ2MgPT0gMiA/IHRhaWwodGFyZykgOiBhcmd2WzFdOwotQEAgLTU1MCwxNyArNTUzLDE4IEBA IHZvaWQgcHV0KGludCBhcmdjLCBjaGFyICphcmd2W10pCitAQCAtNjU0LDE3ICs2NTcsMTggQEAg dm9pZCBwdXQoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgIGlmIChmZCA8IDApIHsK ICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgInRmdHA6ICIpOwogICAgICAgICAgICAgIHBl cnJvcihjcCk7CkBAIC0yNDcsOSArMjQzLDkgQEAgaW5kZXggZWVkMDJiZi4uZTdiMzM4YyAxMDA2 NDQKICAgICAgICAgICAgICBwcmludGYoInB1dHRpbmcgJXMgdG8gJXM6JXMgWyVzXVxuIiwKICAg ICAgICAgICAgICAgICAgICAgY3AsIGhvc3RuYW1lLCB0YXJnLCBtb2RlLT5tX21vZGUpOwogICAg ICAgICAgc2Ffc2V0X3BvcnQoJnBlZXJhZGRyLCBwb3J0KTsKLS0gICAgICAgIHRmdHBfc2VuZGZp bGUoZmQsIHRhcmcsIG1vZGUtPm1fbW9kZSk7CistICAgICAgICB0ZnRwX3NlbmRmaWxlKGZkLCB0 YXJnLCBtb2RlLT5tX21vZGUsIHdpbmRvd3NpemUpOwogLSAgICAgICAgcmV0dXJuOwotKyAgICAg ICAgZXJyID0gdGZ0cF9zZW5kZmlsZShmZCwgdGFyZywgbW9kZS0+bV9tb2RlKTsKKysgICAgICAg IGVyciA9IHRmdHBfc2VuZGZpbGUoZmQsIHRhcmcsIG1vZGUtPm1fbW9kZSwgd2luZG93c2l6ZSk7 CiArICAgICAgICByZXR1cm4gZXJyOwogICAgICB9CiAgICAgIC8qIHRoaXMgYXNzdW1lcyB0aGUg dGFyZ2V0IGlzIGEgZGlyZWN0b3J5ICovCkBAIC0yNTgsNyArMjU0LDcgQEAgaW5kZXggZWVkMDJi Zi4uZTdiMzM4YyAxMDA2NDQKICAgICAgZm9yIChuID0gMTsgbiA8IGFyZ2MgLSAxOyBuKyspIHsK ICAgICAgICAgIGNvbnN0IGNoYXIgKmJhc2UgPSB0YWlsKGFyZ3Zbbl0pOwogICAgICAgICAgY2hh ciAqcmVtb3RlcGF0aCA9IHhtYWxsb2Moc3RybGVuKHRhcmcpICsgMSArIHN0cmxlbihiYXNlKSAr IDEpOwotQEAgLTU3MCw2ICs1NzQsNyBAQCB2b2lkIHB1dChpbnQgYXJnYywgY2hhciAqYXJndltd KQorQEAgLTY3NCw2ICs2NzgsNyBAQCB2b2lkIHB1dChpbnQgYXJnYywgY2hhciAqYXJndltdKQog ICAgICAgICAgaWYgKGZkIDwgMCkgewogICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAidGZ0 cDogIik7CiAgICAgICAgICAgICAgcGVycm9yKGFyZ3Zbbl0pOwpAQCAtMjY2LDEyICsyNjIsMTIg QEAgaW5kZXggZWVkMDJiZi4uZTdiMzM4YyAxMDA2NDQKICAgICAgICAgICAgICBmcmVlKHJlbW90 ZXBhdGgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQotQEAgLTU3Nyw5ICs1 ODIsMTEgQEAgdm9pZCBwdXQoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKK0BAIC02ODEsOSArNjg2 LDExIEBAIHZvaWQgcHV0KGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICAgcHJp bnRmKCJwdXR0aW5nICVzIHRvICVzOiVzIFslc11cbiIsCiAgICAgICAgICAgICAgICAgICAgIGFy Z3Zbbl0sIGhvc3RuYW1lLCByZW1vdGVwYXRoLCBtb2RlLT5tX21vZGUpOwogICAgICAgICAgc2Ff c2V0X3BvcnQoJnBlZXJhZGRyLCBwb3J0KTsKLS0gICAgICAgIHRmdHBfc2VuZGZpbGUoZmQsIHJl bW90ZXBhdGgsIG1vZGUtPm1fbW9kZSk7Ci0rICAgICAgICBlcnIgfD0gdGZ0cF9zZW5kZmlsZShm ZCwgcmVtb3RlcGF0aCwgbW9kZS0+bV9tb2RlKTsKKy0gICAgICAgIHRmdHBfc2VuZGZpbGUoZmQs IHJlbW90ZXBhdGgsIG1vZGUtPm1fbW9kZSwgd2luZG93c2l6ZSk7CisrICAgICAgICBlcnIgfD0g dGZ0cF9zZW5kZmlsZShmZCwgcmVtb3RlcGF0aCwgbW9kZS0+bV9tb2RlLCB3aW5kb3dzaXplKTsK ICAgICAgICAgIGZyZWUocmVtb3RlcGF0aCk7CiAgICAgIH0KICsKQEAgLTI3OSw3ICsyNzUsNyBA QCBpbmRleCBlZWQwMmJmLi5lN2IzMzhjIDEwMDY0NAogIH0KICAKICBzdGF0aWMgdm9pZCBwdXR1 c2FnZShjaGFyICpzKQotQEAgLTU5MSwxMCArNTk4LDEwIEBAIHN0YXRpYyB2b2lkIHB1dHVzYWdl KGNoYXIgKnMpCitAQCAtNjk1LDEwICs3MDIsMTAgQEAgc3RhdGljIHZvaWQgcHV0dXNhZ2UoY2hh ciAqcykKICAvKgogICAqIFJlY2VpdmUgZmlsZShzKS4KICAgKi8KQEAgLTI5Miw3ICsyODgsNyBA QCBpbmRleCBlZWQwMmJmLi5lN2IzMzhjIDEwMDY0NAogICAgICBjaGFyICpjcDsKICAgICAgY2hh ciAqc3JjOwogIAotQEAgLTYwNiwyOCArNjEzLDI4IEBAIHZvaWQgZ2V0KGludCBhcmdjLCBjaGFy ICphcmd2W10pCitAQCAtNzEwLDI4ICs3MTcsMjggQEAgdm9pZCBnZXQoaW50IGFyZ2MsIGNoYXIg KmFyZ3ZbXSkKICAgICAgfQogICAgICBpZiAoYXJnYyA8IDIpIHsKICAgICAgICAgIGdldHVzYWdl KGFyZ3ZbMF0pOwpAQCAtMzE3LDcgKzMxMyw3IEBAIGluZGV4IGVlZDAyYmYuLmU3YjMzOGMgMTAw NjQ0CiAtCiAgICAgICAgICAgICAgKnNyYysrID0gMDsKICAgICAgICAgICAgICBwZWVyYWRkci5z YS5zYV9mYW1pbHkgPSBhaV9mYW07Ci0gICAgICAgICAgICAgZXJyID0gc2V0X3NvY2tfYWRkcihh cmd2W25dLCAmcGVlcmFkZHIsICZob3N0bmFtZSk7CisgICAgICAgICAgICAgZXJyID0gc2V0X3Nv Y2tfYWRkcihhcmd2W25dLCAmcGVlcmFkZHIsICZob3N0bmFtZSwgZmFsc2UpOwogICAgICAgICAg ICAgIGlmIChlcnIpIHsKICAgICAgICAgICAgICAgICAgcHJpbnRmKCJXYXJuaW5nOiAlc1xuIiwg Z2FpX3N0cmVycm9yKGVycikpOwogICAgICAgICAgICAgICAgICBwcmludGYoIiVzOiB1bmtub3du IGhvc3RcbiIsIGFyZ3ZbMV0pOwpAQCAtMzI1LDcgKzMyMSw3IEBAIGluZGV4IGVlZDAyYmYuLmU3 YjMzOGMgMTAwNjQ0CiAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0K ICAgICAgICAgICAgICBhaV9mYW0gPSBwZWVyYWRkci5zYS5zYV9mYW1pbHk7Ci1AQCAtNjQwLDEz ICs2NDcsMTMgQEAgdm9pZCBnZXQoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKK0BAIC03NDQsMTMg Kzc1MSwxMyBAQCB2b2lkIGdldChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICAgICAg IGlmIChmZCA8IDApIHsKICAgICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJ0ZnRwOiAi KTsKICAgICAgICAgICAgICAgICAgcGVycm9yKGNwKTsKQEAgLTMzNiwxMiArMzMyLDEyIEBAIGlu ZGV4IGVlZDAyYmYuLmU3YjMzOGMgMTAwNjQ0CiAgICAgICAgICAgICAgICAgIHByaW50ZigiZ2V0 dGluZyBmcm9tICVzOiVzIHRvICVzIFslc11cbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICBo b3N0bmFtZSwgc3JjLCBjcCwgbW9kZS0+bV9tb2RlKTsKICAgICAgICAgICAgICBzYV9zZXRfcG9y dCgmcGVlcmFkZHIsIHBvcnQpOwotLSAgICAgICAgICAgIHRmdHBfcmVjdmZpbGUoZmQsIHNyYywg bW9kZS0+bV9tb2RlKTsKLSsgICAgICAgICAgICBlcnIgPSB0ZnRwX3JlY3ZmaWxlKGZkLCBzcmMs IG1vZGUtPm1fbW9kZSk7CistICAgICAgICAgICAgdGZ0cF9yZWN2ZmlsZShmZCwgc3JjLCBtb2Rl LT5tX21vZGUsIHdpbmRvd3NpemUpOworKyAgICAgICAgICAgIGVyciA9IHRmdHBfcmVjdmZpbGUo ZmQsIHNyYywgbW9kZS0+bV9tb2RlLCB3aW5kb3dzaXplKTsKICAgICAgICAgICAgICBicmVhazsK ICAgICAgICAgIH0KICAgICAgICAgIGNwID0gdGFpbChzcmMpOyAgICAgICAgIC8qIG5ldyAuLiBq ZGcgKi8KLUBAIC02NTUsMTQgKzY2MiwxNiBAQCB2b2lkIGdldChpbnQgYXJnYywgY2hhciAqYXJn dltdKQorQEAgLTc1OSwxNCArNzY2LDE2IEBAIHZvaWQgZ2V0KGludCBhcmdjLCBjaGFyICphcmd2 W10pCiAgICAgICAgICBpZiAoZmQgPCAwKSB7CiAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIs ICJ0ZnRwOiAiKTsKICAgICAgICAgICAgICBwZXJyb3IoY3ApOwpAQCAtMzUyLDE0ICszNDgsMTQg QEAgaW5kZXggZWVkMDJiZi4uZTdiMzM4YyAxMDA2NDQKICAgICAgICAgICAgICBwcmludGYoImdl dHRpbmcgZnJvbSAlczolcyB0byAlcyBbJXNdXG4iLAogICAgICAgICAgICAgICAgICAgICBob3N0 bmFtZSwgc3JjLCBjcCwgbW9kZS0+bV9tb2RlKTsKICAgICAgICAgIHNhX3NldF9wb3J0KCZwZWVy YWRkciwgcG9ydCk7Ci0tICAgICAgICB0ZnRwX3JlY3ZmaWxlKGZkLCBzcmMsIG1vZGUtPm1fbW9k ZSk7Ci0rICAgICAgICBlcnIgfD0gdGZ0cF9yZWN2ZmlsZShmZCwgc3JjLCBtb2RlLT5tX21vZGUp OworLSAgICAgICAgdGZ0cF9yZWN2ZmlsZShmZCwgc3JjLCBtb2RlLT5tX21vZGUsIHdpbmRvd3Np emUpOworKyAgICAgICAgZXJyIHw9IHRmdHBfcmVjdmZpbGUoZmQsIHNyYywgbW9kZS0+bV9tb2Rl LCB3aW5kb3dzaXplKTsKICAgICAgfQogKyAgICByZXR1cm4gZXJyOwogIH0KICAKICBzdGF0aWMg dm9pZCBnZXR1c2FnZShjaGFyICpzKQotQEAgLTY3Myw3ICs2ODIsNyBAQCBzdGF0aWMgdm9pZCBn ZXR1c2FnZShjaGFyICpzKQorQEAgLTc3Nyw3ICs3ODYsNyBAQCBzdGF0aWMgdm9pZCBnZXR1c2Fn ZShjaGFyICpzKQogIAogIGludCByZXhtdHZhbCA9IFRJTUVPVVQ7CiAgCkBAIC0zNjgsNyArMzY0 LDcgQEAgaW5kZXggZWVkMDJiZi4uZTdiMzM4YyAxMDA2NDQKICB7CiAgICAgIGludCB0OwogIAot QEAgLTY4NSwxOCArNjk0LDE5IEBAIHZvaWQgc2V0cmV4bXQoaW50IGFyZ2MsIGNoYXIgKmFyZ3Zb XSkKK0BAIC03ODgsMTggKzc5NywxOSBAQCB2b2lkIHNldHJleG10KGludCBhcmdjLCBjaGFyICph cmd2W10pCiAgICAgIH0KICAgICAgaWYgKGFyZ2MgIT0gMikgewogICAgICAgICAgcHJpbnRmKCJ1 c2FnZTogJXMgdmFsdWVcbiIsIGFyZ3ZbMF0pOwpAQCAtMzkwLDcgKzM4Niw3IEBAIGluZGV4IGVl ZDAyYmYuLmU3YjMzOGMgMTAwNjQ0CiAgewogICAgICBpbnQgdDsKICAKLUBAIC03MDgsMjQgKzcx OCwyNiBAQCB2b2lkIHNldHRpbWVvdXQoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKK0BAIC04MTAs MTYgKzgyMCwxNyBAQCB2b2lkIHNldHRpbWVvdXQoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAg ICAgfQogICAgICBpZiAoYXJnYyAhPSAyKSB7CiAgICAgICAgICBwcmludGYoInVzYWdlOiAlcyB2 YWx1ZVxuIiwgYXJndlswXSk7CkBAIC00MDUsNiArNDAxLDQ0IEBAIGluZGV4IGVlZDAyYmYuLmU3 YjMzOGMgMTAwNjQ0CiArICAgIHJldHVybiAwOwogIH0KICAKKy12b2lkIHNldGJsb2Nrc2l6ZShp bnQgYXJnYywgY2hhciAqYXJndltdKQorK2ludCBzZXRibG9ja3NpemUoaW50IGFyZ2MsIGNoYXIg KmFyZ3ZbXSkKKyB7CisgICAgIGlmIChhcmdjIDwgMikgeworICAgICAgICAgZ2V0bW9yZWFyZ3Mo ImJsb2Nrc2l6ZSAiLCAiKHNpemUpICIpOworQEAgLTgyOCwxNSArODM5LDE2IEBAIHZvaWQgc2V0 YmxvY2tzaXplKGludCBhcmdjLCBjaGFyICphcmd2W10pCisgICAgIH0KKyAgICAgaWYgKGFyZ2Mg IT0gMikgeworICAgICAgICAgcHJpbnRmKCJ1c2FnZTogJXMgc2l6ZVxuIiwgYXJndlswXSk7Cist ICAgICAgICByZXR1cm47CisrICAgICAgICByZXR1cm4gRVhfVVNBR0U7CisgICAgIH0KKyAgICAg aWYgKCFwYXJzZV91aW50X3JhbmdlKGFyZ3ZbMV0sIDgsIE1BWF9TRUdTSVpFLCAmYmxvY2tzaXpl KSkgeworICAgICAgICAgcHJpbnRmKCIlczogYmFkIGJsb2NrIHNpemUgKHZhbGlkIHJhbmdlIGlz IDgtJWQpXG4iLAorICAgICAgICAgICAgICAgIGFyZ3ZbMV0sIE1BWF9TRUdTSVpFKTsKKyAgICAg fQorKyAgICByZXR1cm4gMDsKKyB9CisgCistdm9pZCBzZXR3aW5kb3dzaXplKGludCBhcmdjLCBj aGFyICphcmd2W10pCisraW50IHNldHdpbmRvd3NpemUoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkK KyB7CisgICAgIGlmIChhcmdjIDwgMikgeworICAgICAgICAgZ2V0bW9yZWFyZ3MoIndpbmRvd3Np emUgIiwgIihzaXplKSAiKTsKK0BAIC04NDUsMjMgKzg1NywyNSBAQCB2b2lkIHNldHdpbmRvd3Np emUoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKKyAgICAgfQorICAgICBpZiAoYXJnYyAhPSAyKSB7 CisgICAgICAgICBwcmludGYoInVzYWdlOiAlcyBzaXplXG4iLCBhcmd2WzBdKTsKKy0gICAgICAg IHJldHVybjsKKysgICAgICAgIHJldHVybiBFWF9VU0FHRTsKKyAgICAgfQorICAgICBpZiAoIXBh cnNlX3VpbnRfcmFuZ2UoYXJndlsxXSwgMSwgVEZUUF9NQVhfV0lORE9XU0laRSwgJndpbmRvd3Np emUpKSB7CisgICAgICAgICBwcmludGYoIiVzOiBiYWQgd2luZG93IHNpemUgKHZhbGlkIHJhbmdl IGlzIDEtJXUpXG4iLAorICAgICAgICAgICAgICAgIGFyZ3ZbMV0sIFRGVFBfTUFYX1dJTkRPV1NJ WkUpOworICAgICB9CisrICAgIHJldHVybiAwOworIH0KKyAKIC12b2lkIHNldGxpdGVyYWwoaW50 IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICtpbnQgc2V0bGl0ZXJhbChpbnQgYXJnYywgY2hhciAqYXJn dltdKQogIHsKQEAgLTQyMCwxNiArNDU0LDE2IEBAIGluZGV4IGVlZDAyYmYuLmU3YjMzOGMgMTAw NjQ0CiAgewogICAgICAodm9pZClhcmdjOwogICAgICAodm9pZClhcmd2OyAgICAgICAgICAgICAg ICAgLyogUXVpZXQgdW51c2VkIHdhcm5pbmcgKi8KLUBAIC03MzgsNiArNzUwLDcgQEAgdm9pZCBz dGF0dXMoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKLSAgICAgICAgICAgIGxpdGVyYWwgPyAib24i IDogIm9mZiIpOwotICAgICBwcmludGYoIlJleG10LWludGVydmFsOiAlZCBzZWNvbmRzLCBNYXgt dGltZW91dDogJWQgc2Vjb25kc1xuIiwKK0BAIC04NzYsNiArODkwLDcgQEAgdm9pZCBzdGF0dXMo aW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgIHJleG10dmFsLCBtYXh0aW1lb3V0 KTsKKyAgICAgcHJpbnRmKCJCbG9ja3NpemU6ICV1LCB3aW5kb3dzaXplOiAldVxuIiwgYmxvY2tz aXplLAorICAgICAgICAgICAgd2luZG93c2l6ZSA/IHdpbmRvd3NpemUgOiAxKTsKICsgICAgcmV0 dXJuIDA7CiAgfQogIAogIHZvaWQgaW50cihpbnQgc2lnKQotQEAgLTg3Miw3ICs4ODUsNyBAQCBz dGF0aWMgdm9pZCBtYWtlYXJndih2b2lkKQotICAgICAqYXJncCsrID0gMDsKK0BAIC0xMDE4LDcg KzEwMzMsNyBAQCBzdGF0aWMgaW50IG1ha2Vhcmd2KGNoYXIgKnN0ciwgY2hhciAqKmFyZ3ApCisg ICAgIHJldHVybiBhcmdjOwogIH0KICAKIC12b2lkIHF1aXQoaW50IGFyZ2MsIGNoYXIgKmFyZ3Zb XSkKQEAgLTQzNywxNiArNDcxLDE2IEBAIGluZGV4IGVlZDAyYmYuLmU3YjMzOGMgMTAwNjQ0CiAg ewogICAgICAodm9pZClhcmdjOwogICAgICAodm9pZClhcmd2OyAgICAgICAgICAgICAgICAgLyog UXVpZXQgdW51c2VkIHdhcm5pbmcgKi8KLUBAIC04ODIsNyArODk1LDcgQEAgdm9pZCBxdWl0KGlu dCBhcmdjLCBjaGFyICphcmd2W10pCitAQCAtMTAyOCw3ICsxMDQzLDcgQEAgdm9pZCBxdWl0KGlu dCBhcmdjLCBjaGFyICphcmd2W10pCiAgLyoKICAgKiBIZWxwIGNvbW1hbmQuCiAgICovCiAtdm9p ZCBoZWxwKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAraW50IGhlbHAoaW50IGFyZ2MsIGNoYXIg KmFyZ3ZbXSkKICB7Ci0gICAgIHN0cnVjdCBjbWQgKmM7CisgICAgIGNvbnN0IHN0cnVjdCBjbWQg KmM7CiAgCi1AQCAtODkyLDcgKzkwNSw3IEBAIHZvaWQgaGVscChpbnQgYXJnYywgY2hhciAqYXJn dltdKQorQEAgLTEwMzgsNyArMTA1Myw3IEBAIHZvaWQgaGVscChpbnQgYXJnYywgY2hhciAqYXJn dltdKQogICAgICAgICAgcHJpbnRmKCJDb21tYW5kcyBtYXkgYmUgYWJicmV2aWF0ZWQuICBDb21t YW5kcyBhcmU6XG5cbiIpOwogICAgICAgICAgZm9yIChjID0gY21kdGFiOyBjLT5uYW1lOyBjKysp CiAgICAgICAgICAgICAgcHJpbnRmKCIlLSpzXHQlc1xuIiwgKGludClIRUxQSU5ERU5ULCBjLT5u YW1lLCBjLT5oZWxwKTsKQEAgLTQ1NCw4ICs0ODgsOCBAQCBpbmRleCBlZWQwMmJmLi5lN2IzMzhj IDEwMDY0NAogKyAgICAgICAgcmV0dXJuIDA7CiAgICAgIH0KICAgICAgd2hpbGUgKC0tYXJnYyA+ IDApIHsKLSAgICAgICAgIGNoYXIgKmFyZzsKLUBAIC05MDUsMjIgKzkxOCwyNSBAQCB2b2lkIGhl bHAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKKyAgICAgICAgIGNvbnN0IGNoYXIgKmVycnR5cGU7 CitAQCAtMTA1MCwyMiArMTA2NSwyNSBAQCB2b2lkIGhlbHAoaW50IGFyZ2MsIGNoYXIgKmFyZ3Zb XSkKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICBwcmludGYoIiVzXG4iLCBjLT5oZWxwKTsK ICAgICAgfQpAQCAtNDg0LDY3ICs1MTgsMTE0IEBAIGluZGV4IGVlZDAyYmYuLmU3YjMzOGMgMTAw NjQ0CiArICAgIHJldHVybiAwOwogIH0KIGRpZmYgLS1naXQgYS90ZnRwL3RmdHAuYyBiL3RmdHAv dGZ0cC5jCi1pbmRleCBlMTYxNTI3Li44ZTViYjY1IDEwMDY0NAoraW5kZXggMzMyZDY1Mi4uMGE0 ODQ1OSAxMDA2NDQKIC0tLSBhL3RmdHAvdGZ0cC5jCiArKysgYi90ZnRwL3RmdHAuYwotQEAgLTQ1 LDExICs0NSwxMSBAQCBzdGF0aWMgdm9pZCB0cGFja2V0KGNvbnN0IGNoYXIgKiwgc3RydWN0IHRm dHBoZHIgKiwgaW50KTsKK0BAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyB2b2lkIHRwYWNrZXQoY29u c3QgY2hhciAqLCBzdHJ1Y3QgdGZ0cGhkciAqLCBpbnQpOwogIC8qCiAgICogU2VuZCB0aGUgcmVx dWVzdGVkIGZpbGUuCiAgICovCi0tdm9pZCB0ZnRwX3NlbmRmaWxlKGludCBmZCwgY29uc3QgY2hh ciAqbmFtZSwgY29uc3QgY2hhciAqbW9kZSkKLStpbnQgdGZ0cF9zZW5kZmlsZShpbnQgZmQsIGNv bnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKm1vZGUpCistdm9pZCB0ZnRwX3NlbmRmaWxlKGlu dCBmZCwgY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqbW9kZSwKKytpbnQgdGZ0cF9zZW5k ZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKm1vZGUsCisgICAgICAg ICAgICAgICAgICAgIHVuc2lnbmVkIGludCByZXF1ZXN0ZWRfd2luZG93KQogIHsKLSAgICAgc3Ry dWN0IHRmdHBoZHIgKmFwOyAgICAgICAgIC8qIGRhdGEgYW5kIGFjayBwYWNrZXRzICovCi0gICAg IHN0cnVjdCB0ZnRwaGRyICpkcDsKLS0gICAgaW50IG47Ci0rICAgIGludCBuLCBlcnI7Ci0gICAg IHZvbGF0aWxlIGludCBpc19yZXF1ZXN0OwotICAgICB2b2xhdGlsZSB1X3Nob3J0IGJsb2NrOwot ICAgICB2b2xhdGlsZSBpbnQgc2l6ZSwgY29udmVydDsKLUBAIC02Nyw2ICs2Nyw3IEBAIHZvaWQg dGZ0cF9zZW5kZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKm1vZGUp Ci0gICAgIGJsb2NrID0gMDsKLSAgICAgaXNfcmVxdWVzdCA9IDE7ICAgICAgICAgICAgIC8qIEZp cnN0IHBhY2tldCBpcyB0aGUgYWN0dWFsIFdSUSAqLwotICAgICBhbW91bnQgPSAwOwotKyAgICBl cnIgPSAwOworICAgICBzdHJ1Y3QgdGZ0cGhkciAqZHAsICphcDsKK0BAIC01OSw3ICs1OSw3IEBA IHZvaWQgdGZ0cF9zZW5kZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIg Km1vZGUsCisgICAgIEZJTEUgKmZpbGUgPSBOVUxMOworICAgICBjaGFyICogdm9sYXRpbGUgcGFj a2V0cyA9IE5VTEw7CisgICAgIGludCAqIHZvbGF0aWxlIGxlbmd0aHMgPSBOVUxMOworLSAgICBp bnQgbiwgc2l6ZTsKKysgICAgaW50IG4sIHNpemUsIGVyciA9IDA7CisgICAgIHNpemVfdCBwYWNr ZXRzaXplOworICAgICB2b2xhdGlsZSBpbnQgcGFja2V0X2NvdW50LCBmaW5hbDsKKyAgICAgaW50 IGNvbnZlcnQgPSAhc3RyY21wKG1vZGUsICJuZXRhc2NpaSIpOworQEAgLTcyLDggKzcyLDEwIEBA IHZvaWQgdGZ0cF9zZW5kZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIg Km1vZGUsCisgCisgICAgIHN0YXJ0Y2xvY2soKTsKKyAgICAgZmlsZSA9IGZkb3BlbihmZCwgY29u dmVydCA/ICJydCIgOiAicmIiKTsKKy0gICAgaWYgKCFmaWxlKQorKyAgICBpZiAoIWZpbGUpIHsK KysgICAgICAgIGVyciA9IEVYX09TRVJSOworICAgICAgICAgZ290byBhYm9ydDsKKysgICAgfQor ICAgICBhcCA9IChzdHJ1Y3QgdGZ0cGhkciAqKWFja2J1ZjsKICAKICAgICAgdGZ0cF9zaWduYWwo U0lHQUxSTSwgdGltZXIsIDApOwotICAgICBkbyB7Ci1AQCAtODEsNiArODIsNyBAQCB2b2lkIHRm dHBfc2VuZGZpbGUoaW50IGZkLCBjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICptb2RlKQor QEAgLTgxLDYgKzgzLDcgQEAgdm9pZCB0ZnRwX3NlbmRmaWxlKGludCBmZCwgY29uc3QgY2hhciAq bmFtZSwgY29uc3QgY2hhciAqbW9kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihh Y2tidWYpKTsKKyAgICAgaWYgKHNpemUgPCAwKSB7CisgICAgICAgICBmcHJpbnRmKHN0ZGVyciwg InRmdHA6ICVzOiAlc1xuIiwgbmFtZSwgc3RyZXJyb3IoZXJybm8pKTsKKysgICAgICAgIGVyciA9 IEVYX09TRVJSOworICAgICAgICAgZ290byBhYm9ydF9wYWNrZXRzOworICAgICB9CisgCitAQCAt OTIsNiArOTUsNyBAQCB2b2lkIHRmdHBfc2VuZGZpbGUoaW50IGZkLCBjb25zdCBjaGFyICpuYW1l LCBjb25zdCBjaGFyICptb2RlLAorICAgICAgICAgICAgIHRwYWNrZXQoInNlbnQiLCBhcCwgc2l6 ZSk7CisgICAgICAgICBpZiAoc2VuZHRvKGYsIGFwLCBzaXplLCAwLCAmcGVlcmFkZHIuc2EsIFNP Q0tMRU4oJnBlZXJhZGRyKSkgIT0gc2l6ZSkgeworICAgICAgICAgICAgIHBlcnJvcigidGZ0cDog c2VuZHRvIik7CisrICAgICAgICAgICAgZXJyID0gRVhfT1NFUlI7CisgICAgICAgICAgICAgZ290 byBhYm9ydF9wYWNrZXRzOworICAgICAgICAgfQorICAgICAgICAgYWxhcm0ocmV4bXR2YWwpOwor QEAgLTEwMCw2ICsxMDQsNyBAQCB2b2lkIHRmdHBfc2VuZGZpbGUoaW50IGZkLCBjb25zdCBjaGFy ICpuYW1lLCBjb25zdCBjaGFyICptb2RlLAorICAgICAgICAgYWxhcm0oMCk7CisgICAgICAgICBp ZiAobiA8IDApIHsKKyAgICAgICAgICAgICBwZXJyb3IoInRmdHA6IHJlY3Zmcm9tIik7CisrICAg ICAgICAgICAgZXJyID0gRVhfT1NFUlI7CisgICAgICAgICAgICAgZ290byBhYm9ydF9wYWNrZXRz OworICAgICAgICAgfQorICAgICAgICAgc2Ffc2V0X3BvcnQoJnBlZXJhZGRyLCBTT0NLUE9SVCgm ZnJvbSkpOworQEAgLTExMSwxMiArMTE2LDE0IEBAIHZvaWQgdGZ0cF9zZW5kZmlsZShpbnQgZmQs IGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKm1vZGUsCisgICAgICAgICBhcF9ibG9jayA9 IG50b2hzKHJwLT50aF9ibG9jayk7CisgICAgICAgICBpZiAoYXBfb3Bjb2RlID09IEVSUk9SKSB7 CisgICAgICAgICAgICAgcHJpbnRmKCJFcnJvciBjb2RlICVkOiAlc1xuIiwgYXBfYmxvY2ssIHJw LT50aF9tc2cpOworKyAgICAgICAgICAgIGVyciA9IEVYX1BST1RPQ09MOworICAgICAgICAgICAg IGdvdG8gYWJvcnQ7CisgICAgICAgICB9CisgICAgICAgICBpZiAocmVxdWVzdGVkX29wdGlvbnMg JiYgYXBfb3Bjb2RlID09IE9BQ0spIHsKKyAgICAgICAgICAgICBpZiAoIXBhcnNlX29hY2socnAs IG4sIGJsb2Nrc2l6ZSwgcmVxdWVzdGVkX3dpbmRvdywKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgJm5lZ290aWF0ZWRfYmxvY2ssICZuZWdvdGlhdGVkX3dpbmRvdykpIHsKKyAgICAgICAg ICAgICAgICAgbmFrKEVPUFRORUcsICJJbnZhbGlkIG9wdGlvbiByZXNwb25zZSIpOworKyAgICAg ICAgICAgICAgICBlcnIgPSBFWF9QUk9UT0NPTDsKKyAgICAgICAgICAgICAgICAgZ290byBhYm9y dDsKKyAgICAgICAgICAgICB9CisgICAgICAgICAgICAgc2Vnc2l6ZSA9IChpbnQpbmVnb3RpYXRl ZF9ibG9jazsKK0BAIC0xNDMsNiArMTUwLDcgQEAgdm9pZCB0ZnRwX3NlbmRmaWxlKGludCBmZCwg Y29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqbW9kZSwKICAgICAgICAgICAgICBzaXplID0g cmVhZGl0KGZpbGUsICZkcCwgY29udmVydCk7CiAgICAgICAgICAgICAgaWYgKHNpemUgPCAwKSB7 CiAgICAgICAgICAgICAgICAgIG5hayhlcnJubyArIDEwMCwgTlVMTCk7CiArICAgICAgICAgICAg ICAgIGVyciA9IEVYX09TRVJSOwotICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAg ICAgICAgZ290byBhYm9ydF9wYWNrZXRzOworICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICBk cC0+dGhfb3Bjb2RlID0gaHRvbnMoKHVfc2hvcnQpREFUQSk7CitAQCAtMTY4LDYgKzE3Niw3IEBA IHZvaWQgdGZ0cF9zZW5kZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIg Km1vZGUsCisgICAgICAgICAgICAgaWYgKHNlbmR0byhmLCBkcCwgbGVuZ3Roc1tuXSwgMCwgJnBl ZXJhZGRyLnNhLAorICAgICAgICAgICAgICAgICAgICAgICAgU09DS0xFTigmcGVlcmFkZHIpKSAh PSBsZW5ndGhzW25dKSB7CisgICAgICAgICAgICAgICAgIHBlcnJvcigidGZ0cDogc2VuZHRvIik7 CisrICAgICAgICAgICAgICAgIGVyciA9IEVYX09TRVJSOworICAgICAgICAgICAgICAgICBnb3Rv IGFib3J0X3BhY2tldHM7CiAgICAgICAgICAgICAgfQotICAgICAgICAgICAgIGRwLT50aF9vcGNv ZGUgPSBodG9ucygodV9zaG9ydCkgREFUQSk7Ci1AQCAtOTUsNiArOTcsNyBAQCB2b2lkIHRmdHBf c2VuZGZpbGUoaW50IGZkLCBjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICptb2RlKQotICAg ICAgICAgICAgICAgICAgICAmcGVlcmFkZHIuc2EsIFNPQ0tMRU4oJnBlZXJhZGRyKSk7Ci0gICAg ICAgICBpZiAobiAhPSBzaXplICsgNCkgewotICAgICAgICAgICAgIHBlcnJvcigidGZ0cDogc2Vu ZHRvIik7Ci0rICAgICAgICAgICAgZXJyID0gRVhfT1NFUlI7Ci0gICAgICAgICAgICAgZ290byBh Ym9ydDsKICAgICAgICAgIH0KLSAgICAgICAgIHJlYWRfYWhlYWQoZmlsZSwgY29udmVydCk7Ci1A QCAtMTA4LDYgKzExMSw3IEBAIHZvaWQgdGZ0cF9zZW5kZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIg Km5hbWUsIGNvbnN0IGNoYXIgKm1vZGUpCitAQCAtMTc4LDYgKzE4Nyw3IEBAIHZvaWQgdGZ0cF9z ZW5kZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKm1vZGUsCiAgICAg ICAgICAgICAgYWxhcm0oMCk7CiAgICAgICAgICAgICAgaWYgKG4gPCAwKSB7CiAgICAgICAgICAg ICAgICAgIHBlcnJvcigidGZ0cDogcmVjdmZyb20iKTsKICsgICAgICAgICAgICAgICAgZXJyID0g RVhfT1NFUlI7Ci0gICAgICAgICAgICAgICAgIGdvdG8gYWJvcnQ7CisgICAgICAgICAgICAgICAg IGdvdG8gYWJvcnRfcGFja2V0czsKICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgc2Ffc2V0 X3BvcnQoJnBlZXJhZGRyLCBTT0NLUE9SVCgmZnJvbSkpOyAgLyogYWRkZWQgKi8KLUBAIC0xMTgs NiArMTIyLDcgQEAgdm9pZCB0ZnRwX3NlbmRmaWxlKGludCBmZCwgY29uc3QgY2hhciAqbmFtZSwg Y29uc3QgY2hhciAqbW9kZSkKLSAgICAgICAgICAgICBhcF9ibG9jayA9IG50b2hzKCh1X3Nob3J0 KSBhcC0+dGhfYmxvY2spOworICAgICAgICAgICAgIHNhX3NldF9wb3J0KCZwZWVyYWRkciwgU09D S1BPUlQoJmZyb20pKTsKK0BAIC0xODksNiArMTk5LDcgQEAgdm9pZCB0ZnRwX3NlbmRmaWxlKGlu dCBmZCwgY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqbW9kZSwKKyAgICAgICAgICAgICBh cF9ibG9jayA9IG50b2hzKGFwLT50aF9ibG9jayk7CiAgICAgICAgICAgICAgaWYgKGFwX29wY29k ZSA9PSBFUlJPUikgewogICAgICAgICAgICAgICAgICBwcmludGYoIkVycm9yIGNvZGUgJWQ6ICVz XG4iLCBhcF9ibG9jaywgYXAtPnRoX21zZyk7CiArICAgICAgICAgICAgICAgIGVyciA9IEVYX1BS T1RPQ09MOwotICAgICAgICAgICAgICAgICBnb3RvIGFib3J0OworICAgICAgICAgICAgICAgICBn b3RvIGFib3J0X3BhY2tldHM7CiAgICAgICAgICAgICAgfQotICAgICAgICAgICAgIGlmIChhcF9v cGNvZGUgPT0gQUNLKSB7Ci1AQCAtMTUwLDE2ICsxNTUsMTggQEAgdm9pZCB0ZnRwX3NlbmRmaWxl KGludCBmZCwgY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqbW9kZSkKKyAgICAgICAgICAg ICBleHBlY3RlZF9hY2sgPSBudG9ocygoKHN0cnVjdCB0ZnRwaGRyICopKHBhY2tldHMgKworQEAg LTIxNiwxMiArMjI3LDE0IEBAIHZvaWQgdGZ0cF9zZW5kZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIg Km5hbWUsIGNvbnN0IGNoYXIgKm1vZGUsCiAgICAgIHN0b3BjbG9jaygpOwogICAgICBpZiAoYW1v dW50ID4gMCkKLSAgICAgICAgIHByaW50c3RhdHMoIlNlbnQiLCBhbW91bnQpOworICAgICAgICAg cHJpbnRzdGF0cygiU2VudCIsICh1bnNpZ25lZCBsb25nKWFtb3VudCk7CiArCiArICAgIHJldHVy biBlcnI7CiAgfQpAQCAtNTUyLDY1ICs2MzMsMTE1IEBAIGluZGV4IGUxNjE1MjcuLjhlNWJiNjUg MTAwNjQ0CiAgLyoKICAgKiBSZWNlaXZlIGEgZmlsZS4KICAgKi8KLS12b2lkIHRmdHBfcmVjdmZp bGUoaW50IGZkLCBjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICptb2RlKQotK2ludCB0ZnRw X3JlY3ZmaWxlKGludCBmZCwgY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqbW9kZSkKKy12 b2lkIHRmdHBfcmVjdmZpbGUoaW50IGZkLCBjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICpt b2RlLAorK2ludCB0ZnRwX3JlY3ZmaWxlKGludCBmZCwgY29uc3QgY2hhciAqbmFtZSwgY29uc3Qg Y2hhciAqbW9kZSwKKyAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHJlcXVlc3RlZF93 aW5kb3cpCiAgewotICAgICBzdHJ1Y3QgdGZ0cGhkciAqYXA7Ci0gICAgIHN0cnVjdCB0ZnRwaGRy ICpkcDsKLS0gICAgaW50IG47Ci0rICAgIGludCBuLCBlcnI7Ci0gICAgIHZvbGF0aWxlIHVfc2hv cnQgYmxvY2s7Ci0gICAgIHZvbGF0aWxlIGludCBzaXplLCBmaXJzdHRyaXA7Ci0gICAgIHZvbGF0 aWxlIHVuc2lnbmVkIGxvbmcgYW1vdW50OwotQEAgLTE3Nyw2ICsxODQsNyBAQCB2b2lkIHRmdHBf cmVjdmZpbGUoaW50IGZkLCBjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICptb2RlKQotICAg ICBibG9jayA9IDE7Ci0gICAgIGZpcnN0dHJpcCA9IDE7Ci0gICAgIGFtb3VudCA9IDA7Ci0rICAg IGVyciA9IDA7Ci0gCisgICAgIHN0cnVjdCB0ZnRwaGRyICphcCwgKmRwOworQEAgLTIyOSw2ICsy NDIsNyBAQCB2b2lkIHRmdHBfcmVjdmZpbGUoaW50IGZkLCBjb25zdCBjaGFyICpuYW1lLCBjb25z dCBjaGFyICptb2RlLAorICAgICBzb2NrbGVuX3QgZnJvbWxlbjsKKyAgICAgRklMRSAqZmlsZSA9 IE5VTEw7CisgICAgIHZvbGF0aWxlIGludCBuLCBzaXplLCBwYWNrZXRzX2luX3dpbmRvdyA9IDAs IGZpcnN0X2RhdGEgPSAwLCBmaW5hbDsKKysgICAgaW50IGVyciA9IDA7CisgICAgIGludCBjb252 ZXJ0ID0gIXN0cmNtcChtb2RlLCAibmV0YXNjaWkiKTsKKyAgICAgdm9sYXRpbGUgdW5zaWduZWQg aW50IHdpbmRvdzsKKyAgICAgdW5zaWduZWQgaW50IG5lZ290aWF0ZWRfYmxvY2ssIG5lZ290aWF0 ZWRfd2luZG93OworQEAgLTIzOSwxNCArMjUzLDE3IEBAIHZvaWQgdGZ0cF9yZWN2ZmlsZShpbnQg ZmQsIGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKm1vZGUsCisgCisgICAgIHN0YXJ0Y2xv Y2soKTsKKyAgICAgZmlsZSA9IGZkb3BlbihmZCwgY29udmVydCA/ICJ3dCIgOiAid2IiKTsKKy0g ICAgaWYgKCFmaWxlKQorKyAgICBpZiAoIWZpbGUpIHsKKysgICAgICAgIGVyciA9IEVYX09TRVJS OworICAgICAgICAgZ290byBhYm9ydDsKKysgICAgfQorICAgICBkcCA9IHdfaW5pdCgpOworICAg ICBhcCA9IChzdHJ1Y3QgdGZ0cGhkciAqKWFja2J1ZjsKKyAgICAgc2l6ZSA9IG1ha2VyZXF1ZXN0 KFJSUSwgbmFtZSwgYXAsIG1vZGUsIGJsb2Nrc2l6ZSwgcmVxdWVzdGVkX3dpbmRvdywKKyAgICAg ICAgICAgICAgICAgICAgICAgIHNpemVvZihhY2tidWYpKTsKKyAgICAgaWYgKHNpemUgPCAwKSB7 CisgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgInRmdHA6ICVzOiAlc1xuIiwgbmFtZSwgc3RyZXJy b3IoZXJybm8pKTsKKysgICAgICAgIGVyciA9IEVYX09TRVJSOworICAgICAgICAgZ290byBhYm9y dDsKKyAgICAgfQogICAgICB0ZnRwX3NpZ25hbChTSUdBTFJNLCB0aW1lciwgMCk7Ci0gICAgIGRv IHsKLUBAIC0yMDIsNiArMjEwLDcgQEAgdm9pZCB0ZnRwX3JlY3ZmaWxlKGludCBmZCwgY29uc3Qg Y2hhciAqbmFtZSwgY29uc3QgY2hhciAqbW9kZSkKLSAgICAgICAgICAgICAgICAgICAgU09DS0xF TigmcGVlcmFkZHIpKSAhPSBzaXplKSB7Ci0gICAgICAgICAgICAgYWxhcm0oMCk7CitAQCAtMjU5 LDYgKzI3Niw3IEBAIHZvaWQgdGZ0cF9yZWN2ZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIgKm5hbWUs IGNvbnN0IGNoYXIgKm1vZGUsCisgICAgICAgICAgICAgdHBhY2tldCgic2VudCIsIGFwLCBzaXpl KTsKKyAgICAgICAgIGlmIChzZW5kdG8oZiwgYXAsIHNpemUsIDAsICZwZWVyYWRkci5zYSwgU09D S0xFTigmcGVlcmFkZHIpKSAhPSBzaXplKSB7CisgICAgICAgICAgICAgcGVycm9yKCJ0ZnRwOiBz ZW5kdG8iKTsKKysgICAgICAgICAgICBlcnIgPSBFWF9PU0VSUjsKKyAgICAgICAgICAgICBnb3Rv IGFib3J0OworICAgICAgICAgfQorICAgICAgICAgYWxhcm0ocmV4bXR2YWwpOworQEAgLTI3Nywx MiArMjk1LDE0IEBAIHZvaWQgdGZ0cF9yZWN2ZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIgKm5hbWUs IGNvbnN0IGNoYXIgKm1vZGUsCisgICAgICAgICAgICAgdHBhY2tldCgicmVjZWl2ZWQiLCBkcCwg bik7CisgICAgICAgICBpZiAob3Bjb2RlID09IEVSUk9SKSB7CisgICAgICAgICAgICAgcHJpbnRm KCJFcnJvciBjb2RlICVkOiAlc1xuIiwgbnRvaHMoZHAtPnRoX2NvZGUpLCBkcC0+dGhfbXNnKTsK KysgICAgICAgICAgICBlcnIgPSBFWF9QUk9UT0NPTDsKKyAgICAgICAgICAgICBnb3RvIGFib3J0 OworICAgICAgICAgfQorICAgICAgICAgaWYgKHJlcXVlc3RlZF9vcHRpb25zICYmIG9wY29kZSA9 PSBPQUNLKSB7CisgICAgICAgICAgICAgaWYgKCFwYXJzZV9vYWNrKGRwLCBuLCBibG9ja3NpemUs IHJlcXVlc3RlZF93aW5kb3csCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZuZWdvdGlh dGVkX2Jsb2NrLCAmbmVnb3RpYXRlZF93aW5kb3cpKSB7CisgICAgICAgICAgICAgICAgIG5hayhF T1BUTkVHLCAiSW52YWxpZCBvcHRpb24gcmVzcG9uc2UiKTsKKysgICAgICAgICAgICAgICAgZXJy ID0gRVhfUFJPVE9DT0w7CisgICAgICAgICAgICAgICAgIGdvdG8gYWJvcnQ7CisgICAgICAgICAg ICAgfQorICAgICAgICAgICAgIHNlZ3NpemUgPSAoaW50KW5lZ290aWF0ZWRfYmxvY2s7CitAQCAt MzA2LDYgKzMyNiw3IEBAIHZvaWQgdGZ0cF9yZWN2ZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIgKm5h bWUsIGNvbnN0IGNoYXIgKm1vZGUsCisgICAgICAgICAgICAgdHBhY2tldCgic2VudCIsIGFwLCBz aXplKTsKKyAgICAgICAgIGlmIChzZW5kdG8oZiwgYXAsIHNpemUsIDAsICZwZWVyYWRkci5zYSwg U09DS0xFTigmcGVlcmFkZHIpKSAhPSBzaXplKSB7CiAgICAgICAgICAgICAgcGVycm9yKCJ0ZnRw OiBzZW5kdG8iKTsKICsgICAgICAgICAgICBlcnIgPSBFWF9PU0VSUjsKICAgICAgICAgICAgICBn b3RvIGFib3J0OwogICAgICAgICAgfQogICAgICAgICAgd3JpdGVfYmVoaW5kKGZpbGUsIGNvbnZl cnQpOwotQEAgLTIxNSw2ICsyMjQsNyBAQCB2b2lkIHRmdHBfcmVjdmZpbGUoaW50IGZkLCBjb25z dCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICptb2RlKQorQEAgLTMyOSw2ICszNTAsNyBAQCB2b2lk IHRmdHBfcmVjdmZpbGUoaW50IGZkLCBjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICptb2Rl LAorICAgICAgICAgICAgIGlmIChzZW5kdG8oZiwgYXAsIDQsIDAsICZwZWVyYWRkci5zYSwKKyAg ICAgICAgICAgICAgICAgICAgICAgIFNPQ0tMRU4oJnBlZXJhZGRyKSkgIT0gNCkgeworICAgICAg ICAgICAgICAgICBwZXJyb3IoInRmdHA6IHNlbmR0byIpOworKyAgICAgICAgICAgICAgICBlcnIg PSBFWF9PU0VSUjsKKyAgICAgICAgICAgICAgICAgZ290byBhYm9ydDsKKyAgICAgICAgICAgICB9 CisgICAgICAgICAgICAgd3JpdGVfYmVoaW5kKGZpbGUsIGNvbnZlcnQpOworQEAgLTM0MCw2ICsz NjIsNyBAQCB2b2lkIHRmdHBfcmVjdmZpbGUoaW50IGZkLCBjb25zdCBjaGFyICpuYW1lLCBjb25z dCBjaGFyICptb2RlLAogICAgICAgICAgICAgIGFsYXJtKDApOwogICAgICAgICAgICAgIGlmIChu IDwgMCkgewogICAgICAgICAgICAgICAgICBwZXJyb3IoInRmdHA6IHJlY3Zmcm9tIik7CiArICAg ICAgICAgICAgICAgIGVyciA9IEVYX09TRVJSOwogICAgICAgICAgICAgICAgICBnb3RvIGFib3J0 OwogICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICBzYV9zZXRfcG9ydCgmcGVlcmFkZHIsIFNP Q0tQT1JUKCZmcm9tKSk7ICAvKiBhZGRlZCAqLwotQEAgLTIyNSw2ICsyMzUsNyBAQCB2b2lkIHRm dHBfcmVjdmZpbGUoaW50IGZkLCBjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICptb2RlKQot ICAgICAgICAgICAgIGRwX2Jsb2NrID0gbnRvaHMoKHVfc2hvcnQpIGRwLT50aF9ibG9jayk7Ci0g ICAgICAgICAgICAgaWYgKGRwX29wY29kZSA9PSBFUlJPUikgewotICAgICAgICAgICAgICAgICBw cmludGYoIkVycm9yIGNvZGUgJWQ6ICVzXG4iLCBkcF9ibG9jaywgZHAtPnRoX21zZyk7Ci0rICAg ICAgICAgICAgICAgIGVyciA9IEVYX1BST1RPQ09MOwotICAgICAgICAgICAgICAgICBnb3RvIGFi b3J0OwotICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICBpZiAoZHBfb3Bjb2RlID09IERBVEEp IHsKLUBAIC0yNDksNiArMjYwLDcgQEAgdm9pZCB0ZnRwX3JlY3ZmaWxlKGludCBmZCwgY29uc3Qg Y2hhciAqbmFtZSwgY29uc3QgY2hhciAqbW9kZSkKKyAgICAgICAgICAgICBpZiAodHJhY2UpCitA QCAtMzUyLDYgKzM3NSw3IEBAIHZvaWQgdGZ0cF9yZWN2ZmlsZShpbnQgZmQsIGNvbnN0IGNoYXIg Km5hbWUsIGNvbnN0IGNoYXIgKm1vZGUsCisgICAgICAgICBwYWNrZXRfYmxvY2sgPSBudG9ocyhk cC0+dGhfYmxvY2spOworICAgICAgICAgaWYgKG9wY29kZSA9PSBFUlJPUikgeworICAgICAgICAg ICAgIHByaW50ZigiRXJyb3IgY29kZSAlZDogJXNcbiIsIHBhY2tldF9ibG9jaywgZHAtPnRoX21z Zyk7CisrICAgICAgICAgICAgZXJyID0gRVhfUFJPVE9DT0w7CisgICAgICAgICAgICAgZ290byBh Ym9ydDsKKyAgICAgICAgIH0KKyAgICAgICAgIGlmIChvcGNvZGUgIT0gREFUQSB8fCBuIDwgNCkK K0BAIC0zNjksMTEgKzM5MywxMyBAQCB2b2lkIHRmdHBfcmVjdmZpbGUoaW50IGZkLCBjb25zdCBj aGFyICpuYW1lLCBjb25zdCBjaGFyICptb2RlLAorICAgICAgICAgfQorICAgICAgICAgaWYgKG4g LSA0ID4gc2Vnc2l6ZSkgeworICAgICAgICAgICAgIG5hayhFQkFET1AsICJEYXRhIHBhY2tldCB0 b28gbGFyZ2UiKTsKKysgICAgICAgICAgICBlcnIgPSBFWF9QUk9UT0NPTDsKKyAgICAgICAgICAg ICBnb3RvIGFib3J0OworICAgICAgICAgfQogICAgICAgICAgc2l6ZSA9IHdyaXRlaXQoZmlsZSwg JmRwLCBuIC0gNCwgY29udmVydCk7CiAgICAgICAgICBpZiAoc2l6ZSA8IDApIHsKICAgICAgICAg ICAgICBuYWsoZXJybm8gKyAxMDAsIE5VTEwpOwogKyAgICAgICAgICAgIGVyciA9IEVYX09TRVJS OwotICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgIGdvdG8gYWJvcnQ7CiAgICAgICAg ICB9CiAgICAgICAgICBhbW91bnQgKz0gc2l6ZTsKLUBAIC0yNjMsNiArMjc1LDggQEAgdm9pZCB0 ZnRwX3JlY3ZmaWxlKGludCBmZCwgY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqbW9kZSkK LSAgICAgc3RvcGNsb2NrKCk7Ci0gICAgIGlmIChhbW91bnQgPiAwKQotICAgICAgICAgcHJpbnRz dGF0cygiUmVjZWl2ZWQiLCBhbW91bnQpOwotKwotKyAgICByZXR1cm4gZXJyOwotIH0KLSAKLSBz dGF0aWMgaW50CitAQCAtMzkwLDYgKzQxNiw3IEBAIHZvaWQgdGZ0cF9yZWN2ZmlsZShpbnQgZmQs IGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKm1vZGUsCisgICAgICAgICAgICAgaWYgKHNl bmR0byhmLCBhcCwgNCwgMCwgJnBlZXJhZGRyLnNhLAorICAgICAgICAgICAgICAgICAgICAgICAg U09DS0xFTigmcGVlcmFkZHIpKSAhPSA0KSB7CisgICAgICAgICAgICAgICAgIHBlcnJvcigidGZ0 cDogc2VuZHRvIik7CisrICAgICAgICAgICAgICAgIGVyciA9IEVYX09TRVJSOworICAgICAgICAg ICAgICAgICBnb3RvIGFib3J0OworICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICB3cml0ZV9i ZWhpbmQoZmlsZSwgY29udmVydCk7CiAtLSAKIDIuNTUuMAogCgpkaWZmIC0tZ2l0IGEvdGZ0cC1o cGEtNi4wLXN0YXRzLnBhdGNoIGIvdGZ0cC1ocGEtNi4wLXN0YXRzLnBhdGNoCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM4NmE5M2QKLS0tIC9kZXYvbnVsbAorKysgYi90ZnRw LWhwYS02LjAtc3RhdHMucGF0Y2gKQEAgLTAsMCArMSw0MSBAQAorRnJvbSA3YjRiNmY3NTIxNGMx YzY0ZDg2ZjZjMzMzZGI1ZGVkZTMzZWY1ZTQzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJv bTogTHVrw6HFoSBaYW9yYWwgdmlhIFN5c2xpbnV4IDxzeXNsaW51eEBzeXNsaW51eC5vcmc+CitE YXRlOiBXZWQsIDE1IEFwciAyMDI2IDEwOjE1OjIzICswMjAwCitTdWJqZWN0OiB0ZnRwOiBjb3Jy ZWN0bHkgY29udmVydCDOvHMgdG8gcyB0byBmaXggdHJhbnNmZXIgc3RhdGlzdGljcworTUlNRS1W ZXJzaW9uOiAxLjAKK0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAorQ29u dGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAorCitCZWZvcmUgdGhpcyBwYXRjaCwgdGhlIG1p Y3Jvc2Vjb25kcyBkaWZmZXJlbmNlIHdhcyBjb21wdXRlZCBpbmNvcnJlY3RseQorbGVhZGluZyB0 byB3cm9uZyB0cmFuc2ZlciBzdGF0aXN0aWNzLiAgVGhlIHZhbHVlIHNob3VsZCBiZSBkaXZpZGVk IGJ5CithIG1pbGxpb24gYW5kIG5vdCBieSAxMDAsMDAwLgorCiskIC4vdGZ0cC90ZnRwIGxvY2Fs aG9zdCAtdiAtYyBnZXQgMTBNQgorQ29ubmVjdGVkIHRvIGxvY2FsaG9zdCAoOjoxKSwgcG9ydCA2 OQorZ2V0dGluZyBmcm9tIGxvY2FsaG9zdDoxME1CIHRvIDEwTUIgW25ldGFzY2lpXQorUmVjZWl2 ZWQgMTA0ODU3NjAgYnl0ZXMgaW4gLTcuNSBzZWNvbmRzIFstMTExNjQyOTggYml0L3NdCisKK1Jl dmlld2VkLWJ5OiBQYXVsIE1lbnplbCA8cG1lbnplbEBtb2xnZW4ubXBnLmRlPgorU2lnbmVkLW9m Zi1ieTogTHVrw6HFoSBaYW9yYWwgPGx6YW9yYWxAcmVkaGF0LmNvbT4KK1NpZ25lZC1vZmYtYnk6 IEguIFBldGVyIEFudmluIDxocGFAenl0b3IuY29tPgorLS0tCisgdGZ0cC90ZnRwLmMgfCA0ICsr LS0KKyAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitk aWZmIC0tZ2l0IGEvdGZ0cC90ZnRwLmMgYi90ZnRwL3RmdHAuYworaW5kZXggYWJjMjViOS4uZDlj OTM5NCAxMDA2NDQKKy0tLSBhL3RmdHAvdGZ0cC5jCisrKysgYi90ZnRwL3RmdHAuYworQEAgLTYz OCw4ICs2MzgsOCBAQCBzdGF0aWMgdm9pZCBwcmludHN0YXRzKGNvbnN0IGNoYXIgKmRpcmVjdGlv biwgdW5zaWduZWQgbG9uZyBhbW91bnQpCisgeworICAgICBkb3VibGUgZGVsdGE7CisgCistICAg IGRlbHRhID0gKHRzdG9wLnR2X3NlYyArICh0c3RvcC50dl91c2VjIC8gMTAwMDAwLjApKSAtCist ICAgICAgICAodHN0YXJ0LnR2X3NlYyArICh0c3RhcnQudHZfdXNlYyAvIDEwMDAwMC4wKSk7Cisr ICAgIGRlbHRhID0gKHRzdG9wLnR2X3NlYyArICh0c3RvcC50dl91c2VjIC8gMTAwMDAwMC4wKSkg LQorKyAgICAgICAgKHRzdGFydC50dl9zZWMgKyAodHN0YXJ0LnR2X3VzZWMgLyAxMDAwMDAwLjAp KTsKKyAgICAgaWYgKHZlcmJvc2UpIHsKKyAgICAgICAgIHByaW50ZigiJXMgJWx1IGJ5dGVzIGlu ICUuMWYgc2Vjb25kcyIsIGRpcmVjdGlvbiwgYW1vdW50LCBkZWx0YSk7CisgICAgICAgICBwcmlu dGYoIiBbJS4wZiBiaXQvc10iLCAoYW1vdW50ICogOC4pIC8gZGVsdGEpOworLS0gCitjZ2l0IDEu My4xLWtvcmcKCmRpZmYgLS1naXQgYS90ZnRwLnNwZWMgYi90ZnRwLnNwZWMKaW5kZXggMGE2ZmZk Zi4uNjFhZWI1YSAxMDA2NDQKLS0tIGEvdGZ0cC5zcGVjCisrKyBiL3RmdHAuc3BlYwpAQCAtMiwx MiArMiwxMiBAQAogCiBTdW1tYXJ5OiBUaGUgY2xpZW50IGZvciB0aGUgVHJpdmlhbCBGaWxlIFRy YW5zZmVyIFByb3RvY29sIChURlRQKQogTmFtZTogdGZ0cAotVmVyc2lvbjogNS40Ci1SZWxlYXNl OiAyJXs/ZGlzdH0KK1ZlcnNpb246IDYuMAorUmVsZWFzZTogMSV7P2Rpc3R9CiBMaWNlbnNlOiBC U0QtNC1DbGF1c2UtVUMKIFVSTDogaHR0cDovL3d3dy5rZXJuZWwub3JnL3B1Yi9zb2Z0d2FyZS9u ZXR3b3JrL3RmdHAvCi1Tb3VyY2UwOiBodHRwczovL3d3dy5rZXJuZWwub3JnL3B1Yi9zb2Z0d2Fy ZS9uZXR3b3JrL3RmdHAvdGZ0cC1ocGEvdGZ0cC1ocGEtNS40LnRhci5negotU291cmNlMTogaHR0 cHM6Ly93d3cua2VybmVsLm9yZy9wdWIvc29mdHdhcmUvbmV0d29yay90ZnRwL3RmdHAtaHBhL3Rm dHAtaHBhLTUuNC50YXIuc2lnbgorU291cmNlMDogaHR0cHM6Ly93d3cua2VybmVsLm9yZy9wdWIv c29mdHdhcmUvbmV0d29yay90ZnRwL3RmdHAtaHBhLSV7dmVyc2lvbn0udGFyLmd6CitTb3VyY2Ux OiBodHRwczovL3d3dy5rZXJuZWwub3JnL3B1Yi9zb2Z0d2FyZS9uZXR3b3JrL3RmdHAvdGZ0cC1o cGEtJXt2ZXJzaW9ufS50YXIuc2lnbgogIyBncGcgLS1rZXlzZXJ2ZXIgcGdwLm1pdC5lZHUgLS1y ZWN2LWtleSA2RDAxMDdCQzY5RUU1QTI3NEZEOUI2MEMyREIzQzMzMjFCNkRERjg2CiAjIGdwZyAt LW91dHB1dCBocGEuZ3BnIC0tYXJtb3IgLS1leHBvcnQgaHBhQHp5dG9yLmNvbQogU291cmNlMjog aHBhLmdwZwpAQCAtMTUsMTAgKzE1LDEwIEBAIFNvdXJjZTM6IHRmdHAuc29ja2V0CiBTb3VyY2U0 OiB0ZnRwLnNlcnZpY2UKIFNvdXJjZTU6IHRmdHAtc2VydmVyLXRtcGZpbGVzLmNvbmYKIAorIyBV cHN0cmVhbSBwYXRjaGVzCitQYXRjaDogdGZ0cC1ocGEtNi4wLXN0YXRzLnBhdGNoCisKICMgVG8t YmUgdXBzdHJlYW1lZCBwYXRjaGVzCi0jIGh0dHBzOi8vd3d3LnN5c2xpbnV4Lm9yZy9hcmNoaXZl cy8yMDI2LUFwcmlsLzAyNjk1OS5odG1sCi1QYXRjaDogdGZ0cC1ocGEtNS4zLXN0YXRzLnBhdGNo Ci1QYXRjaDogdGZ0cC1kb2MucGF0Y2gKIFBhdGNoOiB0ZnRwLWVuaGFuY2VkLWxvZ2dpbmcucGF0 Y2gKIFBhdGNoOiB0ZnRwLWhwYS01LjItb3NoLnBhdGNoCiBQYXRjaDogdGZ0cC1ocGEtNS4zLXRm dHAtZXhpdC1jb2RlLWNtZG1vZGUucGF0Y2gKQEAgLTk2LDYgKzk2LDkgQEAgaW5zdGFsbCAtRCAt cCAtbSA2NDQgJVNPVVJDRTUgJXtidWlsZHJvb3R9JXtfdG1wZmlsZXNkaXJ9LyV7bmFtZX0uY29u ZgogJXtfdW5pdGRpcn0vdGZ0cC5zb2NrZXQKIAogJWNoYW5nZWxvZworKiBNb24gQXVnIDMxIDIw MjYgTHVrw6HFoSBaYW9yYWwgPGx6YW9yYWxAcmVkaGF0LmNvbT4gLSA2LjAtMQorLSByZWJhc2Ug dG8gdGhlIGxhdGVzdCB1cHN0cmVhbSByZWxlYXNlIChyaGJ6IzI1MjU4NTkpCisKICogRnJpIEp1 bCAxNyAyMDI2IEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVj dC5vcmc+IC0gNS40LTIKIC0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93 aWtpL0ZlZG9yYV80NV9NYXNzX1JlYnVpbGQKIAo=