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: Leigh Scott To: git-commits@fedoraproject.org Subject: [rpms/cinnamon-session] rawhide: Update to 6.7.5-unstable Date: Tue, 22 Sep 2026 12:41:25 GMT Message-ID: <179008088553.1.3743357564771632656.rpms-cinnamon-session-9464e091b1bb@fedoraproject.org> List-ID: X-Git-Repo: rpms/cinnamon-session X-Git-Branch: rawhide X-Git-Rev: 9464e091b1bb01bd8cc2adff3df070c3e69f5b96 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvY2lubmFtb24tc2Vz c2lvbgpCcmFuY2ggOiByYXdoaWRlCkNvbW1pdCA6IDk0NjRlMDkxYjFiYjAxYmQ4Y2MyYWRmZjNk ZjA3MGMzZTY5ZjViOTYKQXV0aG9yIDogTGVpZ2ggU2NvdHQgPGxlaWdoMTIzbGludXhAZ21haWwu Y29tPgpEYXRlICAgOiAyMDI2LTA5LTIyVDEzOjQwOjI3KzAxOjAwClN0YXRzICA6ICszLy05OTgg aW4gMyBmaWxlKHMpClVSTCAgICA6IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMv Y2lubmFtb24tc2Vzc2lvbi9jLzk0NjRlMDkxYjFiYjAxYmQ4Y2MyYWRmZjNkZjA3MGMzZTY5ZjVi OTY/YnJhbmNoPXJhd2hpZGUKCkxvZzoKVXBkYXRlIHRvIDYuNy41LXVuc3RhYmxlCgotLS0KZGlm ZiAtLWdpdCBhLzIxNS5wYXRjaCBiLzIxNS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMmQyMWUyZi4uMDAwMDAwMAotLS0gYS8yMTUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAt MSw5OTQgKzAsMCBAQAotRnJvbSAxZTM4NzAyY2Y4NGJjZGQxOGYzY2NiNmEzM2E3Yzc2MTBkNzhl NGJiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogTGVpZ2ggU2NvdHQgPGxlaWdoMTIz bGludXhAZ21haWwuY29tPgotRGF0ZTogVHVlLCA4IFNlcCAyMDI2IDIzOjE0OjQ5ICswMTAwCi1T dWJqZWN0OiBbUEFUQ0ggMS8yXSBjc20tbWFuYWdlci5jOiBSZW1vdmUgTURNIHN1cHBvcnQKLQot LS0tCi0gY2lubmFtb24tc2Vzc2lvbi9jc20tbWFuYWdlci5jIHwgIDU0ICstLS0KLSBjaW5uYW1v bi1zZXNzaW9uL21kbS5jICAgICAgICAgfCA0NzEgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCi0gY2lubmFtb24tc2Vzc2lvbi9tZG0uaCAgICAgICAgIHwgIDU0IC0tLS0KLSBjaW5u YW1vbi1zZXNzaW9uL21lc29uLmJ1aWxkICAgfCAgIDEgLQotIDQgZmlsZXMgY2hhbmdlZCwgNCBp bnNlcnRpb25zKCspLCA1NzYgZGVsZXRpb25zKC0pCi0gZGVsZXRlIG1vZGUgMTAwNjQ0IGNpbm5h bW9uLXNlc3Npb24vbWRtLmMKLSBkZWxldGUgbW9kZSAxMDA2NDQgY2lubmFtb24tc2Vzc2lvbi9t ZG0uaAotCi1kaWZmIC0tZ2l0IGEvY2lubmFtb24tc2Vzc2lvbi9jc20tbWFuYWdlci5jIGIvY2lu bmFtb24tc2Vzc2lvbi9jc20tbWFuYWdlci5jCi1pbmRleCA0OGMzM2RiLi5lNzY1NjhiIDEwMDY0 NAotLS0tIGEvY2lubmFtb24tc2Vzc2lvbi9jc20tbWFuYWdlci5jCi0rKysgYi9jaW5uYW1vbi1z ZXNzaW9uL2NzbS1tYW5hZ2VyLmMKLUBAIC01Myw3ICs1Myw2IEBACi0gI2luY2x1ZGUgImNzbS1h dXRvc3RhcnQtYXBwLmgiCi0gCi0gI2luY2x1ZGUgImNzbS11dGlsLmgiCi0tI2luY2x1ZGUgIm1k bS5oIgotICNpbmNsdWRlICJjc20tc3lzdGVtLmgiCi0gI2luY2x1ZGUgImNzbS1zZXNzaW9uLXNh dmUuaCIKLSAjaW5jbHVkZSAiaW5oaWJpdC1kaWFsb2ctaW5mby5oIgotQEAgLTczLDkgKzcyLDYg QEAKLSAgKi8KLSAjZGVmaW5lIENTTV9NQU5BR0VSX1BIQVNFX1RJTUVPVVQgMzAgLyogc2Vjb25k cyAqLwotIAotLSNkZWZpbmUgTURNX0ZMRVhJU0VSVkVSX0NPTU1BTkQgIm1kbWZsZXhpc2VydmVy IgotLSNkZWZpbmUgTURNX0ZMRVhJU0VSVkVSX0FSR1MgICAgIi0tc3RhcnRuZXcgU3RhbmRhcmQi Ci0tCi0gI2RlZmluZSBHRE1fRkxFWElTRVJWRVJfQ09NTUFORCAiZ2RtZmxleGlzZXJ2ZXIiCi0g I2RlZmluZSBHRE1fRkxFWElTRVJWRVJfQVJHUyAgICAiLS1zdGFydG5ldyBTdGFuZGFyZCIKLSAK LUBAIC0xMTEsMTAgKzEwNyw4IEBAIHR5cGVkZWYgZW51bQotICAgICAgICAgQ1NNX01BTkFHRVJf TE9HT1VUX0xPR09VVCwKLSAgICAgICAgIENTTV9NQU5BR0VSX0xPR09VVF9SRUJPT1QsCi0gICAg ICAgICBDU01fTUFOQUdFUl9MT0dPVVRfUkVCT09UX0lOVEVSQUNULAotLSAgICAgICAgQ1NNX01B TkFHRVJfTE9HT1VUX1JFQk9PVF9NRE0sCi0gICAgICAgICBDU01fTUFOQUdFUl9MT0dPVVRfU0hV VERPV04sCi0tICAgICAgICBDU01fTUFOQUdFUl9MT0dPVVRfU0hVVERPV05fSU5URVJBQ1QsCi0t ICAgICAgICBDU01fTUFOQUdFUl9MT0dPVVRfU0hVVERPV05fTURNCi0rICAgICAgICBDU01fTUFO QUdFUl9MT0dPVVRfU0hVVERPV05fSU5URVJBQ1QKLSB9IENzbU1hbmFnZXJMb2dvdXRUeXBlOwot IAotIHN0cnVjdCBDc21NYW5hZ2VyUHJpdmF0ZQotQEAgLTQ3MiwxNyArNDY2LDYgQEAgcGhhc2Vf bnVtX3RvX25hbWUgKGd1aW50IHBoYXNlKQotIAotIHN0YXRpYyB2b2lkIHN0YXJ0X3BoYXNlIChD c21NYW5hZ2VyICptYW5hZ2VyKTsKLSAKLS1zdGF0aWMgdm9pZAotLXF1aXRfcmVxdWVzdF9mYWls ZWQgKENzbVN5c3RlbSAqc3lzdGVtLAotLSAgICAgICAgICAgICAgICAgICAgICAgIEdFcnJvciAg ICAqZXJyb3IsCi0tICAgICAgICAgICAgICAgICAgICAgICAgZ3BvaW50ZXIgICB1c2VyX2RhdGEp Ci0tewotLSAgICAgICAgZ193YXJuaW5nICgiVXNpbmcgYW4gTURNIGxvZ291dCBhY3Rpb24gdG8g c2h1dGRvd24vcmVib290IHRoZSBzeXN0ZW0uIik7Ci0tICAgICAgICBNZG1Mb2dvdXRBY3Rpb24g ZmFsbGJhY2tfYWN0aW9uID0gR1BPSU5URVJfVE9fSU5UICh1c2VyX2RhdGEpOwotLSAgICAgICAg bWRtX3NldF9sb2dvdXRfYWN0aW9uIChmYWxsYmFja19hY3Rpb24pOwotLSAgICAgICAgY3NtX3F1 aXQgKCk7Ci0tfQotLQotIHN0YXRpYyB2b2lkCi0gY3NtX21hbmFnZXJfcXVpdCAoQ3NtTWFuYWdl ciAqbWFuYWdlcikKLSB7Ci1AQCAtNDk4LDMxICs0ODEsMTMgQEAgY3NtX21hbmFnZXJfcXVpdCAo Q3NtTWFuYWdlciAqbWFuYWdlcikKLSAgICAgICAgIGNhc2UgQ1NNX01BTkFHRVJfTE9HT1VUX1JF Qk9PVDoKLSAgICAgICAgIGNhc2UgQ1NNX01BTkFHRVJfTE9HT1VUX1JFQk9PVF9JTlRFUkFDVDoK LSAgICAgICAgICAgICAgICAgZ193YXJuaW5nICgiUmVxdWVzdGluZyBzeXN0ZW0gcmVzdGFydC4u LiIpOwotLSAgICAgICAgICAgICAgICBtZG1fc2V0X2xvZ291dF9hY3Rpb24gKE1ETV9MT0dPVVRf QUNUSU9OX05PTkUpOwotLSAgICAgICAgICAgICAgICBnX3NpZ25hbF9jb25uZWN0IChtYW5hZ2Vy LT5wcml2LT5zeXN0ZW0sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZXF1 ZXN0LWZhaWxlZCIsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfQ0FMTEJB Q0sgKHF1aXRfcmVxdWVzdF9mYWlsZWQpLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBHSU5UX1RPX1BPSU5URVIgKE1ETV9MT0dPVVRfQUNUSU9OX1JFQk9PVCkpOwotICAgICAg ICAgICAgICAgICBjc21fc3lzdGVtX2F0dGVtcHRfcmVzdGFydCAobWFuYWdlci0+cHJpdi0+c3lz dGVtKTsKLSAgICAgICAgICAgICAgICAgYnJlYWs7Ci0tICAgICAgICBjYXNlIENTTV9NQU5BR0VS X0xPR09VVF9SRUJPT1RfTURNOgotLSAgICAgICAgICAgICAgICBtZG1fc2V0X2xvZ291dF9hY3Rp b24gKE1ETV9MT0dPVVRfQUNUSU9OX1JFQk9PVCk7Ci0tICAgICAgICAgICAgICAgIGNzbV9xdWl0 ICgpOwotLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgIGNhc2UgQ1NNX01BTkFHRVJf TE9HT1VUX1NIVVRET1dOOgotLSAgICAgICAgY2FzZSBDU01fTUFOQUdFUl9MT0dPVVRfU0hVVERP V05fSU5URVJBQ1Q6ICAKLSsgICAgICAgIGNhc2UgQ1NNX01BTkFHRVJfTE9HT1VUX1NIVVRET1dO X0lOVEVSQUNUOgotICAgICAgICAgICAgICAgICBnX3dhcm5pbmcgKCJSZXF1ZXN0aW5nIHN5c3Rl bSBzaHV0ZG93bi4uLiIpOwotLSAgICAgICAgICAgICAgICBtZG1fc2V0X2xvZ291dF9hY3Rpb24g KE1ETV9MT0dPVVRfQUNUSU9OX05PTkUpOwotLSAgICAgICAgICAgICAgICBnX3NpZ25hbF9jb25u ZWN0IChtYW5hZ2VyLT5wcml2LT5zeXN0ZW0sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJyZXF1ZXN0LWZhaWxlZCIsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIEdfQ0FMTEJBQ0sgKHF1aXRfcmVxdWVzdF9mYWlsZWQpLAotLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBHSU5UX1RPX1BPSU5URVIgKE1ETV9MT0dPVVRfQUNUSU9OX1NIVVRE T1dOKSk7Ci0gICAgICAgICAgICAgICAgIGNzbV9zeXN0ZW1fYXR0ZW1wdF9zdG9wIChtYW5hZ2Vy LT5wcml2LT5zeXN0ZW0pOwotICAgICAgICAgICAgICAgICBicmVhazsKLS0gICAgICAgIGNhc2Ug Q1NNX01BTkFHRVJfTE9HT1VUX1NIVVRET1dOX01ETToKLS0gICAgICAgICAgICAgICAgbWRtX3Nl dF9sb2dvdXRfYWN0aW9uIChNRE1fTE9HT1VUX0FDVElPTl9TSFVURE9XTik7Ci0tICAgICAgICAg ICAgICAgIGNzbV9xdWl0ICgpOwotLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgIGRl ZmF1bHQ6Ci0gICAgICAgICAgICAgICAgIGdfYXNzZXJ0X25vdF9yZWFjaGVkICgpOwotICAgICAg ICAgICAgICAgICBicmVhazsKLUBAIC0xMTIxLDcgKzEwODYsNiBAQCBjYW5jZWxfZW5kX3Nlc3Np b24gKENzbU1hbmFnZXIgKm1hbmFnZXIpCi0gICAgICAgICBtYW5hZ2VyLT5wcml2LT5sb2dvdXRf bW9kZSA9IENTTV9NQU5BR0VSX0xPR09VVF9NT0RFX05PUk1BTDsKLSAKLSAgICAgICAgIG1hbmFn ZXItPnByaXYtPmxvZ291dF90eXBlID0gQ1NNX01BTkFHRVJfTE9HT1VUX05PTkU7Ci0tICAgICAg ICBtZG1fc2V0X2xvZ291dF9hY3Rpb24gKE1ETV9MT0dPVVRfQUNUSU9OX05PTkUpOwotIAotICAg ICAgICAgbWFuYWdlci0+cHJpdi0+ZGlhbG9nX2FjdGlvbiA9IENTTV9MT0dPVVRfQUNUSU9OX1VO REVGSU5FRDsKLSAKLUBAIC0xMTg2LDcgKzExNTAsNyBAQCBmbGV4aXNlcnZlcl9sYXVuY2ggKGNv bnN0IGdjaGFyICoqYXJndikKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgJmVycm9yKSkgewotICAgICAgICAgICAgICAgICBp ZiAoZXJyb3IpIHsKLS0gICAgICAgICAgICAgICAgICAgICAgICBnX2RlYnVnICgiQ3NtTWFuYWdl cjogVW5hYmxlIHRvIHN0YXJ0IE1ETSBncmVldGVyOiAlcyIsIGVycm9yLT5tZXNzYWdlKTsKLSsg ICAgICAgICAgICAgICAgICAgICAgICBnX2RlYnVnICgiQ3NtTWFuYWdlcjogVW5hYmxlIHRvIHN0 YXJ0IGdyZWV0ZXI6ICVzIiwgZXJyb3ItPm1lc3NhZ2UpOwotICAgICAgICAgICAgICAgICAgICAg ICAgIGdfZXJyb3JfZnJlZSAoZXJyb3IpOwotICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICB9 Ci1AQCAtMTIwNSwxNSArMTE2OSw3IEBAIG1hbmFnZXJfc3dpdGNoX3VzZXIgKENzbU1hbmFnZXIg Km1hbmFnZXIpCi0gICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgIH0KLSAKLS0gICAg ICAgIGlmIChwcm9jZXNzX2lzX3J1bm5pbmcgKCJtZG0iKSkgewotLSAgICAgICAgICAgICAgICBj b25zdCBnY2hhciAqY29tbWFuZFtdID0gewotLSAgICAgICAgICAgICAgICAgICAgIE1ETV9GTEVY SVNFUlZFUl9DT01NQU5ELAotLSAgICAgICAgICAgICAgICAgICAgIE1ETV9GTEVYSVNFUlZFUl9B UkdTLAotLSAgICAgICAgICAgICAgICAgICAgIE5VTEwKLS0gICAgICAgICAgICAgICAgfTsKLS0K LS0gICAgICAgICAgICAgICAgZmxleGlzZXJ2ZXJfbGF1bmNoIChjb21tYW5kKTsKLS0gICAgICAg IH0gZWxzZSBpZiAocHJvY2Vzc19pc19ydW5uaW5nKCJnZG0iKSB8fCBwcm9jZXNzX2lzX3J1bm5p bmcoImdkbTMiKSkgewotKyAgICAgICAgaWYgKHByb2Nlc3NfaXNfcnVubmluZygiZ2RtIikgfHwg cHJvY2Vzc19pc19ydW5uaW5nKCJnZG0zIikpIHsKLSAgICAgICAgICAgICAgICAgY29uc3QgZ2No YXIgKmNvbW1hbmRbXSA9IHsKLSAgICAgICAgICAgICAgICAgICAgICBHRE1fRkxFWElTRVJWRVJf Q09NTUFORCwKLSAgICAgICAgICAgICAgICAgICAgICBHRE1fRkxFWElTRVJWRVJfQVJHUywKLUBA IC0xMzQ5LDEyICsxMzA1LDEwIEBAIGVuZF9zZXNzaW9uX29yX3JlcG9ydF9pbmhpYml0b3JzIChD c21NYW5hZ2VyICptYW5hZ2VyKQotICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgIGNh c2UgQ1NNX01BTkFHRVJfTE9HT1VUX1JFQk9PVDoKLSAgICAgICAgIGNhc2UgQ1NNX01BTkFHRVJf TE9HT1VUX1JFQk9PVF9JTlRFUkFDVDoKLS0gICAgICAgIGNhc2UgQ1NNX01BTkFHRVJfTE9HT1VU X1JFQk9PVF9NRE06Ci0gICAgICAgICAgICAgICAgIGFjdGlvbiA9IENTTV9MT0dPVVRfQUNUSU9O X1JFQk9PVDsKLSAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICBjYXNlIENTTV9NQU5B R0VSX0xPR09VVF9TSFVURE9XTjoKLSAgICAgICAgIGNhc2UgQ1NNX01BTkFHRVJfTE9HT1VUX1NI VVRET1dOX0lOVEVSQUNUOgotLSAgICAgICAgY2FzZSBDU01fTUFOQUdFUl9MT0dPVVRfU0hVVERP V05fTURNOgotICAgICAgICAgICAgICAgICBhY3Rpb24gPSBDU01fTE9HT1VUX0FDVElPTl9TSFVU RE9XTjsKLSAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICBkZWZhdWx0OgotZGlmZiAt LWdpdCBhL2Npbm5hbW9uLXNlc3Npb24vbWRtLmMgYi9jaW5uYW1vbi1zZXNzaW9uL21kbS5jCi1k ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDNhZWVlZWIuLjAwMDAwMDAKLS0tLSBhL2Np bm5hbW9uLXNlc3Npb24vbWRtLmMKLSsrKyAvZGV2L251bGwKLUBAIC0xLDQ3MSArMCwwIEBACi0t LyogLSotIE1vZGU6IEM7IHRhYi13aWR0aDogODsgaW5kZW50LXRhYnMtbW9kZTogbmlsOyBjLWJh c2ljLW9mZnNldDogOCAtKi0KLS0gKgotLSAqIENvcHlyaWdodCAoQykgMjAwNSBSYWZmYWVsZSBT YW5kcmluaQotLSAqIENvcHlyaWdodCAoQykgMjAwNSBSZWQgSGF0LCBJbmMuCi0tICogQ29weXJp Z2h0IChDKSAyMDAyLCAyMDAzIEdlb3JnZSBMZWJsCi0tICogQ29weXJpZ2h0IChDKSAyMDAxIFF1 ZWVuIG9mIEVuZ2xhbmQsCi0tICoKLS0gKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsg eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCi0tICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0 ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMKLS0gKiBwdWJsaXNoZWQg YnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUK LS0gKiBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgotLSAq Ci0tICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsIGJ1dAotLSAqIFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g dGhlIGltcGxpZWQgd2FycmFudHkgb2YKLS0gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBG T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQotLSAqIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLS0gKgotLSAqIFlvdSBzaG91bGQgaGF2ZSByZWNl aXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCi0tICogYWxvbmcg d2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKLS0g KiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQgLSBTdWl0ZSA1MDAsIEJvc3Rv biwgTUEKLS0gKiAwMjExMC0xMzM1LCBVU0EuCi0tICoKLS0gKiBBdXRob3JzOgotLSAqICAgICAg UmFmZmFlbGUgU2FuZHJpbmkgPHJhc2FAZ214LmNoPgotLSAqICAgICAgR2VvcmdlIExlYmwgPGpp cmthQDV6LmNvbT4KLS0gKiAgICAgIE1hcmsgTWNMb3VnaGxpbiA8bWFya0Bza3luZXQuaWU+Ci0t ICovCi0tCi0tI2lmZGVmIEhBVkVfQ09ORklHX0gKLS0jaW5jbHVkZSA8Y29uZmlnLmg+Ci0tI2Vu ZGlmCi0tCi0tI2luY2x1ZGUgPHN0cmluZy5oPgotLSNpbmNsdWRlIDxlcnJuby5oPgotLSNpbmNs dWRlIDx1bmlzdGQuaD4KLS0jaW5jbHVkZSA8dGltZS5oPgotLSNpbmNsdWRlIDxzeXMvc29ja2V0 Lmg+Ci0tI2luY2x1ZGUgPHN5cy91bi5oPgotLQotLSNpbmNsdWRlIDxYMTEvWGF1dGguaD4KLS0j aW5jbHVkZSA8Z2RrL2dkay5oPgotLQotLSNpbmNsdWRlICJtZG0uaCIKLS0KLS0jZGVmaW5lIE1E TV9QUk9UT0NPTF9VUERBVEVfSU5URVJWQUwgMSAvKiBzZWNvbmRzICovCi0tCi0tI2RlZmluZSBN RE1fUFJPVE9DT0xfU09DS0VUX1BBVEggIi92YXIvcnVuL2dkbV9zb2NrZXQiCi0tCi0tI2RlZmlu ZSBNRE1fUFJPVE9DT0xfTVNHX0NMT1NFICAgICAgICAgIkNMT1NFIgotLSNkZWZpbmUgTURNX1BS T1RPQ09MX01TR19WRVJTSU9OICAgICAgICJWRVJTSU9OIgotLSNkZWZpbmUgTURNX1BST1RPQ09M X01TR19BVVRIRU5USUNBVEUgICJBVVRIX0xPQ0FMIgotLSNkZWZpbmUgTURNX1BST1RPQ09MX01T R19RVUVSWV9BQ1RJT04gICJRVUVSWV9MT0dPVVRfQUNUSU9OIgotLSNkZWZpbmUgTURNX1BST1RP Q09MX01TR19TRVRfQUNUSU9OICAgICJTRVRfU0FGRV9MT0dPVVRfQUNUSU9OIgotLSNkZWZpbmUg TURNX1BST1RPQ09MX01TR19GTEVYSV9YU0VSVkVSICJGTEVYSV9YU0VSVkVSIgotLQotLSNkZWZp bmUgTURNX0FDVElPTl9TVFJfTk9ORSAgICAgIk5PTkUiCi0tI2RlZmluZSBNRE1fQUNUSU9OX1NU Ul9TSFVURE9XTiAiSEFMVCIKLS0jZGVmaW5lIE1ETV9BQ1RJT05fU1RSX1JFQk9PVCAgICJSRUJP T1QiCi0tI2RlZmluZSBNRE1fQUNUSU9OX1NUUl9TVVNQRU5EICAiU1VTUEVORCIKLS0KLS10eXBl ZGVmIHN0cnVjdCB7Ci0tICAgICAgICBpbnQgICAgICAgICAgICAgZmQ7Ci0tICAgICAgICBjaGFy ICAgICAgICAgICAqYXV0aF9jb29raWU7Ci0tCi0tICAgICAgICBNZG1Mb2dvdXRBY3Rpb24gYXZh aWxhYmxlX2FjdGlvbnM7Ci0tICAgICAgICBNZG1Mb2dvdXRBY3Rpb24gY3VycmVudF9hY3Rpb25z OwotLQotLSAgICAgICAgdGltZV90ICAgICAgICAgIGxhc3RfdXBkYXRlOwotLX0gTWRtUHJvdG9j b2xEYXRhOwotLQotLXN0YXRpYyBNZG1Qcm90b2NvbERhdGEgbWRtX3Byb3RvY29sX2RhdGEgPSB7 Ci0tICAgICAgICAwLAotLSAgICAgICAgTlVMTCwKLS0gICAgICAgIE1ETV9MT0dPVVRfQUNUSU9O X05PTkUsCi0tICAgICAgICBNRE1fTE9HT1VUX0FDVElPTl9OT05FLAotLSAgICAgICAgMAotLX07 Ci0tCi0tc3RhdGljIGNoYXIgKgotLW1kbV9zZW5kX3Byb3RvY29sX21zZyAoTWRtUHJvdG9jb2xE YXRhICpkYXRhLAotLSAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAgICAgICptc2cp Ci0tewotLSAgICAgICAgR1N0cmluZyAqcmV0dmFsOwotLSAgICAgICAgY2hhciBidWZbMjU2XTsK LS0gICAgICAgIGNoYXIgKnA7Ci0tICAgICAgICBpbnQgbGVuOwotLQotLSAgICAgICAgcCA9IGdf c3RyY29uY2F0IChtc2csICJcbiIsIE5VTEwpOwotLQotLSAgICAgICAgaWYgKHdyaXRlIChkYXRh LT5mZCwgcCwgc3RybGVuIChwKSkgPCAwKSB7Ci0tICAgICAgICAgICAgICAgIGdfZnJlZSAocCk7 Ci0tCi0tICAgICAgICAgICAgICAgIGdfd2FybmluZyAoIkZhaWxlZCB0byBzZW5kIG1lc3NhZ2Ug dG8gTURNOiAlcyIsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgZ19zdHJlcnJvciAoZXJy bm8pKTsKLS0KLS0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0tICAgICAgICB9Ci0tCi0t ICAgICAgICBnX2ZyZWUgKHApOwotLQotLSAgICAgICAgcCA9IE5VTEw7Ci0tICAgICAgICByZXR2 YWwgPSBOVUxMOwotLQotLSAgICAgICAgd2hpbGUgKChsZW4gPSByZWFkIChkYXRhLT5mZCwgYnVm LCBzaXplb2YgKGJ1ZikgLSAxKSkgPiAwKSB7Ci0tICAgICAgICAgICAgICAgIGJ1ZltsZW5dID0g J1wwJzsKLS0KLS0gICAgICAgICAgICAgICAgaWYgKCFyZXR2YWwpIHsKLS0gICAgICAgICAgICAg ICAgICAgICAgICByZXR2YWwgPSBnX3N0cmluZ19uZXcgKGJ1Zik7Ci0tICAgICAgICAgICAgICAg IH0gZWxzZSB7Ci0tICAgICAgICAgICAgICAgICAgICAgICAgcmV0dmFsID0gZ19zdHJpbmdfYXBw ZW5kIChyZXR2YWwsIGJ1Zik7Ci0tICAgICAgICAgICAgICAgIH0KLS0KLS0gICAgICAgICAgICAg ICAgaWYgKChwID0gc3RyY2hyIChyZXR2YWwtPnN0ciwgJ1xuJykpKSB7Ci0tICAgICAgICAgICAg ICAgICAgICAgICAgYnJlYWs7Ci0tICAgICAgICAgICAgICAgIH0KLS0gICAgICAgIH0KLS0KLS0g ICAgICAgIGlmIChwKSB7Ci0tICAgICAgICAgICAgICAgICpwID0gJ1wwJzsKLS0gICAgICAgIH0K LS0KLS0gICAgICAgIHJldHVybiByZXR2YWwgPyBnX3N0cmluZ19mcmVlIChyZXR2YWwsIEZBTFNF KSA6IE5VTEw7Ci0tfQotLQotLXN0YXRpYyBjaGFyICoKLS1nZXRfZGlzcGxheV9udW1iZXIgKHZv aWQpCi0tewotLSAgICAgICAgY29uc3QgY2hhciAqZGlzcGxheV9uYW1lOwotLSAgICAgICAgY2hh ciAgICAgICAqcmV0dmFsOwotLSAgICAgICAgY2hhciAgICAgICAqcDsKLS0KLS0gICAgICAgIGRp c3BsYXlfbmFtZSA9IGdka19kaXNwbGF5X2dldF9uYW1lIChnZGtfZGlzcGxheV9nZXRfZGVmYXVs dCAoKSk7Ci0tCi0tICAgICAgICBwID0gc3RyY2hyIChkaXNwbGF5X25hbWUsICc6Jyk7Ci0tCi0t ICAgICAgICBpZiAoIXApIHsKLS0gICAgICAgICAgICAgICAgcmV0dXJuIGdfc3RyZHVwICgiMCIp OwotLSAgICAgICAgfQotLQotLSAgICAgICAgd2hpbGUgKCpwID09ICc6JykgewotLSAgICAgICAg ICAgICAgICBwKys7Ci0tICAgICAgICB9Ci0tCi0tICAgICAgICByZXR2YWwgPSBnX3N0cmR1cCAo cCk7Ci0tCi0tICAgICAgICBwID0gc3RyY2hyIChyZXR2YWwsICcuJyk7Ci0tCi0tICAgICAgICBp ZiAocCAhPSBOVUxMKSB7Ci0tICAgICAgICAgICAgICAgICpwID0gJ1wwJzsKLS0gICAgICAgIH0K LS0KLS0gICAgICAgIHJldHVybiByZXR2YWw7Ci0tfQotLQotLXN0YXRpYyBnYm9vbGVhbgotLW1k bV9hdXRoZW50aWNhdGVfY29ubmVjdGlvbiAoTWRtUHJvdG9jb2xEYXRhICpkYXRhKQotLXsKLS0j ZGVmaW5lIE1ETV9NSVRfTUFHSUNfQ09PS0lFX0xFTiAxNgotLQotLSAgICAgICAgY29uc3QgY2hh ciAqeGF1X3BhdGg7Ci0tICAgICAgICBGSUxFICpmOwotLSAgICAgICAgWGF1dGggKnhhdTsKLS0g ICAgICAgIGNoYXIgKmRpc3BsYXlfbnVtYmVyOwotLSAgICAgICAgZ2Jvb2xlYW4gcmV0dmFsOwot LQotLSAgICAgICAgaWYgKGRhdGEtPmF1dGhfY29va2llKSB7Ci0tICAgICAgICAgICAgICAgIGNo YXIgKm1zZzsKLS0gICAgICAgICAgICAgICAgY2hhciAqcmVzcG9uc2U7Ci0tCi0tICAgICAgICAg ICAgICAgIG1zZyA9IGdfc3RyZHVwX3ByaW50ZiAoTURNX1BST1RPQ09MX01TR19BVVRIRU5USUNB VEUgIiAlcyIsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS0+ YXV0aF9jb29raWUpOwotLSAgICAgICAgICAgICAgICByZXNwb25zZSA9IG1kbV9zZW5kX3Byb3Rv Y29sX21zZyAoZGF0YSwgbXNnKTsKLS0gICAgICAgICAgICAgICAgZ19mcmVlIChtc2cpOwotLQot LSAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UgJiYgIXN0cmNtcCAocmVzcG9uc2UsICJPSyIp KSB7Ci0tICAgICAgICAgICAgICAgICAgICAgICAgZ19mcmVlIChyZXNwb25zZSk7Ci0tICAgICAg ICAgICAgICAgICAgICAgICAgcmV0dXJuIFRSVUU7Ci0tICAgICAgICAgICAgICAgIH0gZWxzZSB7 Ci0tICAgICAgICAgICAgICAgICAgICAgICAgZ19mcmVlIChyZXNwb25zZSk7Ci0tICAgICAgICAg ICAgICAgICAgICAgICAgZ19mcmVlIChkYXRhLT5hdXRoX2Nvb2tpZSk7Ci0tICAgICAgICAgICAg ICAgICAgICAgICAgZGF0YS0+YXV0aF9jb29raWUgPSBOVUxMOwotLSAgICAgICAgICAgICAgICB9 Ci0tICAgICAgICB9Ci0tCi0tICAgICAgICBpZiAoISh4YXVfcGF0aCA9IFhhdUZpbGVOYW1lICgp KSkgewotLSAgICAgICAgICAgICAgICByZXR1cm4gRkFMU0U7Ci0tICAgICAgICB9Ci0tCi0tICAg ICAgICBpZiAoIShmID0gZm9wZW4gKHhhdV9wYXRoLCAiciIpKSkgewotLSAgICAgICAgICAgICAg ICByZXR1cm4gRkFMU0U7Ci0tICAgICAgICB9Ci0tCi0tICAgICAgICByZXR2YWwgPSBGQUxTRTsK LS0gICAgICAgIGRpc3BsYXlfbnVtYmVyID0gZ2V0X2Rpc3BsYXlfbnVtYmVyICgpOwotLQotLSAg ICAgICAgd2hpbGUgKCh4YXUgPSBYYXVSZWFkQXV0aCAoZikpKSB7Ci0tICAgICAgICAgICAgICAg IGNoYXIgYnVmZmVyWzQwXTsgLyogMioxNiA9PSAzMiwgc28gNDAgaXMgZW5vdWdoICovCi0tICAg ICAgICAgICAgICAgIGNoYXIgKm1zZzsKLS0gICAgICAgICAgICAgICAgY2hhciAqcmVzcG9uc2U7 Ci0tICAgICAgICAgICAgICAgIGludCAgIGk7Ci0tCi0tICAgICAgICAgICAgICAgIGlmICh4YXUt PmZhbWlseSAhPSBGYW1pbHlMb2NhbCB8fAotLSAgICAgICAgICAgICAgICAgICAgc3RybmNtcCAo eGF1LT5udW1iZXIsIGRpc3BsYXlfbnVtYmVyLCB4YXUtPm51bWJlcl9sZW5ndGgpIHx8Ci0tICAg ICAgICAgICAgICAgICAgICBzdHJuY21wICh4YXUtPm5hbWUsICJNSVQtTUFHSUMtQ09PS0lFLTEi LCB4YXUtPm5hbWVfbGVuZ3RoKSB8fAotLSAgICAgICAgICAgICAgICAgICAgeGF1LT5kYXRhX2xl bmd0aCAhPSBNRE1fTUlUX01BR0lDX0NPT0tJRV9MRU4pIHsKLS0gICAgICAgICAgICAgICAgICAg ICAgICBYYXVEaXNwb3NlQXV0aCAoeGF1KTsKLS0gICAgICAgICAgICAgICAgICAgICAgICBjb250 aW51ZTsKLS0gICAgICAgICAgICAgICAgfQotLQotLSAgICAgICAgICAgICAgICBmb3IgKGkgPSAw OyBpIDwgTURNX01JVF9NQUdJQ19DT09LSUVfTEVOOyBpKyspIHsKLS0gICAgICAgICAgICAgICAg ICAgICAgICBnX3NucHJpbnRmIChidWZmZXIgKyAyKmksIDMsICIlMDJ4IiwgKGd1aW50KShndWNo YXIpeGF1LT5kYXRhW2ldKTsKLS0gICAgICAgICAgICAgICAgfQotLQotLSAgICAgICAgICAgICAg ICBYYXVEaXNwb3NlQXV0aCAoeGF1KTsKLS0KLS0gICAgICAgICAgICAgICAgbXNnID0gZ19zdHJk dXBfcHJpbnRmIChNRE1fUFJPVE9DT0xfTVNHX0FVVEhFTlRJQ0FURSAiICVzIiwgYnVmZmVyKTsK LS0gICAgICAgICAgICAgICAgcmVzcG9uc2UgPSBtZG1fc2VuZF9wcm90b2NvbF9tc2cgKGRhdGEs IG1zZyk7Ci0tICAgICAgICAgICAgICAgIGdfZnJlZSAobXNnKTsKLS0KLS0gICAgICAgICAgICAg ICAgaWYgKHJlc3BvbnNlICYmICFzdHJjbXAgKHJlc3BvbnNlLCAiT0siKSkgewotLSAgICAgICAg ICAgICAgICAgICAgICAgIGRhdGEtPmF1dGhfY29va2llID0gZ19zdHJkdXAgKGJ1ZmZlcik7Ci0t ICAgICAgICAgICAgICAgICAgICAgICAgZ19mcmVlIChyZXNwb25zZSk7Ci0tICAgICAgICAgICAg ICAgICAgICAgICAgcmV0dmFsID0gVFJVRTsKLS0gICAgICAgICAgICAgICAgICAgICAgICBicmVh azsKLS0gICAgICAgICAgICAgICAgfQotLQotLSAgICAgICAgICAgICAgICBnX2ZyZWUgKHJlc3Bv bnNlKTsKLS0gICAgICAgIH0KLS0KLS0gICAgICAgIGdfZnJlZSAoZGlzcGxheV9udW1iZXIpOwot LQotLSAgICAgICAgZmNsb3NlIChmKTsKLS0KLS0gICAgICAgIHJldHVybiByZXR2YWw7Ci0tCi0t I3VuZGVmIE1ETV9NSVRfTUFHSUNfQ09PS0lFX0xFTgotLX0KLS0KLS1zdGF0aWMgdm9pZAotLW1k bV9zaHV0ZG93bl9wcm90b2NvbF9jb25uZWN0aW9uIChNZG1Qcm90b2NvbERhdGEgKmRhdGEpCi0t ewotLSAgICAgICAgaWYgKGRhdGEtPmZkKSB7Ci0tICAgICAgICAgICAgICAgIGNsb3NlIChkYXRh LT5mZCk7Ci0tICAgICAgICB9Ci0tCi0tICAgICAgICBkYXRhLT5mZCA9IDA7Ci0tfQotLQotLXN0 YXRpYyBnYm9vbGVhbgotLW1kbV9pbml0X3Byb3RvY29sX2Nvbm5lY3Rpb24gKE1kbVByb3RvY29s RGF0YSAqZGF0YSkKLS17Ci0tICAgICAgICBzdHJ1Y3Qgc29ja2FkZHJfdW4gYWRkcjsKLS0gICAg ICAgIGNoYXIgICAgICAgICAgICAgICpyZXNwb25zZTsKLS0KLS0gICAgICAgIGdfYXNzZXJ0IChk YXRhLT5mZCA8PSAwKTsKLS0KLS0gICAgICAgIGlmIChnX2ZpbGVfdGVzdCAoTURNX1BST1RPQ09M X1NPQ0tFVF9QQVRILCBHX0ZJTEVfVEVTVF9FWElTVFMpKSB7Ci0tICAgICAgICAgICAgICAgIHN0 cmNweSAoYWRkci5zdW5fcGF0aCwgTURNX1BST1RPQ09MX1NPQ0tFVF9QQVRIKTsKLS0gICAgICAg IH0gZWxzZSBpZiAoZ19maWxlX3Rlc3QgKCIvdG1wLy5tZG1fc29ja2V0IiwgR19GSUxFX1RFU1Rf RVhJU1RTKSkgewotLSAgICAgICAgICAgICAgICBzdHJjcHkgKGFkZHIuc3VuX3BhdGgsICIvdG1w Ly5tZG1fc29ja2V0Iik7Ci0tICAgICAgICB9IGVsc2UgewotLSAgICAgICAgICAgICAgICByZXR1 cm4gRkFMU0U7Ci0tICAgICAgICB9Ci0tCi0tICAgICAgICBkYXRhLT5mZCA9IHNvY2tldCAoQUZf VU5JWCwgU09DS19TVFJFQU0sIDApOwotLQotLSAgICAgICAgaWYgKGRhdGEtPmZkIDwgMCkgewot LSAgICAgICAgICAgICAgICBnX3dhcm5pbmcgKCJGYWlsZWQgdG8gY3JlYXRlIE1ETSBzb2NrZXQ6 ICVzIiwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICBnX3N0cmVycm9yIChlcnJubykpOwot LQotLSAgICAgICAgICAgICAgICBtZG1fc2h1dGRvd25fcHJvdG9jb2xfY29ubmVjdGlvbiAoZGF0 YSk7Ci0tCi0tICAgICAgICAgICAgICAgIHJldHVybiBGQUxTRTsKLS0gICAgICAgIH0KLS0KLS0g ICAgICAgIGFkZHIuc3VuX2ZhbWlseSA9IEFGX1VOSVg7Ci0tCi0tICAgICAgICBpZiAoY29ubmVj dCAoZGF0YS0+ZmQsIChzdHJ1Y3Qgc29ja2FkZHIgKikgJmFkZHIsIHNpemVvZiAoYWRkcikpIDwg MCkgewotLSAgICAgICAgICAgICAgICBnX3dhcm5pbmcgKCJGYWlsZWQgdG8gZXN0YWJsaXNoIGEg Y29ubmVjdGlvbiB3aXRoIE1ETTogJXMiLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGdf c3RyZXJyb3IgKGVycm5vKSk7Ci0tCi0tICAgICAgICAgICAgICAgIG1kbV9zaHV0ZG93bl9wcm90 b2NvbF9jb25uZWN0aW9uIChkYXRhKTsKLS0KLS0gICAgICAgICAgICAgICAgcmV0dXJuIEZBTFNF OwotLSAgICAgICAgfQotLQotLSAgICAgICAgcmVzcG9uc2UgPSBtZG1fc2VuZF9wcm90b2NvbF9t c2cgKGRhdGEsIE1ETV9QUk9UT0NPTF9NU0dfVkVSU0lPTik7Ci0tCi0tICAgICAgICBpZiAoIXJl c3BvbnNlIHx8IHN0cm5jbXAgKHJlc3BvbnNlLCAiTURNICIsIHN0cmxlbiAoIk1ETSAiKSkgIT0g MCkgewotLSAgICAgICAgICAgICAgICBnX2ZyZWUgKHJlc3BvbnNlKTsKLS0KLS0gICAgICAgICAg ICAgICAgZ193YXJuaW5nICgiRmFpbGVkIHRvIGdldCBwcm90b2NvbCB2ZXJzaW9uIGZyb20gTURN Iik7Ci0tICAgICAgICAgICAgICAgIG1kbV9zaHV0ZG93bl9wcm90b2NvbF9jb25uZWN0aW9uIChk YXRhKTsKLS0KLS0gICAgICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwotLSAgICAgICAgfQotLQot LSAgICAgICAgZ19mcmVlIChyZXNwb25zZSk7Ci0tCi0tICAgICAgICBpZiAoIW1kbV9hdXRoZW50 aWNhdGVfY29ubmVjdGlvbiAoZGF0YSkpIHsKLS0gICAgICAgICAgICAgICAgZ193YXJuaW5nICgi RmFpbGVkIHRvIGF1dGhlbnRpY2F0ZSB3aXRoIE1ETSIpOwotLSAgICAgICAgICAgICAgICBtZG1f c2h1dGRvd25fcHJvdG9jb2xfY29ubmVjdGlvbiAoZGF0YSk7Ci0tICAgICAgICAgICAgICAgIHJl dHVybiBGQUxTRTsKLS0gICAgICAgIH0KLS0KLS0gICAgICAgIHJldHVybiBUUlVFOwotLX0KLS0K LS1zdGF0aWMgdm9pZAotLW1kbV9wYXJzZV9xdWVyeV9yZXNwb25zZSAoTWRtUHJvdG9jb2xEYXRh ICpkYXRhLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAgICAgICpyZXNw b25zZSkKLS17Ci0tICAgICAgICBjaGFyICoqYWN0aW9uczsKLS0gICAgICAgIGludCBpOwotLQot LSAgICAgICAgZGF0YS0+YXZhaWxhYmxlX2FjdGlvbnMgPSBNRE1fTE9HT1VUX0FDVElPTl9OT05F OwotLSAgICAgICAgZGF0YS0+Y3VycmVudF9hY3Rpb25zICAgPSBNRE1fTE9HT1VUX0FDVElPTl9O T05FOwotLQotLSAgICAgICAgaWYgKHN0cm5jbXAgKHJlc3BvbnNlLCAiT0sgIiwgMykgIT0gMCkg ewotLSAgICAgICAgICAgICAgICByZXR1cm47Ci0tICAgICAgICB9Ci0tCi0tICAgICAgICByZXNw b25zZSArPSAzOwotLQotLSAgICAgICAgYWN0aW9ucyA9IGdfc3Ryc3BsaXQgKHJlc3BvbnNlLCAi OyIsIC0xKTsKLS0KLS0gICAgICAgIGZvciAoaSA9IDA7IGFjdGlvbnNbaV07IGkrKykgewotLSAg ICAgICAgICAgICAgICBNZG1Mb2dvdXRBY3Rpb24gYWN0aW9uID0gTURNX0xPR09VVF9BQ1RJT05f Tk9ORTsKLS0gICAgICAgICAgICAgICAgZ2Jvb2xlYW4gICAgICAgIHNlbGVjdGVkID0gRkFMU0U7 Ci0tICAgICAgICAgICAgICAgIGNoYXIgICAgICAgICAgICpzdHIgPSBhY3Rpb25zIFtpXTsKLS0g ICAgICAgICAgICAgICAgaW50ICAgICAgICAgICAgIGxlbjsKLS0KLS0gICAgICAgICAgICAgICAg bGVuID0gc3RybGVuIChzdHIpOwotLQotLSAgICAgICAgICAgICAgICBpZiAoIWxlbikgewotLSAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotLSAgICAgICAgICAgICAgICB9Ci0tCi0t ICAgICAgICAgICAgICAgIGlmIChzdHJbbGVuIC0gMV0gPT0gJyEnKSB7Ci0tICAgICAgICAgICAg ICAgICAgICAgICAgc2VsZWN0ZWQgPSBUUlVFOwotLSAgICAgICAgICAgICAgICAgICAgICAgIHN0 cltsZW4gLSAxXSA9ICdcMCc7Ci0tICAgICAgICAgICAgICAgIH0KLS0KLS0gICAgICAgICAgICAg ICAgaWYgKCFzdHJjbXAgKHN0ciwgTURNX0FDVElPTl9TVFJfU0hVVERPV04pKSB7Ci0tICAgICAg ICAgICAgICAgICAgICAgICAgYWN0aW9uID0gTURNX0xPR09VVF9BQ1RJT05fU0hVVERPV047Ci0t ICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoIXN0cmNtcCAoc3RyLCBNRE1fQUNUSU9OX1NUUl9S RUJPT1QpKSB7Ci0tICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uID0gTURNX0xPR09VVF9B Q1RJT05fUkVCT09UOwotLSAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFzdHJjbXAgKHN0ciwg TURNX0FDVElPTl9TVFJfU1VTUEVORCkpIHsKLS0gICAgICAgICAgICAgICAgICAgICAgICBhY3Rp b24gPSBNRE1fTE9HT1VUX0FDVElPTl9TVVNQRU5EOwotLSAgICAgICAgICAgICAgICB9Ci0tCi0t ICAgICAgICAgICAgICAgIGRhdGEtPmF2YWlsYWJsZV9hY3Rpb25zIHw9IGFjdGlvbjsKLS0KLS0g ICAgICAgICAgICAgICAgaWYgKHNlbGVjdGVkKSB7Ci0tICAgICAgICAgICAgICAgICAgICAgICAg ZGF0YS0+Y3VycmVudF9hY3Rpb25zIHw9IGFjdGlvbjsKLS0gICAgICAgICAgICAgICAgfQotLSAg ICAgICAgfQotLQotLSAgICAgICAgZ19zdHJmcmVldiAoYWN0aW9ucyk7Ci0tfQotLQotLXN0YXRp YyB2b2lkCi0tbWRtX3VwZGF0ZV9sb2dvdXRfYWN0aW9ucyAoTWRtUHJvdG9jb2xEYXRhICpkYXRh KQotLXsKLS0gICAgICAgIHRpbWVfdCBjdXJyZW50X3RpbWU7Ci0tICAgICAgICBjaGFyICAqcmVz cG9uc2U7Ci0tCi0tICAgICAgICBjdXJyZW50X3RpbWUgPSB0aW1lIChOVUxMKTsKLS0KLS0gICAg ICAgIGlmIChjdXJyZW50X3RpbWUgPD0gKGRhdGEtPmxhc3RfdXBkYXRlICsgTURNX1BST1RPQ09M X1VQREFURV9JTlRFUlZBTCkpIHsKLS0gICAgICAgICAgICAgICAgcmV0dXJuOwotLSAgICAgICAg fQotLQotLSAgICAgICAgZGF0YS0+bGFzdF91cGRhdGUgPSBjdXJyZW50X3RpbWU7Ci0tCi0tICAg ICAgICBpZiAoIW1kbV9pbml0X3Byb3RvY29sX2Nvbm5lY3Rpb24gKGRhdGEpKSB7Ci0tICAgICAg ICAgICAgICAgIHJldHVybjsKLS0gICAgICAgIH0KLS0KLS0gICAgICAgIGlmICgocmVzcG9uc2Ug PSBtZG1fc2VuZF9wcm90b2NvbF9tc2cgKGRhdGEsIE1ETV9QUk9UT0NPTF9NU0dfUVVFUllfQUNU SU9OKSkpIHsKLS0gICAgICAgICAgICAgICAgbWRtX3BhcnNlX3F1ZXJ5X3Jlc3BvbnNlIChkYXRh LCByZXNwb25zZSk7Ci0tICAgICAgICAgICAgICAgIGdfZnJlZSAocmVzcG9uc2UpOwotLSAgICAg ICAgfQotLQotLSAgICAgICAgbWRtX3NodXRkb3duX3Byb3RvY29sX2Nvbm5lY3Rpb24gKGRhdGEp OwotLX0KLS0KLS1nYm9vbGVhbgotLW1kbV9pc19hdmFpbGFibGUgKHZvaWQpCi0tewotLSAgICAg ICAgaWYgKCFtZG1faW5pdF9wcm90b2NvbF9jb25uZWN0aW9uICgmbWRtX3Byb3RvY29sX2RhdGEp KSB7Ci0tICAgICAgICAgICAgICAgIHJldHVybiBGQUxTRTsKLS0gICAgICAgIH0KLS0KLS0gICAg ICAgIG1kbV9zaHV0ZG93bl9wcm90b2NvbF9jb25uZWN0aW9uICgmbWRtX3Byb3RvY29sX2RhdGEp OwotLQotLSAgICAgICAgcmV0dXJuIFRSVUU7Ci0tfQotLQotLWdib29sZWFuCi0tbWRtX3N1cHBv cnRzX2xvZ291dF9hY3Rpb24gKE1kbUxvZ291dEFjdGlvbiBhY3Rpb24pCi0tewotLSAgICAgICAg bWRtX3VwZGF0ZV9sb2dvdXRfYWN0aW9ucyAoJm1kbV9wcm90b2NvbF9kYXRhKTsKLS0KLS0gICAg ICAgIHJldHVybiAobWRtX3Byb3RvY29sX2RhdGEuYXZhaWxhYmxlX2FjdGlvbnMgJiBhY3Rpb24p ICE9IDA7Ci0tfQotLQotLU1kbUxvZ291dEFjdGlvbgotLW1kbV9nZXRfbG9nb3V0X2FjdGlvbiAo dm9pZCkKLS17Ci0tICAgICAgICBtZG1fdXBkYXRlX2xvZ291dF9hY3Rpb25zICgmbWRtX3Byb3Rv Y29sX2RhdGEpOwotLQotLSAgICAgICAgcmV0dXJuIG1kbV9wcm90b2NvbF9kYXRhLmN1cnJlbnRf YWN0aW9uczsKLS19Ci0tCi0tdm9pZAotLW1kbV9zZXRfbG9nb3V0X2FjdGlvbiAoTWRtTG9nb3V0 QWN0aW9uIGFjdGlvbikKLS17Ci0tICAgICAgICBjaGFyICphY3Rpb25fc3RyID0gTlVMTDsKLS0g ICAgICAgIGNoYXIgKm1zZzsKLS0gICAgICAgIGNoYXIgKnJlc3BvbnNlOwotLQotLSAgICAgICAg aWYgKCFtZG1faW5pdF9wcm90b2NvbF9jb25uZWN0aW9uICgmbWRtX3Byb3RvY29sX2RhdGEpKSB7 Ci0tICAgICAgICAgICAgICAgIHJldHVybjsKLS0gICAgICAgIH0KLS0KLS0gICAgICAgIHN3aXRj aCAoYWN0aW9uKSB7Ci0tICAgICAgICBjYXNlIE1ETV9MT0dPVVRfQUNUSU9OX05PTkU6Ci0tICAg ICAgICAgICAgICAgIGFjdGlvbl9zdHIgPSBNRE1fQUNUSU9OX1NUUl9OT05FOwotLSAgICAgICAg ICAgICAgICBicmVhazsKLS0gICAgICAgIGNhc2UgTURNX0xPR09VVF9BQ1RJT05fU0hVVERPV046 Ci0tICAgICAgICAgICAgICAgIGFjdGlvbl9zdHIgPSBNRE1fQUNUSU9OX1NUUl9TSFVURE9XTjsK LS0gICAgICAgICAgICAgICAgYnJlYWs7Ci0tICAgICAgICBjYXNlIE1ETV9MT0dPVVRfQUNUSU9O X1JFQk9PVDoKLS0gICAgICAgICAgICAgICAgYWN0aW9uX3N0ciA9IE1ETV9BQ1RJT05fU1RSX1JF Qk9PVDsKLS0gICAgICAgICAgICAgICAgYnJlYWs7Ci0tICAgICAgICBjYXNlIE1ETV9MT0dPVVRf QUNUSU9OX1NVU1BFTkQ6Ci0tICAgICAgICAgICAgICAgIGFjdGlvbl9zdHIgPSBNRE1fQUNUSU9O X1NUUl9TVVNQRU5EOwotLSAgICAgICAgICAgICAgICBicmVhazsKLS0gICAgICAgIH0KLS0KLS0g ICAgICAgIG1zZyA9IGdfc3RyZHVwX3ByaW50ZiAoTURNX1BST1RPQ09MX01TR19TRVRfQUNUSU9O ICIgJXMiLCBhY3Rpb25fc3RyKTsKLS0KLS0gICAgICAgIHJlc3BvbnNlID0gbWRtX3NlbmRfcHJv dG9jb2xfbXNnICgmbWRtX3Byb3RvY29sX2RhdGEsIG1zZyk7Ci0tCi0tICAgICAgICBnX2ZyZWUg KG1zZyk7Ci0tICAgICAgICBnX2ZyZWUgKHJlc3BvbnNlKTsKLS0KLS0gICAgICAgIG1kbV9wcm90 b2NvbF9kYXRhLmxhc3RfdXBkYXRlID0gMDsKLS0KLS0gICAgICAgIG1kbV9zaHV0ZG93bl9wcm90 b2NvbF9jb25uZWN0aW9uICgmbWRtX3Byb3RvY29sX2RhdGEpOwotLX0KLS0KLS12b2lkCi0tbWRt X25ld19sb2dpbiAodm9pZCkKLS17Ci0tICAgICAgICBjaGFyICpyZXNwb25zZTsKLS0KLS0gICAg ICAgIGlmICghbWRtX2luaXRfcHJvdG9jb2xfY29ubmVjdGlvbiAoJm1kbV9wcm90b2NvbF9kYXRh KSkgewotLSAgICAgICAgICAgICAgICByZXR1cm47Ci0tICAgICAgICB9Ci0tCi0tICAgICAgICBy ZXNwb25zZSA9IG1kbV9zZW5kX3Byb3RvY29sX21zZyAoJm1kbV9wcm90b2NvbF9kYXRhLAotLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1ETV9QUk9UT0NPTF9NU0df RkxFWElfWFNFUlZFUik7Ci0tCi0tICAgICAgICBnX2ZyZWUgKHJlc3BvbnNlKTsKLS0KLS0gICAg ICAgIG1kbV9wcm90b2NvbF9kYXRhLmxhc3RfdXBkYXRlID0gMDsKLS0KLS0gICAgICAgIG1kbV9z aHV0ZG93bl9wcm90b2NvbF9jb25uZWN0aW9uICgmbWRtX3Byb3RvY29sX2RhdGEpOwotLX0KLWRp ZmYgLS1naXQgYS9jaW5uYW1vbi1zZXNzaW9uL21kbS5oIGIvY2lubmFtb24tc2Vzc2lvbi9tZG0u aAotZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAyYmRiNWYzLi4wMDAwMDAwCi0tLS0g YS9jaW5uYW1vbi1zZXNzaW9uL21kbS5oCi0rKysgL2Rldi9udWxsCi1AQCAtMSw1NCArMCwwIEBA Ci0tLyogbWRtLmgKLS0gKiBDb3B5cmlnaHQgKEMpIDIwMDUgUmFmZmFlbGUgU2FuZHJpbmkKLS0g KiBDb3B5cmlnaHQgKEMpIDIwMDUgUmVkIEhhdCwgSW5jLgotLSAqIENvcHlyaWdodCAoQykgMjAw MiwgMjAwMyBHZW9yZ2UgTGVibAotLSAqIENvcHlyaWdodCAoQykgMjAwMSBRdWVlbiBvZiBFbmds YW5kLCAKLS0gKgotLSAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl ZGlzdHJpYnV0ZSBpdCBhbmQvb3IKLS0gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcwotLSAqIHB1Ymxpc2hlZCBieSB0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZQotLSAqIExpY2Vu c2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi0tICoKLS0gKiBUaGlz IHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1 bCwgYnV0Ci0tICogV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll ZCB3YXJyYW50eSBvZgotLSAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ Q1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCi0tICogR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm b3IgbW9yZSBkZXRhaWxzLgotLSAqCi0tICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29w eSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLS0gKiBhbG9uZyB3aXRoIHRoaXMg cHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQotLSAqIEZvdW5kYXRp b24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCAtIFN1aXRlIDUwMCwgQm9zdG9uLCBNQQotLSAq IDAyMTEwLTEzMzUsIFVTQS4KLS0gKgotLSAqIEF1dGhvcnM6Ci0tICogICAgICBSYWZmYWVsZSBT YW5kcmluaSA8cmFzYUBnbXguY2g+Ci0tICogICAgICBHZW9yZ2UgTGVibCA8amlya2FANXouY29t PgotLSAqICAgICAgTWFyayBNY0xvdWdobGluIDxtYXJrQHNreW5ldC5pZT4KLS0gKi8KLS0KLS0j aWZuZGVmIF9fTURNX0xPR09VVF9BQ1RJT05fSF9fCi0tI2RlZmluZSBfX01ETV9MT0dPVVRfQUNU SU9OX0hfXwotLQotLSNpbmNsdWRlIDxnbGliLmg+Ci0tCi0tR19CRUdJTl9ERUNMUwotLQotLXR5 cGVkZWYgZW51bSB7Ci0tICBNRE1fTE9HT1VUX0FDVElPTl9OT05FICAgICA9IDAsCi0tICBNRE1f TE9HT1VUX0FDVElPTl9TSFVURE9XTiA9IDEgPDwgMCwKLS0gIE1ETV9MT0dPVVRfQUNUSU9OX1JF Qk9PVCAgID0gMSA8PCAxLAotLSAgTURNX0xPR09VVF9BQ1RJT05fU1VTUEVORCAgPSAxIDw8IDIK LS19IE1kbUxvZ291dEFjdGlvbjsKLS0KLS1nYm9vbGVhbiAgICAgICAgIG1kbV9pc19hdmFpbGFi bGUgICAgICAgICAgICAodm9pZCk7Ci0tCi0tdm9pZCAgICAgICAgICAgICBtZG1fbmV3X2xvZ2lu ICAgICAgICAgICAgICAgKHZvaWQpOwotLQotLXZvaWQgICAgICAgICAgICAgbWRtX3NldF9sb2dv dXRfYWN0aW9uICAgICAgIChNZG1Mb2dvdXRBY3Rpb24gYWN0aW9uKTsKLS0KLS1NZG1Mb2dvdXRB Y3Rpb24gIG1kbV9nZXRfbG9nb3V0X2FjdGlvbiAgICAgICAodm9pZCk7Ci0tCi0tZ2Jvb2xlYW4g ICAgICAgICBtZG1fc3VwcG9ydHNfbG9nb3V0X2FjdGlvbiAgKE1kbUxvZ291dEFjdGlvbiBhY3Rp b24pOwotLQotLUdfRU5EX0RFQ0xTCi0tCi0tI2VuZGlmIC8qIF9fTURNX0xPR09VVF9BQ1RJT05f SF9fICovCi1kaWZmIC0tZ2l0IGEvY2lubmFtb24tc2Vzc2lvbi9tZXNvbi5idWlsZCBiL2Npbm5h bW9uLXNlc3Npb24vbWVzb24uYnVpbGQKLWluZGV4IDA3Mzc1NWQuLjYxYjQ3MzcgMTAwNjQ0Ci0t LS0gYS9jaW5uYW1vbi1zZXNzaW9uL21lc29uLmJ1aWxkCi0rKysgYi9jaW5uYW1vbi1zZXNzaW9u L21lc29uLmJ1aWxkCi1AQCAtNDksNyArNDksNiBAQCBjaW5uYW1vbl9zZXNzaW9uX3NvdXJjZXMg PSBbCi0gICAnbWFpbi5jJywKLSAgICdtZG0tbG9nLmMnLAotICAgJ21kbS1zaWduYWwtaGFuZGxl ci5jJywKLS0gICdtZG0uYycsCi0gICBjc21fbWFyc2hhbF9zb3VyY2VzLAotICAgZ2RidXNfc291 cmNlcywKLSBdCi0KLUZyb20gZDYxNWNmZTViNGZkNGQyOGQ4ZDZjMDRiMjNkZjkzNGYzNjkwNTQ0 MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IExlaWdoIFNjb3R0IDxsZWlnaDEyM2xp bnV4QGdtYWlsLmNvbT4KLURhdGU6IFR1ZSwgOCBTZXAgMjAyNiAyMzoxNjoyOCArMDEwMAotU3Vi amVjdDogW1BBVENIIDIvMl0gY3NtLXN5c3RlbWQ6IHdhaXQgZm9yIGxvZ2luZCdzIFByZXBhcmVG b3JTaHV0ZG93biBiZWZvcmUKLSBxdWl0dGluZwotCi0tLS0KLSBjaW5uYW1vbi1zZXNzaW9uL2Nz bS1tYW5hZ2VyLmMgfCAgMjIgKysrKysrCi0gY2lubmFtb24tc2Vzc2lvbi9jc20tc3lzdGVtLmMg IHwgIDEyICsrKwotIGNpbm5hbW9uLXNlc3Npb24vY3NtLXN5c3RlbWQuYyB8IDEyOSArKysrKysr KysrKysrKysrKysrKysrKysrLS0tLS0tLS0KLSAzIGZpbGVzIGNoYW5nZWQsIDEzMiBpbnNlcnRp b25zKCspLCAzMSBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL2Npbm5hbW9uLXNlc3Npb24v Y3NtLW1hbmFnZXIuYyBiL2Npbm5hbW9uLXNlc3Npb24vY3NtLW1hbmFnZXIuYwotaW5kZXggZTc2 NTY4Yi4uMTdiYTE1ZiAxMDA2NDQKLS0tLSBhL2Npbm5hbW9uLXNlc3Npb24vY3NtLW1hbmFnZXIu YwotKysrIGIvY2lubmFtb24tc2Vzc2lvbi9jc20tbWFuYWdlci5jCi1AQCAtNDY2LDYgKzQ2Niwy MCBAQCBwaGFzZV9udW1fdG9fbmFtZSAoZ3VpbnQgcGhhc2UpCi0gCi0gc3RhdGljIHZvaWQgc3Rh cnRfcGhhc2UgKENzbU1hbmFnZXIgKm1hbmFnZXIpOwotIAotK3N0YXRpYyB2b2lkCi0rb25fc2h1 dGRvd25fcHJlcGFyZWQgKENzbVN5c3RlbSAqc3lzdGVtLAotKyAgICAgICAgICAgICAgICAgICAg ICBnYm9vbGVhbiAgIHN1Y2Nlc3MsCi0rICAgICAgICAgICAgICAgICAgICAgIGdwb2ludGVyICAg dXNlcl9kYXRhKQotK3sKLSsgICAgICAgIGdfc2lnbmFsX2hhbmRsZXJzX2Rpc2Nvbm5lY3RfYnlf ZnVuYyAoc3lzdGVtLCBvbl9zaHV0ZG93bl9wcmVwYXJlZCwgdXNlcl9kYXRhKTsKLSsKLSsgICAg ICAgIGlmICghc3VjY2VzcykgewotKyAgICAgICAgICAgICAgICBnX3dhcm5pbmcgKCJTaHV0ZG93 bi9yZXN0YXJ0IHdhcyBub3QgY29uZmlybWVkIGJ5IGxvZ2luZCIpOwotKyAgICAgICAgfQotKwot KyAgICAgICAgY3NtX3F1aXQgKCk7Ci0rfQotKwotIHN0YXRpYyB2b2lkCi0gY3NtX21hbmFnZXJf cXVpdCAoQ3NtTWFuYWdlciAqbWFuYWdlcikKLSB7Ci1AQCAtNDgxLDExICs0OTUsMTkgQEAgY3Nt X21hbmFnZXJfcXVpdCAoQ3NtTWFuYWdlciAqbWFuYWdlcikKLSAgICAgICAgIGNhc2UgQ1NNX01B TkFHRVJfTE9HT1VUX1JFQk9PVDoKLSAgICAgICAgIGNhc2UgQ1NNX01BTkFHRVJfTE9HT1VUX1JF Qk9PVF9JTlRFUkFDVDoKLSAgICAgICAgICAgICAgICAgZ193YXJuaW5nICgiUmVxdWVzdGluZyBz eXN0ZW0gcmVzdGFydC4uLiIpOwotKyAgICAgICAgICAgICAgICBnX3NpZ25hbF9jb25uZWN0ICht YW5hZ2VyLT5wcml2LT5zeXN0ZW0sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJzaHV0ZG93bi1wcmVwYXJlZCIsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEdfQ0FMTEJBQ0sgKG9uX3NodXRkb3duX3ByZXBhcmVkKSwKLSsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgbWFuYWdlcik7Ci0gICAgICAgICAgICAgICAgIGNzbV9zeXN0ZW1fYXR0 ZW1wdF9yZXN0YXJ0IChtYW5hZ2VyLT5wcml2LT5zeXN0ZW0pOwotICAgICAgICAgICAgICAgICBi cmVhazsKLSAgICAgICAgIGNhc2UgQ1NNX01BTkFHRVJfTE9HT1VUX1NIVVRET1dOOgotICAgICAg ICAgY2FzZSBDU01fTUFOQUdFUl9MT0dPVVRfU0hVVERPV05fSU5URVJBQ1Q6Ci0gICAgICAgICAg ICAgICAgIGdfd2FybmluZyAoIlJlcXVlc3Rpbmcgc3lzdGVtIHNodXRkb3duLi4uIik7Ci0rICAg ICAgICAgICAgICAgIGdfc2lnbmFsX2Nvbm5lY3QgKG1hbmFnZXItPnByaXYtPnN5c3RlbSwKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNodXRkb3duLXByZXBhcmVkIiwKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR19DQUxMQkFDSyAob25fc2h1dGRvd25f cHJlcGFyZWQpLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYW5hZ2VyKTsK LSAgICAgICAgICAgICAgICAgY3NtX3N5c3RlbV9hdHRlbXB0X3N0b3AgKG1hbmFnZXItPnByaXYt PnN5c3RlbSk7Ci0gICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgZGVmYXVsdDoKLWRp ZmYgLS1naXQgYS9jaW5uYW1vbi1zZXNzaW9uL2NzbS1zeXN0ZW0uYyBiL2Npbm5hbW9uLXNlc3Np b24vY3NtLXN5c3RlbS5jCi1pbmRleCBjNmJlN2I1Li5jNGZhODg2IDEwMDY0NAotLS0tIGEvY2lu bmFtb24tc2Vzc2lvbi9jc20tc3lzdGVtLmMKLSsrKyBiL2Npbm5hbW9uLXNlc3Npb24vY3NtLXN5 c3RlbS5jCi1AQCAtMzAsNiArMzAsNyBAQAotIAotIGVudW0gewotICAgICAgICAgUkVRVUVTVF9G QUlMRUQgPSAwLAotKyAgICAgICAgU0hVVERPV05fUFJFUEFSRUQsCi0gICAgICAgICBMQVNUX1NJ R05BTAotIH07Ci0gCi1AQCAtNTAsNiArNTEsMTcgQEAgY3NtX3N5c3RlbV9kZWZhdWx0X2luaXQg KENzbVN5c3RlbUludGVyZmFjZSAqaWZhY2UpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgZ19jY2xvc3VyZV9tYXJzaGFsX1ZPSURfX1BPSU5URVIsCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgR19UWVBFX05PTkUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MSwgR19UWVBFX1BPSU5URVIpOwotKwotKyAgICAgICAgc2lnbmFscyBbU0hVVERPV05fUFJFUEFS RURdID0KLSsgICAgICAgICAgICAgICAgZ19zaWduYWxfbmV3ICgic2h1dGRvd24tcHJlcGFyZWQi LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENTTV9UWVBFX1NZU1RFTSwKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAwLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwKLSsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBnX2NjbG9zdXJlX21hcnNoYWxfVk9JRF9fQk9PTEVBTiwKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBHX1RZUEVfTk9ORSwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAxLCBHX1RZUEVfQk9PTEVBTik7Ci0gfQotIAotIEdRdWFyawotZGlmZiAt LWdpdCBhL2Npbm5hbW9uLXNlc3Npb24vY3NtLXN5c3RlbWQuYyBiL2Npbm5hbW9uLXNlc3Npb24v Y3NtLXN5c3RlbWQuYwotaW5kZXggZGIzZmU4NC4uYmQ2YTcwYiAxMDA2NDQKLS0tLSBhL2Npbm5h bW9uLXNlc3Npb24vY3NtLXN5c3RlbWQuYwotKysrIGIvY2lubmFtb24tc2Vzc2lvbi9jc20tc3lz dGVtZC5jCi1AQCAtNjEsMTAgKzYxLDE4IEBAIHN0cnVjdCBfQ3NtU3lzdGVtZFByaXZhdGUKLSAK LSAgICAgICAgIEdTTGlzdCAgICAgICAgICAqaW5oaWJpdG9yczsKLSAgICAgICAgIGdpbnQgICAg ICAgICAgICAgaW5oaWJpdF9mZDsKLSsgICAgICAgIGdpbnQgICAgICAgICAgICAgc2h1dGRvd25f aW5oaWJpdF9mZDsKLSsgICAgICAgIGdib29sZWFuICAgICAgICAgcHJlcGFyZV9mb3Jfc2h1dGRv d25fZXhwZWN0ZWQ7Ci0gfTsKLSAKLSBzdGF0aWMgdm9pZCBjc21fc3lzdGVtZF9zeXN0ZW1faW5p dCAoQ3NtU3lzdGVtSW50ZXJmYWNlICppZmFjZSk7Ci0gCi0rc3RhdGljIHZvaWQgc2RfcHJveHlf c2lnbmFsX2NiIChHREJ1c1Byb3h5ICAqcHJveHksCi0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCBnY2hhciAqc2VuZGVyX25hbWUsCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBnY2hhciAqc2lnbmFsX25hbWUsCi0rICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBHVmFyaWFudCAgICAqcGFyYW1ldGVycywKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGdwb2ludGVyICAgICB1c2VyX2RhdGEpOwotKwotIEdfREVGSU5FX1RZ UEVfV0lUSF9DT0RFIChDc21TeXN0ZW1kLCBjc21fc3lzdGVtZCwgR19UWVBFX09CSkVDVCwKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgR19JTVBMRU1FTlRfSU5URVJGQUNFIChDU01fVFlQRV9T WVNURU0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y3NtX3N5c3RlbWRfc3lzdGVtX2luaXQpKQotQEAgLTkyLDYgKzEwMCw5IEBAIGNzbV9zeXN0ZW1k X2ZpbmFsaXplIChHT2JqZWN0ICpvYmplY3QpCi0gICAgICAgICAgICAgICAgIGdfc2xpc3RfZnJl ZV9mdWxsIChzeXN0ZW1kLT5wcml2LT5pbmhpYml0b3JzLCBnX2ZyZWUpOwotICAgICAgICAgfQot ICAgICAgICAgZHJvcF9zeXN0ZW1faW5oaWJpdG9yIChzeXN0ZW1kKTsKLSsgICAgICAgIGlmIChz eXN0ZW1kLT5wcml2LT5zaHV0ZG93bl9pbmhpYml0X2ZkICE9IC0xKSB7Ci0rICAgICAgICAgICAg ICAgIGNsb3NlIChzeXN0ZW1kLT5wcml2LT5zaHV0ZG93bl9pbmhpYml0X2ZkKTsKLSsgICAgICAg IH0KLSAKLSAgICAgICAgIEdfT0JKRUNUX0NMQVNTIChjc21fc3lzdGVtZF9wYXJlbnRfY2xhc3Mp LT5maW5hbGl6ZSAob2JqZWN0KTsKLSB9Ci1AQCAtMTIwLDYgKzEzMSw3IEBAIGNzbV9zeXN0ZW1k X2luaXQgKENzbVN5c3RlbWQgKm1hbmFnZXIpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBDc21TeXN0ZW1kUHJpdmF0ZSk7Ci0gCi0gICAgICAg ICBtYW5hZ2VyLT5wcml2LT5pbmhpYml0X2ZkID0gLTE7Ci0rICAgICAgICBtYW5hZ2VyLT5wcml2 LT5zaHV0ZG93bl9pbmhpYml0X2ZkID0gLTE7Ci0gCi0gICAgICAgICBlcnJvciA9IE5VTEw7Ci0g Ci1AQCAtMTQzLDYgKzE1NSw5IEBAIGNzbV9zeXN0ZW1kX2luaXQgKENzbVN5c3RlbWQgKm1hbmFn ZXIpCi0gICAgICAgICAgICAgICAgICAgICAgICAgZ193YXJuaW5nICgiRmFpbGVkIHRvIGNvbm5l Y3QgdG8gc3lzdGVtZDogJXMiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ZXJyb3ItPm1lc3NhZ2UpOwotICAgICAgICAgICAgICAgICAgICAgICAgIGdfZXJyb3JfZnJlZSAo ZXJyb3IpOwotKyAgICAgICAgICAgICAgICB9IGVsc2UgewotKyAgICAgICAgICAgICAgICAgICAg ICAgIGdfc2lnbmFsX2Nvbm5lY3QgKG1hbmFnZXItPnByaXYtPnNkX3Byb3h5LCAiZy1zaWduYWwi LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfQ0FMTEJBQ0sg KHNkX3Byb3h5X3NpZ25hbF9jYiksIG1hbmFnZXIpOwotICAgICAgICAgICAgICAgICB9Ci0gCi0g ICAgICAgICAgICAgICAgIGdfb2JqZWN0X3VucmVmIChidXMpOwotQEAgLTE3NCwyMSArMTg5LDYy IEBAIGNzbV9zeXN0ZW1kX2luaXQgKENzbVN5c3RlbWQgKm1hbmFnZXIpCi0gfQotIAotIHN0YXRp YyB2b2lkCi0tcmVzdGFydF9kb25lIChHT2JqZWN0ICAgICAgKnNvdXJjZSwKLS0gICAgICAgICAg ICAgIEdBc3luY1Jlc3VsdCAqcmVzdWx0LAotLSAgICAgICAgICAgICAgZ3BvaW50ZXIgICAgICB1 c2VyX2RhdGEpCi0rdGFrZV9zaHV0ZG93bl9pbmhpYml0b3IgKENzbVN5c3RlbWQgKm1hbmFnZXIp Ci0rewotKyAgICAgICAgR1ZhcmlhbnQgKnJlczsKLSsgICAgICAgIEdVbml4RkRMaXN0ICpmZF9s aXN0ID0gTlVMTDsKLSsgICAgICAgIEdFcnJvciAqZXJyb3IgPSBOVUxMOwotKyAgICAgICAgZ2lu dCBpZHg7Ci0rCi0rICAgICAgICBpZiAobWFuYWdlci0+cHJpdi0+c2h1dGRvd25faW5oaWJpdF9m ZCAhPSAtMSkKLSsgICAgICAgICAgICAgICAgcmV0dXJuOwotKwotKyAgICAgICAgcmVzID0gZ19k YnVzX3Byb3h5X2NhbGxfd2l0aF91bml4X2ZkX2xpc3Rfc3luYyAobWFuYWdlci0+cHJpdi0+c2Rf cHJveHksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAiSW5oaWJpdCIsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBnX3ZhcmlhbnRfbmV3ICgiKHNzc3MpIiwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJzaHV0ZG93biIsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnX2dldF91c2VyX25hbWUgKCksCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAiRW5zdXJpbmcgc2Vzc2lvbiBleGl0cyBjbGVhbmx5IGJlZm9yZSBzaHV0ZG93 biIsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiZGVsYXkiKSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX01BWElOVCwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZmRf bGlzdCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAmZXJyb3IpOwotKyAgICAgICAgaWYgKHJlcyA9PSBOVUxMKSB7Ci0rICAg ICAgICAgICAgICAgIGdfd2FybmluZyAoIlVuYWJsZSB0byBpbmhpYml0IHNodXRkb3duOiAlcyIs IGVycm9yLT5tZXNzYWdlKTsKLSsgICAgICAgICAgICAgICAgZ19lcnJvcl9mcmVlIChlcnJvcik7 Ci0rICAgICAgICAgICAgICAgIHJldHVybjsKLSsgICAgICAgIH0KLSsKLSsgICAgICAgIGdfdmFy aWFudF9nZXQgKHJlcywgIihoKSIsICZpZHgpOwotKyAgICAgICAgbWFuYWdlci0+cHJpdi0+c2h1 dGRvd25faW5oaWJpdF9mZCA9IGdfdW5peF9mZF9saXN0X2dldCAoZmRfbGlzdCwgaWR4LCAmZXJy b3IpOwotKyAgICAgICAgaWYgKG1hbmFnZXItPnByaXYtPnNodXRkb3duX2luaGliaXRfZmQgPT0g LTEpIHsKLSsgICAgICAgICAgICAgICAgZ193YXJuaW5nICgiRmFpbGVkIHRvIHJlY2VpdmUgc2h1 dGRvd24gaW5oaWJpdG9yIGZkOiAlcyIsIGVycm9yLT5tZXNzYWdlKTsKLSsgICAgICAgICAgICAg ICAgZ19lcnJvcl9mcmVlIChlcnJvcik7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBnX29iamVj dF91bnJlZiAoZmRfbGlzdCk7Ci0rICAgICAgICBnX3ZhcmlhbnRfdW5yZWYgKHJlcyk7Ci0rfQot KwotK3N0YXRpYyB2b2lkCi0rcmVib290X29yX3Bvd2Vyb2ZmX2RvbmUgKEdPYmplY3QgICAgICAq c291cmNlLAotKyAgICAgICAgICAgICAgICAgICAgICAgICBHQXN5bmNSZXN1bHQgKnJlc3VsdCwK LSsgICAgICAgICAgICAgICAgICAgICAgICAgZ3BvaW50ZXIgICAgICB1c2VyX2RhdGEpCi0gewot LSAgICAgICAgR0RCdXNQcm94eSAqcHJveHkgPSBHX0RCVVNfUFJPWFkgKHNvdXJjZSk7Ci0gICAg ICAgICBDc21TeXN0ZW1kICptYW5hZ2VyID0gdXNlcl9kYXRhOwotICAgICAgICAgR0Vycm9yICpl cnJvciA9IE5VTEw7Ci0gICAgICAgICBHVmFyaWFudCAqcmVzOwotIAotLSAgICAgICAgcmVzID0g Z19kYnVzX3Byb3h5X2NhbGxfZmluaXNoIChwcm94eSwgcmVzdWx0LCAmZXJyb3IpOwotKyAgICAg ICAgcmVzID0gZ19kYnVzX3Byb3h5X2NhbGxfZmluaXNoIChHX0RCVVNfUFJPWFkgKHNvdXJjZSks IHJlc3VsdCwgJmVycm9yKTsKLSAKLS0gICAgICAgIGlmICghcmVzKSB7Ci0tICAgICAgICAgICAg ICAgIGdfd2FybmluZyAoIlVuYWJsZSB0byByZXN0YXJ0IHN5c3RlbSB2aWEgc3lzdGVtZDogJXMi LCBlcnJvci0+bWVzc2FnZSk7Ci0tICAgICAgICAgICAgICAgIGdfc2lnbmFsX2VtaXRfYnlfbmFt ZSAoR19PQkpFQ1QgKG1hbmFnZXIpLCAicmVxdWVzdC1mYWlsZWQiLCBOVUxMKTsKLSsgICAgICAg IGlmIChyZXMgPT0gTlVMTCkgewotKyAgICAgICAgICAgICAgICBnX3dhcm5pbmcgKCJVbmFibGUg dG8gc2h1dGRvd24vcmVzdGFydCBzeXN0ZW0gdmlhIHN5c3RlbWQ6ICVzIiwgZXJyb3ItPm1lc3Nh Z2UpOwotICAgICAgICAgICAgICAgICBnX2Vycm9yX2ZyZWUgKGVycm9yKTsKLSsgICAgICAgICAg ICAgICAgbWFuYWdlci0+cHJpdi0+cHJlcGFyZV9mb3Jfc2h1dGRvd25fZXhwZWN0ZWQgPSBGQUxT RTsKLSsgICAgICAgICAgICAgICAgZ19zaWduYWxfZW1pdF9ieV9uYW1lIChtYW5hZ2VyLCAic2h1 dGRvd24tcHJlcGFyZWQiLCBGQUxTRSk7Ci0gICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg ICAgICBnX3ZhcmlhbnRfdW5yZWYgKHJlcyk7Ci0gICAgICAgICB9Ci1AQCAtMjAxLDM3ICsyNTcs MjAgQEAgY3NtX3N5c3RlbWRfYXR0ZW1wdF9yZXN0YXJ0IChDc21TeXN0ZW0gKnN5c3RlbSkKLSAK LSAgICAgICAgIENzbVN5c3RlbWQgKm1hbmFnZXIgPSBDU01fU1lTVEVNRCAoc3lzdGVtKTsKLSAK LSsgICAgICAgIGRyb3Bfc3lzdGVtX2luaGliaXRvciAobWFuYWdlcik7Ci0rICAgICAgICB0YWtl X3NodXRkb3duX2luaGliaXRvciAobWFuYWdlcik7Ci0rICAgICAgICBtYW5hZ2VyLT5wcml2LT5w cmVwYXJlX2Zvcl9zaHV0ZG93bl9leHBlY3RlZCA9IFRSVUU7Ci0rCi0gICAgICAgICBnX2RidXNf cHJveHlfY2FsbCAobWFuYWdlci0+cHJpdi0+c2RfcHJveHksCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgIlJlYm9vdCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ192YXJpYW50 X25ldyAoIihiKSIsIFRSVUUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgR19NQVhJTlQsCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICByZXN0YXJ0X2RvbmUsCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVib290X29yX3Bvd2Vyb2ZmX2RvbmUsCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgbWFuYWdlcik7Ci0gfQotIAotLXN0YXRpYyB2b2lkCi0t c3RvcF9kb25lIChHT2JqZWN0ICAgICAgKnNvdXJjZSwKLS0gICAgICAgICAgIEdBc3luY1Jlc3Vs dCAqcmVzdWx0LAotLSAgICAgICAgICAgZ3BvaW50ZXIgICAgICB1c2VyX2RhdGEpCi0tewotLSAg ICAgICAgR0RCdXNQcm94eSAqcHJveHkgPSBHX0RCVVNfUFJPWFkgKHNvdXJjZSk7Ci0tICAgICAg ICBDc21TeXN0ZW1kICptYW5hZ2VyID0gdXNlcl9kYXRhOwotLSAgICAgICAgR0Vycm9yICplcnJv ciA9IE5VTEw7Ci0tICAgICAgICBHVmFyaWFudCAqcmVzOwotLQotLSAgICAgICAgcmVzID0gZ19k YnVzX3Byb3h5X2NhbGxfZmluaXNoIChwcm94eSwgcmVzdWx0LCAmZXJyb3IpOwotLQotLSAgICAg ICAgaWYgKCFyZXMpIHsKLS0gICAgICAgICAgICAgICAgZ193YXJuaW5nICgiVW5hYmxlIHRvIHN0 b3Agc3lzdGVtIHZpYSBzeXN0ZW1kOiAlcyIsIGVycm9yLT5tZXNzYWdlKTsKLS0gICAgICAgICAg ICAgICAgZ19zaWduYWxfZW1pdF9ieV9uYW1lIChHX09CSkVDVCAobWFuYWdlciksICJyZXF1ZXN0 LWZhaWxlZCIsIE5VTEwpOyAgICAgICAgICAgICAgICAKLS0gICAgICAgICAgICAgICAgZ19lcnJv cl9mcmVlIChlcnJvcik7Ci0tICAgICAgICB9IGVsc2UgeyAgICAgICAgICAgICAgICAKLS0gICAg ICAgICAgICAgICAgZ192YXJpYW50X3VucmVmIChyZXMpOwotLSAgICAgICAgfQotLX0KLS0KLSBz dGF0aWMgdm9pZAotIGNzbV9zeXN0ZW1kX2F0dGVtcHRfc3RvcCAoQ3NtU3lzdGVtICpzeXN0ZW0p Ci0gewotQEAgLTIzOSwxNiArMjc4LDQ0IEBAIGNzbV9zeXN0ZW1kX2F0dGVtcHRfc3RvcCAoQ3Nt U3lzdGVtICpzeXN0ZW0pCi0gCi0gICAgICAgICBDc21TeXN0ZW1kICptYW5hZ2VyID0gQ1NNX1NZ U1RFTUQgKHN5c3RlbSk7Ci0gCi0rICAgICAgICBkcm9wX3N5c3RlbV9pbmhpYml0b3IgKG1hbmFn ZXIpOwotKyAgICAgICAgdGFrZV9zaHV0ZG93bl9pbmhpYml0b3IgKG1hbmFnZXIpOwotKyAgICAg ICAgbWFuYWdlci0+cHJpdi0+cHJlcGFyZV9mb3Jfc2h1dGRvd25fZXhwZWN0ZWQgPSBUUlVFOwot KwotICAgICAgICAgZ19kYnVzX3Byb3h5X2NhbGwgKG1hbmFnZXItPnByaXYtPnNkX3Byb3h5LAot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQb3dlck9mZiIsCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgZ192YXJpYW50X25ldyAoIihiKSIsIFRSVUUpLAotICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgR19NQVhJTlQsCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwKLS0gICAgICAgICAgICAgICAgICAgICAg ICAgICBzdG9wX2RvbmUsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVib290X29yX3Bv d2Vyb2ZmX2RvbmUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFuYWdlcik7Ci0gfQot IAotK3N0YXRpYyB2b2lkCi0rc2RfcHJveHlfc2lnbmFsX2NiIChHREJ1c1Byb3h5ICAqcHJveHks Ci0rICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAqc2VuZGVyX25hbWUsCi0rICAgICAg ICAgICAgICAgICAgICBjb25zdCBnY2hhciAqc2lnbmFsX25hbWUsCi0rICAgICAgICAgICAgICAg ICAgICBHVmFyaWFudCAgICAqcGFyYW1ldGVycywKLSsgICAgICAgICAgICAgICAgICAgIGdwb2lu dGVyICAgICB1c2VyX2RhdGEpCi0rewotKyAgICAgICAgQ3NtU3lzdGVtZCAqbWFuYWdlciA9IHVz ZXJfZGF0YTsKLSsgICAgICAgIGdib29sZWFuIGlzX2Fib3V0X3RvX3NodXRkb3duOwotKwotKyAg ICAgICAgaWYgKGdfc3RyY21wMCAoc2lnbmFsX25hbWUsICJQcmVwYXJlRm9yU2h1dGRvd24iKSAh PSAwKQotKyAgICAgICAgICAgICAgICByZXR1cm47Ci0rCi0rICAgICAgICBnX3ZhcmlhbnRfZ2V0 IChwYXJhbWV0ZXJzLCAiKGIpIiwgJmlzX2Fib3V0X3RvX3NodXRkb3duKTsKLSsgICAgICAgIGlm ICghaXNfYWJvdXRfdG9fc2h1dGRvd24pCi0rICAgICAgICAgICAgICAgIHJldHVybjsKLSsKLSsg ICAgICAgIGlmIChtYW5hZ2VyLT5wcml2LT5wcmVwYXJlX2Zvcl9zaHV0ZG93bl9leHBlY3RlZCkg ewotKyAgICAgICAgICAgICAgICBnX2RlYnVnICgiU2h1dGRvd24gc3VjY2Vzc2Z1bGx5IHByZXBh cmVkIik7Ci0rICAgICAgICAgICAgICAgIG1hbmFnZXItPnByaXYtPnByZXBhcmVfZm9yX3NodXRk b3duX2V4cGVjdGVkID0gRkFMU0U7Ci0rICAgICAgICAgICAgICAgIGdfc2lnbmFsX2VtaXRfYnlf bmFtZSAobWFuYWdlciwgInNodXRkb3duLXByZXBhcmVkIiwgVFJVRSk7Ci0rICAgICAgICB9Ci0r fQotKwotIHN0YXRpYyB2b2lkCi0gY3NtX3N5c3RlbWRfc2V0X3Nlc3Npb25faWRsZSAoQ3NtU3lz dGVtICpzeXN0ZW0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2Jvb2xlYW4gICBp c19pZGxlKQoKZGlmZiAtLWdpdCBhL2Npbm5hbW9uLXNlc3Npb24uc3BlYyBiL2Npbm5hbW9uLXNl c3Npb24uc3BlYwppbmRleCA0OWNiYjkxLi42ZjgyMGJmIDEwMDY0NAotLS0gYS9jaW5uYW1vbi1z ZXNzaW9uLnNwZWMKKysrIGIvY2lubmFtb24tc2Vzc2lvbi5zcGVjCkBAIC0xLDE1ICsxLDE0IEBA CiAlZ2xvYmFsIGNpbm5hbW9uX2Rlc2t0b3BfdmVyc2lvbiA2LjcuMQogCi0lZ2xvYmFsIHVwc3Ry ZWFtX3ZlcnNpb24gNi43LjQtdW5zdGFibGUKKyVnbG9iYWwgdXBzdHJlYW1fdmVyc2lvbiA2Ljcu NS11bnN0YWJsZQogCiBTdW1tYXJ5OiBDaW5uYW1vbiBzZXNzaW9uIG1hbmFnZXIKIE5hbWU6ICAg IGNpbm5hbW9uLXNlc3Npb24KLVZlcnNpb246IDYuNy40XnVuc3RhYmxlCitWZXJzaW9uOiA2Ljcu NV51bnN0YWJsZQogUmVsZWFzZTogJWF1dG9yZWxlYXNlCiBMaWNlbnNlOiBHUEwtMi4wLW9yLWxh dGVyIEFORCBMR1BMLTIuMC1vci1sYXRlcgogVVJMOiAgICAgaHR0cHM6Ly9naXRodWIuY29tL2xp bnV4bWludC8le25hbWV9CiBTb3VyY2UwOiAldXJsL2FyY2hpdmUvJXt1cHN0cmVhbV92ZXJzaW9u fS8le25hbWV9LSV7dXBzdHJlYW1fdmVyc2lvbn0udGFyLmd6Ci1QYXRjaDA6ICAldXJsL3B1bGwv MjE1LnBhdGNoCiAKIEV4Y2x1ZGVBcmNoOiAle2l4ODZ9CiAKCmRpZmYgLS1naXQgYS9zb3VyY2Vz IGIvc291cmNlcwppbmRleCAwNmY2MjQyLi42MWUwMTM5IDEwMDY0NAotLS0gYS9zb3VyY2VzCisr KyBiL3NvdXJjZXMKQEAgLTEgKzEgQEAKLVNIQTUxMiAoY2lubmFtb24tc2Vzc2lvbi02LjcuNC11 bnN0YWJsZS50YXIuZ3opID0gNzViZjhhYzIyYWMwNjg2MGQwZWM5ZjllNjg5ZjY5N2JhMDQyNGE2 N2MzNjJiOGNhYjIyN2ViN2IyZDZmMzJjZTUxOTZmN2ViOWI5NDZiYmE4YjNmMDYxMmE2NTJiYThm MmNiYTExNjRkNjY3ODcwMzAwMDBkMzZmN2EzOWI2YmEKK1NIQTUxMiAoY2lubmFtb24tc2Vzc2lv bi02LjcuNS11bnN0YWJsZS50YXIuZ3opID0gYTE3OTZiNWVmYmUwYzIyMTFhMTFhOGUxMzYyNTUx NjI2MmRmNzllZWY1ZjdlNWRiOTA4MDU2ZTQzYWRiN2RmM2IwNWNiNzU3YjIzNjM3ODQzYjYwZDNh NjY2YTM3ZWRhNWVjMmI3OGQ2MzMzZTZmYTRjOTllZWY5ZDAxNDM4ZDAK