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.8.0-0.14 Date: Mon, 29 Jun 2026 12:25:47 GMT Message-ID: <178273594714.1.14129067606495251520.rpms-gcc-7789476ecb41@fedoraproject.org> List-ID: X-Git-Repo: rpms/gcc X-Git-Branch: rhel-f41-base X-Git-Rev: 7789476ecb41f240499f4201f1d8e573f3b8f612 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2NjCkJyYW5jaCA6 IHJoZWwtZjQxLWJhc2UKQ29tbWl0IDogNzc4OTQ3NmVjYjQxZjI0MDQ5OWY0MjAxZjFkOGU1NzNm M2I4ZjYxMgpBdXRob3IgOiBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPgpEYXRlICAg OiAyMDEzLTAyLTIwVDE3OjEzOjI0KzAxOjAwClN0YXRzICA6ICs1MjMvLTQwNiBpbiA5IGZpbGUo cykKVVJMICAgIDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9nY2MvYy83Nzg5 NDc2ZWNiNDFmMjQwNDk5ZjQyMDFmMWQ4ZTU3M2YzYjhmNjEyP2JyYW5jaD1yaGVsLWY0MS1iYXNl CgpMb2c6CjQuOC4wLTAuMTQKCi0tLQpkaWZmIC0tZ2l0IGEvLmdpdGlnbm9yZSBiLy5naXRpZ25v cmUKaW5kZXggNTdmMGFhOS4uN2Y1ZDIwNSAxMDA2NDQKLS0tIGEvLmdpdGlnbm9yZQorKysgYi8u Z2l0aWdub3JlCkBAIC02MiwzICs2Miw0IEBACiAvZ2NjLTQuOC4wLTIwMTMwMjExLnRhci5iejIK IC9nY2MtNC44LjAtMjAxMzAyMTMudGFyLmJ6MgogL2djYy00LjguMC0yMDEzMDIxNS50YXIuYnoy CisvZ2NjLTQuOC4wLTIwMTMwMjIwLnRhci5iejIKCmRpZmYgLS1naXQgYS9nY2Muc3BlYyBiL2dj Yy5zcGVjCmluZGV4IGY1NGM4Y2MuLjg4NjEyOTcgMTAwNjQ0Ci0tLSBhL2djYy5zcGVjCisrKyBi L2djYy5zcGVjCkBAIC0xLDUgKzEsNSBAQAotJWdsb2JhbCBEQVRFIDIwMTMwMjE1Ci0lZ2xvYmFs IFNWTlJFViAxOTYwODQKKyVnbG9iYWwgREFURSAyMDEzMDIyMAorJWdsb2JhbCBTVk5SRVYgMTk2 MTczCiAlZ2xvYmFsIGdjY192ZXJzaW9uIDQuOC4wCiAjIE5vdGUsIGdjY19yZWxlYXNlIG11c3Qg YmUgaW50ZWdlciwgaWYgeW91IHdhbnQgdG8gYWRkIHN1ZmZpeGVzIHRvCiAjICV7cmVsZWFzZX0s IGFwcGVuZCB0aGVtIGFmdGVyICV7Z2NjX3JlbGVhc2V9IG9uIFJlbGVhc2U6IGxpbmUuCkBAIC0x MDIsNyArMTAyLDcgQEAgQnVpbGRSZXF1aXJlczogYmludXRpbHMgPj0gMi4yMC41MS4wLjItMTIK ICMgLXN0YXRpYyBpcyB1c2VkIHNldmVyYWwgdGltZXMuCiBCdWlsZFJlcXVpcmVzOiBnbGliYy1z dGF0aWMKIEJ1aWxkUmVxdWlyZXM6IHpsaWItZGV2ZWwsIGdldHRleHQsIGRlamFnbnUsIGJpc29u LCBmbGV4LCBzaGFydXRpbHMKLUJ1aWxkUmVxdWlyZXM6IHRleGluZm8sIHRleGluZm8tdGV4CitC dWlsZFJlcXVpcmVzOiB0ZXhpbmZvLCB0ZXhpbmZvLXRleCwgL3Vzci9iaW4vcG9kMm1hbgogQnVp bGRSZXF1aXJlczogc3lzdGVtdGFwLXNkdC1kZXZlbCA+PSAxLjMKICVpZiAle2J1aWxkX2dvfQog QnVpbGRSZXF1aXJlczogaG9zdG5hbWUKQEAgLTE5NCw5ICsxOTQsMTEgQEAgUGF0Y2gxMDogZ2Nj NDgtcHIzODc1Ny5wYXRjaAogUGF0Y2gxMTogZ2NjNDgtbGlic3RkYysrLWRvY3MucGF0Y2gKIFBh dGNoMTI6IGdjYzQ4LW5vLWFkZC1uZWVkZWQucGF0Y2gKIFBhdGNoMTM6IGdjYzQ4LXByNTU2MDgu cGF0Y2gKLVBhdGNoMTQ6IGdjYzQ4LWFzYW4tZml4LnBhdGNoCi1QYXRjaDE1OiBnY2M0OC1wcjU0 MTE3LnBhdGNoCi1QYXRjaDE2OiBnY2M0OC1hc2FuLXNwZWVkdXAucGF0Y2gKK1BhdGNoMTQ6IGdj YzQ4LWFzYW4tc3BlZWR1cC5wYXRjaAorUGF0Y2gxNTogZ2NjNDgtcHI1NjI1OC5wYXRjaAorUGF0 Y2gxNjogZ2NjNDgtcHI1NjQwNS5wYXRjaAorUGF0Y2gxNzogZ2NjNDgtdW51c2VkLWxvY2Fscy5w YXRjaAorUGF0Y2gxODogZ2NjNDgtcHI1NjI2NS5wYXRjaAogCiBQYXRjaDEwMDA6IGZhc3RqYXIt MC45Ny1zZWdmYXVsdC5wYXRjaAogUGF0Y2gxMDAxOiBmYXN0amFyLTAuOTctbGVuMS5wYXRjaApA QCAtNzQ5LDkgKzc1MSwxMSBAQCBwYWNrYWdlIG9yIHdoZW4gZGVidWdnaW5nIHRoaXMgcGFja2Fn ZS4KICVlbmRpZgogJXBhdGNoMTIgLXAwIC1iIC5uby1hZGQtbmVlZGVkfgogJXBhdGNoMTMgLXAw IC1iIC5wcjU1NjA4fgotJXBhdGNoMTQgLXAwIC1iIC5hc2FuLWZpeH4KLSVwYXRjaDE1IC1wMCAt YiAucHI1NDExN34KLSVwYXRjaDE2IC1wMCAtYiAuYXNhbi1zcGVlZHVwfgorJXBhdGNoMTQgLXAw IC1iIC5hc2FuLXNwZWVkdXB+CislcGF0Y2gxNSAtcDAgLWIgLnByNTYyNTh+CislcGF0Y2gxNiAt cDAgLWIgLnByNTY0MDV+CislcGF0Y2gxNyAtcDAgLWIgLnVudXNlZC1sb2NhbHN+CislcGF0Y2gx OCAtcDAgLWIgLnByNTYyNjV+CiAKICVpZiAwJXs/X2VuYWJsZV9kZWJ1Z19wYWNrYWdlc30KIGNh dCA+IHNwbGl0LWRlYnVnaW5mby5zaCA8PFxFT0YKQEAgLTI5NzUsOCArMjk3OSwxOSBAQCBmaQog JXtfcHJlZml4fS9saWJleGVjL2djYy8le2djY190YXJnZXRfcGxhdGZvcm19LyV7Z2NjX3ZlcnNp b259L3BsdWdpbgogCiAlY2hhbmdlbG9nCi0qIFR1ZSBGZWIgMTkgMjAxMyBSZXggRGlldGVyIDxy ZGlldGVyQGZlZG9yYXByb2plY3Qub3JnPiA0LjguMC0wLjE0Ci0tIHJlYnVpbGQgKGxpYm1wYykK KyogV2VkIEZlYiAyMCAyMDEzIEpha3ViIEplbGluZWsgPGpha3ViQHJlZGhhdC5jb20+IDQuOC4w LTAuMTQKKy0gdXBkYXRlZCBmcm9tIHRydW5rCisgIC0gUFJzIGFzYW4vNTYzMzAsIGMrKy81MTI0 MiwgYysrLzU0Mjc2LCBjKysvNTYzNzMsIGxpYnF1YWRtYXRoLzU2Mzc5LAorCW1pZGRsZS1lbmQv NTU4ODksIG1pZGRsZS1lbmQvNTYzNDksIHBjaC81NDExNywKKwlydGwtb3B0aW1pemF0aW9uLzU2 MzQ4LCB0YXJnZXQvNTI1NTUsIHRhcmdldC81NDY4NSwgdGFyZ2V0LzU2MjE0LAorCXRhcmdldC81 NjM0NywgdHJlZS1vcHRpbWl6YXRpb24vNTUzMzQsIHRyZWUtb3B0aW1pemF0aW9uLzU2MzIxLAor CXRyZWUtb3B0aW1pemF0aW9uLzU2MzUwLCB0cmVlLW9wdGltaXphdGlvbi81NjM2NiwKKwl0cmVl LW9wdGltaXphdGlvbi81NjM4MSwgdHJlZS1vcHRpbWl6YXRpb24vNTYzODQsCisJdHJlZS1vcHRp bWl6YXRpb24vNTYzOTYsIHRyZWUtb3B0aW1pemF0aW9uLzU2Mzk4CistIGFkZCBCdWlsZFJlcXVp cmVzOiAvdXNyL2Jpbi9wb2QybWFuIHRvIGZpeCBtYW4gcGFnZXMgZ2VuZXJhdGlvbgorLSBkb24n dCBJQ0Ugb24gYm9ndXMgaW5saW5lIGFzbSBpbiBrZXJuZWwgKCM5MTI4NTcsIFBSIGlubGluZS1h c20vNTY0MDUpCistIGZpeCB1cCBpbmZvIHBhZ2UgYnVpbGRpbmcgd2l0aCB0ZXhpbmZvIDUuMCAo UFIgYm9vdHN0cmFwLzU2MjU4KQorLSBkZXZpcnR1YWxpemF0aW9uIElDRSBmaXggKFBSIHRyZWUt b3B0aW1pemF0aW9uLzU2MjY1KQogCiAqIEZyaSBGZWIgMTUgMjAxMyBKYWt1YiBKZWxpbmVrIDxq YWt1YkByZWRoYXQuY29tPiA0LjguMC0wLjEzCiAtIHVwZGF0ZWQgZnJvbSB0cnVuawoKZGlmZiAt LWdpdCBhL2djYzQ4LWFzYW4tZml4LnBhdGNoIGIvZ2NjNDgtYXNhbi1maXgucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNiYzc4NTIuLjAwMDAwMDAKLS0tIGEvZ2NjNDgtYXNh bi1maXgucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxOTYgKzAsMCBAQAotMjAxMy0wMi0xNSAg SmFrdWIgSmVsaW5layAgPGpha3ViQHJlZGhhdC5jb20+Ci0KLQlQUiBzYW5pdGl6ZXIvNTYzMzAK LQkqIGFzYW4uYyAoZ2V0X21lbV9yZWZzX29mX2J1aWx0aW5fY2FsbCk6IEZpeCB1cCBpbmRlbnRh dGlvbi4KLQkoaW5zdHJ1bWVudF9tZW1fcmVnaW9uX2FjY2Vzcyk6IENyZWF0ZSBjb25kaXRpb25h bCBldmVuIHdoZW4KLQl0aGUgc3RhcnQgaGFzIGJlZW4gYWxyZWFkeSBpbnN0cnVtZW50ZWQuICBE b24ndCByZWNvcmQKLQljb25kaXRpb25hbCBpbnN0cnVtZW50YXRpb24gaW4gdGhlIGhhc2ggdGFi bGUuICBVcGRhdGUgKml0ZXIKLQlhZnRlciBzZWNvbmQgYnVpbGRfY2hlY2tfc3RtdCBjYWxsLgot CShpbnN0cnVtZW50X2J1aWx0aW5fY2FsbCk6IEZvciBjb25zaXN0ZW5jeSB0ZXN0ICE9IE5VTExf VFJFRQotCWluIGFsbCBzdGFydCBjaGVja3MuCi0KLQkqIGMtYysrLWNvbW1vbi9hc2FuL25vLXJl ZHVuZGFudC1pbnN0cnVtZW50YXRpb24tMS5jOiBQYXNzCi0JMyBpbnN0ZWFkIG9mIHNpemVvZiAo dGFiKSAtIDEgYXMgbGFzdCBhcmd1bWVudC4KLQkqIGMtYysrLWNvbW1vbi9hc2FuL3ByNTYzMzAu YzogTmV3IHRlc3QuCi0KLS0tLSBnY2MvYXNhbi5jLmpqCTIwMTMtMDItMTQgMTQ6NDU6MDEuNDI4 MDM4NzkyICswMTAwCi0rKysgZ2NjL2FzYW4uYwkyMDEzLTAyLTE1IDA5OjM3OjE4LjYxNDk2MzM4 MyArMDEwMAotQEAgLTc0NywyMCArNzQ3LDE3IEBAIGdldF9tZW1fcmVmc19vZl9idWlsdGluX2Nh bGwgKGNvbnN0IGdpbXAKLSAKLSAgICAgICBnb3RfcmVmZXJlbmNlX3AgPSB0cnVlOwotICAgICB9 Ci0tICAgIGVsc2UKLS0gICAgICB7Ci0tCWlmIChkZXN0KQotLQkgIHsKLS0JICAgIGRzdC0+c3Rh cnQgPSBkZXN0OwotLQkgICAgZHN0LT5hY2Nlc3Nfc2l6ZSA9IGFjY2Vzc19zaXplOwotLQkgICAg KmRzdF9sZW4gPSBOVUxMX1RSRUU7Ci0tCSAgICAqZHN0X2lzX3N0b3JlID0gaXNfc3RvcmU7Ci0t CSAgICAqZGVzdF9pc19kZXJlZiA9IHRydWU7Ci0tCSAgICBnb3RfcmVmZXJlbmNlX3AgPSB0cnVl OwotLQkgIH0KLS0gICAgICB9Ci0rICBlbHNlIGlmIChkZXN0KQotKyAgICB7Ci0rICAgICAgZHN0 LT5zdGFydCA9IGRlc3Q7Ci0rICAgICAgZHN0LT5hY2Nlc3Nfc2l6ZSA9IGFjY2Vzc19zaXplOwot KyAgICAgICpkc3RfbGVuID0gTlVMTF9UUkVFOwotKyAgICAgICpkc3RfaXNfc3RvcmUgPSBpc19z dG9yZTsKLSsgICAgICAqZGVzdF9pc19kZXJlZiA9IHRydWU7Ci0rICAgICAgZ290X3JlZmVyZW5j ZV9wID0gdHJ1ZTsKLSsgICAgfQotIAotLSAgICByZXR1cm4gZ290X3JlZmVyZW5jZV9wOwotKyAg cmV0dXJuIGdvdF9yZWZlcmVuY2VfcDsKLSB9Ci0gCi0gLyogUmV0dXJuIHRydWUgaWZmIGEgZ2l2 ZW4gZ2ltcGxlIHN0YXRlbWVudCBoYXMgYmVlbiBpbnN0cnVtZW50ZWQuCi1AQCAtMTUzNSw4ICsx NTMyLDE1IEBAIGluc3RydW1lbnRfbWVtX3JlZ2lvbl9hY2Nlc3MgKHRyZWUgYmFzZSwKLSAKLSAg IC8qIElmIHRoZSBiZWdpbm5pbmcgb2YgdGhlIG1lbW9yeSByZWdpb24gaGFzIGFscmVhZHkgYmVl bgotICAgICAgaW5zdHJ1bWVudGVkLCBkbyBub3QgaW5zdHJ1bWVudCBpdC4gICovCi0tICBpZiAo aGFzX21lbV9yZWZfYmVlbl9pbnN0cnVtZW50ZWQgKGJhc2UsIDEpKQotLSAgICBnb3RvIGFmdGVy X2ZpcnN0X2luc3RydW1lbnRhdGlvbjsKLSsgIGJvb2wgc3RhcnRfaW5zdHJ1bWVudGVkID0gaGFz X21lbV9yZWZfYmVlbl9pbnN0cnVtZW50ZWQgKGJhc2UsIDEpOwotKwotKyAgLyogSWYgdGhlIGVu ZCBvZiB0aGUgbWVtb3J5IHJlZ2lvbiBoYXMgYWxyZWFkeSBiZWVuIGluc3RydW1lbnRlZCwgZG8K LSsgICAgIG5vdCBpbnN0cnVtZW50IGl0LiAqLwotKyAgdHJlZSBlbmQgPSBhc2FuX21lbV9yZWZf Z2V0X2VuZCAoYmFzZSwgbGVuKTsKLSsgIGJvb2wgZW5kX2luc3RydW1lbnRlZCA9IGhhc19tZW1f cmVmX2JlZW5faW5zdHJ1bWVudGVkIChlbmQsIDEpOwotKwotKyAgaWYgKHN0YXJ0X2luc3RydW1l bnRlZCAmJiBlbmRfaW5zdHJ1bWVudGVkKQotKyAgICByZXR1cm47Ci0gCi0gICBpZiAoIWlzX2dp bXBsZV9jb25zdGFudCAobGVuKSkKLSAgICAgewotQEAgLTE1NjUsMzQgKzE1NjksMzYgQEAgaW5z dHJ1bWVudF9tZW1fcmVnaW9uX2FjY2VzcyAodHJlZSBiYXNlLAotICAgICAgIGdzaSA9IGdzaV9z dGFydF9iYiAodGhlbl9iYik7Ci0gICAgIH0KLSAKLS0gIC8qIEluc3RydW1lbnQgdGhlIGJlZ2lu bmluZyBvZiB0aGUgbWVtb3J5IHJlZ2lvbiB0byBiZSBhY2Nlc3NlZCwKLS0gICAgIGFuZCBhcnJh bmdlIGZvciB0aGUgcmVzdCBvZiB0aGUgaW50cnVtZW50YXRpb24gY29kZSB0byBiZQotLSAgICAg aW5zZXJ0ZWQgaW4gdGhlIHRoZW4gYmxvY2sgKmFmdGVyKiB0aGUgY3VycmVudCBnc2kuICAqLwot LSAgYnVpbGRfY2hlY2tfc3RtdCAobG9jYXRpb24sIGJhc2UsICZnc2ksIC8qYmVmb3JlX3A9Ki90 cnVlLCBpc19zdG9yZSwgMSk7Ci0tCi0tICBpZiAodGhlbl9iYikKLS0gICAgLyogV2UgYXJlIGlu IHRoZSBjYXNlIHdoZXJlIHRoZSBsZW5ndGggb2YgdGhlIHJlZ2lvbiBpcyBub3QKLS0gICAgICAg Y29uc3RhbnQ7IHNvIGluc3RydW1lbnRhdGlvbiBjb2RlIGlzIGJlaW5nIGdlbmVyYXRlZCBpbiB0 aGUKLS0gICAgICAgJ3RoZW4gYmxvY2snIG9mIHRoZSAnaWYgKGxlbiAhPSAwKSBjb25kaXRpb24u ICBMZXQncyBhcnJhbmdlCi0tICAgICAgIGZvciB0aGUgc3Vic2VxdWVudCBpbnN0cnVtZW50YXRp b24gc3RhdGVtZW50cyB0byBnbyBpbiB0aGUKLS0gICAgICAgJ3RoZW4gYmxvY2snLiAgKi8KLS0g ICAgZ3NpID0gZ3NpX2xhc3RfYmIgKHRoZW5fYmIpOwotLSAgZWxzZQotLSAgICAqaXRlciA9IGdz aTsKLS0KLS0gIHVwZGF0ZV9tZW1fcmVmX2hhc2hfdGFibGUgKGJhc2UsIDEpOwotKyAgaWYgKCFz dGFydF9pbnN0cnVtZW50ZWQpCi0rICAgIHsKLSsgICAgICAvKiBJbnN0cnVtZW50IHRoZSBiZWdp bm5pbmcgb2YgdGhlIG1lbW9yeSByZWdpb24gdG8gYmUgYWNjZXNzZWQsCi0rCSBhbmQgYXJyYW5n ZSBmb3IgdGhlIHJlc3Qgb2YgdGhlIGludHJ1bWVudGF0aW9uIGNvZGUgdG8gYmUKLSsJIGluc2Vy dGVkIGluIHRoZSB0aGVuIGJsb2NrICphZnRlciogdGhlIGN1cnJlbnQgZ3NpLiAgKi8KLSsgICAg ICBidWlsZF9jaGVja19zdG10IChsb2NhdGlvbiwgYmFzZSwgJmdzaSwgLypiZWZvcmVfcD0qL3Ry dWUsIGlzX3N0b3JlLCAxKTsKLSsKLSsgICAgICBpZiAodGhlbl9iYikKLSsJLyogV2UgYXJlIGlu IHRoZSBjYXNlIHdoZXJlIHRoZSBsZW5ndGggb2YgdGhlIHJlZ2lvbiBpcyBub3QKLSsJICAgY29u c3RhbnQ7IHNvIGluc3RydW1lbnRhdGlvbiBjb2RlIGlzIGJlaW5nIGdlbmVyYXRlZCBpbiB0aGUK LSsJICAgJ3RoZW4gYmxvY2snIG9mIHRoZSAnaWYgKGxlbiAhPSAwKSBjb25kaXRpb24uICBMZXQn cyBhcnJhbmdlCi0rCSAgIGZvciB0aGUgc3Vic2VxdWVudCBpbnN0cnVtZW50YXRpb24gc3RhdGVt ZW50cyB0byBnbyBpbiB0aGUKLSsJICAgJ3RoZW4gYmxvY2snLiAgKi8KLSsJZ3NpID0gZ3NpX2xh c3RfYmIgKHRoZW5fYmIpOwotKyAgICAgIGVsc2UKLSsgICAgICAgIHsKLSsgICAgICAgICAgKml0 ZXIgPSBnc2k7Ci0rCSAgLyogRG9uJ3QgcmVtZW1iZXIgdGhpcyBhY2Nlc3MgYXMgaW5zdHJ1bWVu dGVkLCBpZiBsZW5ndGgKLSsJICAgICBpcyB1bmtub3duLiAgSXQgbWlnaHQgYmUgemVybyBhbmQg bm90IGJlaW5nIGFjdHVhbGx5Ci0rCSAgICAgaW5zdHJ1bWVudGVkLCBzbyB3ZSBjYW4ndCByZWx5 IG9uIGl0IGJlaW5nIGluc3RydW1lbnRlZC4gICovCi0rICAgICAgICAgIHVwZGF0ZV9tZW1fcmVm X2hhc2hfdGFibGUgKGJhc2UsIDEpOwotKwl9Ci0rICAgIH0KLSAKLS0gYWZ0ZXJfZmlyc3RfaW5z dHJ1bWVudGF0aW9uOgotKyAgaWYgKGVuZF9pbnN0cnVtZW50ZWQpCi0rICAgIHJldHVybjsKLSAK LSAgIC8qIFdlIHdhbnQgdG8gaW5zdHJ1bWVudCB0aGUgYWNjZXNzIGF0IHRoZSBlbmQgb2YgdGhl IG1lbW9yeSByZWdpb24sCi0gICAgICB3aGljaCBpcyBhdCAoYmFzZSArIGxlbiAtIDEpLiAgKi8K LSAKLS0gIC8qIElmIHRoZSBlbmQgb2YgdGhlIG1lbW9yeSByZWdpb24gaGFzIGFscmVhZHkgYmVl biBpbnN0cnVtZW50ZWQsIGRvCi0tICAgICBub3QgaW5zdHJ1bWVudCBpdC4gKi8KLS0gIHRyZWUg ZW5kID0gYXNhbl9tZW1fcmVmX2dldF9lbmQgKGJhc2UsIGxlbik7Ci0tICBpZiAoaGFzX21lbV9y ZWZfYmVlbl9pbnN0cnVtZW50ZWQgKGVuZCwgMSkpCi0tICAgIHJldHVybjsKLS0KLSAgIC8qIG9m ZnNldCA9IGxlbiAtIDE7ICAqLwotICAgbGVuID0gdW5zaGFyZV9leHByIChsZW4pOwotICAgdHJl ZSBvZmZzZXQ7Ci1AQCAtMTY0MCw3ICsxNjQ2LDEwIEBAIGluc3RydW1lbnRfbWVtX3JlZ2lvbl9h Y2Nlc3MgKHRyZWUgYmFzZSwKLSAgIGdpbXBsZV9zZXRfbG9jYXRpb24gKHJlZ2lvbl9lbmQsIGxv Y2F0aW9uKTsKLSAgIGdpbXBsZV9zZXFfYWRkX3N0bXRfd2l0aG91dF91cGRhdGUgKCZzZXEsIHJl Z2lvbl9lbmQpOwotICAgZ3NpX2luc2VydF9zZXFfYmVmb3JlICgmZ3NpLCBzZXEsIEdTSV9TQU1F X1NUTVQpOwotLSAgZ3NpX3ByZXYgKCZnc2kpOwotKyAgaWYgKCFzdGFydF9pbnN0cnVtZW50ZWQg fHwgdGhlbl9iYiA9PSBOVUxMKQotKyAgICBnc2lfcHJldiAoJmdzaSk7Ci0rICBlbHNlCi0rICAg IGdzaSA9IGdzaV9sYXN0X2JiICh0aGVuX2JiKTsKLSAKLSAgIC8qIF8yID0gXzEgKyBvZmZzZXQ7 ICAqLwotICAgcmVnaW9uX2VuZCA9Ci1AQCAtMTY1NSw3ICsxNjY0LDEwIEBAIGluc3RydW1lbnRf bWVtX3JlZ2lvbl9hY2Nlc3MgKHRyZWUgYmFzZSwKLSAgIGJ1aWxkX2NoZWNrX3N0bXQgKGxvY2F0 aW9uLCBnaW1wbGVfYXNzaWduX2xocyAocmVnaW9uX2VuZCksCi0gCQkgICAgJmdzaSwgLypiZWZv cmVfcD0qL2ZhbHNlLCBpc19zdG9yZSwgMSk7Ci0gCi0tICB1cGRhdGVfbWVtX3JlZl9oYXNoX3Rh YmxlIChlbmQsIDEpOwotKyAgaWYgKHRoZW5fYmIgPT0gTlVMTCkKLSsgICAgdXBkYXRlX21lbV9y ZWZfaGFzaF90YWJsZSAoZW5kLCAxKTsKLSsKLSsgICppdGVyID0gZ3NpX2Zvcl9zdG10IChnc2lf c3RtdCAoKml0ZXIpKTsKLSB9Ci0gCi0gLyogSW5zdHJ1bWVudCB0aGUgY2FsbCAodG8gdGhlIGJ1 aWx0aW4gc3RybGVuIGZ1bmN0aW9uKSBwb2ludGVkIHRvIGJ5Ci1AQCAtMTc4Myw3ICsxNzk1LDcg QEAgaW5zdHJ1bWVudF9idWlsdGluX2NhbGwgKGdpbXBsZV9zdG10X2l0ZQotIAkgICAgfQotIAkg IGVsc2UgaWYgKHNyYzBfbGVuIHx8IHNyYzFfbGVuIHx8IGRlc3RfbGVuKQotIAkgICAgewotLQkg ICAgICBpZiAoc3JjMC5zdGFydCkKLSsJICAgICAgaWYgKHNyYzAuc3RhcnQgIT0gTlVMTF9UUkVF KQotIAkJaW5zdHJ1bWVudF9tZW1fcmVnaW9uX2FjY2VzcyAoc3JjMC5zdGFydCwgc3JjMF9sZW4s Ci0gCQkJCQkgICAgICBpdGVyLCBsb2MsIC8qaXNfc3RvcmU9Ki9mYWxzZSk7Ci0gCSAgICAgIGlm IChzcmMxLnN0YXJ0ICE9IE5VTExfVFJFRSkKLS0tLSBnY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1v bi9hc2FuL25vLXJlZHVuZGFudC1pbnN0cnVtZW50YXRpb24tMS5jLmpqCTIwMTMtMDItMTMgMTE6 NTM6NDEuMDAwMDAwMDAwICswMTAwCi0rKysgZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vYXNh bi9uby1yZWR1bmRhbnQtaW5zdHJ1bWVudGF0aW9uLTEuYwkyMDEzLTAyLTE1IDA5OjUxOjQ3LjQ4 NTA4MDcwNiArMDEwMAotQEAgLTQ1LDcgKzQ1LDcgQEAgdGVzdDEgKCkKLSAgIC8qIFRoZXJlIGFy ZSAyIGNhbGxzIHRvIF9fYnVpbHRpbl9fX2FzYW5fcmVwb3J0X3N0b3JlMSBhbmQgMiBjYWxscwot ICAgICAgdG8gX19idWlsdGluX19fYXNhbl9yZXBvcnRfbG9hZDEgdG8gaW5zdHJ1bWVudCB0aGUg c3RvcmUgdG8KLSAgICAgIChzdWJzZXQgb2YpIHRoZSBtZW1vcnkgcmVnaW9uIG9mIHRhYi4gICov Ci0tICBfX2J1aWx0aW5fbWVtY3B5ICgmdGFiWzFdLCBmb28sIHNpemVvZiAodGFiKSAtIDEpOwot KyAgX19idWlsdGluX21lbWNweSAoJnRhYlsxXSwgZm9vLCAzKTsKLSAKLSAgIC8qIFRoaXMgc2hv dWxkIG5vdCBnZW5lcmF0ZSBhIF9fYnVpbHRpbl9fX2FzYW5fcmVwb3J0X2xvYWQxIGJlY2F1c2UK LSAgICAgIHRoZSByZWZlcmVuY2UgdG8gdGFiWzFdIGhhcyBiZWVuIGFscmVhZHkgaW5zdHJ1bWVu dGVkIGFib3ZlLiAgKi8KLS0tLSBnY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9hc2FuL3ByNTYz MzAuYy5qagkyMDEzLTAyLTE1IDA5OjQzOjE5LjI5Mzg0NTE0NiArMDEwMAotKysrIGdjYy90ZXN0 c3VpdGUvYy1jKystY29tbW9uL2FzYW4vcHI1NjMzMC5jCTIwMTMtMDItMTUgMDk6NDI6NTguMDAw MDAwMDAwICswMTAwCi1AQCAtMCwwICsxLDIzIEBACi0rLyogUFIgc2FuaXRpemVyLzU2MzMwICov Ci0rLyogeyBkZy1kbyBjb21waWxlIH0gKi8KLSsKLStjaGFyIGVbMjAwXTsKLSsKLStzdHJ1Y3Qg UwotK3sKLSsgIGNoYXIgYVsxMDBdOwotKyAgY2hhciBiWzEwMF07Ci0rfSBzOwotKwotK3ZvaWQK LStmb28gKHZvaWQpCi0rewotKyAgX19idWlsdGluX21lbWNtcCAocy5hLCBlLCAxMDApOwotKyAg X19idWlsdGluX21lbWNtcCAocy5hLCBlLCAyMDApOwotK30KLSsKLSt2b2lkCi0rYmFyIChpbnQg KmEsIGNoYXIgKmIsIGNoYXIgKmMpCi0rewotKyAgX19idWlsdGluX21lbW1vdmUgKGMsIGIsIGFb YlswXV0pOwotK30KCmRpZmYgLS1naXQgYS9nY2M0OC1wcjU0MTE3LnBhdGNoIGIvZ2NjNDgtcHI1 NDExNy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWJlMmIwNy4uMDAwMDAw MAotLS0gYS9nY2M0OC1wcjU0MTE3LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTk4ICswLDAg QEAKLTIwMTMtMDItMTUgIEpha3ViIEplbGluZWsgIDxqYWt1YkByZWRoYXQuY29tPgotCSAgICBT dGV2ZW4gQm9zc2NoZXIgIDxzdGV2ZW5AZ2NjLmdudS5vcmc+Ci0KLQlQUiBwY2gvNTQxMTcKLQkq IGMtb3B0cy5jIChjX2NvbW1vbl9wb3N0X29wdGlvbnMpOiBJZiBkZWJ1ZyBpbmZvIGlzIGVuYWJs ZWQKLQlhbmQgbm9uLWR3YXJmKiwgcmVmdXNlIHRvIGxvYWQgUENIIGZpbGVzIGFuZCB3aGVuIHdy aXRpbmcgUENICi0JZmlsZSB3YXJuLgotCi0JKiBsaWIvZGctcGNoLmV4cCAocGNoLWluaXQsIHBj aC1maW5pc2gsCi0JY2hlY2tfZWZmZWN0aXZlX3RhcmdldF9wY2hfc3VwcG9ydGVkX2RlYnVnKTog TmV3IHByb2NzLgotCShkZy1mbGFncy1wY2gpOiBJZiAkcGNoX3Vuc3VwcG9ydGVkLCBtYWtlIHRl c3RzIFVOU1VQUE9SVEVELgotCUxpa2V3aXNlIGlmICRwY2hfdW5zdXBwb3J0ZWRfZGVidWcgYW5k ICRmbGFncyBpbmNsdWRlIC1nLgotCVNraXAgRkFJTHMgYWJvdXQgbWlzc2luZyAqLmdjaCBmaWxl IGlmICRwY2hfdW5zdXBwb3J0ZWRfZGVidWcKLQlhbmQgZGctcmVxdWlyZS1lZmZlY3RpdmUtdGFy Z2V0IHBjaF91bnN1cHBvcnRlZF9kZWJ1Zy4KLQkqIGcrKy5kZy9wY2gvcGNoLmV4cDogQ2FsbCBw Y2gtaW5pdCBhbmQgcGNoLWZpbmlzaC4KLQkqIG9iamMuZGcvcGNoL3BjaC5leHA6IExpa2V3aXNl LgotCSogZ2NjLmRnL3BjaC9wY2guZXhwOiBMaWtld2lzZS4KLQkqIGdjYy5kZy9wY2gvdmFsaWQt MS5jOiBBZGQgZGctcmVxdWlyZS1lZmZlY3RpdmUtdGFyZ2V0Ci0JcGNoX3Vuc3VwcG9ydGVkX2Rl YnVnLgotCSogZ2NjLmRnL3BjaC92YWxpZC0xLmhzOiBMaWtld2lzZS4KLQkqIGdjYy5kZy9wY2gv dmFsaWQtMWIuYzogTGlrZXdpc2UuCi0JKiBnY2MuZGcvcGNoL3ZhbGlkLTFiLmhzOiBMaWtld2lz ZS4KLQotLS0tIGdjYy9jLWZhbWlseS9jLW9wdHMuYy5qagkyMDEzLTAyLTE0IDE0OjQ1OjAxLjAw MDAwMDAwMCArMDEwMAotKysrIGdjYy9jLWZhbWlseS9jLW9wdHMuYwkyMDEzLTAyLTE1IDEyOjQ0 OjQ4LjkzNjUzNTExOCArMDEwMAotQEAgLTk0NSw2ICs5NDUsMTYgQEAgY19jb21tb25fcG9zdF9v cHRpb25zIChjb25zdCBjaGFyICoqcGZpbAotIAkgYmVjYXVzZSB0aGUgZGVmYXVsdCBhZGRyZXNz IHNwYWNlIHNsb3QgdGhlbiBjYW4ndCBiZSB1c2VkCi0gCSBmb3IgdGhlIG91dHB1dCBQQ0ggZmls ZS4gICovCi0gICAgICAgaWYgKHBjaF9maWxlKQotKwl7Ci0rCSAgY19jb21tb25fbm9fbW9yZV9w Y2ggKCk7Ci0rCSAgLyogT25seSAtZzAgYW5kIC1nZHdhcmYqIGFyZSBzdXBwb3J0ZWQgd2l0aCBQ Q0gsIGZvciBvdGhlcgotKwkgICAgIGRlYnVnIGZvcm1hdHMgd2Ugd2FybiBoZXJlIGFuZCByZWZ1 c2UgdG8gbG9hZCBhbnkgUENIIGZpbGVzLiAgKi8KLSsJICBpZiAod3JpdGVfc3ltYm9scyAhPSBO T19ERUJVRyAmJiB3cml0ZV9zeW1ib2xzICE9IERXQVJGMl9ERUJVRykKLSsJICAgIHdhcm5pbmcg KE9QVF9XZGVwcmVjYXRlZCwKLSsJCSAgICAgInRoZSBcIiVzXCIgZGVidWcgZm9ybWF0IGNhbm5v dCBiZSB1c2VkIHdpdGggIgotKwkJICAgICAicHJlLWNvbXBpbGVkIGhlYWRlcnMiLCBkZWJ1Z190 eXBlX25hbWVzW3dyaXRlX3N5bWJvbHNdKTsKLSsJfQotKyAgICAgIGVsc2UgaWYgKHdyaXRlX3N5 bWJvbHMgIT0gTk9fREVCVUcgJiYgd3JpdGVfc3ltYm9scyAhPSBEV0FSRjJfREVCVUcpCi0gCWNf Y29tbW9uX25vX21vcmVfcGNoICgpOwotIAotICAgICAgIC8qIFl1ay4gIFdURiBpcyB0aGlzPyAg SSBkbyBrbm93IE9iakMgcmVsaWVzIG9uIGl0IHNvbWV3aGVyZS4gICovCi0tLS0gZ2NjL3Rlc3Rz dWl0ZS9saWIvZGctcGNoLmV4cC5qagkyMDEzLTAxLTExIDA5OjAyOjM5LjAwMDAwMDAwMCArMDEw MAotKysrIGdjYy90ZXN0c3VpdGUvbGliL2RnLXBjaC5leHAJMjAxMy0wMi0xNSAxNTo0NTo1My43 NDc4NTU1MjkgKzAxMDAKLUBAIC0xNiw4ICsxNiw0OSBAQAotIAotIGxvYWRfbGliIGNvcHktZmls ZS5leHAKLSAKLStwcm9jIHBjaC1pbml0IHsgYXJncyB9IHsKLSsgICAgZ2xvYmFsIHBjaF91bnN1 cHBvcnRlZF9kZWJ1ZyBwY2hfdW5zdXBwb3J0ZWQKLSsKLSsgICAgaWYgW2luZm8gZXhpc3RzIHBj aF91bnN1cHBvcnRlZF9kZWJ1Z10gewotKwllcnJvciAicGNoLWluaXQ6IHBjaF91bnN1cHBvcnRl ZF9kZWJ1ZyBpcyBub3QgZW1wdHkgYXMgZXhwZWN0ZWQiCi0rICAgIH0KLSsgICAgaWYgW2luZm8g ZXhpc3RzIHBjaF91bnN1cHBvcnRlZF0gewotKwllcnJvciAicGNoLWluaXQ6IHBjaF91bnN1cHBv cnRlZCBpcyBub3QgZW1wdHkgYXMgZXhwZWN0ZWQiCi0rICAgIH0KLSsKLSsgICAgc2V0IHJlc3Vs dCBbY2hlY2tfY29tcGlsZSBwY2h0ZXN0IG9iamVjdCAiaW50IGk7IiAiLWcgLXggYy1oZWFkZXIi XQotKyAgICBzZXQgcGNoX3Vuc3VwcG9ydGVkX2RlYnVnIFwKLSsJW3JlZ2V4cCAiZGVidWcgZm9y bWF0IGNhbm5vdCBiZSB1c2VkIHdpdGggcHJlLWNvbXBpbGVkIGhlYWRlcnMiIFwKLSsJCVtsaW5k ZXggJHJlc3VsdCAwXV0KLSsKLSsgICAgc2V0IHBjaF91bnN1cHBvcnRlZCAwCi0rICAgIGlmIHsg JHBjaF91bnN1cHBvcnRlZF9kZWJ1ZyB9IHsKLSsJdmVyYm9zZSAtbG9nICJwY2ggaXMgdW5zdXBw b3J0ZWQgd2l0aCB0aGUgZGVidWcgaW5mbyBmb3JtYXQiCi0rCi0rCXNldCByZXN1bHQgW2NoZWNr X2NvbXBpbGUgcGNodGVzdCBvYmplY3QgImludCBpOyIgIi14IGMtaGVhZGVyIl0KLSsJICAgIHNl dCBwY2hfdW5zdXBwb3J0ZWQgXAotKwkJW3JlZ2V4cCAiZGVidWcgZm9ybWF0IGNhbm5vdCBiZSB1 c2VkIHdpdGggcHJlLWNvbXBpbGVkIGhlYWRlcnMiIFwKLSsJCQlbbGluZGV4ICRyZXN1bHQgMF1d Ci0rICAgIH0KLSt9Ci0rCi0rcHJvYyBwY2gtZmluaXNoIHsgYXJncyB9IHsKLSsgICAgZ2xvYmFs IHBjaF91bnN1cHBvcnRlZF9kZWJ1ZyBwY2hfdW5zdXBwb3J0ZWQKLSsgICAgdW5zZXQgcGNoX3Vu c3VwcG9ydGVkX2RlYnVnCi0rICAgIHVuc2V0IHBjaF91bnN1cHBvcnRlZAotK30KLSsKLStwcm9j IGNoZWNrX2VmZmVjdGl2ZV90YXJnZXRfcGNoX3N1cHBvcnRlZF9kZWJ1ZyB7IH0gewotKyAgICBn bG9iYWwgcGNoX3Vuc3VwcG9ydGVkX2RlYnVnCi0rICAgIGlmIHsgJHBjaF91bnN1cHBvcnRlZF9k ZWJ1ZyB9IHsKLSsJcmV0dXJuIDAKLSsgICAgfQotKyAgICByZXR1cm4gMQotK30KLSsKLSBwcm9j IGRnLWZsYWdzLXBjaCB7IHN1YmRpciB0ZXN0IG90aGVyZmxhZ3Mgb3B0aW9ucyBzdWZmaXggfSB7 Ci0gICAgIGdsb2JhbCBydW50ZXN0cyBkZy1kby13aGF0LWRlZmF1bHQKLSsgICAgZ2xvYmFsIHBj aF91bnN1cHBvcnRlZF9kZWJ1ZyBwY2hfdW5zdXBwb3J0ZWQKLSAKLSAgICAgIyBJZiB3ZSdyZSBv bmx5IHRlc3Rpbmcgc3BlY2lmaWMgZmlsZXMgYW5kIHRoaXMgaXNuJ3Qgb25lIG9mIHRoZW0sIHNr aXAgaXQuCi0gICAgIGlmICFbcnVudGVzdF9maWxlX3AgJHJ1bnRlc3RzICR0ZXN0XSB7Ci1AQCAt MzUsNiArNzYsMTMgQEAgcHJvYyBkZy1mbGFncy1wY2ggeyBzdWJkaXIgdGVzdCBvdGhlcmZsYQot ICAgICBmb3JlYWNoIGZsYWdzICRvcHRpb25zIHsKLSAJdmVyYm9zZSAiVGVzdGluZyAkbnNob3J0 LCAkb3RoZXJmbGFncyAkZmxhZ3MiIDEKLSAKLSsJaWYgeyAkcGNoX3Vuc3VwcG9ydGVkICE9IDAg XAotKwkgICAgIHx8ICggJHBjaF91bnN1cHBvcnRlZF9kZWJ1ZyAhPSAwICYmIFtyZWdleHAgIiAt ZyIgIiAkZmxhZ3MiXSApIH0gewotKwkgICAgdmVyYm9zZSAtbG9nICIkbnNob3J0IHVuc3VwcG9y dGVkIGJlY2F1c2UgZGVidWcgZm9ybWF0IGNvbmZsaWN0cyB3aXRoIFBDSCIKLSsJICAgIHVuc3Vw cG9ydGVkICIkbnNob3J0ICRmbGFncyIKLSsJICAgIGNvbnRpbnVlCi0rCX0KLSsKLSAJIyBGb3Ig dGhlIGhlYWRlciBmaWxlcywgdGhlIGRlZmF1bHQgaXMgdG8gcHJlY29tcGlsZS4KLSAJc2V0IGRn LWRvLXdoYXQtZGVmYXVsdCBwcmVjb21waWxlCi0gCWNhdGNoIHsgZmlsZV9vbl9ob3N0IGRlbGV0 ZSAiJGJuYW1lJHN1ZmZpeCIgfQotQEAgLTc4LDcgKzEyNiw4IEBAIHByb2MgZGctZmxhZ3MtcGNo IHsgc3ViZGlyIHRlc3Qgb3RoZXJmbGEKLSAgCQkgICAgZmFpbCAiJG5zaG9ydCAkZmxhZ3MgYXNz ZW1ibHkgY29tcGFyaXNvbiIKLSAJCX0KLSAJICAgIH0KLS0JfSBlbHNlIHsKLSsJfSBlbHNlaWYg eyAkcGNoX3Vuc3VwcG9ydGVkX2RlYnVnID09IDAgXAotKwkJICAgfHwgW2xsZW5ndGggW2dyZXAg JHRlc3QgIntcWyBcdFxdXCtkZy1yZXF1aXJlLWVmZmVjdGl2ZS10YXJnZXRcWyBcdFxdXCtwY2hf c3VwcG9ydGVkX2RlYnVnXFsgXHRcXVwrLipcWyBcdFxdXCt9Il1dID4gMCB9IHsKLSAJICAgIHZl cmJvc2UgLWxvZyAicGNoIGZpbGUgJyRibmFtZSRzdWZmaXguZ2NoJyBtaXNzaW5nIgotIAkgICAg ZmFpbCAiJG5zaG9ydCAkZmxhZ3MiCi0gCSAgICBpZiB7ICEkaGF2ZV9lcnJzIH0gewotLS0tIGdj Yy90ZXN0c3VpdGUvZysrLmRnL3BjaC9wY2guZXhwLmpqCTIwMTMtMDEtMTEgMDk6MDI6NDQuMDAw MDAwMDAwICswMTAwCi0rKysgZ2NjL3Rlc3RzdWl0ZS9nKysuZGcvcGNoL3BjaC5leHAJMjAxMy0w Mi0xNSAxNDo1MzowMy41MTcxMDY0NjQgKzAxMDAKLUBAIC0yMyw2ICsyMyw3IEBAIGxvYWRfbGli IGRnLXBjaC5leHAKLSAKLSAjIEluaXRpYWxpemUgYGRnJy4KLSBkZy1pbml0Ci0rcGNoLWluaXQK LSAKLSBzZXQgb2xkX2RnX2RvX3doYXRfZGVmYXVsdCAiJHtkZy1kby13aGF0LWRlZmF1bHR9Igot IAotQEAgLTM2LDQgKzM3LDUgQEAgZm9yZWFjaCB0ZXN0IFtsc29ydCBbZ2xvYiAtbm9jb21wbGFp biAkcwotIHNldCBkZy1kby13aGF0LWRlZmF1bHQgIiRvbGRfZGdfZG9fd2hhdF9kZWZhdWx0Igot IAotICMgQWxsIGRvbmUuCi0rcGNoLWZpbmlzaAotIGRnLWZpbmlzaAotLS0tIGdjYy90ZXN0c3Vp dGUvb2JqYy5kZy9wY2gvcGNoLmV4cC5qagkyMDEzLTAxLTExIDA5OjAyOjQ0LjAwMDAwMDAwMCAr MDEwMAotKysrIGdjYy90ZXN0c3VpdGUvb2JqYy5kZy9wY2gvcGNoLmV4cAkyMDEzLTAyLTE1IDE0 OjUzOjMwLjA2Mzk1MTA1MSArMDEwMAotQEAgLTI0LDggKzI0LDggQEAgbG9hZF9saWIgdG9ydHVy ZS1vcHRpb25zLmV4cAotIAotICMgSW5pdGlhbGl6ZSBgZGcnLgotIGRnLWluaXQKLS0KLSB0b3J0 dXJlLWluaXQKLStwY2gtaW5pdAotIAotIHNldC10b3J0dXJlLW9wdGlvbnMgJERHX1RPUlRVUkVf T1BUSU9OUwotIAotQEAgLTU5LDUgKzU5LDYgQEAgaWYgW2lzdGFyZ2V0ICIqLSotZGFyd2luKiIg XSB7Ci0gc2V0IGRnLWRvLXdoYXQtZGVmYXVsdCAiJG9sZF9kZ19kb193aGF0X2RlZmF1bHQiCi0g Ci0gIyBBbGwgZG9uZS4KLStwY2gtZmluaXNoCi0gdG9ydHVyZS1maW5pc2gKLSBkZy1maW5pc2gK LS0tLSBnY2MvdGVzdHN1aXRlL2djYy5kZy9wY2gvcGNoLmV4cC5qagkyMDEzLTAxLTExIDA5OjAy OjQyLjAwMDAwMDAwMCArMDEwMAotKysrIGdjYy90ZXN0c3VpdGUvZ2NjLmRnL3BjaC9wY2guZXhw CTIwMTMtMDItMTUgMTQ6MTE6MjcuMDUzODk2ODA5ICswMTAwCi1AQCAtMjYsNiArMjYsNyBAQCBs b2FkX2xpYiB0b3J0dXJlLW9wdGlvbnMuZXhwCi0gZGctaW5pdAotIHRvcnR1cmUtaW5pdAotIHNl dC10b3J0dXJlLW9wdGlvbnMgJERHX1RPUlRVUkVfT1BUSU9OUwotK3BjaC1pbml0Ci0gCi0gc2V0 IG9sZF9kZ19kb193aGF0X2RlZmF1bHQgIiR7ZGctZG8td2hhdC1kZWZhdWx0fSIKLSAKLUBAIC01 OSw1ICs2MCw2IEBAIGZpbGUgZGVsZXRlICR0ZXN0aAotIHNldCBkZy1kby13aGF0LWRlZmF1bHQg IiRvbGRfZGdfZG9fd2hhdF9kZWZhdWx0IgotIAotICMgQWxsIGRvbmUuCi0rcGNoLWZpbmlzaAot IHRvcnR1cmUtZmluaXNoCi0gZGctZmluaXNoCi0tLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvcGNo L3ZhbGlkLTEuYy5qagkyMDA5LTA2LTA4IDExOjUzOjQ4LjAwMDAwMDAwMCArMDIwMAotKysrIGdj Yy90ZXN0c3VpdGUvZ2NjLmRnL3BjaC92YWxpZC0xLmMJMjAxMy0wMi0xNSAxNToxOTo0NC4xMjQ4 MzMyNTkgKzAxMDAKLUBAIC0xLDMgKzEsNCBAQAotKy8qIHsgZGctcmVxdWlyZS1lZmZlY3RpdmUt dGFyZ2V0IHBjaF9zdXBwb3J0ZWRfZGVidWcgfSAqLwotIC8qIHsgZGctb3B0aW9ucyAiLUkuIC1X aW52YWxpZC1wY2ggLWciIH0gKi8KLSAKLSAjaW5jbHVkZSAidmFsaWQtMS5oIi8qIHsgZGctd2Fy bmluZyAiY3JlYXRlZCB3aXRoIC1nbm9uZSwgYnV0IHVzZWQgd2l0aCAtZyIgfSAqLwotLS0tIGdj Yy90ZXN0c3VpdGUvZ2NjLmRnL3BjaC92YWxpZC0xLmhzLmpqCTIwMDgtMDktMDUgMTI6NTQ6MjYu MDAwMDAwMDAwICswMjAwCi0rKysgZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvcGNoL3ZhbGlkLTEuaHMJ MjAxMy0wMi0xNSAxNToxOTo1MC42ODY3OTQzNDAgKzAxMDAKLUBAIC0xLDMgKzEsNCBAQAotKy8q IHsgZGctcmVxdWlyZS1lZmZlY3RpdmUtdGFyZ2V0IHBjaF9zdXBwb3J0ZWRfZGVidWcgfSAqLwot IC8qIHsgZGctb3B0aW9ucyAiLUkuIC1XaW52YWxpZC1wY2ggLWcwIiB9ICovCi0gCi0gZXh0ZXJu IGludCB4OwotLS0tIGdjYy90ZXN0c3VpdGUvZ2NjLmRnL3BjaC92YWxpZC0xYi5jLmpqCTIwMDgt MDktMDUgMTI6NTQ6MjYuMDAwMDAwMDAwICswMjAwCi0rKysgZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcv cGNoL3ZhbGlkLTFiLmMJMjAxMy0wMi0xNSAxNToxOTo1NS45MzU3NjM2MzEgKzAxMDAKLUBAIC0x LDMgKzEsNCBAQAotKy8qIHsgZGctcmVxdWlyZS1lZmZlY3RpdmUtdGFyZ2V0IHBjaF9zdXBwb3J0 ZWRfZGVidWcgfSAqLwotIC8qIHsgZGctb3B0aW9ucyAiLUkuIC1XaW52YWxpZC1wY2ggLWcwIiB9 ICovCi0gCi0gI2luY2x1ZGUgInZhbGlkLTFiLmgiCi0tLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcv cGNoL3ZhbGlkLTFiLmhzLmpqCTIwMDgtMDktMDUgMTI6NTQ6MjYuMDAwMDAwMDAwICswMjAwCi0r KysgZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvcGNoL3ZhbGlkLTFiLmhzCTIwMTMtMDItMTUgMTU6MjA6 MDIuMjE0NzI3Nzk0ICswMTAwCi1AQCAtMSwzICsxLDQgQEAKLSsvKiB7IGRnLXJlcXVpcmUtZWZm ZWN0aXZlLXRhcmdldCBwY2hfc3VwcG9ydGVkX2RlYnVnIH0gKi8KLSAvKiB7IGRnLW9wdGlvbnMg Ii1JLiAtV2ludmFsaWQtcGNoIC1nIiB9ICovCi0gCi0gZXh0ZXJuIGludCB4OwoKZGlmZiAtLWdp dCBhL2djYzQ4LXByNTYyNTgucGF0Y2ggYi9nY2M0OC1wcjU2MjU4LnBhdGNoCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4YWY0YzAKLS0tIC9kZXYvbnVsbAorKysgYi9nY2M0 OC1wcjU2MjU4LnBhdGNoCkBAIC0wLDAgKzEsMzAgQEAKKzIwMTMtMDItMjAgIEpha3ViIEplbGlu ZWsgIDxqYWt1YkByZWRoYXQuY29tPgorCisJUFIgYm9vdHN0cmFwLzU2MjU4CisJKiBkb2MvaW52 b2tlLnRleGkgKC1mZHVtcC1ydGwtcHJvX2FuZF9lcGlsb2d1ZSk6IFVzZSBAaXRlbQorCWluc3Rl YWQgb2YgQGl0ZW14LgorCisJKiBnbmF0LXN0eWxlLnRleGkgKEB0aXRsZSk6IFJlbW92ZSBAaGZp bGwuCisKKy0tLSBnY2MvYWRhL2duYXQtc3R5bGUudGV4aS5qagkyMDEyLTA4LTEwIDEyOjU3OjMz LjAwMDAwMDAwMCArMDIwMAorKysrIGdjYy9hZGEvZ25hdC1zdHlsZS50ZXhpCTIwMTMtMDItMjAg MTM6MDY6MDMuMDQyNjY3MzAwICswMTAwCitAQCAtNDIsNyArNDIsNyBAQCBUZXh0cy4gIEEgY29w eSBvZiB0aGUgbGljZW5zZSBpcyBpbmNsdWRlCisgQHRpdGxlcGFnZQorIEB0aXRsZWZvbnR7R05B VCBDb2RpbmcgU3R5bGU6fQorIEBzcCAxCistQHRpdGxlIEBoZmlsbCBBIEd1aWRlIGZvciBHTkFU IERldmVsb3BlcnMKKytAdGl0bGUgQSBHdWlkZSBmb3IgR05BVCBEZXZlbG9wZXJzCisgQHN1YnRp dGxlIEdOQVQsIFRoZSBHTlUgQWRhIENvbXBpbGVyCisgQHZlcnNpb25zdWJ0aXRsZQorIEBhdXRo b3IgQWRhIENvcmUgVGVjaG5vbG9naWVzLCBJbmMuCistLS0gZ2NjL2RvYy9pbnZva2UudGV4aS5q agkyMDEzLTAxLTMxIDIyOjU3OjIyLjAwMDAwMDAwMCArMDEwMAorKysrIGdjYy9kb2MvaW52b2tl LnRleGkJMjAxMy0wMi0yMCAxMzowNjo0Ny41MTY0MDU3MzkgKzAxMDAKK0BAIC01NjEyLDcgKzU2 MTIsNyBAQCBEdW1wIGFmdGVyIHRoZSBwZWVwaG9sZSBwYXNzLgorIEBvcGluZGV4IGZkdW1wLXJ0 bC1wb3N0cmVsb2FkCisgRHVtcCBhZnRlciBwb3N0LXJlbG9hZCBvcHRpbWl6YXRpb25zLgorIAor LUBpdGVteCAtZmR1bXAtcnRsLXByb19hbmRfZXBpbG9ndWUKKytAaXRlbSAtZmR1bXAtcnRsLXBy b19hbmRfZXBpbG9ndWUKKyBAb3BpbmRleCBmZHVtcC1ydGwtcHJvX2FuZF9lcGlsb2d1ZQorIER1 bXAgYWZ0ZXIgZ2VuZXJhdGluZyB0aGUgZnVuY3Rpb24gcHJvbG9ndWVzIGFuZCBlcGlsb2d1ZXMu CisgCgpkaWZmIC0tZ2l0IGEvZ2NjNDgtcHI1NjI2NS5wYXRjaCBiL2djYzQ4LXByNTYyNjUucGF0 Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDY1MWRhNgotLS0gL2Rldi9u dWxsCisrKyBiL2djYzQ4LXByNTYyNjUucGF0Y2gKQEAgLTAsMCArMSwxMzIgQEAKKzIwMTMtMDIt MjAgIEphbiBIdWJpY2thICA8amhAc3VzZS5jej4KKworCVBSIHRyZWUtb3B0aW1pemF0aW9uLzU2 MjY1CisJKiBpcGEtcHJvcC5jIChpcGFfbWFrZV9lZGdlX2RpcmVjdF90b190YXJnZXQpOiBGaXh1 cCBjYWxsZ3JhcGggd2hlbiB0YXJnZXQgaXMKKwlyZWZlcmVuY2VkIGZvciBmaXJzIHR0aW1lLgor CisJKiB0ZXN0c3VpdGUvZysrLmRnL2lwYS9kZXZpcnQtMTEuQzogTmV3IHRlc3RjYXNlLgorCist LS0gZ2NjL2lwYS1wcm9wLmMJKHJldmlzaW9uIDE5NjE3NikKKysrKyBnY2MvaXBhLXByb3AuYwko cmV2aXNpb24gMTk2MTc3KQorQEAgLTIxMDAsMTAgKzIxMDAsNjUgQEAgaXBhX21ha2VfZWRnZV9k aXJlY3RfdG9fdGFyZ2V0IChzdHJ1Y3QgYworICAgaWYgKFRSRUVfQ09ERSAodGFyZ2V0KSA9PSBB RERSX0VYUFIpCisgICAgIHRhcmdldCA9IFRSRUVfT1BFUkFORCAodGFyZ2V0LCAwKTsKKyAgIGlm IChUUkVFX0NPREUgKHRhcmdldCkgIT0gRlVOQ1RJT05fREVDTCkKKy0gICAgcmV0dXJuIE5VTEw7 CisrICAgIHsKKysgICAgICB0YXJnZXQgPSBjYW5vbmljYWxpemVfY29uc3RydWN0b3JfdmFsICh0 YXJnZXQsIE5VTEwpOworKyAgICAgIGlmICghdGFyZ2V0IHx8IFRSRUVfQ09ERSAodGFyZ2V0KSAh PSBGVU5DVElPTl9ERUNMKQorKwl7CisrCSAgaWYgKGR1bXBfZmlsZSkKKysJICAgIGZwcmludGYg KGR1bXBfZmlsZSwgImlwYS1wcm9wOiBEaXNjb3ZlcmVkIGRpcmVjdCBjYWxsIHRvIG5vbi1mdW5j dGlvbiIKKysJCQkJIiBpbiAoJXMvJWkpLlxuIiwKKysJCSAgICAgY2dyYXBoX25vZGVfbmFtZSAo aWUtPmNhbGxlciksIGllLT5jYWxsZXItPnVpZCk7CisrCSAgcmV0dXJuIE5VTEw7CisrCX0KKysg ICAgfQorICAgY2FsbGVlID0gY2dyYXBoX2dldF9ub2RlICh0YXJnZXQpOworLSAgaWYgKCFjYWxs ZWUpCistICAgIHJldHVybiBOVUxMOworKworKyAgLyogQmVjYXVzZSBtYXktZWRnZXMgYXJlIG5v dCBleHBsaWNpdGVseSByZXByZXNlbnRlZCBhbmQgdnRhYmxlIG1heSBiZSBleHRlcm5hbCwKKysg ICAgIHdlIG1heSBjcmVhdGUgdGhlIGZpcnN0IHJlZmVyZW5jZSB0byB0aGUgb2JqZWN0IGluIHRo ZSB1bml0LiAgKi8KKysgIGlmICghY2FsbGVlIHx8IGNhbGxlZS0+Z2xvYmFsLmlubGluZWRfdG8p CisrICAgIHsKKysgICAgICBzdHJ1Y3QgY2dyYXBoX25vZGUgKmZpcnN0X2Nsb25lID0gY2FsbGVl OworKworKyAgICAgIC8qIFdlIGFyZSBiZXR0ZXIgdG8gZW5zdXJlIHdlIGNhbiByZWZlciB0byBp dC4KKysJIEluIHRoZSBjYXNlIG9mIHN0YXRpYyBmdW5jdGlvbnMgd2UgYXJlIG91dCBvZiBsdWNr LCBzaW5jZSB3ZSBhbHJlYWR5CQorKwkgcmVtb3ZlZCBpdHMgYm9keS4gIEluIHRoZSBjYXNlIG9m IHB1YmxpYyBmdW5jdGlvbnMgd2UgbWF5IG9yIG1heQorKwkgbm90IGludHJvZHVjZSB0aGUgcmVm ZXJlbmNlLiAgKi8KKysgICAgICBpZiAoIWNhbm9uaWNhbGl6ZV9jb25zdHJ1Y3Rvcl92YWwgKHRh cmdldCwgTlVMTCkKKysJICB8fCAhVFJFRV9QVUJMSUMgKHRhcmdldCkpCisrCXsKKysJICBpZiAo ZHVtcF9maWxlKQorKwkgICAgZnByaW50ZiAoZHVtcF9maWxlLCAiaXBhLXByb3A6IERpc2NvdmVy ZWQgY2FsbCB0byBhIGtub3duIHRhcmdldCAiCisrCQkgICAgICIoJXMvJWkgLT4gJXMvJWkpIGJ1 dCBjYW4gbm90IHJlZmVyIHRvIGl0LiBHaXZpbmcgdXAuXG4iLAorKwkJICAgICB4c3RyZHVwIChj Z3JhcGhfbm9kZV9uYW1lIChpZS0+Y2FsbGVyKSksIGllLT5jYWxsZXItPnVpZCwKKysJCSAgICAg eHN0cmR1cCAoY2dyYXBoX25vZGVfbmFtZSAoaWUtPmNhbGxlZSkpLCBpZS0+Y2FsbGVlLT51aWQp OworKwkgIHJldHVybiBOVUxMOworKwl9CisrCisrICAgICAgLyogQ3JlYXRlIHN5bWJvbCB0YWJs ZSBub2RlLiAgRXZlbiBpZiBpbmxpbmUgY2xvbmUgZXhpc3RzLCB3ZSBjYW4gbm90IHRha2UKKysJ IGl0IGFzIGEgdGFyZ2V0IG9mIG5vbi1pbmxpbmVkIGNhbGwuICAqLworKyAgICAgIGNhbGxlZSA9 IGNncmFwaF9jcmVhdGVfbm9kZSAodGFyZ2V0KTsKKysKKysgICAgICAvKiBPSywgd2UgcHJldmlv dXNseSBpbmxpbmVkIHRoZSBmdW5jdGlvbiwgdGhlbiByZW1vdmVkIHRoZSBvZmZsaW5lIGNvcHkg YW5kCisrCSBub3cgd2Ugd2FudCBpdCBiYWNrIGZvciBleHRlcm5hbCBjYWxsLiAgVGhpcyBjYW4g aGFwcGVuIHdoZW4gZGV2aXJ0dWFsaXppbmcKKysJIHdoaWxlIGlubGluaW5nIGZ1bmN0aW9uIGNh bGxlZCBvbmNlIHRoYXQgaGFwcGVucyBhZnRlciBleHRlcm4gaW5saW5lZCBhbmQKKysJIHZpcnR1 YWxzIGFyZSBhbHJlYWR5IHJlbW92ZWQuICBJbiB0aGlzIGNhc2UgaW50cm9kdWNlIHRoZSBleHRl cm5hbCBub2RlCisrCSBhbmQgbWFrZSBpdCBhdmFpbGFibGUgZm9yIGNhbGwuICAqLworKyAgICAg IGlmIChmaXJzdF9jbG9uZSkKKysJeworKwkgIGZpcnN0X2Nsb25lLT5jbG9uZV9vZiA9IGNhbGxl ZTsKKysJICBjYWxsZWUtPmNsb25lcyA9IGZpcnN0X2Nsb25lOworKwkgIHN5bXRhYl9wcmV2YWls X2luX2FzbV9uYW1lX2hhc2ggKChzeW10YWJfbm9kZSljYWxsZWUpOworKwkgIHN5bXRhYl9pbnNl cnRfbm9kZV90b19oYXNodGFibGUgKChzeW10YWJfbm9kZSljYWxsZWUpOworKwkgIGlmIChkdW1w X2ZpbGUpCisrCSAgICBmcHJpbnRmIChkdW1wX2ZpbGUsICJpcGEtcHJvcDogSW50cm9kdWNlZCBu ZXcgZXh0ZXJuYWwgbm9kZSAiCisrCQkgICAgICIoJXMvJWkpIGFuZCB0dXJuZWQgaW50byByb290 IG9mIHRoZSBjbG9uZSB0cmVlLlxuIiwKKysJCSAgICAgeHN0cmR1cCAoY2dyYXBoX25vZGVfbmFt ZSAoY2FsbGVlKSksIGNhbGxlZS0+dWlkKTsKKysJfQorKyAgICAgIGVsc2UgaWYgKGR1bXBfZmls ZSkKKysJZnByaW50ZiAoZHVtcF9maWxlLCAiaXBhLXByb3A6IEludHJvZHVjZWQgbmV3IGV4dGVy bmFsIG5vZGUgIgorKwkJICIoJXMvJWkpLlxuIiwKKysJCSB4c3RyZHVwIChjZ3JhcGhfbm9kZV9u YW1lIChjYWxsZWUpKSwgY2FsbGVlLT51aWQpOworKyAgICB9CisgICBpcGFfY2hlY2tfY3JlYXRl X25vZGVfcGFyYW1zICgpOworIAorICAgLyogV2UgY2FuIG5vdCBtYWtlIGVkZ2VzIHRvIGlubGlu ZSBjbG9uZXMuICBJdCBpcyBidWcgdGhhdCBzb21lb25lIHJlbW92ZWQKKy0tLSBnY2MvdGVzdHN1 aXRlL2crKy5kZy9pcGEvZGV2aXJ0LTExLkMJKHJldmlzaW9uIDApCisrKysgZ2NjL3Rlc3RzdWl0 ZS9nKysuZGcvaXBhL2RldmlydC0xMS5DCShyZXZpc2lvbiAxOTYxNzcpCitAQCAtMCwwICsxLDUw IEBACisrLyogeyBkZy1kbyBjb21waWxlIH0gKi8KKysvKiB7IGRnLW9wdGlvbnMgIi1PMiAtZmR1 bXAtaXBhLWlubGluZSIgfSAqLworK2ludCBiYXogKCk7Cisrc3RydWN0IEEKKyt7CisrICB2aXJ0 dWFsIGludCBmbjIgKCkgPSAwOworKyAgdmlydHVhbCBpbnQgKmZuMyAoKTsKKysgIGRvdWJsZSAq Zm40ICgpOworKyAgaW50IGZuNSAoaW50KTsKKysgIHRlbXBsYXRlIDxjbGFzcyBUPgorKyAgdm9p ZCBmbjEgKEEgJiwgVCkgeyBmbjMgKCk7IGZuNCAoKTsgZm4yICgpOyB9CisrfTsKKytzdHJ1Y3Qg QiA6IEEKKyt7CisrICBpbnQgZm4yICgpIHsgcmV0dXJuIDY7IH0KKysgIHZvaWQgZm4zIChpbnQs IGRvdWJsZSk7CisrICBCIChib29sID0gdHJ1ZSk7CisrICBCIChpbnQsIGludCk7CisrfTsKKyt0 ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KKyt2b2lkCisrZm9vIChCICZ4LCBBICZ5LCBBICZ6KQorK3sK KysgIHkuZm4yICgpOworKyAgei5mbjIgKCk7CisrICBpbnQgaSA9IGJheiAoKTsKKysgIGludCBq ID0gKHkuZm4zICgpKVtpXTsKKysgIHguZm4zIChqLCAoeS5mbjQgKCkpW2ldICsgKHouZm40ICgp KVt6LmZuNSAoaildKTsKKyt9CisraW5saW5lIEIKKytvcGVyYXRvcisgKEEgJnksIEEgJnopCisr eworKyAgQiB4OworKyAgZm9vPGludD4gKHgsIHksIHopOworKyAgcmV0dXJuIHg7CisrfQorK3Zv aWQKKytiYXIgKCkKKyt7CisrICBCIGEsIGIsIGMgKDQsIDApLCBkOworKyAgYS5mbjEgKGIsIC42 KTsKKysgIGJheiAoKTsKKysgIGMgKyBkOworK30KKysvKiBXaGlsZSBpbmxpbmluZyBmdW5jdGlv biBjYWxsZWQgb25jZSB3ZSBzaG91bGQgZGV2aXJ0dWFsaXplIGEgbmV3IGNhbGwgdG8gZm4yCisr ICAgYW5kIHR3byB0byBmbjMuIFdoaWxlIGRvaW5nIHNvIHRoZSBuZXcgc3ltYm9sIGZvciBmbjIg bmVlZHMgdG8gYmUKKysgICBpbnRyb2R1Y2VkLiAgKi8KKysvKiB7IGRnLWZpbmFsIHsgc2Nhbi1p cGEtZHVtcC10aW1lcyAiRGlzY292ZXJlZCBhIHZpcnR1YWwgY2FsbCB0byBhIGtub3duIHRhcmdl dCIgMyAiaW5saW5lIiAgfSB9ICovCisrLyogeyBkZy1maW5hbCB7IHNjYW4taXBhLWR1bXAtdGlt ZXMgImFuZCB0dXJuZWQgaW50byByb290IG9mIHRoZSBjbG9uZSB0cmVlIiAxICJpbmxpbmUiICB9 IH0gKi8KKysvKiB7IGRnLWZpbmFsIHsgY2xlYW51cC1pcGEtZHVtcCAiaW5saW5lIiB9IH0gKi8K CmRpZmYgLS1naXQgYS9nY2M0OC1wcjU2NDA1LnBhdGNoIGIvZ2NjNDgtcHI1NjQwNS5wYXRjaApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMWNkZGIxCi0tLSAvZGV2L251bGwK KysrIGIvZ2NjNDgtcHI1NjQwNS5wYXRjaApAQCAtMCwwICsxLDM2IEBACisyMDEzLTAyLTIwICBK YWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4KKworCVBSIGlubGluZS1hc20vNTY0MDUK KwkqIGV4cHIuYyAoZXhwYW5kX2V4cHJfcmVhbF8xKSA8Y2FzZSBUQVJHRVRfTUVNX1JFRiwgTUVN X1JFRj46IERvbid0CisJdXNlIG1vdm1pc2FsaWduIG9yIGV4dHJhY3RfYml0X2ZpZWxkIGZvciBF WFBBTkRfTUVNT1JZIG1vZGlmaWVyLgorCisJKiBnY2MuYy10b3J0dXJlL2NvbXBpbGUvcHI1NjQw NS5jOiBOZXcgdGVzdC4KKworLS0tIGdjYy9leHByLmMuamoJMjAxMy0wMS0xOCAxODowOTo0MC4w MDAwMDAwMDAgKzAxMDAKKysrKyBnY2MvZXhwci5jCTIwMTMtMDItMjAgMTA6Mjk6MzQuNTEzMTQz NjM0ICswMTAwCitAQCAtOTU1MSw2ICs5NTUxLDcgQEAgZXhwYW5kX2V4cHJfcmVhbF8xICh0cmVl IGV4cCwgcnR4IHRhcmdldAorIAlzZXRfbWVtX2FkZHJfc3BhY2UgKHRlbXAsIGFzKTsKKyAJYWxp Z24gPSBnZXRfb2JqZWN0X2FsaWdubWVudCAoZXhwKTsKKyAJaWYgKG1vZGlmaWVyICE9IEVYUEFO RF9XUklURQorKwkgICAgJiYgbW9kaWZpZXIgIT0gRVhQQU5EX01FTU9SWQorIAkgICAgJiYgbW9k ZSAhPSBCTEttb2RlCisgCSAgICAmJiBhbGlnbiA8IEdFVF9NT0RFX0FMSUdOTUVOVCAobW9kZSkK KyAJICAgIC8qIElmIHRoZSB0YXJnZXQgZG9lcyBub3QgaGF2ZSBzcGVjaWFsIGhhbmRsaW5nIGZv ciB1bmFsaWduZWQKK0BAIC05NjM5LDYgKzk2NDAsNyBAQCBleHBhbmRfZXhwcl9yZWFsXzEgKHRy ZWUgZXhwLCBydHggdGFyZ2V0CisgCWlmIChUUkVFX1RISVNfVk9MQVRJTEUgKGV4cCkpCisgCSAg TUVNX1ZPTEFUSUxFX1AgKHRlbXApID0gMTsKKyAJaWYgKG1vZGlmaWVyICE9IEVYUEFORF9XUklU RQorKwkgICAgJiYgbW9kaWZpZXIgIT0gRVhQQU5EX01FTU9SWQorIAkgICAgJiYgbW9kZSAhPSBC TEttb2RlCisgCSAgICAmJiBhbGlnbiA8IEdFVF9NT0RFX0FMSUdOTUVOVCAobW9kZSkpCisgCSAg eworLS0tIGdjYy90ZXN0c3VpdGUvZ2NjLmMtdG9ydHVyZS9jb21waWxlL3ByNTY0MDUuYy5qagky MDEzLTAyLTIwIDEwOjMyOjE3LjgwNzI1MDk3OSArMDEwMAorKysrIGdjYy90ZXN0c3VpdGUvZ2Nj LmMtdG9ydHVyZS9jb21waWxlL3ByNTY0MDUuYwkyMDEzLTAyLTIwIDEwOjMyOjQ2Ljk2MzA5MDg3 MyArMDEwMAorQEAgLTAsMCArMSw3IEBACisrLyogUFIgaW5saW5lLWFzbS81NjQwNSAqLworKwor K3ZvaWQKKytmb28gKHZvaWQpCisreworKyAgYXNtIHZvbGF0aWxlICgiIiA6ICIrbSIgKCoodm9s YXRpbGUgdW5zaWduZWQgc2hvcnQgKikgMHgxMDAxVUwpKTsKKyt9CgpkaWZmIC0tZ2l0IGEvZ2Nj NDgtdW51c2VkLWxvY2Fscy5wYXRjaCBiL2djYzQ4LXVudXNlZC1sb2NhbHMucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGZmMTZkZQotLS0gL2Rldi9udWxsCisrKyBi L2djYzQ4LXVudXNlZC1sb2NhbHMucGF0Y2gKQEAgLTAsMCArMSwyOTcgQEAKKzIwMTMtMDItMjAg IFJpY2hhcmQgQmllbmVyICA8cmd1ZW50aGVyQHN1c2UuZGU+CisKKwkqIHRyZWUtY2FsbC1jZGNl LmMgKHRyZWVfY2FsbF9jZGNlKTogRG8gbm90IHJlbW92ZSB1bnVzZWQgbG9jYWxzLgorCSogdHJl ZS1zc2EtZm9yd3Byb3AuYyAoc3NhX2ZvcndhcmRfcHJvcGFnYXRlX2FuZF9jb21iaW5lKTogTGlr ZXdpc2UuCisJKiB0cmVlLXNzYS1kY2UuYyAocGVyZm9ybV90cmVlX3NzYV9kY2UpOiBMaWtld2lz ZS4KKwkqIHRyZWUtc3NhLWNvcHlyZW5hbWUuYyAoY29weV9yZW5hbWVfcGFydGl0aW9uX2NvYWxl c2NlKTogRG8KKwlub3QgcmV0dXJuIGFueXRoaW5nLgorCShyZW5hbWVfc3NhX2NvcGllcyk6IERv IG5vdCByZW1vdmUgdW51c2VkIGxvY2Fscy4KKwkqIHRyZWUtc3NhLWNjcC5jIChkb19zc2FfY2Nw KTogTGlrZXdpc2UuCisJKiB0cmVlLXNzYW5hbWVzLmMgKHBhc3NfcmVsZWFzZV9zc2FfbmFtZXMp OiBSZW1vdmUgdW51c2VkCisJbG9jYWxzIGZpcnN0LgorCSogcGFzc2VzLmMgKGV4ZWN1dGVfZnVu Y3Rpb25fdG9kbyk6IERvIG5vdCBzY2hlZHVsZSB1bnVzZWQgbG9jYWxzCisJcmVtb3ZhbCBpZiBj bGVhbnVwX3RyZWVfY2ZnIGRpZCBzb21ldGhpbmcuCisJKiB0cmVlLXNzYS1saXZlLmMgKHJlbW92 ZV91bnVzZWRfbG9jYWxzKTogRHVtcCBzdGF0aXN0aWNzCisJYWJvdXQgdGhlIG51bWJlciBvZiBy ZW1vdmVkIGxvY2Fscy4KKworCSogZ2NjLmRnL3RyZWUtc3NhL2Zvcndwcm9wLTguYzogQWRqdXN0 LgorCistLS0gZ2NjL3RyZWUtc3NhLWNvcHlyZW5hbWUuYwkocmV2aXNpb24gMTk2MTczKQorKysr IGdjYy90cmVlLXNzYS1jb3B5cmVuYW1lLmMJKHJldmlzaW9uIDE5NjE3NCkKK0BAIC0xMTMsNyAr MTEzLDcgQEAgc3RhdGljIHN0cnVjdAorIC8qIENvYWxlc2NlIHRoZSBwYXJ0aXRpb25zIGluIE1B UCByZXByZXNlbnRpbmcgVkFSMSBhbmQgVkFSMiBpZiBpdCBpcyB2YWxpZC4KKyAgICBDaG9vc2Ug YSByZXByZXNlbnRhdGl2ZSBmb3IgdGhlIHBhcnRpdGlvbiwgYW5kIHNlbmQgZGVidWcgaW5mbyB0 byBERUJVRy4gICovCisgCistc3RhdGljIGJvb2wKKytzdGF0aWMgdm9pZAorIGNvcHlfcmVuYW1l X3BhcnRpdGlvbl9jb2FsZXNjZSAodmFyX21hcCBtYXAsIHRyZWUgdmFyMSwgdHJlZSB2YXIyLCBG SUxFICpkZWJ1ZykKKyB7CisgICBpbnQgcDEsIHAyLCBwMzsKK0BAIC0xNDYsNyArMTQ2LDcgQEAg Y29weV9yZW5hbWVfcGFydGl0aW9uX2NvYWxlc2NlICh2YXJfbWFwCisgICAgIHsKKyAgICAgICBp ZiAoZGVidWcpCisgCWZwcmludGYgKGRlYnVnLCAiIDogQWxyZWFkeSBjb2FsZXNjZWQuXG4iKTsK Ky0gICAgICByZXR1cm4gZmFsc2U7CisrICAgICAgcmV0dXJuOworICAgICB9CisgCisgICByZXAx ID0gcGFydGl0aW9uX3RvX3ZhciAobWFwLCBwMSk7CitAQCAtMTU0LDcgKzE1NCw3IEBAIGNvcHlf cmVuYW1lX3BhcnRpdGlvbl9jb2FsZXNjZSAodmFyX21hcAorICAgcm9vdDEgPSBTU0FfTkFNRV9W QVIgKHJlcDEpOworICAgcm9vdDIgPSBTU0FfTkFNRV9WQVIgKHJlcDIpOworICAgaWYgKCFyb290 MSAmJiAhcm9vdDIpCistICAgIHJldHVybiBmYWxzZTsKKysgICAgcmV0dXJuOworIAorICAgLyog RG9uJ3QgY29hbGVzY2UgaWYgb25lIG9mIHRoZSB2YXJpYWJsZXMgb2NjdXJzIGluIGFuIGFibm9y bWFsIFBISS4gICovCisgICBhYm5vcm0gPSAoU1NBX05BTUVfT0NDVVJTX0lOX0FCTk9STUFMX1BI SSAocmVwMSkKK0BAIC0xNjMsNyArMTYzLDcgQEAgY29weV9yZW5hbWVfcGFydGl0aW9uX2NvYWxl c2NlICh2YXJfbWFwCisgICAgIHsKKyAgICAgICBpZiAoZGVidWcpCisgCWZwcmludGYgKGRlYnVn LCAiIDogQWJub3JtYWwgUEhJIGJhcnJpZXIuICBObyBjb2FsZXNjZS5cbiIpOworLSAgICAgIHJl dHVybiBmYWxzZTsKKysgICAgICByZXR1cm47CisgICAgIH0KKyAKKyAgIC8qIFBhcnRpdGlvbnMg YWxyZWFkeSBoYXZlIHRoZSBzYW1lIHJvb3QsIHNpbXBseSBtZXJnZSB0aGVtLiAgKi8KK0BAIC0x NzIsNyArMTcyLDcgQEAgY29weV9yZW5hbWVfcGFydGl0aW9uX2NvYWxlc2NlICh2YXJfbWFwCisg ICAgICAgcDEgPSBwYXJ0aXRpb25fdW5pb24gKG1hcC0+dmFyX3BhcnRpdGlvbiwgcDEsIHAyKTsK KyAgICAgICBpZiAoZGVidWcpCisgCWZwcmludGYgKGRlYnVnLCAiIDogU2FtZSByb290LCBjb2Fs ZXNjZWQgLS0+IFAlZC5cbiIsIHAxKTsKKy0gICAgICByZXR1cm4gZmFsc2U7CisrICAgICAgcmV0 dXJuOworICAgICB9CisgCisgICAvKiBOZXZlciBhdHRlbXB0IHRvIGNvYWxlc2NlIDIgZGlmZmVy ZW50IHBhcmFtZXRlcnMuICAqLworQEAgLTE4MSw3ICsxODEsNyBAQCBjb3B5X3JlbmFtZV9wYXJ0 aXRpb25fY29hbGVzY2UgKHZhcl9tYXAKKyAgICAgeworICAgICAgIGlmIChkZWJ1ZykKKyAgICAg ICAgIGZwcmludGYgKGRlYnVnLCAiIDogMiBkaWZmZXJlbnQgUEFSTV9ERUNMUy4gTm8gY29hbGVz Y2UuXG4iKTsKKy0gICAgICByZXR1cm4gZmFsc2U7CisrICAgICAgcmV0dXJuOworICAgICB9Cisg CisgICBpZiAoKHJvb3QxICYmIFRSRUVfQ09ERSAocm9vdDEpID09IFJFU1VMVF9ERUNMKQorQEAg LTE4OSw3ICsxODksNyBAQCBjb3B5X3JlbmFtZV9wYXJ0aXRpb25fY29hbGVzY2UgKHZhcl9tYXAK KyAgICAgeworICAgICAgIGlmIChkZWJ1ZykKKyAgICAgICAgIGZwcmludGYgKGRlYnVnLCAiIDog T25lIHJvb3QgYSBSRVNVTFRfREVDTC4gTm8gY29hbGVzY2UuXG4iKTsKKy0gICAgICByZXR1cm4g ZmFsc2U7CisrICAgICAgcmV0dXJuOworICAgICB9CisgCisgICBpZ24xID0gIXJvb3QxIHx8IChU UkVFX0NPREUgKHJvb3QxKSA9PSBWQVJfREVDTCAmJiBERUNMX0lHTk9SRURfUCAocm9vdDEpKTsK K0BAIC0yMDYsNyArMjA2LDcgQEAgY29weV9yZW5hbWVfcGFydGl0aW9uX2NvYWxlc2NlICh2YXJf bWFwCisgCXsKKyAJICBpZiAoZGVidWcpCisgCSAgICBmcHJpbnRmIChkZWJ1ZywgIiA6IDIgZGlm ZmVyZW50IFVTRVIgdmFycy4gTm8gY29hbGVzY2UuXG4iKTsKKy0JICByZXR1cm4gZmFsc2U7Cisr CSAgcmV0dXJuOworIAl9CisgICAgICAgZWxzZQorIAlpZ24yID0gdHJ1ZTsKK0BAIC0yMjAsNyAr MjIwLDcgQEAgY29weV9yZW5hbWVfcGFydGl0aW9uX2NvYWxlc2NlICh2YXJfbWFwCisgCXsKKyAJ ICBpZiAoZGVidWcpCisgCSAgICBmcHJpbnRmIChkZWJ1ZywgIiA6IDIgZGVmYXVsdCBkZWZzLiBO byBjb2FsZXNjZS5cbiIpOworLQkgIHJldHVybiBmYWxzZTsKKysJICByZXR1cm47CisgCX0KKyAg ICAgICBlbHNlCisgICAgICAgICB7CitAQCAtMjQwLDcgKzI0MCw3IEBAIGNvcHlfcmVuYW1lX3Bh cnRpdGlvbl9jb2FsZXNjZSAodmFyX21hcAorICAgICB7CisgICAgICAgaWYgKGRlYnVnKQorIAlm cHJpbnRmIChkZWJ1ZywgIiA6IENob29zZW4gdmFyaWFibGUgaGFzIG5vIHJvb3QuICBObyBjb2Fs ZXNjZS5cbiIpOworLSAgICAgIHJldHVybiBmYWxzZTsKKysgICAgICByZXR1cm47CisgICAgIH0K KyAKKyAgIC8qIERvbid0IGNvYWxlc2NlIGlmIHRoZSBuZXcgY2hvc2VuIHJvb3QgdmFyaWFibGUg d291bGQgYmUgcmVhZC1vbmx5LgorQEAgLTI1Myw3ICsyNTMsNyBAQCBjb3B5X3JlbmFtZV9wYXJ0 aXRpb25fY29hbGVzY2UgKHZhcl9tYXAKKyAgICAgeworICAgICAgIGlmIChkZWJ1ZykKKyAJZnBy aW50ZiAoZGVidWcsICIgOiBSZWFkb25seSB2YXJpYWJsZS4gIE5vIGNvYWxlc2NlLlxuIik7Cist ICAgICAgcmV0dXJuIGZhbHNlOworKyAgICAgIHJldHVybjsKKyAgICAgfQorIAorICAgLyogRG9u J3QgY29hbGVzY2UgaWYgdGhlIHR3byB2YXJpYWJsZXMgYXJlbid0IHR5cGUgY29tcGF0aWJsZSAu ICAqLworQEAgLTI2Niw3ICsyNjYsNyBAQCBjb3B5X3JlbmFtZV9wYXJ0aXRpb25fY29hbGVzY2Ug KHZhcl9tYXAKKyAgICAgeworICAgICAgIGlmIChkZWJ1ZykKKyAJZnByaW50ZiAoZGVidWcsICIg OiBJbmNvbXBhdGlibGUgdHlwZXMuICBObyBjb2FsZXNjZS5cbiIpOworLSAgICAgIHJldHVybiBm YWxzZTsKKysgICAgICByZXR1cm47CisgICAgIH0KKyAKKyAgIC8qIE1lcmdlIHRoZSB0d28gcGFy dGl0aW9ucy4gICovCitAQCAtMjg4LDcgKzI4OCw2IEBAIGNvcHlfcmVuYW1lX3BhcnRpdGlvbl9j b2FsZXNjZSAodmFyX21hcAorIAkJCSAgVERGX1NMSU0pOworICAgICAgIGZwcmludGYgKGRlYnVn LCAiXG4iKTsKKyAgICAgfQorLSAgcmV0dXJuIHRydWU7CisgfQorIAorIAorQEAgLTMwOCw3ICsz MDcsNiBAQCByZW5hbWVfc3NhX2NvcGllcyAodm9pZCkKKyAgIGdpbXBsZSBzdG10LCBwaGk7Cisg ICB1bnNpZ25lZCB4OworICAgRklMRSAqZGVidWc7CistICBib29sIHVwZGF0ZWQgPSBmYWxzZTsK KyAKKyAgIG1lbXNldCAoJnN0YXRzLCAwLCBzaXplb2YgKHN0YXRzKSk7CisgCitAQCAtMzMwLDcg KzMyOCw3IEBAIHJlbmFtZV9zc2FfY29waWVzICh2b2lkKQorIAkgICAgICB0cmVlIGxocyA9IGdp bXBsZV9hc3NpZ25fbGhzIChzdG10KTsKKyAJICAgICAgdHJlZSByaHMgPSBnaW1wbGVfYXNzaWdu X3JoczEgKHN0bXQpOworIAorLQkgICAgICB1cGRhdGVkIHw9IGNvcHlfcmVuYW1lX3BhcnRpdGlv bl9jb2FsZXNjZSAobWFwLCBsaHMsIHJocywgZGVidWcpOworKwkgICAgICBjb3B5X3JlbmFtZV9w YXJ0aXRpb25fY29hbGVzY2UgKG1hcCwgbGhzLCByaHMsIGRlYnVnKTsKKyAJICAgIH0KKyAJfQor ICAgICB9CitAQCAtMzU4LDggKzM1Niw4IEBAIHJlbmFtZV9zc2FfY29waWVzICh2b2lkKQorIAkg ICAgICB7CisgCQl0cmVlIGFyZyA9IFBISV9BUkdfREVGIChwaGksIGkpOworIAkJaWYgKFRSRUVf Q09ERSAoYXJnKSA9PSBTU0FfTkFNRSkKKy0JCSAgdXBkYXRlZCB8PSBjb3B5X3JlbmFtZV9wYXJ0 aXRpb25fY29hbGVzY2UgKG1hcCwgcmVzLCBhcmcsCistCQkJCQkJCSAgICAgZGVidWcpOworKwkJ ICBjb3B5X3JlbmFtZV9wYXJ0aXRpb25fY29hbGVzY2UgKG1hcCwgcmVzLCBhcmcsCisrCQkJCQkJ ICBkZWJ1Zyk7CisgCSAgICAgIH0KKyAJICAvKiBFbHNlIGlmIGFsbCBhcmd1bWVudHMgYXJlIGlu IHRoZSBzYW1lIHBhcnRpdGlvbiB0cnkgdG8gbWVyZ2UKKyAJICAgICBpdCB3aXRoIHRoZSByZXN1 bHQuICAqLworQEAgLTM5MCw5ICszODgsOSBAQCByZW5hbWVfc3NhX2NvcGllcyAodm9pZCkKKyAJ CSAgICB9CisgCQl9CisgCSAgICAgIGlmIChhbGxfcF9zYW1lID09IDEpCistCQl1cGRhdGVkIHw9 IGNvcHlfcmVuYW1lX3BhcnRpdGlvbl9jb2FsZXNjZSAobWFwLCByZXMsCistCQkJCQkJCSAgIFBI SV9BUkdfREVGIChwaGksIDApLAorLQkJCQkJCQkgICBkZWJ1Zyk7CisrCQljb3B5X3JlbmFtZV9w YXJ0aXRpb25fY29hbGVzY2UgKG1hcCwgcmVzLAorKwkJCQkJCVBISV9BUkdfREVGIChwaGksIDAp LAorKwkJCQkJCWRlYnVnKTsKKyAJICAgIH0KKyAgICAgICAgIH0KKyAgICAgfQorQEAgLTQyNiw3 ICs0MjQsNyBAQCByZW5hbWVfc3NhX2NvcGllcyAodm9pZCkKKyAgIHN0YXRpc3RpY3NfY291bnRl cl9ldmVudCAoY2Z1biwgImNvcGllcyBjb2FsZXNjZWQiLAorIAkJCSAgICBzdGF0cy5jb2FsZXNj ZWQpOworICAgZGVsZXRlX3Zhcl9tYXAgKG1hcCk7CistICByZXR1cm4gdXBkYXRlZCA/IFRPRE9f cmVtb3ZlX3VudXNlZF9sb2NhbHMgOiAwOworKyAgcmV0dXJuIDA7CisgfQorIAorIC8qIFJldHVy biB0cnVlIGlmIGNvcHkgcmVuYW1lIGlzIHRvIGJlIHBlcmZvcm1lZC4gICovCistLS0gZ2NjL3Ry ZWUtc3NhLWNjcC5jCShyZXZpc2lvbiAxOTYxNzMpCisrKysgZ2NjL3RyZWUtc3NhLWNjcC5jCShy ZXZpc2lvbiAxOTYxNzQpCitAQCAtMjEwOCw3ICsyMTA4LDcgQEAgZG9fc3NhX2NjcCAodm9pZCkK KyAgIGNjcF9pbml0aWFsaXplICgpOworICAgc3NhX3Byb3BhZ2F0ZSAoY2NwX3Zpc2l0X3N0bXQs IGNjcF92aXNpdF9waGlfbm9kZSk7CisgICBpZiAoY2NwX2ZpbmFsaXplICgpKQorLSAgICB0b2Rv ID0gKFRPRE9fY2xlYW51cF9jZmcgfCBUT0RPX3VwZGF0ZV9zc2EgfCBUT0RPX3JlbW92ZV91bnVz ZWRfbG9jYWxzKTsKKysgICAgdG9kbyA9IChUT0RPX2NsZWFudXBfY2ZnIHwgVE9ET191cGRhdGVf c3NhKTsKKyAgIGZyZWVfZG9taW5hbmNlX2luZm8gKENESV9ET01JTkFUT1JTKTsKKyAgIHJldHVy biB0b2RvOworIH0KKy0tLSBnY2MvdHJlZS1jYWxsLWNkY2UuYwkocmV2aXNpb24gMTk2MTczKQor KysrIGdjYy90cmVlLWNhbGwtY2RjZS5jCShyZXZpc2lvbiAxOTYxNzQpCitAQCAtODk4LDExICs4 OTgsMTAgQEAgdHJlZV9jYWxsX2NkY2UgKHZvaWQpCisgICAgICAgLyogQXMgd2UgaW50cm9kdWNl ZCBuZXcgY29udHJvbC1mbG93IHdlIG5lZWQgdG8gaW5zZXJ0IFBISS1ub2RlcworICAgICAgICAg IGZvciB0aGUgY2FsbC1jbG9iYmVycyBvZiB0aGUgcmVtYWluaW5nIGNhbGwuICAqLworICAgICAg IG1hcmtfdmlydHVhbF9vcGVyYW5kc19mb3JfcmVuYW1pbmcgKGNmdW4pOworLSAgICAgIHJldHVy biAoVE9ET191cGRhdGVfc3NhIHwgVE9ET19jbGVhbnVwX2NmZyB8IFRPRE9fZ2djX2NvbGxlY3QK Ky0gICAgICAgICAgICAgIHwgVE9ET19yZW1vdmVfdW51c2VkX2xvY2Fscyk7CisrICAgICAgcmV0 dXJuIFRPRE9fdXBkYXRlX3NzYTsKKyAgICAgfQorLSAgZWxzZQorLSAgICByZXR1cm4gMDsKKysK KysgIHJldHVybiAwOworIH0KKyAKKyBzdGF0aWMgYm9vbAorLS0tIGdjYy90cmVlLXNzYS1saXZl LmMJKHJldmlzaW9uIDE5NjE3MykKKysrKyBnY2MvdHJlZS1zc2EtbGl2ZS5jCShyZXZpc2lvbiAx OTYxNzQpCitAQCAtODg5LDcgKzg4OSwxMCBAQCByZW1vdmVfdW51c2VkX2xvY2FscyAodm9pZCkK KyAgICAgICBkc3RpZHgrKzsKKyAgICAgfQorICAgaWYgKGRzdGlkeCAhPSBudW0pCistICAgIGNm dW4tPmxvY2FsX2RlY2xzLT50cnVuY2F0ZSAoZHN0aWR4KTsKKysgICAgeworKyAgICAgIHN0YXRp c3RpY3NfY291bnRlcl9ldmVudCAoY2Z1biwgInVudXNlZCBWQVJfREVDTHMgcmVtb3ZlZCIsIG51 bSAtIGRzdGlkeCk7CisrICAgICAgY2Z1bi0+bG9jYWxfZGVjbHMtPnRydW5jYXRlIChkc3RpZHgp OworKyAgICB9CisgCisgICByZW1vdmVfdW51c2VkX3Njb3BlX2Jsb2NrX3AgKERFQ0xfSU5JVElB TCAoY3VycmVudF9mdW5jdGlvbl9kZWNsKSk7CisgICBjbGVhcl91bnVzZWRfYmxvY2tfcG9pbnRl ciAoKTsKKy0tLSBnY2MvdHJlZS1zc2EtZm9yd3Byb3AuYwkocmV2aXNpb24gMTk2MTczKQorKysr IGdjYy90cmVlLXNzYS1mb3J3cHJvcC5jCShyZXZpc2lvbiAxOTYxNzQpCitAQCAtMjkzNiw3ICsy OTM2LDYgQEAgc3NhX2ZvcndhcmRfcHJvcGFnYXRlX2FuZF9jb21iaW5lICh2b2lkKQorIAkJICAm JiBmb3J3YXJkX3Byb3BhZ2F0ZV9hZGRyX2V4cHIgKGxocywgcmhzKSkKKyAJCXsKKyAJCSAgcmVs ZWFzZV9kZWZzIChzdG10KTsKKy0JCSAgdG9kb2ZsYWdzIHw9IFRPRE9fcmVtb3ZlX3VudXNlZF9s b2NhbHM7CisgCQkgIGdzaV9yZW1vdmUgKCZnc2ksIHRydWUpOworIAkJfQorIAkgICAgICBlbHNl CitAQCAtMjk2MSw3ICsyOTYwLDYgQEAgc3NhX2ZvcndhcmRfcHJvcGFnYXRlX2FuZF9jb21iaW5l ICh2b2lkKQorIAkJCQkJCQkgICAgICAgb2ZmKSkpKSkKKyAJCXsKKyAJCSAgcmVsZWFzZV9kZWZz IChzdG10KTsKKy0JCSAgdG9kb2ZsYWdzIHw9IFRPRE9fcmVtb3ZlX3VudXNlZF9sb2NhbHM7Cisg CQkgIGdzaV9yZW1vdmUgKCZnc2ksIHRydWUpOworIAkJfQorIAkgICAgICBlbHNlIGlmIChpc19n aW1wbGVfbWluX2ludmFyaWFudCAocmhzKSkKKy0tLSBnY2MvdHJlZS1zc2EtZGNlLmMJKHJldmlz aW9uIDE5NjE3MykKKysrKyBnY2MvdHJlZS1zc2EtZGNlLmMJKHJldmlzaW9uIDE5NjE3NCkKK0BA IC0xNjA3LDEwICsxNjA3LDggQEAgcGVyZm9ybV90cmVlX3NzYV9kY2UgKGJvb2wgYWdncmVzc2l2 ZSkKKyAgIGZyZWVfZWRnZV9saXN0IChlbCk7CisgCisgICBpZiAoc29tZXRoaW5nX2NoYW5nZWQp CistICAgIHJldHVybiAoVE9ET191cGRhdGVfc3NhIHwgVE9ET19jbGVhbnVwX2NmZyB8IFRPRE9f Z2djX2NvbGxlY3QKKy0JICAgIHwgVE9ET19yZW1vdmVfdW51c2VkX2xvY2Fscyk7CistICBlbHNl CistICAgIHJldHVybiAwOworKyAgICByZXR1cm4gVE9ET191cGRhdGVfc3NhIHwgVE9ET19jbGVh bnVwX2NmZzsKKysgIHJldHVybiAwOworIH0KKyAKKyAvKiBQYXNzIGVudHJ5IHBvaW50cy4gICov CistLS0gZ2NjL3Bhc3Nlcy5jCShyZXZpc2lvbiAxOTYxNzMpCisrKysgZ2NjL3Bhc3Nlcy5jCShy ZXZpc2lvbiAxOTYxNzQpCitAQCAtMTkxOCwxMCArMTkxOCw3IEBAIGV4ZWN1dGVfZnVuY3Rpb25f dG9kbyAodm9pZCAqZGF0YSkKKyAgIC8qIEFsd2F5cyBjbGVhbnVwIHRoZSBDRkcgYmVmb3JlIHRy eWluZyB0byB1cGRhdGUgU1NBLiAgKi8KKyAgIGlmIChmbGFncyAmIFRPRE9fY2xlYW51cF9jZmcp CisgICAgIHsKKy0gICAgICBib29sIGNsZWFudXAgPSBjbGVhbnVwX3RyZWVfY2ZnICgpOworLQor LSAgICAgIGlmIChjbGVhbnVwICYmIChjZnVuLT5jdXJyX3Byb3BlcnRpZXMgJiBQUk9QX3NzYSkp CistCWZsYWdzIHw9IFRPRE9fcmVtb3ZlX3VudXNlZF9sb2NhbHM7CisrICAgICAgY2xlYW51cF90 cmVlX2NmZyAoKTsKKyAKKyAgICAgICAvKiBXaGVuIGNsZWFudXBfdHJlZV9jZmcgbWVyZ2VzIGNv bnNlY3V0aXZlIGJsb2NrcywgaXQgbWF5CisgCSBwZXJmb3JtIHNvbWUgc2ltcGxpc3RpYyBwcm9w YWdhdGlvbiB3aGVuIHJlbW92aW5nIHNpbmdsZQorLS0tIGdjYy90cmVlLXNzYW5hbWVzLmMJKHJl dmlzaW9uIDE5NjE3MykKKysrKyBnY2MvdHJlZS1zc2FuYW1lcy5jCShyZXZpc2lvbiAxOTYxNzQp CitAQCAtNDU1LDcgKzQ1NSw3IEBAIHN0cnVjdCBnaW1wbGVfb3B0X3Bhc3MgcGFzc19yZWxlYXNl X3NzYV8KKyAgIFBST1Bfc3NhLAkJCQkvKiBwcm9wZXJ0aWVzX3JlcXVpcmVkICovCisgICAwLAkJ CQkJLyogcHJvcGVydGllc19wcm92aWRlZCAqLworICAgMCwJCQkJCS8qIHByb3BlcnRpZXNfZGVz dHJveWVkICovCistICAwLAkJCQkJLyogdG9kb19mbGFnc19zdGFydCAqLworLSAgMCAgICAgICAg ICAgICAgCQkJLyogdG9kb19mbGFnc19maW5pc2ggKi8KKysgIFRPRE9fcmVtb3ZlX3VudXNlZF9s b2NhbHMsCQkvKiB0b2RvX2ZsYWdzX3N0YXJ0ICovCisrICAwCQkJCQkvKiB0b2RvX2ZsYWdzX2Zp bmlzaCAqLworICB9CisgfTsKKy0tLSBnY2MvdGVzdHN1aXRlL2djYy5kZy90cmVlLXNzYS9mb3J3 cHJvcC04LmMJKHJldmlzaW9uIDE5NjE3MykKKysrKyBnY2MvdGVzdHN1aXRlL2djYy5kZy90cmVl LXNzYS9mb3J3cHJvcC04LmMJKHJldmlzaW9uIDE5NjE3NCkKK0BAIC0xMSw2ICsxMSw1IEBAIGlu dCBmb28oc3RydWN0IFggKnEpCisgCisgCisgLyogV2Ugc2hvdWxkIGhhdmUgcHJvcHJhZ2F0ZWQg JnEtPmEgaW50byAoKnBvaW50ZXIpLiAgKi8KKy0vKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1 bXAtdGltZXMgInBvaW50ZXIiIDAgImZvcndwcm9wMSJ9IH0gKi8KKy0vKiB7IGRnLWZpbmFsIHsg c2Nhbi10cmVlLWR1bXAgIlxcXFswXFxcXSIgImZvcndwcm9wMSIgfSB9ICovCisrLyogeyBkZy1m aW5hbCB7IHNjYW4tdHJlZS1kdW1wICJxXy5cXFwoRFxcXClcXFxdXFxcWzBcXFxdOyIgImZvcndw cm9wMSIgfSB9ICovCisgLyogeyBkZy1maW5hbCB7IGNsZWFudXAtdHJlZS1kdW1wICJmb3J3cHJv cDEiIH0gfSAqLwoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3VyY2VzCmluZGV4IDAzMmQ5NWMu LjczMjI1ZWYgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291cmNlcwpAQCAtMSw0ICsxLDQg QEAKIGJlNzhhNDdiZDgyNTIzMjUwZWIzZTkxNjQ2ZGI1YjNkICBjbG9vZy0wLjE4LjAudGFyLmd6 CiAyNjU5ZjA5YzJlNDNlZjhiN2Q0NDA2MzIxNzUzZjFiMiAgZmFzdGphci0wLjk3LnRhci5negor ZDE4NjMwNTA5NDYwOTM0ZGZkNzE2M2E4ODRiNjNlY2QgIGdjYy00LjguMC0yMDEzMDIyMC50YXIu YnoyCiBiY2UxNTg2Mzg0ZDg2MzVhNzZkMmYwMTdmYjA2N2NkMiAgaXNsLTAuMTEuMS50YXIuYnoy Ci00ZmE2Y2JkYThlOThhZTc5MDIxMmM2YjdiMDBmYjkzOSAgZ2NjLTQuOC4wLTIwMTMwMjE1LnRh ci5iejIK