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: 11.0.1-0.4 Date: Mon, 29 Jun 2026 12:29:13 GMT Message-ID: <178273615345.1.18395293581947251970.rpms-gcc-cee86e0c2374@fedoraproject.org> List-ID: X-Git-Repo: rpms/gcc X-Git-Branch: rhel-f41-base X-Git-Rev: cee86e0c2374f1207988b5f89fb7dd74c6932b83 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2NjCkJyYW5jaCA6 IHJoZWwtZjQxLWJhc2UKQ29tbWl0IDogY2VlODZlMGMyMzc0ZjEyMDc5ODhiNWY4OWZiN2RkNzRj NjkzMmI4MwpBdXRob3IgOiBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPgpEYXRlICAg OiAyMDIxLTA0LTA1VDE1OjUyOjU4KzAyOjAwClN0YXRzICA6ICszMi8tNDgwIGluIDIgZmlsZShz KQpVUkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2djYy9jL2NlZTg2 ZTBjMjM3NGYxMjA3OTg4YjVmODlmYjdkZDc0YzY5MzJiODM/YnJhbmNoPXJoZWwtZjQxLWJhc2UK CkxvZzoKMTEuMC4xLTAuNAoKLS0tCmRpZmYgLS1naXQgYS9nY2Muc3BlYyBiL2djYy5zcGVjCmlu ZGV4IDQwNDY1YTIuLjdlZDlhN2MgMTAwNjQ0Ci0tLSBhL2djYy5zcGVjCisrKyBiL2djYy5zcGVj CkBAIC0xLDUgKzEsNSBAQAotJWdsb2JhbCBEQVRFIDIwMjEwMzI0Ci0lZ2xvYmFsIGdpdHJldiBh YWUwMWM4NjRiYWVlZmFkYzliYjUzMTJkZTM4OTExNmY3N2NjYjgzCislZ2xvYmFsIERBVEUgMjAy MTA0MDUKKyVnbG9iYWwgZ2l0cmV2IDY2OWYzNjM2ODFiYTEwMjJlYjVmY2RiMjUwMmFkMGVmMDFj YjhmMzcKICVnbG9iYWwgZ2NjX3ZlcnNpb24gMTEuMC4xCiAlZ2xvYmFsIGdjY19tYWpvciAxMQog IyBOb3RlLCBnY2NfcmVsZWFzZSBtdXN0IGJlIGludGVnZXIsIGlmIHlvdSB3YW50IHRvIGFkZCBz dWZmaXhlcyB0bwpAQCAtMTE5LDcgKzExOSw3IEBACiBTdW1tYXJ5OiBWYXJpb3VzIGNvbXBpbGVy cyAoQywgQysrLCBPYmplY3RpdmUtQywgLi4uKQogTmFtZTogZ2NjCiBWZXJzaW9uOiAle2djY192 ZXJzaW9ufQotUmVsZWFzZTogJXtnY2NfcmVsZWFzZX0uMyV7P2Rpc3R9CitSZWxlYXNlOiAle2dj Y19yZWxlYXNlfS40JXs/ZGlzdH0KICMgbGliZ2NjLCBsaWJnZm9ydHJhbiwgbGliZ29tcCwgbGli c3RkYysrIGFuZCBjcnRzdHVmZiBoYXZlCiAjIEdDQyBSdW50aW1lIEV4Y2VwdGlvbi4KIExpY2Vu c2U6IEdQTHYzKyBhbmQgR1BMdjMrIHdpdGggZXhjZXB0aW9ucyBhbmQgR1BMdjIrIHdpdGggZXhj ZXB0aW9ucyBhbmQgTEdQTHYyKyBhbmQgQlNECkBAIC0yNjUsOCArMjY1LDcgQEAgUGF0Y2gxMDog Z2NjMTEtV25vLWZvcm1hdC1zZWN1cml0eS5wYXRjaAogUGF0Y2gxMTogZ2NjMTEtcmgxNTc0OTM2 LnBhdGNoCiBQYXRjaDEyOiBnY2MxMS1kLXNoYXJlZC1saWJwaG9ib3MucGF0Y2gKIFBhdGNoMTM6 IGdjYzExLXByOTE3MTAucGF0Y2gKLVBhdGNoMTQ6IGdjYzExLXByOTk0OTAucGF0Y2gKLVBhdGNo MTU6IGdjYzExLXByOTkzNDEtcmV2ZXJ0LnBhdGNoCitQYXRjaDE0OiBnY2MxMS1wcjk5MzQxLXJl dmVydC5wYXRjaAogCiBQYXRjaDEwMDogZ2NjMTEtZm9ydHJhbi1mZGVjLWR1cGxpY2F0ZXMucGF0 Y2gKIFBhdGNoMTAxOiBnY2MxMS1mb3J0cmFuLWZsb2dpY2FsLWFzLWludGVnZXIucGF0Y2gKQEAg LTc5MCw4ICs3ODksNyBAQCB0byBOVmlkaWEgUFRYIGNhcGFibGUgZGV2aWNlcyBpZiBhdmFpbGFi bGUuCiAlZW5kaWYKICVwYXRjaDEyIC1wMCAtYiAuZC1zaGFyZWQtbGlicGhvYm9zfgogJXBhdGNo MTMgLXAwIC1iIC5wcjkxNzEwfgotJXBhdGNoMTQgLXAwIC1iIC5wcjk5NDkwfgotJXBhdGNoMTUg LXAwIC1iIC5wcjk5MzQxLXJldmVydH4KKyVwYXRjaDE0IC1wMCAtYiAucHI5OTM0MS1yZXZlcnR+ CiAKICVpZiAwJXs/cmhlbH0gPj0gOQogJXBhdGNoMTAwIC1wMSAtYiAuZm9ydHJhbi1mZGVjLWR1 cGxpY2F0ZXN+CkBAIC0zMTI2LDYgKzMxMjQsMzMgQEAgZW5kCiAlZW5kaWYKIAogJWNoYW5nZWxv ZworKiBNb24gQXByICA1IDIwMjEgSmFrdWIgSmVsaW5layA8amFrdWJAcmVkaGF0LmNvbT4gMTEu MC4xLTAuNAorLSB1cGRhdGUgZnJvbSB0cnVuaworICAtIFBScyBhZGEvOTk4MDIsIGFuYWx5emVy LzkzNjk1LCBhbmFseXplci85OTA0NCwgYW5hbHl6ZXIvOTk3MTYsCisJYW5hbHl6ZXIvOTk3NzEs IGJvb3RzdHJhcC85ODg2MCwgYysrLzkwNjY0LCBjKysvOTEyMTcsIGMrKy85MTQxNiwKKwljKysv OTQ3NTEsIGMrKy85NzkwMCwgYysrLzk3OTM4LCBjKysvOTgzNTIsIGMrKy85OTMzMSwgYysrLzk5 NDQ1LAorCWMrKy85OTU2NSwgYysrLzk5NTgzLCBjKysvOTk1ODQsIGMrKy85OTU4NiwgYysrLzk5 NjQzLCBjKysvOTk2NzIsCisJYysrLzk5NzA1LCBjKysvOTk3NDUsIGMrKy85OTc5MCwgYysrLzk5 ODE1LCBjKysvOTk4MzEsIGMrKy85OTg2OSwKKwlkLzkxNTk1LCBkLzk5NjkxLCBkZWJ1Zy85OTMz NCwgZm9ydHJhbi85OTM2OSwgZm9ydHJhbi85OTYwMiwKKwlmb3J0cmFuLzk5NjUxLCBmb3J0cmFu Lzk5ODE4LCBmb3J0cmFuLzk5ODQwLCBpcGEvOTgyNjUsIGlwYS85OTEyMiwKKwlpcGEvOTk0NjYs IGlwYS85OTc1MSwgbGlic3RkYysrLzk5NTMzLCBsdG8vOTk0NDcsIG1pZGRsZS1lbmQvNjUxODIs CisJcnRsLW9wdGltaXphdGlvbi85NzE0MSwgcnRsLW9wdGltaXphdGlvbi85ODcyNiwKKwlydGwt b3B0aW1pemF0aW9uLzk5ODYzLCB0YXJnZXQvOTY5NzQsIHRhcmdldC85NzY1MywgdGFyZ2V0Lzk4 MTE5LAorCXRhcmdldC85ODEzNiwgdGFyZ2V0Lzk4MjA5LCB0YXJnZXQvOTkwMzcsIHRhcmdldC85 OTEzMywgdGFyZ2V0Lzk5MjE2LAorCXRhcmdldC85OTU1NSwgdGFyZ2V0Lzk5NzE4LCB0YXJnZXQv OTk3MjQsIHRhcmdldC85OTcyNywgdGFyZ2V0Lzk5NzQ0LAorCXRhcmdldC85OTc1MywgdGFyZ2V0 Lzk5NzY2LCB0YXJnZXQvOTk3NzMsIHRhcmdldC85OTc4NiwgdGFyZ2V0Lzk5ODA4LAorCXRhcmdl dC85OTgxMywgdGFyZ2V0Lzk5ODIwLCB0YXJnZXQvOTk4MjIsIHRlc3RzdWl0ZS85ODEyNSwKKwl0 cmVlLW9wdGltaXphdGlvbi80ODQ4MywgdHJlZS1vcHRpbWl6YXRpb24vNTUwNjAsCisJdHJlZS1v cHRpbWl6YXRpb24vNTk5NzAsIHRyZWUtb3B0aW1pemF0aW9uLzYxMTEyLAorCXRyZWUtb3B0aW1p emF0aW9uLzYxNjc3LCB0cmVlLW9wdGltaXphdGlvbi82MTg2OSwKKwl0cmVlLW9wdGltaXphdGlv bi85NjU3MywgdHJlZS1vcHRpbWl6YXRpb24vOTY5NzQsCisJdHJlZS1vcHRpbWl6YXRpb24vOTcw MDksIHRyZWUtb3B0aW1pemF0aW9uLzk4MjY4LAorCXRyZWUtb3B0aW1pemF0aW9uLzk5NzI2LCB0 cmVlLW9wdGltaXphdGlvbi85OTc0NiwKKwl0cmVlLW9wdGltaXphdGlvbi85OTc3NywgdHJlZS1v cHRpbWl6YXRpb24vOTk4MDcsCisJdHJlZS1vcHRpbWl6YXRpb24vOTk4MjQsIHRyZWUtb3B0aW1p emF0aW9uLzk5ODI1LAorCXRyZWUtb3B0aW1pemF0aW9uLzk5ODU2LCB0cmVlLW9wdGltaXphdGlv bi85OTg2MywKKwl0cmVlLW9wdGltaXphdGlvbi85OTg4MgorCiAqIFdlZCBNYXIgMjQgMjAyMSBK YWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPiAxMS4wLjEtMC4zCiAtIHVwZGF0ZSBmcm9t IHRydW5rCiAgIC0gUFJzIGFuYWx5emVyLzk5NjE0LCBjKysvOTkyMzksIGMrKy85OTI4MywgYysr Lzk5MzE4LCBjKysvOTk0MjUsIGMrKy85OTQ1NiwKCmRpZmYgLS1naXQgYS9nY2MxMS1wcjk5NDkw LnBhdGNoIGIvZ2NjMTEtcHI5OTQ5MC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggYWJkYTEyNi4uMDAwMDAwMAotLS0gYS9nY2MxMS1wcjk5NDkwLnBhdGNoCisrKyAvZGV2L251 bGwKQEAgLTEsNDczICswLDAgQEAKLTIwMjEtMDMtMTIgIEpha3ViIEplbGluZWsgIDxqYWt1YkBy ZWRoYXQuY29tPgotCi0JUFIgZGVidWcvOTk0OTAKLQkqIGR3YXJmMm91dC5jIChkZWJ1Z19yYW5n ZXNfZHdvX3NlY3Rpb24pOiBOZXcgdmFyaWFibGUuCi0JKERXX1JBTkdFU19JRFhfU0tFTEVUT04p OiBEZWZpbmUuCi0JKHN0cnVjdCBkd19yYW5nZXMpOiBBZGQgYmVnaW5fZW50cnkgYW5kIGVuZF9l bnRyeSBtZW1iZXJzLgotCShERUJVR19EV09fUk5HTElTVFNfU0VDVElPTik6IERlZmluZS4KLQko YWRkX3Jhbmdlc19udW0pOiBBZGp1c3QgciBpbml0aWFsaXplciBmb3IgYWRkaXRpb24gb2YgKl9l bnRyeQotCW1lbWJlcnMuCi0JKGFkZF9yYW5nZXNfYnlfbGFiZWxzKTogRm9yIC1nc3BsaXQtZHdh cmYgYW5kIGZvcmNlX2RpcmVjdCwKLQlzZXQgaWR4IHRvIERXX1JBTkdFU19JRFhfU0tFTEVUT04u Ci0JKGluZGV4X3JuZ2xpc3RzKTogRG9uJ3Qgc2V0IHItPmlkeCBpZiBpdCBpcyBlcXVhbCB0bwot CURXX1JBTkdFU19JRFhfU0tFTEVUT04uICBJbml0aWFsaXplIHItPmJlZ2luX2VudHJ5IGFuZAot CXItPmVuZF9lbnRyeSBmb3IgLWdzcGxpdC1kd2FyZiBpZiB0aG9zZSB3aWxsIGJlIG5lZWRlZCBi eQotCW91dHB1dF9ybmdsaXN0cy4KLQkob3V0cHV0X3JuZ2xpc3RzKTogQWRkIERXTyBhcmd1bWVu dC4gIElmIHRydWUsIHN3aXRjaCB0bwotCWRlYnVnX3Jhbmdlc19kd29fc2VjdGlvbiByYXRoZXIg dGhhbiBkZWJ1Z19yYW5nZXNfc2VjdGlvbi4KLQlBZGp1c3QgbDEvbDIgbGFiZWwgaW5kZXhlcy4g IE9ubHkgb3V0cHV0IHRoZSBvZmZzZXQgdGFibGUgd2hlbgotCWR3byBpcyB0cnVlIGFuZCBkb24n dCBpbmNsdWRlIGluIHRoZXJlIHRoZSBza2VsZXRvbiByYW5nZQotCWVudHJ5IGlmIHByZXNlbnQu ICBGb3IgLWdzcGxpdC1kd2FyZiwgc2tpcCByYW5nZXMgdGhhdCBiZWxvbmcKLQl0byB0aGUgb3Ro ZXIgcm5nbGlzdHMgc2VjdGlvbi4gIENoYW5nZSByZXR1cm4gdHlwZSBmcm9tIHZvaWQKLQl0byBi b29sIGFuZCByZXR1cm4gdHJ1ZSBpZiB0aGVyZSBhcmUgYW55IHJhbmdlIGVudHJpZXMgZm9yCi0J dGhlIG90aGVyIHNlY3Rpb24uICBGb3IgZHdhcmZfc3BsaXRfZGVidWdfaW5mbyB1c2UKLQlEV19S TEVfc3RhcnR4X2VuZHgsIERXX1JMRV9zdGFydHhfbGVuZ3RoIGFuZCBEV19STEVfYmFzZV9hZGRy ZXNzeAotCWVudHJpZXMgaW5zdGVhZCBvZiBEV19STEVfc3RhcnRfZW5kLCBEV19STEVfc3RhcnRf bGVuZ3RoIGFuZAotCURXX1JMRV9iYXNlX2FkZHJlc3MuCi0JKGluaXRfc2VjdGlvbnNfYW5kX2xh YmVscyk6IEluaXRpYWxpemUgZGVidWdfcmFuZ2VzX2R3b19zZWN0aW9uCi0JaWYgLWdzcGxpdC1k d2FyZiBhbmQgRFdBUkYgPj0gNS4gIEFkanVzdCByYW5nZXNfc2VjdGlvbl9sYWJlbAotCWFuZCBy YW5nZV9iYXNlX2xhYmVsIGluZGV4ZXMuCi0JKGR3YXJmMm91dF9maW5pc2gpOiBDYWxsIGluZGV4 X3JuZ2xpc3RzIGVhcmxpZXIgYmVmb3JlIGZpbmFsaXppbmcKLQkuZGVidWdfYWRkci4gIE5ldmVy IGVtaXQgRFdfQVRfcm5nbGlzdHNfYmFzZSBhdHRyaWJ1dGUuICBGb3IKLQktZ3NwbGl0LWR3YXJm IGFuZCBEV0FSRiA+PSA1IGNhbGwgb3V0cHV0X3JuZ2xpc3RzIHVwIHRvIHR3aWNlCi0Jd2l0aCBk aWZmZXJlbnQgZHdvIGFyZ3VtZW50cy4KLQkoZHdhcmYyb3V0X2NfZmluYWxpemUpOiBDbGVhciBk ZWJ1Z19yYW5nZXNfZHdvX3NlY3Rpb24uCi0KLS0tLSBnY2MvZHdhcmYyb3V0LmMuamoJMjAyMS0w My0xMCAxNzozNjozNy4wMzc1MzcxMjkgKzAxMDAKLSsrKyBnY2MvZHdhcmYyb3V0LmMJMjAyMS0w My0xMSAxMjo1MDowMC40MDI0MTg4NzMgKzAxMDAKLUBAIC0xNzEsNiArMTcxLDcgQEAgc3RhdGlj IEdUWSgoKSkgc2VjdGlvbiAqZGVidWdfbGluZV9zdHJfcwotIHN0YXRpYyBHVFkoKCkpIHNlY3Rp b24gKmRlYnVnX3N0cl9kd29fc2VjdGlvbjsKLSBzdGF0aWMgR1RZKCgpKSBzZWN0aW9uICpkZWJ1 Z19zdHJfb2Zmc2V0c19zZWN0aW9uOwotIHN0YXRpYyBHVFkoKCkpIHNlY3Rpb24gKmRlYnVnX3Jh bmdlc19zZWN0aW9uOwotK3N0YXRpYyBHVFkoKCkpIHNlY3Rpb24gKmRlYnVnX3Jhbmdlc19kd29f c2VjdGlvbjsKLSBzdGF0aWMgR1RZKCgpKSBzZWN0aW9uICpkZWJ1Z19mcmFtZV9zZWN0aW9uOwot IAotIC8qIE1heGltdW0gc2l6ZSAoaW4gYnl0ZXMpIG9mIGFuIGFydGlmaWNpYWxseSBnZW5lcmF0 ZWQgbGFiZWwuICAqLwotQEAgLTMxNTIsMTEgKzMxNTMsMTcgQEAgc3RydWN0IEdUWSgoKSkgZHdf cmFuZ2VzIHsKLSAgIC8qIElmIHRoaXMgaXMgcG9zaXRpdmUsIGl0J3MgYSBibG9jayBudW1iZXIs IG90aGVyd2lzZSBpdCdzIGEKLSAgICAgIGJpdHdpc2UtbmVnYXRlZCBpbmRleCBpbnRvIGR3X3Jh bmdlc19ieV9sYWJlbC4gICovCi0gICBpbnQgbnVtOwotKyAgLyogSWYgaWR4IGlzIGVxdWFsIHRv IERXX1JBTkdFU19JRFhfU0tFTEVUT04sIGl0IHNob3VsZCBiZSBlbWl0dGVkCi0rICAgICBpbnRv IC5kZWJ1Z19ybmdsaXN0cyBzZWN0aW9uIHJhdGhlciB0aGFuIC5kZWJ1Z19ybmdsaXN0cy5kd28K LSsgICAgIGZvciAtZ3NwbGl0LWR3YXJmIGFuZCBEV0FSRiA+PSA1LiAgKi8KLSsjZGVmaW5lIERX X1JBTkdFU19JRFhfU0tFTEVUT04gKCgxVSA8PCAzMSkgLSAxKQotICAgLyogSW5kZXggZm9yIHRo ZSByYW5nZSBsaXN0IGZvciBEV19GT1JNX3JuZ2xpc3R4LiAgKi8KLSAgIHVuc2lnbmVkIGludCBp ZHggOiAzMTsKLSAgIC8qIFRydWUgaWYgdGhpcyByYW5nZSBtaWdodCBiZSBwb3NzaWJseSBpbiBh IGRpZmZlcmVudCBzZWN0aW9uCi0gICAgICBmcm9tIHByZXZpb3VzIGVudHJ5LiAgKi8KLSAgIHVu c2lnbmVkIGludCBtYXliZV9uZXdfc2VjIDogMTsKLSsgIGFkZHJfdGFibGVfZW50cnkgKmJlZ2lu X2VudHJ5OwotKyAgYWRkcl90YWJsZV9lbnRyeSAqZW5kX2VudHJ5OwotIH07Ci0gCi0gLyogQSBz dHJ1Y3R1cmUgdG8gaG9sZCBhIG1hY2luZm8gZW50cnkuICAqLwotQEAgLTQwOTksNiArNDEwNiw5 IEBAIG5ld19hZGRyX2xvY19kZXNjciAocnR4IGFkZHIsIGVudW0gZHRwcmUKLSAjaWZuZGVmIERF QlVHX1JOR0xJU1RTX1NFQ1RJT04KLSAjZGVmaW5lIERFQlVHX1JOR0xJU1RTX1NFQ1RJT04JIi5k ZWJ1Z19ybmdsaXN0cyIKLSAjZW5kaWYKLSsjaWZuZGVmIERFQlVHX0RXT19STkdMSVNUU19TRUNU SU9OCi0rI2RlZmluZSBERUJVR19EV09fUk5HTElTVFNfU0VDVElPTgkiLmRlYnVnX3JuZ2xpc3Rz LmR3byIKLSsjZW5kaWYKLSAjaWZuZGVmIERFQlVHX0xJTkVfU1RSX1NFQ1RJT04KLSAjZGVmaW5l IERFQlVHX0xJTkVfU1RSX1NFQ1RJT04gICIuZGVidWdfbGluZV9zdHIiCi0gI2VuZGlmCi1AQCAt MTE3NTEsNyArMTE3NjEsNyBAQCBvdXRwdXRfYXJhbmdlcyAodm9pZCkKLSBzdGF0aWMgdW5zaWdu ZWQgaW50Ci0gYWRkX3Jhbmdlc19udW0gKGludCBudW0sIGJvb2wgbWF5YmVfbmV3X3NlYykKLSB7 Ci0tICBkd19yYW5nZXMgciA9IHsgTlVMTCwgbnVtLCAwLCBtYXliZV9uZXdfc2VjIH07Ci0rICBk d19yYW5nZXMgciA9IHsgTlVMTCwgbnVtLCAwLCBtYXliZV9uZXdfc2VjLCBOVUxMLCBOVUxMIH07 Ci0gICB2ZWNfc2FmZV9wdXNoIChyYW5nZXNfdGFibGUsIHIpOwotICAgcmV0dXJuIHZlY19zYWZl X2xlbmd0aCAocmFuZ2VzX3RhYmxlKSAtIDE7Ci0gfQotQEAgLTExNzk2LDYgKzExODA2LDggQEAg YWRkX3Jhbmdlc19ieV9sYWJlbHMgKGR3X2RpZV9yZWYgZGllLCBjbwotICAgICAgIGFkZF9BVF9y YW5nZV9saXN0IChkaWUsIERXX0FUX3Jhbmdlcywgb2Zmc2V0LCBmb3JjZV9kaXJlY3QpOwotICAg ICAgICphZGRlZCA9IHRydWU7Ci0gICAgICAgbm90ZV9ybmdsaXN0X2hlYWQgKG9mZnNldCk7Ci0r ICAgICAgaWYgKGR3YXJmX3NwbGl0X2RlYnVnX2luZm8gJiYgZm9yY2VfZGlyZWN0KQotKwkoKnJh bmdlc190YWJsZSlbb2Zmc2V0XS5pZHggPSBEV19SQU5HRVNfSURYX1NLRUxFVE9OOwotICAgICB9 Ci0gfQotIAotQEAgLTExOTIxLDIzICsxMTkzMyw4NyBAQCBhc21fb3V0cHV0c19kZWJ1Z19saW5l X3N0ciAodm9pZCkKLSB9Ci0gCi0gCi0tLyogQXNzaWduIC5kZWJ1Z19ybmdsaXN0cyBpbmRleGVz LiAgKi8KLSsvKiBBc3NpZ24gLmRlYnVnX3JuZ2xpc3RzIGluZGV4ZXMgYW5kIHVuaXF1ZSBpbmRl eGVzIGludG8gdGhlIGRlYnVnX2FkZHIKLSsgICBzZWN0aW9uIHdoZW4gbmVlZGVkLiAgKi8KLSAK LSBzdGF0aWMgdm9pZAotIGluZGV4X3JuZ2xpc3RzICh2b2lkKQotIHsKLSAgIHVuc2lnbmVkIGk7 Ci0gICBkd19yYW5nZXMgKnI7Ci0rICBib29sIGJhc2UgPSBmYWxzZTsKLSsgIHVuc2lnbmVkIGlu dCBsZW4gPSB2ZWNfc2FmZV9sZW5ndGggKHJhbmdlc190YWJsZSk7Ci0gCi0gICBGT1JfRUFDSF9W RUNfU0FGRV9FTFQgKHJhbmdlc190YWJsZSwgaSwgcikKLS0gICAgaWYgKHItPmxhYmVsKQotLSAg ICAgIHItPmlkeCA9IHJuZ2xpc3RfaWR4Kys7Ci0rICAgIHsKLSsgICAgICBpZiAoci0+bGFiZWwg JiYgci0+aWR4ICE9IERXX1JBTkdFU19JRFhfU0tFTEVUT04pCi0rCXItPmlkeCA9IHJuZ2xpc3Rf aWR4Kys7Ci0rCi0rICAgICAgaWYgKCFoYXZlX211bHRpcGxlX2Z1bmN0aW9uX3NlY3Rpb25zKQot Kwljb250aW51ZTsKLSsgICAgICBpbnQgYmxvY2tfbnVtID0gci0+bnVtOwotKyAgICAgIGlmIChI QVZFX0FTX0xFQjEyOCAmJiAoci0+bGFiZWwgfHwgci0+bWF5YmVfbmV3X3NlYykpCi0rCWJhc2Ug PSBmYWxzZTsKLSsgICAgICBpZiAoYmxvY2tfbnVtID4gMCkKLSsJewotKwkgIGNoYXIgYmxhYmVs W01BWF9BUlRJRklDSUFMX0xBQkVMX0JZVEVTXTsKLSsJICBjaGFyIGVsYWJlbFtNQVhfQVJUSUZJ Q0lBTF9MQUJFTF9CWVRFU107Ci0rCi0rCSAgQVNNX0dFTkVSQVRFX0lOVEVSTkFMX0xBQkVMIChi bGFiZWwsIEJMT0NLX0JFR0lOX0xBQkVMLCBibG9ja19udW0pOwotKwkgIEFTTV9HRU5FUkFURV9J TlRFUk5BTF9MQUJFTCAoZWxhYmVsLCBCTE9DS19FTkRfTEFCRUwsIGJsb2NrX251bSk7Ci0rCi0r CSAgaWYgKEhBVkVfQVNfTEVCMTI4KQotKwkgICAgewotKwkgICAgICBpZiAoIWJhc2UpCi0rCQl7 Ci0rCQkgIGR3X3JhbmdlcyAqcjIgPSBOVUxMOwotKwkJICBpZiAoaSA8IGxlbiAtIDEpCi0rCQkg ICAgcjIgPSAmKCpyYW5nZXNfdGFibGUpW2kgKyAxXTsKLSsJCSAgaWYgKHIyCi0rCQkgICAgICAm JiByMi0+bnVtICE9IDAKLSsJCSAgICAgICYmIHIyLT5sYWJlbCA9PSBOVUxMCi0rCQkgICAgICAm JiAhcjItPm1heWJlX25ld19zZWMpCi0rCQkgICAgewotKwkJICAgICAgci0+YmVnaW5fZW50cnkK LSsJCQk9IGFkZF9hZGRyX3RhYmxlX2VudHJ5ICh4c3RyZHVwIChibGFiZWwpLAotKwkJCQkJCWF0 ZV9raW5kX2xhYmVsKTsKLSsJCSAgICAgIGJhc2UgPSB0cnVlOwotKwkJICAgIH0KLSsJCX0KLSsJ ICAgICAgaWYgKGJhc2UpCi0rCQljb250aW51ZTsKLSsJICAgICAgci0+YmVnaW5fZW50cnkKLSsJ CT0gYWRkX2FkZHJfdGFibGVfZW50cnkgKHhzdHJkdXAgKGJsYWJlbCksIGF0ZV9raW5kX2xhYmVs KTsKLSsJICAgIH0KLSsJICBlbHNlCi0rCSAgICB7Ci0rCSAgICAgIHItPmJlZ2luX2VudHJ5Ci0r CQk9IGFkZF9hZGRyX3RhYmxlX2VudHJ5ICh4c3RyZHVwIChibGFiZWwpLCBhdGVfa2luZF9sYWJl bCk7Ci0rCSAgICAgIHItPmVuZF9lbnRyeQotKwkJPSBhZGRfYWRkcl90YWJsZV9lbnRyeSAoeHN0 cmR1cCAoZWxhYmVsKSwgYXRlX2tpbmRfbGFiZWwpOwotKwkgICAgfQotKwl9Ci0rCi0rICAgICAg LyogTmVnYXRpdmUgYmxvY2tfbnVtIHN0YW5kcyBmb3IgYW4gaW5kZXggaW50byByYW5nZXNfYnlf bGFiZWwuICAqLwotKyAgICAgIGVsc2UgaWYgKGJsb2NrX251bSA8IDApCi0rCXsKLSsJICBpbnQg bGFiX2lkeCA9IC0gYmxvY2tfbnVtIC0gMTsKLSsJICBjb25zdCBjaGFyICpibGFiZWwgPSAoKnJh bmdlc19ieV9sYWJlbClbbGFiX2lkeF0uYmVnaW47Ci0rCSAgY29uc3QgY2hhciAqZWxhYmVsID0g KCpyYW5nZXNfYnlfbGFiZWwpW2xhYl9pZHhdLmVuZDsKLSsKLSsJICByLT5iZWdpbl9lbnRyeQot KwkgICAgPSBhZGRfYWRkcl90YWJsZV9lbnRyeSAoeHN0cmR1cCAoYmxhYmVsKSwgYXRlX2tpbmRf bGFiZWwpOwotKwkgIGlmICghSEFWRV9BU19MRUIxMjgpCi0rCSAgICByLT5lbmRfZW50cnkKLSsJ ICAgICAgPSBhZGRfYWRkcl90YWJsZV9lbnRyeSAoeHN0cmR1cCAoZWxhYmVsKSwgYXRlX2tpbmRf bGFiZWwpOwotKwl9Ci0rICAgIH0KLSB9Ci0gCi0tLyogRW1pdCAuZGVidWdfcm5nbGlzdHMgc2Vj dGlvbi4gICovCi0rLyogRW1pdCAuZGVidWdfcm5nbGlzdHMgb3IgKHdoZW4gRFdPIGlzIHRydWUp IC5kZWJ1Z19ybmdsaXN0cy5kd28gc2VjdGlvbi4gICovCi0gCi0tc3RhdGljIHZvaWQKLS1vdXRw dXRfcm5nbGlzdHMgKHVuc2lnbmVkIGdlbmVyYXRpb24pCi0rc3RhdGljIGJvb2wKLStvdXRwdXRf cm5nbGlzdHMgKHVuc2lnbmVkIGdlbmVyYXRpb24sIGJvb2wgZHdvKQotIHsKLSAgIHVuc2lnbmVk IGk7Ci0gICBkd19yYW5nZXMgKnI7Ci1AQCAtMTE5NDUsMTQgKzEyMDIxLDE5IEBAIG91dHB1dF9y bmdsaXN0cyAodW5zaWduZWQgZ2VuZXJhdGlvbikKLSAgIGNoYXIgbDJbTUFYX0FSVElGSUNJQUxf TEFCRUxfQllURVNdOwotICAgY2hhciBiYXNlYnVmW01BWF9BUlRJRklDSUFMX0xBQkVMX0JZVEVT XTsKLSAKLS0gIHN3aXRjaF90b19zZWN0aW9uIChkZWJ1Z19yYW5nZXNfc2VjdGlvbik7Ci0tICBB U01fT1VUUFVUX0xBQkVMIChhc21fb3V0X2ZpbGUsIHJhbmdlc19zZWN0aW9uX2xhYmVsKTsKLSsg IGlmIChkd28pCi0rICAgIHN3aXRjaF90b19zZWN0aW9uIChkZWJ1Z19yYW5nZXNfZHdvX3NlY3Rp b24pOwotKyAgZWxzZQotKyAgICB7Ci0rICAgICAgc3dpdGNoX3RvX3NlY3Rpb24gKGRlYnVnX3Jh bmdlc19zZWN0aW9uKTsKLSsgICAgICBBU01fT1VUUFVUX0xBQkVMIChhc21fb3V0X2ZpbGUsIHJh bmdlc19zZWN0aW9uX2xhYmVsKTsKLSsgICAgfQotICAgLyogVGhlcmUgYXJlIHVwIHRvIDQgdW5p cXVlIHJhbmdlcyBsYWJlbHMgcGVyIGdlbmVyYXRpb24uCi0gICAgICBTZWUgYWxzbyBpbml0X3Nl Y3Rpb25zX2FuZF9sYWJlbHMuICAqLwotICAgQVNNX0dFTkVSQVRFX0lOVEVSTkFMX0xBQkVMIChs MSwgREVCVUdfUkFOR0VTX1NFQ1RJT05fTEFCRUwsCi0tCQkJICAgICAgIDIgKyBnZW5lcmF0aW9u ICogNCk7Ci0rCQkJICAgICAgIDIgKyAyICogZHdvICsgZ2VuZXJhdGlvbiAqIDYpOwotICAgQVNN X0dFTkVSQVRFX0lOVEVSTkFMX0xBQkVMIChsMiwgREVCVUdfUkFOR0VTX1NFQ1RJT05fTEFCRUws Ci0tCQkJICAgICAgIDMgKyBnZW5lcmF0aW9uICogNCk7Ci0rCQkJICAgICAgIDMgKyAyICogZHdv ICsgZ2VuZXJhdGlvbiAqIDYpOwotICAgaWYgKERXQVJGX0lOSVRJQUxfTEVOR1RIX1NJWkUgLSBk d2FyZl9vZmZzZXRfc2l6ZSA9PSA0KQotICAgICBkdzJfYXNtX291dHB1dF9kYXRhICg0LCAweGZm ZmZmZmZmLAotIAkJCSAiSW5pdGlhbCBsZW5ndGggZXNjYXBlIHZhbHVlIGluZGljYXRpbmcgIgot QEAgLTExOTY5LDEzICsxMjA1MCwxMyBAQCBvdXRwdXRfcm5nbGlzdHMgKHVuc2lnbmVkIGdlbmVy YXRpb24pCi0gICAgICB0aGUgb2Zmc2V0IHRhYmxlIHBsdXMgY29ycmVzcG9uZGluZyBEV19GT1JN X3JuZ2xpc3R4IHVsZWIxMjggaW5kZXhlcwotICAgICAgaW50byBpdCBhcmUgdXN1YWxseSBsYXJn ZXIgdGhhbiBqdXN0IERXX0ZPUk1fc2VjX29mZnNldCBvZmZzZXRzCi0gICAgICBpbnRvIHRoZSAu ZGVidWdfcm5nbGlzdHMgc2VjdGlvbi4gICovCi0tICBkdzJfYXNtX291dHB1dF9kYXRhICg0LCBk d2FyZl9zcGxpdF9kZWJ1Z19pbmZvID8gcm5nbGlzdF9pZHggOiAwLAotKyAgZHcyX2FzbV9vdXRw dXRfZGF0YSAoNCwgZHdvID8gcm5nbGlzdF9pZHggOiAwLAotIAkJICAgICAgICJPZmZzZXQgRW50 cnkgQ291bnQiKTsKLS0gIGlmIChkd2FyZl9zcGxpdF9kZWJ1Z19pbmZvKQotKyAgaWYgKGR3bykK LSAgICAgewotICAgICAgIEFTTV9PVVRQVVRfTEFCRUwgKGFzbV9vdXRfZmlsZSwgcmFuZ2VzX2Jh c2VfbGFiZWwpOwotICAgICAgIEZPUl9FQUNIX1ZFQ19TQUZFX0VMVCAocmFuZ2VzX3RhYmxlLCBp LCByKQotLQlpZiAoci0+bGFiZWwpCi0rCWlmIChyLT5sYWJlbCAmJiByLT5pZHggIT0gRFdfUkFO R0VTX0lEWF9TS0VMRVRPTikKLSAJICBkdzJfYXNtX291dHB1dF9kZWx0YSAoZHdhcmZfb2Zmc2V0 X3NpemUsIHItPmxhYmVsLAotIAkJCQlyYW5nZXNfYmFzZV9sYWJlbCwgTlVMTCk7Ci0gICAgIH0K LUBAIC0xMTk4MywxNSArMTIwNjQsMzIgQEAgb3V0cHV0X3JuZ2xpc3RzICh1bnNpZ25lZCBnZW5l cmF0aW9uKQotICAgY29uc3QgY2hhciAqbGFiID0gIiI7Ci0gICB1bnNpZ25lZCBpbnQgbGVuID0g dmVjX3NhZmVfbGVuZ3RoIChyYW5nZXNfdGFibGUpOwotICAgY29uc3QgY2hhciAqYmFzZSA9IE5V TEw7Ci0rICBib29sIHNraXBwaW5nID0gZmFsc2U7Ci0rICBib29sIHJldCA9IGZhbHNlOwotICAg Rk9SX0VBQ0hfVkVDX1NBRkVfRUxUIChyYW5nZXNfdGFibGUsIGksIHIpCi0gICAgIHsKLSAgICAg ICBpbnQgYmxvY2tfbnVtID0gci0+bnVtOwotIAotICAgICAgIGlmIChyLT5sYWJlbCkKLSAJewot KwkgIGlmIChkd2FyZl9zcGxpdF9kZWJ1Z19pbmZvKQotKwkgICAgewotKwkgICAgICBpZiAoKHIt PmlkeCA9PSBEV19SQU5HRVNfSURYX1NLRUxFVE9OKSA9PSBkd28pCi0rCQl7Ci0rCQkgIHJldCA9 IHRydWU7Ci0rCQkgIHNraXBwaW5nID0gdHJ1ZTsKLSsJCSAgY29udGludWU7Ci0rCQl9Ci0rCSAg ICB9Ci0gCSAgQVNNX09VVFBVVF9MQUJFTCAoYXNtX291dF9maWxlLCByLT5sYWJlbCk7Ci0gCSAg bGFiID0gci0+bGFiZWw7Ci0gCX0KLSsgICAgICBpZiAoc2tpcHBpbmcpCi0rCXsKLSsJICBpZiAo YmxvY2tfbnVtID09IDApCi0rCSAgICBza2lwcGluZyA9IGZhbHNlOwotKwkgIGNvbnRpbnVlOwot Kwl9Ci0gICAgICAgaWYgKEhBVkVfQVNfTEVCMTI4ICYmIChyLT5sYWJlbCB8fCByLT5tYXliZV9u ZXdfc2VjKSkKLSAJYmFzZSA9IE5VTEw7Ci0gICAgICAgaWYgKGJsb2NrX251bSA+IDApCi1AQCAt MTIwMjcsMTAgKzEyMTI1LDIzIEBAIG91dHB1dF9ybmdsaXN0cyAodW5zaWduZWQgZ2VuZXJhdGlv bikKLSAJCSAgICAgICYmIHIyLT5sYWJlbCA9PSBOVUxMCi0gCQkgICAgICAmJiAhcjItPm1heWJl X25ld19zZWMpCi0gCQkgICAgewotLQkJICAgICAgZHcyX2FzbV9vdXRwdXRfZGF0YSAoMSwgRFdf UkxFX2Jhc2VfYWRkcmVzcywKLS0JCQkJCSAgICJEV19STEVfYmFzZV9hZGRyZXNzICglcykiLCBs YWIpOwotLQkJICAgICAgZHcyX2FzbV9vdXRwdXRfYWRkciAoRFdBUkYyX0FERFJfU0laRSwgYmxh YmVsLAotLQkJCQkJICAgIkJhc2UgYWRkcmVzcyAoJXMpIiwgbGFiKTsKLSsJCSAgICAgIGlmIChk d2FyZl9zcGxpdF9kZWJ1Z19pbmZvKQotKwkJCXsKLSsJCQkgIGR3Ml9hc21fb3V0cHV0X2RhdGEg KDEsIERXX1JMRV9iYXNlX2FkZHJlc3N4LAotKwkJCQkJICAgICAgICJEV19STEVfYmFzZV9hZGRy ZXNzeCAoJXMpIiwKLSsJCQkJCSAgICAgICBsYWIpOwotKwkJCSAgZHcyX2FzbV9vdXRwdXRfZGF0 YV91bGViMTI4IChyLT5iZWdpbl9lbnRyeS0+aW5kZXgsCi0rCQkJCQkJICAgICAgICJCYXNlIGFk ZHJlc3MgaW5kZXggIgotKwkJCQkJCSAgICAgICAiKCVzKSIsIGJsYWJlbCk7Ci0rCQkJfQotKwkJ ICAgICAgZWxzZQotKwkJCXsKLSsJCQkgIGR3Ml9hc21fb3V0cHV0X2RhdGEgKDEsIERXX1JMRV9i YXNlX2FkZHJlc3MsCi0rCQkJCQkgICAgICAgIkRXX1JMRV9iYXNlX2FkZHJlc3MgKCVzKSIsCi0r CQkJCQkgICAgICAgbGFiKTsKLSsJCQkgIGR3Ml9hc21fb3V0cHV0X2FkZHIgKERXQVJGMl9BRERS X1NJWkUsIGJsYWJlbCwKLSsJCQkJCSAgICAgICAiQmFzZSBhZGRyZXNzICglcykiLCBsYWIpOwot KwkJCX0KLSAJCSAgICAgIHN0cmNweSAoYmFzZWJ1ZiwgYmxhYmVsKTsKLSAJCSAgICAgIGJhc2Ug PSBiYXNlYnVmOwotIAkJICAgIH0KLUBAIC0xMjA0NSwxMyArMTIxNTYsMzUgQEAgb3V0cHV0X3Ju Z2xpc3RzICh1bnNpZ25lZCBnZW5lcmF0aW9uKQotIAkJCQkJCSJSYW5nZSBlbmQgYWRkcmVzcyAo JXMpIiwgbGFiKTsKLSAJCSAgY29udGludWU7Ci0gCQl9Ci0tCSAgICAgIGR3Ml9hc21fb3V0cHV0 X2RhdGEgKDEsIERXX1JMRV9zdGFydF9sZW5ndGgsCi0tCQkJCSAgICJEV19STEVfc3RhcnRfbGVu Z3RoICglcykiLCBsYWIpOwotLQkgICAgICBkdzJfYXNtX291dHB1dF9hZGRyIChEV0FSRjJfQURE Ul9TSVpFLCBibGFiZWwsCi0tCQkJCSAgICJSYW5nZSBiZWdpbiBhZGRyZXNzICglcykiLCBsYWIp OwotKwkgICAgICBpZiAoZHdhcmZfc3BsaXRfZGVidWdfaW5mbykKLSsJCXsKLSsJCSAgZHcyX2Fz bV9vdXRwdXRfZGF0YSAoMSwgRFdfUkxFX3N0YXJ0eF9sZW5ndGgsCi0rCQkJCSAgICAgICAiRFdf UkxFX3N0YXJ0eF9sZW5ndGggKCVzKSIsIGxhYik7Ci0rCQkgIGR3Ml9hc21fb3V0cHV0X2RhdGFf dWxlYjEyOCAoci0+YmVnaW5fZW50cnktPmluZGV4LAotKwkJCQkJICAgICAgICJSYW5nZSBiZWdp biBhZGRyZXNzIGluZGV4ICIKLSsJCQkJCSAgICAgICAiKCVzKSIsIGJsYWJlbCk7Ci0rCQl9Ci0r CSAgICAgIGVsc2UKLSsJCXsKLSsJCSAgZHcyX2FzbV9vdXRwdXRfZGF0YSAoMSwgRFdfUkxFX3N0 YXJ0X2xlbmd0aCwKLSsJCQkJICAgICAgICJEV19STEVfc3RhcnRfbGVuZ3RoICglcykiLCBsYWIp OwotKwkJICBkdzJfYXNtX291dHB1dF9hZGRyIChEV0FSRjJfQUREUl9TSVpFLCBibGFiZWwsCi0r CQkJCSAgICAgICAiUmFuZ2UgYmVnaW4gYWRkcmVzcyAoJXMpIiwgbGFiKTsKLSsJCX0KLSAJICAg ICAgZHcyX2FzbV9vdXRwdXRfZGVsdGFfdWxlYjEyOCAoZWxhYmVsLCBibGFiZWwsCi0gCQkJCQkg ICAgIlJhbmdlIGxlbmd0aCAoJXMpIiwgbGFiKTsKLSAJICAgIH0KLSsJICBlbHNlIGlmIChkd2Fy Zl9zcGxpdF9kZWJ1Z19pbmZvKQotKwkgICAgewotKwkgICAgICBkdzJfYXNtX291dHB1dF9kYXRh ICgxLCBEV19STEVfc3RhcnR4X2VuZHgsCi0rCQkJCSAgICJEV19STEVfc3RhcnR4X2VuZHggKCVz KSIsIGxhYik7Ci0rCSAgICAgIGR3Ml9hc21fb3V0cHV0X2RhdGFfdWxlYjEyOCAoci0+YmVnaW5f ZW50cnktPmluZGV4LAotKwkJCQkJICAgIlJhbmdlIGJlZ2luIGFkZHJlc3MgaW5kZXggIgotKwkJ CQkJICAgIiglcykiLCBibGFiZWwpOwotKwkgICAgICBkdzJfYXNtX291dHB1dF9kYXRhX3VsZWIx MjggKHItPmVuZF9lbnRyeS0+aW5kZXgsCi0rCQkJCQkgICAiUmFuZ2UgZW5kIGFkZHJlc3MgaW5k ZXggIgotKwkJCQkJICAgIiglcykiLCBlbGFiZWwpOwotKwkgICAgfQotIAkgIGVsc2UKLSAJICAg IHsKLSAJICAgICAgZHcyX2FzbV9vdXRwdXRfZGF0YSAoMSwgRFdfUkxFX3N0YXJ0X2VuZCwKLUBA IC0xMjA3NCwxMyArMTIyMDcsMzUgQEAgb3V0cHV0X3JuZ2xpc3RzICh1bnNpZ25lZCBnZW5lcmF0 aW9uKQotIAkgICAgZ2NjX3VucmVhY2hhYmxlICgpOwotIAkgIGlmIChIQVZFX0FTX0xFQjEyOCkK LSAJICAgIHsKLS0JICAgICAgZHcyX2FzbV9vdXRwdXRfZGF0YSAoMSwgRFdfUkxFX3N0YXJ0X2xl bmd0aCwKLS0JCQkJICAgIkRXX1JMRV9zdGFydF9sZW5ndGggKCVzKSIsIGxhYik7Ci0tCSAgICAg IGR3Ml9hc21fb3V0cHV0X2FkZHIgKERXQVJGMl9BRERSX1NJWkUsIGJsYWJlbCwKLS0JCQkJICAg IlJhbmdlIGJlZ2luIGFkZHJlc3MgKCVzKSIsIGxhYik7Ci0rCSAgICAgIGlmIChkd2FyZl9zcGxp dF9kZWJ1Z19pbmZvKQotKwkJewotKwkJICBkdzJfYXNtX291dHB1dF9kYXRhICgxLCBEV19STEVf c3RhcnR4X2xlbmd0aCwKLSsJCQkJICAgICAgICJEV19STEVfc3RhcnR4X2xlbmd0aCAoJXMpIiwg bGFiKTsKLSsJCSAgZHcyX2FzbV9vdXRwdXRfZGF0YV91bGViMTI4IChyLT5iZWdpbl9lbnRyeS0+ aW5kZXgsCi0rCQkJCQkgICAgICAgIlJhbmdlIGJlZ2luIGFkZHJlc3MgaW5kZXggIgotKwkJCQkJ ICAgICAgICIoJXMpIiwgYmxhYmVsKTsKLSsJCX0KLSsJICAgICAgZWxzZQotKwkJewotKwkJICBk dzJfYXNtX291dHB1dF9kYXRhICgxLCBEV19STEVfc3RhcnRfbGVuZ3RoLAotKwkJCQkgICAgICAg IkRXX1JMRV9zdGFydF9sZW5ndGggKCVzKSIsIGxhYik7Ci0rCQkgIGR3Ml9hc21fb3V0cHV0X2Fk ZHIgKERXQVJGMl9BRERSX1NJWkUsIGJsYWJlbCwKLSsJCQkJICAgICAgICJSYW5nZSBiZWdpbiBh ZGRyZXNzICglcykiLCBsYWIpOwotKwkJfQotIAkgICAgICBkdzJfYXNtX291dHB1dF9kZWx0YV91 bGViMTI4IChlbGFiZWwsIGJsYWJlbCwKLSAJCQkJCSAgICAiUmFuZ2UgbGVuZ3RoICglcykiLCBs YWIpOwotIAkgICAgfQotKwkgIGVsc2UgaWYgKGR3YXJmX3NwbGl0X2RlYnVnX2luZm8pCi0rCSAg ICB7Ci0rCSAgICAgIGR3Ml9hc21fb3V0cHV0X2RhdGEgKDEsIERXX1JMRV9zdGFydHhfZW5keCwK LSsJCQkJICAgIkRXX1JMRV9zdGFydHhfZW5keCAoJXMpIiwgbGFiKTsKLSsJICAgICAgZHcyX2Fz bV9vdXRwdXRfZGF0YV91bGViMTI4IChyLT5iZWdpbl9lbnRyeS0+aW5kZXgsCi0rCQkJCQkgICAi UmFuZ2UgYmVnaW4gYWRkcmVzcyBpbmRleCAiCi0rCQkJCQkgICAiKCVzKSIsIGJsYWJlbCk7Ci0r CSAgICAgIGR3Ml9hc21fb3V0cHV0X2RhdGFfdWxlYjEyOCAoci0+ZW5kX2VudHJ5LT5pbmRleCwK LSsJCQkJCSAgICJSYW5nZSBlbmQgYWRkcmVzcyBpbmRleCAiCi0rCQkJCQkgICAiKCVzKSIsIGVs YWJlbCk7Ci0rCSAgICB9Ci0gCSAgZWxzZQotIAkgICAgewotIAkgICAgICBkdzJfYXNtX291dHB1 dF9kYXRhICgxLCBEV19STEVfc3RhcnRfZW5kLAotQEAgLTEyMDk2LDYgKzEyMjUxLDcgQEAgb3V0 cHV0X3JuZ2xpc3RzICh1bnNpZ25lZCBnZW5lcmF0aW9uKQotIAkJCSAgICAgIkRXX1JMRV9lbmRf b2ZfbGlzdCAoJXMpIiwgbGFiKTsKLSAgICAgfQotICAgQVNNX09VVFBVVF9MQUJFTCAoYXNtX291 dF9maWxlLCBsMik7Ci0rICByZXR1cm4gcmV0OwotIH0KLSAKLSAvKiBEYXRhIHN0cnVjdHVyZSBj b250YWluaW5nIGluZm9ybWF0aW9uIGFib3V0IGlucHV0IGZpbGVzLiAgKi8KLUBAIC0yODgyMyw2 ICsyODk3OSwxMCBAQCBpbml0X3NlY3Rpb25zX2FuZF9sYWJlbHMgKGJvb2wgZWFybHlfbHRvCi0g CSAgZGVidWdfbWFjaW5mb19zZWN0aW9uID0gZ2V0X3NlY3Rpb24gKGRlYnVnX21hY2luZm9fc2Vj dGlvbl9uYW1lLAotIAkJCQkJICAgICAgIFNFQ1RJT05fREVCVUcgfCBTRUNUSU9OX0VYQ0xVREUs Ci0gCQkJCQkgICAgICAgTlVMTCk7Ci0rCSAgaWYgKGR3YXJmX3ZlcnNpb24gPj0gNSkKLSsJICAg IGRlYnVnX3Jhbmdlc19kd29fc2VjdGlvbgotKwkgICAgICA9IGdldF9zZWN0aW9uIChERUJVR19E V09fUk5HTElTVFNfU0VDVElPTiwKLSsJCQkgICAgIFNFQ1RJT05fREVCVUcgfCBTRUNUSU9OX0VY Q0xVREUsIE5VTEwpOwotIAl9Ci0gICAgICAgZGVidWdfYXJhbmdlc19zZWN0aW9uID0gZ2V0X3Nl Y3Rpb24gKERFQlVHX0FSQU5HRVNfU0VDVElPTiwKLSAJCQkJCSAgIFNFQ1RJT05fREVCVUcsIE5V TEwpOwotQEAgLTI4ODU3LDE1ICsyOTAxNywxNSBAQCBpbml0X3NlY3Rpb25zX2FuZF9sYWJlbHMg KGJvb2wgZWFybHlfbHRvCi0gICBBU01fR0VORVJBVEVfSU5URVJOQUxfTEFCRUwgKGRlYnVnX2xp bmVfc2VjdGlvbl9sYWJlbCwKLSAJCQkgICAgICAgREVCVUdfTElORV9TRUNUSU9OX0xBQkVMLAot IAkJCSAgICAgICBpbml0X3NlY3Rpb25zX2FuZF9sYWJlbHNfZ2VuZXJhdGlvbik7Ci0tICAvKiBU aGVyZSBhcmUgdXAgdG8gNCB1bmlxdWUgcmFuZ2VzIGxhYmVscyBwZXIgZ2VuZXJhdGlvbi4KLSsg IC8qIFRoZXJlIGFyZSB1cCB0byA2IHVuaXF1ZSByYW5nZXMgbGFiZWxzIHBlciBnZW5lcmF0aW9u LgotICAgICAgU2VlIGFsc28gb3V0cHV0X3JuZ2xpc3RzLiAgKi8KLSAgIEFTTV9HRU5FUkFURV9J TlRFUk5BTF9MQUJFTCAocmFuZ2VzX3NlY3Rpb25fbGFiZWwsCi0gCQkJICAgICAgIERFQlVHX1JB TkdFU19TRUNUSU9OX0xBQkVMLAotLQkJCSAgICAgICBpbml0X3NlY3Rpb25zX2FuZF9sYWJlbHNf Z2VuZXJhdGlvbiAqIDQpOwotKwkJCSAgICAgICBpbml0X3NlY3Rpb25zX2FuZF9sYWJlbHNfZ2Vu ZXJhdGlvbiAqIDYpOwotICAgaWYgKGR3YXJmX3ZlcnNpb24gPj0gNSAmJiBkd2FyZl9zcGxpdF9k ZWJ1Z19pbmZvKQotICAgICBBU01fR0VORVJBVEVfSU5URVJOQUxfTEFCRUwgKHJhbmdlc19iYXNl X2xhYmVsLAotIAkJCQkgREVCVUdfUkFOR0VTX1NFQ1RJT05fTEFCRUwsCi0tCQkJCSAxICsgaW5p dF9zZWN0aW9uc19hbmRfbGFiZWxzX2dlbmVyYXRpb24gKiA0KTsKLSsJCQkJIDEgKyBpbml0X3Nl Y3Rpb25zX2FuZF9sYWJlbHNfZ2VuZXJhdGlvbiAqIDYpOwotICAgQVNNX0dFTkVSQVRFX0lOVEVS TkFMX0xBQkVMIChkZWJ1Z19hZGRyX3NlY3Rpb25fbGFiZWwsCi0gCQkJICAgICAgIERFQlVHX0FE RFJfU0VDVElPTl9MQUJFTCwKLSAJCQkgICAgICAgaW5pdF9zZWN0aW9uc19hbmRfbGFiZWxzX2dl bmVyYXRpb24pOwotQEAgLTMxNjY1LDYgKzMxODI1LDkgQEAgZHdhcmYyb3V0X2ZpbmlzaCAoY29u c3QgY2hhciAqZmlsZW5hbWUpCi0gCSAgaW5kZXhfbG9jYXRpb25fbGlzdHMgKGNvbXBfdW5pdF9k aWUgKCkpOwotIAl9Ci0gCi0rICAgICAgaWYgKGR3YXJmX3ZlcnNpb24gPj0gNSAmJiAhdmVjX3Nh ZmVfaXNfZW1wdHkgKHJhbmdlc190YWJsZSkpCi0rCWluZGV4X3JuZ2xpc3RzICgpOwotKwotICAg ICAgIGlmIChhZGRyX2luZGV4X3RhYmxlICE9IE5VTEwpCi0gICAgICAgICB7Ci0gICAgICAgICAg IHVuc2lnbmVkIGludCBpbmRleCA9IDA7Ci1AQCAtMzE3MzAsOSArMzE4OTMsNiBAQCBkd2FyZjJv dXRfZmluaXNoIChjb25zdCBjaGFyICpmaWxlbmFtZSkKLSAgICAgICBpbnQgbWFyazsKLSAgICAg ICBzdHJ1Y3QgbWQ1X2N0eCBjdHg7Ci0gCi0tICAgICAgaWYgKGR3YXJmX3ZlcnNpb24gPj0gNSAm JiAhdmVjX3NhZmVfaXNfZW1wdHkgKHJhbmdlc190YWJsZSkpCi0tCWluZGV4X3JuZ2xpc3RzICgp OwotLQotICAgICAgIC8qIENvbXB1dGUgYSBjaGVja3N1bSBvZiB0aGUgY29tcF91bml0IHRvIHVz ZSBhcyB0aGUgZHdvX2lkLiAgKi8KLSAgICAgICBtZDVfaW5pdF9jdHggKCZjdHgpOwotICAgICAg IG1hcmsgPSAwOwotQEAgLTMxNzUyLDEwICszMTkxMiw3IEBAIGR3YXJmMm91dF9maW5pc2ggKGNv bnN0IGNoYXIgKmZpbGVuYW1lKQotICAgICAgICAgY29tcC11bml0IERJRS4gICovCi0gICAgICAg aWYgKCF2ZWNfc2FmZV9pc19lbXB0eSAocmFuZ2VzX3RhYmxlKSkKLSAJewotLQkgIGlmIChkd2Fy Zl92ZXJzaW9uID49IDUpCi0tCSAgICBhZGRfQVRfbGluZXB0ciAobWFpbl9jb21wX3VuaXRfZGll LCBEV19BVF9ybmdsaXN0c19iYXNlLAotLQkJCSAgICByYW5nZXNfYmFzZV9sYWJlbCk7Ci0tCSAg ZWxzZQotKwkgIGlmIChkd2FyZl92ZXJzaW9uIDwgNSkKLSAJICAgIGFkZF9BVF9saW5lcHRyICht YWluX2NvbXBfdW5pdF9kaWUsIERXX0FUX0dOVV9yYW5nZXNfYmFzZSwKLSAJCQkgICAgcmFuZ2Vz X3NlY3Rpb25fbGFiZWwpOwotIAl9Ci1AQCAtMzE4MzMsNyArMzE5OTAsMjYgQEAgZHdhcmYyb3V0 X2ZpbmlzaCAoY29uc3QgY2hhciAqZmlsZW5hbWUpCi0gICBpZiAoIXZlY19zYWZlX2lzX2VtcHR5 IChyYW5nZXNfdGFibGUpKQotICAgICB7Ci0gICAgICAgaWYgKGR3YXJmX3ZlcnNpb24gPj0gNSkK LS0Jb3V0cHV0X3JuZ2xpc3RzIChnZW5lcmF0aW9uKTsKLSsJewotKwkgIGlmIChkd2FyZl9zcGxp dF9kZWJ1Z19pbmZvKQotKwkgICAgewotKwkgICAgICAvKiBXZSBkb24ndCBrbm93IHJpZ2h0IG5v dyB3aGV0aGVyIHRoZXJlIGFyZSBhbnkKLSsJCSByYW5nZXMgZm9yIC5kZWJ1Z19ybmdsaXN0cyBh bmQgYW55IGZvciAuZGVidWdfcm5nbGlzdHMuZHdvLgotKwkJIERlcGVuZGluZyBvbiBpbnRvIHdo aWNoIG9mIHRob3NlIHR3byBiZWxvbmdzIHRoZSBmaXJzdAotKwkJIHJhbmdlc190YWJsZSBlbnRy eSwgZW1pdCB0aGF0IHNlY3Rpb24gZmlyc3QgYW5kIHRoYXQKLSsJCSBvdXRwdXRfcm5nbGlzdHMg Y2FsbCB3aWxsIHJldHVybiBpZiB0aGUgb3RoZXIga2luZCBvZgotKwkJIHJhbmdlcyBuZWVkcyB0 byBiZSBlbWl0dGVkIGFzIHdlbGwuICAqLwotKwkgICAgICBpZiAoKCpyYW5nZXNfdGFibGUpWzBd LmlkeCA9PSBEV19SQU5HRVNfSURYX1NLRUxFVE9OKQotKwkJewotKwkJICBpZiAob3V0cHV0X3Ju Z2xpc3RzIChnZW5lcmF0aW9uLCBmYWxzZSkpCi0rCQkgICAgb3V0cHV0X3JuZ2xpc3RzIChnZW5l cmF0aW9uLCB0cnVlKTsKLSsJCX0KLSsJICAgICAgZWxzZSBpZiAob3V0cHV0X3JuZ2xpc3RzIChn ZW5lcmF0aW9uLCB0cnVlKSkKLSsJCW91dHB1dF9ybmdsaXN0cyAoZ2VuZXJhdGlvbiwgZmFsc2Up OwotKwkgICAgfQotKwkgIGVsc2UKLSsJICAgIG91dHB1dF9ybmdsaXN0cyAoZ2VuZXJhdGlvbiwg ZmFsc2UpOwotKwl9Ci0gICAgICAgZWxzZQotIAlvdXRwdXRfcmFuZ2VzICgpOwotICAgICB9Ci1A QCAtMzI0NTcsNiArMzI2MzMsNyBAQCBkd2FyZjJvdXRfY19maW5hbGl6ZSAodm9pZCkKLSAgIGRl YnVnX3N0cl9kd29fc2VjdGlvbiA9IE5VTEw7Ci0gICBkZWJ1Z19zdHJfb2Zmc2V0c19zZWN0aW9u ID0gTlVMTDsKLSAgIGRlYnVnX3Jhbmdlc19zZWN0aW9uID0gTlVMTDsKLSsgIGRlYnVnX3Jhbmdl c19kd29fc2VjdGlvbiA9IE5VTEw7Ci0gICBkZWJ1Z19mcmFtZV9zZWN0aW9uID0gTlVMTDsKLSAg IGZkZV92ZWMgPSBOVUxMOwotICAgZGVidWdfc3RyX2hhc2ggPSBOVUxMOwo=