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: Jan Kratochvil To: git-commits@fedoraproject.org Subject: [rpms/gdb] gdb-17.2-rebase-f44: Rebase to FSF GDB 7.2.50.20110305 (which is a 7.3 pre-release). Date: Sat, 27 Jun 2026 23:55:04 GMT Message-ID: <178260450477.1.16230851744110077962.rpms-gdb-d5159132e2b9@fedoraproject.org> List-ID: X-Git-Repo: rpms/gdb X-Git-Branch: gdb-17.2-rebase-f44 X-Git-Rev: d5159132e2b9bf78498f115faad1c415cace377a QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2RiCkJyYW5jaCA6 IGdkYi0xNy4yLXJlYmFzZS1mNDQKQ29tbWl0IDogZDUxNTkxMzJlMmI5YmY3ODQ5OGYxMTVmYWFk MWM0MTVjYWNlMzc3YQpBdXRob3IgOiBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVk aGF0LmNvbT4KRGF0ZSAgIDogMjAxMS0wMy0wNVQxMzoyNDo1MyswMTowMApTdGF0cyAgOiArMzg4 Ly0yNDcgaW4gNyBmaWxlKHMpClVSTCAgICA6IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3Jn L3JwbXMvZ2RiL2MvZDUxNTkxMzJlMmI5YmY3ODQ5OGYxMTVmYWFkMWM0MTVjYWNlMzc3YT9icmFu Y2g9Z2RiLTE3LjItcmViYXNlLWY0NAoKTG9nOgpSZWJhc2UgdG8gRlNGIEdEQiA3LjIuNTAuMjAx MTAzMDUgKHdoaWNoIGlzIGEgNy4zIHByZS1yZWxlYXNlKS4KCi0tLQpkaWZmIC0tZ2l0IGEvLmdp dGlnbm9yZSBiLy5naXRpZ25vcmUKaW5kZXggZDVmNmY3Ny4uYWUyNzRjNSAxMDA2NDQKLS0tIGEv LmdpdGlnbm9yZQorKysgYi8uZ2l0aWdub3JlCkBAIC0xLDIgKzEsMiBAQAogL2xpYnN0ZGMrKy12 My1weXRob24tcjE1NTk3OC50YXIuYnoyCi0vZ2RiLTcuMi41MC4yMDExMDIyMi50YXIuYnoyCisv Z2RiLTcuMi41MC4yMDExMDMwNS50YXIuYnoyCgpkaWZmIC0tZ2l0IGEvZ2RiLTYuMy10ZXN0LXBp ZS0yMDA1MDEwNy5wYXRjaCBiL2dkYi02LjMtdGVzdC1waWUtMjAwNTAxMDcucGF0Y2gKaW5kZXgg OTdhMTE0MC4uOTgyOGFmYSAxMDA2NDQKLS0tIGEvZ2RiLTYuMy10ZXN0LXBpZS0yMDA1MDEwNy5w YXRjaAorKysgYi9nZGItNi4zLXRlc3QtcGllLTIwMDUwMTA3LnBhdGNoCkBAIC0xLDQwICsxLDQw IEBACi1JbmRleDogZ2RiLTcuMi41MC4yMDExMDExNy9nZGIvdGVzdHN1aXRlL2NvbmZpZ3VyZS5h YworSW5kZXg6IGdkYi03LjIuNTAuMjAxMTAzMDUvZ2RiL3Rlc3RzdWl0ZS9jb25maWd1cmUuYWMK ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT0KLS0tLSBnZGItNy4yLjUwLjIwMTEwMTE3Lm9yaWcvZ2RiL3Rlc3RzdWl0ZS9j b25maWd1cmUuYWMJMjAxMS0wMS0wNSAwNjowOTo1NS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnZGIt Ny4yLjUwLjIwMTEwMTE3L2dkYi90ZXN0c3VpdGUvY29uZmlndXJlLmFjCTIwMTEtMDEtMTcgMTU6 NTA6MDMuMDAwMDAwMDAwICswMTAwCi1AQCAtMTQ0LDYgKzE0NCw2IEBAIEFDX09VVFBVVChbTWFr ZWZpbGUgXAotICAgZ2RiLmNwL01ha2VmaWxlIGdkYi5kaXNhc20vTWFrZWZpbGUgZ2RiLmR3YXJm Mi9NYWtlZmlsZSBcCi0gICBnZGIuZm9ydHJhbi9NYWtlZmlsZSBnZGIuc2VydmVyL01ha2VmaWxl IGdkYi5qYXZhL01ha2VmaWxlIFwKKy0tLSBnZGItNy4yLjUwLjIwMTEwMzA1Lm9yaWcvZ2RiL3Rl c3RzdWl0ZS9jb25maWd1cmUuYWMJMjAxMS0wMy0wMyAxNzo1Nzo1NS4wMDAwMDAwMDAgKzAxMDAK KysrKyBnZGItNy4yLjUwLjIwMTEwMzA1L2dkYi90ZXN0c3VpdGUvY29uZmlndXJlLmFjCTIwMTEt MDMtMDUgMDg6MjY6NTMuMDAwMDAwMDAwICswMTAwCitAQCAtOTcsNiArOTcsNiBAQCBBQ19PVVRQ VVQoW01ha2VmaWxlIFwKKyAgIGdkYi5ocC9nZGIuYUNDL01ha2VmaWxlIGdkYi5ocC9nZGIuY29t cGF0L01ha2VmaWxlIFwKKyAgIGdkYi5ocC9nZGIuZGVmZWN0cy9NYWtlZmlsZSBcCiAgICBnZGIu bWkvTWFrZWZpbGUgZ2RiLm1vZHVsYTIvTWFrZWZpbGUgZ2RiLm11bHRpL01ha2VmaWxlIFwKIC0g IGdkYi5vYmpjL01ha2VmaWxlIGdkYi5vcGVuY2wvTWFrZWZpbGUgZ2RiLm9wdC9NYWtlZmlsZSBn ZGIucGFzY2FsL01ha2VmaWxlIFwKICsgIGdkYi5vYmpjL01ha2VmaWxlIGdkYi5vcGVuY2wvTWFr ZWZpbGUgZ2RiLm9wdC9NYWtlZmlsZSBnZGIucGFzY2FsL01ha2VmaWxlIGdkYi5waWUvTWFrZWZp bGUgXAotICAgZ2RiLnB5dGhvbi9NYWtlZmlsZSBnZGIucmV2ZXJzZS9NYWtlZmlsZSBcCisgICBn ZGIucHl0aG9uL01ha2VmaWxlIGdkYi5yZXZlcnNlL01ha2VmaWxlIGdkYi5zdGFicy9NYWtlZmls ZSBcCiAgICBnZGIudGhyZWFkcy9NYWtlZmlsZSBnZGIudHJhY2UvTWFrZWZpbGUgZ2RiLnhtbC9N YWtlZmlsZV0pCi1JbmRleDogZ2RiLTcuMi41MC4yMDExMDExNy9nZGIvdGVzdHN1aXRlL2NvbmZp Z3VyZQorSW5kZXg6IGdkYi03LjIuNTAuMjAxMTAzMDUvZ2RiL3Rlc3RzdWl0ZS9jb25maWd1cmUK ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT0KLS0tLSBnZGItNy4yLjUwLjIwMTEwMTE3Lm9yaWcvZ2RiL3Rlc3RzdWl0ZS9j b25maWd1cmUJMjAxMS0wMS0wNyAwMzo1MTowOS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnZGItNy4y LjUwLjIwMTEwMTE3L2dkYi90ZXN0c3VpdGUvY29uZmlndXJlCTIwMTEtMDEtMTcgMTU6NTA6MDku MDAwMDAwMDAwICswMTAwCi1AQCAtMzUxNSw3ICszNTE1LDcgQEAgZG9uZQorLS0tIGdkYi03LjIu NTAuMjAxMTAzMDUub3JpZy9nZGIvdGVzdHN1aXRlL2NvbmZpZ3VyZQkyMDExLTAzLTAzIDE3OjU3 OjU1LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjIuNTAuMjAxMTAzMDUvZ2RiL3Rlc3RzdWl0 ZS9jb25maWd1cmUJMjAxMS0wMy0wNSAwODoyNjo1OC4wMDAwMDAwMDAgKzAxMDAKK0BAIC0zNDQ4 LDcgKzM0NDgsNyBAQCBkb25lCiAgCiAgCiAgCi0tYWNfY29uZmlnX2ZpbGVzPSIkYWNfY29uZmln X2ZpbGVzIE1ha2VmaWxlIGdkYi5hZGEvTWFrZWZpbGUgZ2RiLmFyY2gvTWFrZWZpbGUgZ2RiLmFz bS9NYWtlZmlsZSBnZGIuYmFzZS9NYWtlZmlsZSBnZGIuY3AvTWFrZWZpbGUgZ2RiLmRpc2FzbS9N YWtlZmlsZSBnZGIuZHdhcmYyL01ha2VmaWxlIGdkYi5mb3J0cmFuL01ha2VmaWxlIGdkYi5zZXJ2 ZXIvTWFrZWZpbGUgZ2RiLmphdmEvTWFrZWZpbGUgZ2RiLm1pL01ha2VmaWxlIGdkYi5tb2R1bGEy L01ha2VmaWxlIGdkYi5tdWx0aS9NYWtlZmlsZSBnZGIub2JqYy9NYWtlZmlsZSBnZGIub3BlbmNs L01ha2VmaWxlIGdkYi5vcHQvTWFrZWZpbGUgZ2RiLnBhc2NhbC9NYWtlZmlsZSBnZGIucHl0aG9u L01ha2VmaWxlIGdkYi5yZXZlcnNlL01ha2VmaWxlIGdkYi50aHJlYWRzL01ha2VmaWxlIGdkYi50 cmFjZS9NYWtlZmlsZSBnZGIueG1sL01ha2VmaWxlIgotK2FjX2NvbmZpZ19maWxlcz0iJGFjX2Nv bmZpZ19maWxlcyBNYWtlZmlsZSBnZGIuYWRhL01ha2VmaWxlIGdkYi5hcmNoL01ha2VmaWxlIGdk Yi5hc20vTWFrZWZpbGUgZ2RiLmJhc2UvTWFrZWZpbGUgZ2RiLmNwL01ha2VmaWxlIGdkYi5kaXNh c20vTWFrZWZpbGUgZ2RiLmR3YXJmMi9NYWtlZmlsZSBnZGIuZm9ydHJhbi9NYWtlZmlsZSBnZGIu c2VydmVyL01ha2VmaWxlIGdkYi5qYXZhL01ha2VmaWxlIGdkYi5taS9NYWtlZmlsZSBnZGIubW9k dWxhMi9NYWtlZmlsZSBnZGIubXVsdGkvTWFrZWZpbGUgZ2RiLm9iamMvTWFrZWZpbGUgZ2RiLm9w ZW5jbC9NYWtlZmlsZSBnZGIub3B0L01ha2VmaWxlIGdkYi5wYXNjYWwvTWFrZWZpbGUgZ2RiLnBp ZS9NYWtlZmlsZSBnZGIucHl0aG9uL01ha2VmaWxlIGdkYi5yZXZlcnNlL01ha2VmaWxlIGdkYi50 aHJlYWRzL01ha2VmaWxlIGdkYi50cmFjZS9NYWtlZmlsZSBnZGIueG1sL01ha2VmaWxlIgorLWFj X2NvbmZpZ19maWxlcz0iJGFjX2NvbmZpZ19maWxlcyBNYWtlZmlsZSBnZGIuYWRhL01ha2VmaWxl IGdkYi5hcmNoL01ha2VmaWxlIGdkYi5hc20vTWFrZWZpbGUgZ2RiLmJhc2UvTWFrZWZpbGUgZ2Ri LmNlbGwvTWFrZWZpbGUgZ2RiLmNwL01ha2VmaWxlIGdkYi5kaXNhc20vTWFrZWZpbGUgZ2RiLmR3 YXJmMi9NYWtlZmlsZSBnZGIuZm9ydHJhbi9NYWtlZmlsZSBnZGIuc2VydmVyL01ha2VmaWxlIGdk Yi5qYXZhL01ha2VmaWxlIGdkYi5ocC9NYWtlZmlsZSBnZGIuaHAvZ2RiLm9iamRiZy9NYWtlZmls ZSBnZGIuaHAvZ2RiLmJhc2UtaHAvTWFrZWZpbGUgZ2RiLmhwL2dkYi5hQ0MvTWFrZWZpbGUgZ2Ri LmhwL2dkYi5jb21wYXQvTWFrZWZpbGUgZ2RiLmhwL2dkYi5kZWZlY3RzL01ha2VmaWxlIGdkYi5t aS9NYWtlZmlsZSBnZGIubW9kdWxhMi9NYWtlZmlsZSBnZGIubXVsdGkvTWFrZWZpbGUgZ2RiLm9i amMvTWFrZWZpbGUgZ2RiLm9wZW5jbC9NYWtlZmlsZSBnZGIub3B0L01ha2VmaWxlIGdkYi5wYXNj YWwvTWFrZWZpbGUgZ2RiLnB5dGhvbi9NYWtlZmlsZSBnZGIucmV2ZXJzZS9NYWtlZmlsZSBnZGIu c3RhYnMvTWFrZWZpbGUgZ2RiLnRocmVhZHMvTWFrZWZpbGUgZ2RiLnRyYWNlL01ha2VmaWxlIGdk Yi54bWwvTWFrZWZpbGUiCisrYWNfY29uZmlnX2ZpbGVzPSIkYWNfY29uZmlnX2ZpbGVzIE1ha2Vm aWxlIGdkYi5hZGEvTWFrZWZpbGUgZ2RiLmFyY2gvTWFrZWZpbGUgZ2RiLmFzbS9NYWtlZmlsZSBn ZGIuYmFzZS9NYWtlZmlsZSBnZGIuY2VsbC9NYWtlZmlsZSBnZGIuY3AvTWFrZWZpbGUgZ2RiLmRp c2FzbS9NYWtlZmlsZSBnZGIuZHdhcmYyL01ha2VmaWxlIGdkYi5mb3J0cmFuL01ha2VmaWxlIGdk Yi5zZXJ2ZXIvTWFrZWZpbGUgZ2RiLmphdmEvTWFrZWZpbGUgZ2RiLmhwL01ha2VmaWxlIGdkYi5o cC9nZGIub2JqZGJnL01ha2VmaWxlIGdkYi5ocC9nZGIuYmFzZS1ocC9NYWtlZmlsZSBnZGIuaHAv Z2RiLmFDQy9NYWtlZmlsZSBnZGIuaHAvZ2RiLmNvbXBhdC9NYWtlZmlsZSBnZGIuaHAvZ2RiLmRl ZmVjdHMvTWFrZWZpbGUgZ2RiLm1pL01ha2VmaWxlIGdkYi5tb2R1bGEyL01ha2VmaWxlIGdkYi5t dWx0aS9NYWtlZmlsZSBnZGIub2JqYy9NYWtlZmlsZSBnZGIub3BlbmNsL01ha2VmaWxlIGdkYi5v cHQvTWFrZWZpbGUgZ2RiLnBhc2NhbC9NYWtlZmlsZSBnZGIucGllL01ha2VmaWxlIGdkYi5weXRo b24vTWFrZWZpbGUgZ2RiLnJldmVyc2UvTWFrZWZpbGUgZ2RiLnN0YWJzL01ha2VmaWxlIGdkYi50 aHJlYWRzL01ha2VmaWxlIGdkYi50cmFjZS9NYWtlZmlsZSBnZGIueG1sL01ha2VmaWxlIgogIAog IGNhdCA+Y29uZmNhY2hlIDw8XF9BQ0VPRgogICMgVGhpcyBmaWxlIGlzIGEgc2hlbGwgc2NyaXB0 IHRoYXQgY2FjaGVzIHRoZSByZXN1bHRzIG9mIGNvbmZpZ3VyZQotQEAgLTQyMzMsNiArNDIzMyw3 IEBAIGRvCitAQCAtNDE3Myw2ICs0MTczLDcgQEAgZG8KICAgICAgImdkYi5vcGVuY2wvTWFrZWZp bGUiKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMgZ2RiLm9wZW5jbC9NYWtlZmlsZSIgOzsK ICAgICAgImdkYi5vcHQvTWFrZWZpbGUiKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMgZ2Ri Lm9wdC9NYWtlZmlsZSIgOzsKICAgICAgImdkYi5wYXNjYWwvTWFrZWZpbGUiKSBDT05GSUdfRklM RVM9IiRDT05GSUdfRklMRVMgZ2RiLnBhc2NhbC9NYWtlZmlsZSIgOzsKICsgICAgImdkYi5waWUv TWFrZWZpbGUiKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMgZ2RiLnBpZS9NYWtlZmlsZSIg OzsKICAgICAgImdkYi5weXRob24vTWFrZWZpbGUiKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklM RVMgZ2RiLnB5dGhvbi9NYWtlZmlsZSIgOzsKICAgICAgImdkYi5yZXZlcnNlL01ha2VmaWxlIikg Q09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJTEVTIGdkYi5yZXZlcnNlL01ha2VmaWxlIiA7OwotICAg ICAiZ2RiLnRocmVhZHMvTWFrZWZpbGUiKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMgZ2Ri LnRocmVhZHMvTWFrZWZpbGUiIDs7Ci1JbmRleDogZ2RiLTcuMi41MC4yMDExMDExNy9nZGIvdGVz dHN1aXRlL2dkYi5waWUvYXR0YWNoLmMKKyAgICAgImdkYi5zdGFicy9NYWtlZmlsZSIpIENPTkZJ R19GSUxFUz0iJENPTkZJR19GSUxFUyBnZGIuc3RhYnMvTWFrZWZpbGUiIDs7CitJbmRleDogZ2Ri LTcuMi41MC4yMDExMDMwNS9nZGIvdGVzdHN1aXRlL2dkYi5waWUvYXR0YWNoLmMKID09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KIC0tLSAvZGV2L251bGwJMTk3MC0wMS0wMSAwMDowMDowMC4wMDAwMDAwMDAgKzAwMDAKLSsr KyBnZGItNy4yLjUwLjIwMTEwMTE3L2dkYi90ZXN0c3VpdGUvZ2RiLnBpZS9hdHRhY2guYwkyMDEx LTAxLTE3IDE1OjUwOjAzLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjIuNTAuMjAxMTAzMDUv Z2RiL3Rlc3RzdWl0ZS9nZGIucGllL2F0dGFjaC5jCTIwMTEtMDMtMDUgMDg6MjY6MjguMDAwMDAw MDAwICswMTAwCiBAQCAtMCwwICsxLDIwIEBACiArLyogVGhpcyBwcm9ncmFtIGlzIGludGVuZGVk IHRvIGJlIHN0YXJ0ZWQgb3V0c2lkZSBvZiBnZGIsIGFuZCB0aGVuCiArICAgYXR0YWNoZWQgdG8g YnkgZ2RiLiAgVGh1cywgaXQgc2ltcGx5IHNwaW5zIGluIGEgbG9vcC4gIFRoZSBsb29wCkBAIC01 NiwxMCArNTYsMTAgQEAgSW5kZXg6IGdkYi03LjIuNTAuMjAxMTAxMTcvZ2RiL3Rlc3RzdWl0ZS9n ZGIucGllL2F0dGFjaC5jCiArICAgIH0KICsgIHJldHVybiAwOwogK30KLUluZGV4OiBnZGItNy4y LjUwLjIwMTEwMTE3L2dkYi90ZXN0c3VpdGUvZ2RiLnBpZS9hdHRhY2gyLmMKK0luZGV4OiBnZGIt Ny4yLjUwLjIwMTEwMzA1L2dkYi90ZXN0c3VpdGUvZ2RiLnBpZS9hdHRhY2gyLmMKID09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KIC0tLSAvZGV2L251bGwJMTk3MC0wMS0wMSAwMDowMDowMC4wMDAwMDAwMDAgKzAwMDAKLSsr KyBnZGItNy4yLjUwLjIwMTEwMTE3L2dkYi90ZXN0c3VpdGUvZ2RiLnBpZS9hdHRhY2gyLmMJMjAx MS0wMS0xNyAxNTo1MDowMy4wMDAwMDAwMDAgKzAxMDAKKysrKyBnZGItNy4yLjUwLjIwMTEwMzA1 L2dkYi90ZXN0c3VpdGUvZ2RiLnBpZS9hdHRhY2gyLmMJMjAxMS0wMy0wNSAwODoyNjoyOC4wMDAw MDAwMDAgKzAxMDAKIEBAIC0wLDAgKzEsMjQgQEAKICsvKiBUaGlzIHByb2dyYW0gaXMgaW50ZW5k ZWQgdG8gYmUgc3RhcnRlZCBvdXRzaWRlIG9mIGdkYiwgYW5kIHRoZW4KICsgICBhdHRhY2hlZCB0 byBieSBnZGIuICBUaHVzLCBpdCBzaW1wbHkgc3BpbnMgaW4gYSBsb29wLiAgVGhlIGxvb3AKQEAg LTg1LDEwICs4NSwxMCBAQCBJbmRleDogZ2RiLTcuMi41MC4yMDExMDExNy9nZGIvdGVzdHN1aXRl L2dkYi5waWUvYXR0YWNoMi5jCiArICAgIH0KICsgIHJldHVybiAoMCk7CiArfQotSW5kZXg6IGdk Yi03LjIuNTAuMjAxMTAxMTcvZ2RiL3Rlc3RzdWl0ZS9nZGIucGllL2JyZWFrLmMKK0luZGV4OiBn ZGItNy4yLjUwLjIwMTEwMzA1L2dkYi90ZXN0c3VpdGUvZ2RiLnBpZS9icmVhay5jCiA9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09CiAtLS0gL2Rldi9udWxsCTE5NzAtMDEtMDEgMDA6MDA6MDAuMDAwMDAwMDAwICswMDAwCi0r KysgZ2RiLTcuMi41MC4yMDExMDExNy9nZGIvdGVzdHN1aXRlL2dkYi5waWUvYnJlYWsuYwkyMDEx LTAxLTE3IDE1OjUwOjAzLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjIuNTAuMjAxMTAzMDUv Z2RiL3Rlc3RzdWl0ZS9nZGIucGllL2JyZWFrLmMJMjAxMS0wMy0wNSAwODoyNjoyOC4wMDAwMDAw MDAgKzAxMDAKIEBAIC0wLDAgKzEsMTQ2IEBACiArLyogVGhpcyB0ZXN0Y2FzZSBpcyBwYXJ0IG9m IEdEQiwgdGhlIEdOVSBkZWJ1Z2dlci4KICsKQEAgLTIzNiwxMCArMjM2LDEwIEBAIEluZGV4OiBn ZGItNy4yLjUwLjIwMTEwMTE3L2dkYi90ZXN0c3VpdGUvZ2RiLnBpZS9icmVhay5jCiArICAgIH0K ICsgIHJldHVybiAwOwogK30KLUluZGV4OiBnZGItNy4yLjUwLjIwMTEwMTE3L2dkYi90ZXN0c3Vp dGUvZ2RiLnBpZS9icmVhazEuYworSW5kZXg6IGdkYi03LjIuNTAuMjAxMTAzMDUvZ2RiL3Rlc3Rz dWl0ZS9nZGIucGllL2JyZWFrMS5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAtLS0gL2Rldi9udWxsCTE5NzAtMDEt MDEgMDA6MDA6MDAuMDAwMDAwMDAwICswMDAwCi0rKysgZ2RiLTcuMi41MC4yMDExMDExNy9nZGIv dGVzdHN1aXRlL2dkYi5waWUvYnJlYWsxLmMJMjAxMS0wMS0xNyAxNTo1MDowMy4wMDAwMDAwMDAg KzAxMDAKKysrKyBnZGItNy4yLjUwLjIwMTEwMzA1L2dkYi90ZXN0c3VpdGUvZ2RiLnBpZS9icmVh azEuYwkyMDExLTAzLTA1IDA4OjI2OjI4LjAwMDAwMDAwMCArMDEwMAogQEAgLTAsMCArMSw0NCBA QAogKy8qIFRoaXMgdGVzdGNhc2UgaXMgcGFydCBvZiBHREIsIHRoZSBHTlUgZGVidWdnZXIuCiAr CkBAIC0yODUsMTAgKzI4NSwxMCBAQCBJbmRleDogZ2RiLTcuMi41MC4yMDExMDExNy9nZGIvdGVz dHN1aXRlL2dkYi5waWUvYnJlYWsxLmMKICt2b2lkIG1hcmtlcjMgKGEsIGIpIGNoYXIgKmEsICpi OyB7fQkvKiBzZXQgYnJlYWtwb2ludCAxOCBoZXJlICovCiArdm9pZCBtYXJrZXI0IChkKSBsb25n IGQ7IHt9CQkvKiBzZXQgYnJlYWtwb2ludCAxMyBoZXJlICovCiArI2VuZGlmCi1JbmRleDogZ2Ri LTcuMi41MC4yMDExMDExNy9nZGIvdGVzdHN1aXRlL2dkYi5waWUvY29yZW1ha2VyLmMKK0luZGV4 OiBnZGItNy4yLjUwLjIwMTEwMzA1L2dkYi90ZXN0c3VpdGUvZ2RiLnBpZS9jb3JlbWFrZXIuYwog PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQogLS0tIC9kZXYvbnVsbAkxOTcwLTAxLTAxIDAwOjAwOjAwLjAwMDAwMDAwMCAr MDAwMAotKysrIGdkYi03LjIuNTAuMjAxMTAxMTcvZ2RiL3Rlc3RzdWl0ZS9nZGIucGllL2NvcmVt YWtlci5jCTIwMTEtMDEtMTcgMTU6NTA6MDMuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuMi41 MC4yMDExMDMwNS9nZGIvdGVzdHN1aXRlL2dkYi5waWUvY29yZW1ha2VyLmMJMjAxMS0wMy0wNSAw ODoyNjoyOC4wMDAwMDAwMDAgKzAxMDAKIEBAIC0wLDAgKzEsMTQyIEBACiArLyogQ29weXJpZ2h0 IDE5OTIsIDE5OTMsIDE5OTQsIDE5OTUsIDE5OTYsIDE5OTkKICsgICBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIEluYy4KQEAgLTQzMiwxMCArNDMyLDEwIEBAIEluZGV4OiBnZGItNy4yLjUwLjIw MTEwMTE3L2dkYi90ZXN0c3VpdGUvZ2RiLnBpZS9jb3JlbWFrZXIuYwogKyAgcmV0dXJuIDA7CiAr fQogKwotSW5kZXg6IGdkYi03LjIuNTAuMjAxMTAxMTcvZ2RiL3Rlc3RzdWl0ZS9nZGIucGllL2F0 dGFjaC5leHAKK0luZGV4OiBnZGItNy4yLjUwLjIwMTEwMzA1L2dkYi90ZXN0c3VpdGUvZ2RiLnBp ZS9hdHRhY2guZXhwCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09CiAtLS0gL2Rldi9udWxsCTE5NzAtMDEtMDEgMDA6MDA6 MDAuMDAwMDAwMDAwICswMDAwCi0rKysgZ2RiLTcuMi41MC4yMDExMDExNy9nZGIvdGVzdHN1aXRl L2dkYi5waWUvYXR0YWNoLmV4cAkyMDExLTAxLTE3IDE1OjUwOjAzLjAwMDAwMDAwMCArMDEwMAor KysrIGdkYi03LjIuNTAuMjAxMTAzMDUvZ2RiL3Rlc3RzdWl0ZS9nZGIucGllL2F0dGFjaC5leHAJ MjAxMS0wMy0wNSAwODoyNjoyOC4wMDAwMDAwMDAgKzAxMDAKIEBAIC0wLDAgKzEsNDIzIEBACiAr IyAgIENvcHlyaWdodCAxOTk3LCAxOTk5LCAyMDAyIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg SW5jLgogKwpAQCAtODYwLDEwICs4NjAsMTAgQEAgSW5kZXg6IGdkYi03LjIuNTAuMjAxMTAxMTcv Z2RiL3Rlc3RzdWl0ZS9nZGIucGllL2F0dGFjaC5leHAKICtkb19jYWxsX2F0dGFjaF90ZXN0cwog KwogK3JldHVybiAwCi1JbmRleDogZ2RiLTcuMi41MC4yMDExMDExNy9nZGIvdGVzdHN1aXRlL2dk Yi5waWUvYnJlYWsuZXhwCitJbmRleDogZ2RiLTcuMi41MC4yMDExMDMwNS9nZGIvdGVzdHN1aXRl L2dkYi5waWUvYnJlYWsuZXhwCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAtLS0gL2Rldi9udWxsCTE5NzAtMDEtMDEg MDA6MDA6MDAuMDAwMDAwMDAwICswMDAwCi0rKysgZ2RiLTcuMi41MC4yMDExMDExNy9nZGIvdGVz dHN1aXRlL2dkYi5waWUvYnJlYWsuZXhwCTIwMTEtMDEtMTcgMTU6NTA6MDMuMDAwMDAwMDAwICsw MTAwCisrKysgZ2RiLTcuMi41MC4yMDExMDMwNS9nZGIvdGVzdHN1aXRlL2dkYi5waWUvYnJlYWsu ZXhwCTIwMTEtMDMtMDUgMDg6MjY6MjguMDAwMDAwMDAwICswMTAwCiBAQCAtMCwwICsxLDk2NiBA QAogKyMgICBDb3B5cmlnaHQgMTk4OCwgMTk5MCwgMTk5MSwgMTk5MiwgMTk5NCwgMTk5NSwgMTk5 NiwgMTk5NywgMTk5OCwgMTk5OSwKICsjICAgMjAwMCwgMjAwMiwgMjAwMywgMjAwNApAQCAtMTgz MSwxMCArMTgzMSwxMCBAQCBJbmRleDogZ2RiLTcuMi41MC4yMDExMDExNy9nZGIvdGVzdHN1aXRl L2dkYi5waWUvYnJlYWsuZXhwCiArICAgIHNlbmRfZ2RiICJzZXQgYXJncyBtYWluXG4iCiArICAg IGdkYl9leHBlY3QgLXJlICIuKiRnZGJfcHJvbXB0ICQiIHt9CiArfQotSW5kZXg6IGdkYi03LjIu NTAuMjAxMTAxMTcvZ2RiL3Rlc3RzdWl0ZS9nZGIucGllL2NvcmVmaWxlLmV4cAorSW5kZXg6IGdk Yi03LjIuNTAuMjAxMTAzMDUvZ2RiL3Rlc3RzdWl0ZS9nZGIucGllL2NvcmVmaWxlLmV4cAogPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQogLS0tIC9kZXYvbnVsbAkxOTcwLTAxLTAxIDAwOjAwOjAwLjAwMDAwMDAwMCArMDAw MAotKysrIGdkYi03LjIuNTAuMjAxMTAxMTcvZ2RiL3Rlc3RzdWl0ZS9nZGIucGllL2NvcmVmaWxl LmV4cAkyMDExLTAxLTE3IDE1OjUwOjAzLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjIuNTAu MjAxMTAzMDUvZ2RiL3Rlc3RzdWl0ZS9nZGIucGllL2NvcmVmaWxlLmV4cAkyMDExLTAzLTA1IDA4 OjI2OjI4LjAwMDAwMDAwMCArMDEwMAogQEAgLTAsMCArMSwyMzMgQEAKICsjIENvcHlyaWdodCAx OTkyLCAxOTkzLCAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwCiArIyBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KQEAgLTIwNjksMTAgKzIwNjksMTAgQEAgSW5k ZXg6IGdkYi03LjIuNTAuMjAxMTAxMTcvZ2RiL3Rlc3RzdWl0ZS9nZGIucGllL2NvcmVmaWxlLmV4 cAogK2dkYl90ZXN0ICJ1cCIgIiNcWzAtOVxdKiAqXFswLTl4YS1mSCdcXSogaW4gLiogXFwoLipc XCkuKiIgInVwIGluIGNvcmVmaWxlLmV4cCAocmVpbml0KSIKICsKICtnZGJfdGVzdCAiY29yZSIg Ik5vIGNvcmUgZmlsZSBub3cuIgotSW5kZXg6IGdkYi03LjIuNTAuMjAxMTAxMTcvZ2RiL3Rlc3Rz dWl0ZS9nZGIucGllL01ha2VmaWxlLmluCitJbmRleDogZ2RiLTcuMi41MC4yMDExMDMwNS9nZGIv dGVzdHN1aXRlL2dkYi5waWUvTWFrZWZpbGUuaW4KID09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIC0tLSAvZGV2L251bGwJ MTk3MC0wMS0wMSAwMDowMDowMC4wMDAwMDAwMDAgKzAwMDAKLSsrKyBnZGItNy4yLjUwLjIwMTEw MTE3L2dkYi90ZXN0c3VpdGUvZ2RiLnBpZS9NYWtlZmlsZS5pbgkyMDExLTAxLTE3IDE1OjUwOjAz LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjIuNTAuMjAxMTAzMDUvZ2RiL3Rlc3RzdWl0ZS9n ZGIucGllL01ha2VmaWxlLmluCTIwMTEtMDMtMDUgMDg6MjY6MjguMDAwMDAwMDAwICswMTAwCiBA QCAtMCwwICsxLDE5IEBACiArVlBBVEggPSBAc3JjZGlyQAogK3NyY2RpciA9IEBzcmNkaXJACgpk aWZmIC0tZ2l0IGEvZ2RiLWFyY2hlci5wYXRjaCBiL2dkYi1hcmNoZXIucGF0Y2gKaW5kZXggNmJk MWVjMy4uNjkwYjAyNSAxMDA2NDQKLS0tIGEvZ2RiLWFyY2hlci5wYXRjaAorKysgYi9nZGItYXJj aGVyLnBhdGNoCkBAIC0yLDcgKzIsNyBAQCBodHRwOi8vc291cmNld2FyZS5vcmcvZ2RiL3dpa2kv UHJvamVjdEFyY2hlcgogaHR0cDovL3NvdXJjZXdhcmUub3JnL2dkYi93aWtpL0FyY2hlckJyYW5j aE1hbmFnZW1lbnQKIAogR0lUIHNuYXBzaG90OgotY29tbWl0IDY5MWE1YTFiMzAxNWUyMTk5MDQw ZWFkMjBjYzg1YmMyNzdhZjE0ZTMKK2NvbW1pdCBlODAyZTFmYjIzZDQ1NWQ2NzVkY2EwZjRkN2Q2 YzhkZjE4NDY3NzE5CiAKIGJyYW5jaCBgYXJjaGVyJyAtIHRoZSBtZXJnZSBvZiBicmFuY2hlczoK IGFyY2hlci1qYW5rcmF0b2NodmlsLXZsYQpAQCAtMTQsMjAgKzE0LDIwIEBAIGFyY2hlci10cm9t ZXktcHl0aG9uCiAKIAogZGlmZiAtLWdpdCBhL2dkYi9NYWtlZmlsZS5pbiBiL2dkYi9NYWtlZmls ZS5pbgotaW5kZXggNjM2Mzc3My4uN2JkMTAyMCAxMDA2NDQKK2luZGV4IDAwZDYyNGYuLjYzNWFj ZDMgMTAwNjQ0CiAtLS0gYS9nZGIvTWFrZWZpbGUuaW4KICsrKyBiL2dkYi9NYWtlZmlsZS5pbgog QEAgLTgwOCw3ICs4MDgsOCBAQCBhbm5vdGF0ZS5oIHNpbS1yZWduby5oIGRpY3Rpb25hcnkuaCBk ZnAuaCBtYWluLmggZnJhbWUtdW53aW5kLmgJXAogIHJlbW90ZS1maWxlaW8uaCBpMzg2LWxpbnV4 LXRkZXAuaCB2YXgtdGRlcC5oIG9iamMtbGFuZy5oIFwKICBzZW50aW5lbC1mcmFtZS5oIGJjYWNo ZS5oIHN5bWZpbGUuaCB3aW5kb3dzLXRkZXAuaCBsaW51eC10ZGVwLmggXAogIGdkYl91c2xlZXAu aCBqaXQuaCB4bWwtc3lzY2FsbC5oIG1pY3JvYmxhemUtdGRlcC5oIFwKLS1wc3ltdGFiLmggcHN5 bXByaXYuaCBwcm9nc3BhY2UuaCBiZmluLXRkZXAuaCBpYTY0LWhwdXgtdGRlcC5oIHByaW50Y21k LmgKLStwc3ltdGFiLmggcHN5bXByaXYuaCBwcm9nc3BhY2UuaCBiZmluLXRkZXAuaCBpYTY0LWhw dXgtdGRlcC5oIHByaW50Y21kLmggXAorLXBzeW10YWIuaCBwc3ltcHJpdi5oIHByb2dzcGFjZS5o IGJmaW4tdGRlcC5oIGlhNjQtaHB1eC10ZGVwLmgKKytwc3ltdGFiLmggcHN5bXByaXYuaCBwcm9n c3BhY2UuaCBiZmluLXRkZXAuaCBpYTY0LWhwdXgtdGRlcC5oIFwKICtweXRob24vcHl0aG9uLmgg cHl0aG9uL3B5dGhvbi1pbnRlcm5hbC5oCiAgCiAgIyBIZWFkZXIgZmlsZXMgdGhhdCBhbHJlYWR5 IGhhdmUgc3JjZGlyIGluIHRoZW0sIG9yIHdoaWNoIGFyZSBpbiBvYmpkaXIuCiAgCi1AQCAtMTM0 MCw2ICsxMzQxLDEyIEBAIHN0YW1wLWg6ICQoc3JjZGlyKS9jb25maWcuaW4gY29uZmlnLnN0YXR1 cworQEAgLTEzMTcsNiArMTMxOCwxMiBAQCBzdGFtcC1oOiAkKHNyY2RpcikvY29uZmlnLmluIGNv bmZpZy5zdGF0dXMKICAJICBDT05GSUdfTElOS1M9IFwKICAJICAkKFNIRUxMKSBjb25maWcuc3Rh dHVzCiAgCkBAIC00MSw3ICs0MSw3IEBAIGluZGV4IDYzNjM3NzMuLjdiZDEwMjAgMTAwNjQ0CiAg CSQoU0hFTEwpIGNvbmZpZy5zdGF0dXMgLS1yZWNoZWNrCiAgCiBkaWZmIC0tZ2l0IGEvZ2RiL2Fk YS1sYW5nLmMgYi9nZGIvYWRhLWxhbmcuYwotaW5kZXggNDY3ZTRkZi4uNTU1OTE0YyAxMDA2NDQK K2luZGV4IGQwYTEwMTQuLjMyNTM3Y2IgMTAwNjQ0CiAtLS0gYS9nZGIvYWRhLWxhbmcuYwogKysr IGIvZ2RiL2FkYS1sYW5nLmMKIEBAIC0xMTM4OSw2ICsxMTM4OSw3IEBAIGFkYV9vcGVyYXRvcl9s ZW5ndGggKGNvbnN0IHN0cnVjdCBleHByZXNzaW9uICpleHAsIGludCBwYywgaW50ICpvcGxlbnAs CkBAIC0zOTIsNyArMzkyLDcgQEAgaW5kZXggYjlhYWY1NC4uZTFmMzI0MiAxMDA2NDQKICAKICAv KiBSZXR1cm4gdGhlIGlubmVybW9zdCBzdGFjayBmcmFtZSBleGVjdXRpbmcgaW5zaWRlIG9mIEJM T0NLLCBvciBOVUxMCiBkaWZmIC0tZ2l0IGEvZ2RiL2JyZWFrcG9pbnQuYyBiL2dkYi9icmVha3Bv aW50LmMKLWluZGV4IDYyM2VmZmEuLjRiY2Q2ODEgMTAwNjQ0CitpbmRleCA1YmNhYjg3Li41Mjll YTYyIDEwMDY0NAogLS0tIGEvZ2RiL2JyZWFrcG9pbnQuYwogKysrIGIvZ2RiL2JyZWFrcG9pbnQu YwogQEAgLTYzLDYgKzYzLDcgQEAKQEAgLTQxMyw3ICs0MTMsNyBAQCBpbmRleCA2MjNlZmZhLi40 YmNkNjgxIDEwMDY0NAogIC8qIFRoaXMgZnVuY3Rpb24gaXMgdXNlZCBpbiBnZGJ0ayBzb3VyY2Vz IGFuZCB0aHVzIGNhbiBub3QgYmUgbWFkZQogICAgIHN0YXRpYy4gICovCiAgc3RydWN0IGJyZWFr cG9pbnQgKnNldF9yYXdfYnJlYWtwb2ludCAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsCi1AQCAt MjE3LDYgKzIyMSwxMCBAQCBzdGF0aWMgdm9pZCBkaXNhYmxlX3RyYWNlX2NvbW1hbmQgKGNoYXIg KiwgaW50KTsKK0BAIC0yMTgsNiArMjIyLDEwIEBAIHN0YXRpYyB2b2lkIGRpc2FibGVfdHJhY2Vf Y29tbWFuZCAoY2hhciAqLCBpbnQpOwogIAogIHN0YXRpYyB2b2lkIHRyYWNlX3Bhc3NfY29tbWFu ZCAoY2hhciAqLCBpbnQpOwogIApAQCAtNDI0LDcgKzQyNCw3IEBAIGluZGV4IDYyM2VmZmEuLjRi Y2Q2ODEgMTAwNjQ0CiAgLyogQXNzdW1pbmcgd2UncmUgY3JlYXRpbmcgYSBzdGF0aWMgdHJhY2Vw b2ludCwgZG9lcyBTIGxvb2sgbGlrZSBhCiAgICAgc3RhdGljIHRyYWNlcG9pbnQgbWFya2VyIHNw ZWMgKCItbSBNQVJLRVJfSUQiKT8gICovCiAgI2RlZmluZSBpc19tYXJrZXJfc3BlYyhzKQkJCQkJ CVwKLUBAIC0xMTQ4LDYgKzExNTYsMjIgQEAgd2F0Y2hwb2ludF9pbl90aHJlYWRfc2NvcGUgKHN0 cnVjdCBicmVha3BvaW50ICpiKQorQEAgLTExNDksNiArMTE1NywyMiBAQCB3YXRjaHBvaW50X2lu X3RocmVhZF9zY29wZSAoc3RydWN0IGJyZWFrcG9pbnQgKmIpCiAgCSAgICAgICYmICFpc19leGVj dXRpbmcgKGluZmVyaW9yX3B0aWQpKSk7CiAgfQogIApAQCAtNDQ3LDcgKzQ0Nyw3IEBAIGluZGV4 IDYyM2VmZmEuLjRiY2Q2ODEgMTAwNjQ0CiAgLyogQXNzdW1pbmcgdGhhdCBCIGlzIGEgd2F0Y2hw b2ludDoKICAgICAtIFJlcGFyc2Ugd2F0Y2hwb2ludCBleHByZXNzaW9uLCBpZiBSRVBBUlNFIGlz IG5vbi16ZXJvCiAgICAgLSBFdmFsdWF0ZSBleHByZXNzaW9uIGFuZCBzdG9yZSB0aGUgcmVzdWx0 IGluIEItPnZhbAotQEAgLTEyMDcsMTIgKzEyMzEsMTcgQEAgdXBkYXRlX3dhdGNocG9pbnQgKHN0 cnVjdCBicmVha3BvaW50ICpiLCBpbnQgcmVwYXJzZSkKK0BAIC0xMjA4LDEyICsxMjMyLDE3IEBA IHVwZGF0ZV93YXRjaHBvaW50IChzdHJ1Y3QgYnJlYWtwb2ludCAqYiwgaW50IHJlcGFyc2UpCiAg ICBzdHJ1Y3QgZnJhbWVfaWQgc2F2ZWRfZnJhbWVfaWQ7CiAgICBpbnQgZnJhbWVfc2F2ZWQ7CiAg CkBAIC00NjUsNyArNDY1LDcgQEAgaW5kZXggNjIzZWZmYS4uNGJjZDY4MSAxMDA2NDQKICAgIGlm IChiLT5kaXNwb3NpdGlvbiA9PSBkaXNwX2RlbF9hdF9uZXh0X3N0b3ApCiAgICAgIHJldHVybjsK ICAgCi1AQCAtMTQ0MiwxMyArMTQ3MSw3IEBAIHVwZGF0ZV93YXRjaHBvaW50IChzdHJ1Y3QgYnJl YWtwb2ludCAqYiwgaW50IHJlcGFyc2UpCitAQCAtMTQ0MywxMyArMTQ3Miw3IEBAIHVwZGF0ZV93 YXRjaHBvaW50IChzdHJ1Y3QgYnJlYWtwb2ludCAqYiwgaW50IHJlcGFyc2UpCiAgV2F0Y2hwb2lu dCAlZCBkZWxldGVkIGJlY2F1c2UgdGhlIHByb2dyYW0gaGFzIGxlZnQgdGhlIGJsb2NrXG5cCiAg aW4gd2hpY2ggaXRzIGV4cHJlc3Npb24gaXMgdmFsaWQuXG4iKSwKICAJCSAgICAgICBiLT5udW1i ZXIpOwpAQCAtNDgwLDcgKzQ4MCw3IEBAIGluZGV4IDYyM2VmZmEuLjRiY2Q2ODEgMTAwNjQ0CiAg ICAgIH0KICAKICAgIC8qIFJlc3RvcmUgdGhlIHNlbGVjdGVkIGZyYW1lLiAgKi8KLUBAIC0xODM5 LDYgKzE4NjIsNyBAQCBpbnNlcnRfYnJlYWtwb2ludF9sb2NhdGlvbnMgKHZvaWQpCitAQCAtMTg0 MCw2ICsxODYzLDcgQEAgaW5zZXJ0X2JyZWFrcG9pbnRfbG9jYXRpb25zICh2b2lkKQogICAgaW50 IHZhbCA9IDA7CiAgICBpbnQgZGlzYWJsZWRfYnJlYWtzID0gMDsKICAgIGludCBod19icmVha3Bv aW50X2Vycm9yID0gMDsKQEAgLTQ4OCw3ICs0ODgsNyBAQCBpbmRleCA2MjNlZmZhLi40YmNkNjgx IDEwMDY0NAogIAogICAgc3RydWN0IHVpX2ZpbGUgKnRtcF9lcnJvcl9zdHJlYW0gPSBtZW1fZmls ZW9wZW4gKCk7CiAgICBzdHJ1Y3QgY2xlYW51cCAqY2xlYW51cHMgPSBtYWtlX2NsZWFudXBfdWlf ZmlsZV9kZWxldGUgKHRtcF9lcnJvcl9zdHJlYW0pOwotQEAgLTE4NjYsOSArMTg5MCwxMyBAQCBp bnNlcnRfYnJlYWtwb2ludF9sb2NhdGlvbnMgKHZvaWQpCitAQCAtMTg2Nyw5ICsxODkxLDEzIEBA IGluc2VydF9icmVha3BvaW50X2xvY2F0aW9ucyAodm9pZCkKICAgICAgICAvKiBGb3IgdGFyZ2V0 cyB0aGF0IHN1cHBvcnQgZ2xvYmFsIGJyZWFrcG9pbnRzLCB0aGVyZSdzIG5vIG5lZWQKICAJIHRv IHNlbGVjdCBhbiBpbmZlcmlvciB0byBpbnNlcnQgYnJlYWtwb2ludCB0by4gIEluIGZhY3QsIGV2 ZW4KICAJIGlmIHdlIGFyZW4ndCBhdHRhY2hlZCB0byBhbnkgcHJvY2VzcyB5ZXQsIHdlIHNob3Vs ZCBzdGlsbApAQCAtNTA0LDcgKzUwNCw3IEBAIGluZGV4IDYyM2VmZmEuLjRiY2Q2ODEgMTAwNjQ0 CiAgCWNvbnRpbnVlOwogIAogICAgICAgIHZhbCA9IGluc2VydF9icF9sb2NhdGlvbiAoYmwsIHRt cF9lcnJvcl9zdHJlYW0sICZkaXNhYmxlZF9icmVha3MsCi1AQCAtMTg5MiwxMyArMTkyMCwxOSBA QCBpbnNlcnRfYnJlYWtwb2ludF9sb2NhdGlvbnMgKHZvaWQpCitAQCAtMTg5MywxMyArMTkyMSwx OSBAQCBpbnNlcnRfYnJlYWtwb2ludF9sb2NhdGlvbnMgKHZvaWQpCiAgCiAgICAgICAgaWYgKGJw dC0+ZGlzcG9zaXRpb24gPT0gZGlzcF9kZWxfYXRfbmV4dF9zdG9wKQogIAljb250aW51ZTsKQEAg LTUzMCw3ICs1MzAsNyBAQCBpbmRleCA2MjNlZmZhLi40YmNkNjgxIDEwMDY0NAogICAgICAgIGlm IChzb21lX2ZhaWxlZCkKICAJewogIAkgIGZvciAobG9jID0gYnB0LT5sb2M7IGxvYzsgbG9jID0g bG9jLT5uZXh0KQotQEAgLTM0ODIsNiArMzUxNiw4IEBAIHByaW50X2l0X3R5cGljYWwgKGJwc3Rh dCBicykKK0BAIC0zNDc5LDYgKzM1MTMsOCBAQCBwcmludF9pdF90eXBpY2FsIChicHN0YXQgYnMp CiAgICAgIGNhc2UgYnBfdHJhY2Vwb2ludDoKICAgICAgY2FzZSBicF9mYXN0X3RyYWNlcG9pbnQ6 CiAgICAgIGNhc2UgYnBfaml0X2V2ZW50OgpAQCAtNTM5LDcgKzUzOSw3IEBAIGluZGV4IDYyM2Vm ZmEuLjRiY2Q2ODEgMTAwNjQ0CiAgICAgIGRlZmF1bHQ6CiAgICAgICAgcmVzdWx0ID0gUFJJTlRf VU5LTk9XTjsKICAgICAgICBicmVhazsKLUBAIC0zNzAzLDYgKzM3MzksOCBAQCB3YXRjaHBvaW50 X2NoZWNrICh2b2lkICpwKQorQEAgLTM3MDQsNiArMzc0MCw4IEBAIHdhdGNocG9pbnRfY2hlY2sg KHZvaWQgKnApCiAgICBnZGJfYXNzZXJ0IChicy0+YnJlYWtwb2ludF9hdCAhPSBOVUxMKTsKICAg IGIgPSBicy0+YnJlYWtwb2ludF9hdDsKICAKQEAgLTU0OCw3ICs1NDgsNyBAQCBpbmRleCA2MjNl ZmZhLi40YmNkNjgxIDEwMDY0NAogICAgLyogSWYgdGhpcyBpcyBhIGxvY2FsIHdhdGNocG9pbnQs IHdlIG9ubHkgd2FudCB0byBjaGVjayBpZiB0aGUKICAgICAgIHdhdGNocG9pbnQgZnJhbWUgaXMg aW4gc2NvcGUgaWYgdGhlIGN1cnJlbnQgdGhyZWFkIGlzIHRoZSB0aHJlYWQKICAgICAgIHRoYXQg d2FzIHVzZWQgdG8gY3JlYXRlIHRoZSB3YXRjaHBvaW50LiAgKi8KLUBAIC0zODEyLDEzICszODUw LDcgQEAgd2F0Y2hwb2ludF9jaGVjayAodm9pZCAqcCkKK0BAIC0zODEzLDEzICszODUxLDcgQEAg d2F0Y2hwb2ludF9jaGVjayAodm9pZCAqcCkKICAJCSAgICIgZGVsZXRlZCBiZWNhdXNlIHRoZSBw cm9ncmFtIGhhcyBsZWZ0IHRoZSBibG9jayBpblxuXAogIHdoaWNoIGl0cyBleHByZXNzaW9uIGlz IHZhbGlkLlxuIik7ICAgICAKICAKQEAgLTU2Myw3ICs1NjMsNyBAQCBpbmRleCA2MjNlZmZhLi40 YmNkNjgxIDEwMDY0NAogIAogICAgICAgIHJldHVybiBXUF9ERUxFVEVEOwogICAgICB9Ci1AQCAt NDAyMyw5ICs0MDU1LDcgQEAgYnBzdGF0X2NoZWNrX3dhdGNocG9pbnQgKGJwc3RhdCBicykKK0BA IC00MDI0LDkgKzQwNTYsNyBAQCBicHN0YXRfY2hlY2tfd2F0Y2hwb2ludCAoYnBzdGF0IGJzKQog IAkgICAgY2FzZSAwOgogIAkgICAgICAvKiBFcnJvciBmcm9tIGNhdGNoX2Vycm9ycy4gICovCiAg CSAgICAgIHByaW50Zl9maWx0ZXJlZCAoXygiV2F0Y2hwb2ludCAlZCBkZWxldGVkLlxuIiksIGIt Pm51bWJlcik7CkBAIC01NzQsNyArNTc0LDcgQEAgaW5kZXggNjIzZWZmYS4uNGJjZDY4MSAxMDA2 NDQKICAJICAgICAgLyogV2UndmUgYWxyZWFkeSBwcmludGVkIHdoYXQgbmVlZHMgdG8gYmUgcHJp bnRlZC4gICovCiAgCSAgICAgIGJzLT5wcmludF9pdCA9IHByaW50X2l0X2RvbmU7CiAgCSAgICAg IGJyZWFrOwotQEAgLTQyMzEsNyArNDI2MSw3IEBAIGJwc3RhdF9zdG9wX3N0YXR1cyAoc3RydWN0 IGFkZHJlc3Nfc3BhY2UgKmFzcGFjZSwKK0BAIC00MjMyLDcgKzQyNjIsNyBAQCBicHN0YXRfc3Rv cF9zdGF0dXMgKHN0cnVjdCBhZGRyZXNzX3NwYWNlICphc3BhY2UsCiAgCSAgICAgd2F0Y2hwb2lu dCBhcyB0cmlnZ2VyZWQgc28gdGhhdCB3ZSB3aWxsIGhhbmRsZSB0aGUKICAJICAgICBvdXQtb2Yt c2NvcGUgZXZlbnQuICBXZSdsbCBnZXQgdG8gdGhlIHdhdGNocG9pbnQgbmV4dAogIAkgICAgIGl0 ZXJhdGlvbi4gICovCkBAIC01ODMsNyArNTgzLDcgQEAgaW5kZXggNjIzZWZmYS4uNGJjZDY4MSAx MDA2NDQKICAJICAgIGItPnJlbGF0ZWRfYnJlYWtwb2ludC0+d2F0Y2hwb2ludF90cmlnZ2VyZWQg PSB3YXRjaF90cmlnZ2VyZWRfeWVzOwogIAl9CiAgICAgIH0KLUBAIC00MzUzLDcgKzQzODMsNyBA QCBoYW5kbGVfaml0X2V2ZW50ICh2b2lkKQorQEAgLTQzNTQsNyArNDM4NCw3IEBAIGhhbmRsZV9q aXRfZXZlbnQgKHZvaWQpCiAgLyogRGVjaWRlIHdoYXQgaW5mcnVuIG5lZWRzIHRvIGRvIHdpdGgg dGhpcyBicHN0YXQuICAqLwogIAogIHN0cnVjdCBicHN0YXRfd2hhdApAQCAtNTkyLDcgKzU5Miw3 IEBAIGluZGV4IDYyM2VmZmEuLjRiY2Q2ODEgMTAwNjQ0CiAgewogICAgc3RydWN0IGJwc3RhdF93 aGF0IHJldHZhbDsKICAgIC8qIFdlIG5lZWQgdG8gZGVmZXIgY2FsbGluZyBgc29saWJfYWRkJywg YXMgYWRkaW5nIG5ldyBzeW1ib2xzCi1AQCAtNDM2MSwxMiArNDM5MSwxMyBAQCBicHN0YXRfd2hh dCAoYnBzdGF0IGJzKQorQEAgLTQzNjIsMTIgKzQzOTIsMTMgQEAgYnBzdGF0X3doYXQgKGJwc3Rh dCBicykKICAgICAgIGFuZCBoZW5jZSBtYXkgY2xlYXIgdW5wcm9jZXNzZWQgZW50cmllcyBpbiB0 aGUgQlMgY2hhaW4uICAqLwogICAgaW50IHNobGliX2V2ZW50ID0gMDsKICAgIGludCBqaXRfZXZl bnQgPSAwOwpAQCAtNjA3LDcgKzYwNyw3IEBAIGluZGV4IDYyM2VmZmEuLjRiY2Q2ODEgMTAwNjQ0 CiAgICAgIHsKICAgICAgICAvKiBFeHRyYWN0IHRoaXMgQlMncyBhY3Rpb24uICBBZnRlciBwcm9j ZXNzaW5nIGVhY2ggQlMsIHdlIGNoZWNrCiAgCSBpZiBpdHMgYWN0aW9uIG92ZXJyaWRlcyBhbGwg d2UndmUgc2VlbSBzbyBmYXIuICAqLwotQEAgLTQ0OTYsNiArNDUyNywyMCBAQCBicHN0YXRfd2hh dCAoYnBzdGF0IGJzKQorQEAgLTQ0OTcsNiArNDUyOCwyMCBAQCBicHN0YXRfd2hhdCAoYnBzdGF0 IGJzKQogIAkgICAgIG91dCBhbHJlYWR5LiAgKi8KICAJICBpbnRlcm5hbF9lcnJvciAoX19GSUxF X18sIF9fTElORV9fLAogIAkJCSAgXygiYnBzdGF0X3doYXQ6IHRyYWNlcG9pbnQgZW5jb3VudGVy ZWQiKSk7CkBAIC02MjgsNyArNjI4LDcgQEAgaW5kZXggNjIzZWZmYS4uNGJjZDY4MSAxMDA2NDQK ICAJZGVmYXVsdDoKICAJICBpbnRlcm5hbF9lcnJvciAoX19GSUxFX18sIF9fTElORV9fLAogIAkJ CSAgXygiYnBzdGF0X3doYXQ6IHVuaGFuZGxlZCBicHR5cGUgJWQiKSwgKGludCkgYnB0eXBlKTsK LUBAIC00NTMzLDYgKzQ1NzgsMjEgQEAgYnBzdGF0X3doYXQgKGJwc3RhdCBicykKK0BAIC00NTM0 LDYgKzQ1NzksMjEgQEAgYnBzdGF0X3doYXQgKGJwc3RhdCBicykKICAgICAgICBoYW5kbGVfaml0 X2V2ZW50ICgpOwogICAgICB9CiAgCkBAIC02NTAsNyArNjUwLDcgQEAgaW5kZXggNjIzZWZmYS4u NGJjZDY4MSAxMDA2NDQKICAgIHJldHVybiByZXR2YWw7CiAgfQogIAotQEAgLTQ2NTQsNiArNDcx NCw4IEBAIGJwdHlwZV9zdHJpbmcgKGVudW0gYnB0eXBlIHR5cGUpCitAQCAtNDY4OSw2ICs0NzQ5 LDggQEAgYnB0eXBlX3N0cmluZyAoZW51bSBicHR5cGUgdHlwZSkKICAgICAge2JwX2Zhc3RfdHJh Y2Vwb2ludCwgImZhc3QgdHJhY2Vwb2ludCJ9LAogICAgICB7YnBfc3RhdGljX3RyYWNlcG9pbnQs ICJzdGF0aWMgdHJhY2Vwb2ludCJ9LAogICAgICB7YnBfaml0X2V2ZW50LCAiaml0IGV2ZW50cyJ9 LApAQCAtNjU5LDcgKzY1OSw3IEBAIGluZGV4IDYyM2VmZmEuLjRiY2Q2ODEgMTAwNjQ0CiAgICB9 OwogIAogICAgaWYgKCgoaW50KSB0eXBlID49IChzaXplb2YgKGJwdHlwZXMpIC8gc2l6ZW9mIChi cHR5cGVzWzBdKSkpCi1AQCAtNDgwMSw2ICs0ODYzLDggQEAgcHJpbnRfb25lX2JyZWFrcG9pbnRf bG9jYXRpb24gKHN0cnVjdCBicmVha3BvaW50ICpiLAorQEAgLTQ4MjMsNiArNDg4NSw4IEBAIHBy aW50X29uZV9icmVha3BvaW50X2xvY2F0aW9uIChzdHJ1Y3QgYnJlYWtwb2ludCAqYiwKICAgICAg ICBjYXNlIGJwX2Zhc3RfdHJhY2Vwb2ludDoKICAgICAgICBjYXNlIGJwX3N0YXRpY190cmFjZXBv aW50OgogICAgICAgIGNhc2UgYnBfaml0X2V2ZW50OgpAQCAtNjY4LDcgKzY2OCw3IEBAIGluZGV4 IDYyM2VmZmEuLjRiY2Q2ODEgMTAwNjQ0CiAgCWlmIChvcHRzLmFkZHJlc3NwcmludCkKICAJICB7 CiAgCSAgICBhbm5vdGF0ZV9maWVsZCAoNCk7Ci1AQCAtNTA4Miw3ICs1MTQ2LDggQEAgdXNlcl9z ZXR0YWJsZV9icmVha3BvaW50IChjb25zdCBzdHJ1Y3QgYnJlYWtwb2ludCAqYikKK0BAIC01MDk4 LDcgKzUxNjIsOCBAQCB1c2VyX3NldHRhYmxlX2JyZWFrcG9pbnQgKGNvbnN0IHN0cnVjdCBicmVh a3BvaW50ICpiKQogIAkgIHx8IGItPnR5cGUgPT0gYnBfY2F0Y2hwb2ludAogIAkgIHx8IGItPnR5 cGUgPT0gYnBfaGFyZHdhcmVfYnJlYWtwb2ludAogIAkgIHx8IGlzX3RyYWNlcG9pbnQgKGIpCkBA IC02NzgsNyArNjc4LDcgQEAgaW5kZXggNjIzZWZmYS4uNGJjZDY4MSAxMDA2NDQKICB9CiAgCiAg LyogUmV0dXJuIHRydWUgaWYgdGhpcyBicmVha3BvaW50IHdhcyBzZXQgYnkgdGhlIHVzZXIsIGZh bHNlIGlmIGl0IGlzCi1AQCAtNTU3MSw2ICs1NjM2LDggQEAgYWxsb2NhdGVfYnBfbG9jYXRpb24g KHN0cnVjdCBicmVha3BvaW50ICpicHQpCitAQCAtNTU5NCw2ICs1NjU5LDggQEAgYWxsb2NhdGVf YnBfbG9jYXRpb24gKHN0cnVjdCBicmVha3BvaW50ICpicHQpCiAgICAgIGNhc2UgYnBfbG9uZ2pt cF9tYXN0ZXI6CiAgICAgIGNhc2UgYnBfc3RkX3Rlcm1pbmF0ZV9tYXN0ZXI6CiAgICAgIGNhc2Ug YnBfZXhjZXB0aW9uX21hc3RlcjoKQEAgLTY4Nyw3ICs2ODcsNyBAQCBpbmRleCA2MjNlZmZhLi40 YmNkNjgxIDEwMDY0NAogICAgICAgIGxvYy0+bG9jX3R5cGUgPSBicF9sb2Nfc29mdHdhcmVfYnJl YWtwb2ludDsKICAgICAgICBicmVhazsKICAgICAgY2FzZSBicF9oYXJkd2FyZV9icmVha3BvaW50 OgotQEAgLTU2NjAsNiArNTcyNyw3IEBAIHNldF9yYXdfYnJlYWtwb2ludF93aXRob3V0X2xvY2F0 aW9uIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwKK0BAIC01NjgzLDYgKzU3NTAsNyBAQCBzZXRf cmF3X2JyZWFrcG9pbnRfd2l0aG91dF9sb2NhdGlvbiAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gs CiAgICBiLT5vcHMgPSBOVUxMOwogICAgYi0+Y29uZGl0aW9uX25vdF9wYXJzZWQgPSAwOwogICAg Yi0+cHlfYnBfb2JqZWN0ID0gTlVMTDsKQEAgLTY5NSw3ICs2OTUsNyBAQCBpbmRleCA2MjNlZmZh Li40YmNkNjgxIDEwMDY0NAogIAogICAgLyogQWRkIHRoaXMgYnJlYWtwb2ludCB0byB0aGUgZW5k IG9mIHRoZSBjaGFpbiBzbyB0aGF0IGEgbGlzdCBvZgogICAgICAgYnJlYWtwb2ludHMgd2lsbCBj b21lIG91dCBpbiBvcmRlciBvZiBpbmNyZWFzaW5nIG51bWJlcnMuICAqLwotQEAgLTU2NzgsNyAr NTc0Niw3IEBAIHNldF9yYXdfYnJlYWtwb2ludF93aXRob3V0X2xvY2F0aW9uIChzdHJ1Y3QgZ2Ri YXJjaCAqZ2RiYXJjaCwKK0BAIC01NzAxLDcgKzU3NjksNyBAQCBzZXRfcmF3X2JyZWFrcG9pbnRf d2l0aG91dF9sb2NhdGlvbiAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsCiAgCiAgLyogSW5pdGlh bGl6ZSBsb2MtPmZ1bmN0aW9uX25hbWUuICAqLwogIHN0YXRpYyB2b2lkCkBAIC03MDQsNyArNzA0 LDcgQEAgaW5kZXggNjIzZWZmYS4uNGJjZDY4MSAxMDA2NDQKICB7CiAgICBnZGJfYXNzZXJ0IChs b2MtPm93bmVyICE9IE5VTEwpOwogIAotQEAgLTU2ODYsOCArNTc1NCwyOSBAQCBzZXRfYnJlYWtw b2ludF9sb2NhdGlvbl9mdW5jdGlvbiAoc3RydWN0IGJwX2xvY2F0aW9uICpsb2MpCitAQCAtNTcw OSw4ICs1Nzc3LDI5IEBAIHNldF9icmVha3BvaW50X2xvY2F0aW9uX2Z1bmN0aW9uIChzdHJ1Y3Qg YnBfbG9jYXRpb24gKmxvYykKICAgICAgICB8fCBsb2MtPm93bmVyLT50eXBlID09IGJwX2hhcmR3 YXJlX2JyZWFrcG9pbnQKICAgICAgICB8fCBpc190cmFjZXBvaW50IChsb2MtPm93bmVyKSkKICAg ICAgewpAQCAtNzM2LDcgKzczNiw3IEBAIGluZGV4IDYyM2VmZmEuLjRiY2Q2ODEgMTAwNjQ0CiAg ICAgICAgaWYgKGxvYy0+ZnVuY3Rpb25fbmFtZSkKICAJbG9jLT5mdW5jdGlvbl9uYW1lID0geHN0 cmR1cCAobG9jLT5mdW5jdGlvbl9uYW1lKTsKICAgICAgfQotQEAgLTU3NjIsNyArNTg1MSw4IEBA IHNldF9yYXdfYnJlYWtwb2ludCAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsCitAQCAtNTc4NSw3 ICs1ODc0LDggQEAgc2V0X3Jhd19icmVha3BvaW50IChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwK ICAgIGItPmxvYy0+c2VjdGlvbiA9IHNhbC5zZWN0aW9uOwogICAgYi0+bGluZV9udW1iZXIgPSBz YWwubGluZTsKICAKQEAgLTc0Niw3ICs3NDYsNyBAQCBpbmRleCA2MjNlZmZhLi40YmNkNjgxIDEw MDY0NAogIAogICAgYnJlYWtwb2ludHNfY2hhbmdlZCAoKTsKICAKLUBAIC02ODc5LDcgKzY5Njks NyBAQCBjbG9uZV9tb21lbnRhcnlfYnJlYWtwb2ludCAoc3RydWN0IGJyZWFrcG9pbnQgKm9yaWcp CitAQCAtNjkwMiw3ICs2OTkyLDcgQEAgY2xvbmVfbW9tZW50YXJ5X2JyZWFrcG9pbnQgKHN0cnVj dCBicmVha3BvaW50ICpvcmlnKQogIAogICAgY29weSA9IHNldF9yYXdfYnJlYWtwb2ludF93aXRo b3V0X2xvY2F0aW9uIChvcmlnLT5nZGJhcmNoLCBvcmlnLT50eXBlKTsKICAgIGNvcHktPmxvYyA9 IGFsbG9jYXRlX2JwX2xvY2F0aW9uIChjb3B5KTsKQEAgLTc1NSw3ICs3NTUsNyBAQCBpbmRleCA2 MjNlZmZhLi40YmNkNjgxIDEwMDY0NAogIAogICAgY29weS0+bG9jLT5nZGJhcmNoID0gb3JpZy0+ bG9jLT5nZGJhcmNoOwogICAgY29weS0+bG9jLT5yZXF1ZXN0ZWRfYWRkcmVzcyA9IG9yaWctPmxv Yy0+cmVxdWVzdGVkX2FkZHJlc3M7Ci1AQCAtNjk3OSw2ICs3MDY5LDcgQEAgbWVudGlvbiAoc3Ry dWN0IGJyZWFrcG9pbnQgKmIpCitAQCAtNzAwMiw2ICs3MDkyLDcgQEAgbWVudGlvbiAoc3RydWN0 IGJyZWFrcG9pbnQgKmIpCiAgCWRvX2NsZWFudXBzICh1aV9vdXRfY2hhaW4pOwogIAlicmVhazsK ICAgICAgICBjYXNlIGJwX2JyZWFrcG9pbnQ6CkBAIC03NjMsNyArNzYzLDcgQEAgaW5kZXggNjIz ZWZmYS4uNGJjZDY4MSAxMDA2NDQKICAJaWYgKHVpX291dF9pc19taV9saWtlX3AgKHVpb3V0KSkK ICAJICB7CiAgCSAgICBzYXlfd2hlcmUgPSAwOwotQEAgLTY5ODksNiArNzA4MCw4IEBAIG1lbnRp b24gKHN0cnVjdCBicmVha3BvaW50ICpiKQorQEAgLTcwMTIsNiArNzEwMyw4IEBAIG1lbnRpb24g KHN0cnVjdCBicmVha3BvaW50ICpiKQogIAllbHNlCiAgCSAgcHJpbnRmX2ZpbHRlcmVkIChfKCJC cmVha3BvaW50IikpOwogIAlwcmludGZfZmlsdGVyZWQgKF8oIiAlZCIpLCBiLT5udW1iZXIpOwpA QCAtNzcyLDcgKzc3Miw3IEBAIGluZGV4IDYyM2VmZmEuLjRiY2Q2ODEgMTAwNjQ0CiAgCXNheV93 aGVyZSA9IDE7CiAgCWJyZWFrOwogICAgICAgIGNhc2UgYnBfaGFyZHdhcmVfYnJlYWtwb2ludDoK LUBAIC03MDQ4LDYgKzcxNDEsNyBAQCBtZW50aW9uIChzdHJ1Y3QgYnJlYWtwb2ludCAqYikKK0BA IC03MDcxLDYgKzcxNjQsNyBAQCBtZW50aW9uIChzdHJ1Y3QgYnJlYWtwb2ludCAqYikKICAgICAg ICBjYXNlIGJwX2xvbmdqbXBfbWFzdGVyOgogICAgICAgIGNhc2UgYnBfc3RkX3Rlcm1pbmF0ZV9t YXN0ZXI6CiAgICAgICAgY2FzZSBicF9leGNlcHRpb25fbWFzdGVyOgpAQCAtNzgwLDcgKzc4MCw3 IEBAIGluZGV4IDYyM2VmZmEuLjRiY2Q2ODEgMTAwNjQ0CiAgCWJyZWFrOwogICAgICAgIH0KICAK LUBAIC03MTA4LDcgKzcyMDIsOCBAQCBhZGRfbG9jYXRpb25fdG9fYnJlYWtwb2ludCAoc3RydWN0 IGJyZWFrcG9pbnQgKmIsCitAQCAtNzEzMSw3ICs3MjI1LDggQEAgYWRkX2xvY2F0aW9uX3RvX2Jy ZWFrcG9pbnQgKHN0cnVjdCBicmVha3BvaW50ICpiLAogICAgZ2RiX2Fzc2VydCAobG9jLT5wc3Bh Y2UgIT0gTlVMTCk7CiAgICBsb2MtPnNlY3Rpb24gPSBzYWwtPnNlY3Rpb247CiAgCkBAIC03OTAs NyArNzkwLDcgQEAgaW5kZXggNjIzZWZmYS4uNGJjZDY4MSAxMDA2NDQKICAgIHJldHVybiBsb2M7 CiAgfQogIAwKLUBAIC04NTQyLDYgKzg2MzcsNyBAQCB3YXRjaF9jb21tYW5kXzEgKGNoYXIgKmFy ZywgaW50IGFjY2Vzc2ZsYWcsIGludCBmcm9tX3R0eSwKK0BAIC04NTY2LDYgKzg2NjEsNyBAQCB3 YXRjaF9jb21tYW5kXzEgKGNoYXIgKmFyZywgaW50IGFjY2Vzc2ZsYWcsIGludCBmcm9tX3R0eSwK ICAgIGIgPSBzZXRfcmF3X2JyZWFrcG9pbnRfd2l0aG91dF9sb2NhdGlvbiAoTlVMTCwgYnBfdHlw ZSk7CiAgICBzZXRfYnJlYWtwb2ludF9udW1iZXIgKGludGVybmFsLCBiKTsKICAgIGItPnRocmVh ZCA9IHRocmVhZDsKQEAgLTc5OCw3ICs3OTgsNyBAQCBpbmRleCA2MjNlZmZhLi40YmNkNjgxIDEw MDY0NAogICAgYi0+ZGlzcG9zaXRpb24gPSBkaXNwX2RvbnR0b3VjaDsKICAgIGItPmV4cCA9IGV4 cDsKICAgIGItPmV4cF92YWxpZF9ibG9jayA9IGV4cF92YWxpZF9ibG9jazsKLUBAIC05NzA0LDYg Kzk4MDAsOSBAQCB1cGRhdGVfZ2xvYmFsX2xvY2F0aW9uX2xpc3QgKGludCBzaG91bGRfaW5zZXJ0 KQorQEAgLTk3MjgsNiArOTgyNCw5IEBAIHVwZGF0ZV9nbG9iYWxfbG9jYXRpb25fbGlzdCAoaW50 IHNob3VsZF9pbnNlcnQpCiAgICAgICAgaW50IGtlZXBfaW5fdGFyZ2V0ID0gMDsKICAgICAgICBp bnQgcmVtb3ZlZCA9IDA7CiAgCkBAIC04MDgsNyArODA4LDcgQEAgaW5kZXggNjIzZWZmYS4uNGJj ZDY4MSAxMDA2NDQKICAgICAgICAvKiBTa2lwIExPQ1AgZW50cmllcyB3aGljaCB3aWxsIGRlZmlu aXRlbHkgbmV2ZXIgYmUgbmVlZGVkLgogIAkgU3RvcCBlaXRoZXIgYXQgb3IgYmVpbmcgdGhlIG9u ZSBtYXRjaGluZyBPTERfTE9DLiAgKi8KICAgICAgICB3aGlsZSAobG9jcCA8IGJwX2xvY2F0aW9u ICsgYnBfbG9jYXRpb25fY291bnQKLUBAIC0xMDAyMCwxMiArMTAxMTksMjAgQEAgZGVsZXRlX2Jy ZWFrcG9pbnQgKHN0cnVjdCBicmVha3BvaW50ICpicHQpCitAQCAtMTAwNDQsMTIgKzEwMTQzLDIw IEBAIGRlbGV0ZV9icmVha3BvaW50IChzdHJ1Y3QgYnJlYWtwb2ludCAqYnB0KQogIAogICAgLyog QXQgbGVhc3QgYXZvaWQgdGhpcyBzdGFsZSByZWZlcmVuY2UgdW50aWwgdGhlIHJlZmVyZW5jZSBj b3VudGluZwogICAgICAgb2YgYnJlYWtwb2ludHMgZ2V0cyByZXNvbHZlZC4gICovCkBAIC04MzQs NyArODM0LDcgQEAgaW5kZXggNjIzZWZmYS4uNGJjZDY4MSAxMDA2NDQKICAgICAgfQogIAogICAg b2JzZXJ2ZXJfbm90aWZ5X2JyZWFrcG9pbnRfZGVsZXRlZCAoYnB0LT5udW1iZXIpOwotQEAgLTEw MzU2LDYgKzEwNDYzLDkgQEAgdXBkYXRlX2JyZWFrcG9pbnRfbG9jYXRpb25zIChzdHJ1Y3QgYnJl YWtwb2ludCAqYiwKK0BAIC0xMDM4MCw2ICsxMDQ4Nyw5IEBAIHVwZGF0ZV9icmVha3BvaW50X2xv Y2F0aW9ucyAoc3RydWN0IGJyZWFrcG9pbnQgKmIsCiAgICAgIHJldHVybjsKICAKICAgIGItPmxv YyA9IE5VTEw7CkBAIC04NDQsNyArODQ0LDcgQEAgaW5kZXggNjIzZWZmYS4uNGJjZDY4MSAxMDA2 NDQKICAKICAgIGZvciAoaSA9IDA7IGkgPCBzYWxzLm5lbHRzOyArK2kpCiAgICAgIHsKLUBAIC0x MDM4MywxMSArMTA0OTMsNyBAQCB1cGRhdGVfYnJlYWtwb2ludF9sb2NhdGlvbnMgKHN0cnVjdCBi cmVha3BvaW50ICpiLAorQEAgLTEwNDA3LDExICsxMDUxNyw3IEBAIHVwZGF0ZV9icmVha3BvaW50 X2xvY2F0aW9ucyAoc3RydWN0IGJyZWFrcG9pbnQgKmIsCiAgCSAgICB9CiAgCX0KICAKQEAgLTg1 Nyw3ICs4NTcsNyBAQCBpbmRleCA2MjNlZmZhLi40YmNkNjgxIDEwMDY0NAogIAliLT5zb3VyY2Vf ZmlsZSA9IHhzdHJkdXAgKHNhbHMuc2Fsc1tpXS5zeW10YWItPmZpbGVuYW1lKTsKICAKICAgICAg ICBpZiAoYi0+bGluZV9udW1iZXIgPT0gMCkKLUBAIC0xMDQ3MCw2ICsxMDU3Niw3IEBAIGJyZWFr cG9pbnRfcmVfc2V0X29uZSAodm9pZCAqYmludCkKK0BAIC0xMDQ5NCw2ICsxMDYwMCw3IEBAIGJy ZWFrcG9pbnRfcmVfc2V0X29uZSAodm9pZCAqYmludCkKICAgICAgY2FzZSBicF90cmFjZXBvaW50 OgogICAgICBjYXNlIGJwX2Zhc3RfdHJhY2Vwb2ludDoKICAgICAgY2FzZSBicF9zdGF0aWNfdHJh Y2Vwb2ludDoKQEAgLTg2NSw3ICs4NjUsNyBAQCBpbmRleCA2MjNlZmZhLi40YmNkNjgxIDEwMDY0 NAogICAgICAgIC8qIERvIG5vdCBhdHRlbXB0IHRvIHJlLXNldCBicmVha3BvaW50cyBkaXNhYmxl ZCBkdXJpbmcgc3RhcnR1cC4gICovCiAgICAgICAgaWYgKGItPmVuYWJsZV9zdGF0ZSA9PSBicF9z dGFydHVwX2Rpc2FibGVkKQogIAlyZXR1cm4gMDsKLUBAIC0xMDY0MCw2ICsxMDc0Nyw3IEBAIGJy ZWFrcG9pbnRfcmVfc2V0X29uZSAodm9pZCAqYmludCkKK0BAIC0xMDY2NCw2ICsxMDc3MSw3IEBA IGJyZWFrcG9pbnRfcmVfc2V0X29uZSAodm9pZCAqYmludCkKICAgICAgY2FzZSBicF9leGNlcHRp b246CiAgICAgIGNhc2UgYnBfZXhjZXB0aW9uX3Jlc3VtZToKICAgICAgY2FzZSBicF9qaXRfZXZl bnQ6CkBAIC04NzMsNyArODczLDcgQEAgaW5kZXggNjIzZWZmYS4uNGJjZDY4MSAxMDA2NDQKICAg ICAgICBicmVhazsKICAgICAgfQogIAotQEAgLTEwODA0LDExICsxMDkxMiwyNSBAQCBtYXBfYnJl YWtwb2ludF9udW1iZXJzIChjaGFyICphcmdzLCB2b2lkICgqZnVuY3Rpb24pIChzdHJ1Y3QgYnJl YWtwb2ludCAqLAorQEAgLTEwODI4LDExICsxMDkzNiwyNSBAQCBtYXBfYnJlYWtwb2ludF9udW1i ZXJzIChjaGFyICphcmdzLCB2b2lkICgqZnVuY3Rpb24pIChzdHJ1Y3QgYnJlYWtwb2ludCAqLAog IAkgIEFMTF9CUkVBS1BPSU5UU19TQUZFIChiLCB0bXApCiAgCSAgICBpZiAoYi0+bnVtYmVyID09 IG51bSkKICAJICAgICAgewpAQCAtOTAzLDEwICs5MDMsMTEgQEAgaW5kZXggNjIzZWZmYS4uNGJj ZDY4MSAxMDA2NDQKICAJCWJyZWFrOwogIAkgICAgICB9CiAgCSAgaWYgKG1hdGNoID09IDApCi1A QCAtMTE5MjMsNiArMTIwNDUsMjIgQEAgYWxsX3RyYWNlcG9pbnRzICgpCitAQCAtMTE5NDksNiAr MTIwNzEsMjQgQEAgYWxsX3RyYWNlcG9pbnRzICgpCiAgICByZXR1cm4gdHBfdmVjOwogIH0KICAK KysjaWYgMAogKy8qIENhbGwgdHlwZV9tYXJrX3VzZWQgZm9yIGFueSBUWVBFcyByZWZlcmVuY2Vk IGZyb20gdGhpcyBHREIgc291cmNlIGZpbGUuICAqLwogKwogK3N0YXRpYyB2b2lkCkBAIC05MjIs MTEgKzkyMywxMiBAQCBpbmRleCA2MjNlZmZhLi40YmNkNjgxIDEwMDY0NAogKwl0eXBlX21hcmtf dXNlZCAodmFsdWVfdHlwZSAoYi0+dmFsKSk7CiArICAgIH0KICt9CisrI2VuZGlmCiArCiAgDAog IC8qIFRoaXMgaGVscCBzdHJpbmcgaXMgdXNlZCBmb3IgdGhlIGJyZWFrLCBoYnJlYWssIHRicmVh ayBhbmQgdGhicmVhawogICAgIGNvbW1hbmRzLiAgSXQgaXMgZGVmaW5lZCBhcyBhIG1hY3JvIHRv IHByZXZlbnQgZHVwbGljYXRpb24uCi1AQCAtMTIwMDgsNiArMTIxNDYsMTA3IEBAIGl0ZXJhdGVf b3Zlcl9icmVha3BvaW50cyAoaW50ICgqY2FsbGJhY2spIChzdHJ1Y3QgYnJlYWtwb2ludCAqLCB2 b2lkICopLAorQEAgLTEyMDM0LDYgKzEyMTc0LDEwNyBAQCBpdGVyYXRlX292ZXJfYnJlYWtwb2lu dHMgKGludCAoKmNhbGxiYWNrKSAoc3RydWN0IGJyZWFrcG9pbnQgKiwgdm9pZCAqKSwKICAgIHJl dHVybiBOVUxMOwogIH0KICAKQEAgLTEwMzQsMTEgKzEwMzYsMTMgQEAgaW5kZXggNjIzZWZmYS4u NGJjZDY4MSAxMDA2NDQKICB2b2lkCiAgX2luaXRpYWxpemVfYnJlYWtwb2ludCAodm9pZCkKICB7 Ci1AQCAtMTI1NDQsNCArMTI3ODMsNSBAQCBpbmZlcmlvciBpbiBhbGwtc3RvcCBtb2RlLCBnZGIg YmVoYXZlcyBhcyBpZiBhbHdheXMtaW5zZXJ0ZWQgbW9kZSBpcyBvZmYuIiksCitAQCAtMTI1Njgs NCArMTI4MDksNyBAQCBpbmZlcmlvciBpbiBhbGwtc3RvcCBtb2RlLCBnZGIgYmVoYXZlcyBhcyBp ZiBhbHdheXMtaW5zZXJ0ZWQgbW9kZSBpcyBvZmYuIiksCiAgICBhdXRvbWF0aWNfaGFyZHdhcmVf YnJlYWtwb2ludHMgPSAxOwogIAogICAgb2JzZXJ2ZXJfYXR0YWNoX2Fib3V0X3RvX3Byb2NlZWQg KGJyZWFrcG9pbnRfYWJvdXRfdG9fcHJvY2VlZCk7CisrI2lmIDAKICsgIG9ic2VydmVyX2F0dGFj aF9tYXJrX3VzZWQgKGJyZWFrcG9pbnRfdHlwZXNfbWFya191c2VkKTsKKysjZW5kaWYKICB9CiBk aWZmIC0tZ2l0IGEvZ2RiL2JyZWFrcG9pbnQuaCBiL2dkYi9icmVha3BvaW50LmgKIGluZGV4IGEw ZmVhMjEuLjRiMjQ3MDEgMTAwNjQ0CkBAIC0xMTIxLDcgKzExMjUsNyBAQCBpbmRleCA5NDA5ZGRl Li5mMGZhNGM3IDEwMDY0NAogIGV4dGVybiBjaGFyICp4ZnVsbHBhdGggKGNvbnN0IGNoYXIgKik7 CiAgCiBkaWZmIC0tZ2l0IGEvZ2RiL2RvYy9nZGIudGV4aW5mbyBiL2dkYi9kb2MvZ2RiLnRleGlu Zm8KLWluZGV4IGY4YjdlMmQuLjcyYzQ3ZTYgMTAwNjQ0CitpbmRleCBhNWVhYTcyLi42Y2M5OGRj IDEwMDY0NAogLS0tIGEvZ2RiL2RvYy9nZGIudGV4aW5mbwogKysrIGIvZ2RiL2RvYy9nZGIudGV4 aW5mbwogQEAgLTExNzcsNiArMTE3NywxNiBAQCBmb3IgcmVtb3RlIGRlYnVnZ2luZy4KQEAgLTEx NDEsNyArMTE0NSw3IEBAIGluZGV4IGY4YjdlMmQuLjcyYzQ3ZTYgMTAwNjQ0CiAgQGMgcmVzb2x2 ZSB0aGUgc2l0dWF0aW9uIG9mIHRoZXNlIGV2ZW50dWFsbHkKICBAaXRlbSAtdHVpCiAgQGNpbmRl eCBAY29kZXstLXR1aX0KLUBAIC0yMDY4Myw4ICsyMDY5Myw2IEBAIGNvbnRhaW5pbmcgQGNvZGV7 ZW5kfS4gIEZvciBleGFtcGxlOgorQEAgLTIwNjc3LDggKzIwNjg3LDYgQEAgY29udGFpbmluZyBA Y29kZXtlbmR9LiAgRm9yIGV4YW1wbGU6CiAgCiAgQHNtYWxsZXhhbXBsZQogIChAdmFsdWV7R0RC UH0pIHB5dGhvbgpAQCAtMTE1MCw3ICsxMTU0LDcgQEAgaW5kZXggZjhiN2UyZC4uNzJjNDdlNiAx MDA2NDQKICA+cHJpbnQgMjMKICA+ZW5kCiAgMjMKLUBAIC0yMDY5Nyw2ICsyMDcwNSwxNCBAQCBp biBhIFB5dGhvbiBzY3JpcHQuICBUaGlzIGNhbiBiZSBjb250cm9sbGVkIHVzaW5nIEBjb2Rle21h aW50IHNldAorQEAgLTIwNjkxLDYgKzIwNjk5LDE0IEBAIGluIGEgUHl0aG9uIHNjcmlwdC4gIFRo aXMgY2FuIGJlIGNvbnRyb2xsZWQgdXNpbmcgQGNvZGV7bWFpbnQgc2V0CiAgcHl0aG9uIHByaW50 LXN0YWNrfTogaWYgQGNvZGV7b259LCB0aGUgZGVmYXVsdCwgdGhlbiBQeXRob24gc3RhY2sKICBw cmludGluZyBpcyBlbmFibGVkOyBpZiBAY29kZXtvZmZ9LCB0aGVuIFB5dGhvbiBzdGFjayBwcmlu dGluZyBpcwogIGRpc2FibGVkLgpAQCAtMTE2NSw3ICsxMTY5LDcgQEAgaW5kZXggZjhiN2UyZC4u NzJjNDdlNiAxMDA2NDQKICBAZW5kIHRhYmxlCiAgCiAgSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBl eGVjdXRlIGEgUHl0aG9uIHNjcmlwdCBmcm9tIHRoZSBAdmFsdWV7R0RCTn0KLUBAIC0yMDcxOCw2 ICsyMDczNCwxNCBAQCBhbmQgdGh1cyBpcyBhbHdheXMgYXZhaWxhYmxlLgorQEAgLTIwNzEyLDYg KzIwNzI4LDE0IEBAIGFuZCB0aHVzIGlzIGFsd2F5cyBhdmFpbGFibGUuCiAgQGNpbmRleCBweXRo b24gYXBpCiAgQGNpbmRleCBwcm9ncmFtbWluZyBpbiBweXRob24KICAKQEAgLTEzMTAsMTcgKzEz MTQsMTcgQEAgaW5kZXggYTQ5NDcwNy4uZDViOWNmOCAxMDA2NDQKICAKICBAbm9kZSBMYW5ndWFn ZSBTdXBwb3J0CiBkaWZmIC0tZ2l0IGEvZ2RiL2RvYy9vYnNlcnZlci50ZXhpIGIvZ2RiL2RvYy9v YnNlcnZlci50ZXhpCi1pbmRleCBkMTZjODY1Li5kOGQyNGQ5IDEwMDY0NAoraW5kZXggZDE2Yzg2 NS4uOTQ2YWQ5NSAxMDA2NDQKIC0tLSBhL2dkYi9kb2Mvb2JzZXJ2ZXIudGV4aQogKysrIGIvZ2Ri L2RvYy9vYnNlcnZlci50ZXhpCiBAQCAtMjIzLDYgKzIyMywxMSBAQCBCeXRlcyBmcm9tIEB2YXJ7 ZGF0YX0gdG8gQHZhcntkYXRhfSArIEB2YXJ7bGVufSBoYXZlIGJlZW4gd3JpdHRlbgogIHRvIHRo ZSBjdXJyZW50IGluZmVyaW9yIGF0IEB2YXJ7YWRkcn0uCiAgQGVuZCBkZWZ0eXBlZnVuCiAgCi0r QGRlZnR5cGVmdW4gdm9pZCBtYXJrX3VzZWQgKHZvaWQpCi0rTWFyayBhbnkgcG9zc2libHkgcmVj bGFpbWFibGUgb2JqZWN0cyBhcyB1c2VkIGR1cmluZyBhIG1hcmstYW5kLXN3ZWVwIGdhcmJhZ2UK LStjb2xsZWN0b3IgcGFzcy4gIEN1cnJlbnRseSBvbmx5IEBjb2Rle3R5cGVfbWFya191c2VkfSBt YXJrZXIgaXMgc3VwcG9ydGVkLgotK0BlbmQgZGVmdHlwZWZ1bgorK0BjIEBkZWZ0eXBlZnVuIHZv aWQgbWFya191c2VkICh2b2lkKQorK0BjIE1hcmsgYW55IHBvc3NpYmx5IHJlY2xhaW1hYmxlIG9i amVjdHMgYXMgdXNlZCBkdXJpbmcgYSBtYXJrLWFuZC1zd2VlcCBnYXJiYWdlCisrQGMgY29sbGVj dG9yIHBhc3MuICBDdXJyZW50bHkgb25seSBAY29kZXt0eXBlX21hcmtfdXNlZH0gbWFya2VyIGlz IHN1cHBvcnRlZC4KKytAYyBAZW5kIGRlZnR5cGVmdW4KICsKICBAZGVmdHlwZWZ1biB2b2lkIHRl c3Rfbm90aWZpY2F0aW9uIChpbnQgQHZhcntzb21lYXJnfSkKICBUaGlzIG9ic2VydmVyIGlzIHVz ZWQgZm9yIGludGVybmFsIHRlc3RpbmcuICBEbyBub3QgdXNlLiAgCkBAIC0xMzQ0LDcgKzEzNDgs NyBAQCBpbmRleCBhZmU2ZGRlLi5kMzY0YjE0IDEwMDY0NAogIAkgIGVycm9yIChfKCJVbmhhbmRs ZWQgZHdhcmYgZXhwcmVzc2lvbiBvcGNvZGUgMHgleCIpLCBvcCk7CiAgCX0KIGRpZmYgLS1naXQg YS9nZGIvZHdhcmYyZXhwci5oIGIvZ2RiL2R3YXJmMmV4cHIuaAotaW5kZXggNjIwMjY5Zi4uYzZm YzY0ZiAxMDA2NDQKK2luZGV4IDc4ZmY1M2YuLmM4M2YyM2QgMTAwNjQ0CiAtLS0gYS9nZGIvZHdh cmYyZXhwci5oCiArKysgYi9nZGIvZHdhcmYyZXhwci5oCiBAQCAtMTE0LDkgKzExNCwxNSBAQCBz dHJ1Y3QgZHdhcmZfZXhwcl9jb250ZXh0CkBAIC0xMzY1LDcgKzEzNjksNyBAQCBpbmRleCA2MjAy NjlmLi5jNmZjNjRmIDEwMDY0NAogICAgLyogVGhlIGN1cnJlbnQgZGVwdGggb2YgZHdhcmYgZXhw cmVzc2lvbiByZWN1cnNpb24sIHZpYSBEV19PUF9jYWxsKiwKICAgICAgIERXX09QX2ZicmVnLCBE V19PUF9wdXNoX29iamVjdF9hZGRyZXNzLCBldGMuLCBhbmQgdGhlIG1heGltdW0KIGRpZmYgLS1n aXQgYS9nZGIvZHdhcmYybG9jLmMgYi9nZGIvZHdhcmYybG9jLmMKLWluZGV4IGE0MzlmNzIuLjlh YmNkNTYgMTAwNjQ0CitpbmRleCBlNTE2ZGZhLi4xMmY2YTE5IDEwMDY0NAogLS0tIGEvZ2RiL2R3 YXJmMmxvYy5jCiArKysgYi9nZGIvZHdhcmYybG9jLmMKIEBAIC0xMzQsNiArMTM0LDkgQEAgc3Ry dWN0IGR3YXJmX2V4cHJfYmF0b24KQEAgLTE2MzYsNyArMTY0MCw3IEBAIGluZGV4IGE0MzlmNzIu LjlhYmNkNTYgMTAwNjQ0CiAgCSAgICByZXR2YWwgPSBhbGxvY2F0ZV92YWx1ZV9sYXp5ICh0eXBl KTsKICAJICAgIFZBTFVFX0xWQUwgKHJldHZhbCkgPSBsdmFsX21lbW9yeTsKICAJICAgIGlmIChp bl9zdGFja19tZW1vcnkpCi1AQCAtMjgxMSwxMSArMjk2OSw1MSBAQCBsb2NsaXN0X3RyYWNlcG9p bnRfdmFyX3JlZiAoc3RydWN0IHN5bWJvbCAqc3ltYm9sLCBzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJj aCwKK0BAIC0yODA3LDExICsyOTY1LDUxIEBAIGxvY2xpc3RfdHJhY2Vwb2ludF92YXJfcmVmIChz dHJ1Y3Qgc3ltYm9sICpzeW1ib2wsIHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLAogIAkJCSAgICAg ICBkbGJhdG9uLT5wZXJfY3UpOwogIH0KICAKQEAgLTE3MTEsNyArMTcxNSw3IEBAIGluZGV4IDk2 YTQ5MGUuLmIwZWJiMDYgMTAwNjQ0CiAgLyogQ29tcGlsZSBhIERXQVJGIGxvY2F0aW9uIGV4cHJl c3Npb24gdG8gYW4gYWdlbnQgZXhwcmVzc2lvbi4KICAgICAKIGRpZmYgLS1naXQgYS9nZGIvZHdh cmYycmVhZC5jIGIvZ2RiL2R3YXJmMnJlYWQuYwotaW5kZXggMDhiODA0YS4uYTkwOTliZSAxMDA2 NDQKK2luZGV4IGQxMjAyOGYuLjNmNDVhZmYgMTAwNjQ0CiAtLS0gYS9nZGIvZHdhcmYycmVhZC5j CiArKysgYi9nZGIvZHdhcmYycmVhZC5jCiBAQCAtMTIxMSw2ICsxMjExLDkgQEAgc3RhdGljIHZv aWQgZmlsbF9pbl9sb2NsaXN0X2JhdG9uIChzdHJ1Y3QgZHdhcmYyX2N1ICpjdSwKQEAgLTE3NDQs NyArMTc0OCw3IEBAIGluZGV4IDA4YjgwNGEuLmE5MDk5YmUgMTAwNjQ0CiAgc3RhdGljIHZvaWQg ZHdhcmYyX3JlbGVhc2VfcXVldWUgKHZvaWQgKmR1bW15KTsKICAKICBzdGF0aWMgdm9pZCBxdWV1 ZV9jb21wX3VuaXQgKHN0cnVjdCBkd2FyZjJfcGVyX2N1X2RhdGEgKnBlcl9jdSwKLUBAIC03MzEy LDYgKzczMjEsMjkgQEAgcHJvY2Vzc19lbnVtZXJhdGlvbl9zY29wZSAoc3RydWN0IGRpZV9pbmZv ICpkaWUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1KQorQEAgLTczMTUsNiArNzMyNCwyOSBAQCBwcm9j ZXNzX2VudW1lcmF0aW9uX3Njb3BlIChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0IGR3YXJm Ml9jdSAqY3UpCiAgICBuZXdfc3ltYm9sIChkaWUsIHRoaXNfdHlwZSwgY3UpOwogIH0KICAKQEAg LTE3NzQsNyArMTc3OCw3IEBAIGluZGV4IDA4YjgwNGEuLmE5MDk5YmUgMTAwNjQ0CiAgLyogRXh0 cmFjdCBhbGwgaW5mb3JtYXRpb24gZnJvbSBhIERXX1RBR19hcnJheV90eXBlIERJRSBhbmQgcHV0 IGl0IGluCiAgICAgdGhlIERJRSdzIHR5cGUgZmllbGQuICBGb3Igbm93LCB0aGlzIG9ubHkgaGFu ZGxlcyBvbmUgZGltZW5zaW9uYWwKICAgICBhcnJheXMuICAqLwotQEAgLTczMjUsNyArNzM1Nyw3 IEBAIHJlYWRfYXJyYXlfdHlwZSAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0cnVjdCBkd2FyZjJf Y3UgKmN1KQorQEAgLTczMjgsNyArNzM2MCw3IEBAIHJlYWRfYXJyYXlfdHlwZSAoc3RydWN0IGRp ZV9pbmZvICpkaWUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1KQogICAgc3RydWN0IHR5cGUgKmVsZW1l bnRfdHlwZSwgKnJhbmdlX3R5cGUsICppbmRleF90eXBlOwogICAgc3RydWN0IHR5cGUgKipyYW5n ZV90eXBlcyA9IE5VTEw7CiAgICBzdHJ1Y3QgYXR0cmlidXRlICphdHRyOwpAQCAtMTc4Myw3ICsx Nzg3LDcgQEAgaW5kZXggMDhiODA0YS4uYTkwOTliZSAxMDA2NDQKICAgIHN0cnVjdCBjbGVhbnVw ICpiYWNrX3RvOwogICAgY2hhciAqbmFtZTsKICAKLUBAIC03Mzc4LDE3ICs3NDEwLDE5IEBAIHJl YWRfYXJyYXlfdHlwZSAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1 KQorQEAgLTczODEsMTcgKzc0MTMsMTkgQEAgcmVhZF9hcnJheV90eXBlIChzdHJ1Y3QgZGllX2lu Zm8gKmRpZSwgc3RydWN0IGR3YXJmMl9jdSAqY3UpCiAgICB0eXBlID0gZWxlbWVudF90eXBlOwog IAogICAgaWYgKHJlYWRfYXJyYXlfb3JkZXIgKGRpZSwgY3UpID09IERXX09SRF9jb2xfbWFqb3Ip CkBAIC0xODE0LDcgKzE4MTgsNyBAQCBpbmRleCAwOGI4MDRhLi5hOTA5OWJlIDEwMDY0NAogIAog ICAgLyogVW5kZXJzdGFuZCBEd2FyZjIgc3VwcG9ydCBmb3IgdmVjdG9yIHR5cGVzIChsaWtlIHRo ZXkgb2NjdXIgb24KICAgICAgIHRoZSBQb3dlclBDIHcvIEFsdGlWZWMpLiAgR2NjIGp1c3QgYWRk cyBhbm90aGVyIGF0dHJpYnV0ZSB0byB0aGUKLUBAIC03ODgyLDI5ICs3OTE2LDExNCBAQCByZWFk X3RhZ19zdHJpbmdfdHlwZSAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0cnVjdCBkd2FyZjJfY3Ug KmN1KQorQEAgLTc4ODQsMjkgKzc5MTgsMTE0IEBAIHJlYWRfdGFnX3N0cmluZ190eXBlIChzdHJ1 Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0IGR3YXJmMl9jdSAqY3UpCiAgICBzdHJ1Y3QgZ2RiYXJj aCAqZ2RiYXJjaCA9IGdldF9vYmpmaWxlX2FyY2ggKG9iamZpbGUpOwogICAgc3RydWN0IHR5cGUg KnR5cGUsICpyYW5nZV90eXBlLCAqaW5kZXhfdHlwZSwgKmNoYXJfdHlwZTsKICAgIHN0cnVjdCBh dHRyaWJ1dGUgKmF0dHI7CkBAIC0xOTQzLDcgKzE5NDcsNyBAQCBpbmRleCAwOGI4MDRhLi5hOTA5 OWJlIDEwMDY0NAogICAgY2hhcl90eXBlID0gbGFuZ3VhZ2Vfc3RyaW5nX2NoYXJfdHlwZSAoY3Ut Pmxhbmd1YWdlX2RlZm4sIGdkYmFyY2gpOwogICAgdHlwZSA9IGNyZWF0ZV9zdHJpbmdfdHlwZSAo TlVMTCwgY2hhcl90eXBlLCByYW5nZV90eXBlKTsKICAKLUBAIC04MTkwLDggKzgzMDksNyBAQCBy ZWFkX3N1YnJhbmdlX3R5cGUgKHN0cnVjdCBkaWVfaW5mbyAqZGllLCBzdHJ1Y3QgZHdhcmYyX2N1 ICpjdSkKK0BAIC04MTkxLDggKzgzMTAsNyBAQCByZWFkX3N1YnJhbmdlX3R5cGUgKHN0cnVjdCBk aWVfaW5mbyAqZGllLCBzdHJ1Y3QgZHdhcmYyX2N1ICpjdSkKICAgIHN0cnVjdCB0eXBlICpiYXNl X3R5cGU7CiAgICBzdHJ1Y3QgdHlwZSAqcmFuZ2VfdHlwZTsKICAgIHN0cnVjdCBhdHRyaWJ1dGUg KmF0dHI7CkBAIC0xOTUzLDcgKzE5NTcsNyBAQCBpbmRleCAwOGI4MDRhLi5hOTA5OWJlIDEwMDY0 NAogICAgY2hhciAqbmFtZTsKICAgIExPTkdFU1QgbmVnYXRpdmVfbWFzazsKICAKLUBAIC04MjA0 LDUzICs4MzIyLDEyNiBAQCByZWFkX3N1YnJhbmdlX3R5cGUgKHN0cnVjdCBkaWVfaW5mbyAqZGll LCBzdHJ1Y3QgZHdhcmYyX2N1ICpjdSkKK0BAIC04MjA1LDUzICs4MzIzLDEyNiBAQCByZWFkX3N1 YnJhbmdlX3R5cGUgKHN0cnVjdCBkaWVfaW5mbyAqZGllLCBzdHJ1Y3QgZHdhcmYyX2N1ICpjdSkK ICAgIGlmIChyYW5nZV90eXBlKQogICAgICByZXR1cm4gcmFuZ2VfdHlwZTsKICAKQEAgLTIxMTUs NyArMjExOSw3IEBAIGluZGV4IDA4YjgwNGEuLmE5MDk5YmUgMTAwNjQ0CiAgICAgIH0KICAKICAg IC8qIER3YXJmLTIgc3BlY2lmaWNhdGlvbnMgZXhwbGljaXRseSBhbGxvd3MgdG8gY3JlYXRlIHN1 YnJhbmdlIHR5cGVzCi1AQCAtODI5MSwyNCArODQ4Miw0MSBAQCByZWFkX3N1YnJhbmdlX3R5cGUg KHN0cnVjdCBkaWVfaW5mbyAqZGllLCBzdHJ1Y3QgZHdhcmYyX2N1ICpjdSkKK0BAIC04MjkyLDI0 ICs4NDgzLDQxIEBAIHJlYWRfc3VicmFuZ2VfdHlwZSAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0 cnVjdCBkd2FyZjJfY3UgKmN1KQogIAl9CiAgICAgIH0KICAKQEAgLTIxNzMsNyArMjE3Nyw3IEBA IGluZGV4IDA4YjgwNGEuLmE5MDk5YmUgMTAwNjQ0CiAgCiAgICBuYW1lID0gZHdhcmYyX25hbWUg KGRpZSwgY3UpOwogICAgaWYgKG5hbWUpCi1AQCAtMTA3ODUsMTAgKzEwOTkzLDEyIEBAIHZhcl9k ZWNvZGVfbG9jYXRpb24gKHN0cnVjdCBhdHRyaWJ1dGUgKmF0dHIsIHN0cnVjdCBzeW1ib2wgKnN5 bSwKK0BAIC0xMDc4NiwxMCArMTA5OTQsMTIgQEAgdmFyX2RlY29kZV9sb2NhdGlvbiAoc3RydWN0 IGF0dHJpYnV0ZSAqYXR0ciwgc3RydWN0IHN5bWJvbCAqc3ltLAogICAgICAgKGkuZS4gd2hlbiB0 aGUgdmFsdWUgb2YgYSByZWdpc3RlciBvciBtZW1vcnkgbG9jYXRpb24gaXMKICAgICAgIHJlZmVy ZW5jZWQsIG9yIGEgdGhyZWFkLWxvY2FsIGJsb2NrLCBldGMuKS4gIFRoZW4gYWdhaW4sIGl0IG1p Z2h0CiAgICAgICBub3QgYmUgd29ydGh3aGlsZS4gIEknbSBhc3N1bWluZyB0aGF0IGl0IGlzbid0 IHVubGVzcyBwZXJmb3JtYW5jZQpAQCAtMjE4OCw3ICsyMTkyLDcgQEAgaW5kZXggMDhiODA0YS4u YTkwOTliZSAxMDA2NDQKICB9CiAgCiAgLyogR2l2ZW4gYSBwb2ludGVyIHRvIGEgRFdBUkYgaW5m b3JtYXRpb24gZW50cnksIGZpZ3VyZSBvdXQgaWYgd2UgbmVlZAotQEAgLTEwODI2LDYgKzExMDM2 LDggQEAgbmV3X3N5bWJvbF9mdWxsIChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0IHR5cGUg KnR5cGUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1LAorQEAgLTEwODI3LDYgKzExMDM3LDggQEAgbmV3 X3N5bWJvbF9mdWxsIChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0IHR5cGUgKnR5cGUsIHN0 cnVjdCBkd2FyZjJfY3UgKmN1LAogICAgICAgIGVsc2UKICAJc3ltID0gT0JTVEFDS19aQUxMT0Mg KCZvYmpmaWxlLT5vYmpmaWxlX29ic3RhY2ssIHN0cnVjdCBzeW1ib2wpOwogICAgICAgIE9CSlNU QVQgKG9iamZpbGUsIG5fc3ltcysrKTsKQEAgLTIxOTcsNyArMjIwMSw3IEBAIGluZGV4IDA4Yjgw NGEuLmE5MDk5YmUgMTAwNjQ0CiAgCiAgICAgICAgLyogQ2FjaGUgdGhpcyBzeW1ib2wncyBuYW1l IGFuZCB0aGUgbmFtZSdzIGRlbWFuZ2xlZCBmb3JtIChpZiBhbnkpLiAgKi8KICAgICAgICBTWU1C T0xfU0VUX0xBTkdVQUdFIChzeW0sIGN1LT5sYW5ndWFnZSk7Ci1AQCAtMTE1OTgsNiArMTE4MTAs OSBAQCByZWFkX3R5cGVfZGllXzEgKHN0cnVjdCBkaWVfaW5mbyAqZGllLCBzdHJ1Y3QgZHdhcmYy X2N1ICpjdSkKK0BAIC0xMTU5OSw2ICsxMTgxMSw5IEBAIHJlYWRfdHlwZV9kaWVfMSAoc3RydWN0 IGRpZV9pbmZvICpkaWUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1KQogICAgICAgIGJyZWFrOwogICAg ICB9CiAgCkBAIC0yNjgwLDcgKzI2ODQsNyBAQCBpbmRleCBjNTkxMzRiLi5jMmM4MjI5IDEwMDY0 NAogIAogICAgLyogQWRkIHN5bnRoZXRpYyBzeW1ib2xzIC0gZm9yIGluc3RhbmNlLCBuYW1lcyBm b3IgYW55IFBMVCBlbnRyaWVzLiAgKi8KIGRpZmYgLS1naXQgYS9nZGIvZXZhbC5jIGIvZ2RiL2V2 YWwuYwotaW5kZXggZGUyNWIzOS4uZjljN2E4MiAxMDA2NDQKK2luZGV4IDA5YjQxYTAuLjdjMGE4 ZjkgMTAwNjQ0CiAtLS0gYS9nZGIvZXZhbC5jCiArKysgYi9nZGIvZXZhbC5jCiBAQCAtNDQsNiAr NDQsNyBAQApAQCAtMjY5MSw3ICsyNjk1LDcgQEAgaW5kZXggZGUyNWIzOS4uZjljN2E4MiAxMDA2 NDQKICAKICAjaW5jbHVkZSAiZ2RiX2Fzc2VydC5oIgogIAotQEAgLTUwNSwyNyArNTA2LDIwMiBA QCBpbml0X2FycmF5X2VsZW1lbnQgKHN0cnVjdCB2YWx1ZSAqYXJyYXksIHN0cnVjdCB2YWx1ZSAq ZWxlbWVudCwKK0BAIC00ODksMjcgKzQ5MCwyMTcgQEAgaW5pdF9hcnJheV9lbGVtZW50IChzdHJ1 Y3QgdmFsdWUgKmFycmF5LCBzdHJ1Y3QgdmFsdWUgKmVsZW1lbnQsCiAgfQogIAogIHN0YXRpYyBz dHJ1Y3QgdmFsdWUgKgpAQCAtMjcxMyw3ICsyNzE3LDcgQEAgaW5kZXggZGUyNWIzOS4uZjljN2E4 MiAxMDA2NDQKICsgIHN0cnVjdCB0eXBlICpuZXdfYXJyYXlfdHlwZTsKICsKICsgIC8qIFR5cGUg YmVpbmcgaXRlcmF0ZWQgZm9yIGVhY2ggZGltZW5zaW9uLiAgKi8KLSsgIHN0cnVjdCB0eXBlICp0 eXBlOworKyAgc3RydWN0IHR5cGUgKnR5cGUsICp0eXBlX2xhc3RfdGFyZ2V0OwogKwogKyAgLyog UG9pbnRlciBpbiB0aGUgbGFzdCBob2xkZXIgdG8gdGhlIHR5cGUgb2YgY3VycmVudCBkaW1lbnNp b24uICAqLwogKyAgc3RydWN0IHR5cGUgKip0eXBlcCA9ICZuZXdfYXJyYXlfdHlwZTsKQEAgLTI3 MzMsNiArMjczNyw3IEBAIGluZGV4IGRlMjViMzkuLmY5YzdhODIgMTAwNjQ0CiArCX07CiArICAg IH0KICsgICpzdWJzY3JpcHRfYXJyYXk7CisrICBzdHJ1Y3QgdHlwZSAqKnR5cGVfYXJyYXk7CiAr ICBpbnQgaTsKICsgIHN0cnVjdCBjbGVhbnVwICpvbGRfY2hhaW47CiArICBDT1JFX0FERFIgdmFs dWVfYnl0ZV9hZGRyZXNzLCB2YWx1ZV9ieXRlX29mZnNldCA9IDA7CkBAIC0yODEyLDcgKzI4MTcs OSBAQCBpbmRleCBkZTI1YjM5Li5mOWM3YTgyIDEwMDY0NAogKwkgIHN0cnVjdCB2YWx1ZSAqdmFs OwogKwogKwkgIGluZGV4LT5raW5kID0gU1VCU0NSSVBUX05VTUJFUjsKLSsKKyAKKy0gIGlmIChy YW5nZV90eXBlID09IEhJR0hfQk9VTkRfREVGQVVMVCB8fCByYW5nZV90eXBlID09IEJPVEhfQk9V TkRfREVGQVVMVCkKKy0gICAgaGlnaF9ib3VuZCA9IFRZUEVfSElHSF9CT1VORCAocmFuZ2UpOwog KwkgIC8qIEV2YWx1YXRlIGVhY2ggc3Vic2NyaXB0OyBpdCBtdXN0IGJlIGEgbGVnYWwgaW50ZWdl ciBpbiBGNzcuICAqLwogKwkgIHZhbCA9IGV2YWx1YXRlX3N1YmV4cF93aXRoX2NvZXJjaW9uIChl eHAsIHBvcywgbm9zaWRlKTsKICsJICBpbmRleC0+bnVtYmVyID0gdmFsdWVfYXNfbG9uZyAodmFs KTsKQEAgLTI4MjQsOSArMjgzMSw3IEBAIGluZGV4IGRlMjViMzkuLmY5YzdhODIgMTAwNjQ0CiAr ICAgIHsKICsgICAgICBzdHJ1Y3Qgc3Vic2NyaXB0X2luZGV4ICppbmRleCA9ICZzdWJzY3JpcHRf YXJyYXlbaV07CiArICAgICAgc3RydWN0IHR5cGUgKnJhbmdlX3R5cGUgPSBUWVBFX0lOREVYX1RZ UEUgKHR5cGUpOwotIAotLSAgaWYgKHJhbmdlX3R5cGUgPT0gSElHSF9CT1VORF9ERUZBVUxUIHx8 IHJhbmdlX3R5cGUgPT0gQk9USF9CT1VORF9ERUZBVUxUKQotLSAgICBoaWdoX2JvdW5kID0gVFlQ RV9ISUdIX0JPVU5EIChyYW5nZSk7CisrCiArICAgICAgc3dpdGNoIChpbmRleC0+a2luZCkKICsJ ewogKwljYXNlIFNVQlNDUklQVF9SQU5HRToKQEAgLTI4ODEsNyArMjg4NiwyMSBAQCBpbmRleCBk ZTI1YjM5Li5mOWM3YTgyIDEwMDY0NAogKwl9CiArICAgIH0KICsKLSsgIGNoZWNrX3R5cGVkZWYg KG5ld19hcnJheV90eXBlKTsKKysgIHR5cGVfbGFzdF90YXJnZXQgPSB0eXBlOworKyAgdHlwZV9h cnJheSA9IGFsbG9jYSAoc2l6ZW9mICgqdHlwZV9hcnJheSkgKiBuYXJncyk7CisrICBpID0gMDsK KysgIGZvciAodHlwZSA9IG5ld19hcnJheV90eXBlOyB0eXBlICE9IHR5cGVfbGFzdF90YXJnZXQ7 CisrICAgICAgIHR5cGUgPSBUWVBFX1RBUkdFVF9UWVBFICh0eXBlKSkKKysgICAgdHlwZV9hcnJh eVtpKytdID0gdHlwZTsKKysgIHdoaWxlIChpID4gMCkKKysgICAgeworKyAgICAgIHN0cnVjdCB0 eXBlICp0eXBlID0gdHlwZV9hcnJheVstLWldOworKworKyAgICAgIC8qIEZvcmNlIFRZUEVfTEVO R1RIICh0eXBlKSByZWNhbGN1bGF0aW9uLiAgKi8KKysgICAgICBUWVBFX1RBUkdFVF9TVFVCICh0 eXBlKSA9IDE7CisrICAgICAgY2hlY2tfdHlwZWRlZiAodHlwZSk7CisrICAgIH0KKysKICsgIHNh dmVkX2FycmF5ID0gYXJyYXk7CiArICBhcnJheSA9IGFsbG9jYXRlX3ZhbHVlX2xhenkgKG5ld19h cnJheV90eXBlKTsKICsgIFZBTFVFX0xWQUwgKGFycmF5KSA9IFZBTFVFX0xWQUwgKHNhdmVkX2Fy cmF5KTsKQEAgLTI4OTgsMTkgKzI5MTcsMTkgQEAgaW5kZXggZGUyNWIzOS4uZjljN2E4MiAxMDA2 NDQKICsgICAgewogKyAgICAgIGFsbG9jYXRlX3ZhbHVlX2NvbnRlbnRzIChhcnJheSk7CiArICAg ICAgc2V0X3ZhbHVlX2xhenkgKGFycmF5LCAwKTsKLSsKKyAKKy0gIHJldHVybiB2YWx1ZV9zbGlj ZSAoYXJyYXksIGxvd19ib3VuZCwgaGlnaF9ib3VuZCAtIGxvd19ib3VuZCArIDEpOwogKyAgICAg IG1lbWNweSAodmFsdWVfY29udGVudHNfd3JpdGVhYmxlIChhcnJheSksCiArCSAgICAgIHZhbHVl X2NvbnRlbnRzIChzYXZlZF9hcnJheSkgKyB2YWx1ZV9ieXRlX29mZnNldCwKICsJICAgICAgVFlQ RV9MRU5HVEggKG5ld19hcnJheV90eXBlKSk7CiArICAgIH0KLSAKLS0gIHJldHVybiB2YWx1ZV9z bGljZSAoYXJyYXksIGxvd19ib3VuZCwgaGlnaF9ib3VuZCAtIGxvd19ib3VuZCArIDEpOworKwog KyAgZG9fY2xlYW51cHMgKG9sZF9jaGFpbik7CiArICByZXR1cm4gYXJyYXk7CiAgfQogIAogIAot QEAgLTgwNiw2ICs5ODIsNyBAQCBldmFsdWF0ZV9zdWJleHBfc3RhbmRhcmQgKHN0cnVjdCB0eXBl ICpleHBlY3RfdHlwZSwKK0BAIC03OTAsNiArOTgxLDcgQEAgZXZhbHVhdGVfc3ViZXhwX3N0YW5k YXJkIChzdHJ1Y3QgdHlwZSAqZXhwZWN0X3R5cGUsCiAgICBpbnQgc2F2ZV9wb3MxOwogICAgc3Ry dWN0IHN5bWJvbCAqZnVuY3Rpb24gPSBOVUxMOwogICAgY2hhciAqZnVuY3Rpb25fbmFtZSA9IE5V TEw7CkBAIC0yOTE4LDcgKzI5MzcsNyBAQCBpbmRleCBkZTI1YjM5Li5mOWM3YTgyIDEwMDY0NAog IAogICAgcGMgPSAoKnBvcykrKzsKICAgIG9wID0gZXhwLT5lbHRzW3BjXS5vcGNvZGU7Ci1AQCAt MTg0OSw2ICsyMDI2LDggQEAgZXZhbHVhdGVfc3ViZXhwX3N0YW5kYXJkIChzdHJ1Y3QgdHlwZSAq ZXhwZWN0X3R5cGUsCitAQCAtMTgzMiw2ICsyMDI0LDggQEAgZXZhbHVhdGVfc3ViZXhwX3N0YW5k YXJkIChzdHJ1Y3QgdHlwZSAqZXhwZWN0X3R5cGUsCiAgCSAgICAgIHJldHVybiB2YWx1ZV96ZXJv IChidWlsdGluX3R5cGUgKGV4cC0+Z2RiYXJjaCktPmJ1aWx0aW5faW50LAogIAkJCQkgbm90X2x2 YWwpOwogIAkgICAgfQpAQCAtMjkyNyw3ICsyOTQ2LDcgQEAgaW5kZXggZGUyNWIzOS4uZjljN2E4 MiAxMDA2NDQKICAJICBlbHNlIGlmIChUWVBFX1RBUkdFVF9UWVBFIChmdHlwZSkpCiAgCSAgICBy ZXR1cm4gYWxsb2NhdGVfdmFsdWUgKFRZUEVfVEFSR0VUX1RZUEUgKGZ0eXBlKSk7CiAgCSAgZWxz ZQotQEAgLTE4NzcsNiArMjA1Niw4IEBAIGV2YWx1YXRlX3N1YmV4cF9zdGFuZGFyZCAoc3RydWN0 IHR5cGUgKmV4cGVjdF90eXBlLAorQEAgLTE4NjAsNiArMjA1NCw4IEBAIGV2YWx1YXRlX3N1YmV4 cF9zdGFuZGFyZCAoc3RydWN0IHR5cGUgKmV4cGVjdF90eXBlLAogIAogICAgICAgIC8qIEZpcnN0 IGRldGVybWluZSB0aGUgdHlwZSBjb2RlIHdlIGFyZSBkZWFsaW5nIHdpdGguICAqLwogICAgICAg IGFyZzEgPSBldmFsdWF0ZV9zdWJleHAgKE5VTExfVFlQRSwgZXhwLCBwb3MsIG5vc2lkZSk7CkBA IC0yOTM2LDcgKzI5NTUsNyBAQCBpbmRleCBkZTI1YjM5Li5mOWM3YTgyIDEwMDY0NAogICAgICAg IHR5cGUgPSBjaGVja190eXBlZGVmICh2YWx1ZV90eXBlIChhcmcxKSk7CiAgICAgICAgY29kZSA9 IFRZUEVfQ09ERSAodHlwZSk7CiAgCi1AQCAtMTg5NywyMyArMjA3OCwxMyBAQCBldmFsdWF0ZV9z dWJleHBfc3RhbmRhcmQgKHN0cnVjdCB0eXBlICpleHBlY3RfdHlwZSwKK0BAIC0xODgwLDIzICsy MDc2LDEzIEBAIGV2YWx1YXRlX3N1YmV4cF9zdGFuZGFyZCAoc3RydWN0IHR5cGUgKmV4cGVjdF90 eXBlLAogIAkgICAgICBjb2RlID0gVFlQRV9DT0RFICh0eXBlKTsKICAJICAgIH0KICAJfSAKQEAg LTI5NjIsNyArMjk4MSw3IEBAIGluZGV4IGRlMjViMzkuLmY5YzdhODIgMTAwNjQ0CiAgCiAgCWNh c2UgVFlQRV9DT0RFX1BUUjoKICAJY2FzZSBUWVBFX0NPREVfRlVOQzoKLUBAIC0yMzUyLDQ5ICsy NTIzLDYgQEAgZXZhbHVhdGVfc3ViZXhwX3N0YW5kYXJkIChzdHJ1Y3QgdHlwZSAqZXhwZWN0X3R5 cGUsCitAQCAtMjMzNSw0OSArMjUyMSw2IEBAIGV2YWx1YXRlX3N1YmV4cF9zdGFuZGFyZCAoc3Ry dWN0IHR5cGUgKmV4cGVjdF90eXBlLAogIAl9CiAgICAgICAgcmV0dXJuIChhcmcxKTsKICAKQEAg LTMwMTIsNyArMzAzMSw3IEBAIGluZGV4IGRlMjViMzkuLmY5YzdhODIgMTAwNjQ0CiAgICAgIGNh c2UgQklOT1BfTE9HSUNBTF9BTkQ6CiAgICAgICAgYXJnMSA9IGV2YWx1YXRlX3N1YmV4cCAoTlVM TF9UWVBFLCBleHAsIHBvcywgbm9zaWRlKTsKICAgICAgICBpZiAobm9zaWRlID09IEVWQUxfU0tJ UCkKLUBAIC0yNjI2LDE1ICsyNzU0LDIzIEBAIGV2YWx1YXRlX3N1YmV4cF9zdGFuZGFyZCAoc3Ry dWN0IHR5cGUgKmV4cGVjdF90eXBlLAorQEAgLTI2MDksMTUgKzI3NTIsMjMgQEAgZXZhbHVhdGVf c3ViZXhwX3N0YW5kYXJkIChzdHJ1Y3QgdHlwZSAqZXhwZWN0X3R5cGUsCiAgICAgICAgaWYgKGV4 cGVjdF90eXBlICYmIFRZUEVfQ09ERSAoZXhwZWN0X3R5cGUpID09IFRZUEVfQ09ERV9QVFIpCiAg CWV4cGVjdF90eXBlID0gVFlQRV9UQVJHRVRfVFlQRSAoY2hlY2tfdHlwZWRlZiAoZXhwZWN0X3R5 cGUpKTsKICAgICAgICBhcmcxID0gZXZhbHVhdGVfc3ViZXhwIChleHBlY3RfdHlwZSwgZXhwLCBw b3MsIG5vc2lkZSk7CkBAIC0zMDM4LDcgKzMwNTcsNyBAQCBpbmRleCBkZTI1YjM5Li5mOWM3YTgy IDEwMDY0NAogICAgICAgIGVsc2UgaWYgKG5vc2lkZSA9PSBFVkFMX0FWT0lEX1NJREVfRUZGRUNU UykKICAJewogIAkgIHR5cGUgPSBjaGVja190eXBlZGVmICh2YWx1ZV90eXBlIChhcmcxKSk7Ci1A QCAtMjY0MywxMiArMjc3OSwxOCBAQCBldmFsdWF0ZV9zdWJleHBfc3RhbmRhcmQgKHN0cnVjdCB0 eXBlICpleHBlY3RfdHlwZSwKK0BAIC0yNjI2LDEyICsyNzc3LDE4IEBAIGV2YWx1YXRlX3N1YmV4 cF9zdGFuZGFyZCAoc3RydWN0IHR5cGUgKmV4cGVjdF90eXBlLAogIAkgIC8qIEluIEMgeW91IGNh biBkZXJlZmVyZW5jZSBhbiBhcnJheSB0byBnZXQgdGhlIDFzdCBlbHQuICAqLwogIAkgICAgICB8 fCBUWVBFX0NPREUgKHR5cGUpID09IFRZUEVfQ09ERV9BUlJBWQogIAkgICAgKQpAQCAtMzA2Miw3 ICszMDgxLDcgQEAgaW5kZXggZGUyNWIzOS4uZjljN2E4MiAxMDA2NDQKICAJICBlbHNlCiAgCSAg ICBlcnJvciAoXygiQXR0ZW1wdCB0byB0YWtlIGNvbnRlbnRzIG9mIGEgbm9uLXBvaW50ZXIgdmFs dWUuIikpOwogIAl9Ci1AQCAtMjY1OCw5ICsyODAwLDE0IEBAIGV2YWx1YXRlX3N1YmV4cF9zdGFu ZGFyZCAoc3RydWN0IHR5cGUgKmV4cGVjdF90eXBlLAorQEAgLTI2NDEsOSArMjc5OCwxNCBAQCBl dmFsdWF0ZV9zdWJleHBfc3RhbmRhcmQgKHN0cnVjdCB0eXBlICpleHBlY3RfdHlwZSwKICAJIGRv LiAgImxvbmcgbG9uZyIgdmFyaWFibGVzIGFyZSByYXJlIGVub3VnaCB0aGF0CiAgCSBCVUlMVElO X1RZUEVfTE9OR0VTVCB3b3VsZCBzZWVtIHRvIGJlIGEgbWlzdGFrZS4gICovCiAgICAgICAgaWYg KFRZUEVfQ09ERSAodHlwZSkgPT0gVFlQRV9DT0RFX0lOVCkKQEAgLTMwODAsNyArMzA5OSw3IEBA IGluZGV4IGRlMjViMzkuLmY5YzdhODIgMTAwNjQ0CiAgCiAgICAgIGNhc2UgVU5PUF9BRERSOgog ICAgICAgIC8qIEMrKzogY2hlY2sgZm9yIGFuZCBoYW5kbGUgcG9pbnRlciB0byBtZW1iZXJzLiAg Ki8KLUBAIC0zMDA2LDcgKzMxNTMsNyBAQCBldmFsdWF0ZV9zdWJleHBfd2l0aF9jb2VyY2lvbiAo c3RydWN0IGV4cHJlc3Npb24gKmV4cCwKK0BAIC0yOTg5LDcgKzMxNTEsNyBAQCBldmFsdWF0ZV9z dWJleHBfd2l0aF9jb2VyY2lvbiAoc3RydWN0IGV4cHJlc3Npb24gKmV4cCwKICB7CiAgICBlbnVt IGV4cF9vcGNvZGUgb3A7CiAgICBpbnQgcGM7CkBAIC0zMDg5LDcgKzMxMDgsNyBAQCBpbmRleCBk ZTI1YjM5Li5mOWM3YTgyIDEwMDY0NAogICAgc3RydWN0IHN5bWJvbCAqdmFyOwogICAgc3RydWN0 IHR5cGUgKnR5cGU7CiAgCi1AQCAtMzAxNywxMyArMzE2NCwxOCBAQCBldmFsdWF0ZV9zdWJleHBf d2l0aF9jb2VyY2lvbiAoc3RydWN0IGV4cHJlc3Npb24gKmV4cCwKK0BAIC0zMDAwLDEzICszMTYy LDE4IEBAIGV2YWx1YXRlX3N1YmV4cF93aXRoX2NvZXJjaW9uIChzdHJ1Y3QgZXhwcmVzc2lvbiAq ZXhwLAogICAgICB7CiAgICAgIGNhc2UgT1BfVkFSX1ZBTFVFOgogICAgICAgIHZhciA9IGV4cC0+ ZWx0c1twYyArIDJdLnN5bWJvbDsKQEAgLTMxMDksNyArMzEyOCw3IEBAIGluZGV4IGRlMjViMzku LmY5YzdhODIgMTAwNjQ0CiAgCSAgcmV0dXJuIHZhbHVlX2Nhc3QgKGxvb2t1cF9wb2ludGVyX3R5 cGUgKFRZUEVfVEFSR0VUX1RZUEUgKHR5cGUpKSwKICAJCQkgICAgIHZhbCk7CiAgCX0KLUBAIC0z MDc1LDkgKzMyMjcsMTMgQEAgZXZhbHVhdGVfc3ViZXhwX2Zvcl9zaXplb2YgKHN0cnVjdCBleHBy ZXNzaW9uICpleHAsIGludCAqcG9zKQorQEAgLTMwNTgsOSArMzIyNSwxMyBAQCBldmFsdWF0ZV9z dWJleHBfZm9yX3NpemVvZiAoc3RydWN0IGV4cHJlc3Npb24gKmV4cCwgaW50ICpwb3MpCiAgCiAg ICAgIGNhc2UgT1BfVkFSX1ZBTFVFOgogICAgICAgICgqcG9zKSArPSA0OwpAQCAtMzEyNiw3ICsz MTQ1LDcgQEAgaW5kZXggZGUyNWIzOS4uZjljN2E4MiAxMDA2NDQKICAKICAgICAgZGVmYXVsdDoK ICAgICAgICB2YWwgPSBldmFsdWF0ZV9zdWJleHAgKE5VTExfVFlQRSwgZXhwLCBwb3MsIEVWQUxf QVZPSURfU0lERV9FRkZFQ1RTKTsKLUBAIC0zMTA4LDE4ICszMjY0LDI1IEBAIHBhcnNlX2FuZF9l dmFsX3R5cGUgKGNoYXIgKnAsIGludCBsZW5ndGgpCitAQCAtMzA5MSwxOCArMzI2MiwyNSBAQCBw YXJzZV9hbmRfZXZhbF90eXBlIChjaGFyICpwLCBpbnQgbGVuZ3RoKQogIGludAogIGNhbGNfZjc3 X2FycmF5X2RpbXMgKHN0cnVjdCB0eXBlICphcnJheV90eXBlKQogIHsKQEAgLTM1NjgsNyArMzU4 Nyw3IEBAIGluZGV4IGZmYjdmNTMuLmEyZTdlOTQgMTAwNjQ0CiAgCiAgYiBpbnRlcm5hbF9lcnJv cgogZGlmZiAtLWdpdCBhL2dkYi9nZGJ0eXBlcy5jIGIvZ2RiL2dkYnR5cGVzLmMKLWluZGV4IDkx ZmFmYTIuLjBlOTEyNDggMTAwNjQ0CitpbmRleCA5MWZhZmEyLi5lZGEyNTA2IDEwMDY0NAogLS0t IGEvZ2RiL2dkYnR5cGVzLmMKICsrKyBiL2dkYi9nZGJ0eXBlcy5jCiBAQCAtMzksNiArMzksOSBA QApAQCAtMzU4MSwyNSArMzYwMCwyOCBAQCBpbmRleCA5MWZhZmEyLi4wZTkxMjQ4IDEwMDY0NAog IAogIAogIC8qIEluaXRpYWxpemUgQkFETkVTUyBjb25zdGFudHMuICAqLwotQEAgLTE0NCw3ICsx NDcsMTQgQEAgc3RhdGljIHZvaWQgcHJpbnRfYml0X3ZlY3RvciAoQl9UWVBFICosIGludCk7CitA QCAtMTQ0LDcgKzE0NywxNiBAQCBzdGF0aWMgdm9pZCBwcmludF9iaXRfdmVjdG9yIChCX1RZUEUg KiwgaW50KTsKICBzdGF0aWMgdm9pZCBwcmludF9hcmdfdHlwZXMgKHN0cnVjdCBmaWVsZCAqLCBp bnQsIGludCk7CiAgc3RhdGljIHZvaWQgZHVtcF9mbl9maWVsZGxpc3RzIChzdHJ1Y3QgdHlwZSAq LCBpbnQpOwogIHN0YXRpYyB2b2lkIHByaW50X2NwbHVzX3N0dWZmIChzdHJ1Y3QgdHlwZSAqLCBp bnQpOwogK3N0YXRpYyBMT05HRVNUIHR5cGVfbGVuZ3RoX2dldCAoc3RydWN0IHR5cGUgKnR5cGUs IHN0cnVjdCB0eXBlICp0YXJnZXRfdHlwZSwKICsJCQkJaW50IGZ1bGxfc3Bhbik7CiAgCisrI2lm IDAKICsvKiBUaGUgaGFzaCB0YWJsZSBob2xkaW5nIGFsbCBkaXNjYXJkYWJsZSBgc3RydWN0IHR5 cGUgKicgcmVmZXJlbmNlcy4gICovCiArc3RhdGljIGh0YWJfdCB0eXBlX2Rpc2NhcmRhYmxlX3Rh YmxlOwogKwogKy8qIEN1cnJlbnQgdHlwZV9kaXNjYXJkYWJsZV9jaGVjayBwYXNzIHVzZWQgZm9y IFRZUEVfRElTQ0FSREFCTEVfQUdFLiAgKi8KICtzdGF0aWMgaW50IHR5cGVfZGlzY2FyZGFibGVf YWdlX2N1cnJlbnQ7CisrI2VuZGlmCiAgCiAgLyogQWxsb2NhdGUgYSBuZXcgT0JKRklMRS1hc3Nv Y2lhdGVkIHR5cGUgc3RydWN0dXJlIGFuZCBmaWxsIGl0CiAgICAgd2l0aCBzb21lIGRlZmF1bHRz LiAgU3BhY2UgZm9yIHRoZSB0eXBlIHN0cnVjdHVyZSBpcyBhbGxvY2F0ZWQKLUBAIC0xNzUsNiAr MTg1LDM5IEBAIGFsbG9jX3R5cGUgKHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlKQorQEAgLTE3NSw2 ICsxODcsNDMgQEAgYWxsb2NfdHlwZSAoc3RydWN0IG9iamZpbGUgKm9iamZpbGUpCiAgICByZXR1 cm4gdHlwZTsKICB9CiAgCisrI2lmIDAKICsvKiBEZWNsYXJlIFRZUEUgYXMgZGlzY2FyZGFibGUg b24gbmV4dCBnYXJiYWdlIGNvbGxlY3Rpb24gYnkgZnJlZV9hbGxfdHlwZXMuCiArICAgWW91IG11 c3QgY2FsbCB0eXBlX21hcmtfdXNlZCBkdXJpbmcgZWFjaCBmcmVlX2FsbF90eXBlcyB0byBwcm90 ZWN0IFRZUEUgZnJvbQogKyAgIGJlaW5nIGRlYWxsb2NhdGVkLiAgKi8KQEAgLTM2MTgsNiArMzY0 MCw3IEBAIGluZGV4IDkxZmFmYTIuLjBlOTEyNDggMTAwNjQ0CiArICBnZGJfYXNzZXJ0ICghKnNs b3QpOwogKyAgKnNsb3QgPSB0eXBlOwogK30KKysjZW5kaWYKICsKICsvKiBBbGxvY2F0ZSBhIG5l dyB0eXBlIGxpa2UgYWxsb2NfdHlwZSBidXQgcHJlc2VydmUgZm9yIGl0IHRoZSBkaXNjYXJkYWJp bGl0eQogKyAgIHN0YXRlIG9mIFBBUkVOVF9UWVBFLiAgKi8KQEAgLTM2MjcsOCArMzY1MCwxMCBA QCBpbmRleCA5MWZhZmEyLi4wZTkxMjQ4IDEwMDY0NAogK3sKICsgIHN0cnVjdCB0eXBlICpuZXdf dHlwZSA9IGFsbG9jX3R5cGVfY29weSAocGFyZW50X3R5cGUpOwogKworKyNpZiAwCiArICBpZiAo VFlQRV9ESVNDQVJEQUJMRSAocGFyZW50X3R5cGUpKQogKyAgICBzZXRfdHlwZV9hc19kaXNjYXJk YWJsZSAobmV3X3R5cGUpOworKyNlbmRpZgogKwogKyAgcmV0dXJuIG5ld190eXBlOwogK30KQEAg LTM2MzYsNyArMzY2MSw3IEBAIGluZGV4IDkxZmFmYTIuLjBlOTEyNDggMTAwNjQ0CiAgLyogQWxs b2NhdGUgYSBuZXcgR0RCQVJDSC1hc3NvY2lhdGVkIHR5cGUgc3RydWN0dXJlIGFuZCBmaWxsIGl0 CiAgICAgd2l0aCBzb21lIGRlZmF1bHRzLiAgU3BhY2UgZm9yIHRoZSB0eXBlIHN0cnVjdHVyZSBp cyBhbGxvY2F0ZWQKICAgICBvbiB0aGUgaGVhcC4gICovCi1AQCAtMzAwLDcgKzM0Myw3IEBAIG1h a2VfcG9pbnRlcl90eXBlIChzdHJ1Y3QgdHlwZSAqdHlwZSwgc3RydWN0IHR5cGUgKip0eXBlcHRy KQorQEAgLTMwMCw3ICszNDksNyBAQCBtYWtlX3BvaW50ZXJfdHlwZSAoc3RydWN0IHR5cGUgKnR5 cGUsIHN0cnVjdCB0eXBlICoqdHlwZXB0cikKICAKICAgIGlmICh0eXBlcHRyID09IDAgfHwgKnR5 cGVwdHIgPT0gMCkJLyogV2UnbGwgbmVlZCB0byBhbGxvY2F0ZSBvbmUuICAqLwogICAgICB7CkBA IC0zNjQ1LDcgKzM2NzAsNyBAQCBpbmRleCA5MWZhZmEyLi4wZTkxMjQ4IDEwMDY0NAogICAgICAg IGlmICh0eXBlcHRyKQogIAkqdHlwZXB0ciA9IG50eXBlOwogICAgICB9Ci1AQCAtMzc3LDcgKzQy MCw3IEBAIG1ha2VfcmVmZXJlbmNlX3R5cGUgKHN0cnVjdCB0eXBlICp0eXBlLCBzdHJ1Y3QgdHlw ZSAqKnR5cGVwdHIpCitAQCAtMzc3LDcgKzQyNiw3IEBAIG1ha2VfcmVmZXJlbmNlX3R5cGUgKHN0 cnVjdCB0eXBlICp0eXBlLCBzdHJ1Y3QgdHlwZSAqKnR5cGVwdHIpCiAgCiAgICBpZiAodHlwZXB0 ciA9PSAwIHx8ICp0eXBlcHRyID09IDApCS8qIFdlJ2xsIG5lZWQgdG8gYWxsb2NhdGUgb25lLiAg Ki8KICAgICAgewpAQCAtMzY1NCw3ICszNjc5LDcgQEAgaW5kZXggOTFmYWZhMi4uMGU5MTI0OCAx MDA2NDQKICAgICAgICBpZiAodHlwZXB0cikKICAJKnR5cGVwdHIgPSBudHlwZTsKICAgICAgfQot QEAgLTc0OCw2ICs3OTEsNyBAQCBjcmVhdGVfcmFuZ2VfdHlwZSAoc3RydWN0IHR5cGUgKnJlc3Vs dF90eXBlLCBzdHJ1Y3QgdHlwZSAqaW5kZXhfdHlwZSwKK0BAIC03NDgsNiArNzk3LDcgQEAgY3Jl YXRlX3JhbmdlX3R5cGUgKHN0cnVjdCB0eXBlICpyZXN1bHRfdHlwZSwgc3RydWN0IHR5cGUgKmlu ZGV4X3R5cGUsCiAgICAgIFRZUEVfWkFMTE9DIChyZXN1bHRfdHlwZSwgc2l6ZW9mIChzdHJ1Y3Qg cmFuZ2VfYm91bmRzKSk7CiAgICBUWVBFX0xPV19CT1VORCAocmVzdWx0X3R5cGUpID0gbG93X2Jv dW5kOwogICAgVFlQRV9ISUdIX0JPVU5EIChyZXN1bHRfdHlwZSkgPSBoaWdoX2JvdW5kOwpAQCAt MzY2Miw3ICszNjg3LDcgQEAgaW5kZXggOTFmYWZhMi4uMGU5MTI0OCAxMDA2NDQKICAKICAgIGlm IChsb3dfYm91bmQgPj0gMCkKICAgICAgVFlQRV9VTlNJR05FRCAocmVzdWx0X3R5cGUpID0gMTsK LUBAIC04OTEsMjYgKzkzNSwzMSBAQCBjcmVhdGVfYXJyYXlfdHlwZSAoc3RydWN0IHR5cGUgKnJl c3VsdF90eXBlLAorQEAgLTg5MSwyNiArOTQxLDMxIEBAIGNyZWF0ZV9hcnJheV90eXBlIChzdHJ1 Y3QgdHlwZSAqcmVzdWx0X3R5cGUsCiAgCiAgICBUWVBFX0NPREUgKHJlc3VsdF90eXBlKSA9IFRZ UEVfQ09ERV9BUlJBWTsKICAgIFRZUEVfVEFSR0VUX1RZUEUgKHJlc3VsdF90eXBlKSA9IGVsZW1l bnRfdHlwZTsKQEAgLTM3MDcsNyArMzczMiw3IEBAIGluZGV4IDkxZmFmYTIuLjBlOTEyNDggMTAw NjQ0CiAgCiAgICByZXR1cm4gcmVzdWx0X3R5cGU7CiAgfQotQEAgLTE0MTMsNiArMTQ2MiwxMDUg QEAgc3R1Yl9ub25hbWVfY29tcGxhaW50ICh2b2lkKQorQEAgLTE0MTMsNiArMTQ2OCwxMDUgQEAg c3R1Yl9ub25hbWVfY29tcGxhaW50ICh2b2lkKQogICAgY29tcGxhaW50ICgmc3ltZmlsZV9jb21w bGFpbnRzLCBfKCJzdHViIHR5cGUgaGFzIE5VTEwgbmFtZSIpKTsKICB9CiAgCkBAIC0zODEzLDcg KzM4MzgsNyBAQCBpbmRleCA5MWZhZmEyLi4wZTkxMjQ4IDEwMDY0NAogIC8qIEZpbmQgdGhlIHJl YWwgdHlwZSBvZiBUWVBFLiAgVGhpcyBmdW5jdGlvbiByZXR1cm5zIHRoZSByZWFsIHR5cGUsCiAg ICAgYWZ0ZXIgcmVtb3ZpbmcgYWxsIGxheWVycyBvZiB0eXBlZGVmcywgYW5kIGNvbXBsZXRpbmcg b3BhcXVlIG9yIHN0dWIKICAgICB0eXBlcy4gIENvbXBsZXRpb24gY2hhbmdlcyB0aGUgVFlQRSBh cmd1bWVudCwgYnV0IHN0cmlwcGluZyBvZgotQEAgLTE1NzUsNTIgKzE3MjMsMzUgQEAgY2hlY2tf dHlwZWRlZiAoc3RydWN0IHR5cGUgKnR5cGUpCitAQCAtMTU3NSw1MiArMTcyOSwzNyBAQCBjaGVj a190eXBlZGVmIChzdHJ1Y3QgdHlwZSAqdHlwZSkKICAgICAgICAgIH0KICAgICAgfQogIApAQCAt MzgyOSw2ICszODU0LDggQEAgaW5kZXggOTFmYWZhMi4uMGU5MTI0OCAxMDA2NDQKICsgICAgICBo dGFiX2RlbGV0ZSAoY29waWVkX3R5cGVzKTsKICsKICsgICAgICBnZGJfYXNzZXJ0IChUWVBFX0RZ TkFNSUMgKHR5cGUpID09IDApOworKyAgICAgIC8qIEZvcmNlIFRZUEVfTEVOR1RIICh0eXBlKSBy ZWNhbGN1bGF0aW9uLiAgKi8KKysgICAgICBUWVBFX0RZTkFNSUMgKHR5cGUpID0gMTsKICsgICAg fQogKwogKyAgaWYgKFRZUEVfVEFSR0VUX1NUVUIgKHR5cGUpIHx8IFRZUEVfRFlOQU1JQyAodHlw ZSkpCkBAIC0zODg1LDcgKzM5MTIsNyBAQCBpbmRleCA5MWZhZmEyLi4wZTkxMjQ4IDEwMDY0NAog IAkgIFRZUEVfVEFSR0VUX1NUVUIgKHR5cGUpID0gMDsKICAJfQogICAgICAgIGVsc2UgaWYgKFRZ UEVfQ09ERSAodHlwZSkgPT0gVFlQRV9DT0RFX1JBTkdFKQotQEAgLTE2MjgsNiArMTc1OSw3IEBA IGNoZWNrX3R5cGVkZWYgKHN0cnVjdCB0eXBlICp0eXBlKQorQEAgLTE2MjgsNiArMTc2Nyw3IEBA IGNoZWNrX3R5cGVkZWYgKHN0cnVjdCB0eXBlICp0eXBlKQogIAkgIFRZUEVfTEVOR1RIICh0eXBl KSA9IFRZUEVfTEVOR1RIICh0YXJnZXRfdHlwZSk7CiAgCSAgVFlQRV9UQVJHRVRfU1RVQiAodHlw ZSkgPSAwOwogIAl9CkBAIC0zODkzLDcgKzM5MjAsNyBAQCBpbmRleCA5MWZhZmEyLi4wZTkxMjQ4 IDEwMDY0NAogICAgICB9CiAgCiAgICB0eXBlID0gbWFrZV9xdWFsaWZpZWRfdHlwZSAodHlwZSwg aW5zdGFuY2VfZmxhZ3MsIE5VTEwpOwotQEAgLTE5MDIsNiArMjAzNCw4IEBAIGluaXRfdHlwZSAo ZW51bSB0eXBlX2NvZGUgY29kZSwgaW50IGxlbmd0aCwgaW50IGZsYWdzLAorQEAgLTE5MDIsNiAr MjA0Miw4IEBAIGluaXRfdHlwZSAoZW51bSB0eXBlX2NvZGUgY29kZSwgaW50IGxlbmd0aCwgaW50 IGZsYWdzLAogICAgICBUWVBFX1NUVUJfU1VQUE9SVEVEICh0eXBlKSA9IDE7CiAgICBpZiAoZmxh Z3MgJiBUWVBFX0ZMQUdfRklYRURfSU5TVEFOQ0UpCiAgICAgIFRZUEVfRklYRURfSU5TVEFOQ0Ug KHR5cGUpID0gMTsKQEAgLTM5MDIsNyArMzkyOSw3IEBAIGluZGV4IDkxZmFmYTIuLjBlOTEyNDgg MTAwNjQ0CiAgCiAgICBpZiAobmFtZSkKICAgICAgVFlQRV9OQU1FICh0eXBlKSA9IG9ic2F2ZXN0 cmluZyAobmFtZSwgc3RybGVuIChuYW1lKSwKLUBAIC0zMjY0LDMzICszMzk4LDQyIEBAIHR5cGVf cGFpcl9lcSAoY29uc3Qgdm9pZCAqaXRlbV9saHMsIGNvbnN0IHZvaWQgKml0ZW1fcmhzKQorQEAg LTMyNjQsMzMgKzM0MDYsNDIgQEAgdHlwZV9wYWlyX2VxIChjb25zdCB2b2lkICppdGVtX2xocywg Y29uc3Qgdm9pZCAqaXRlbV9yaHMpCiAgfQogIAogIC8qIEFsbG9jYXRlIHRoZSBoYXNoIHRhYmxl IHVzZWQgYnkgY29weV90eXBlX3JlY3Vyc2l2ZSB0byB3YWxrCkBAIC0zOTYwLDcgKzM5ODcsNyBA QCBpbmRleCA5MWZhZmEyLi4wZTkxMjQ4IDEwMDY0NAogICAgICByZXR1cm4gdHlwZTsKICAKICAg IC8qIFRoaXMgdHlwZSBzaG91bGRuJ3QgYmUgcG9pbnRpbmcgdG8gYW55IHR5cGVzIGluIG90aGVy IG9iamZpbGVzOwotQEAgLTMzMDUsOSArMzQ0OCwxMCBAQCBjb3B5X3R5cGVfcmVjdXJzaXZlIChz dHJ1Y3Qgb2JqZmlsZSAqb2JqZmlsZSwKK0BAIC0zMzA1LDkgKzM0NTYsMTAgQEAgY29weV90eXBl X3JlY3Vyc2l2ZSAoc3RydWN0IG9iamZpbGUgKm9iamZpbGUsCiAgICBuZXdfdHlwZSA9IGFsbG9j X3R5cGVfYXJjaCAoZ2V0X3R5cGVfYXJjaCAodHlwZSkpOwogIAogICAgLyogV2UgbXVzdCBhZGQg dGhlIG5ldyB0eXBlIHRvIHRoZSBoYXNoIHRhYmxlIGltbWVkaWF0ZWx5LCBpbiBjYXNlCkBAIC0z OTc0LDE1ICs0MDAxLDE3IEBAIGluZGV4IDkxZmFmYTIuLjBlOTEyNDggMTAwNjQ0CiAgICBzdG9y ZWQtPm9sZCA9IHR5cGU7CiAgICBzdG9yZWQtPm5ldyA9IG5ld190eXBlOwogICAgKnNsb3QgPSBz dG9yZWQ7Ci1AQCAtMzMxOCw2ICszNDYyLDE5IEBAIGNvcHlfdHlwZV9yZWN1cnNpdmUgKHN0cnVj dCBvYmpmaWxlICpvYmpmaWxlLAorQEAgLTMzMTgsNiArMzQ3MCwyMSBAQCBjb3B5X3R5cGVfcmVj dXJzaXZlIChzdHJ1Y3Qgb2JqZmlsZSAqb2JqZmlsZSwKICAgIFRZUEVfT0JKRklMRV9PV05FRCAo bmV3X3R5cGUpID0gMDsKICAgIFRZUEVfT1dORVIgKG5ld190eXBlKS5nZGJhcmNoID0gZ2V0X3R5 cGVfYXJjaCAodHlwZSk7CiAgCisrI2lmIDAKICsgIC8qIFRZUEVfTUFJTl9UWVBFIG1lbW9yeSBj b3B5IGFib3ZlIHJld3JvdGUgdGhlIFRZUEVfRElTQ0FSREFCTEUgZmxhZyBzbyB3ZQogKyAgICAg bmVlZCB0byBpbml0aWFsaXplIGl0IGFnYWluLiAgQW5kIGV2ZW4gaWYgVFlQRSB3YXMgYWxyZWFk eSBkaXNjYXJkYWJsZQogKyAgICAgTkVXX1RZUEUgc28gZmFyIGlzIG5vdCByZWdpc3RlcmVkIGlu IFRZUEVfRElTQ0FSREFCTEVfVEFCTEUuICAqLwogKyAgVFlQRV9ESVNDQVJEQUJMRSAobmV3X3R5 cGUpID0gMDsKICsgIHNldF90eXBlX2FzX2Rpc2NhcmRhYmxlIChuZXdfdHlwZSk7CisrI2VuZGlm CiArCiArICAvKiBQcmUtY2xlYXIgdGhlIGZpZWxkcyBwcm9jZXNzZWQgYnkgZGVsZXRlX21haW5f dHlwZS4gIElmIERXQVJGIGJsb2NrCiArICAgICBldmFsdWF0aW9ucyBiZWxvdyBjYWxsIGVycm9y IHdlIHdvdWxkIGxlYXZlIGFuIHVuZnJlZWFibGUgVFlQRS4gICovCkBAIC0zOTk0LDcgKzQwMjMs NyBAQCBpbmRleCA5MWZhZmEyLi4wZTkxMjQ4IDEwMDY0NAogICAgaWYgKFRZUEVfTkFNRSAodHlw ZSkpCiAgICAgIFRZUEVfTkFNRSAobmV3X3R5cGUpID0geHN0cmR1cCAoVFlQRV9OQU1FICh0eXBl KSk7CiAgICBpZiAoVFlQRV9UQUdfTkFNRSAodHlwZSkpCi1AQCAtMzMyNiwxMiArMzQ4Myw0OCBA QCBjb3B5X3R5cGVfcmVjdXJzaXZlIChzdHJ1Y3Qgb2JqZmlsZSAqb2JqZmlsZSwKK0BAIC0zMzI2 LDEyICszNDkzLDQ4IEBAIGNvcHlfdHlwZV9yZWN1cnNpdmUgKHN0cnVjdCBvYmpmaWxlICpvYmpm aWxlLAogICAgVFlQRV9JTlNUQU5DRV9GTEFHUyAobmV3X3R5cGUpID0gVFlQRV9JTlNUQU5DRV9G TEFHUyAodHlwZSk7CiAgICBUWVBFX0xFTkdUSCAobmV3X3R5cGUpID0gVFlQRV9MRU5HVEggKHR5 cGUpOwogIApAQCAtNDA0Myw3ICs0MDcyLDcgQEAgaW5kZXggOTFmYWZhMi4uMGU5MTI0OCAxMDA2 NDQKICAgICAgICBUWVBFX0ZJRUxEUyAobmV3X3R5cGUpID0gWENBTExPQyAobmZpZWxkcywgc3Ry dWN0IGZpZWxkKTsKICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbmZpZWxkczsgaSsrKQogIAl7Ci1A QCAtMzM0MCw4ICszNTMzLDggQEAgY29weV90eXBlX3JlY3Vyc2l2ZSAoc3RydWN0IG9iamZpbGUg Km9iamZpbGUsCitAQCAtMzM0MCw4ICszNTQzLDggQEAgY29weV90eXBlX3JlY3Vyc2l2ZSAoc3Ry dWN0IG9iamZpbGUgKm9iamZpbGUsCiAgCSAgVFlQRV9GSUVMRF9CSVRTSVpFIChuZXdfdHlwZSwg aSkgPSBUWVBFX0ZJRUxEX0JJVFNJWkUgKHR5cGUsIGkpOwogIAkgIGlmIChUWVBFX0ZJRUxEX1RZ UEUgKHR5cGUsIGkpKQogIAkgICAgVFlQRV9GSUVMRF9UWVBFIChuZXdfdHlwZSwgaSkKQEAgLTQw NTQsNyArNDA4Myw3IEBAIGluZGV4IDkxZmFmYTIuLjBlOTEyNDggMTAwNjQ0CiAgCSAgaWYgKFRZ UEVfRklFTERfTkFNRSAodHlwZSwgaSkpCiAgCSAgICBUWVBFX0ZJRUxEX05BTUUgKG5ld190eXBl LCBpKSA9IAogIAkgICAgICB4c3RyZHVwIChUWVBFX0ZJRUxEX05BTUUgKHR5cGUsIGkpKTsKLUBA IC0zMzY4LDI0ICszNTYxLDE4NCBAQCBjb3B5X3R5cGVfcmVjdXJzaXZlIChzdHJ1Y3Qgb2JqZmls ZSAqb2JqZmlsZSwKK0BAIC0zMzY4LDI0ICszNTcxLDE4NCBAQCBjb3B5X3R5cGVfcmVjdXJzaXZl IChzdHJ1Y3Qgb2JqZmlsZSAqb2JqZmlsZSwKICAJfQogICAgICB9CiAgCkBAIC00MjQ2LDcgKzQy NzUsNyBAQCBpbmRleCA5MWZhZmEyLi4wZTkxMjQ4IDEwMDY0NAogICAgLyogTWF5YmUgY29weSB0 aGUgdHlwZV9zcGVjaWZpYyBiaXRzLgogIAogICAgICAgTk9URSBkcm93LzIwMDUtMTItMDk6IFdl IGRvIG5vdCBjb3B5IHRoZSBDKystc3BlY2lmaWMgYml0cyBsaWtlCi1AQCAtMzQwMiw2ICszNzU1 LDE3IEBAIGNvcHlfdHlwZV9yZWN1cnNpdmUgKHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlLAorQEAg LTM0MDIsNiArMzc2NSwxNyBAQCBjb3B5X3R5cGVfcmVjdXJzaXZlIChzdHJ1Y3Qgb2JqZmlsZSAq b2JqZmlsZSwKICAgIHJldHVybiBuZXdfdHlwZTsKICB9CiAgCkBAIC00MjY0LDEwICs0MjkzLDEx IEBAIGluZGV4IDkxZmFmYTIuLjBlOTEyNDggMTAwNjQ0CiAgLyogTWFrZSBhIGNvcHkgb2YgdGhl IGdpdmVuIFRZUEUsIGV4Y2VwdCB0aGF0IHRoZSBwb2ludGVyICYgcmVmZXJlbmNlCiAgICAgdHlw ZXMgYXJlIG5vdCBwcmVzZXJ2ZWQuCiAgICAgCi1AQCAtMzQyNCw2ICszNzg4LDE5OSBAQCBjb3B5 X3R5cGUgKGNvbnN0IHN0cnVjdCB0eXBlICp0eXBlKQorQEAgLTM0MjQsNiArMzc5OCwyMDEgQEAg Y29weV90eXBlIChjb25zdCBzdHJ1Y3QgdHlwZSAqdHlwZSkKICAgIHJldHVybiBuZXdfdHlwZTsK ICB9CiAgCisrI2lmIDAKICsvKiBDYWxsYmFjayB0eXBlIGZvciBtYWluX3R5cGVfY3Jhd2wuICAq LwogK3R5cGVkZWYgaW50ICgqbWFpbl90eXBlX2NyYXdsX2l0ZXIpIChzdHJ1Y3QgdHlwZSAqdHlw ZSwgdm9pZCAqZGF0YSk7CiArCkBAIC00NDYxLDEwICs0NDkxLDExIEBAIGluZGV4IDkxZmFmYTIu LjBlOTEyNDggMTAwNjQ0CiArCiArICBodGFiX3RyYXZlcnNlICh0eXBlX2Rpc2NhcmRhYmxlX3Rh YmxlLCB0eXBlX2Rpc2NhcmRhYmxlX3JlbW92ZSwgTlVMTCk7CiArfQorKyNlbmRpZgogIAogIC8q IEhlbHBlciBmdW5jdGlvbnMgdG8gaW5pdGlhbGl6ZSBhcmNoaXRlY3R1cmUtc3BlY2lmaWMgdHlw ZXMuICAqLwogIAotQEAgLTM3NzIsNiArNDMyOSw4IEBAIGdkYnR5cGVzX3Bvc3RfaW5pdCAoc3Ry dWN0IGdkYmFyY2ggKmdkYmFyY2gpCitAQCAtMzc3Miw2ICs0MzQxLDggQEAgZ2RidHlwZXNfcG9z dF9pbml0IChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCkKICAgICAgPSBsb29rdXBfcG9pbnRlcl90 eXBlIChidWlsdGluX3R5cGUtPmJ1aWx0aW5fdm9pZCk7CiAgICBidWlsdGluX3R5cGUtPmJ1aWx0 aW5fZnVuY19wdHIKICAgICAgPSBsb29rdXBfcG9pbnRlcl90eXBlIChsb29rdXBfZnVuY3Rpb25f dHlwZSAoYnVpbHRpbl90eXBlLT5idWlsdGluX3ZvaWQpKTsKQEAgLTQ0NzMsNyArNDUwNCw3IEBA IGluZGV4IDkxZmFmYTIuLjBlOTEyNDggMTAwNjQ0CiAgCiAgICAvKiBUaGlzIHR5cGUgcmVwcmVz ZW50cyBhIEdEQiBpbnRlcm5hbCBmdW5jdGlvbi4gICovCiAgICBidWlsdGluX3R5cGUtPmludGVy bmFsX2ZuCi1AQCAtMzg4NSw2ICs0NDQ0LDE4IEBAIG9iamZpbGVfdHlwZSAoc3RydWN0IG9iamZp bGUgKm9iamZpbGUpCitAQCAtMzg4NSw2ICs0NDU2LDE4IEBAIG9iamZpbGVfdHlwZSAoc3RydWN0 IG9iamZpbGUgKm9iamZpbGUpCiAgCQkgIjx0ZXh0IHZhcmlhYmxlLCBubyBkZWJ1ZyBpbmZvPiIs IG9iamZpbGUpOwogICAgVFlQRV9UQVJHRVRfVFlQRSAob2JqZmlsZV90eXBlLT5ub2RlYnVnX3Rl eHRfc3ltYm9sKQogICAgICA9IG9iamZpbGVfdHlwZS0+YnVpbHRpbl9pbnQ7CkBAIC00NDkyLDIw ICs0NTIzLDIyIEBAIGluZGV4IDkxZmFmYTIuLjBlOTEyNDggMTAwNjQ0CiAgICBvYmpmaWxlX3R5 cGUtPm5vZGVidWdfZGF0YV9zeW1ib2wKICAgICAgPSBpbml0X3R5cGUgKFRZUEVfQ09ERV9JTlQs CiAgCQkgZ2RiYXJjaF9pbnRfYml0IChnZGJhcmNoKSAvIEhPU1RfQ0hBUl9CSVQsIDAsCi1AQCAt MzkzOSw2ICs0NTEwLDExIEBAIHZvaWQKK0BAIC0zOTM5LDYgKzQ1MjIsMTMgQEAgdm9pZAogIF9p bml0aWFsaXplX2dkYnR5cGVzICh2b2lkKQogIHsKICAgIGdkYnR5cGVzX2RhdGEgPSBnZGJhcmNo X2RhdGFfcmVnaXN0ZXJfcG9zdF9pbml0IChnZGJ0eXBlc19wb3N0X2luaXQpOwogKworKyNpZiAw CiArICB0eXBlX2Rpc2NhcmRhYmxlX3RhYmxlID0gaHRhYl9jcmVhdGVfYWxsb2MgKDIwLCB0eXBl X2Rpc2NhcmRhYmxlX2hhc2gsCiArCQkJCQkgICAgIHR5cGVfZGlzY2FyZGFibGVfZXF1YWwsIE5V TEwsCiArCQkJCQkgICAgIHhjYWxsb2MsIHhmcmVlKTsKKysjZW5kaWYKICsKICAgIG9iamZpbGVf dHlwZV9kYXRhID0gcmVnaXN0ZXJfb2JqZmlsZV9kYXRhICgpOwogIAogICAgYWRkX3NldHNob3df emludGVnZXJfY21kICgib3ZlcmxvYWQiLCBub19jbGFzcywgJm92ZXJsb2FkX2RlYnVnLAogZGlm ZiAtLWdpdCBhL2dkYi9nZGJ0eXBlcy5oIGIvZ2RiL2dkYnR5cGVzLmgKLWluZGV4IGRlYmI0MWMu LmMzMWM5YjggMTAwNjQ0CitpbmRleCA1Zjg5ZmVjLi40YjQ3MjBhIDEwMDY0NAogLS0tIGEvZ2Ri L2dkYnR5cGVzLmgKICsrKyBiL2dkYi9nZGJ0eXBlcy5oCiBAQCAtMTcwLDYgKzE3MCw3IEBAIGVu dW0gdHlwZV9mbGFnX3ZhbHVlCkBAIC00NTQxLDEwICs0NTc0LDExIEBAIGluZGV4IGRlYmI0MWMu LmMzMWM5YjggMTAwNjQ0CiAgLyogVHlwZSBvd25lci4gIElmIFRZUEVfT0JKRklMRV9PV05FRCBp cyB0cnVlLCB0aGUgdHlwZSBpcyBvd25lZCBieQogICAgIHRoZSBvYmpmaWxlIHJldHJpZXZlZCBh cyBUWVBFX09CSkZJTEUuICBPdGhlcndlaXNlLCB0aGUgdHlwZSBpcwogICAgIG93bmVkIGJ5IGFu IGFyY2hpdGVjdHVyZTsgVFlQRV9PQkpGSUxFIGlzIE5VTEwgaW4gdGhpcyBjYXNlLiAgKi8KLUBA IC0yODUsNiArMjk3LDQ4IEBAIGVudW0gdHlwZV9pbnN0YW5jZV9mbGFnX3ZhbHVlCitAQCAtMjg1 LDYgKzI5Nyw1MCBAQCBlbnVtIHR5cGVfaW5zdGFuY2VfZmxhZ192YWx1ZQogIAogICNkZWZpbmUg VFlQRV9ERUNMQVJFRF9DTEFTUyh0KSAoVFlQRV9NQUlOX1RZUEUgKHQpLT5mbGFnX2RlY2xhcmVk X2NsYXNzKQogIAorKyNpZiAwCiArLyogRGVmaW5lIHRoaXMgdHlwZSBhcyBiZWluZyByZWNsYWlt YWJsZSBkdXJpbmcgZnJlZV9hbGxfdHlwZXMuICBUeXBlIGlzCiArICAgcmVxdWlyZWQgdG8gYmUg aGF2ZSBUWVBFX09CSkZJTEUgc2V0IHRvIE5VTEwuICBTZXR0aW5nIHRoaXMgZmxhZyByZXF1aXJl cwogKyAgIGluaXRpYWxpemluZyBUWVBFX0RJU0NBUkRBQkxFX0FHRSwgc2VlIGFsbG9jX3R5cGVf ZGlzY2FyZGFibGUuICAqLwpAQCAtNDU1Niw2ICs0NTkwLDcgQEAgaW5kZXggZGViYjQxYy4uYzMx YzliOCAxMDA2NDQKICsgICBieSBUWVBFX0RJU0NBUkRBQkxFX0FHRV9DVVJSRU5ULiAgKi8KICsK ICsjZGVmaW5lIFRZUEVfRElTQ0FSREFCTEVfQUdFKHQpCShUWVBFX01BSU5fVFlQRSAodCktPmZs YWdfZGlzY2FyZGFibGVfYWdlKQorKyNlbmRpZgogKwogKy8qIElzIEhJR0hfQk9VTkQgYSBsb3ct Ym91bmQgcmVsYXRpdmUgY291bnQgKDEpIG9yIHRoZSBoaWdoIGJvdW5kIGl0c2VsZiAoMCk/ICAq LwogKwpAQCAtNDU5MCw3ICs0NjI1LDcgQEAgaW5kZXggZGViYjQxYy4uYzMxYzliOCAxMDA2NDQK ICAvKiBDb25zdGFudCB0eXBlLiAgSWYgdGhpcyBpcyBzZXQsIHRoZSBjb3JyZXNwb25kaW5nIHR5 cGUgaGFzIGEKICAgICBjb25zdCBtb2RpZmllci4gICovCiAgCi1AQCAtMzg3LDExICs0NDEsMTkg QEAgc3RydWN0IG1haW5fdHlwZQorQEAgLTM4NywxMSArNDQzLDIxIEBAIHN0cnVjdCBtYWluX3R5 cGUKICAgIHVuc2lnbmVkIGludCBmbGFnX3ZhcmFyZ3MgOiAxOwogICAgdW5zaWduZWQgaW50IGZs YWdfdmVjdG9yIDogMTsKICAgIHVuc2lnbmVkIGludCBmbGFnX3N0dWJfc3VwcG9ydGVkIDogMTsK QEAgLTQ2MDAsOCArNDYzNSwxMCBAQCBpbmRleCBkZWJiNDFjLi5jMzFjOWI4IDEwMDY0NAogICAg LyogVHJ1ZSBpZiB0aGlzIHR5cGUgd2FzIGRlY2xhcmVkIHdpdGggImNsYXNzIiByYXRoZXIgdGhh bgogICAgICAgInN0cnVjdCIuICAqLwogICAgdW5zaWduZWQgaW50IGZsYWdfZGVjbGFyZWRfY2xh c3MgOiAxOworKyNpZiAwCiArICB1bnNpZ25lZCBpbnQgZmxhZ19kaXNjYXJkYWJsZSA6IDE7CiAr ICB1bnNpZ25lZCBpbnQgZmxhZ19kaXNjYXJkYWJsZV9hZ2UgOiAxOworKyNlbmRpZgogKyAgdW5z aWduZWQgaW50IGZsYWdfZHluYW1pYyA6IDE7CiArICB1bnNpZ25lZCBpbnQgZmxhZ19yYW5nZV9o aWdoX2JvdW5kX2lzX2NvdW50IDogMTsKICsgIHVuc2lnbmVkIGludCBmbGFnX25vdF9hbGxvY2F0 ZWQgOiAxOwpAQCAtNDYxMCw3ICs0NjQ3LDcgQEAgaW5kZXggZGViYjQxYy4uYzMxYzliOCAxMDA2 NDQKICAKICAgIC8qIEEgZGlzY3JpbWluYW50IHRlbGxpbmcgdXMgd2hpY2ggZmllbGQgb2YgdGhl IHR5cGVfc3BlY2lmaWMgdW5pb24KICAgICAgIGlzIGJlaW5nIHVzZWQgZm9yIHRoaXMgdHlwZSwg aWYgYW55LiAgKi8KLUBAIC00NjUsNiArNTI3LDIwIEBAIHN0cnVjdCBtYWluX3R5cGUKK0BAIC00 NjUsNiArNTMxLDIwIEBAIHN0cnVjdCBtYWluX3R5cGUKICAKICAgIHN0cnVjdCB0eXBlICp0YXJn ZXRfdHlwZTsKICAKQEAgLTQ2MzEsNyArNDY2OCw3IEBAIGluZGV4IGRlYmI0MWMuLmMzMWM5Yjgg MTAwNjQ0CiAgICAvKiBGb3Igc3RydWN0dXJlIGFuZCB1bmlvbiB0eXBlcywgYSBkZXNjcmlwdGlv biBvZiBlYWNoIGZpZWxkLgogICAgICAgRm9yIHNldCBhbmQgcGFzY2FsIGFycmF5IHR5cGVzLCB0 aGVyZSBpcyBvbmUgImZpZWxkIiwKICAgICAgIHdob3NlIHR5cGUgaXMgdGhlIGRvbWFpbiB0eXBl IG9mIHRoZSBzZXQgb3IgYXJyYXkuCi1AQCAtNTM5LDEzICs2MTUsMzQgQEAgc3RydWN0IG1haW5f dHlwZQorQEAgLTUzOSwxMyArNjE5LDM0IEBAIHN0cnVjdCBtYWluX3R5cGUKICAKICAgICAgc3Ry dWN0IHJhbmdlX2JvdW5kcwogICAgICB7CkBAIC00NjcxLDcgKzQ3MDgsNyBAQCBpbmRleCBkZWJi NDFjLi5jMzFjOWI4IDEwMDY0NAogIAogICAgICAgIC8qIEZsYWdzIGluZGljYXRpbmcgd2hldGhl ciB0aGUgdmFsdWVzIG9mIGxvdyBhbmQgaGlnaCBhcmUKICAgICAgICAgICB2YWxpZC4gIFdoZW4g dHJ1ZSwgdGhlIHJlc3BlY3RpdmUgcmFuZ2UgdmFsdWUgaXMKLUBAIC05MTgsOSArMTAxNSw5IEBA IGV4dGVybiB2b2lkIGFsbG9jYXRlX2duYXRfYXV4X3R5cGUgKHN0cnVjdCB0eXBlICopOworQEAg LTkxOCw5ICsxMDE5LDkgQEAgZXh0ZXJuIHZvaWQgYWxsb2NhdGVfZ25hdF9hdXhfdHlwZSAoc3Ry dWN0IHR5cGUgKik7CiAgI2RlZmluZSBUWVBFX1BPSU5URVJfVFlQRSh0aGlzdHlwZSkgKHRoaXN0 eXBlKS0+cG9pbnRlcl90eXBlCiAgI2RlZmluZSBUWVBFX1JFRkVSRU5DRV9UWVBFKHRoaXN0eXBl KSAodGhpc3R5cGUpLT5yZWZlcmVuY2VfdHlwZQogICNkZWZpbmUgVFlQRV9DSEFJTih0aGlzdHlw ZSkgKHRoaXN0eXBlKS0+Y2hhaW4KQEAgLTQ2ODQsNyArNDcyMSw3IEBAIGluZGV4IGRlYmI0MWMu LmMzMWM5YjggMTAwNjQ0CiAgICAgY2FsbHMgY2hlY2tfdHlwZWRlZiwgVFlQRV9MRU5HVEggKFZB TFVFX1RZUEUgKFgpKSBpcyBzYWZlLiAgKi8KICAjZGVmaW5lIFRZUEVfTEVOR1RIKHRoaXN0eXBl KSAodGhpc3R5cGUpLT5sZW5ndGgKICAvKiBOb3RlIHRoYXQgVFlQRV9DT0RFIGNhbiBiZSBUWVBF X0NPREVfVFlQRURFRiwgc28gaWYgeW91IHdhbnQgdGhlIHJlYWwKLUBAIC05MjgsMTEgKzEwMjUs MTYgQEAgZXh0ZXJuIHZvaWQgYWxsb2NhdGVfZ25hdF9hdXhfdHlwZSAoc3RydWN0IHR5cGUgKik7 CitAQCAtOTI4LDExICsxMDI5LDE2IEBAIGV4dGVybiB2b2lkIGFsbG9jYXRlX2duYXRfYXV4X3R5 cGUgKHN0cnVjdCB0eXBlICopOwogICNkZWZpbmUgVFlQRV9DT0RFKHRoaXN0eXBlKSBUWVBFX01B SU5fVFlQRSh0aGlzdHlwZSktPmNvZGUKICAjZGVmaW5lIFRZUEVfTkZJRUxEUyh0aGlzdHlwZSkg VFlQRV9NQUlOX1RZUEUodGhpc3R5cGUpLT5uZmllbGRzCiAgI2RlZmluZSBUWVBFX0ZJRUxEUyh0 aGlzdHlwZSkgVFlQRV9NQUlOX1RZUEUodGhpc3R5cGUpLT5mbGRzX2JuZHMuZmllbGRzCkBAIC00 NzAzLDcgKzQ3NDAsNyBAQCBpbmRleCBkZWJiNDFjLi5jMzFjOWI4IDEwMDY0NAogICNkZWZpbmUg VFlQRV9MT1dfQk9VTkRfVU5ERUZJTkVEKHJhbmdlX3R5cGUpIFwKICAgICBUWVBFX1JBTkdFX0RB VEEocmFuZ2VfdHlwZSktPmxvd191bmRlZmluZWQKICAjZGVmaW5lIFRZUEVfSElHSF9CT1VORF9V TkRFRklORUQocmFuZ2VfdHlwZSkgXAotQEAgLTk0OSw3ICsxMDUxLDE0IEBAIGV4dGVybiB2b2lk IGFsbG9jYXRlX2duYXRfYXV4X3R5cGUgKHN0cnVjdCB0eXBlICopOworQEAgLTk0OSw3ICsxMDU1 LDE0IEBAIGV4dGVybiB2b2lkIGFsbG9jYXRlX2duYXRfYXV4X3R5cGUgKHN0cnVjdCB0eXBlICop OwogICAgIChUWVBFX0hJR0hfQk9VTkQoVFlQRV9JTkRFWF9UWVBFKChhcnJheXR5cGUpKSkpCiAg CiAgI2RlZmluZSBUWVBFX0FSUkFZX0xPV0VSX0JPVU5EX1ZBTFVFKGFycmF5dHlwZSkgXApAQCAt NDcxOSw3ICs0NzU2LDcgQEAgaW5kZXggZGViYjQxYy4uYzMxYzliOCAxMDA2NDQKICAKICAvKiBD KysgKi8KICAKLUBAIC0xMTc4LDYgKzEyODcsMTAgQEAgc3RydWN0IGJ1aWx0aW5fdHlwZQorQEAg LTExNzgsNiArMTI5MSwxMCBAQCBzdHJ1Y3QgYnVpbHRpbl90eXBlCiAgICAgICAoKikgKCkgY2Fu IHNlcnZlciBhcyBhIGdlbmVyaWMgZnVuY3Rpb24gcG9pbnRlci4gICovCiAgICBzdHJ1Y3QgdHlw ZSAqYnVpbHRpbl9mdW5jX3B0cjsKICAKQEAgLTQ3MzAsNyArNDc2Nyw3IEBAIGluZGV4IGRlYmI0 MWMuLmMzMWM5YjggMTAwNjQ0CiAgCiAgICAvKiBTcGVjaWFsLXB1cnBvc2UgdHlwZXMuICAqLwog IAotQEAgLTEyMTgsNiArMTMzMSw4IEBAIHN0cnVjdCBvYmpmaWxlX3R5cGUKK0BAIC0xMjE4LDYg KzEzMzUsOCBAQCBzdHJ1Y3Qgb2JqZmlsZV90eXBlCiAgCiAgICAvKiBUeXBlcyB1c2VkIGZvciBz eW1ib2xzIHdpdGggbm8gZGVidWcgaW5mb3JtYXRpb24uICAqLwogICAgc3RydWN0IHR5cGUgKm5v ZGVidWdfdGV4dF9zeW1ib2w7CkBAIC00NzM5LDcgKzQ3NzYsNyBAQCBpbmRleCBkZWJiNDFjLi5j MzFjOWI4IDEwMDY0NAogICAgc3RydWN0IHR5cGUgKm5vZGVidWdfZGF0YV9zeW1ib2w7CiAgICBz dHJ1Y3QgdHlwZSAqbm9kZWJ1Z191bmtub3duX3N5bWJvbDsKICAgIHN0cnVjdCB0eXBlICpub2Rl YnVnX3Rsc19zeW1ib2w7Ci1AQCAtMTM2NSw2ICsxNDgwLDE4IEBAIGV4dGVybiBzdHJ1Y3QgdHlw ZSAqY3JlYXRlX2FycmF5X3R5cGUgKHN0cnVjdCB0eXBlICosIHN0cnVjdCB0eXBlICosCitAQCAt MTM2NSw2ICsxNDg0LDE4IEBAIGV4dGVybiBzdHJ1Y3QgdHlwZSAqY3JlYXRlX2FycmF5X3R5cGUg KHN0cnVjdCB0eXBlICosIHN0cnVjdCB0eXBlICosCiAgCQkJCSAgICAgICBzdHJ1Y3QgdHlwZSAq KTsKICBleHRlcm4gc3RydWN0IHR5cGUgKmxvb2t1cF9hcnJheV9yYW5nZV90eXBlIChzdHJ1Y3Qg dHlwZSAqLCBpbnQsIGludCk7CiAgCkBAIC00NzU4LDE2ICs0Nzk1LDE4IEBAIGluZGV4IGRlYmI0 MWMuLmMzMWM5YjggMTAwNjQ0CiAgZXh0ZXJuIHN0cnVjdCB0eXBlICpjcmVhdGVfc3RyaW5nX3R5 cGUgKHN0cnVjdCB0eXBlICosIHN0cnVjdCB0eXBlICosCiAgCQkJCQlzdHJ1Y3QgdHlwZSAqKTsK ICBleHRlcm4gc3RydWN0IHR5cGUgKmxvb2t1cF9zdHJpbmdfcmFuZ2VfdHlwZSAoc3RydWN0IHR5 cGUgKiwgaW50LCBpbnQpOwotQEAgLTE0MTAsNiArMTUzNyw4IEBAIGV4dGVybiBpbnQgaXNfcHVi bGljX2FuY2VzdG9yIChzdHJ1Y3QgdHlwZSAqLCBzdHJ1Y3QgdHlwZSAqKTsKK0BAIC0xNDEwLDYg KzE1NDEsMTAgQEAgZXh0ZXJuIGludCBpc19wdWJsaWNfYW5jZXN0b3IgKHN0cnVjdCB0eXBlICos IHN0cnVjdCB0eXBlICopOwogIAogIGV4dGVybiBpbnQgaXNfdW5pcXVlX2FuY2VzdG9yIChzdHJ1 Y3QgdHlwZSAqLCBzdHJ1Y3QgdmFsdWUgKik7CiAgCisrI2lmIDAKICtleHRlcm4gdm9pZCB0eXBl X21hcmtfdXNlZCAoc3RydWN0IHR5cGUgKnR5cGUpOworKyNlbmRpZgogKwogIC8qIE92ZXJsb2Fk IHJlc29sdXRpb24gKi8KICAKICAjZGVmaW5lIExFTkdUSF9NQVRDSChidikgKChidiktPnJhbmtb MF0pCi1AQCAtMTQ4MiwxMCArMTYxMSwxMSBAQCBleHRlcm4gdm9pZCBtYWludGVuYW5jZV9wcmlu dF90eXBlIChjaGFyICosIGludCk7CitAQCAtMTQ4MiwxMCArMTYxNywxMyBAQCBleHRlcm4gdm9p ZCBtYWludGVuYW5jZV9wcmludF90eXBlIChjaGFyICosIGludCk7CiAgCiAgZXh0ZXJuIGh0YWJf dCBjcmVhdGVfY29waWVkX3R5cGVzX2hhc2ggKHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlKTsKICAK QEAgLTQ3NzgsMTEgKzQ4MTcsMTMgQEAgaW5kZXggZGViYjQxYy4uYzMxYzliOCAxMDA2NDQKICAK ICBleHRlcm4gc3RydWN0IHR5cGUgKmNvcHlfdHlwZSAoY29uc3Qgc3RydWN0IHR5cGUgKnR5cGUp OwogIAorKyNpZiAwCiArZXh0ZXJuIHZvaWQgZnJlZV9hbGxfdHlwZXMgKHZvaWQpOworKyNlbmRp ZgogKwogICNlbmRpZiAvKiBHREJUWVBFU19IICovCiBkaWZmIC0tZ2l0IGEvZ2RiL2kzODYtbGlu dXgtbmF0LmMgYi9nZGIvaTM4Ni1saW51eC1uYXQuYwotaW5kZXggYzNjYmJjYy4uN2Y4NmMyOSAx MDA2NDQKK2luZGV4IGUzMmExMTkuLjIwMjRhZTggMTAwNjQ0CiAtLS0gYS9nZGIvaTM4Ni1saW51 eC1uYXQuYwogKysrIGIvZ2RiL2kzODYtbGludXgtbmF0LmMKIEBAIC02NDksMjIgKzY0OSwxMyBA QCBpMzg2X2xpbnV4X3N0b3JlX2luZmVyaW9yX3JlZ2lzdGVycyAoc3RydWN0IHRhcmdldF9vcHMg Km9wcywKQEAgLTQ5OTAsNyArNTAzMSw3IEBAIGluZGV4IGMzY2JiY2MuLjdmODZjMjkgMTAwNjQ0 CiAgDAogIAogZGlmZiAtLWdpdCBhL2dkYi9pMzg2LW5hdC5jIGIvZ2RiL2kzODYtbmF0LmMKLWlu ZGV4IDA2MDZjZTEuLjFhZDBlMzkgMTAwNjQ0CitpbmRleCA3ZTY4MTRlLi5iMWU4ZTdkIDEwMDY0 NAogLS0tIGEvZ2RiL2kzODYtbmF0LmMKICsrKyBiL2dkYi9pMzg2LW5hdC5jCiBAQCAtMjUsNiAr MjUsNyBAQApAQCAtNTIwOCw3ICs1MjQ5LDcgQEAgaW5kZXggMDYwNmNlMS4uMWFkMGUzOSAxMDA2 NDQKICAgICAgICBpKys7CiAgICAgIH0KICB9Ci1AQCAtMzEyLDYgKzM4Niw3IEBAIEludmFsaWQg aGFyZHdhcmUgYnJlYWtwb2ludCBsZW5ndGggJWQgaW4gaTM4Nl9sZW5ndGhfYW5kX3J3X2JpdHMu XG4iKSwgbGVuKTsKK0BAIC0zMTMsNiArMzg3LDcgQEAgSW52YWxpZCBoYXJkd2FyZSBicmVha3Bv aW50IGxlbmd0aCAlZCBpbiBpMzg2X2xlbmd0aF9hbmRfcndfYml0cy5cbiIpLCBsZW4pOwogIHN0 YXRpYyBpbnQKICBpMzg2X2luc2VydF9hbGlnbmVkX3dhdGNocG9pbnQgKENPUkVfQUREUiBhZGRy LCB1bnNpZ25lZCBsZW5fcndfYml0cykKICB7CkBAIC01MjE2LDcgKzUyNTcsNyBAQCBpbmRleCAw NjA2Y2UxLi4xYWQwZTM5IDEwMDY0NAogICAgaW50IGk7CiAgCiAgICBpZiAoIWkzODZfZHJfbG93 LnNldF9hZGRyIHx8ICFpMzg2X2RyX2xvdy5zZXRfY29udHJvbCkKLUBAIC0zMjIsMTEgKzM5Nywx MCBAQCBpMzg2X2luc2VydF9hbGlnbmVkX3dhdGNocG9pbnQgKENPUkVfQUREUiBhZGRyLCB1bnNp Z25lZCBsZW5fcndfYml0cykKK0BAIC0zMjMsMTEgKzM5OCwxMCBAQCBpMzg2X2luc2VydF9hbGln bmVkX3dhdGNocG9pbnQgKENPUkVfQUREUiBhZGRyLCB1bnNpZ25lZCBsZW5fcndfYml0cykKICAg ICAgIHJldXNlIGl0IGZvciB0aGlzIHdhdGNocG9pbnQgYXMgd2VsbCAoYW5kIHNhdmUgYSByZWdp c3RlcikuICAqLwogICAgQUxMX0RFQlVHX1JFR0lTVEVSUyhpKQogICAgICB7CkBAIC01MjMxLDcg KzUyNzIsNyBAQCBpbmRleCAwNjA2Y2UxLi4xYWQwZTM5IDEwMDY0NAogIAkgIHJldHVybiAwOwog IAl9CiAgICAgIH0KLUBAIC0zMzQsNyArNDA4LDcgQEAgaTM4Nl9pbnNlcnRfYWxpZ25lZF93YXRj aHBvaW50IChDT1JFX0FERFIgYWRkciwgdW5zaWduZWQgbGVuX3J3X2JpdHMpCitAQCAtMzM1LDcg KzQwOSw3IEBAIGkzODZfaW5zZXJ0X2FsaWduZWRfd2F0Y2hwb2ludCAoQ09SRV9BRERSIGFkZHIs IHVuc2lnbmVkIGxlbl9yd19iaXRzKQogICAgLyogTmV4dCwgbG9vayBmb3IgYSB2YWNhbnQgZGVi dWcgcmVnaXN0ZXIuICAqLwogICAgQUxMX0RFQlVHX1JFR0lTVEVSUyhpKQogICAgICB7CkBAIC01 MjQwLDcgKzUyODEsNyBAQCBpbmRleCAwNjA2Y2UxLi4xYWQwZTM5IDEwMDY0NAogIAlicmVhazsK ICAgICAgfQogIAotQEAgLTM0NSw5ICs0MTksOSBAQCBpMzg2X2luc2VydF9hbGlnbmVkX3dhdGNo cG9pbnQgKENPUkVfQUREUiBhZGRyLCB1bnNpZ25lZCBsZW5fcndfYml0cykKK0BAIC0zNDYsOSAr NDIwLDkgQEAgaTM4Nl9pbnNlcnRfYWxpZ25lZF93YXRjaHBvaW50IChDT1JFX0FERFIgYWRkciwg dW5zaWduZWQgbGVuX3J3X2JpdHMpCiAgICAvKiBOb3cgc2V0IHVwIHRoZSByZWdpc3RlciBJIHRv IHdhdGNoIG91ciByZWdpb24uICAqLwogIAogICAgLyogUmVjb3JkIHRoZSBpbmZvIGluIG91ciBs b2NhbCBtaXJyb3JlZCBhcnJheS4gICovCkBAIC01MjUzLDcgKzUyOTQsNyBAQCBpbmRleCAwNjA2 Y2UxLi4xYWQwZTM5IDEwMDY0NAogICAgLyogTm90ZTogd2Ugb25seSBlbmFibGUgdGhlIHdhdGNo cG9pbnQgbG9jYWxseSwgaS5lLiBpbiB0aGUgY3VycmVudAogICAgICAgdGFzay4gIEN1cnJlbnRs eSwgbm8gaTM4NiB0YXJnZXQgYWxsb3dzIG9yIHN1cHBvcnRzIGdsb2JhbAogICAgICAgd2F0Y2hw b2ludHM7IGhvd2V2ZXIsIGlmIGFueSB0YXJnZXQgd291bGQgd2FudCB0aGF0IGluIHRoZQotQEAg LTM1NSwxMyArNDI5LDEzIEBAIGkzODZfaW5zZXJ0X2FsaWduZWRfd2F0Y2hwb2ludCAoQ09SRV9B RERSIGFkZHIsIHVuc2lnbmVkIGxlbl9yd19iaXRzKQorQEAgLTM1NiwxMyArNDMwLDEzIEBAIGkz ODZfaW5zZXJ0X2FsaWduZWRfd2F0Y2hwb2ludCAoQ09SRV9BRERSIGFkZHIsIHVuc2lnbmVkIGxl bl9yd19iaXRzKQogICAgICAgdG8gZW5hYmxlIHdhdGNocG9pbnRzIGdsb2JhbGx5IG9yIGxvY2Fs bHksIGFuZCB0aGUgY29kZSBiZWxvdwogICAgICAgc2hvdWxkIHVzZSBnbG9iYWwgb3IgbG9jYWwg ZW5hYmxlIGFuZCBzbG93LWRvd24gZmxhZ3MgYXMKICAgICAgIGFwcHJvcHJpYXRlLiAgKi8KQEAg LTUyNzEsNyArNTMxMiw3IEBAIGluZGV4IDA2MDZjZTEuLjFhZDBlMzkgMTAwNjQ0CiAgCiAgICAv KiBPbmx5IGEgc2FuaXR5IGNoZWNrIGZvciBsZWZ0b3ZlciBiaXRzIChzZXQgcG9zc2libHkgb25s eSBieSBpbmZlcmlvcikuICAqLwogICAgaWYgKGkzODZfZHJfbG93LnVuc2V0X3N0YXR1cykKLUBA IC0zNzksMjEgKzQ1MywyMSBAQCBpMzg2X2luc2VydF9hbGlnbmVkX3dhdGNocG9pbnQgKENPUkVf QUREUiBhZGRyLCB1bnNpZ25lZCBsZW5fcndfYml0cykKK0BAIC0zODAsMjEgKzQ1NCwyMSBAQCBp Mzg2X2luc2VydF9hbGlnbmVkX3dhdGNocG9pbnQgKENPUkVfQUREUiBhZGRyLCB1bnNpZ25lZCBs ZW5fcndfYml0cykKICBzdGF0aWMgaW50CiAgaTM4Nl9yZW1vdmVfYWxpZ25lZF93YXRjaHBvaW50 IChDT1JFX0FERFIgYWRkciwgdW5zaWduZWQgbGVuX3J3X2JpdHMpCiAgewpAQCAtNTMwMCw3ICs1 MzQxLDcgQEAgaW5kZXggMDYwNmNlMS4uMWFkMGUzOSAxMDA2NDQKICAJICAgICAgaWYgKGkzODZf ZHJfbG93LnJlc2V0X2FkZHIpCiAgCQlpMzg2X2RyX2xvdy5yZXNldF9hZGRyIChpKTsKICAJICAg IH0KLUBAIC01NTUsMjYgKzYyOSwyNyBAQCBpMzg2X3JlZ2lvbl9va19mb3Jfd2F0Y2hwb2ludCAo Q09SRV9BRERSIGFkZHIsIGludCBsZW4pCitAQCAtNTU2LDI2ICs2MzAsMjcgQEAgaTM4Nl9yZWdp b25fb2tfZm9yX3dhdGNocG9pbnQgKENPUkVfQUREUiBhZGRyLCBpbnQgbGVuKQogIHN0YXRpYyBp bnQKICBpMzg2X3N0b3BwZWRfZGF0YV9hZGRyZXNzIChzdHJ1Y3QgdGFyZ2V0X29wcyAqb3BzLCBD T1JFX0FERFIgKmFkZHJfcCkKICB7CkBAIC01MzMzLDcgKzUzNzQsNyBAQCBpbmRleCAwNjA2Y2Ux Li4xYWQwZTM5IDEwMDY0NAogIAkgIHJjID0gMTsKICAJICBpZiAobWFpbnRfc2hvd19kcikKICAJ ICAgIGkzODZfc2hvd19kciAoIndhdGNocG9pbnRfaGl0IiwgYWRkciwgLTEsIGh3X3dyaXRlKTsK LUBAIC02ODgsNiArNzYzLDEwIEBAIGkzODZfdXNlX3dhdGNocG9pbnRzIChzdHJ1Y3QgdGFyZ2V0 X29wcyAqdCkKK0BAIC02ODksNiArNzY0LDEwIEBAIGkzODZfdXNlX3dhdGNocG9pbnRzIChzdHJ1 Y3QgdGFyZ2V0X29wcyAqdCkKICAgIHQtPnRvX3JlbW92ZV93YXRjaHBvaW50ID0gaTM4Nl9yZW1v dmVfd2F0Y2hwb2ludDsKICAgIHQtPnRvX2luc2VydF9od19icmVha3BvaW50ID0gaTM4Nl9pbnNl cnRfaHdfYnJlYWtwb2ludDsKICAgIHQtPnRvX3JlbW92ZV9od19icmVha3BvaW50ID0gaTM4Nl9y ZW1vdmVfaHdfYnJlYWtwb2ludDsKQEAgLTU0OTIsNyArNTUzMyw3IEBAIGluZGV4IDc1ZGU1NmMu LjJhNjRhMGUgMTAwNjQ0CiAgICAgICAgLyogSGFuZGxlIHRoZSBjYXNlIG9mIGZ1bmN0aW9ucyBs YWNraW5nIGRlYnVnZ2luZyBpbmZvLgogICAgICAgICAgIFRoZWlyIHZhbHVlcyBhcmUgY2hhcmFj dGVycyBzaW5jZSB0aGVpciBhZGRyZXNzZXMgYXJlIGNoYXIuICAqLwogZGlmZiAtLWdpdCBhL2dk Yi9saW51eC1uYXQuYyBiL2dkYi9saW51eC1uYXQuYwotaW5kZXggY2Q4OGRmOC4uNDg2NjJiYSAx MDA2NDQKK2luZGV4IDkyMmEyY2YuLmY3ZjU3OTggMTAwNjQ0CiAtLS0gYS9nZGIvbGludXgtbmF0 LmMKICsrKyBiL2dkYi9saW51eC1uYXQuYwogQEAgLTEyNTQsNiArMTI1NCw2NCBAQCBpdGVyYXRl X292ZXJfbHdwcyAocHRpZF90IGZpbHRlciwKQEAgLTU3OTEsNyArNTgzMiw3IEBAIGluZGV4IDg0 OTc5OTEuLjQ2MzU4NTMgMTAwNjQ0CiAgCQkgICAgICAgU1lNQk9MX0xJTktBR0VfTkFNRSAodHN5 bWJvbCkpID09IDApCiAgCSAgcmV0dXJuIFNZTUJPTF9WQUxVRV9BRERSRVNTIChtc3ltYm9sKTsK IGRpZmYgLS1naXQgYS9nZGIvcC12YWxwcmludC5jIGIvZ2RiL3AtdmFscHJpbnQuYwotaW5kZXgg ZWU3NjU0Mi4uYWFmOGJlNiAxMDA2NDQKK2luZGV4IDYxOGZjMTcuLjExODBiMmYgMTAwNjQ0CiAt LS0gYS9nZGIvcC12YWxwcmludC5jCiArKysgYi9nZGIvcC12YWxwcmludC5jCiBAQCAtMzksNiAr MzksNyBAQApAQCAtNTg3MSw3ICs1OTEyLDcgQEAgaW5kZXggZWU3NjU0Mi4uYWFmOGJlNiAxMDA2 NDQKICB9CiAgDAogZGlmZiAtLWdpdCBhL2dkYi9wYXJzZS5jIGIvZ2RiL3BhcnNlLmMKLWluZGV4 IDg1NmMyNGQuLmRiYjM4YzUgMTAwNjQ0CitpbmRleCA4NTZjMjRkLi42ZGI3MWMzIDEwMDY0NAog LS0tIGEvZ2RiL3BhcnNlLmMKICsrKyBiL2dkYi9wYXJzZS5jCiBAQCAtNDg3LDkgKzQ4NywyMSBA QCB3cml0ZV9leHBfbXN5bWJvbCAoc3RydWN0IG1pbmltYWxfc3ltYm9sICptc3ltYm9sKQpAQCAt NTk5NCw3ICs2MDM1LDcgQEAgaW5kZXggODU2YzI0ZC4uZGJiMzhjNSAxMDA2NDQKICAJcmV0dXJu IDE7CiAgCiAgICAgICAgZW5kcG9zID0gcG9zOwotQEAgLTE2MTUsNyArMTY0MywyNiBAQCBleHBf dXNlc19vYmpmaWxlIChzdHJ1Y3QgZXhwcmVzc2lvbiAqZXhwLCBzdHJ1Y3Qgb2JqZmlsZSAqb2Jq ZmlsZSkKK0BAIC0xNjE1LDggKzE2NDMsMjkgQEAgZXhwX3VzZXNfb2JqZmlsZSAoc3RydWN0IGV4 cHJlc3Npb24gKmV4cCwgc3RydWN0IG9iamZpbGUgKm9iamZpbGUpCiAgewogICAgZ2RiX2Fzc2Vy dCAob2JqZmlsZS0+c2VwYXJhdGVfZGVidWdfb2JqZmlsZV9iYWNrbGluayA9PSBOVUxMKTsKICAK QEAgLTYwMDQsNiArNjA0NSw3IEBAIGluZGV4IDg1NmMyNGQuLmRiYjM4YzUgMTAwNjQ0CiArCiAr LyogSGVscGVyIGZvciBleHBfdHlwZXNfbWFya191c2VkLiAgKi8KICsKKysjaWYgMAogK3N0YXRp YyBpbnQKICtleHBfdHlwZXNfbWFya191c2VkX2l0ZXIgKHN0cnVjdCB0eXBlICp0eXBlLCB2b2lk ICp1bnVzZWQpCiArewpAQCAtNjAyMCwxMCArNjA2MiwxMiBAQCBpbmRleCA4NTZjMjRkLi5kYmIz OGM1IDEwMDY0NAogK3sKICsgIGV4cF9pdGVyYXRlIChleHAsIGV4cF90eXBlc19tYXJrX3VzZWRf aXRlciwgTlVMTCwgTlVMTCk7CiAgfQorKyNlbmRpZgogIAogIHZvaWQKKyBfaW5pdGlhbGl6ZV9w YXJzZSAodm9pZCkKIGRpZmYgLS1naXQgYS9nZGIvcGFyc2VyLWRlZnMuaCBiL2dkYi9wYXJzZXIt ZGVmcy5oCi1pbmRleCAzZjc0M2QxLi4wZWUxOWY1IDEwMDY0NAoraW5kZXggM2Y3NDNkMS4uM2I5 NDJjNCAxMDA2NDQKIC0tLSBhL2dkYi9wYXJzZXItZGVmcy5oCiArKysgYi9nZGIvcGFyc2VyLWRl ZnMuaAogQEAgLTE5NCw2ICsxOTQsOCBAQCBleHRlcm4gdm9pZCBvcGVyYXRvcl9sZW5ndGhfc3Rh bmRhcmQgKGNvbnN0IHN0cnVjdCBleHByZXNzaW9uICosIGludCwgaW50ICosCkBAIC02MDQzLDE3 ICs2MDg3LDE5IEBAIGluZGV4IDNmNzQzZDEuLjBlZTE5ZjUgMTAwNjQ0CiAgCQkJICAgaW50ICgq b2JqZmlsZV9mdW5jKSAoc3RydWN0IG9iamZpbGUgKm9iamZpbGUsCiAgCQkJCQkJdm9pZCAqZGF0 YSksCiAgCQkJICAgdm9pZCAqZGF0YSk7Ci1AQCAtMzI5LDQgKzMzMiw4IEBAIGV4dGVybiB2b2lk IHBhcnNlcl9mcHJpbnRmIChGSUxFICosIGNvbnN0IGNoYXIgKiwgLi4uKSBBVFRSSUJVVEVfUFJJ TlRGICgyLCAzKTsKK0BAIC0zMjksNCArMzMyLDEwIEBAIGV4dGVybiB2b2lkIHBhcnNlcl9mcHJp bnRmIChGSUxFICosIGNvbnN0IGNoYXIgKiwgLi4uKSBBVFRSSUJVVEVfUFJJTlRGICgyLCAzKTsK ICAKICBleHRlcm4gaW50IGV4cF91c2VzX29iamZpbGUgKHN0cnVjdCBleHByZXNzaW9uICpleHAs IHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlKTsKICAKICtleHRlcm4gaW50IGV4cF91c2VzX29iamZp bGUgKHN0cnVjdCBleHByZXNzaW9uICpleHAsIHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlKTsKICsK KysjaWYgMAogK2V4dGVybiB2b2lkIGV4cF90eXBlc19tYXJrX3VzZWQgKHN0cnVjdCBleHByZXNz aW9uICpleHApOworKyNlbmRpZgogKwogICNlbmRpZiAvKiBQQVJTRVJfREVGU19IICovCiBkaWZm IC0tZ2l0IGEvZ2RiL3BwYy1saW51eC1uYXQuYyBiL2dkYi9wcGMtbGludXgtbmF0LmMKLWluZGV4 IDBjNTU2M2UuLmU0ZjBiMjUgMTAwNjQ0CitpbmRleCAwNDljZGU4Li5mM2QzNWVjIDEwMDY0NAog LS0tIGEvZ2RiL3BwYy1saW51eC1uYXQuYwogKysrIGIvZ2RiL3BwYy1saW51eC1uYXQuYwogQEAg LTE2MzcsMTIgKzE2MzcsMTggQEAgYm9va2VfcmVtb3ZlX3BvaW50IChzdHJ1Y3QgcHBjX2h3X2Jy ZWFrcG9pbnQgKmIsIGludCB0aWQpCkBAIC02MTk3LDEwICs2MjQzLDEwIEBAIGluZGV4IDBjNTU2 M2UuLmU0ZjBiMjUgMTAwNjQ0CiAgCiAgICByZXR1cm4gcmV0OwogZGlmZiAtLWdpdCBhL2dkYi9w cmludGNtZC5jIGIvZ2RiL3ByaW50Y21kLmMKLWluZGV4IGViY2E1YTMuLjQxNTk5ODUgMTAwNjQ0 CitpbmRleCAxMjI0OWEwLi42OWFhZTAxIDEwMDY0NAogLS0tIGEvZ2RiL3ByaW50Y21kLmMKICsr KyBiL2dkYi9wcmludGNtZC5jCi1AQCAtOTcxLDYgKzk3MSwxMSBAQCBwcmludF9jb21tYW5kXzEg KGNoYXIgKmV4cCwgaW50IGluc3BlY3QsIGludCB2b2lkcHJpbnQpCitAQCAtOTcwLDYgKzk3MCwx MSBAQCBwcmludF9jb21tYW5kXzEgKGNoYXIgKmV4cCwgaW50IGluc3BlY3QsIGludCB2b2lkcHJp bnQpCiAgICBlbHNlCiAgICAgIHZhbCA9IGFjY2Vzc192YWx1ZV9oaXN0b3J5ICgwKTsKICAKQEAg LTYyMTIsMTEgKzYyNTgsMTIgQEAgaW5kZXggZWJjYTVhMy4uNDE1OTk4NSAxMDA2NDQKICAgIGlm ICh2b2lkcHJpbnQgfHwgKHZhbCAmJiB2YWx1ZV90eXBlICh2YWwpICYmCiAgCQkgICAgVFlQRV9D T0RFICh2YWx1ZV90eXBlICh2YWwpKSAhPSBUWVBFX0NPREVfVk9JRCkpCiAgICAgIHsKLUBAIC0x NDcyLDYgKzE0NzcsMjIgQEAgeF9jb21tYW5kIChjaGFyICpleHAsIGludCBmcm9tX3R0eSkKK0BA IC0xNDcxLDYgKzE0NzYsMjQgQEAgeF9jb21tYW5kIChjaGFyICpleHAsIGludCBmcm9tX3R0eSkK ICAJc2V0X2ludGVybmFsdmFyIChsb29rdXBfaW50ZXJuYWx2YXIgKCJfXyIpLCBsYXN0X2V4YW1p bmVfdmFsdWUpOwogICAgICB9CiAgfQogKworKyNpZiAwCiArLyogQ2FsbCB0eXBlX21hcmtfdXNl ZCBmb3IgYW55IFRZUEVzIHJlZmVyZW5jZWQgZnJvbSB0aGlzIEdEQiBzb3VyY2UgZmlsZS4gICov CiArCiArc3RhdGljIHZvaWQKQEAgLTYyMzEsMTYgKzYyNzgsMTkgQEAgaW5kZXggZWJjYTVhMy4u NDE1OTk4NSAxMDA2NDQKICsgICAgaWYgKGQtPmV4cCkKICsgICAgICBleHBfdHlwZXNfbWFya191 c2VkIChkLT5leHApOwogK30KKysjZW5kaWYKICsKICAMCiAgCiAgLyogQWRkIGFuIGV4cHJlc3Np b24gdG8gdGhlIGF1dG8tZGlzcGxheSBjaGFpbi4KLUBAIC0yODg0LDQgKzI5MDUsNiBAQCBTaG93 IHByaW50aW5nIG9mIHNvdXJjZSBmaWxlbmFtZSBhbmQgbGluZSBudW1iZXIgd2l0aCA8c3ltYm9s Pi4iKSwgTlVMTCwKK0BAIC0yODY0LDQgKzI4ODcsOCBAQCBTaG93IHByaW50aW5nIG9mIHNvdXJj ZSBmaWxlbmFtZSBhbmQgbGluZSBudW1iZXIgd2l0aCA8c3ltYm9sPi4iKSwgTlVMTCwKICAgIGFk ZF9jb20gKCJldmFsIiwgbm9fY2xhc3MsIGV2YWxfY29tbWFuZCwgXygiXAogIENvbnZlcnQgXCJw cmludGYgZm9ybWF0IHN0cmluZ1wiLCBhcmcxLCBhcmcyLCBhcmczLCAuLi4sIGFyZ24gdG9cblwK ICBhIGNvbW1hbmQgbGluZSwgYW5kIGNhbGwgaXQuIikpOwogKworKyNpZiAwCiArICBvYnNlcnZl cl9hdHRhY2hfbWFya191c2VkIChwcmludF90eXBlc19tYXJrX3VzZWQpOworKyNlbmRpZgogIH0K IGRpZmYgLS1naXQgYS9nZGIvcHl0aG9uL2xpYi9nZGIvRnJhbWVJdGVyYXRvci5weSBiL2dkYi9w eXRob24vbGliL2dkYi9GcmFtZUl0ZXJhdG9yLnB5CiBuZXcgZmlsZSBtb2RlIDEwMDY0NApAQCAt NzA3MSw3ICs3MTIxLDcgQEAgaW5kZXggMDAwMDAwMC4uZGViYjNiYgogKwogK0luU2NvcGUgKCkK IGRpZmYgLS1naXQgYS9nZGIvcHl0aG9uL3B5LXR5cGUuYyBiL2dkYi9weXRob24vcHktdHlwZS5j Ci1pbmRleCBjMDEwNDIwLi45MjA3M2Y2IDEwMDY0NAoraW5kZXggYzAxMDQyMC4uM2Y0YTI2MSAx MDA2NDQKIC0tLSBhL2dkYi9weXRob24vcHktdHlwZS5jCiArKysgYi9nZGIvcHl0aG9uL3B5LXR5 cGUuYwogQEAgLTI5LDYgKzI5LDggQEAKQEAgLTcwODMsNyArNzEzMyw3IEBAIGluZGV4IGMwMTA0 MjAuLjkyMDczZjYgMTAwNjQ0CiAgCiAgdHlwZWRlZiBzdHJ1Y3QgcHl0eV90eXBlX29iamVjdAog IHsKLUBAIC0zNywxMSArMzksMTcgQEAgdHlwZWRlZiBzdHJ1Y3QgcHl0eV90eXBlX29iamVjdAor QEAgLTM3LDExICszOSwxOSBAQCB0eXBlZGVmIHN0cnVjdCBweXR5X3R5cGVfb2JqZWN0CiAgCiAg ICAvKiBJZiBhIFR5cGUgb2JqZWN0IGlzIGFzc29jaWF0ZWQgd2l0aCBhbiBvYmpmaWxlLCBpdCBp cyBrZXB0IG9uIGEKICAgICAgIGRvdWJseS1saW5rZWQgbGlzdCwgcm9vdGVkIGluIHRoZSBvYmpm aWxlLiAgVGhpcyBsZXRzIHVzIGNvcHkgdGhlCkBAIC03MDk2LDEzICs3MTQ2LDE1IEBAIGluZGV4 IGMwMTA0MjAuLjkyMDczZjYgMTAwNjQ0CiAgICBzdHJ1Y3QgcHl0eV90eXBlX29iamVjdCAqbmV4 dDsKICB9IHR5cGVfb2JqZWN0OwogIAorKyNpZiAwCiArLyogRmlyc3QgZWxlbWVudCBvZiBhIGRv dWJseS1saW5rZWQgbGlzdCBvZiBUWVBFX0RJU0NBUkRBQkxFIFR5cGVzLiAgKi8KICtzdGF0aWMg dHlwZV9vYmplY3QgKnB5dHlfb2JqZWN0c19kaXNjYXJkYWJsZTsKKysjZW5kaWYKICsKICBzdGF0 aWMgUHlUeXBlT2JqZWN0IHR5cGVfb2JqZWN0X3R5cGU7CiAgCiAgLyogQSBGaWVsZCBvYmplY3Qu ICAqLwotQEAgLTkxOSw4ICs5MjcsNTkgQEAgdHlweV9yaWNoY29tcGFyZSAoUHlPYmplY3QgKnNl bGYsIFB5T2JqZWN0ICpvdGhlciwgaW50IG9wKQorQEAgLTkxOSw4ICs5MjksNjMgQEAgdHlweV9y aWNoY29tcGFyZSAoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpvdGhlciwgaW50IG9wKQogIAog IAwKICAKQEAgLTcxMjcsNiArNzE3OSw3IEBAIGluZGV4IGMwMTA0MjAuLjkyMDczZjYgMTAwNjQ0 CiArCXR5cGVfb2JqLT5uZXh0LT5wcmV2ID0gdHlwZV9vYmo7CiArICAgICAgc2V0X29iamZpbGVf ZGF0YSAob2JqZmlsZSwgdHlweV9vYmpmaWxlX2RhdGFfa2V5LCB0eXBlX29iaik7CiArICAgIH0K KysjaWYgMAogKyAgZWxzZSBpZiAodHlwZV9vYmotPnR5cGUgJiYgVFlQRV9ESVNDQVJEQUJMRSAo dHlwZV9vYmotPnR5cGUpKQogKyAgICB7CiArICAgICAgdHlwZV9vYmotPm5leHQgPSBweXR5X29i amVjdHNfZGlzY2FyZGFibGU7CkBAIC03MTM0LDYgKzcxODcsNyBAQCBpbmRleCBjMDEwNDIwLi45 MjA3M2Y2IDEwMDY0NAogKwl0eXBlX29iai0+bmV4dC0+cHJldiA9IHR5cGVfb2JqOwogKyAgICAg IHB5dHlfb2JqZWN0c19kaXNjYXJkYWJsZSA9IHR5cGVfb2JqOwogKyAgICB9CisrI2VuZGlmCiAr ICBlbHNlCiArICAgIHR5cGVfb2JqLT5uZXh0ID0gTlVMTDsKICt9CkBAIC03MTUyLDggKzcyMDYs MTAgQEAgaW5kZXggYzAxMDQyMC4uOTIwNzNmNiAxMDA2NDQKICsKICsgICAgICBzZXRfb2JqZmls ZV9kYXRhIChvYmpmaWxlLCB0eXB5X29iamZpbGVfZGF0YV9rZXksIHR5cGVfb2JqLT5uZXh0KTsK ICsgICAgfQorKyNpZiAwCiArICBlbHNlIGlmIChweXR5X29iamVjdHNfZGlzY2FyZGFibGUgPT0g dHlwZV9vYmopCiArICAgIHB5dHlfb2JqZWN0c19kaXNjYXJkYWJsZSA9IHR5cGVfb2JqLT5uZXh0 OworKyNlbmRpZgogKwogKyAgaWYgKHR5cGVfb2JqLT5uZXh0KQogKyAgICB0eXBlX29iai0+bmV4 dC0+cHJldiA9IHR5cGVfb2JqLT5wcmV2OwpAQCAtNzE2Miw3ICs3MjE4LDcgQEAgaW5kZXggYzAx MDQyMC4uOTIwNzNmNiAxMDA2NDQKICBzdGF0aWMgdm9pZAogIHNhdmVfb2JqZmlsZV90eXBlcyAo c3RydWN0IG9iamZpbGUgKm9iamZpbGUsIHZvaWQgKmRhdHVtKQogIHsKLUBAIC05MzgsMTIgKzk5 NywxMyBAQCBzYXZlX29iamZpbGVfdHlwZXMgKHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlLCB2b2lk ICpkYXR1bSkKK0BAIC05MzgsMTIgKzEwMDMsMTMgQEAgc2F2ZV9vYmpmaWxlX3R5cGVzIChzdHJ1 Y3Qgb2JqZmlsZSAqb2JqZmlsZSwgdm9pZCAqZGF0dW0pCiAgICAgIHsKICAgICAgICB0eXBlX29i amVjdCAqbmV4dCA9IG9iai0+bmV4dDsKICAKQEAgLTcxODAsNyArNzIzNiw3IEBAIGluZGV4IGMw MTA0MjAuLjkyMDczZjYgMTAwNjQ0CiAgCiAgICAgICAgb2JqID0gbmV4dDsKICAgICAgfQotQEAg LTk1NCw0MiArMTAxNCwyNSBAQCBzYXZlX29iamZpbGVfdHlwZXMgKHN0cnVjdCBvYmpmaWxlICpv YmpmaWxlLCB2b2lkICpkYXR1bSkKK0BAIC05NTQsNDMgKzEwMjAsMjggQEAgc2F2ZV9vYmpmaWxl X3R5cGVzIChzdHJ1Y3Qgb2JqZmlsZSAqb2JqZmlsZSwgdm9pZCAqZGF0dW0pCiAgfQogIAogIHN0 YXRpYyB2b2lkCkBAIC03MjA2LDYgKzcyNjIsNyBAQCBpbmRleCBjMDEwNDIwLi45MjA3M2Y2IDEw MDY0NAogKyAgdHlwZV9vYmotPm9iX3R5cGUtPnRwX2ZyZWUgKG9iaik7CiAgfQogIAorKyNpZiAw CiArLyogQ2FsbCB0eXBlX21hcmtfdXNlZCBmb3IgYW55IFRZUEVzIHJlZmVyZW5jZWQgZnJvbSB0 aGlzIEdEQiBzb3VyY2UgZmlsZS4gICovCiAgc3RhdGljIHZvaWQKIC10eXB5X2RlYWxsb2MgKFB5 T2JqZWN0ICpvYmopCkBAIC03MjMzLDkgKzcyOTAsMTEgQEAgaW5kZXggYzAxMDQyMC4uOTIwNzNm NiAxMDA2NDQKICsgICAgICAgdHlwZV9vYmogPSB0eXBlX29iai0+bmV4dCkKICsgICAgdHlwZV9t YXJrX3VzZWQgKHR5cGVfb2JqLT50eXBlKTsKICB9CisrI2VuZGlmCiAgCiAgLyogQ3JlYXRlIGEg bmV3IFR5cGUgcmVmZXJyaW5nIHRvIFRZUEUuICAqLwotQEAgLTEwMDAsNyArMTA0MywxMCBAQCB0 eXBlX3RvX3R5cGVfb2JqZWN0IChzdHJ1Y3QgdHlwZSAqdHlwZSkKKyBQeU9iamVjdCAqCitAQCAt MTAwMCw3ICsxMDUxLDEwIEBAIHR5cGVfdG9fdHlwZV9vYmplY3QgKHN0cnVjdCB0eXBlICp0eXBl KQogIAogICAgdHlwZV9vYmogPSBQeU9iamVjdF9OZXcgKHR5cGVfb2JqZWN0LCAmdHlwZV9vYmpl Y3RfdHlwZSk7CiAgICBpZiAodHlwZV9vYmopCkBAIC03MjQ3LDE3ICs3MzA2LDE5IEBAIGluZGV4 IGMwMTA0MjAuLjkyMDczZjYgMTAwNjQ0CiAgCiAgICByZXR1cm4gKFB5T2JqZWN0ICopIHR5cGVf b2JqOwogIH0KLUBAIC0xMDc0LDYgKzExMjAsOCBAQCBnZGJweV9pbml0aWFsaXplX3R5cGVzICh2 b2lkKQorQEAgLTEwNzQsNiArMTEyOCwxMCBAQCBnZGJweV9pbml0aWFsaXplX3R5cGVzICh2b2lk KQogIAogICAgUHlfSU5DUkVGICgmZmllbGRfb2JqZWN0X3R5cGUpOwogICAgUHlNb2R1bGVfQWRk T2JqZWN0IChnZGJfbW9kdWxlLCAiRmllbGQiLCAoUHlPYmplY3QgKikgJmZpZWxkX29iamVjdF90 eXBlKTsKICsKKysjaWYgMAogKyAgb2JzZXJ2ZXJfYXR0YWNoX21hcmtfdXNlZCAodHlweV90eXBl c19tYXJrX3VzZWQpOworKyNlbmRpZgogIH0KICAKICAMCiBkaWZmIC0tZ2l0IGEvZ2RiL3B5dGhv bi9weS12YWx1ZS5jIGIvZ2RiL3B5dGhvbi9weS12YWx1ZS5jCi1pbmRleCAyN2JmMTAxLi44YzA4 ZjM5IDEwMDY0NAoraW5kZXggNTE1ZWFlYy4uNWQ0ODNlZCAxMDA2NDQKIC0tLSBhL2dkYi9weXRo b24vcHktdmFsdWUuYwogKysrIGIvZ2RiL3B5dGhvbi9weS12YWx1ZS5jCiBAQCAtMjgsNiArMjgs NyBAQApAQCAtNzI2OCwxMCArNzMyOSwxMSBAQCBpbmRleCAyN2JmMTAxLi44YzA4ZjM5IDEwMDY0 NAogIAogICNpZmRlZiBIQVZFX1BZVEhPTgogIAotQEAgLTEyMTEsNiArMTIxMiwxNyBAQCBnZGJw eV9pc192YWx1ZV9vYmplY3QgKFB5T2JqZWN0ICpvYmopCitAQCAtMTIxMCw2ICsxMjExLDE5IEBA IGdkYnB5X2lzX3ZhbHVlX29iamVjdCAoUHlPYmplY3QgKm9iaikKICAgIHJldHVybiBQeU9iamVj dF9UeXBlQ2hlY2sgKG9iaiwgJnZhbHVlX29iamVjdF90eXBlKTsKICB9CiAgCisrI2lmIDAKICsv KiBDYWxsIHR5cGVfbWFya191c2VkIGZvciBhbnkgVFlQRXMgcmVmZXJlbmNlZCBmcm9tIHRoaXMg R0RCIHNvdXJjZSBmaWxlLiAgKi8KICsKICtzdGF0aWMgdm9pZApAQCAtNzI4MiwyMSArNzM0NCwy NCBAQCBpbmRleCAyN2JmMTAxLi44YzA4ZjM5IDEwMDY0NAogKyAgZm9yIChpdGVyID0gdmFsdWVz X2luX3B5dGhvbjsgaXRlcjsgaXRlciA9IGl0ZXItPm5leHQpCiArICAgIHR5cGVfbWFya191c2Vk ICh2YWx1ZV90eXBlIChpdGVyLT52YWx1ZSkpOwogK30KKysjZW5kaWYKICsKICB2b2lkCiAgZ2Ri cHlfaW5pdGlhbGl6ZV92YWx1ZXMgKHZvaWQpCiAgewotQEAgLTEyMjEsNiArMTIzMyw4IEBAIGdk YnB5X2luaXRpYWxpemVfdmFsdWVzICh2b2lkKQorQEAgLTEyMjAsNiArMTIzNCwxMCBAQCBnZGJw eV9pbml0aWFsaXplX3ZhbHVlcyAodm9pZCkKICAgIFB5TW9kdWxlX0FkZE9iamVjdCAoZ2RiX21v ZHVsZSwgIlZhbHVlIiwgKFB5T2JqZWN0ICopICZ2YWx1ZV9vYmplY3RfdHlwZSk7CiAgCiAgICB2 YWx1ZXNfaW5fcHl0aG9uID0gTlVMTDsKICsKKysjaWYgMAogKyAgb2JzZXJ2ZXJfYXR0YWNoX21h cmtfdXNlZCAocHl0aG9uX3R5cGVzX21hcmtfdXNlZCk7CisrI2VuZGlmCiAgfQogIAogIAwKIGRp ZmYgLS1naXQgYS9nZGIvcHl0aG9uL3B5dGhvbi5jIGIvZ2RiL3B5dGhvbi9weXRob24uYwotaW5k ZXggYjc5NTA0YS4uMjAxMTY2OCAxMDA2NDQKK2luZGV4IDNiMTBkOGMuLjc0ODVkMTQgMTAwNjQ0 CiAtLS0gYS9nZGIvcHl0aG9uL3B5dGhvbi5jCiArKysgYi9nZGIvcHl0aG9uL3B5dGhvbi5jCiBA QCAtNDksOCArNDksMTEgQEAgc3RhdGljIGludCBnZGJweV9zaG91bGRfcHJpbnRfc3RhY2sgPSAx OwpAQCAtNzMxMSw3ICs3Mzc2LDcgQEAgaW5kZXggYjc5NTA0YS4uMjAxMTY2OCAxMDA2NDQKICAK ICBzdGF0aWMgUHlNZXRob2REZWYgR2RiTWV0aG9kc1tdOwogIAotQEAgLTcyMiw2ICs3MjUsNTMg QEAgZ2RicHlfcHJpbnRfc3RhY2sgKHZvaWQpCitAQCAtNzIzLDYgKzcyNiw1MyBAQCBnZGJweV9w cmludF9zdGFjayAodm9pZCkKICAKICAvKiBSZXR1cm4gdGhlIGN1cnJlbnQgUHJvZ3NwYWNlLgog ICAgIFRoZXJlIGFsd2F5cyBpcyBvbmUuICAqLwpAQCAtNzM2NSw3ICs3NDMwLDcgQEAgaW5kZXgg Yjc5NTA0YS4uMjAxMTY2OCAxMDA2NDQKICAKICBzdGF0aWMgUHlPYmplY3QgKgogIGdkYnB5X2dl dF9jdXJyZW50X3Byb2dzcGFjZSAoUHlPYmplY3QgKnVudXNlZDEsIFB5T2JqZWN0ICp1bnVzZWQy KQotQEAgLTExMDYsNiArMTE1Niw4IEBAIHN0YXRpYyBQeU1ldGhvZERlZiBHZGJNZXRob2RzW10g PQorQEAgLTExMDgsNiArMTE1OCw4IEBAIHN0YXRpYyBQeU1ldGhvZERlZiBHZGJNZXRob2RzW10g PQogICAgICAiR2V0IGEgdmFsdWUgZnJvbSBoaXN0b3J5IiB9LAogICAgeyAiZXhlY3V0ZSIsIChQ eUNGdW5jdGlvbikgZXhlY3V0ZV9nZGJfY29tbWFuZCwgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlX T1JEUywKICAgICAgIkV4ZWN1dGUgYSBnZGIgY29tbWFuZCIgfSwKQEAgLTc0NDIsNyArNzUwNyw3 IEBAIGluZGV4IDRiZTgxMDYuLjA4MWI1MzIgMTAwNjQ0CiAgCSAgbXNfdHlwZSA9ICdTJzsKICAJ ICBicmVhazsKIGRpZmYgLS1naXQgYS9nZGIvc3ltdGFiLmMgYi9nZGIvc3ltdGFiLmMKLWluZGV4 IDMxMDUzMjcuLmNkMWUxOGYgMTAwNjQ0CitpbmRleCA2MGJjNTg1Li41ZWUwNDU5IDEwMDY0NAog LS0tIGEvZ2RiL3N5bXRhYi5jCiArKysgYi9nZGIvc3ltdGFiLmMKIEBAIC0zMDA2LDcgKzMwMDYs NyBAQCBzZWFyY2hfc3ltYm9scyAoY2hhciAqcmVnZXhwLCBkb21haW5fZW51bSBraW5kLCBpbnQg bmZpbGVzLCBjaGFyICpmaWxlc1tdLApAQCAtMTExMTYsMTAgKzExMTgxLDEwIEBAIGluZGV4IDAw MDAwMDAuLjI5NTYwMmQKICsgIHdyaXRlbG4ocyk7IHsgc2V0IGJyZWFrcG9pbnQgMiBoZXJlIH0K ICtlbmQuCiBkaWZmIC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3B5LWZyYW1lLmV4 cCBiL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1mcmFtZS5leHAKLWluZGV4IGUzYjU2Mjku LjJhNjNkOGQgMTAwNjQ0CitpbmRleCAxY2I1NzNlLi4zNjA1ZWU1IDEwMDY0NAogLS0tIGEvZ2Ri L3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3B5LWZyYW1lLmV4cAogKysrIGIvZ2RiL3Rlc3RzdWl0ZS9n ZGIucHl0aG9uL3B5LWZyYW1lLmV4cAotQEAgLTg3LDggKzg3LDYgQEAgZ2RiX3Rlc3QgInB5dGhv biBwcmludCBiZnJhbWUgPT0gZ2RiLm5ld2VzdF9mcmFtZSgpIiBUcnVlIFwKK0BAIC03OCw4ICs3 OCw2IEBAIGdkYl90ZXN0ICJweXRob24gcHJpbnQgYmZyYW1lID09IGdkYi5uZXdlc3RfZnJhbWUo KSIgVHJ1ZSBcCiAgCiAgZ2RiX3Rlc3QgInB5dGhvbiBwcmludCAncmVzdWx0ID0nLCBmMCA9PSBm MSIgIiA9IEZhbHNlIiAidGVzdCBlcXVhbGl0eSBjb21wYXJpc29uIChmYWxzZSkiCiAgZ2RiX3Rl c3QgInB5dGhvbiBwcmludCAncmVzdWx0ID0nLCBmMCA9PSBmMCIgIiA9IFRydWUiICJ0ZXN0IGVx dWFsaXR5IGNvbXBhcmlzb24gKHRydWUpIgpAQCAtMTExMjgsNyArMTExOTMsNyBAQCBpbmRleCBl M2I1NjI5Li4yYTYzZDhkIDEwMDY0NAogIGdkYl90ZXN0ICJweXRob24gcHJpbnQgJ3Jlc3VsdCA9 JywgZjAuaXNfdmFsaWQgKCkiICIgPSBUcnVlIiAidGVzdCBGcmFtZS5pc192YWxpZCIKICBnZGJf dGVzdCAicHl0aG9uIHByaW50ICdyZXN1bHQgPScsIGYwLm5hbWUgKCkiICIgPSBmMiIgInRlc3Qg RnJhbWUubmFtZSIKICBnZGJfdGVzdCAicHl0aG9uIHByaW50ICdyZXN1bHQgPScsIGYwLnR5cGUg KCkgPT0gZ2RiLk5PUk1BTF9GUkFNRSIgIiA9IFRydWUiICJ0ZXN0IEZyYW1lLnR5cGUiCi1AQCAt MTAzLDMgKzEwMSw1IEBAIGdkYl90ZXN0ICJweXRob24gcHJpbnQgJ3Jlc3VsdCA9JywgZjAucmVh ZF92YXIgKCd2YXJpYWJsZV93aGljaF9zdXJlbHlfZG9lc250X2V4CitAQCAtOTQsMyArOTIsNSBA QCBnZGJfdGVzdCAicHl0aG9uIHByaW50ICdyZXN1bHQgPScsIGYwLnJlYWRfdmFyICgndmFyaWFi bGVfd2hpY2hfc3VyZWx5X2RvZXNudF9leAogIGdkYl90ZXN0ICJweXRob24gcHJpbnQgJ3Jlc3Vs dCA9JywgZjAucmVhZF92YXIgKCdhJykiICIgPSAxIiAidGVzdCBGcmFtZS5yZWFkX3ZhciAtIHN1 Y2Nlc3MiCiAgCiAgZ2RiX3Rlc3QgInB5dGhvbiBwcmludCAncmVzdWx0ID0nLCBnZGIuc2VsZWN0 ZWRfZnJhbWUgKCkgPT0gZjEiICIgPSBUcnVlIiAidGVzdCBnZGIuc2VsZWN0ZWRfZnJhbWUiCkBA IC0xMTg2NywxNCArMTE5MzIsMTYgQEAgaW5kZXggODkxZGEzNy4uMjM2YzVjYSAxMDA2NDQKICAg ICAgc2V0IHBhc2NhbF9pbml0X2RvbmUgMQogIH0gICAKIGRpZmYgLS1naXQgYS9nZGIvdG9wLmMg Yi9nZGIvdG9wLmMKLWluZGV4IGRmMmIxNjMuLmEyMDVkMDAgMTAwNjQ0CitpbmRleCBkZjJiMTYz Li42MDYxYjMzIDEwMDY0NAogLS0tIGEvZ2RiL3RvcC5jCiArKysgYi9nZGIvdG9wLmMKLUBAIC0z NDMsNiArMzQzLDcgQEAgdm9pZAorQEAgLTM0Myw2ICszNDMsOSBAQCB2b2lkCiAgcHJlcGFyZV9l eGVjdXRlX2NvbW1hbmQgKHZvaWQpCiAgewogICAgZnJlZV9hbGxfdmFsdWVzICgpOworKyNpZiAw CiArICBmcmVlX2FsbF90eXBlcyAoKTsKKysjZW5kaWYKICAKICAgIC8qIFdpdGggbXVsdGlwbGUg dGhyZWFkcyBydW5uaW5nIHdoaWxlIHRoZSBvbmUgd2UncmUgZXhhbWluaW5nIGlzCiAgICAgICBz dG9wcGVkLCB0aGUgZGNhY2hlIGNhbiBnZXQgc3RhbGUgd2l0aG91dCB1cyBiZWluZyBhYmxlIHRv IGRldGVjdApAQCAtMTE5MzYsMTAgKzEyMDAzLDEwIEBAIGluZGV4IDAzZTYzMzIuLmNlNmQxZTAg MTAwNjQ0CiAgCiAgc3RhdGljIHZvaWQKIGRpZmYgLS1naXQgYS9nZGIvdXRpbHMuYyBiL2dkYi91 dGlscy5jCi1pbmRleCA4MmUzYWRiLi5hNWI5MTQ2IDEwMDY0NAoraW5kZXggOTFlNmFmNC4uODhi ODJmNSAxMDA2NDQKIC0tLSBhL2dkYi91dGlscy5jCiArKysgYi9nZGIvdXRpbHMuYwotQEAgLTIy MzgsNiArMjIzOCwzNiBAQCBzZXRfYmF0Y2hfZmxhZ19hbmRfbWFrZV9jbGVhbnVwX3Jlc3RvcmVf cGFnZV9pbmZvICh2b2lkKQorQEAgLTIyNDMsNiArMjI0MywzNiBAQCBzZXRfYmF0Y2hfZmxhZ19h bmRfbWFrZV9jbGVhbnVwX3Jlc3RvcmVfcGFnZV9pbmZvICh2b2lkKQogICAgcmV0dXJuIGJhY2tf dG87CiAgfQogIApAQCAtMTIwMDQsNyArMTIwNzEsNyBAQCBpbmRleCA2OGY2NDlmLi5hYWE0NDg3 IDEwMDY0NAogIH0KICAKIGRpZmYgLS1naXQgYS9nZGIvdmFsb3BzLmMgYi9nZGIvdmFsb3BzLmMK LWluZGV4IDU0NjVhYmEuLmQyNjdiZjggMTAwNjQ0CitpbmRleCAwYzA3ZTVjLi41NzQ5Y2NlIDEw MDY0NAogLS0tIGEvZ2RiL3ZhbG9wcy5jCiArKysgYi9nZGIvdmFsb3BzLmMKIEBAIC00Nyw2ICs0 Nyw3IEBACkBAIC0xMjIzMiwxNiArMTIyOTksMTYgQEAgaW5kZXggMjg2ZWY5ZS4uMWZlNThiMSAx MDA2NDQKICAKICAvKiBSZWFkIExFTiBieXRlcyBvZiB0YXJnZXQgbWVtb3J5IGF0IGFkZHJlc3Mg TUVNQUREUiwgcGxhY2luZyB0aGUKIGRpZmYgLS1naXQgYS9nZGIvdmFsdWUuYyBiL2dkYi92YWx1 ZS5jCi1pbmRleCAwMTFiNWU3Li5iY2ZiZTVkIDEwMDY0NAoraW5kZXggMmFjYjFkZi4uZDFkYjhm NSAxMDA2NDQKIC0tLSBhL2dkYi92YWx1ZS5jCiArKysgYi9nZGIvdmFsdWUuYwotQEAgLTQxLDYg KzQxLDcgQEAKLSAjaW5jbHVkZSAiY2xpL2NsaS1kZWNvZGUuaCIKLSAjaW5jbHVkZSAiZXhjZXB0 aW9ucy5oIgorQEAgLTQzLDYgKzQzLDcgQEAKICAjaW5jbHVkZSAicHl0aG9uL3B5dGhvbi5oIgor ICNpbmNsdWRlIDxjdHlwZS5oPgorICNpbmNsdWRlICJ0cmFjZXBvaW50LmgiCiArI2luY2x1ZGUg Im9ic2VydmVyLmgiCiAgCi0gI2luY2x1ZGUgInRyYWNlcG9pbnQuaCIKKyAvKiBQcm90b3R5cGVz IGZvciBleHBvcnRlZCBmdW5jdGlvbnMuICAqLwogIAogQEAgLTEzMzksMTIgKzEzNDAsMTUgQEAg dm9pZAogIHNldF92YWx1ZV9jb21wb25lbnRfbG9jYXRpb24gKHN0cnVjdCB2YWx1ZSAqY29tcG9u ZW50LApAQCAtMTIyNzIsNyArMTIzMzksNyBAQCBpbmRleCAwMTFiNWU3Li5iY2ZiZTVkIDEwMDY0 NAogIH0KICAKICAMCi1AQCAtMTQ4NSw2ICsxNDk1LDI5IEBAIHNob3dfdmFsdWVzIChjaGFyICpu dW1fZXhwLCBpbnQgZnJvbV90dHkpCitAQCAtMTQ4NSw2ICsxNDk1LDMxIEBAIHNob3dfdmFsdWVz IChjaGFyICpudW1fZXhwLCBpbnQgZnJvbV90dHkpCiAgICAgICAgbnVtX2V4cFsxXSA9ICdcMCc7 CiAgICAgIH0KICB9CkBAIC0xMjI5NywxNSArMTIzNjQsMTggQEAgaW5kZXggMDExYjVlNy4uYmNm YmU1ZCAxMDA2NDQKICsKICsgIC8qIEZyZWUgdGhlIHVucmVmZXJlbmNlZCB0eXBlcyBhYm92ZS4g ICovCiArICBmcmVlX2FsbF92YWx1ZXMgKCk7CisrI2lmIDAKICsgIGZyZWVfYWxsX3R5cGVzICgp OworKyNlbmRpZgogK30KICAMCiAgLyogSW50ZXJuYWwgdmFyaWFibGVzLiAgVGhlc2UgYXJlIHZh cmlhYmxlcyB3aXRoaW4gdGhlIGRlYnVnZ2VyCiAgICAgdGhhdCBob2xkIHZhbHVlcyBhc3NpZ25l ZCBieSBkZWJ1Z2dlciBjb21tYW5kcy4KLUBAIC0xOTYzLDYgKzE5OTYsMzYgQEAgY2FsbF9pbnRl cm5hbF9mdW5jdGlvbiAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsCitAQCAtMTk2Myw2ICsxOTk4 LDM4IEBAIGNhbGxfaW50ZXJuYWxfZnVuY3Rpb24gKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLAog ICAgcmV0dXJuICgqaWZuLT5oYW5kbGVyKSAoZ2RiYXJjaCwgbGFuZ3VhZ2UsIGlmbi0+Y29va2ll LCBhcmdjLCBhcmd2KTsKICB9CiAgCisrI2lmIDAKICsvKiBDYWxsIHR5cGVfbWFya191c2VkIGZv ciBhbnkgVFlQRXMgcmVmZXJlbmNlZCBmcm9tIHRoaXMgR0RCIHNvdXJjZSBmaWxlLiAgKi8KICsK ICtzdGF0aWMgdm9pZApAQCAtMTIzMzUsMTEgKzEyNDA1LDEyIEBAIGluZGV4IDAxMWI1ZTcuLmJj ZmJlNWQgMTAwNjQ0CiArCSAgdHlwZV9tYXJrX3VzZWQgKHZhbHVlX3R5cGUgKGNodW5rLT52YWx1 ZXNbaV0pKTsKICsgICAgfQogK30KKysjZW5kaWYKICsKICAvKiBUaGUgJ2Z1bmN0aW9uJyBjb21t YW5kLiAgVGhpcyBkb2VzIG5vdGhpbmcgLS0gaXQgaXMganVzdCBhCiAgICAgcGxhY2Vob2xkZXIg dG8gbGV0ICJoZWxwIGZ1bmN0aW9uIE5BTUUiIHdvcmsuICBUaGlzIGlzIGFsc28gdXNlZCBhcwog ICAgIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgc3ViLWNvbW1hbmQgdGhhdCBpcyBjcmVhdGVk IHdoZW4KLUBAIC0yMDEwLDExICsyMDczLDEwIEBAIHByZXNlcnZlX29uZV92YWx1ZSAoc3RydWN0 IHZhbHVlICp2YWx1ZSwgc3RydWN0IG9iamZpbGUgKm9iamZpbGUsCitAQCAtMjAxMCwxMSArMjA3 NywxMCBAQCBwcmVzZXJ2ZV9vbmVfdmFsdWUgKHN0cnVjdCB2YWx1ZSAqdmFsdWUsIHN0cnVjdCBv YmpmaWxlICpvYmpmaWxlLAogIAkJICAgIGh0YWJfdCBjb3BpZWRfdHlwZXMpCiAgewogICAgaWYg KFRZUEVfT0JKRklMRSAodmFsdWUtPnR5cGUpID09IG9iamZpbGUpCkBAIC0xMjM1Myw3ICsxMjQy NCw3IEBAIGluZGV4IDAxMWI1ZTcuLmJjZmJlNWQgMTAwNjQ0CiAgCQkJCQkJIGNvcGllZF90eXBl cyk7CiAgfQogIAotQEAgLTIwMjksNyArMjA5MSw3IEBAIHByZXNlcnZlX29uZV9pbnRlcm5hbHZh ciAoc3RydWN0IGludGVybmFsdmFyICp2YXIsIHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlLAorQEAg LTIwMjksNyArMjA5NSw3IEBAIHByZXNlcnZlX29uZV9pbnRlcm5hbHZhciAoc3RydWN0IGludGVy bmFsdmFyICp2YXIsIHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlLAogICAgICBjYXNlIElOVEVSTkFM VkFSX0lOVEVHRVI6CiAgICAgICAgaWYgKHZhci0+dS5pbnRlZ2VyLnR5cGUgJiYgVFlQRV9PQkpG SUxFICh2YXItPnUuaW50ZWdlci50eXBlKSA9PSBvYmpmaWxlKQogIAl2YXItPnUuaW50ZWdlci50 eXBlCkBAIC0xMjM2Miw3ICsxMjQzMyw3IEBAIGluZGV4IDAxMWI1ZTcuLmJjZmJlNWQgMTAwNjQ0 CiAgICAgICAgYnJlYWs7CiAgCiAgICAgIGNhc2UgSU5URVJOQUxWQVJfVkFMVUU6Ci1AQCAtMjk5 NCw3ICszMDU2LDI0IEBAIHZhbHVlX2Zyb21fZGVjZmxvYXQgKHN0cnVjdCB0eXBlICp0eXBlLCBj b25zdCBnZGJfYnl0ZSAqZGVjKQorQEAgLTMwNDcsNyArMzExMywyNCBAQCB2YWx1ZV9mcm9tX2hp c3RvcnlfcmVmIChjaGFyICpoLCBjaGFyICoqZW5kcCkKICBzdHJ1Y3QgdmFsdWUgKgogIGNvZXJj ZV9yZWYgKHN0cnVjdCB2YWx1ZSAqYXJnKQogIHsKQEAgLTEyMzg4LDIyICsxMjQ1OSwyNCBAQCBp bmRleCAwMTFiNWU3Li5iY2ZiZTVkIDEwMDY0NAogIAogICAgaWYgKFRZUEVfQ09ERSAodmFsdWVf dHlwZV9hcmdfdG1wKSA9PSBUWVBFX0NPREVfUkVGKQogICAgICBhcmcgPSB2YWx1ZV9hdF9sYXp5 IChUWVBFX1RBUkdFVF9UWVBFICh2YWx1ZV90eXBlX2FyZ190bXApLAotQEAgLTMwOTIsNCArMzE3 MSw4IEBAIFZBUklBQkxFIGlzIGFscmVhZHkgaW5pdGlhbGl6ZWQuIikpOworQEAgLTMxNDUsNCAr MzIyOCwxMCBAQCBWQVJJQUJMRSBpcyBhbHJlYWR5IGluaXRpYWxpemVkLiIpKTsKICAgIGFkZF9w cmVmaXhfY21kICgiZnVuY3Rpb24iLCBub19jbGFzcywgZnVuY3Rpb25fY29tbWFuZCwgXygiXAog IFBsYWNlaG9sZGVyIGNvbW1hbmQgZm9yIHNob3dpbmcgaGVscCBvbiBjb252ZW5pZW5jZSBmdW5j dGlvbnMuIiksCiAgCQkgICZmdW5jdGlvbmxpc3QsICJmdW5jdGlvbiAiLCAwLCAmY21kbGlzdCk7 CiArCiArICBtYWtlX2ZpbmFsX2NsZWFudXAgKHZhbHVlX2hpc3RvcnlfY2xlYW51cCwgTlVMTCk7 CiArCisrI2lmIDAKICsgIG9ic2VydmVyX2F0dGFjaF9tYXJrX3VzZWQgKHZhbHVlX3R5cGVzX21h cmtfdXNlZCk7CisrI2VuZGlmCiAgfQogZGlmZiAtLWdpdCBhL2dkYi92YWx1ZS5oIGIvZ2RiL3Zh bHVlLmgKLWluZGV4IGUwMTllNTYuLmJhNWUyMGYgMTAwNjQ0CitpbmRleCAwODg5Y2VmLi4xYmU3 ZjBiIDEwMDY0NAogLS0tIGEvZ2RiL3ZhbHVlLmgKICsrKyBiL2dkYi92YWx1ZS5oCi1AQCAtNDcy LDYgKzQ3MiwxMCBAQCBleHRlcm4gc3RydWN0IHZhbHVlICp2YWx1ZV9mcm9tX2RvdWJsZSAoc3Ry dWN0IHR5cGUgKnR5cGUsIERPVUJMRVNUIG51bSk7Ci0gZXh0ZXJuIHN0cnVjdCB2YWx1ZSAqdmFs dWVfZnJvbV9kZWNmbG9hdCAoc3RydWN0IHR5cGUgKnR5cGUsCitAQCAtNDczLDYgKzQ3MywxMCBA QCBleHRlcm4gc3RydWN0IHZhbHVlICp2YWx1ZV9mcm9tX2RlY2Zsb2F0IChzdHJ1Y3QgdHlwZSAq dHlwZSwKICAJCQkJCSAgY29uc3QgZ2RiX2J5dGUgKmRlY2J5dGVzKTsKKyBleHRlcm4gc3RydWN0 IHZhbHVlICp2YWx1ZV9mcm9tX2hpc3RvcnlfcmVmIChjaGFyICosIGNoYXIgKiopOwogIAogK2V4 dGVybiBjb25zdCBjaGFyICpvYmplY3RfYWRkcmVzc19kYXRhX25vdF92YWxpZCAoc3RydWN0IHR5 cGUgKnR5cGUpOwogK2V4dGVybiBzdHJ1Y3QgdHlwZSAqb2JqZWN0X2FkZHJlc3NfZ2V0X2RhdGEg KHN0cnVjdCB0eXBlICp0eXBlLAoKZGlmZiAtLWdpdCBhL2dkYi1weXRob24tbmV3YmFja3RyYWNl LnBhdGNoIGIvZ2RiLXB5dGhvbi1uZXdiYWNrdHJhY2UucGF0Y2gKaW5kZXggMzE0MzlmYS4uYzA3 NzU3YyAxMDA2NDQKLS0tIGEvZ2RiLXB5dGhvbi1uZXdiYWNrdHJhY2UucGF0Y2gKKysrIGIvZ2Ri LXB5dGhvbi1uZXdiYWNrdHJhY2UucGF0Y2gKQEAgLTQxLDEyICs0MSwxMiBAQCBQaGlsCiAKIC0t CiAKLWRpZmYgLS1naXQgYS9nZGIvZG9jL2dkYi50ZXhpbmZvIGIvZ2RiL2RvYy9nZGIudGV4aW5m bwotaW5kZXggMTYxYWMxZi4uNTVlY2EyYSAxMDA2NDQKLS0tLSBhL2dkYi9kb2MvZ2RiLnRleGlu Zm8KLSsrKyBiL2dkYi9kb2MvZ2RiLnRleGluZm8KLUBAIC0yMjcxOCw2ICsyMjcxOCwxMyBAQCBk b21haW4gY29uc3RhbnQgZGVmaW5lZCBpbiB0aGUgQGNvZGV7Z2RifSBtb2R1bGUgYW5kIGRlc2Ny aWJlZCBsYXRlcgotIGluIHRoaXMgY2hhcHRlci4KK0luZGV4OiBnZGItNy4yLjUwLjIwMTEwMzA1 L2dkYi9kb2MvZ2RiLnRleGluZm8KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy0tLSBnZGItNy4yLjUwLjIwMTEwMzA1 Lm9yaWcvZ2RiL2RvYy9nZGIudGV4aW5mbwkyMDExLTAzLTA1IDA4OjI3OjA5LjAwMDAwMDAwMCAr MDEwMAorKysrIGdkYi03LjIuNTAuMjAxMTAzMDUvZ2RiL2RvYy9nZGIudGV4aW5mbwkyMDExLTAz LTA1IDA4OjI4OjMzLjAwMDAwMDAwMCArMDEwMAorQEAgLTIyOTE5LDYgKzIyOTE5LDEzIEBAIFRo ZSByZXN1bHQgaXMgYSBAY29kZXtnZGIuU3ltYm9sfSBvYmplY3QKKyBpcyBub3QgZm91bmQuCiAg QGVuZCBkZWZ1bgogIAogK0EgQGNvZGV7Z2RiLlN5bWJvbH0gb2JqZWN0IGhhcyB0aGUgZm9sbG93 aW5nIG1ldGhvZHM6CkBAIC01OSwxMCArNTksMTAgQEAgaW5kZXggMTYxYWMxZi4uNTVlY2EyYSAx MDA2NDQKICBBIEBjb2Rle2dkYi5TeW1ib2x9IG9iamVjdCBoYXMgdGhlIGZvbGxvd2luZyBhdHRy aWJ1dGVzOgogIAogIEB0YWJsZSBAY29kZQotZGlmZiAtLWdpdCBhL2dkYi9weXRob24vbGliL2dk Yi9GcmFtZVdyYXBwZXIucHkgYi9nZGIvcHl0aG9uL2xpYi9nZGIvRnJhbWVXcmFwcGVyLnB5Ci1p bmRleCBiNzkwYTU0Li41ZDk4YjBmIDEwMDY0NAotLS0tIGEvZ2RiL3B5dGhvbi9saWIvZ2RiL0Zy YW1lV3JhcHBlci5weQotKysrIGIvZ2RiL3B5dGhvbi9saWIvZ2RiL0ZyYW1lV3JhcHBlci5weQor SW5kZXg6IGdkYi03LjIuNTAuMjAxMTAzMDUvZ2RiL3B5dGhvbi9saWIvZ2RiL0ZyYW1lV3JhcHBl ci5weQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQorLS0tIGdkYi03LjIuNTAuMjAxMTAzMDUub3JpZy9nZGIvcHl0aG9u L2xpYi9nZGIvRnJhbWVXcmFwcGVyLnB5CTIwMTEtMDMtMDUgMDg6MjY6MTIuMDAwMDAwMDAwICsw MTAwCisrKysgZ2RiLTcuMi41MC4yMDExMDMwNS9nZGIvcHl0aG9uL2xpYi9nZGIvRnJhbWVXcmFw cGVyLnB5CTIwMTEtMDMtMDUgMDg6Mjc6MjIuMDAwMDAwMDAwICswMTAwCiBAQCAtNDYsNyArNDYs NyBAQCBjbGFzcyBGcmFtZVdyYXBwZXI6CiAgICAgICAgICAgICAgcmV0dXJuCiAgCkBAIC04MSwx MSArODEsMTEgQEAgaW5kZXggYjc5MGE1NC4uNWQ5OGIwZiAxMDA2NDQKICAKICAgICAgICAgIGZv ciBzeW0gaW4gYmxvY2s6CiAgICAgICAgICAgICAgaWYgbm90IHN5bS5pc19hcmd1bWVudDoKLWRp ZmYgLS1naXQgYS9nZGIvcHl0aG9uL3B5LXN5bWJvbC5jIGIvZ2RiL3B5dGhvbi9weS1zeW1ib2wu YwotaW5kZXggZTA3MmRjOC4uMWRmZTM5NCAxMDA2NDQKLS0tLSBhL2dkYi9weXRob24vcHktc3lt Ym9sLmMKLSsrKyBiL2dkYi9weXRob24vcHktc3ltYm9sLmMKLUBAIC0xNjcsNiArMTY3LDI3IEBA IHN5bXB5X2lzX3ZhcmlhYmxlIChQeU9iamVjdCAqc2VsZiwgdm9pZCAqY2xvc3VyZSkKK0luZGV4 OiBnZGItNy4yLjUwLjIwMTEwMzA1L2dkYi9weXRob24vcHktc3ltYm9sLmMKKz09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K Ky0tLSBnZGItNy4yLjUwLjIwMTEwMzA1Lm9yaWcvZ2RiL3B5dGhvbi9weS1zeW1ib2wuYwkyMDEx LTAyLTI2IDAzOjA3OjA5LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjIuNTAuMjAxMTAzMDUv Z2RiL3B5dGhvbi9weS1zeW1ib2wuYwkyMDExLTAzLTA1IDA4OjI3OjIyLjAwMDAwMDAwMCArMDEw MAorQEAgLTE2Nyw2ICsxNjcsMjcgQEAgc3ltcHlfaXNfdmFyaWFibGUgKFB5T2JqZWN0ICpzZWxm LCB2b2lkIAogIAkJCSAgICAgIHx8IGNsYXNzID09IExPQ19PUFRJTUlaRURfT1VUKSk7CiAgfQog IApAQCAtMTEzLDcgKzExMyw3IEBAIGluZGV4IGUwNzJkYzguLjFkZmUzOTQgMTAwNjQ0CiAgLyog R2l2ZW4gYSBzeW1ib2wsIGFuZCBhIHN5bWJvbF9vYmplY3QgdGhhdCBoYXMgcHJldmlvdXNseSBi ZWVuCiAgICAgYWxsb2NhdGVkIGFuZCBpbml0aWFsaXplZCwgcG9wdWxhdGUgdGhlIHN5bWJvbF9v YmplY3Qgd2l0aCB0aGUKICAgICBzdHJ1Y3Qgc3ltYm9sIGRhdGEuICBBbHNvLCByZWdpc3RlciB0 aGUgc3ltYm9sX29iamVjdCBsaWZlLWN5Y2xlCi1AQCAtMzYyLDYgKzM4MywxMyBAQCBnZGJweV9p bml0aWFsaXplX3N5bWJvbHMgKHZvaWQpCitAQCAtMzk2LDYgKzQxNywxMyBAQCBnZGJweV9pbml0 aWFsaXplX3N5bWJvbHMgKHZvaWQpCiAgCiAgDAogIApAQCAtMTI3LDcgKzEyNyw3IEBAIGluZGV4 IGUwNzJkYzguLjFkZmUzOTQgMTAwNjQ0CiAgc3RhdGljIFB5R2V0U2V0RGVmIHN5bWJvbF9vYmpl Y3RfZ2V0c2V0W10gPSB7CiAgICB7ICJzeW10YWIiLCBzeW1weV9nZXRfc3ltdGFiLCBOVUxMLAog ICAgICAiU3ltYm9sIHRhYmxlIGluIHdoaWNoIHRoZSBzeW1ib2wgYXBwZWFycy4iLCBOVUxMIH0s Ci1AQCAtNDE1LDcgKzQ0Myw3IEBAIFB5VHlwZU9iamVjdCBzeW1ib2xfb2JqZWN0X3R5cGUgPSB7 CitAQCAtNDQ5LDcgKzQ3Nyw3IEBAIFB5VHlwZU9iamVjdCBzeW1ib2xfb2JqZWN0X3R5cGUgPSB7 CiAgICAwLAkJCQkgIC8qdHBfd2Vha2xpc3RvZmZzZXQgKi8KICAgIDAsCQkJCSAgLyp0cF9pdGVy ICovCiAgICAwLAkJCQkgIC8qdHBfaXRlcm5leHQgKi8KQEAgLTEzNiwxMSArMTM2LDExIEBAIGlu ZGV4IGUwNzJkYzguLjFkZmUzOTQgMTAwNjQ0CiAgICAwLAkJCQkgIC8qdHBfbWVtYmVycyAqLwog ICAgc3ltYm9sX29iamVjdF9nZXRzZXQJCSAgLyp0cF9nZXRzZXQgKi8KICB9OwotZGlmZiAtLWdp dCBhL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1zeW1ib2wuZXhwIGIvZ2RiL3Rlc3RzdWl0 ZS9nZGIucHl0aG9uL3B5LXN5bWJvbC5leHAKLWluZGV4IDhlM2FlYzEuLjZkNDM1NjYgMTAwNjQ0 Ci0tLS0gYS9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHktc3ltYm9sLmV4cAotKysrIGIvZ2Ri L3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3B5LXN5bWJvbC5leHAKLUBAIC02OSw2ICs2OSwxMCBAQCBn ZGJfdGVzdCAicHl0aG9uIHByaW50IGZ1bmMucHJpbnRfbmFtZSIgImZ1bmMiICJUZXN0IGZ1bmMu cHJpbnRfbmFtZSIKK0luZGV4OiBnZGItNy4yLjUwLjIwMTEwMzA1L2dkYi90ZXN0c3VpdGUvZ2Ri LnB5dGhvbi9weS1zeW1ib2wuZXhwCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gZ2RiLTcuMi41MC4yMDExMDMw NS5vcmlnL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1zeW1ib2wuZXhwCTIwMTEtMDItMjIg MjM6NDg6MTIuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuMi41MC4yMDExMDMwNS9nZGIvdGVz dHN1aXRlL2dkYi5weXRob24vcHktc3ltYm9sLmV4cAkyMDExLTAzLTA1IDA4OjI3OjIyLjAwMDAw MDAwMCArMDEwMAorQEAgLTc2LDYgKzc2LDEwIEBAIGdkYl90ZXN0ICJweXRob24gcHJpbnQgZnVu Yy5wcmludF9uYW1lIiAKICBnZGJfdGVzdCAicHl0aG9uIHByaW50IGZ1bmMubGlua2FnZV9uYW1l IiAiZnVuYyIgIlRlc3QgZnVuYy5saW5rYWdlX25hbWUiCiAgZ2RiX3Rlc3QgInB5dGhvbiBwcmlu dCBmdW5jLmFkZHJfY2xhc3MgPT0gZ2RiLlNZTUJPTF9MT0NfQkxPQ0siICJUcnVlIiAiVGVzdCBm dW5jLmFkZHJfY2xhc3MiCiAgCkBAIC0xNTEsNCArMTUxLDMgQEAgaW5kZXggOGUzYWVjMS4uNmQ0 MzU2NiAxMDA2NDQKICBnZGJfYnJlYWtwb2ludCBbZ2RiX2dldF9saW5lX251bWJlciAiQnJlYWsg YXQgZW5kLiJdCiAgZ2RiX2NvbnRpbnVlX3RvX2JyZWFrcG9pbnQgIkJyZWFrIGF0IGVuZC4iCiAg Z2RiX3B5X3Rlc3Rfc2lsZW50X2NtZCAicHl0aG9uIGZyYW1lID0gZ2RiLnNlbGVjdGVkX2ZyYW1l KCkiICJHZXQgRnJhbWUiIDAKLQoKZGlmZiAtLWdpdCBhL2dkYi11cHN0cmVhbS5wYXRjaCBiL2dk Yi11cHN0cmVhbS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZTM0 OWRmCi0tLSAvZGV2L251bGwKKysrIGIvZ2RiLXVwc3RyZWFtLnBhdGNoCkBAIC0wLDAgKzEsNjYg QEAKK2h0dHA6Ly9zb3VyY2V3YXJlLm9yZy9tbC9nZGItY3ZzLzIwMTEtMDMvbXNnMDAwNzcuaHRt bAorCisjIyMgc3JjL2dkYi9nZGJzZXJ2ZXIvQ2hhbmdlTG9nCTIwMTEvMDMvMDQgMDY6MzE6NTQJ MS40NjMKKyMjIyBzcmMvZ2RiL2dkYnNlcnZlci9DaGFuZ2VMb2cJMjAxMS8wMy8wNSAwMzo0NToy NgkxLjQ2NAorIyMgLTEsMyArMSwxMCBAQAorKzIwMTEtMDMtMDUgIFlhbyBRaSAgPHlhb0Bjb2Rl c291cmNlcnkuY29tPgorKworKwkqIE1ha2VmaWxlLmluIChDTEVBTkRJUlMsIFJFUVVJUkVEX1NV QkRJUlMpOiBOZXcgdmFyaWFibGUuCisrCShzdWJkaXJfZG8pOiBOZXcgbWFrZSB0YXJnZXQuICBD b3BpZWQgZnJvbSBnZGIvTWFrZWZpbGUuCisrCShtYWludGFpbmVyLWNsZWFuLCByZWFsY2xlYW4s IGRpc3RjbGVhbiwgY2xlYW4pOiBDYWxsIGNvcnJlc3BvbmRpbmcKKysJbWFrZSB0YXJnZXRzIGlu IGNvbW1vbi9NYWtlZmlsZS4KKysKKyAyMDExLTAzLTA0ICBZYW8gUWkgIDx5YW9AY29kZXNvdXJj ZXJ5LmNvbT4KKyAKKyAJKiBNYWtlZmlsZS5pbjogUmVtb3ZlIEdOVSBtYWtlIGZlYXR1cmUgLS1k aXJlY3RvcnkuCistLS0gc3JjL2dkYi9nZGJzZXJ2ZXIvTWFrZWZpbGUuaW4JMjAxMS8wMy8wNCAw NjozMTo1NAkxLjEwNAorKysrIHNyYy9nZGIvZ2Ric2VydmVyL01ha2VmaWxlLmluCTIwMTEvMDMv MDUgMDM6NDU6MjYJMS4xMDUKK0BAIC0xMzYsNiArMTM2LDkgQEAKKyBMSUJDT01NT04gPSAkKExJ QkNPTU1PTl9ESVIpL2xpYmNvbW1vbi5hCisgTElCQ09NTU9OX1NSQyA9ICQoc3JjZGlyKS8kKExJ QkNPTU1PTl9ESVIpCisgCisrQ0xFQU5ESVJTID0gJChMSUJDT01NT05fRElSKQorK1JFUVVJUkVE X1NVQkRJUlMgPSAkKExJQkNPTU1PTl9ESVIpCisrCisgU09VUkNFUyA9ICQoU0ZJTEVTKQorIFRB R0ZJTEVTID0gJChTT1VSQ0VTKSAke0hGSUxFU30gJHtBTExQQVJBTX0gJHtQT1NTTElCU30KKyAK K0BAIC0yOTEsNiArMjk0LDcgQEAKKyB0YWdzOiBUQUdTCisgCisgY2xlYW46CisrCUAkKE1BS0Up ICQoRkxBR1NfVE9fUEFTUykgRE89Y2xlYW4gIkRPRElSUz0kKENMRUFORElSUykiIHN1YmRpcl9k bworIAlybSAtZiAqLm8gJHtBRERfRklMRVN9ICp+CisgCXJtIC1mIHZlcnNpb24uYworIAlybSAt ZiBnZGJzZXJ2ZXIkKEVYRUVYVCkgZ2RicmVwbGF5JChFWEVFWFQpIGNvcmUgbWFrZS5sb2cKK0BA IC0zMTQsNiArMzE4LDcgQEAKKyAJcm0gLWYgaTM4Ni1tbXguYyBpMzg2LW1teC1saW51eC5jCisg CisgbWFpbnRhaW5lci1jbGVhbiByZWFsY2xlYW4gZGlzdGNsZWFuOiBjbGVhbgorKwlAJChNQUtF KSAkKEZMQUdTX1RPX1BBU1MpIERPPSRAICJET0RJUlM9JChDTEVBTkRJUlMpIiBzdWJkaXJfZG8K KyAJcm0gLWYgbm0uaCB0bS5oIHhtLmggY29uZmlnLnN0YXR1cyBjb25maWcuaCBzdGFtcC1oIGNv bmZpZy5sb2cKKyAJcm0gLWYgTWFrZWZpbGUKKyAKK0BAIC0zMjEsNiArMzI2LDIyIEBACisgc3Rh bXAtaDogY29uZmlnLmluIGNvbmZpZy5zdGF0dXMKKyAJQ09ORklHX0ZJTEVTPSIiIENPTkZJR19I RUFERVJTPWNvbmZpZy5oOmNvbmZpZy5pbiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMKKyAKKytz dWJkaXJfZG86IGZvcmNlCisrCUBmb3IgaSBpbiAkKERPRElSUyk7IGRvIFwKKysJCWNhc2UgJCRp IGluIFwKKysJCSQoUkVRVUlSRURfU1VCRElSUykpIFwKKysJCQlpZiBbICEgLWYgLi8kJGkvTWFr ZWZpbGUgXSA7IHRoZW4gXAorKwkJCQllY2hvICJNaXNzaW5nICQkaS9NYWtlZmlsZSIgPiYyIDsg XAorKwkJCQlleGl0IDEgOyBcCisrCQkJZmkgOzsgXAorKwkJZXNhYyA7IFwKKysJCWlmIFsgLWYg Li8kJGkvTWFrZWZpbGUgXSA7IHRoZW4gXAorKwkJCWlmIChjZCAuLyQkaTsgXAorKwkJCQkkKE1B S0UpICQoRkxBR1NfVE9fUEFTUykgJChETykpIDsgdGhlbiB0cnVlIDsgXAorKwkJCWVsc2UgZXhp dCAxIDsgZmkgOyBcCisrCQllbHNlIHRydWUgOyBmaSA7IFwKKysJZG9uZQorKworIE1ha2VmaWxl OiBNYWtlZmlsZS5pbiBjb25maWcuc3RhdHVzCisgCUNPTkZJR19IRUFERVJTPSIiICQoU0hFTEwp IC4vY29uZmlnLnN0YXR1cworIAoKZGlmZiAtLWdpdCBhL2dkYi5zcGVjIGIvZ2RiLnNwZWMKaW5k ZXggNmExYTY4NS4uOTNkYjY5YSAxMDA2NDQKLS0tIGEvZ2RiLnNwZWMKKysrIGIvZ2RiLnNwZWMK QEAgLTIzLDExICsyMywxMSBAQCBOYW1lOiBnZGIlez9fd2l0aF9kZWJ1ZzotZGVidWd9CiAjIFNl dCB2ZXJzaW9uIHRvIGNvbnRlbnRzIG9mIGdkYi92ZXJzaW9uLmluLgogIyBOT1RFOiB0aGUgRlNG IGdkYiB2ZXJzaW9ucyBhcmUgbnVtYmVyZWQgTi5NIGZvciBvZmZpY2lhbCByZWxlYXNlcywgbGlr ZSA2LjMKICMgYW5kLCBzaW5jZSBKYW51YXJ5IDIwMDUsIFguWS5aLmRhdGUgZm9yIGRhaWx5IHNu YXBzaG90cywgbGlrZSA2LjMuNTAuMjAwNTAxMTIgIyAoZGFpbHkgc25hcHNob3QgZnJvbSBtYWls aW5lKSwgb3IgNi4zLjAuMjAwNDAxMTIgKGhlYWQgb2YgdGhlIHJlbGVhc2UgYnJhbmNoKS4KLVZl cnNpb246IDcuMi41MC4yMDExMDIyMgorVmVyc2lvbjogNy4yLjUwLjIwMTEwMzA1CiAKICMgVGhl IHJlbGVhc2UgYWx3YXlzIGNvbnRhaW5zIGEgbGVhZGluZyByZXNlcnZlZCBudW1iZXIsIHN0YXJ0 IGl0IGF0IDEuCiAjIGB1cHN0cmVhbScgaXMgbm90IGEgcGFydCBvZiBgbmFtZScgdG8gc3RheSBm dWxseSBycG0gZGVwZW5kZW5jaWVzIGNvbXBhdGlibGUgZm9yIHRoZSB0ZXN0aW5nLgotUmVsZWFz ZTogMjclez9fd2l0aF91cHN0cmVhbToudXBzdHJlYW19JXs/ZGlzdH0KK1JlbGVhc2U6IDI4JXs/ X3dpdGhfdXBzdHJlYW06LnVwc3RyZWFtfSV7P2Rpc3R9CiAKIExpY2Vuc2U6IEdQTHYzKyBhbmQg R1BMdjMrIHdpdGggZXhjZXB0aW9ucyBhbmQgR1BMdjIrIGFuZCBHUEx2Misgd2l0aCBleGNlcHRp b25zIGFuZCBHUEwrIGFuZCBMR1BMdjIrIGFuZCBCU0QgYW5kIFB1YmxpYyBEb21haW4KIEdyb3Vw OiBEZXZlbG9wbWVudC9EZWJ1Z2dlcnMKQEAgLTI2NCw3ICsyNjQsNyBAQCBQYXRjaDIzMTogZ2Ri LTYuMy1iejIwMjY4OS1leGVjLWZyb20tcHRocmVhZC10ZXN0LnBhdGNoCiAKICMgQmFja3BvcnRl ZCBmaXh1cHMgcG9zdCB0aGUgc291cmNlIHRhcmJhbGwuCiAjWGRyb3A6IEp1c3QgYmFja3BvcnRz LgotI1BhdGNoMjMyOiBnZGItdXBzdHJlYW0ucGF0Y2gKK1BhdGNoMjMyOiBnZGItdXBzdHJlYW0u cGF0Y2gKIAogIyBUZXN0Y2FzZSBmb3IgUFBDIFBvd2VyNi9ERlAgaW5zdHJ1Y3Rpb25zIGRpc2Fz c2VtYmx5IChCWiAyMzAwMDApLgogIz1mZWRvcmF0ZXN0K3BwYwpAQCAtNzE3LDcgKzcxNyw3IEBA IHJtIC1mIGdkYi9qdi1leHAuYyBnZGIvbTItZXhwLmMgZ2RiL29iamMtZXhwLmMgZ2RiL3AtZXhw LmMKIAogJWlmIDAleyE/X3dpdGhfdXBzdHJlYW06MX0KIAotI3BhdGNoMjMyIC1wMQorJXBhdGNo MjMyIC1wMQogJXBhdGNoMzQ5IC1wMQogJXBhdGNoMSAtcDEKICVwYXRjaDMgLXAxCkBAIC0xMjU4 LDYgKzEyNTgsOSBAQCBmaQogJXtfaW5mb2Rpcn0vZ2RiLmluZm8qCiAKICVjaGFuZ2Vsb2cKKyog U2F0IE1hciAgNSAyMDExIEphbiBLcmF0b2NodmlsIDxqYW4ua3JhdG9jaHZpbEByZWRoYXQuY29t PiAtIDcuMi41MC4yMDExMDMwNS0yOC5mYzE1CistIFJlYmFzZSB0byBGU0YgR0RCIDcuMi41MC4y MDExMDMwNSAod2hpY2ggaXMgYSA3LjMgcHJlLXJlbGVhc2UpLgorCiAqIEZyaSBGZWIgMjUgMjAx MSBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVkaGF0LmNvbT4gLSA3LjIuNTAuMjAx MTAyMjItMjcuZmMxNQogLSBJbmNsdWRlIGRvYyBhbHNvIGluIHRoZSBQREYgZm9ybTsgbmV3IEJ1 aWxkUmVxdWlyZXM6IHRleGluZm8tdGV4LgogCgpkaWZmIC0tZ2l0IGEvc291cmNlcyBiL3NvdXJj ZXMKaW5kZXggNjNmMzc0NC4uZDI5YTJiZCAxMDA2NDQKLS0tIGEvc291cmNlcworKysgYi9zb3Vy Y2VzCkBAIC0xLDIgKzEsMiBAQAogMDRlNWM0YjFiOWU2MzM0MjJjYzQ4OTkwZmU2MTk1OGQgIGxp YnN0ZGMrKy12My1weXRob24tcjE1NTk3OC50YXIuYnoyCi0yZTI2YTY1NGJjZDBjOWM0NmNmYzEw NGU0MDY4YTk1YyAgZ2RiLTcuMi41MC4yMDExMDIyMi50YXIuYnoyCisxNDNhYjA5ZTg3MjRiMDA1 OGZiZjg4MjgzMmY2ZDJmMyAgZ2RiLTcuMi41MC4yMDExMDMwNS50YXIuYnoyCg==