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: 7.2.1-5 Date: Mon, 29 Jun 2026 12:27:41 GMT Message-ID: <178273606101.1.17552647609682391695.rpms-gcc-f36e50eab53f@fedoraproject.org> List-ID: X-Git-Repo: rpms/gcc X-Git-Branch: rhel-f41-base X-Git-Rev: f36e50eab53f5a6b1f8a26c449926f6a43ce76db QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2NjCkJyYW5jaCA6 IHJoZWwtZjQxLWJhc2UKQ29tbWl0IDogZjM2ZTUwZWFiNTNmNWE2YjFmOGEyNmM0NDk5MjZmNmE0 M2NlNzZkYgpBdXRob3IgOiBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPgpEYXRlICAg OiAyMDE4LTAxLTAxVDE0OjQ1OjA0KzAxOjAwClN0YXRzICA6ICs4OS8tNTUxIGluIDcgZmlsZShz KQpVUkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2djYy9jL2YzNmU1 MGVhYjUzZjVhNmIxZjhhMjZjNDQ5OTI2ZjZhNDNjZTc2ZGI/YnJhbmNoPXJoZWwtZjQxLWJhc2UK CkxvZzoKNy4yLjEtNQoKLS0tCmRpZmYgLS1naXQgYS9nY2Muc3BlYyBiL2djYy5zcGVjCmluZGV4 IGUxMWVlMTQuLjdmNWIwNTUgMTAwNjQ0Ci0tLSBhL2djYy5zcGVjCisrKyBiL2djYy5zcGVjCkBA IC0yMzUsMTIgKzIzNSw4IEBAIFBhdGNoODogZ2NjNy1uby1hZGQtbmVlZGVkLnBhdGNoCiBQYXRj aDk6IGdjYzctYWFyY2g2NC1hc3luYy11bnctdGFibGVzLnBhdGNoCiBQYXRjaDEwOiBnY2M3LWZv ZmZsb2FkLWRlZmF1bHQucGF0Y2gKIFBhdGNoMTE6IGdjYzctV25vLWZvcm1hdC1zZWN1cml0eS5w YXRjaAotUGF0Y2gxMjogZ2NjNy1wcjgxMzE0LnBhdGNoCi1QYXRjaDEzOiBnY2M3LXByODEzMjUu cGF0Y2gKLVBhdGNoMTQ6IGdjYzctcHI4MjExMi0xLnBhdGNoCi1QYXRjaDE1OiBnY2M3LXByODIx MTItMi5wYXRjaAotUGF0Y2gxNjogZ2NjNy1wcjgxOTI5LnBhdGNoCi1QYXRjaDE3OiBnY2M3LWFh cmNoNjQtc2FuaXRpemVyLWZpeC5wYXRjaAorUGF0Y2gxMjogZ2NjNy1wcjgzNTU2LnBhdGNoCitQ YXRjaDEzOiBnY2M3LWFhcmNoNjQtc2FuaXRpemVyLWZpeC5wYXRjaAogCiBQYXRjaDEwMDA6IG52 cHR4LXRvb2xzLW5vLXB0eGFzLnBhdGNoCiBQYXRjaDEwMDE6IG52cHR4LXRvb2xzLWJ1aWxkLnBh dGNoCkBAIC04NDcsMTMgKzg0Myw5IEBAIHBhY2thZ2Ugb3Igd2hlbiBkZWJ1Z2dpbmcgdGhpcyBw YWNrYWdlLgogJXBhdGNoOSAtcDAgLWIgLmFhcmNoNjQtYXN5bmMtdW53LXRhYmxlc34KICVwYXRj aDEwIC1wMCAtYiAuZm9mZmxvYWQtZGVmYXVsdH4KICVwYXRjaDExIC1wMCAtYiAuV25vLWZvcm1h dC1zZWN1cml0eX4KLSVwYXRjaDEyIC1wMCAtYiAucHI4MTMxNH4KLSVwYXRjaDEzIC1wMCAtYiAu cHI4MTMyNX4KLSVwYXRjaDE0IC1wMCAtYiAucHI4MjExMi0xfgotJXBhdGNoMTUgLXAwIC1iIC5w cjgyMTEyLTJ+Ci0lcGF0Y2gxNiAtcDAgLWIgLnByODE5Mjl+CislcGF0Y2gxMiAtcDAgLWIgLnBy ODM1NTZ+CiAlaWYgMCV7P2ZlZG9yYX0gPiAyNwotJXBhdGNoMTcgLXAwIC1iIC5hYXJjaDY0LXNh bml0aXplci1maXh+CislcGF0Y2gxMyAtcDAgLWIgLmFhcmNoNjQtc2FuaXRpemVyLWZpeH4KICVl bmRpZgogCiBjZCBudnB0eC10b29scy0le252cHR4X3Rvb2xzX2dpdHJldn0KQEAgLTMzNDQsNiAr MzMzNiw3IEBAIGZpCiAgIC0gZml4IHNjY3ZuIElDRSAoIzE1MDY4MDksIFBSIHRyZWUtb3B0aW1p emF0aW9uLzgyMjY0KQogICAtIGZpeCBJQ0UgaW4gZHdhcmYyb3V0IGZvcmNlX3R5cGVfZGllICgj MTUxNjU3NiwgIzE1MTY1NzcsIFBSIGRlYnVnLzgyMTU1KQogICAtIGZpeCBwb3dlcjYgSUNFIGlu IHN0b3JlX2RhdGFfYnlwYXNzX3AgKCMxNTIyNjc1LCBQUiB0YXJnZXQvODAxMDEpCistIGZpeCBy ZXBsYWNlX3BsYWNlaG9sZGVycyAoUFIgYysrLzgzNTU2KQogCiAqIFdlZCBOb3YgMjkgMjAxNyBK ZWZmIExhdyAgPGxhd0ByZWRoYXQuY29tPiA3LjIuMS00CiAtIEZpeCBwcm9ibGVtIHdpdGggbGFy Z2Ugb3V0Z29pbmcgYXJncyBhbmQgLWZzdGFjay1jbGFzaC1wcm90ZWN0aW9uCgpkaWZmIC0tZ2l0 IGEvZ2NjNy1wcjgxMzE0LnBhdGNoIGIvZ2NjNy1wcjgxMzE0LnBhdGNoCmRlbGV0ZWQgZmlsZSBt b2RlIDEwMDY0NAppbmRleCA1M2MxZTQwLi4wMDAwMDAwCi0tLSBhL2djYzctcHI4MTMxNC5wYXRj aAorKysgL2Rldi9udWxsCkBAIC0xLDcyICswLDAgQEAKLTIwMTctMDktMTUgIEpha3ViIEplbGlu ZWsgIDxqYWt1YkByZWRoYXQuY29tPgotCi0JQmFja3BvcnRlZCBmcm9tIG1haW5saW5lCi0JMjAx Ny0wOS0xNCAgSmFrdWIgSmVsaW5layAgPGpha3ViQHJlZGhhdC5jb20+Ci0KLQlQUiBjKysvODEz MTQKLQkqIGNwLWdpbXBsaWZ5LmMgKG9tcF92YXJfdG9fdHJhY2spOiBMb29rIHRocm91Z2ggcmVm ZXJlbmNlcy4KLQkob21wX2N4eF9ub3RpY2VfdmFyaWFibGUpOiBMaWtld2lzZS4KLQotCSogdGVz dHN1aXRlL2xpYmdvbXAuYysrL3ByODEzMTQuQzogTmV3IHRlc3QuCi0KLS0tLSBnY2MvY3AvY3At Z2ltcGxpZnkuYwkocmV2aXNpb24gMjUyNzY5KQotKysrIGdjYy9jcC9jcC1naW1wbGlmeS5jCShy ZXZpc2lvbiAyNTI3NzApCi1AQCAtODk1LDYgKzg5NSw4IEBAIG9tcF92YXJfdG9fdHJhY2sgKHRy ZWUgZGVjbCkKLSAgIHRyZWUgdHlwZSA9IFRSRUVfVFlQRSAoZGVjbCk7Ci0gICBpZiAoaXNfaW52 aXNpcmVmX3Bhcm0gKGRlY2wpKQotICAgICB0eXBlID0gVFJFRV9UWVBFICh0eXBlKTsKLSsgIGVs c2UgaWYgKFRSRUVfQ09ERSAodHlwZSkgPT0gUkVGRVJFTkNFX1RZUEUpCi0rICAgIHR5cGUgPSBU UkVFX1RZUEUgKHR5cGUpOwotICAgd2hpbGUgKFRSRUVfQ09ERSAodHlwZSkgPT0gQVJSQVlfVFlQ RSkKLSAgICAgdHlwZSA9IFRSRUVfVFlQRSAodHlwZSk7Ci0gICBpZiAodHlwZSA9PSBlcnJvcl9t YXJrX25vZGUgfHwgIUNMQVNTX1RZUEVfUCAodHlwZSkpCi1AQCAtOTQ3LDYgKzk0OSw4IEBAIG9t cF9jeHhfbm90aWNlX3ZhcmlhYmxlIChzdHJ1Y3QgY3BfZ2VuZXIKLSAJICAgICAgdHJlZSB0eXBl ID0gVFJFRV9UWVBFIChkZWNsKTsKLSAJICAgICAgaWYgKGlzX2ludmlzaXJlZl9wYXJtIChkZWNs KSkKLSAJCXR5cGUgPSBUUkVFX1RZUEUgKHR5cGUpOwotKwkgICAgICBlbHNlIGlmIChUUkVFX0NP REUgKHR5cGUpID09IFJFRkVSRU5DRV9UWVBFKQotKwkJdHlwZSA9IFRSRUVfVFlQRSAodHlwZSk7 Ci0gCSAgICAgIHdoaWxlIChUUkVFX0NPREUgKHR5cGUpID09IEFSUkFZX1RZUEUpCi0gCQl0eXBl ID0gVFJFRV9UWVBFICh0eXBlKTsKLSAJICAgICAgZ2V0X2NvcHlfY3RvciAodHlwZSwgdGZfbm9u ZSk7Ci0tLS0gbGliZ29tcC90ZXN0c3VpdGUvbGliZ29tcC5jKysvcHI4MTMxNC5DCShub25leGlz dGVudCkKLSsrKyBsaWJnb21wL3Rlc3RzdWl0ZS9saWJnb21wLmMrKy9wcjgxMzE0LkMJKHJldmlz aW9uIDI1Mjc3MCkKLUBAIC0wLDAgKzEsMzggQEAKLSsvLyBQUiBjKysvODEzMTQKLSsvLyB7IGRn LWRvIGxpbmsgfQotKwotK3RlbXBsYXRlIDxpbnQgTj4KLStzdHJ1Y3QgUyB7Ci0rICBTICgpIHsg cyA9IDA7IH0KLSsgIFMgKGNvbnN0IFMgJngpIHsgcyA9IHguczsgfQotKyAgflMgKCkge30KLSsg IGludCBzOwotK307Ci0rCi0rdm9pZAotK2ZvbyAoUzwyPiAmeCkKLSt7Ci0rICAjcHJhZ21hIG9t cCB0YXNrbG9vcAotKyAgZm9yIChpbnQgaSA9IDA7IGkgPCAxMDA7ICsraSkKLSsgICAgeC5zKys7 Ci0rfQotKwotK3ZvaWQKLStiYXIgKFM8Mz4gJngpCi0rewotKyAgI3ByYWdtYSBvbXAgdGFzawot KyAgeC5zKys7Ci0rfQotKwotK2ludAotK21haW4gKCkKLSt7Ci0rICBTPDI+IHM7Ci0rICBTPDM+ IHQ7Ci0rICAjcHJhZ21hIG9tcCBwYXJhbGxlbAotKyAgI3ByYWdtYSBvbXAgbWFzdGVyCi0rICB7 Ci0rICAgIGZvbyAocyk7Ci0rICAgIGJhciAodCk7Ci0rICB9Ci0rfQoKZGlmZiAtLWdpdCBhL2dj YzctcHI4MTMyNS5wYXRjaCBiL2djYzctcHI4MTMyNS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggYWI4OTM4OC4uMDAwMDAwMAotLS0gYS9nY2M3LXByODEzMjUucGF0Y2gKKysr IC9kZXYvbnVsbApAQCAtMSwxOTkgKzAsMCBAQAotMjAxNy0wOS0xNSAgSmFrdWIgSmVsaW5layAg PGpha3ViQHJlZGhhdC5jb20+Ci0KLQlCYWNrcG9ydGVkIGZyb20gbWFpbmxpbmUKLQkyMDE3LTA5 LTE0ICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4KLSAKLQlQUiB0YXJnZXQvODEz MjUKLQkqIGNmZ2J1aWxkLmMgKGZpbmRfYmJfYm91bmRhcmllcyk6IElnbm9yZSBkZWJ1ZyBpbnNu cyBpbiBkZWNpc2lvbnMKLQlpZiBhbmQgd2hlcmUgdG8gc3BsaXQgYSBiYiwgZXhjZXB0IGZvciBz cGxpdHRpbmcgYmVmb3JlIGRlYnVnIGluc24KLQlzZXF1ZW5jZXMgZm9sbG93ZWQgYnkgbm9uLWxh YmVsIHJlYWwgaW5zbi4gIERlbGV0ZSBkZWJ1ZyBpbnNucwotCWluIGJldHdlZW4gYmFzaWMgYmxv Y2tzLgotCi0JKiBnKysuZGcvY3BwMHgvcHI4MTMyNS5DOiBOZXcgdGVzdC4KLQotLS0tIGdjYy9j ZmdidWlsZC5jCShyZXZpc2lvbiAyNTI3NTEpCi0rKysgZ2NjL2NmZ2J1aWxkLmMJKHJldmlzaW9u IDI1Mjc1MikKLUBAIC00NDIsOSArNDQyLDEwIEBAIGZpbmRfYmJfYm91bmRhcmllcyAoYmFzaWNf YmxvY2sgYmIpCi0gICBydHhfaW5zbiAqZW5kID0gQkJfRU5EIChiYiksICp4OwotICAgcnR4X2p1 bXBfdGFibGVfZGF0YSAqdGFibGU7Ci0gICBydHhfaW5zbiAqZmxvd190cmFuc2Zlcl9pbnNuID0g TlVMTDsKLSsgIHJ0eF9pbnNuICpkZWJ1Z19pbnNuID0gTlVMTDsKLSAgIGVkZ2UgZmFsbHRocnUg PSBOVUxMOwotIAotLSAgaWYgKGluc24gPT0gQkJfRU5EIChiYikpCi0rICBpZiAoaW5zbiA9PSBl bmQpCi0gICAgIHJldHVybjsKLSAKLSAgIGlmIChMQUJFTF9QIChpbnNuKSkKLUBAIC00NTUsMjcg KzQ1Niw0OSBAQCBmaW5kX2JiX2JvdW5kYXJpZXMgKGJhc2ljX2Jsb2NrIGJiKQotICAgICB7Ci0g ICAgICAgZW51bSBydHhfY29kZSBjb2RlID0gR0VUX0NPREUgKGluc24pOwotIAotKyAgICAgIGlm IChjb2RlID09IERFQlVHX0lOU04pCi0rCXsKLSsJICBpZiAoZmxvd190cmFuc2Zlcl9pbnNuICYm ICFkZWJ1Z19pbnNuKQotKwkgICAgZGVidWdfaW5zbiA9IGluc247Ci0rCX0KLSAgICAgICAvKiBJ biBjYXNlIHdlJ3ZlIHByZXZpb3VzbHkgc2VlbiBhbiBpbnNuIHRoYXQgZWZmZWN0cyBhIGNvbnRy b2wKLSAJIGZsb3cgdHJhbnNmZXIsIHNwbGl0IHRoZSBibG9jay4gICovCi0tICAgICAgaWYgKChm bG93X3RyYW5zZmVyX2luc24gfHwgY29kZSA9PSBDT0RFX0xBQkVMKQotLQkgICYmIGluc2lkZV9i YXNpY19ibG9ja19wIChpbnNuKSkKLSsgICAgICBlbHNlIGlmICgoZmxvd190cmFuc2Zlcl9pbnNu IHx8IGNvZGUgPT0gQ09ERV9MQUJFTCkKLSsJICAgICAgICYmIGluc2lkZV9iYXNpY19ibG9ja19w IChpbnNuKSkKLSAJewotLQkgIGZhbGx0aHJ1ID0gc3BsaXRfYmxvY2sgKGJiLCBQUkVWX0lOU04g KGluc24pKTsKLSsJICBydHhfaW5zbiAqcHJldiA9IFBSRVZfSU5TTiAoaW5zbik7Ci0rCi0rCSAg LyogSWYgdGhlIGZpcnN0IG5vbi1kZWJ1ZyBpbnNpZGVfYmFzaWNfYmxvY2tfcCBpbnNuIGFmdGVy IGEgY29udHJvbAotKwkgICAgIGZsb3cgdHJhbnNmZXIgaXMgbm90IGEgbGFiZWwsIHNwbGl0IHRo ZSBibG9jayBiZWZvcmUgdGhlIGRlYnVnCi0rCSAgICAgaW5zbiBpbnN0ZWFkIG9mIGJlZm9yZSB0 aGUgbm9uLWRlYnVnIGluc24sIHNvIHRoYXQgdGhlIGRlYnVnCi0rCSAgICAgaW5zbnMgYXJlIG5v dCBsb3N0LiAgKi8KLSsJICBpZiAoZGVidWdfaW5zbiAmJiBjb2RlICE9IENPREVfTEFCRUwgJiYg Y29kZSAhPSBCQVJSSUVSKQotKwkgICAgcHJldiA9IFBSRVZfSU5TTiAoZGVidWdfaW5zbik7Ci0r CSAgZmFsbHRocnUgPSBzcGxpdF9ibG9jayAoYmIsIHByZXYpOwotIAkgIGlmIChmbG93X3RyYW5z ZmVyX2luc24pCi0gCSAgICB7Ci0gCSAgICAgIEJCX0VORCAoYmIpID0gZmxvd190cmFuc2Zlcl9p bnNuOwotIAotKwkgICAgICBydHhfaW5zbiAqbmV4dDsKLSAJICAgICAgLyogQ2xlYW4gdXAgdGhl IGJiIGZpZWxkIGZvciB0aGUgaW5zbnMgYmV0d2VlbiB0aGUgYmxvY2tzLiAgKi8KLSAJICAgICAg Zm9yICh4ID0gTkVYVF9JTlNOIChmbG93X3RyYW5zZmVyX2luc24pOwotIAkJICAgeCAhPSBCQl9I RUFEIChmYWxsdGhydS0+ZGVzdCk7Ci0tCQkgICB4ID0gTkVYVF9JTlNOICh4KSkKLS0JCWlmICgh QkFSUklFUl9QICh4KSkKLS0JCSAgc2V0X2Jsb2NrX2Zvcl9pbnNuICh4LCBOVUxMKTsKLSsJCSAg IHggPSBuZXh0KQotKwkJewotKwkJICBuZXh0ID0gTkVYVF9JTlNOICh4KTsKLSsJCSAgLyogRGVi dWcgaW5zbnMgc2hvdWxkIG5vdCBiZSBpbiBiZXR3ZWVuIGJhc2ljIGJsb2NrcywKLSsJCSAgICAg ZHJvcCB0aGVtIG9uIHRoZSBmbG9vci4gICovCi0rCQkgIGlmIChERUJVR19JTlNOX1AgKHgpKQot KwkJICAgIGRlbGV0ZV9pbnNuICh4KTsKLSsJCSAgZWxzZSBpZiAoIUJBUlJJRVJfUCAoeCkpCi0r CQkgICAgc2V0X2Jsb2NrX2Zvcl9pbnNuICh4LCBOVUxMKTsKLSsJCX0KLSAJICAgIH0KLSAKLSAJ ICBiYiA9IGZhbGx0aHJ1LT5kZXN0OwotIAkgIHJlbW92ZV9lZGdlIChmYWxsdGhydSk7Ci0gCSAg Zmxvd190cmFuc2Zlcl9pbnNuID0gTlVMTDsKLSsJICBkZWJ1Z19pbnNuID0gTlVMTDsKLSAJICBp ZiAoY29kZSA9PSBDT0RFX0xBQkVMICYmIExBQkVMX0FMVF9FTlRSWV9QIChpbnNuKSkKLSAJICAg IG1ha2VfZWRnZSAoRU5UUllfQkxPQ0tfUFRSX0ZPUl9GTiAoY2Z1biksIGJiLCAwKTsKLSAJfQot QEAgLTQ5OCwxNyArNTIxLDIzIEBAIGZpbmRfYmJfYm91bmRhcmllcyAoYmFzaWNfYmxvY2sgYmIp Ci0gICAvKiBJbiBjYXNlIGV4cGFuZGVyIHJlcGxhY2VkIG5vcm1hbCBpbnNuIGJ5IHNlcXVlbmNl IHRlcm1pbmF0aW5nIGJ5Ci0gICAgICByZXR1cm4gYW5kIGJhcnJpZXIsIG9yIHBvc3NpYmx5IG90 aGVyIHNlcXVlbmNlIG5vdCBiZWhhdmluZyBsaWtlCi0gICAgICBvcmRpbmFyeSBqdW1wLCB3ZSBu ZWVkIHRvIHRha2UgY2FyZSBhbmQgbW92ZSBiYXNpYyBibG9jayBib3VuZGFyeS4gICovCi0tICBp ZiAoZmxvd190cmFuc2Zlcl9pbnNuKQotKyAgaWYgKGZsb3dfdHJhbnNmZXJfaW5zbiAmJiBmbG93 X3RyYW5zZmVyX2luc24gIT0gZW5kKQotICAgICB7Ci0gICAgICAgQkJfRU5EIChiYikgPSBmbG93 X3RyYW5zZmVyX2luc247Ci0gCi0gICAgICAgLyogQ2xlYW4gdXAgdGhlIGJiIGZpZWxkIGZvciB0 aGUgaW5zbnMgdGhhdCBkbyBub3QgYmVsb25nIHRvIEJCLiAgKi8KLS0gICAgICB4ID0gZmxvd190 cmFuc2Zlcl9pbnNuOwotLSAgICAgIHdoaWxlICh4ICE9IGVuZCkKLSsgICAgICBydHhfaW5zbiAq bmV4dDsKLSsgICAgICBmb3IgKHggPSBORVhUX0lOU04gKGZsb3dfdHJhbnNmZXJfaW5zbik7IDsg eCA9IG5leHQpCi0gCXsKLS0JICB4ID0gTkVYVF9JTlNOICh4KTsKLS0JICBpZiAoIUJBUlJJRVJf UCAoeCkpCi0rCSAgbmV4dCA9IE5FWFRfSU5TTiAoeCk7Ci0rCSAgLyogRGVidWcgaW5zbnMgc2hv dWxkIG5vdCBiZSBpbiBiZXR3ZWVuIGJhc2ljIGJsb2NrcywKLSsJICAgICBkcm9wIHRoZW0gb24g dGhlIGZsb29yLiAgKi8KLSsJICBpZiAoREVCVUdfSU5TTl9QICh4KSkKLSsJICAgIGRlbGV0ZV9p bnNuICh4KTsKLSsJICBlbHNlIGlmICghQkFSUklFUl9QICh4KSkKLSAJICAgIHNldF9ibG9ja19m b3JfaW5zbiAoeCwgTlVMTCk7Ci0rCSAgaWYgKHggPT0gZW5kKQotKwkgICAgYnJlYWs7Ci0gCX0K LSAgICAgfQotIAotLS0tIGdjYy90ZXN0c3VpdGUvZysrLmRnL2NwcDB4L3ByODEzMjUuQwkobm9u ZXhpc3RlbnQpCi0rKysgZ2NjL3Rlc3RzdWl0ZS9nKysuZGcvY3BwMHgvcHI4MTMyNS5DCShyZXZp c2lvbiAyNTI3NTIpCi1AQCAtMCwwICsxLDg0IEBACi0rLy8gUFIgdGFyZ2V0LzgxMzI1Ci0rLy8g eyBkZy1kbyBjb21waWxlIHsgdGFyZ2V0IGMrKzExIH0gfQotKy8vIHsgZGctb3B0aW9ucyAiLU8y IC1mY29tcGFyZS1kZWJ1ZyIgfQotKwotK3N0cnVjdCBBIHsgQShjb25zdCBjaGFyICosIGNvbnN0 IGludCAmID0gMCk7IH07Ci0rdGVtcGxhdGUgPHR5cGVuYW1lPiBzdHJ1Y3QgQjsKLSt0ZW1wbGF0 ZSA8dHlwZW5hbWU+IHN0cnVjdCBDIHsKLSsgIGludCBfTV9pOwotKyAgdm9pZCBtX2ZuMSgpIHsg X19hdG9taWNfZmV0Y2hfYWRkKCZfTV9pLCAwLCBfX0FUT01JQ19SRUxBWEVEKTsgfQotK307Ci0r c3RydWN0IEQgewotKyAgaW50ICpEYXRhOwotKyAgbG9uZyBMZW5ndGggPSAwOwotKyAgRChpbnQp IDogRGF0YSgpIHt9Ci0rfTsKLSt0ZW1wbGF0ZSA8PiBzdHJ1Y3QgQjxpbnQ+IDogQzxpbnQ+IHt9 OwotK3N0cnVjdCBGIHsKLSsgIEI8aW50PiBSZWZDb3VudDsKLSsgIHZvaWQgbV9mbjIoKSB7IFJl ZkNvdW50Lm1fZm4xKCk7IH0KLSt9OwotK3N0cnVjdCBHIHsKLSsgIEYgKk9iajsKLSsgIEcoY29u c3QgRyAmcDEpIDogT2JqKHAxLk9iaikgewotKyAgICBpZiAoT2JqKSB7Ci0rICAgICAgRiAqYSA9 IDA7Ci0rICAgICAgYS0+bV9mbjIoKTsKLSsgICAgfQotKyAgfQotK307Ci0rc3RydWN0IEggewot KyAgaW50IENQbHVzUGx1cyA6IDE7Ci0rfTsKLStzdHJ1Y3QgSSB7Ci0rICBlbnVtIHt9IEtpbmRJ ZDsKLSt9OwotK3RlbXBsYXRlIDx0eXBlbmFtZSBSZXN1bHRULCB0eXBlbmFtZSBBcmdUPiBzdHJ1 Y3QgSiB7Ci0rICB2b2lkIG9wZXJhdG9yKCkoKTsKLSsgIFJlc3VsdFQgb3BlcmF0b3IoKShBcmdU KSB7fQotK307Ci0rc3RydWN0IEsgewotKyAgaW50IEFsbG93QmluZDsKLSsgIEkgU3VwcG9ydGVk S2luZDsKLSsgIEkgUmVzdHJpY3RLaW5kOwotKyAgRyBJbXBsZW1lbnRhdGlvbjsKLSt9OwotK3N0 cnVjdCBMIHsKLSsgIEwoaW50KSA6IEltcGxlbWVudGF0aW9uKEltcGxlbWVudGF0aW9uKSB7fQot KyAgSyBJbXBsZW1lbnRhdGlvbjsKLSt9OwotK3N0cnVjdCBNIHsKLSsgIGludCBQYXJhbTE7Ci0r fTsKLStzdHJ1Y3QgTiB7Ci0rICBOKGludCwgTCAmcDIpIDogUGFyYW0yKHAyKSB7fQotKyAgTCBQ YXJhbTI7Ci0rfTsKLStzdHJ1Y3QgTyB7Ci0rICBMIG1fZm4zKCk7Ci0rfTsKLStMIGlnbm9yaW5n SW1wQ2FzdHMoTCk7Ci0rSjxPLCBMPiBiOwotK0wgaGFzTmFtZShjb25zdCBBICYpOwotK00gaGFz T3ZlcmxvYWRlZE9wZXJhdG9yTmFtZShEKTsKLStKPE8sIGludD4gYzsKLStzdHJ1Y3QgUCB7Ci0r ICB2b2lkIG1fZm40KEwsIGludCk7Ci0rfTsKLStzdHJ1Y3QgUSB7Ci0rICB2b2lkIG1fZm41KFAg Kik7Ci0rfTsKLStIIGQ7Ci0rdm9pZCBROjptX2ZuNShQICpwMSkgewotKyAgaWYgKCFkLkNQbHVz UGx1cykgewotKyAgICBjKCk7Ci0rICAgIEwgZSA9IDAsIGYgPSBpZ25vcmluZ0ltcENhc3RzKGUp OwotKyAgICBiKGlnbm9yaW5nSW1wQ2FzdHMoZikpLm1fZm4zKCk7Ci0rICB9Ci0rICBoYXNPdmVy bG9hZGVkT3BlcmF0b3JOYW1lKDApOwotKyAgaGFzTmFtZSgiIik7Ci0rICBMIGcgPSAwOwotKyAg TigwLCBnKTsKLSsgIEwgaCgwKTsKLSsgIHAxLT5tX2ZuNChoLCAwKTsKLSt9CgpkaWZmIC0tZ2l0 IGEvZ2NjNy1wcjgxOTI5LnBhdGNoIGIvZ2NjNy1wcjgxOTI5LnBhdGNoCmRlbGV0ZWQgZmlsZSBt b2RlIDEwMDY0NAppbmRleCBkMTM2ZDgwLi4wMDAwMDAwCi0tLSBhL2djYzctcHI4MTkyOS5wYXRj aAorKysgL2Rldi9udWxsCkBAIC0xLDczICswLDAgQEAKLTIwMTctMDktMTQgIEpha3ViIEplbGlu ZWsgIDxqYWt1YkByZWRoYXQuY29tPgotCi0JUFIgc2FuaXRpemVyLzgxOTI5Ci0JKiB0cmVlLmMg KHN0cnVjdCByZXBsYWNlX3BsYWNlaG9sZGVyc190KTogQWRkIHBzZXQgZmllbGQuCi0JKHJlcGxh Y2VfcGxhY2Vob2xkZXJzX3IpOiBDYWxsIGNwX3dhbGtfdHJlZSB3aXRoIGQtPnBzZXQgYXMKLQls YXN0IGFyZ3VtZW50IGluc3RlYWQgb2YgTlVMTC4gIEZvcm1hdHRpbmcgZml4LgotCShyZXBsYWNl X3BsYWNlaG9sZGVycyk6IEFkZCBwc2V0IHZhcmlhYmxlLCBhZGQgaXRzIGFkZHJlc3MKLQlpbnRv IGRhdGEuICBQYXNzICZwc2V0IGluc3RlYWQgb2YgTlVMTCB0byBjcF93YWxrX3RyZWUuCi0KLQkq IGcrKy5kZy91YnNhbi9wcjgxOTI5LkM6IE5ldyB0ZXN0LgotCi0tLS0gZ2NjL2NwL3RyZWUuYy5q agkyMDE3LTA5LTEyIDA5OjM1OjQ3LjAwMDAwMDAwMCArMDIwMAotKysrIGdjYy9jcC90cmVlLmMJ MjAxNy0wOS0xNCAxNzozODowNy43MTcwNjQ0MTIgKzAyMDAKLUBAIC0zMDYzLDYgKzMwNjMsNyBA QCBzdHJ1Y3QgcmVwbGFjZV9wbGFjZWhvbGRlcnNfdAotIHsKLSAgIHRyZWUgb2JqOwkgICAgLyog VGhlIG9iamVjdCB0byBiZSBzdWJzdGl0dXRlZCBmb3IgYSBQTEFDRUhPTERFUl9FWFBSLiAgKi8K LSAgIGJvb2wgc2VlbjsJICAgIC8qIFdoZXRoZXIgd2UndmUgZW5jb3VudGVyZWQgYSBQTEFDRUhP TERFUl9FWFBSLiAgKi8KLSsgIGhhc2hfc2V0PHRyZWU+ICpwc2V0OwkvKiBUbyBhdm9pZCB3YWxr aW5nIHNhbWUgdHJlZXMgbXVsdGlwbGUgdGltZXMuICAqLwotIH07Ci0gCi0gLyogTGlrZSBzdWJz dGl0dXRlX3BsYWNlaG9sZGVyX2luX2V4cHIsIGJ1dCBoYW5kbGUgQysrIHRyZWUgY29kZXMgYW5k Ci1AQCAtMzA4NSw4ICszMDg2LDggQEAgcmVwbGFjZV9wbGFjZWhvbGRlcnNfciAodHJlZSogdCwg aW50KiB3YQotICAgICBjYXNlIFBMQUNFSE9MREVSX0VYUFI6Ci0gICAgICAgewotIAl0cmVlIHgg PSBvYmo7Ci0tCWZvciAoOyAhKHNhbWVfdHlwZV9pZ25vcmluZ190b3BfbGV2ZWxfcXVhbGlmaWVy c19wCi0tCQkgKFRSRUVfVFlQRSAoKnQpLCBUUkVFX1RZUEUgKHgpKSk7Ci0rCWZvciAoOyAhc2Ft ZV90eXBlX2lnbm9yaW5nX3RvcF9sZXZlbF9xdWFsaWZpZXJzX3AgKFRSRUVfVFlQRSAoKnQpLAot KwkJCQkJCQkgICBUUkVFX1RZUEUgKHgpKTsKLSAJICAgICB4ID0gVFJFRV9PUEVSQU5EICh4LCAw KSkKLSAJICBnY2NfYXNzZXJ0IChUUkVFX0NPREUgKHgpID09IENPTVBPTkVOVF9SRUYpOwotIAkq dCA9IHg7Ci1AQCAtMzExOCw4ICszMTE5LDcgQEAgcmVwbGFjZV9wbGFjZWhvbGRlcnNfciAodHJl ZSogdCwgaW50KiB3YQotIAkJICB2YWxwID0gJlRBUkdFVF9FWFBSX0lOSVRJQUwgKCp2YWxwKTsK LSAJICAgICAgfQotIAkgICAgZC0+b2JqID0gc3Vib2I7Ci0tCSAgICBjcF93YWxrX3RyZWUgKHZh bHAsIHJlcGxhY2VfcGxhY2Vob2xkZXJzX3IsCi0tCQkJICBkYXRhXywgTlVMTCk7Ci0rCSAgICBj cF93YWxrX3RyZWUgKHZhbHAsIHJlcGxhY2VfcGxhY2Vob2xkZXJzX3IsIGRhdGFfLCBkLT5wc2V0 KTsKLSAJICAgIGQtPm9iaiA9IG9iajsKLSAJICB9Ci0gCSp3YWxrX3N1YnRyZWVzID0gZmFsc2U7 Ci1AQCAtMzE1MSwxMCArMzE1MSwxMSBAQCByZXBsYWNlX3BsYWNlaG9sZGVycyAodHJlZSBleHAs IHRyZWUgb2JqCi0gICAgIHJldHVybiBleHA7Ci0gCi0gICB0cmVlICp0cCA9ICZleHA7Ci0tICBy ZXBsYWNlX3BsYWNlaG9sZGVyc190IGRhdGEgPSB7IG9iaiwgZmFsc2UgfTsKLSsgIGhhc2hfc2V0 PHRyZWU+IHBzZXQ7Ci0rICByZXBsYWNlX3BsYWNlaG9sZGVyc190IGRhdGEgPSB7IG9iaiwgZmFs c2UsICZwc2V0IH07Ci0gICBpZiAoVFJFRV9DT0RFIChleHApID09IFRBUkdFVF9FWFBSKQotICAg ICB0cCA9ICZUQVJHRVRfRVhQUl9JTklUSUFMIChleHApOwotLSAgY3Bfd2Fsa190cmVlICh0cCwg cmVwbGFjZV9wbGFjZWhvbGRlcnNfciwgJmRhdGEsIE5VTEwpOwotKyAgY3Bfd2Fsa190cmVlICh0 cCwgcmVwbGFjZV9wbGFjZWhvbGRlcnNfciwgJmRhdGEsICZwc2V0KTsKLSAgIGlmIChzZWVuX3Ap Ci0gICAgICpzZWVuX3AgPSBkYXRhLnNlZW47Ci0gICByZXR1cm4gZXhwOwotLS0tIGdjYy90ZXN0 c3VpdGUvZysrLmRnL3Vic2FuL3ByODE5MjkuQy5qagkyMDE3LTA5LTE0IDE3OjQ4OjA5LjA1MjYx MTU0MCArMDIwMAotKysrIGdjYy90ZXN0c3VpdGUvZysrLmRnL3Vic2FuL3ByODE5MjkuQwkyMDE3 LTA5LTE0IDE3OjQ5OjIxLjY0NDcxMTMzMiArMDIwMAotQEAgLTAsMCArMSwxNCBAQAotKy8vIFBS IHNhbml0aXplci84MTkyOQotKy8vIHsgZGctZG8gY29tcGlsZSB9Ci0rLy8geyBkZy1vcHRpb25z ICItc3RkPWMrKzE0IC1mc2FuaXRpemU9dW5kZWZpbmVkIiB9Ci0rCi0rc3RydWN0IFMgeyBTICZv cGVyYXRvcjw8IChsb25nKTsgUyBmb28gKCk7IFMgKCk7IH07Ci0rCi0rdm9pZAotK2JhciAoKQot K3sKLSsgIHN0YXRpY19jYXN0PFMmPihTICgpIDw8IDAgPDwgMCA8PCAwIDw8IDAgPDwgMCA8PCAw IDw8IDAgPDwgMCA8PCAwIDw8IDAgPDwgMAotKwkJICAgICAgIDw8IDAgPDwgMCA8PCAwIDw8IDAg PDwgMCA8PCAwIDw8IDAgPDwgMCA8PCAwIDw8IDAgPDwgMAotKwkJICAgICAgIDw8IDAgPDwgMCA8 PCAwIDw8IDAgPDwgMCA8PCAwIDw8IDAgPDwgMCA8PCAwIDw8IDAgPDwgMAotKwkJICAgICAgIDw8 IDAgPDwgMCA8PCAwIDw8IDAgPDwgMCA8PCAwIDw8IDAgPDwgMCA8PCAwIDw8IDAgPDwgMCkuZm9v ICgpOwotK30KCmRpZmYgLS1naXQgYS9nY2M3LXByODIxMTItMS5wYXRjaCBiL2djYzctcHI4MjEx Mi0xLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMzViODkzLi4wMDAwMDAw Ci0tLSBhL2djYzctcHI4MjExMi0xLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsOTQgKzAsMCBA QAotMjAxNy0wOS0xNSAgSmFrdWIgSmVsaW5layAgPGpha3ViQHJlZGhhdC5jb20+Ci0KLQlCYWNr cG9ydGVkIGZyb20gbWFpbmxpbmUKLQkyMDE3LTA5LTEyICBKYWt1YiBKZWxpbmVrICA8amFrdWJA cmVkaGF0LmNvbT4KLQotCVBSIHRhcmdldC84MjExMgotCSogYy1jb21tb24uYyAoc3luY19yZXNv bHZlX3NpemUpOiBJbnN0ZWFkIG9mIGNfZGlhbGVjdF9jeHggKCkKLQlhc3NlcnRpb24gY2hlY2sg dGhhdCBpbiB0aGUgY29uZGl0aW9uLgotCShnZXRfYXRvbWljX2dlbmVyaWNfc2l6ZSk6IExpa2V3 aXNlLiAgQmVmb3JlIHRlc3RpbmcgaWYgcGFyYW1ldGVyCi0JaGFzIHBvaW50ZXIgdHlwZSwgaWYg aXQgaGFzIGFycmF5IHR5cGUsIGNhbGwgZm9yIEMrKwotCWRlZmF1bHRfY29udmVyc2lvbiB0byBw ZXJmb3JtIGFycmF5LXRvLXBvaW50ZXIgY29udmVyc2lvbi4KLQotCSogYy1jKystY29tbW9uL3By ODIxMTIuYzogTmV3IHRlc3QuCi0JKiBnY2MuZGcvcHI4MjExMi5jOiBOZXcgdGVzdC4KLQotLS0t IGdjYy9jLWZhbWlseS9jLWNvbW1vbi5jCShyZXZpc2lvbiAyNTIwMDIpCi0rKysgZ2NjL2MtZmFt aWx5L2MtY29tbW9uLmMJKHJldmlzaW9uIDI1MjAwMykKLUBAIC02NDc4LDEwICs2NDc4LDkgQEAg c3luY19yZXNvbHZlX3NpemUgKHRyZWUgZnVuY3Rpb24sIHZlYzx0cgotICAgICB9Ci0gCi0gICBh cmd0eXBlID0gdHlwZSA9IFRSRUVfVFlQRSAoKCpwYXJhbXMpWzBdKTsKLS0gIGlmIChUUkVFX0NP REUgKHR5cGUpID09IEFSUkFZX1RZUEUpCi0rICBpZiAoVFJFRV9DT0RFICh0eXBlKSA9PSBBUlJB WV9UWVBFICYmIGNfZGlhbGVjdF9jeHggKCkpCi0gICAgIHsKLSAgICAgICAvKiBGb3JjZSBhcnJh eS10by1wb2ludGVyIGRlY2F5IGZvciBDKysuICAqLwotLSAgICAgIGdjY19hc3NlcnQgKGNfZGlh bGVjdF9jeHgoKSk7Ci0gICAgICAgKCpwYXJhbXMpWzBdID0gZGVmYXVsdF9jb252ZXJzaW9uICgo KnBhcmFtcylbMF0pOwotICAgICAgIHR5cGUgPSBUUkVFX1RZUEUgKCgqcGFyYW1zKVswXSk7Ci0g ICAgIH0KLUBAIC02NjQ2LDEwICs2NjQ1LDkgQEAgZ2V0X2F0b21pY19nZW5lcmljX3NpemUgKGxv Y2F0aW9uX3QgbG9jLAotIAotICAgLyogR2V0IHR5cGUgb2YgZmlyc3QgcGFyYW1ldGVyLCBhbmQg ZGV0ZXJtaW5lIGl0cyBzaXplLiAgKi8KLSAgIHR5cGVfMCA9IFRSRUVfVFlQRSAoKCpwYXJhbXMp WzBdKTsKLS0gIGlmIChUUkVFX0NPREUgKHR5cGVfMCkgPT0gQVJSQVlfVFlQRSkKLSsgIGlmIChU UkVFX0NPREUgKHR5cGVfMCkgPT0gQVJSQVlfVFlQRSAmJiBjX2RpYWxlY3RfY3h4ICgpKQotICAg ICB7Ci0gICAgICAgLyogRm9yY2UgYXJyYXktdG8tcG9pbnRlciBkZWNheSBmb3IgQysrLiAgKi8K LS0gICAgICBnY2NfYXNzZXJ0IChjX2RpYWxlY3RfY3h4KCkpOwotICAgICAgICgqcGFyYW1zKVsw XSA9IGRlZmF1bHRfY29udmVyc2lvbiAoKCpwYXJhbXMpWzBdKTsKLSAgICAgICB0eXBlXzAgPSBU UkVFX1RZUEUgKCgqcGFyYW1zKVswXSk7Ci0gICAgIH0KLUBAIC02Njg4LDYgKzY2ODYsMTIgQEAg Z2V0X2F0b21pY19nZW5lcmljX3NpemUgKGxvY2F0aW9uX3QgbG9jLAotICAgICAgIC8qIF9fYXRv bWljX2NvbXBhcmVfZXhjaGFuZ2UgaGFzIGEgYm9vbCBpbiB0aGUgNHRoIHBvc2l0aW9uLCBza2lw IGl0LiAgKi8KLSAgICAgICBpZiAobl9wYXJhbSA9PSA2ICYmIHggPT0gMykKLSAgICAgICAgIGNv bnRpbnVlOwotKyAgICAgIGlmIChUUkVFX0NPREUgKHR5cGUpID09IEFSUkFZX1RZUEUgJiYgY19k aWFsZWN0X2N4eCAoKSkKLSsJewotKwkgIC8qIEZvcmNlIGFycmF5LXRvLXBvaW50ZXIgZGVjYXkg Zm9yIEMrKy4gICovCi0rCSAgKCpwYXJhbXMpW3hdID0gZGVmYXVsdF9jb252ZXJzaW9uICgoKnBh cmFtcylbeF0pOwotKwkgIHR5cGUgPSBUUkVFX1RZUEUgKCgqcGFyYW1zKVt4XSk7Ci0rCX0KLSAg ICAgICBpZiAoIVBPSU5URVJfVFlQRV9QICh0eXBlKSkKLSAJewotIAkgIGVycm9yX2F0IChsb2Ms ICJhcmd1bWVudCAlZCBvZiAlcUUgbXVzdCBiZSBhIHBvaW50ZXIgdHlwZSIsIHggKyAxLAotLS0t IGdjYy90ZXN0c3VpdGUvZ2NjLmRnL3ByODIxMTIuYwkobm9uZXhpc3RlbnQpCi0rKysgZ2NjL3Rl c3RzdWl0ZS9nY2MuZGcvcHI4MjExMi5jCShyZXZpc2lvbiAyNTIwMDMpCi1AQCAtMCwwICsxLDIx IEBACi0rLyogUFIgdGFyZ2V0LzgyMTEyICovCi0rLyogeyBkZy1kbyBjb21waWxlIH0gKi8KLSsv KiB7IGRnLW9wdGlvbnMgIi1zdGQ9Z251OTAiIH0gKi8KLSsKLStzdHJ1Y3QgUyB7IGludCBhWzEw XTsgfSBiYXIgKHZvaWQpOwotK2ludCBiLCBjOwotKwotK3ZvaWQKLStmb28gKHZvaWQpCi0rewot KyAgX19hdG9taWNfbG9hZCAoYmFyICgpLmEsICZiLCBfX0FUT01JQ19BQ1FVSVJFKTsJLyogeyBk Zy1lcnJvciAiYXJndW1lbnQgMSBvZiAuX19hdG9taWNfbG9hZC4gbXVzdCBiZSBhIG5vbi12b2lk IHBvaW50ZXIgdHlwZSIgfSAqLwotKyAgX19hdG9taWNfbG9hZCAoJmIsIGJhciAoKS5hLCBfX0FU T01JQ19BQ1FVSVJFKTsJLyogeyBkZy1lcnJvciAiYXJndW1lbnQgMiBvZiAuX19hdG9taWNfbG9h ZC4gbXVzdCBiZSBhIHBvaW50ZXIgdHlwZSIgfSAqLwotKyAgX19hdG9taWNfc3RvcmUgKGJhciAo KS5hLCAmYiwgX19BVE9NSUNfU0VRX0NTVCk7CS8qIHsgZGctZXJyb3IgImFyZ3VtZW50IDEgb2Yg Ll9fYXRvbWljX3N0b3JlLiBtdXN0IGJlIGEgbm9uLXZvaWQgcG9pbnRlciB0eXBlIiB9ICovCi0r ICBfX2F0b21pY19zdG9yZSAoJmIsIGJhciAoKS5hLCBfX0FUT01JQ19TRVFfQ1NUKTsJLyogeyBk Zy1lcnJvciAiYXJndW1lbnQgMiBvZiAuX19hdG9taWNfc3RvcmUuIG11c3QgYmUgYSBwb2ludGVy IHR5cGUiIH0gKi8KLSsgIF9fYXRvbWljX2V4Y2hhbmdlIChiYXIgKCkuYSwgJmIsICZjLCBfX0FU T01JQ19SRUxBWEVEKTsJLyogeyBkZy1lcnJvciAiYXJndW1lbnQgMSBvZiAuX19hdG9taWNfZXhj aGFuZ2UuIG11c3QgYmUgYSBub24tdm9pZCBwb2ludGVyIHR5cGUiIH0gKi8KLSsgIF9fYXRvbWlj X2V4Y2hhbmdlICgmYiwgYmFyICgpLmEsICZjLCBfX0FUT01JQ19SRUxBWEVEKTsJLyogeyBkZy1l cnJvciAiYXJndW1lbnQgMiBvZiAuX19hdG9taWNfZXhjaGFuZ2UuIG11c3QgYmUgYSBwb2ludGVy IHR5cGUiIH0gKi8KLSsgIF9fYXRvbWljX2V4Y2hhbmdlICgmYiwgJmMsIGJhciAoKS5hLCBfX0FU T01JQ19SRUxBWEVEKTsJLyogeyBkZy1lcnJvciAiYXJndW1lbnQgMyBvZiAuX19hdG9taWNfZXhj aGFuZ2UuIG11c3QgYmUgYSBwb2ludGVyIHR5cGUiIH0gKi8KLSsgIF9fYXRvbWljX2NvbXBhcmVf ZXhjaGFuZ2UgKGJhciAoKS5hLCAmYiwgJmMsIDEsIF9fQVRPTUlDX1JFTEFYRUQsIF9fQVRPTUlD X1JFTEFYRUQpOwkvKiB7IGRnLWVycm9yICJhcmd1bWVudCAxIG9mIC5fX2F0b21pY19jb21wYXJl X2V4Y2hhbmdlLiBtdXN0IGJlIGEgbm9uLXZvaWQgcG9pbnRlciB0eXBlIiB9ICovCi0rICBfX2F0 b21pY19jb21wYXJlX2V4Y2hhbmdlICgmYiwgYmFyICgpLmEsICZjLCAxLCBfX0FUT01JQ19SRUxB WEVELCBfX0FUT01JQ19SRUxBWEVEKTsJLyogeyBkZy1lcnJvciAiYXJndW1lbnQgMiBvZiAuX19h dG9taWNfY29tcGFyZV9leGNoYW5nZS4gbXVzdCBiZSBhIHBvaW50ZXIgdHlwZSIgfSAqLwotKyAg X19hdG9taWNfY29tcGFyZV9leGNoYW5nZSAoJmIsICZjLCBiYXIgKCkuYSwgMSwgX19BVE9NSUNf UkVMQVhFRCwgX19BVE9NSUNfUkVMQVhFRCk7CS8qIHsgZGctZXJyb3IgImFyZ3VtZW50IDMgb2Yg Ll9fYXRvbWljX2NvbXBhcmVfZXhjaGFuZ2UuIG11c3QgYmUgYSBwb2ludGVyIHR5cGUiIH0gKi8K LSt9Ci0tLS0gZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vcHI4MjExMi5jCShub25leGlzdGVu dCkKLSsrKyBnY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9wcjgyMTEyLmMJKHJldmlzaW9uIDI1 MjAwMykKLUBAIC0wLDAgKzEsMTMgQEAKLSsvKiBQUiB0YXJnZXQvODIxMTIgKi8KLSsvKiB7IGRn LWRvIGNvbXBpbGUgfSAqLwotKwotK2ludCBjWzEwXSwgZFsxMF0sIGVbMTBdLCBmWzEwXSwgZ1sx MF0sIGhbMTBdLCBpWzEwXSwgalsxMF0sIGtbMTBdLCBsWzEwXTsKLSsKLSt2b2lkCi0rZm9vICh2 b2lkKQotK3sKLSsgIF9fYXRvbWljX2xvYWQgKGMsIGQsIF9fQVRPTUlDX0FDUVVJUkUpOwotKyAg X19hdG9taWNfc3RvcmUgKGUsIGYsIF9fQVRPTUlDX1NFUV9DU1QpOwotKyAgX19hdG9taWNfZXhj aGFuZ2UgKGcsIGgsIGksIF9fQVRPTUlDX1JFTEFYRUQpOwotKyAgX19hdG9taWNfY29tcGFyZV9l eGNoYW5nZSAoaiwgaywgbCwgMSwgX19BVE9NSUNfUkVMQVhFRCwgX19BVE9NSUNfUkVMQVhFRCk7 Ci0rfQoKZGlmZiAtLWdpdCBhL2djYzctcHI4MjExMi0yLnBhdGNoIGIvZ2NjNy1wcjgyMTEyLTIu cGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc4ODQ0OGYuLjAwMDAwMDAKLS0t IGEvZ2NjNy1wcjgyMTEyLTIucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMDEgKzAsMCBAQAot MjAxNy0wOS0xNSAgSmFrdWIgSmVsaW5layAgPGpha3ViQHJlZGhhdC5jb20+Ci0KLQlCYWNrcG9y dGVkIGZyb20gbWFpbmxpbmUKLQkyMDE3LTA5LTEyICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVk aGF0LmNvbT4KLQotCVBSIHRhcmdldC84MjExMgotCSogY29uZmlnL3JzNjAwMC9yczYwMDAtYy5j IChhbHRpdmVjX3Jlc29sdmVfb3ZlcmxvYWRlZF9idWlsdGluKTogRm9yCi0JQUxUSVZFQ19CVUlM VElOX1ZFQ19MRCBpZiBhcmcxIGhhcyBhcnJheSB0eXBlIGNhbGwgZGVmYXVsdF9jb252ZXJzaW9u Ci0Jb24gaXQgZWFybHksIHJhdGhlciB0aGFuIG1hbnVhbCBjb252ZXJzaW9uIGxhdGUuICBGb3IK LQlBTFRJVkVDX0JVSUxUSU5fVkVDX1NUIGlmIGFyZzIgaGFzIGFycmF5IHR5cGUgY2FsbCBkZWZh dWx0X2NvbnZlcnNpb24KLQlpbnN0ZWFkIG9mIHBlcmZvcm1pbmcgbWFudWFsIGNvbnZlcnNpb24u Ci0KLQkqIGdjYy50YXJnZXQvcG93ZXJwYy9wcjgyMTEyLmM6IE5ldyB0ZXN0LgotCSogZysrLmRn L2V4dC9hbHRpdmVjLTE4LkM6IE5ldyB0ZXN0LgotCi0tLS0gZ2NjL2NvbmZpZy9yczYwMDAvcnM2 MDAwLWMuYwkocmV2aXNpb24gMjUyMDI3KQotKysrIGdjYy9jb25maWcvcnM2MDAwL3JzNjAwMC1j LmMJKHJldmlzaW9uIDI1MjAyOCkKLUBAIC02NDg5LDcgKzY0ODksMTMgQEAgYWx0aXZlY19yZXNv bHZlX292ZXJsb2FkZWRfYnVpbHRpbiAobG9jYQotIAotICAgICAgIC8qIFN0cmlwIHF1YWxpZmll cnMgbGlrZSAiY29uc3QiIGZyb20gdGhlIHBvaW50ZXIgYXJnLiAgKi8KLSAgICAgICB0cmVlIGFy ZzFfdHlwZSA9IFRSRUVfVFlQRSAoYXJnMSk7Ci0tICAgICAgaWYgKCFQT0lOVEVSX1RZUEVfUCAo YXJnMV90eXBlKSAmJiBUUkVFX0NPREUgKGFyZzFfdHlwZSkgIT0gQVJSQVlfVFlQRSkKLSsgICAg ICBpZiAoVFJFRV9DT0RFIChhcmcxX3R5cGUpID09IEFSUkFZX1RZUEUgJiYgY19kaWFsZWN0X2N4 eCAoKSkKLSsJewotKwkgIC8qIEZvcmNlIGFycmF5LXRvLXBvaW50ZXIgZGVjYXkgZm9yIEMrKy4g ICovCi0rCSAgYXJnMSA9IGRlZmF1bHRfY29udmVyc2lvbiAoYXJnMSk7Ci0rCSAgYXJnMV90eXBl ID0gVFJFRV9UWVBFIChhcmcxKTsKLSsJfQotKyAgICAgIGlmICghUE9JTlRFUl9UWVBFX1AgKGFy ZzFfdHlwZSkpCi0gCWdvdG8gYmFkOwotIAotICAgICAgIHRyZWUgaW5uZXJfdHlwZSA9IFRSRUVf VFlQRSAoYXJnMV90eXBlKTsKLUBAIC02NTA5LDE1ICs2NTE1LDYgQEAgYWx0aXZlY19yZXNvbHZl X292ZXJsb2FkZWRfYnVpbHRpbiAobG9jYQotIAkgIGlmICghcHRyb2ZmdHlwZV9wIChUUkVFX1RZ UEUgKGFyZzApKSkKLSAJICAgIGFyZzAgPSBidWlsZDEgKE5PUF9FWFBSLCBzaXpldHlwZSwgYXJn MCk7Ci0gCi0tCSAgdHJlZSBhcmcxX3R5cGUgPSBUUkVFX1RZUEUgKGFyZzEpOwotLQkgIGlmIChU UkVFX0NPREUgKGFyZzFfdHlwZSkgPT0gQVJSQVlfVFlQRSkKLS0JICAgIHsKLS0JICAgICAgYXJn MV90eXBlID0gVFlQRV9QT0lOVEVSX1RPIChUUkVFX1RZUEUgKGFyZzFfdHlwZSkpOwotLQkgICAg ICB0cmVlIGNvbnN0MCA9IGJ1aWxkX2ludF9jc3R1IChzaXpldHlwZSwgMCk7Ci0tCSAgICAgIHRy ZWUgYXJnMV9lbHQwID0gYnVpbGRfYXJyYXlfcmVmIChsb2MsIGFyZzEsIGNvbnN0MCk7Ci0tCSAg ICAgIGFyZzEgPSBidWlsZDEgKEFERFJfRVhQUiwgYXJnMV90eXBlLCBhcmcxX2VsdDApOwotLQkg ICAgfQotLQotIAkgIHRyZWUgYWRkciA9IGZvbGRfYnVpbGQyX2xvYyAobG9jLCBQT0lOVEVSX1BM VVNfRVhQUiwgYXJnMV90eXBlLAotIAkJCQkgICAgICAgYXJnMSwgYXJnMCk7Ci0gCSAgdHJlZSBh bGlnbmVkID0gZm9sZF9idWlsZDJfbG9jIChsb2MsIEJJVF9BTkRfRVhQUiwgYXJnMV90eXBlLCBh ZGRyLAotQEAgLTY1NzIsMTIgKzY1NjksMTEgQEAgYWx0aXZlY19yZXNvbHZlX292ZXJsb2FkZWRf YnVpbHRpbiAobG9jYQotIAkgICAgYXJnMSA9IGJ1aWxkMSAoTk9QX0VYUFIsIHNpemV0eXBlLCBh cmcxKTsKLSAKLSAJICB0cmVlIGFyZzJfdHlwZSA9IFRSRUVfVFlQRSAoYXJnMik7Ci0tCSAgaWYg KFRSRUVfQ09ERSAoYXJnMl90eXBlKSA9PSBBUlJBWV9UWVBFKQotKwkgIGlmIChUUkVFX0NPREUg KGFyZzJfdHlwZSkgPT0gQVJSQVlfVFlQRSAmJiBjX2RpYWxlY3RfY3h4ICgpKQotIAkgICAgewot LQkgICAgICBhcmcyX3R5cGUgPSBUWVBFX1BPSU5URVJfVE8gKFRSRUVfVFlQRSAoYXJnMl90eXBl KSk7Ci0tCSAgICAgIHRyZWUgY29uc3QwID0gYnVpbGRfaW50X2NzdHUgKHNpemV0eXBlLCAwKTsK LS0JICAgICAgdHJlZSBhcmcyX2VsdDAgPSBidWlsZF9hcnJheV9yZWYgKGxvYywgYXJnMiwgY29u c3QwKTsKLS0JICAgICAgYXJnMiA9IGJ1aWxkMSAoQUREUl9FWFBSLCBhcmcyX3R5cGUsIGFyZzJf ZWx0MCk7Ci0rCSAgICAgIC8qIEZvcmNlIGFycmF5LXRvLXBvaW50ZXIgZGVjYXkgZm9yIEMrKy4g ICovCi0rCSAgICAgIGFyZzIgPSBkZWZhdWx0X2NvbnZlcnNpb24gKGFyZzIpOwotKwkgICAgICBh cmcyX3R5cGUgPSBUUkVFX1RZUEUgKGFyZzIpOwotIAkgICAgfQotIAotIAkgIC8qIEZpbmQgdGhl IGJ1aWx0LWluIHRvIG1ha2Ugc3VyZSBhIGNvbXBhdGlibGUgb25lIGV4aXN0czsgaWYgbm90Ci0t LS0gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Bvd2VycGMvcHI4MjExMi5jCShub25leGlzdGVu dCkKLSsrKyBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcG93ZXJwYy9wcjgyMTEyLmMJKHJldmlz aW9uIDI1MjAyOCkKLUBAIC0wLDAgKzEsMTYgQEAKLSsvKiBQUiB0YXJnZXQvODIxMTIgKi8KLSsv KiB7IGRnLWRvIGNvbXBpbGUgfSAqLwotKy8qIHsgZGctcmVxdWlyZS1lZmZlY3RpdmUtdGFyZ2V0 IHBvd2VycGNfYWx0aXZlY19vayB9ICovCi0rLyogeyBkZy1vcHRpb25zICItbWFsdGl2ZWMgLXN0 ZD1nbnU5MCIgfSAqLwotKwotKyNpbmNsdWRlIDxhbHRpdmVjLmg+Ci0rCi0rc3RydWN0IF9fYXR0 cmlidXRlX18oKGFsaWduZWQgKDE2KSkpIFMgeyB1bnNpZ25lZCBjaGFyIGNbNjRdOyB9IGJhciAo dm9pZCk7Ci0rdmVjdG9yIHVuc2lnbmVkIGNoYXIgdjsKLSsKLSt2b2lkCi0rZm9vICh2b2lkKQot K3sKLSsgIHZlY19sZCAoMCwgYmFyICgpLmMpOwkvKiB7IGRnLWVycm9yICJpbnZhbGlkIHBhcmFt ZXRlciBjb21iaW5hdGlvbiBmb3IgQWx0aVZlYyBpbnRyaW5zaWMiIH0gKi8KLSsgIHZlY19zdCAo diwgMCwgYmFyICgpLmMpOwkvKiB7IGRnLWVycm9yICJpbnZhbGlkIHBhcmFtZXRlciBjb21iaW5h dGlvbiBmb3IgQWx0aVZlYyBpbnRyaW5zaWMiIH0gKi8KLSt9Ci0tLS0gZ2NjL3Rlc3RzdWl0ZS9n KysuZGcvZXh0L2FsdGl2ZWMtMTguQwkobm9uZXhpc3RlbnQpCi0rKysgZ2NjL3Rlc3RzdWl0ZS9n KysuZGcvZXh0L2FsdGl2ZWMtMTguQwkocmV2aXNpb24gMjUyMDI4KQotQEAgLTAsMCArMSwxNCBA QAotKy8vIFBSIHRhcmdldC84MjExMgotKy8vIHsgZGctZG8gY29tcGlsZSB7IHRhcmdldCBwb3dl cnBjKi0qLSogfSB9Ci0rLy8geyBkZy1yZXF1aXJlLWVmZmVjdGl2ZS10YXJnZXQgcG93ZXJwY19h bHRpdmVjX29rIH0KLSsvLyB7IGRnLW9wdGlvbnMgIi1tYWx0aXZlYyIgfQotKwotKyNpbmNsdWRl IDxhbHRpdmVjLmg+Ci0rCi0rX19hdHRyaWJ1dGVfXygoYWxpZ25lZCAoMTYpKSkgZXh0ZXJuIGNv bnN0IHVuc2lnbmVkIGNoYXIgY1sxNl07Ci0rCi0rdm9pZAotK2ZvbyAodm9pZCkKLSt7Ci0rICB2 ZWNfbGQgKDAsIGMpOwotK30KCmRpZmYgLS1naXQgYS9nY2M3LXByODM1NTYucGF0Y2ggYi9nY2M3 LXByODM1NTYucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzRmZjVj NAotLS0gL2Rldi9udWxsCisrKyBiL2djYzctcHI4MzU1Ni5wYXRjaApAQCAtMCwwICsxLDg0IEBA CisyMDE3LTEyLTIzICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4KKworCVBSIGMr Ky84MzU1NgorCSogdHJlZS5jIChyZXBsYWNlX3BsYWNlaG9sZGVyc19yKTogUGFzcyBOVUxMIGFz IGxhc3QgYXJndW1lbnQgdG8KKwljcF93YWxrX3RyZWUgaW5zdGVhZCBvZiBkLT5wc2V0LiAgSWYg bm9uLVRSRUVfQ09OU1RBTlQgYW5kCisJbm9uLVBMQUNFSE9MREVSX0VYUFIgdHJlZSBoYXMgYmVl biBzZWVuIGFscmVhZHksIHNldCAqd2Fsa19zdWJ0cmVlcworCXRvIGZhbHNlIGFuZCByZXR1cm4u CisJKHJlcGxhY2VfcGxhY2Vob2xkZXJzKTogUGFzcyBOVUxMIGluc3RlYWQgb2YgJnBzZXQgYXMg bGFzdCBhcmd1bWVudAorCXRvIGNwX3dhbGtfdHJlZS4KKworCSogZysrLmRnL2NwcDB4L3ByODM1 NTYuQzogTmV3IHRlc3QuCisKKy0tLSBnY2MvY3AvdHJlZS5jLmpqCTIwMTctMTItMTUgMTY6MTA6 MzcuMDAwMDAwMDAwICswMTAwCisrKysgZ2NjL2NwL3RyZWUuYwkyMDE3LTEyLTIyIDIzOjI0OjE2 LjcyMDQyODU0OCArMDEwMAorQEAgLTMxMDYsNiArMzEwNiwxMSBAQCByZXBsYWNlX3BsYWNlaG9s ZGVyc19yICh0cmVlKiB0LCBpbnQqIHdhCisgICAgICAgeworIAljb25zdHJ1Y3Rvcl9lbHQgKmNl OworIAl2ZWM8Y29uc3RydWN0b3JfZWx0LHZhX2djPiAqdiA9IENPTlNUUlVDVE9SX0VMVFMgKCp0 KTsKKysJaWYgKGQtPnBzZXQtPmFkZCAoKnQpKQorKwkgIHsKKysJICAgICp3YWxrX3N1YnRyZWVz ID0gZmFsc2U7CisrCSAgICByZXR1cm4gTlVMTF9UUkVFOworKwkgIH0KKyAJZm9yICh1bnNpZ25l ZCBpID0gMDsgdmVjX3NhZmVfaXRlcmF0ZSAodiwgaSwgJmNlKTsgKytpKQorIAkgIHsKKyAJICAg IHRyZWUgKnZhbHAgPSAmY2UtPnZhbHVlOworQEAgLTMxMjUsNyArMzEzMCw3IEBAIHJlcGxhY2Vf cGxhY2Vob2xkZXJzX3IgKHRyZWUqIHQsIGludCogd2EKKyAJCSAgdmFscCA9ICZUQVJHRVRfRVhQ Ul9JTklUSUFMICgqdmFscCk7CisgCSAgICAgIH0KKyAJICAgIGQtPm9iaiA9IHN1Ym9iOworLQkg ICAgY3Bfd2Fsa190cmVlICh2YWxwLCByZXBsYWNlX3BsYWNlaG9sZGVyc19yLCBkYXRhXywgZC0+ cHNldCk7CisrCSAgICBjcF93YWxrX3RyZWUgKHZhbHAsIHJlcGxhY2VfcGxhY2Vob2xkZXJzX3Is IGRhdGFfLCBOVUxMKTsKKyAJICAgIGQtPm9iaiA9IG9iajsKKyAJICB9CisgCSp3YWxrX3N1YnRy ZWVzID0gZmFsc2U7CitAQCAtMzEzMyw2ICszMTM4LDggQEAgcmVwbGFjZV9wbGFjZWhvbGRlcnNf ciAodHJlZSogdCwgaW50KiB3YQorICAgICAgIH0KKyAKKyAgICAgZGVmYXVsdDoKKysgICAgICBp ZiAoZC0+cHNldC0+YWRkICgqdCkpCisrCSp3YWxrX3N1YnRyZWVzID0gZmFsc2U7CisgICAgICAg YnJlYWs7CisgICAgIH0KKyAKK0BAIC0zMTYxLDcgKzMxNjgsNyBAQCByZXBsYWNlX3BsYWNlaG9s ZGVycyAodHJlZSBleHAsIHRyZWUgb2JqCisgICByZXBsYWNlX3BsYWNlaG9sZGVyc190IGRhdGEg PSB7IG9iaiwgZmFsc2UsICZwc2V0IH07CisgICBpZiAoVFJFRV9DT0RFIChleHApID09IFRBUkdF VF9FWFBSKQorICAgICB0cCA9ICZUQVJHRVRfRVhQUl9JTklUSUFMIChleHApOworLSAgY3Bfd2Fs a190cmVlICh0cCwgcmVwbGFjZV9wbGFjZWhvbGRlcnNfciwgJmRhdGEsICZwc2V0KTsKKysgIGNw X3dhbGtfdHJlZSAodHAsIHJlcGxhY2VfcGxhY2Vob2xkZXJzX3IsICZkYXRhLCBOVUxMKTsKKyAg IGlmIChzZWVuX3ApCisgICAgICpzZWVuX3AgPSBkYXRhLnNlZW47CisgICByZXR1cm4gZXhwOwor LS0tIGdjYy90ZXN0c3VpdGUvZysrLmRnL2NwcDB4L3ByODM1NTYuQy5qagkyMDE3LTEyLTIyIDIz OjMwOjEwLjc3MTEyNjAwMiArMDEwMAorKysrIGdjYy90ZXN0c3VpdGUvZysrLmRnL2NwcDB4L3By ODM1NTYuQwkyMDE3LTEyLTIyIDIzOjI5OjIxLjAwMDAwMDAwMCArMDEwMAorQEAgLTAsMCArMSwy OCBAQAorKy8vIFBSIGMrKy84MzU1NgorKy8vIHsgZGctZG8gcnVuIHsgdGFyZ2V0IGMrKzExIH0g fQorKworK2ludAorK2ZvbyAoKQorK3sKKysgIHJldHVybiAxOworK30KKysKKytzdHJ1Y3QgQQor K3sKKysgIGludCBhID0gZm9vICgpOworKyAgaW50IGIgPSAxOworKyAgaW50IGMgPSBhID8gMSAq IGIgOiAyICogYjsKKyt9OworKworK3N0cnVjdCBCCisreworKyAgQSBkIHt9OworK307CisrCisr aW50CisrbWFpbiAoKQorK3sKKysgIEIgZSB7fTsKKysgIGlmIChlLmQuYyAhPSAxKQorKyAgICBf X2J1aWx0aW5fYWJvcnQgKCk7CisrfQo=