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: Jakub Jelinek To: git-commits@fedoraproject.org Subject: [rpms/gcc] rhel-f41-base: 4.3.2-1 Date: Mon, 29 Jun 2026 12:23:54 GMT Message-ID: <178273583425.1.6011527015316338745.rpms-gcc-e41a24902722@fedoraproject.org> List-ID: X-Git-Repo: rpms/gcc X-Git-Branch: rhel-f41-base X-Git-Rev: e41a24902722794559542b86372111c4c6757d5e QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2NjCkJyYW5jaCA6 IHJoZWwtZjQxLWJhc2UKQ29tbWl0IDogZTQxYTI0OTAyNzIyNzk0NTU5NTQyYjg2MzcyMTExYzRj Njc1N2Q1ZQpBdXRob3IgOiBKYWt1YiBKZWxpbmVrIDxqYWt1YkBmZWRvcmFwcm9qZWN0Lm9yZz4K RGF0ZSAgIDogMjAwOC0wOC0yOVQxMTozNTozMiswMDowMApTdGF0cyAgOiArNTU5Ly04IGluIDYg ZmlsZShzKQpVUkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2djYy9j L2U0MWEyNDkwMjcyMjc5NDU1OTU0MmI4NjM3MjExMWM0YzY3NTdkNWU/YnJhbmNoPXJoZWwtZjQx LWJhc2UKCkxvZzoKNC4zLjItMQoKLS0tCmRpZmYgLS1naXQgYS8uY3ZzaWdub3JlIGIvLmN2c2ln bm9yZQppbmRleCAyMTk2ZmYxLi4wNDM1YWIwIDEwMDY0NAotLS0gYS8uY3ZzaWdub3JlCisrKyBi Ly5jdnNpZ25vcmUKQEAgLTEsMiArMSwyIEBACi1nY2MtNC4zLjEtMjAwODA4MjUudGFyLmJ6Mgor Z2NjLTQuMy4yLTIwMDgwODI5LnRhci5iejIKIGZhc3RqYXItMC45NS50YXIuZ3oKCmRpZmYgLS1n aXQgYS9nY2M0My1mb3J0cmFuLWRlYnVnMTAucGF0Y2ggYi9nY2M0My1mb3J0cmFuLWRlYnVnMTAu cGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDQ0NjUxOQotLS0gL2Rl di9udWxsCisrKyBiL2djYzQzLWZvcnRyYW4tZGVidWcxMC5wYXRjaApAQCAtMCwwICsxLDQ1NiBA QAorMjAwOC0wOC0yNiAgSmFrdWIgSmVsaW5layAgPGpha3ViQHJlZGhhdC5jb20+CisKKwkqIGR3 YXJmMm91dC5jIChnZW5fY29uc3RfZGllKTogTmV3IGZ1bmN0aW9uLgorCShzaXplX29mX2RpZSwg dmFsdWVfZm9ybWF0LCBvdXRwdXRfZGllKTogT3V0cHV0IGxhcmdlcgorCWR3X3ZhbF9jbGFzc192 ZWMgdXNpbmcgRFdfRk9STV9ibG9jazIgb3IgRFdfRk9STV9ibG9jazQuCisJKG5hdGl2ZV9lbmNv ZGVfaW5pdGlhbGl6ZXIpOiBOZXcgZnVuY3Rpb24uCisJKHRyZWVfYWRkX2NvbnN0X3ZhbHVlX2F0 dHJpYnV0ZSk6IENhbGwgaXQuCisJKGdlbl9kZWNsX2RpZSwgZHdhcmYyb3V0X2RlY2wpOiBIYW5k bGUgQ09OU1RfREVDTHMgaWYgaXNfZm9ydHJhbiAoKS4KKworCSogdHJhbnMtZGVjbC5jIChjaGVj a19jb25zdGFudF9pbml0aWFsaXplciwKKwlnZmNfZW1pdF9wYXJhbWV0ZXJfZGVidWdfaW5mbyk6 IE5ldyBmdW5jdGlvbnMuCisJKGdmY19nZW5lcmF0ZV9tb2R1bGVfdmFycywgZ2ZjX2dlbmVyYXRl X2Z1bmN0aW9uX2NvZGUpOiBFbWl0CisJUEFSQU1FVEVScyBhbmQgdW5yZWZlcmVuY2VkIHZhcmlh YmxlcyB3aXRoIGluaXRpYWxpemVycyBpbnRvCisJZGVidWcgaW5mby4KKworLS0tIGdjYy9mb3J0 cmFuL3RyYW5zLWRlY2wuYy5qagkyMDA4LTA4LTI2IDIxOjQzOjM2LjAwMDAwMDAwMCArMDIwMAor KysrIGdjYy9mb3J0cmFuL3RyYW5zLWRlY2wuYwkyMDA4LTA4LTI2IDIyOjU0OjI0LjAwMDAwMDAw MCArMDIwMAorQEAgLTMyMzIsNiArMzIzMiwxMzUgQEAgZ2ZjX3RyYW5zX3VzZV9zdG10cyAoZ2Zj X25hbWVzcGFjZSAqIG5zKQorIH0KKyAKKyAKKysvKiBSZXR1cm4gdHJ1ZSBpZiBleHByIGlzIGEg Y29uc3RhbnQgaW5pdGlhbGl6ZXIgdGhhdCBnZmNfY29udl9pbml0aWFsaXplcgorKyAgIHdpbGwg aGFuZGxlLiAgKi8KKysKKytzdGF0aWMgYm9vbAorK2NoZWNrX2NvbnN0YW50X2luaXRpYWxpemVy IChnZmNfZXhwciAqZXhwciwgZ2ZjX3R5cGVzcGVjICp0cywgYm9vbCBhcnJheSwKKysJCQkgICAg Ym9vbCBwb2ludGVyKQorK3sKKysgIGdmY19jb25zdHJ1Y3RvciAqYzsKKysgIGdmY19jb21wb25l bnQgKmNtOworKworKyAgaWYgKHBvaW50ZXIpCisrICAgIHJldHVybiB0cnVlOworKyAgZWxzZSBp ZiAoYXJyYXkpCisrICAgIHsKKysgICAgICBpZiAoZXhwci0+ZXhwcl90eXBlID09IEVYUFJfQ09O U1RBTlQgfHwgZXhwci0+ZXhwcl90eXBlID09IEVYUFJfTlVMTCkKKysJcmV0dXJuIHRydWU7Cisr ICAgICAgZWxzZSBpZiAoZXhwci0+ZXhwcl90eXBlID09IEVYUFJfU1RSVUNUVVJFKQorKwlyZXR1 cm4gY2hlY2tfY29uc3RhbnRfaW5pdGlhbGl6ZXIgKGV4cHIsIHRzLCBmYWxzZSwgZmFsc2UpOwor KyAgICAgIGVsc2UgaWYgKGV4cHItPmV4cHJfdHlwZSAhPSBFWFBSX0FSUkFZKQorKwlyZXR1cm4g ZmFsc2U7CisrICAgICAgZm9yIChjID0gZXhwci0+dmFsdWUuY29uc3RydWN0b3I7IGM7IGMgPSBj LT5uZXh0KQorKwl7CisrCSAgaWYgKGMtPml0ZXJhdG9yKQorKwkgICAgcmV0dXJuIGZhbHNlOwor KwkgIGlmIChjLT5leHByLT5leHByX3R5cGUgPT0gRVhQUl9TVFJVQ1RVUkUpCisrCSAgICB7Cisr CSAgICAgIGlmICghY2hlY2tfY29uc3RhbnRfaW5pdGlhbGl6ZXIgKGMtPmV4cHIsIHRzLCBmYWxz ZSwgZmFsc2UpKQorKwkJcmV0dXJuIGZhbHNlOworKwkgICAgfQorKwkgIGVsc2UgaWYgKGMtPmV4 cHItPmV4cHJfdHlwZSAhPSBFWFBSX0NPTlNUQU5UKQorKwkgICAgcmV0dXJuIGZhbHNlOworKwl9 CisrICAgICAgcmV0dXJuIHRydWU7CisrICAgIH0KKysgIGVsc2Ugc3dpdGNoICh0cy0+dHlwZSkK KysgICAgeworKyAgICBjYXNlIEJUX0RFUklWRUQ6CisrICAgICAgaWYgKGV4cHItPmV4cHJfdHlw ZSAhPSBFWFBSX1NUUlVDVFVSRSkKKysJcmV0dXJuIGZhbHNlOworKyAgICAgIGNtID0gZXhwci0+ dHMuZGVyaXZlZC0+Y29tcG9uZW50czsKKysgICAgICBmb3IgKGMgPSBleHByLT52YWx1ZS5jb25z dHJ1Y3RvcjsgYzsgYyA9IGMtPm5leHQsIGNtID0gY20tPm5leHQpCisrCXsKKysJICBpZiAoIWMt PmV4cHIgfHwgY20tPmFsbG9jYXRhYmxlKQorKwkgICAgY29udGludWU7CisrCSAgaWYgKCFjaGVj a19jb25zdGFudF9pbml0aWFsaXplciAoYy0+ZXhwciwgJmNtLT50cywKKysJCQkJCSAgIGNtLT5k aW1lbnNpb24sCisrCQkJCQkgICBjbS0+cG9pbnRlcikpCisrCSAgICByZXR1cm4gZmFsc2U7Cisr CX0KKysgICAgICByZXR1cm4gdHJ1ZTsKKysgICAgZGVmYXVsdDoKKysgICAgICByZXR1cm4gZXhw ci0+ZXhwcl90eXBlID09IEVYUFJfQ09OU1RBTlQ7CisrICAgIH0KKyt9CisrCisrLyogRW1pdCBk ZWJ1ZyBpbmZvIGZvciBwYXJhbWV0ZXJzIGFuZCB1bnJlZmVyZW5jZWQgdmFyaWFibGVzIHdpdGgK KysgICBpbml0aWFsaXplcnMuICAqLworKworK3N0YXRpYyB2b2lkCisrZ2ZjX2VtaXRfcGFyYW1l dGVyX2RlYnVnX2luZm8gKGdmY19zeW1ib2wgKnN5bSkKKyt7CisrICB0cmVlIGRlY2w7CisrCisr ICBpZiAoc3ltLT5hdHRyLmZsYXZvciAhPSBGTF9QQVJBTUVURVIKKysgICAgICAmJiAoc3ltLT5h dHRyLmZsYXZvciAhPSBGTF9WQVJJQUJMRSB8fCBzeW0tPmF0dHIucmVmZXJlbmNlZCkpCisrICAg IHJldHVybjsKKysKKysgIGlmIChzeW0tPmJhY2tlbmRfZGVjbCAhPSBOVUxMCisrICAgICAgfHwg c3ltLT52YWx1ZSA9PSBOVUxMCisrICAgICAgfHwgc3ltLT5hdHRyLnVzZV9hc3NvYworKyAgICAg IHx8IHN5bS0+YXR0ci5kdW1teQorKyAgICAgIHx8IHN5bS0+YXR0ci5yZXN1bHQKKysgICAgICB8 fCBzeW0tPmF0dHIuZnVuY3Rpb24KKysgICAgICB8fCBzeW0tPmF0dHIuaW50cmluc2ljCisrICAg ICAgfHwgc3ltLT5hdHRyLnBvaW50ZXIKKysgICAgICB8fCBzeW0tPmF0dHIuYWxsb2NhdGFibGUK KysgICAgICB8fCBzeW0tPmF0dHIuY3JheV9wb2ludGVlCisrICAgICAgfHwgc3ltLT5hdHRyLnRo cmVhZHByaXZhdGUKKysgICAgICB8fCBzeW0tPmF0dHIuaXNfYmluZF9jCisrICAgICAgfHwgc3lt LT5hdHRyLnN1YnJlZl9hcnJheV9wb2ludGVyCisrICAgICAgfHwgc3ltLT5hdHRyLmFzc2lnbikK KysgICAgcmV0dXJuOworKworKyAgaWYgKHN5bS0+dHMudHlwZSA9PSBCVF9DSEFSQUNURVIpCisr ICAgIHsKKysgICAgICBnZmNfY29udl9jb25zdF9jaGFybGVuIChzeW0tPnRzLmNsKTsKKysgICAg ICBpZiAoc3ltLT50cy5jbC0+YmFja2VuZF9kZWNsID09IE5VTEwKKysJICB8fCBUUkVFX0NPREUg KHN5bS0+dHMuY2wtPmJhY2tlbmRfZGVjbCkgIT0gSU5URUdFUl9DU1QpCisrCXJldHVybjsKKysg ICAgfQorKyAgZWxzZSBpZiAoc3ltLT50cy50eXBlID09IEJUX0RFUklWRUQgJiYgc3ltLT50cy5k ZXJpdmVkLT5hdHRyLmFsbG9jX2NvbXApCisrICAgIHJldHVybjsKKysKKysgIGlmIChzeW0tPmFz KQorKyAgICB7CisrICAgICAgaW50IG47CisrCisrICAgICAgaWYgKHN5bS0+YXMtPnR5cGUgIT0g QVNfRVhQTElDSVQpCisrCXJldHVybjsKKysgICAgICBmb3IgKG4gPSAwOyBuIDwgc3ltLT5hcy0+ cmFuazsgbisrKQorKwlpZiAoc3ltLT5hcy0+bG93ZXJbbl0tPmV4cHJfdHlwZSAhPSBFWFBSX0NP TlNUQU5UCisrCSAgICB8fCBzeW0tPmFzLT51cHBlcltuXSA9PSBOVUxMCisrCSAgICB8fCBzeW0t PmFzLT51cHBlcltuXS0+ZXhwcl90eXBlICE9IEVYUFJfQ09OU1RBTlQpCisrCSAgcmV0dXJuOwor KyAgICB9CisrCisrICBpZiAoIWNoZWNrX2NvbnN0YW50X2luaXRpYWxpemVyIChzeW0tPnZhbHVl LCAmc3ltLT50cywKKysJCQkJICAgc3ltLT5hdHRyLmRpbWVuc2lvbiwgZmFsc2UpKQorKyAgICBy ZXR1cm47CisrCisrICAvKiBDcmVhdGUgdGhlIGRlY2wgZm9yIHRoZSB2YXJpYWJsZSBvciBjb25z dGFudC4gICovCisrICBkZWNsID0gYnVpbGRfZGVjbCAoc3ltLT5hdHRyLmZsYXZvciA9PSBGTF9Q QVJBTUVURVIgPyBDT05TVF9ERUNMIDogVkFSX0RFQ0wsCisrCQkgICAgIGdmY19zeW1faWRlbnRp ZmllciAoc3ltKSwgZ2ZjX3N5bV90eXBlIChzeW0pKTsKKysgIGlmIChzeW0tPmF0dHIuZmxhdm9y ID09IEZMX1BBUkFNRVRFUikKKysgICAgVFJFRV9SRUFET05MWSAoZGVjbCkgPSAxOworKyAgZ2Zj X3NldF9kZWNsX2xvY2F0aW9uIChkZWNsLCAmc3ltLT5kZWNsYXJlZF9hdCk7CisrICBpZiAoc3lt LT5hdHRyLmRpbWVuc2lvbikKKysgICAgR0ZDX0RFQ0xfUEFDS0VEX0FSUkFZIChkZWNsKSA9IDE7 CisrICBERUNMX0NPTlRFWFQgKGRlY2wpID0gc3ltLT5ucy0+cHJvY19uYW1lLT5iYWNrZW5kX2Rl Y2w7CisrICBUUkVFX1NUQVRJQyAoZGVjbCkgPSAxOworKyAgVFJFRV9VU0VEIChkZWNsKSA9IDE7 CisrICBpZiAoREVDTF9DT05URVhUIChkZWNsKSAmJiBUUkVFX0NPREUgKERFQ0xfQ09OVEVYVCAo ZGVjbCkpID09IE5BTUVTUEFDRV9ERUNMKQorKyAgICBUUkVFX1BVQkxJQyAoZGVjbCkgPSAxOwor KyAgREVDTF9JTklUSUFMIChkZWNsKQorKyAgICA9IGdmY19jb252X2luaXRpYWxpemVyIChzeW0t PnZhbHVlLCAmc3ltLT50cywgVFJFRV9UWVBFIChkZWNsKSwKKysJCQkgICAgc3ltLT5hdHRyLmRp bWVuc2lvbiwgMCk7CisrICBkZWJ1Z19ob29rcy0+Z2xvYmFsX2RlY2wgKGRlY2wpOworK30KKysK KyAvKiBHZW5lcmF0ZSBhbGwgdGhlIHJlcXVpcmVkIGNvZGUgZm9yIG1vZHVsZSB2YXJpYWJsZXMu ICAqLworIAorIHZvaWQKK0BAIC0zMjUyLDYgKzMzODEsNyBAQCBnZmNfZ2VuZXJhdGVfbW9kdWxl X3ZhcnMgKGdmY19uYW1lc3BhY2UgCisgICBjdXJfbW9kdWxlID0gTlVMTDsKKyAKKyAgIGdmY190 cmFuc191c2Vfc3RtdHMgKG5zKTsKKysgIGdmY190cmF2ZXJzZV9ucyAobnMsIGdmY19lbWl0X3Bh cmFtZXRlcl9kZWJ1Z19pbmZvKTsKKyB9CisgCisgCitAQCAtMzc4Nyw2ICszOTE3LDcgQEAgZ2Zj X2dlbmVyYXRlX2Z1bmN0aW9uX2NvZGUgKGdmY19uYW1lc3BhYworICAgICB9CisgCisgICBnZmNf dHJhbnNfdXNlX3N0bXRzIChucyk7CisrICBnZmNfdHJhdmVyc2VfbnMgKG5zLCBnZmNfZW1pdF9w YXJhbWV0ZXJfZGVidWdfaW5mbyk7CisgfQorIAorIHZvaWQKKy0tLSBnY2MvZHdhcmYyb3V0LmMu amoJMjAwOC0wOC0yNiAyMTo0MzozMS4wMDAwMDAwMDAgKzAyMDAKKysrKyBnY2MvZHdhcmYyb3V0 LmMJMjAwOC0wOC0yNiAyMTo0Mzo0Mi4wMDAwMDAwMDAgKzAyMDAKK0BAIC01MDkzLDYgKzUwOTMs NyBAQCBzdGF0aWMgdm9pZCBnZW5fdW5zcGVjaWZpZWRfcGFyYW1ldGVyc19kCisgc3RhdGljIHZv aWQgZ2VuX2Zvcm1hbF90eXBlc19kaWUgKHRyZWUsIGR3X2RpZV9yZWYpOworIHN0YXRpYyB2b2lk IGdlbl9zdWJwcm9ncmFtX2RpZSAodHJlZSwgZHdfZGllX3JlZik7Cisgc3RhdGljIHZvaWQgZ2Vu X3ZhcmlhYmxlX2RpZSAodHJlZSwgZHdfZGllX3JlZik7Cisrc3RhdGljIHZvaWQgZ2VuX2NvbnN0 X2RpZSAodHJlZSwgZHdfZGllX3JlZik7Cisgc3RhdGljIHZvaWQgZ2VuX2xhYmVsX2RpZSAodHJl ZSwgZHdfZGllX3JlZik7Cisgc3RhdGljIHZvaWQgZ2VuX2xleGljYWxfYmxvY2tfZGllICh0cmVl LCBkd19kaWVfcmVmLCBpbnQpOworIHN0YXRpYyB2b2lkIGdlbl9pbmxpbmVkX3N1YnJvdXRpbmVf ZGllICh0cmVlLCBkd19kaWVfcmVmLCBpbnQpOworQEAgLTc1NjQsOCArNzU2NSwxMCBAQCBzaXpl X29mX2RpZSAoZHdfZGllX3JlZiBkaWUpCisgCSAgc2l6ZSArPSAxICsgMipIT1NUX0JJVFNfUEVS X0xPTkcvSE9TVF9CSVRTX1BFUl9DSEFSOyAvKiBibG9jayAqLworIAkgIGJyZWFrOworIAljYXNl IGR3X3ZhbF9jbGFzc192ZWM6CistCSAgc2l6ZSArPSAxICsgKGEtPmR3X2F0dHJfdmFsLnYudmFs X3ZlYy5sZW5ndGgKKy0JCSAgICAgICAqIGEtPmR3X2F0dHJfdmFsLnYudmFsX3ZlYy5lbHRfc2l6 ZSk7IC8qIGJsb2NrICovCisrCSAgc2l6ZSArPSBjb25zdGFudF9zaXplIChhLT5kd19hdHRyX3Zh bC52LnZhbF92ZWMubGVuZ3RoCisrCQkJCSAqIGEtPmR3X2F0dHJfdmFsLnYudmFsX3ZlYy5lbHRf c2l6ZSkKKysJCSAgKyBhLT5kd19hdHRyX3ZhbC52LnZhbF92ZWMubGVuZ3RoCisrCQkgICAgKiBh LT5kd19hdHRyX3ZhbC52LnZhbF92ZWMuZWx0X3NpemU7IC8qIGJsb2NrICovCisgCSAgYnJlYWs7 CisgCWNhc2UgZHdfdmFsX2NsYXNzX2ZsYWc6CisgCSAgc2l6ZSArPSAxOworQEAgLTc3NjQsNyAr Nzc2NywxOCBAQCB2YWx1ZV9mb3JtYXQgKGR3X2F0dHJfcmVmIGEpCisgICAgIGNhc2UgZHdfdmFs X2NsYXNzX2xvbmdfbG9uZzoKKyAgICAgICByZXR1cm4gRFdfRk9STV9ibG9jazE7CisgICAgIGNh c2UgZHdfdmFsX2NsYXNzX3ZlYzoKKy0gICAgICByZXR1cm4gRFdfRk9STV9ibG9jazE7CisrICAg ICAgc3dpdGNoIChjb25zdGFudF9zaXplIChhLT5kd19hdHRyX3ZhbC52LnZhbF92ZWMubGVuZ3Ro CisrCQkJICAgICAqIGEtPmR3X2F0dHJfdmFsLnYudmFsX3ZlYy5lbHRfc2l6ZSkpCisrCXsKKysJ Y2FzZSAxOgorKwkgIHJldHVybiBEV19GT1JNX2Jsb2NrMTsKKysJY2FzZSAyOgorKwkgIHJldHVy biBEV19GT1JNX2Jsb2NrMjsKKysJY2FzZSA0OgorKwkgIHJldHVybiBEV19GT1JNX2Jsb2NrNDsK KysJZGVmYXVsdDoKKysJICBnY2NfdW5yZWFjaGFibGUgKCk7CisrCX0KKyAgICAgY2FzZSBkd192 YWxfY2xhc3NfZmxhZzoKKyAgICAgICByZXR1cm4gRFdfRk9STV9mbGFnOworICAgICBjYXNlIGR3 X3ZhbF9jbGFzc19kaWVfcmVmOgorQEAgLTgwNTYsNyArODA3MCw4IEBAIG91dHB1dF9kaWUgKGR3 X2RpZV9yZWYgZGllKQorIAkgICAgdW5zaWduZWQgaW50IGk7CisgCSAgICB1bnNpZ25lZCBjaGFy ICpwOworIAorLQkgICAgZHcyX2FzbV9vdXRwdXRfZGF0YSAoMSwgbGVuICogZWx0X3NpemUsICIl cyIsIG5hbWUpOworKwkgICAgZHcyX2FzbV9vdXRwdXRfZGF0YSAoY29uc3RhbnRfc2l6ZSAobGVu ICogZWx0X3NpemUpLAorKwkJCQkgbGVuICogZWx0X3NpemUsICIlcyIsIG5hbWUpOworIAkgICAg aWYgKGVsdF9zaXplID4gc2l6ZW9mIChIT1NUX1dJREVfSU5UKSkKKyAJICAgICAgeworIAkJZWx0 X3NpemUgLz0gMjsKK0BAIC0xMTc2Miw2ICsxMTc3NywxNTAgQEAgYWRkX2xvY2F0aW9uX29yX2Nv bnN0X3ZhbHVlX2F0dHJpYnV0ZSAoZAorICAgdHJlZV9hZGRfY29uc3RfdmFsdWVfYXR0cmlidXRl IChkaWUsIGRlY2wpOworIH0KKyAKKysvKiBIZWxwZXIgZnVuY3Rpb24gZm9yIHRyZWVfYWRkX2Nv bnN0X3ZhbHVlX2F0dHJpYnV0ZS4gIE5hdGl2ZWx5IGVuY29kZQorKyAgIGluaXRpYWxpemVyIElO SVQgaW50byBhbiBhcnJheS4gIFJldHVybiB0cnVlIGlmIHN1Y2Nlc3NmdWwuICAqLworKworK3N0 YXRpYyBib29sCisrbmF0aXZlX2VuY29kZV9pbml0aWFsaXplciAodHJlZSBpbml0LCB1bnNpZ25l ZCBjaGFyICphcnJheSwgaW50IHNpemUpCisreworKyAgdHJlZSB0eXBlOworKworKyAgaWYgKGlu aXQgPT0gTlVMTF9UUkVFKQorKyAgICByZXR1cm4gZmFsc2U7CisrCisrICBTVFJJUF9OT1BTIChp bml0KTsKKysgIHN3aXRjaCAoVFJFRV9DT0RFIChpbml0KSkKKysgICAgeworKyAgICBjYXNlIFNU UklOR19DU1Q6CisrICAgICAgdHlwZSA9IFRSRUVfVFlQRSAoaW5pdCk7CisrICAgICAgaWYgKFRS RUVfQ09ERSAodHlwZSkgPT0gQVJSQVlfVFlQRSkKKysJeworKwkgIHRyZWUgZW50dHlwZSA9IFRS RUVfVFlQRSAodHlwZSk7CisrCSAgZW51bSBtYWNoaW5lX21vZGUgbW9kZSA9IFRZUEVfTU9ERSAo ZW50dHlwZSk7CisrCisrCSAgaWYgKEdFVF9NT0RFX0NMQVNTIChtb2RlKSAhPSBNT0RFX0lOVCB8 fCBHRVRfTU9ERV9TSVpFIChtb2RlKSAhPSAxKQorKwkgICAgcmV0dXJuIGZhbHNlOworKwkgIGlm IChpbnRfc2l6ZV9pbl9ieXRlcyAodHlwZSkgIT0gc2l6ZSkKKysJICAgIHJldHVybiBmYWxzZTsK KysJICBpZiAoc2l6ZSA+IFRSRUVfU1RSSU5HX0xFTkdUSCAoaW5pdCkpCisrCSAgICB7CisrCSAg ICAgIG1lbWNweSAoYXJyYXksIFRSRUVfU1RSSU5HX1BPSU5URVIgKGluaXQpLAorKwkJICAgICAg VFJFRV9TVFJJTkdfTEVOR1RIIChpbml0KSk7CisrCSAgICAgIG1lbXNldCAoYXJyYXkgKyBUUkVF X1NUUklOR19MRU5HVEggKGluaXQpLAorKwkJICAgICAgJ1wwJywgc2l6ZSAtIFRSRUVfU1RSSU5H X0xFTkdUSCAoaW5pdCkpOworKwkgICAgfQorKwkgIGVsc2UKKysJICAgIG1lbWNweSAoYXJyYXks IFRSRUVfU1RSSU5HX1BPSU5URVIgKGluaXQpLCBzaXplKTsKKysJICByZXR1cm4gdHJ1ZTsKKysJ fQorKyAgICAgIHJldHVybiBmYWxzZTsKKysgICAgY2FzZSBDT05TVFJVQ1RPUjoKKysgICAgICB0 eXBlID0gVFJFRV9UWVBFIChpbml0KTsKKysgICAgICBpZiAoaW50X3NpemVfaW5fYnl0ZXMgKHR5 cGUpICE9IHNpemUpCisrCXJldHVybiBmYWxzZTsKKysgICAgICBpZiAoVFJFRV9DT0RFICh0eXBl KSA9PSBBUlJBWV9UWVBFKQorKwl7CisrCSAgSE9TVF9XSURFX0lOVCBtaW5faW5kZXg7CisrCSAg dW5zaWduZWQgSE9TVF9XSURFX0lOVCBjbnQ7CisrCSAgaW50IGN1cnBvcyA9IDAsIGZpZWxkc2l6 ZTsKKysJICBjb25zdHJ1Y3Rvcl9lbHQgKmNlOworKworKwkgIGlmIChUWVBFX0RPTUFJTiAodHlw ZSkgPT0gTlVMTF9UUkVFCisrCSAgICAgIHx8ICFob3N0X2ludGVnZXJwIChUWVBFX01JTl9WQUxV RSAoVFlQRV9ET01BSU4gKHR5cGUpKSwgMCkpCisrCSAgICByZXR1cm4gZmFsc2U7CisrCisrCSAg ZmllbGRzaXplID0gaW50X3NpemVfaW5fYnl0ZXMgKFRSRUVfVFlQRSAodHlwZSkpOworKwkgIGlm IChmaWVsZHNpemUgPD0gMCkKKysJICAgIHJldHVybiBmYWxzZTsKKysKKysJICBtaW5faW5kZXgg PSB0cmVlX2xvd19jc3QgKFRZUEVfTUlOX1ZBTFVFIChUWVBFX0RPTUFJTiAodHlwZSkpLCAwKTsK KysJICBtZW1zZXQgKGFycmF5LCAnXDAnLCBzaXplKTsKKysJICBmb3IgKGNudCA9IDA7CisrCSAg ICAgICBWRUNfaXRlcmF0ZSAoY29uc3RydWN0b3JfZWx0LCBDT05TVFJVQ1RPUl9FTFRTIChpbml0 KSwgY250LCBjZSk7CisrCSAgICAgICBjbnQrKykKKysJICAgIHsKKysJICAgICAgdHJlZSB2YWwg PSBjZS0+dmFsdWU7CisrCSAgICAgIHRyZWUgaW5kZXggPSBjZS0+aW5kZXg7CisrCSAgICAgIGlu dCBwb3MgPSBjdXJwb3M7CisrCSAgICAgIGlmIChpbmRleCAmJiBUUkVFX0NPREUgKGluZGV4KSA9 PSBSQU5HRV9FWFBSKQorKwkJcG9zID0gKHRyZWVfbG93X2NzdCAoVFJFRV9PUEVSQU5EIChpbmRl eCwgMCksIDApIC0gbWluX2luZGV4KQorKwkJICAgICAgKiBmaWVsZHNpemU7CisrCSAgICAgIGVs c2UgaWYgKGluZGV4KQorKwkJcG9zID0gdHJlZV9sb3dfY3N0IChpbmRleCwgMCkgKiBmaWVsZHNp emU7CisrCisrCSAgICAgIGlmICh2YWwpCisrCQl7CisrCQkgIFNUUklQX05PUFMgKHZhbCk7Cisr CQkgIGlmICghbmF0aXZlX2VuY29kZV9pbml0aWFsaXplciAodmFsLCBhcnJheSArIHBvcywgZmll bGRzaXplKSkKKysJCSAgICByZXR1cm4gZmFsc2U7CisrCQl9CisrCSAgICAgIGN1cnBvcyA9IHBv cyArIGZpZWxkc2l6ZTsKKysJICAgICAgaWYgKGluZGV4ICYmIFRSRUVfQ09ERSAoaW5kZXgpID09 IFJBTkdFX0VYUFIpCisrCQl7CisrCQkgIGludCBjb3VudCA9IHRyZWVfbG93X2NzdCAoVFJFRV9P UEVSQU5EIChpbmRleCwgMSksIDApCisrCQkJICAgICAgLSB0cmVlX2xvd19jc3QgKFRSRUVfT1BF UkFORCAoaW5kZXgsIDApLCAwKTsKKysJCSAgd2hpbGUgKGNvdW50ID4gMCkKKysJCSAgICB7Cisr CQkgICAgICBpZiAodmFsKQorKwkJCW1lbWNweSAoYXJyYXkgKyBjdXJwb3MsIGFycmF5ICsgcG9z LCBmaWVsZHNpemUpOworKwkJICAgICAgY3VycG9zICs9IGZpZWxkc2l6ZTsKKysJCSAgICB9Cisr CQl9CisrCSAgICAgIGdjY19hc3NlcnQgKGN1cnBvcyA8PSBzaXplKTsKKysJICAgIH0KKysJICBy ZXR1cm4gdHJ1ZTsKKysJfQorKyAgICAgIGVsc2UgaWYgKFRSRUVfQ09ERSAodHlwZSkgPT0gUkVD T1JEX1RZUEUKKysJICAgICAgIHx8IFRSRUVfQ09ERSAodHlwZSkgPT0gVU5JT05fVFlQRSkKKysJ eworKwkgIHRyZWUgZmllbGQgPSBOVUxMX1RSRUU7CisrCSAgdW5zaWduZWQgSE9TVF9XSURFX0lO VCBjbnQ7CisrCSAgY29uc3RydWN0b3JfZWx0ICpjZTsKKysKKysJICBpZiAoaW50X3NpemVfaW5f Ynl0ZXMgKHR5cGUpICE9IHNpemUpCisrCSAgICByZXR1cm4gZmFsc2U7CisrCisrCSAgaWYgKFRS RUVfQ09ERSAodHlwZSkgPT0gUkVDT1JEX1RZUEUpCisrCSAgICBmaWVsZCA9IFRZUEVfRklFTERT ICh0eXBlKTsKKysKKysJICBmb3IgKGNudCA9IDA7CisrCSAgICAgICBWRUNfaXRlcmF0ZSAoY29u c3RydWN0b3JfZWx0LCBDT05TVFJVQ1RPUl9FTFRTIChpbml0KSwgY250LCBjZSk7CisrCSAgICAg ICBjbnQrKywgZmllbGQgPSBmaWVsZCA/IFRSRUVfQ0hBSU4gKGZpZWxkKSA6IDApCisrCSAgICB7 CisrCSAgICAgIHRyZWUgdmFsID0gY2UtPnZhbHVlOworKwkgICAgICBpbnQgcG9zLCBmaWVsZHNp emU7CisrCisrCSAgICAgIGlmIChjZS0+aW5kZXggIT0gMCkKKysJCWZpZWxkID0gY2UtPmluZGV4 OworKworKwkgICAgICBpZiAodmFsKQorKwkJU1RSSVBfTk9QUyAodmFsKTsKKysKKysJICAgICAg aWYgKGZpZWxkID09IE5VTExfVFJFRSB8fCBERUNMX0JJVF9GSUVMRCAoZmllbGQpKQorKwkJcmV0 dXJuIGZhbHNlOworKworKwkgICAgICBpZiAoVFJFRV9DT0RFIChUUkVFX1RZUEUgKGZpZWxkKSkg PT0gQVJSQVlfVFlQRQorKwkJICAmJiBUWVBFX0RPTUFJTiAoVFJFRV9UWVBFIChmaWVsZCkpCisr CQkgICYmICEgVFlQRV9NQVhfVkFMVUUgKFRZUEVfRE9NQUlOIChUUkVFX1RZUEUgKGZpZWxkKSkp KQorKwkJcmV0dXJuIGZhbHNlOworKwkgICAgICBlbHNlIGlmIChERUNMX1NJWkVfVU5JVCAoZmll bGQpID09IE5VTExfVFJFRQorKwkJICAgICAgIHx8ICFob3N0X2ludGVnZXJwIChERUNMX1NJWkVf VU5JVCAoZmllbGQpLCAwKSkKKysJCXJldHVybiBmYWxzZTsKKysJICAgICAgZmllbGRzaXplID0g dHJlZV9sb3dfY3N0IChERUNMX1NJWkVfVU5JVCAoZmllbGQpLCAwKTsKKysJICAgICAgcG9zID0g aW50X2J5dGVfcG9zaXRpb24gKGZpZWxkKTsKKysJICAgICAgZ2NjX2Fzc2VydCAocG9zICsgZmll bGRzaXplIDw9IHNpemUpOworKwkgICAgICBpZiAodmFsCisrCQkgICYmICFuYXRpdmVfZW5jb2Rl X2luaXRpYWxpemVyICh2YWwsIGFycmF5ICsgcG9zLCBmaWVsZHNpemUpKQorKwkJcmV0dXJuIGZh bHNlOworKwkgICAgfQorKwkgIHJldHVybiB0cnVlOworKwl9CisrICAgICAgcmV0dXJuIGZhbHNl OworKyAgICBkZWZhdWx0OgorKyAgICAgIHJldHVybiBuYXRpdmVfZW5jb2RlX2V4cHIgKGluaXQs IGFycmF5LCBzaXplKSA9PSBzaXplOworKyAgICB9CisrfQorKworIC8qIElmIHdlIGRvbid0IGhh dmUgYSBjb3B5IG9mIHRoaXMgdmFyaWFibGUgaW4gbWVtb3J5IGZvciBzb21lIHJlYXNvbiAoc3Vj aAorICAgIGFzIGEgQysrIG1lbWJlciBjb25zdGFudCB0aGF0IGRvZXNuJ3QgaGF2ZSBhbiBvdXQt b2YtbGluZSBkZWZpbml0aW9uKSwKKyAgICB3ZSBzaG91bGQgdGVsbCB0aGUgZGVidWdnZXIgYWJv dXQgdGhlIGNvbnN0YW50IHZhbHVlLiAgKi8KK0BAIC0xMTc4MSw2ICsxMTk0MCwxOCBAQCB0cmVl X2FkZF9jb25zdF92YWx1ZV9hdHRyaWJ1dGUgKGR3X2RpZV9yCisgICBydGwgPSBydGxfZm9yX2Rl Y2xfaW5pdCAoaW5pdCwgdHlwZSk7CisgICBpZiAocnRsKQorICAgICBhZGRfY29uc3RfdmFsdWVf YXR0cmlidXRlICh2YXJfZGllLCBydGwpOworKyAgLyogSWYgdGhlIGhvc3QgYW5kIHRhcmdldCBh cmUgc2FuZSwgdHJ5IGhhcmRlci4gICovCisrICBlbHNlIGlmIChDSEFSX0JJVCA9PSA4ICYmIEJJ VFNfUEVSX1VOSVQgPT0gOCkKKysgICAgeworKyAgICAgIEhPU1RfV0lERV9JTlQgc2l6ZSA9IGlu dF9zaXplX2luX2J5dGVzIChUUkVFX1RZUEUgKGluaXQpKTsKKysgICAgICBpZiAoc2l6ZSA+IDAg JiYgKGludCkgc2l6ZSA9PSBzaXplKQorKwl7CisrCSAgdW5zaWduZWQgY2hhciAqYXJyYXkgPSBH R0NfQ05FV1ZFQyAodW5zaWduZWQgY2hhciwgc2l6ZSk7CisrCisrCSAgaWYgKG5hdGl2ZV9lbmNv ZGVfaW5pdGlhbGl6ZXIgKGluaXQsIGFycmF5LCBzaXplKSkKKysJICAgIGFkZF9BVF92ZWMgKHZh cl9kaWUsIERXX0FUX2NvbnN0X3ZhbHVlLCBzaXplLCAxLCBhcnJheSk7CisrCX0KKysgICAgfQor IH0KKyAKKyAvKiBDb252ZXJ0IHRoZSBDRkkgaW5zdHJ1Y3Rpb25zIGZvciB0aGUgY3VycmVudCBm dW5jdGlvbiBpbnRvIGEKK0BAIC0xMzc0Myw2ICsxMzkxNCwyNCBAQCBnZW5fdmFyaWFibGVfZGll ICh0cmVlIGRlY2wsIGR3X2RpZV9yZWYgCisgICAgIHRyZWVfYWRkX2NvbnN0X3ZhbHVlX2F0dHJp YnV0ZSAodmFyX2RpZSwgZGVjbCk7CisgfQorIAorKy8qIEdlbmVyYXRlIGEgRElFIHRvIHJlcHJl c2VudCBhIG5hbWVkIGNvbnN0YW50LiAgKi8KKysKKytzdGF0aWMgdm9pZAorK2dlbl9jb25zdF9k aWUgKHRyZWUgZGVjbCwgZHdfZGllX3JlZiBjb250ZXh0X2RpZSkKKyt7CisrICBkd19kaWVfcmVm IGNvbnN0X2RpZTsKKysgIHRyZWUgdHlwZSA9IFRSRUVfVFlQRSAoZGVjbCk7CisrCisrICBjb25z dF9kaWUgPSBuZXdfZGllIChEV19UQUdfY29uc3RhbnQsIGNvbnRleHRfZGllLCBkZWNsKTsKKysg IGFkZF9uYW1lX2FuZF9zcmNfY29vcmRzX2F0dHJpYnV0ZXMgKGNvbnN0X2RpZSwgZGVjbCk7Cisr ICBhZGRfdHlwZV9hdHRyaWJ1dGUgKGNvbnN0X2RpZSwgdHlwZSwgMSwgMCwgY29udGV4dF9kaWUp OworKyAgaWYgKFRSRUVfUFVCTElDIChkZWNsKSkKKysgICAgYWRkX0FUX2ZsYWcgKGNvbnN0X2Rp ZSwgRFdfQVRfZXh0ZXJuYWwsIDEpOworKyAgaWYgKERFQ0xfQVJUSUZJQ0lBTCAoZGVjbCkpCisr ICAgIGFkZF9BVF9mbGFnIChjb25zdF9kaWUsIERXX0FUX2FydGlmaWNpYWwsIDEpOworKyAgdHJl ZV9hZGRfY29uc3RfdmFsdWVfYXR0cmlidXRlIChjb25zdF9kaWUsIGRlY2wpOworK30KKysKKyAv KiBHZW5lcmF0ZSBhIERJRSB0byByZXByZXNlbnQgYSBsYWJlbCBpZGVudGlmaWVyLiAgKi8KKyAK KyBzdGF0aWMgdm9pZAorQEAgLTE0ODgzLDggKzE1MDcyLDIwIEBAIGdlbl9kZWNsX2RpZSAodHJl ZSBkZWNsLCBkd19kaWVfcmVmIGNvbnQKKyAgICAgICBicmVhazsKKyAKKyAgICAgY2FzZSBDT05T VF9ERUNMOgorLSAgICAgIC8qIFRoZSBpbmRpdmlkdWFsIGVudW1lcmF0b3JzIG9mIGFuIGVudW0g dHlwZSBnZXQgb3V0cHV0IHdoZW4gd2Ugb3V0cHV0CistCSB0aGUgRHdhcmYgcmVwcmVzZW50YXRp b24gb2YgdGhlIHJlbGV2YW50IGVudW0gdHlwZSBpdHNlbGYuICAqLworKyAgICAgIGlmICghaXNf Zm9ydHJhbiAoKSkKKysJeworKwkgIC8qIFRoZSBpbmRpdmlkdWFsIGVudW1lcmF0b3JzIG9mIGFu IGVudW0gdHlwZSBnZXQgb3V0cHV0IHdoZW4gd2Ugb3V0cHV0CisrCSAgICAgdGhlIER3YXJmIHJl cHJlc2VudGF0aW9uIG9mIHRoZSByZWxldmFudCBlbnVtIHR5cGUgaXRzZWxmLiAgKi8KKysJICBi cmVhazsKKysJfQorKworKyAgICAgIC8qIEVtaXQgaXRzIHR5cGUuICAqLworKyAgICAgIGdlbl90 eXBlX2RpZSAoVFJFRV9UWVBFIChkZWNsKSwgY29udGV4dF9kaWUpOworKworKyAgICAgIC8qIEFu ZCBpdHMgY29udGFpbmluZyBuYW1lc3BhY2UuICAqLworKyAgICAgIGNvbnRleHRfZGllID0gZGVj bGFyZV9pbl9uYW1lc3BhY2UgKGRlY2wsIGNvbnRleHRfZGllKTsKKysKKysgICAgICBnZW5fY29u c3RfZGllIChkZWNsLCBjb250ZXh0X2RpZSk7CisgICAgICAgYnJlYWs7CisgCisgICAgIGNhc2Ug RlVOQ1RJT05fREVDTDoKK0BAIC0xNTIyOSw2ICsxNTQzMCwxNSBAQCBkd2FyZjJvdXRfZGVjbCAo dHJlZSBkZWNsKQorIAlyZXR1cm47CisgICAgICAgYnJlYWs7CisgCisrICAgIGNhc2UgQ09OU1Rf REVDTDoKKysgICAgICBpZiAoZGVidWdfaW5mb19sZXZlbCA8PSBESU5GT19MRVZFTF9URVJTRSkK KysJcmV0dXJuOworKyAgICAgIGlmICghaXNfZm9ydHJhbiAoKSkKKysJcmV0dXJuOworKyAgICAg IGlmIChUUkVFX1NUQVRJQyAoZGVjbCkgJiYgZGVjbF9mdW5jdGlvbl9jb250ZXh0IChkZWNsKSkK KysJY29udGV4dF9kaWUgPSBsb29rdXBfZGVjbF9kaWUgKERFQ0xfQ09OVEVYVCAoZGVjbCkpOwor KyAgICAgIGJyZWFrOworKworICAgICBjYXNlIE5BTUVTUEFDRV9ERUNMOgorICAgICAgIGlmIChk ZWJ1Z19pbmZvX2xldmVsIDw9IERJTkZPX0xFVkVMX1RFUlNFKQorIAlyZXR1cm47CgpkaWZmIC0t Z2l0IGEvZ2NjNDMtZm9ydHJhbi1kZWJ1ZzExLnBhdGNoIGIvZ2NjNDMtZm9ydHJhbi1kZWJ1ZzEx LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjczZWM1N2IKLS0tIC9k ZXYvbnVsbAorKysgYi9nY2M0My1mb3J0cmFuLWRlYnVnMTEucGF0Y2gKQEAgLTAsMCArMSw3MyBA QAorMjAwOC0wOC0yOCAgSmFrdWIgSmVsaW5layAgPGpha3ViQHJlZGhhdC5jb20+CisKKwkqIGR3 YXJmMm91dC5jIChkZXNjcl9pbmZvX2xvYyk6IEhhbmRsZSBWQVJfREVDTC4KKworCSogdHJhbnMu aCAoc3RydWN0IGxhbmdfdHlwZSk6IEFkZCBzcGFuLgorCShHRkNfVFlQRV9BUlJBWV9TUEFOKTog RGVmaW5lLgorCSogdHJhbnMtZGVjbC5jIChnZmNfZ2V0X3N5bWJvbF9kZWNsKTogRm9yIHN1YnJl ZiBhcnJheSBwb2ludGVycywKKwljb3B5IFRSRUVfU1RBVElDIGZyb20gZGVjbCB0byBzcGFuIGlu c3RlYWQgb2Ygc2V0dGluZyBpdAorCXVuY29uZGl0aW9uYWxseSwgc2V0IERFQ0xfQVJUSUZJQ0lB TCwgZml4IHR5cGUgb2YgaW5pdGlhbGl6ZXIKKwlhbmQgc2V0IEdGQ19UWVBFX0FSUkFZX1NQQU4g b24gZGVjbCdzIHR5cGUuCisJKiB0cmFucy10eXBlcy5jIChnZmNfZ2V0X2FycmF5X2Rlc2NyX2lu Zm8pOiBJZgorCUdGQ19UWVBFX0FSUkFZX1NQQU4gaXMgbm9uLU5VTEwsIHVzZSBpdCBhcyBlbGVt ZW50IHNpemUuCisKKy0tLSBnY2MvZm9ydHJhbi90cmFucy5oLmpqCTIwMDgtMDgtMjYgMjE6NDM6 MDQuMDAwMDAwMDAwICswMjAwCisrKysgZ2NjL2ZvcnRyYW4vdHJhbnMuaAkyMDA4LTA4LTI4IDA5 OjU4OjAxLjAwMDAwMDAwMCArMDIwMAorQEAgLTYwNSw2ICs2MDUsNyBAQCBzdHJ1Y3QgbGFuZ190 eXBlCQlHVFkoKCkpCisgICB0cmVlIG9mZnNldDsKKyAgIHRyZWUgZHR5cGU7CisgICB0cmVlIGRh dGFwdHJfdHlwZTsKKysgIHRyZWUgc3BhbjsKKyB9OworIAorIHN0cnVjdCBsYW5nX2RlY2wJCUdU WSgoKSkKK0BAIC02NTcsNiArNjU4LDcgQEAgc3RydWN0IGxhbmdfZGVjbAkJR1RZKCgpKQorICNk ZWZpbmUgR0ZDX1RZUEVfQVJSQVlfRFRZUEUobm9kZSkgKFRZUEVfTEFOR19TUEVDSUZJQyhub2Rl KS0+ZHR5cGUpCisgI2RlZmluZSBHRkNfVFlQRV9BUlJBWV9EQVRBUFRSX1RZUEUobm9kZSkgXAor ICAgKFRZUEVfTEFOR19TUEVDSUZJQyhub2RlKS0+ZGF0YXB0cl90eXBlKQorKyNkZWZpbmUgR0ZD X1RZUEVfQVJSQVlfU1BBTihub2RlKSAoVFlQRV9MQU5HX1NQRUNJRklDKG5vZGUpLT5zcGFuKQor IAorIC8qIEJ1aWxkIGFuIGV4cHJlc3Npb24gd2l0aCB2b2lkIHR5cGUuICAqLworICNkZWZpbmUg YnVpbGQxX3YoY29kZSwgYXJnKSBidWlsZDEoY29kZSwgdm9pZF90eXBlX25vZGUsIGFyZykKKy0t LSBnY2MvZm9ydHJhbi90cmFucy1kZWNsLmMuamoJMjAwOC0wOC0yNiAyMjo1NDoyNC4wMDAwMDAw MDAgKzAyMDAKKysrKyBnY2MvZm9ydHJhbi90cmFucy1kZWNsLmMJMjAwOC0wOC0yOCAxMDo1NDoy OC4wMDAwMDAwMDAgKzAyMDAKK0BAIC0xMTA1LDEwICsxMTA1LDEyIEBAIGdmY19nZXRfc3ltYm9s X2RlY2wgKGdmY19zeW1ib2wgKiBzeW0pCisgICAgICAgc3BhbiA9IGJ1aWxkX2RlY2wgKFZBUl9E RUNMLCBjcmVhdGVfdG1wX3Zhcl9uYW1lICgic3BhbiIpLAorIAkJCSBnZmNfYXJyYXlfaW5kZXhf dHlwZSk7CisgICAgICAgZ2ZjX2ZpbmlzaF92YXJfZGVjbCAoc3Bhbiwgc3ltKTsKKy0gICAgICBU UkVFX1NUQVRJQyAoc3BhbikgPSAxOworLSAgICAgIERFQ0xfSU5JVElBTCAoc3BhbikgPSBidWls ZF9pbnRfY3N0IChOVUxMX1RSRUUsIDApOworKyAgICAgIFRSRUVfU1RBVElDIChzcGFuKSA9IFRS RUVfU1RBVElDIChkZWNsKTsKKysgICAgICBERUNMX0FSVElGSUNJQUwgKHNwYW4pID0gMTsKKysg ICAgICBERUNMX0lOSVRJQUwgKHNwYW4pID0gYnVpbGRfaW50X2NzdCAoZ2ZjX2FycmF5X2luZGV4 X3R5cGUsIDApOworIAorICAgICAgIEdGQ19ERUNMX1NQQU4gKGRlY2wpID0gc3BhbjsKKysgICAg ICBHRkNfVFlQRV9BUlJBWV9TUEFOIChUUkVFX1RZUEUgKGRlY2wpKSA9IHNwYW47CisgICAgIH0K KyAKKyAgIHN5bS0+YmFja2VuZF9kZWNsID0gZGVjbDsKKy0tLSBnY2MvZm9ydHJhbi90cmFucy10 eXBlcy5jLmpqCTIwMDgtMDgtMjYgMjE6NDM6MDQuMDAwMDAwMDAwICswMjAwCisrKysgZ2NjL2Zv cnRyYW4vdHJhbnMtdHlwZXMuYwkyMDA4LTA4LTI4IDEwOjIzOjM5LjAwMDAwMDAwMCArMDIwMAor QEAgLTIyODksNyArMjI4OSwxMCBAQCBnZmNfZ2V0X2FycmF5X2Rlc2NyX2luZm8gKGNvbnN0X3Ry ZWUgdHlwCisgICBlbHNlCisgICAgIGluZm8tPmJhc2VfZGVjbCA9IGJhc2VfZGVjbCA9IGJ1aWxk X2RlY2wgKFZBUl9ERUNMLCBOVUxMX1RSRUUsIHB0eXBlKTsKKyAKKy0gIGVsZW1fc2l6ZSA9IGZv bGRfY29udmVydCAoZ2ZjX2FycmF5X2luZGV4X3R5cGUsIFRZUEVfU0laRV9VTklUIChldHlwZSkp OworKyAgaWYgKEdGQ19UWVBFX0FSUkFZX1NQQU4gKHR5cGUpKQorKyAgICBlbGVtX3NpemUgPSBH RkNfVFlQRV9BUlJBWV9TUEFOICh0eXBlKTsKKysgIGVsc2UKKysgICAgZWxlbV9zaXplID0gZm9s ZF9jb252ZXJ0IChnZmNfYXJyYXlfaW5kZXhfdHlwZSwgVFlQRV9TSVpFX1VOSVQgKGV0eXBlKSk7 CisgICBmaWVsZCA9IFRZUEVfRklFTERTIChUWVBFX01BSU5fVkFSSUFOVCAodHlwZSkpOworICAg ZGF0YV9vZmYgPSBieXRlX3Bvc2l0aW9uIChmaWVsZCk7CisgICBmaWVsZCA9IFRSRUVfQ0hBSU4g KGZpZWxkKTsKKy0tLSBnY2MvZHdhcmYyb3V0LmMuamoJMjAwOC0wOC0yNiAyMTo0Mzo0Mi4wMDAw MDAwMDAgKzAyMDAKKysrKyBnY2MvZHdhcmYyb3V0LmMJMjAwOC0wOC0yOCAxMDozNTozOC4wMDAw MDAwMDAgKzAyMDAKK0BAIC0xMjIzMiw2ICsxMjIzMiw4IEBAIGRlc2NyX2luZm9fbG9jICh0cmVl IHZhbCwgdHJlZSBiYXNlX2RlY2wKKyAgICAgY2FzZSBOT1BfRVhQUjoKKyAgICAgY2FzZSBDT05W RVJUX0VYUFI6CisgICAgICAgcmV0dXJuIGRlc2NyX2luZm9fbG9jIChUUkVFX09QRVJBTkQgKHZh bCwgMCksIGJhc2VfZGVjbCk7CisrICAgIGNhc2UgVkFSX0RFQ0w6CisrICAgICAgcmV0dXJuIGxv Y19kZXNjcmlwdG9yX2Zyb21fdHJlZV8xICh2YWwsIDApOworICAgICBjYXNlIElOVEVHRVJfQ1NU OgorICAgICAgIGlmIChob3N0X2ludGVnZXJwICh2YWwsIDApKQorIAlyZXR1cm4gaW50X2xvY19k ZXNjcmlwdG9yICh0cmVlX2xvd19jc3QgKHZhbCwgMCkpOwoKZGlmZiAtLWdpdCBhL2djYzQzLXBy MzcyNDgucGF0Y2ggYi9nY2M0My1wcjM3MjQ4LnBhdGNoCmluZGV4IDliMmNmMzkuLjMxMGRhMzQg MTAwNjQ0Ci0tLSBhL2djYzQzLXByMzcyNDgucGF0Y2gKKysrIGIvZ2NjNDMtcHIzNzI0OC5wYXRj aApAQCAtMjY2LDcgKzI2Niw3IEBACiAgLyogU3Vicm91dGluZSBmb3IgZm9sZDogZGV0ZXJtaW5l IGlmIFZBTCBpcyB0aGUgSU5URUdFUl9DT05TVCB0aGF0CiAgICAgcmVwcmVzZW50cyB0aGUgc2ln biBiaXQgb2YgRVhQJ3MgdHlwZS4gIElmIEVYUCByZXByZXNlbnRzIGEgc2lnbgogICAgIG9yIHpl cm8gZXh0ZW5zaW9uLCBhbHNvIHRlc3QgVkFMIGFnYWluc3QgdGhlIHVuZXh0ZW5kZWQgdHlwZS4K LUBAIC01MjY0LDE1ICs1NDg0LDE1IEBAIGZvbGRfdHJ1dGhvcCAoZW51bSB0cmVlX2NvZGUgY29k ZSwgdHJlZSAKK0BAIC01MjY0LDE2ICs1NDg0LDE2IEBAIGZvbGRfdHJ1dGhvcCAoZW51bSB0cmVl X2NvZGUgY29kZSwgdHJlZSAKICAgIHRyZWUgbGxfaW5uZXIsIGxyX2lubmVyLCBybF9pbm5lciwg cnJfaW5uZXI7CiAgICBIT1NUX1dJREVfSU5UIGxsX2JpdHNpemUsIGxsX2JpdHBvcywgbHJfYml0 c2l6ZSwgbHJfYml0cG9zOwogICAgSE9TVF9XSURFX0lOVCBybF9iaXRzaXplLCBybF9iaXRwb3Ms IHJyX2JpdHNpemUsIHJyX2JpdHBvczsKQEAgLTI4Nyw2ICsyODcsNyBAQAogKyAgSE9TVF9XSURF X0lOVCBmaXJzdF9iaXQsIGVuZF9iaXQ7CiAgICBpbnQgdm9sYXRpbGVwOwogICAgdHJlZSBvcmln X2xocyA9IGxocywgb3JpZ19yaHMgPSByaHM7CisgICBlbnVtIHRyZWVfY29kZSBvcmlnX2NvZGUg PSBjb2RlOwogQEAgLTU1MTAsNiArNTczMCwxMTggQEAgZm9sZF90cnV0aG9wIChlbnVtIHRyZWVf Y29kZSBjb2RlLCB0cmVlIAogIAl9CiAgICAgIH0KQEAgLTQyNyw3ICs0MjgsNyBAQAogIH0KICAM CiAgLyogT3B0aW1pemUgVCwgd2hpY2ggaXMgYSBjb21wYXJpc29uIG9mIGEgTUlOX0VYUFIgb3Ig TUFYX0VYUFIgd2l0aCBhCi1AQCAtMTE5MTQsNiArMTIyNTgsMTggQEAgZm9sZF9iaW5hcnkgKGVu dW0gdHJlZV9jb2RlIGNvZGUsIHRyZWUgdAorQEAgLTExOTEyLDYgKzEyMjU2LDE4IEBAIGZvbGRf YmluYXJ5IChlbnVtIHRyZWVfY29kZSBjb2RlLCB0cmVlIHQKICAJICAgIHJldHVybiBvbWl0X29u ZV9vcGVyYW5kICh0eXBlLCByc2x0LCBhcmcwKTsKICAJfQogIAoKZGlmZiAtLWdpdCBhL2djYzQz LnNwZWMgYi9nY2M0My5zcGVjCmluZGV4IDhjOTlhODUuLjhhZGMyZWQgMTAwNjQ0Ci0tLSBhL2dj YzQzLnNwZWMKKysrIGIvZ2NjNDMuc3BlYwpAQCAtMSw2ICsxLDYgQEAKLSVkZWZpbmUgREFURSAy MDA4MDgyNQotJWRlZmluZSBnY2NfdmVyc2lvbiA0LjMuMQotJWRlZmluZSBnY2NfcmVsZWFzZSA4 CislZGVmaW5lIERBVEUgMjAwODA4MjkKKyVkZWZpbmUgZ2NjX3ZlcnNpb24gNC4zLjIKKyVkZWZp bmUgZ2NjX3JlbGVhc2UgMQogJWRlZmluZSBfdW5wYWNrYWdlZF9maWxlc190ZXJtaW5hdGVfYnVp bGQgMAogJWRlZmluZSBtdWx0aWxpYl82NF9hcmNocyBzcGFyYzY0IHBwYzY0IHMzOTB4IHg4Nl82 NAogJWRlZmluZSBpbmNsdWRlX2dhcHBsZXR2aWV3ZXIgMQpAQCAtMTUyLDYgKzE1Miw5IEBAIFBh dGNoMjI6IGdjYzQzLWZvcnRyYW4tZGVidWc2LnBhdGNoCiBQYXRjaDIzOiBnY2M0My1mb3J0cmFu LWRlYnVnNy5wYXRjaAogUGF0Y2gyNDogZ2NjNDMtZm9ydHJhbi1kZWJ1ZzgucGF0Y2gKIFBhdGNo MjU6IGdjYzQzLWZvcnRyYW4tZGVidWc5LnBhdGNoCitQYXRjaDI2OiBnY2M0My1mb3J0cmFuLWRl YnVnMTAucGF0Y2gKK1BhdGNoMjc6IGdjYzQzLWZvcnRyYW4tZGVidWcxMS5wYXRjaAorUGF0Y2gy ODogZ2NjNDMtcHIzNzI0OC5wYXRjaAogCiAjIE9uIEFSTSBFQUJJIHN5c3RlbXMsIHdlIGRvIHdh bnQgLWdudWVhYmkgdG8gYmUgcGFydCBvZiB0aGUKICMgdGFyZ2V0IHRyaXBsZS4KQEAgLTQ2MSw2 ICs0NjQsOSBAQCB3aGljaCBhcmUgcmVxdWlyZWQgdG8gcnVuIHByb2dyYW1zIGNvbXBpbGVkIHdp dGggdGhlIEdOQVQuCiAlcGF0Y2gyMyAtcDAgLWIgLmZvcnRyYW4tZGVidWc3fgogJXBhdGNoMjQg LXAwIC1iIC5mb3J0cmFuLWRlYnVnOH4KICVwYXRjaDI1IC1wMCAtYiAuZm9ydHJhbi1kZWJ1Zzl+ CislcGF0Y2gyNiAtcDAgLWIgLmZvcnRyYW4tZGVidWcxMH4KKyVwYXRjaDI3IC1wMCAtYiAuZm9y dHJhbi1kZWJ1ZzExfgorJXBhdGNoMjggLXAwIC1iIC5wcjM3MjQ4fgogCiB0YXIgeHpmICV7U09V UkNFNH0KIApAQCAtNDY4LDcgKzQ3NCw3IEBAIHRhciB4emYgJXtTT1VSQ0U0fQogdGFyIHhqZiAl e1NPVVJDRTEwfQogJWVuZGlmCiAKLXNlZCAtaSAtZSAncy80XC4zXC4yLzQuMy4xLycgZ2NjL0JB U0UtVkVSCitzZWQgLWkgLWUgJ3MvNFwuM1wuMy80LjMuMi8nIGdjYy9CQVNFLVZFUgogZWNobyAn UmVkIEhhdCAle3ZlcnNpb259LSV7Z2NjX3JlbGVhc2V9JyA+IGdjYy9ERVYtUEhBU0UKIAogY3Ag LWEgbGlic3RkYysrLXYzL2NvbmZpZy9jcHUvaXs0LDN9ODYvYXRvbWljaXR5LmgKQEAgLTEyNzIs NiArMTI3OCwxMCBAQCBmaQogJXtfcHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9y bX0vJXtnY2NfdmVyc2lvbn0vaW5jbHVkZS9wcGMtYXNtLmgKICV7X3ByZWZpeH0vbGliL2djYy8l e2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259L2luY2x1ZGUvYWx0aXZlYy5oCiAl e19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS9p bmNsdWRlL3NwZS5oCisle19wcmVmaXh9L2xpYi9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8l e2djY192ZXJzaW9ufS9pbmNsdWRlL3BhaXJlZC5oCisle19wcmVmaXh9L2xpYi9nY2MvJXtnY2Nf dGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS9pbmNsdWRlL3BwdV9pbnRyaW5zaWNzLmgK KyV7X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNpb259 L2luY2x1ZGUvc2kydm14LmgKKyV7X3ByZWZpeH0vbGliL2djYy8le2djY190YXJnZXRfcGxhdGZv cm19LyV7Z2NjX3ZlcnNpb259L2luY2x1ZGUvc3B1MnZteC5oCiAlZW5kaWYKICV7X3ByZWZpeH0v bGliZXhlYy9nY2MvJXtnY2NfdGFyZ2V0X3BsYXRmb3JtfS8le2djY192ZXJzaW9ufS9jb2xsZWN0 MgogJXtfcHJlZml4fS9saWIvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9ybX0vJXtnY2NfdmVyc2lv bn0vY3J0Ki5vCkBAIC0xNjgyLDYgKzE2OTIsMTcgQEAgZmkKICVkb2MgcnBtLmRvYy9jaGFuZ2Vs b2dzL2xpYm11ZGZsYXAvQ2hhbmdlTG9nKgogCiAlY2hhbmdlbG9nCisqIEZyaSBBdWcgMjkgMjAw OCBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPiA0LjMuMi0xCistIHVwZGF0ZSBmcm9t IGdjYy00XzMtYnJhbmNoCisgIC0gNC4zLjIgcmVsZWFzZQorICAtIFBScyBjKysvMzY3NDEsIG1p ZGRsZS1lbmQvMzY1NDgsIG1pZGRsZS1lbmQvMzY4MTcsIG1pZGRsZS1lbmQvMzcxMjUsCisJdGFy Z2V0LzM3MTg0LCB0YXJnZXQvMzcxOTEsIHRhcmdldC8zNzE5NworLSBiYWNrcG9ydCBmdXJ0aGVy IEZvcnRyYW4gZGVidWdpbmZvIGltcHJvdmVtZW50cyAoIzQ2MDM3OCwgIzQ1OTM3NSkKKy0gcmV2 ZXJ0IHJlbW92YWwgb2YgYWRqYWNlbnQgYml0ZmllbGQgY29tcGFyaXNvbgorICBvcHRpbWl6YXRp b24gKFBSIG1pZGRsZS1lbmQvMzcyNDgpCistIG9uIHBwYy9wcGM2NCBhZGQgcGFpcmVkLmgsIHBw dV9pbnN0cmluc2ljcy5oLCBzaTJ2bXguaCBhbmQgc3B1MnZteC5oCisgIGhlYWRlcnMgKCM0NjA0 OTcpCisKICogTW9uIEF1ZyAyNSAyMDA4IEpha3ViIEplbGluZWsgPGpha3ViQHJlZGhhdC5jb20+ IDQuMy4xLTgKIC0gdXBkYXRlIGZyb20gZ2NjLTRfMy1icmFuY2gKICAgLSBQUnMgZGVidWcvMzcx NTYsIGxpYmdjai84OTk1LCBsaWJzdGRjKysvMzcxMDAsIHRhcmdldC8zNzEwMQoKZGlmZiAtLWdp dCBhL3NvdXJjZXMgYi9zb3VyY2VzCmluZGV4IDdmZjFiM2YuLmJjYzhhMzUgMTAwNjQ0Ci0tLSBh L3NvdXJjZXMKKysrIGIvc291cmNlcwpAQCAtMSwyICsxLDIgQEAKLTEzNTUwZWVjMDBkMjU2M2M0 MmQxODc5ZTFmOGYzNDA3ICBnY2MtNC4zLjEtMjAwODA4MjUudGFyLmJ6MgorNjlmNzBkOTIxNDI0 NjYzNjExNDYzMjZmODQwYTYxODUgIGdjYy00LjMuMi0yMDA4MDgyOS50YXIuYnoyCiA5MmE3MGY5 ZTU2MjIzYjY1M2JjZTBmNThmOTBjZjk1MCAgZmFzdGphci0wLjk1LnRhci5nego=