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: Dmitry Belyavskiy To: git-commits@fedoraproject.org Subject: [rpms/voms] rawhide: Fix build with OpenSSL 4.0 (opaque ASN1_STRING, const X509, removed ERR_STATE) Date: Fri, 12 Jun 2026 20:00:42 GMT Message-ID: <178129444236.1.7138572821229427774.rpms-voms-0bd8b7964ee7@fedoraproject.org> List-ID: X-Git-Repo: rpms/voms X-Git-Branch: rawhide X-Git-Rev: 0bd8b7964ee7907f070c3812cad609a2cd258aea QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvdm9tcwpCcmFuY2gg OiByYXdoaWRlCkNvbW1pdCA6IDBiZDhiNzk2NGVlNzkwN2YwNzBjMzgxMmNhZDYwOWEyY2QyNThh ZWEKQXV0aG9yIDogRG1pdHJ5IEJlbHlhdnNraXkgPGJlbGRtaXRAZ21haWwuY29tPgpEYXRlICAg OiAyMDI2LTA0LTI5VDE2OjE0OjQ1KzAyOjAwClN0YXRzICA6ICszODEvLTEgaW4gMiBmaWxlKHMp ClVSTCAgICA6IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvdm9tcy9jLzBiZDhi Nzk2NGVlNzkwN2YwNzBjMzgxMmNhZDYwOWEyY2QyNThhZWE/YnJhbmNoPXJhd2hpZGUKCkxvZzoK Rml4IGJ1aWxkIHdpdGggT3BlblNTTCA0LjAgKG9wYXF1ZSBBU04xX1NUUklORywgY29uc3QgWDUw OSwgcmVtb3ZlZCBFUlJfU1RBVEUpCgotLS0KZGlmZiAtLWdpdCBhL3ZvbXMtb3BlbnNzbDQucGF0 Y2ggYi92b21zLW9wZW5zc2w0LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAuLjViOTY1MzIKLS0tIC9kZXYvbnVsbAorKysgYi92b21zLW9wZW5zc2w0LnBhdGNoCkBAIC0w LDAgKzEsMzc0IEBACitkaWZmIC1ydU4gYS9zcmMvYWMvdmFsaWRhdGUuY2MgYi9zcmMvYWMvdmFs aWRhdGUuY2MKKy0tLSBhL3NyYy9hYy92YWxpZGF0ZS5jYwkyMDI1LTEyLTE4IDEzOjM5OjI3LjAw MDAwMDAwMCArMDEwMAorKysrIGIvc3JjL2FjL3ZhbGlkYXRlLmNjCTIwMjYtMDQtMjkgMTU6Mzg6 MTkuMTM2NDI1OTMwICswMjAwCitAQCAtMjA1LDggKzIwNSw4IEBACisgICB9CisgCisgICB2LnZl cnNpb24gICAgPSAxOworLSAgdi5zaWdsZW4gICAgID0gYWMtPnNpZ25hdHVyZS0+bGVuZ3RoOwor LSAgdi5zaWduYXR1cmUgID0gc3RkOjpzdHJpbmcoKGNoYXIqKWFjLT5zaWduYXR1cmUtPmRhdGEs IGFjLT5zaWduYXR1cmUtPmxlbmd0aCk7CisrICB2LnNpZ2xlbiAgICAgPSBBU04xX1NUUklOR19s ZW5ndGgoYWMtPnNpZ25hdHVyZSk7CisrICB2LnNpZ25hdHVyZSAgPSBzdGQ6OnN0cmluZygoY2hh ciopQVNOMV9TVFJJTkdfZ2V0MF9kYXRhKGFjLT5zaWduYXR1cmUpLCBBU04xX1NUUklOR19sZW5n dGgoYWMtPnNpZ25hdHVyZSkpOworICAgYm4gICAgICAgICAgICAgICA9IEFTTjFfSU5URUdFUl90 b19CTihhYy0+YWNpbmZvLT5zZXJpYWwsIE5VTEwpOworICAgY2hhciAqYm5zdHJpbmcgPSBCTl9i bjJoZXgoYm4pOworICAgdi5zZXJpYWwgICAgID0gc3RkOjpzdHJpbmcoYm5zdHJpbmcpOworQEAg LTI5NCwxNSArMjk0LDE1IEBACisgICAgICAgaWYgKFg1MDlfTkFNRV9jbXAobmFtZS0+ZC5kaXJu LCBYNTA5X2dldF9zdWJqZWN0X25hbWUoaXNzdWVyKSkpCisgICAgICAgICBFUlJPUihBQ19FUlJf SVNTVUVSX05BTUUpOworIAorLSAgICBpZiAoYWMtPmFjaW5mby0+c2VyaWFsLT5sZW5ndGg+MjAp CisrICAgIGlmIChBU04xX1NUUklOR19sZW5ndGgoYWMtPmFjaW5mby0+c2VyaWFsKT4yMCkKKyAg ICAgICBFUlJPUihBQ19FUlJfU0VSSUFMKTsKKyAgIH0KKyAKKyAgIGIgPSBhYy0+YWNpbmZvLT52 YWxpZGl0eS0+bm90QmVmb3JlOworICAgYSA9IGFjLT5hY2luZm8tPnZhbGlkaXR5LT5ub3RBZnRl cjsKKyAKKy0gIHYuZGF0ZTEgPSBzdGQ6OnN0cmluZygoY2hhciopYi0+ZGF0YSwgYi0+bGVuZ3Ro KTsKKy0gIHYuZGF0ZTIgPSBzdGQ6OnN0cmluZygoY2hhciopYS0+ZGF0YSwgYS0+bGVuZ3RoKTsK KysgIHYuZGF0ZTEgPSBzdGQ6OnN0cmluZygoY2hhciopQVNOMV9TVFJJTkdfZ2V0MF9kYXRhKGIp LCBBU04xX1NUUklOR19sZW5ndGgoYikpOworKyAgdi5kYXRlMiA9IHN0ZDo6c3RyaW5nKChjaGFy KilBU04xX1NUUklOR19nZXQwX2RhdGEoYSksIEFTTjFfU1RSSU5HX2xlbmd0aChhKSk7CisgCisg ICBpZiAodmFsaWRzICYgVkVSSUZZX0RBVEUpIHsKKyAgICAgdGltZV90IGN0aW1lLCBkdGltZTsK K0BAIC0zMTUsOCArMzE1LDggQEAKKyAgICAgY3RpbWUgKz0gMzAwOworICAgICBkdGltZSA9IGN0 aW1lLTYwMDsKKyAKKy0gICAgaWYgKChhLT50eXBlICE9IFZfQVNOMV9HRU5FUkFMSVpFRFRJTUUp IHx8CistICAgICAgICAoYi0+dHlwZSAhPSBWX0FTTjFfR0VORVJBTElaRURUSU1FKSkKKysgICAg aWYgKChBU04xX1NUUklOR190eXBlKGEpICE9IFZfQVNOMV9HRU5FUkFMSVpFRFRJTUUpIHx8Cisr ICAgICAgICAoQVNOMV9TVFJJTkdfdHlwZShiKSAhPSBWX0FTTjFfR0VORVJBTElaRURUSU1FKSkK KyAgICAgICBFUlJPUihBQ19FUlJfREFURVMpOworIAorICAgICBpZiAoKChYNTA5X2NtcF90aW1l KGIsICZ2ZXJ0aW1lKSA+PSAwKSAmJgorQEAgLTM3OSw3ICszNzksNyBAQAorICAgLyogcHV0IHBv bGljeUF1dGhvcml0eSBpbiB2b21zIHN0cnVjdCAqLworICAgZGF0YSA9IHNrX0dFTkVSQUxfTkFN RV92YWx1ZShjYXBhdHRyLT5uYW1lcywgMCk7CisgICBpZiAoZGF0YS0+dHlwZSA9PSBHRU5fVVJJ KSB7CistICAgIHYudm9uYW1lID0gc3RkOjpzdHJpbmcoKGNoYXIqKWRhdGEtPmQuaWE1LT5kYXRh LCBkYXRhLT5kLmlhNS0+bGVuZ3RoKTsKKysgICAgdi52b25hbWUgPSBzdGQ6OnN0cmluZygoY2hh ciopQVNOMV9TVFJJTkdfZ2V0MF9kYXRhKGRhdGEtPmQuaWE1KSwgQVNOMV9TVFJJTkdfbGVuZ3Ro KGRhdGEtPmQuaWE1KSk7CisgICAgIHN0ZDo6c3RyaW5nOjpzaXplX3R5cGUgcG9pbnQgPSB2LnZv bmFtZS5maW5kKCI6Ly8iKTsKKyAKKyAgICAgaWYgKHBvaW50ICE9IHN0ZDo6c3RyaW5nOjpucG9z KSB7CitAQCAtMzk4LDEwICszOTgsMTAgQEAKKyAgIGZvciAoaW50IGk9MDsgaTxza19BQ19JRVRG QVRUUlZBTF9udW0odmFsdWVzKTsgaSsrKSB7CisgICAgIGNhcG5hbWUgPSBza19BQ19JRVRGQVRU UlZBTF92YWx1ZSh2YWx1ZXMsIGkpOworIAorLSAgICBpZiAoIShjYXBuYW1lLT50eXBlID09IFZf QVNOMV9PQ1RFVF9TVFJJTkcpKQorKyAgICBpZiAoIShBU04xX1NUUklOR190eXBlKGNhcG5hbWUp ID09IFZfQVNOMV9PQ1RFVF9TVFJJTkcpKQorICAgICAgIHJldHVybiBBQ19FUlJfQVRUUklCX0ZR QU47CisgCistICAgIHN0ZDo6c3RyaW5nIHN0ciAgPSBzdGQ6OnN0cmluZygoY2hhciopY2FwbmFt ZS0+ZGF0YSwgY2FwbmFtZS0+bGVuZ3RoKTsKKysgICAgc3RkOjpzdHJpbmcgc3RyICA9IHN0ZDo6 c3RyaW5nKChjaGFyKilBU04xX1NUUklOR19nZXQwX2RhdGEoY2FwbmFtZSksIEFTTjFfU1RSSU5H X2xlbmd0aChjYXBuYW1lKSk7CisgICAgIHN0ZDo6c3RyaW5nOjpzaXplX3R5cGUgdG9wX2dyb3Vw X3NpemUgPSB0b3BfZ3JvdXAuc2l6ZSgpOworICAgICBzdGQ6OnN0cmluZzo6c2l6ZV90eXBlIHN0 cl9zaXplID0gc3RyLnNpemUoKTsKKyAKK0BAIC01NTYsMTQgKzU1NiwxNCBAQAorICAgICAgICAg ICBpZiAoa2V5LT5rZXlpZCkgeworICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgaGFzaGVkW1NI QV9ESUdFU1RfTEVOR1RIXTsKKyAKKy0gICAgICAgICAgICBBU04xX0JJVF9TVFJJTkcqIHB1Ymtl eSA9IFg1MDlfZ2V0MF9wdWJrZXlfYml0c3RyKGlzcyk7CistICAgICAgICAgICAgaWYgKCFTSEEx KHB1YmtleS0+ZGF0YSwKKy0gICAgICAgICAgICAgICAgICAgICAgcHVia2V5LT5sZW5ndGgsCisr ICAgICAgICAgICAgY29uc3QgQVNOMV9CSVRfU1RSSU5HKiBwdWJrZXkgPSBYNTA5X2dldDBfcHVi a2V5X2JpdHN0cihpc3MpOworKyAgICAgICAgICAgIGlmICghU0hBMShBU04xX1NUUklOR19nZXQw X2RhdGEocHVia2V5KSwKKysgICAgICAgICAgICAgICAgICAgICAgQVNOMV9TVFJJTkdfbGVuZ3Ro KHB1YmtleSksCisgICAgICAgICAgICAgICAgICAgICAgIGhhc2hlZCkpCisgICAgICAgICAgICAg ICByZXQgPSBBQ19FUlJfRVhUX0tFWTsKKyAgICAgICAgICAgCistICAgICAgICAgICAgaWYgKCht ZW1jbXAoa2V5LT5rZXlpZC0+ZGF0YSwgaGFzaGVkLCAyMCkgIT0gMCkgJiYgCistICAgICAgICAg ICAgICAgIChrZXktPmtleWlkLT5sZW5ndGggPT0gMjApKQorKyAgICAgICAgICAgIGlmICgobWVt Y21wKEFTTjFfU1RSSU5HX2dldDBfZGF0YShrZXktPmtleWlkKSwgaGFzaGVkLCAyMCkgIT0gMCkg JiYgCisrICAgICAgICAgICAgICAgIChBU04xX1NUUklOR19sZW5ndGgoa2V5LT5rZXlpZCkgPT0g MjApKQorICAgICAgICAgICAgICAgcmV0ID0gQUNfRVJSX0VYVF9LRVk7CisgICAgICAgICAgIH0K KyAgICAgICAgICAgZWxzZSB7CitAQCAtNTc0LDcgKzU3NCw3IEBACisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAoWDUwOV9nZXQwX3NlcmlhbE51bWJlcihpc3MpKSkpCisgICAgICAg ICAgICAgICByZXQgPSBBQ19FUlJfRVhUX0tFWTsKKyAJICAKKy0gICAgICAgICAgICBpZiAoa2V5 LT5zZXJpYWwtPnR5cGUgIT0gR0VOX0RJUk5BTUUpCisrICAgICAgICAgICAgaWYgKEFTTjFfU1RS SU5HX3R5cGUoa2V5LT5zZXJpYWwpICE9IEdFTl9ESVJOQU1FKQorICAgICAgICAgICAgICAgcmV0 ID0gQUNfRVJSX0VYVF9LRVk7CisgCisgICAgICAgICAgICAgaWYgKFg1MDlfTkFNRV9jbXAoc2tf R0VORVJBTF9OQU1FX3ZhbHVlKChrZXktPmlzc3VlciksIDApLT5kLmRpcm4sIAorQEAgLTYzMiwx NSArNjMyLDE1IEBACisgICAgICAgQUNfQVRUUklCVVRFICphdCA9IHNrX0FDX0FUVFJJQlVURV92 YWx1ZShhdHRzLCBqKTsKKyAKKyAgICAgICBzdHJ1Y3QgYXR0cmlidXRlIGE7CistICAgICAgYS5u YW1lICAgICAgPSBzdGQ6OnN0cmluZygoY2hhciopYXQtPm5hbWUtPmRhdGEsICAgICAgYXQtPm5h bWUtPmxlbmd0aCk7CistICAgICAgYS52YWx1ZSAgICAgPSBzdGQ6OnN0cmluZygoY2hhciopYXQt PnZhbHVlLT5kYXRhLCAgICAgYXQtPnZhbHVlLT5sZW5ndGgpOworLSAgICAgIGEucXVhbGlmaWVy ID0gc3RkOjpzdHJpbmcoKGNoYXIqKWF0LT5xdWFsaWZpZXItPmRhdGEsIGF0LT5xdWFsaWZpZXIt Pmxlbmd0aCk7CisrICAgICAgYS5uYW1lICAgICAgPSBzdGQ6OnN0cmluZygoY2hhciopQVNOMV9T VFJJTkdfZ2V0MF9kYXRhKGF0LT5uYW1lKSwgICAgICBBU04xX1NUUklOR19sZW5ndGgoYXQtPm5h bWUpKTsKKysgICAgICBhLnZhbHVlICAgICA9IHN0ZDo6c3RyaW5nKChjaGFyKilBU04xX1NUUklO R19nZXQwX2RhdGEoYXQtPnZhbHVlKSwgICAgIEFTTjFfU1RSSU5HX2xlbmd0aChhdC0+dmFsdWUp KTsKKysgICAgICBhLnF1YWxpZmllciA9IHN0ZDo6c3RyaW5nKChjaGFyKilBU04xX1NUUklOR19n ZXQwX2RhdGEoYXQtPnF1YWxpZmllciksIEFTTjFfU1RSSU5HX2xlbmd0aChhdC0+cXVhbGlmaWVy KSk7CisgCisgICAgICAgYWwuYXR0cmlidXRlcy5wdXNoX2JhY2soYSk7CisgICAgIH0KKyAKKyAg ICAgZ24gPSBza19HRU5FUkFMX05BTUVfdmFsdWUoaG9sZGVyLT5ncmFudG9yLCAwKTsKKy0gICAg YWwuZ3JhbnRvciA9IHN0ZDo6c3RyaW5nKChjaGFyKilnbi0+ZC5pYTUtPmRhdGEsIGduLT5kLmlh NS0+bGVuZ3RoKTsKKysgICAgYWwuZ3JhbnRvciA9IHN0ZDo6c3RyaW5nKChjaGFyKilBU04xX1NU UklOR19nZXQwX2RhdGEoZ24tPmQuaWE1KSwgQVNOMV9TVFJJTkdfbGVuZ3RoKGduLT5kLmlhNSkp OworIAorICAgICByZC0+YXR0cmlidXRlcy0+cHVzaF9iYWNrKGFsKTsKKyAgIH0KK2RpZmYgLXJ1 TiBhL3NyYy9hcGkvY2NhcGkvYXBpX3V0aWwuY2MgYi9zcmMvYXBpL2NjYXBpL2FwaV91dGlsLmNj CistLS0gYS9zcmMvYXBpL2NjYXBpL2FwaV91dGlsLmNjCTIwMjUtMTItMTggMTM6Mzk6MjcuMDAw MDAwMDAwICswMTAwCisrKysgYi9zcmMvYXBpL2NjYXBpL2FwaV91dGlsLmNjCTIwMjYtMDQtMjkg MTY6MDU6MjQuMjM5OTQwNjc3ICswMjAwCitAQCAtMTM5LDcgKzEzOSw3IEBACisgICBpbnQgaW5k ZXggPSBYNTA5X2dldF9leHRfYnlfTklEKGNlcnQsIG5pZCwgLTEpOworIAorICAgaWYgKGluZGV4 ID49IDApCistICAgIHJldHVybiBYNTA5X2dldF9leHQoY2VydCwgaW5kZXgpOworKyAgICByZXR1 cm4gY29uc3RfY2FzdDxYNTA5X0VYVEVOU0lPTio+KFg1MDlfZ2V0X2V4dChjZXJ0LCBpbmRleCkp OworICAgZWxzZQorICAgICByZXR1cm4gTlVMTDsKKyB9CitAQCAtMTU3LDE3ICsxNTcsMTcgQEAK KyAKKyAgIGV4dCA9IGdldF9leHQoY2VydCwgImluY2ZpbGUiKTsKKyAgIGlmIChleHQpIHsKKy0g ICAgQVNOMV9PQ1RFVF9TVFJJTkcqIHZhbHVlID0gWDUwOV9FWFRFTlNJT05fZ2V0X2RhdGEoZXh0 KTsKKysgICAgY29uc3QgQVNOMV9PQ1RFVF9TVFJJTkcqIHZhbHVlID0gWDUwOV9FWFRFTlNJT05f Z2V0X2RhdGEoZXh0KTsKKyAgICAgYXNzZXJ0KHZhbHVlICYmICJYNTA5X0VYVEVOU0lPTl9nZXRf ZGF0YSBmYWlsZWQiKTsKKy0gICAgZXh0cmFfZGF0YSA9IHN0ZDo6c3RyaW5nKHJlaW50ZXJwcmV0 X2Nhc3Q8Y2hhcio+KHZhbHVlLT5kYXRhKSwgdmFsdWUtPmxlbmd0aCk7CisrICAgIGV4dHJhX2Rh dGEgPSBzdGQ6OnN0cmluZyhyZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPihBU04xX1NUUklO R19nZXQwX2RhdGEodmFsdWUpKSwgQVNOMV9TVFJJTkdfbGVuZ3RoKHZhbHVlKSk7CisgICAgIGZv dW5kID0gdHJ1ZTsKKyAgIH0KKyAKKyAgIGV4dCA9IGdldF9leHQoY2VydCwgInZvIik7CisgICBp ZiAoZXh0KSB7CistICAgIEFTTjFfT0NURVRfU1RSSU5HKiB2YWx1ZSA9IFg1MDlfRVhURU5TSU9O X2dldF9kYXRhKGV4dCk7CisrICAgIGNvbnN0IEFTTjFfT0NURVRfU1RSSU5HKiB2YWx1ZSA9IFg1 MDlfRVhURU5TSU9OX2dldF9kYXRhKGV4dCk7CisgICAgIGFzc2VydCh2YWx1ZSAmJiAiWDUwOV9F WFRFTlNJT05fZ2V0X2RhdGEgZmFpbGVkIik7CistICAgIHdvcmt2byA9IHN0ZDo6c3RyaW5nKHJl aW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KHZhbHVlLT5kYXRhKSwgdmFsdWUtPmxlbmd0aCk7CisrICAg IHdvcmt2byA9IHN0ZDo6c3RyaW5nKHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgY2hhcio+KEFTTjFf U1RSSU5HX2dldDBfZGF0YSh2YWx1ZSkpLCBBU04xX1NUUklOR19sZW5ndGgodmFsdWUpKTsKKyAg IH0KKyAKKyAgIHJldHVybiBmb3VuZDsKK0BAIC00MjMsNyArNDIzLDcgQEAKKyAgICAgcmV0dXJu IE5VTEw7CisgICB9CisgICAKKy0gIHN0ZDo6c3RyaW5nIHZvbmFtZSgoY29uc3QgY2hhciAqKW5h bWUtPmQuaWE1LT5kYXRhLCAwLCBuYW1lLT5kLmlhNS0+bGVuZ3RoKTsKKysgIHN0ZDo6c3RyaW5n IHZvbmFtZSgoY29uc3QgY2hhciAqKUFTTjFfU1RSSU5HX2dldDBfZGF0YShuYW1lLT5kLmlhNSks IDAsIEFTTjFfU1RSSU5HX2xlbmd0aChuYW1lLT5kLmlhNSkpOworICAgc3RkOjpzdHJpbmc6OnNp emVfdHlwZSBjcG9zID0gdm9uYW1lLmZpbmQoIjovLyIpOworICAgc3RkOjpzdHJpbmcgaG9zdG5h bWU7CisgCitkaWZmIC1ydU4gYS9zcmMvYXBpL2NjYXBpL3ZvbXNfYXBpLmNjIGIvc3JjL2FwaS9j Y2FwaS92b21zX2FwaS5jYworLS0tIGEvc3JjL2FwaS9jY2FwaS92b21zX2FwaS5jYwkyMDI1LTEy LTE4IDEzOjM5OjI3LjAwMDAwMDAwMCArMDEwMAorKysrIGIvc3JjL2FwaS9jY2FwaS92b21zX2Fw aS5jYwkyMDI2LTA0LTI5IDE2OjA1OjE0LjA2NDc4NDUyOCArMDIwMAorQEAgLTEwMjUsOCArMTAy NSw4IEBACisgICAgICAgICBBQ19UQVJHRVQgKm5hbWUgPSBOVUxMOworICAgICAgICAgbmFtZSA9 IHNrX0FDX1RBUkdFVF92YWx1ZSh0YXJnZXQtPnRhcmdldHMsIGkpOworICAgICAgICAgaWYgKG5h bWUtPm5hbWUtPnR5cGUgPT0gR0VOX1VSSSkKKy0gICAgICAgICAgdGFyZ2V0cy5wdXNoX2JhY2so c3RkOjpzdHJpbmcoKGNoYXIqKShuYW1lLT5uYW1lLT5kLmlhNS0+ZGF0YSksIAorLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lLT5uYW1lLT5kLmlhNS0+bGVuZ3Ro KSk7CisrICAgICAgICAgIHRhcmdldHMucHVzaF9iYWNrKHN0ZDo6c3RyaW5nKChjaGFyKilBU04x X1NUUklOR19nZXQwX2RhdGEobmFtZS0+bmFtZS0+ZC5pYTUpLCAKKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgQVNOMV9TVFJJTkdfbGVuZ3RoKG5hbWUtPm5hbWUtPmQu aWE1KSkpOworICAgICAgIH0KKyAgICAgfQorICAgICBBQ19UQVJHRVRTX2ZyZWUodGFyZ2V0KTsK K2RpZmYgLXJ1TiBhL3NyYy9pbmNsdWRlL3NzbHV0aWxzLmggYi9zcmMvaW5jbHVkZS9zc2x1dGls cy5oCistLS0gYS9zcmMvaW5jbHVkZS9zc2x1dGlscy5oCTIwMjUtMTItMTggMTM6Mzk6MjcuMDAw MDAwMDAwICswMTAwCisrKysgYi9zcmMvaW5jbHVkZS9zc2x1dGlscy5oCTIwMjYtMDQtMjkgMTQ6 NDU6MTcuOTk3NTA5Mjk5ICswMjAwCitAQCAtNDAzLDggKzQwMyw4IEBACisgaW50IAorIHByb3h5 X2NoZWNrX2lzc3VlZCgKKyAgICAgWDUwOV9TVE9SRV9DVFggKiAgICAgICAgICAgICAgICAgICAg Y3R4LAorLSAgICBYNTA5ICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4LAorLSAgICBY NTA5ICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc3N1ZXIpOworKyAgICBjb25zdCBY NTA5ICogICAgICAgICAgICAgICAgICAgICAgICB4LAorKyAgICBjb25zdCBYNTA5ICogICAgICAg ICAgICAgICAgICAgICAgICBpc3N1ZXIpOworIAorIGludAorIHByb3h5X3ZlcmlmeV9jZXJ0Y2hh aW4oCitkaWZmIC1ydU4gYS9zcmMvc3NsdXRpbHMvcHJveHkuYyBiL3NyYy9zc2x1dGlscy9wcm94 eS5jCistLS0gYS9zcmMvc3NsdXRpbHMvcHJveHkuYwkyMDI1LTEyLTE4IDEzOjM5OjI3LjAwMDAw MDAwMCArMDEwMAorKysrIGIvc3JjL3NzbHV0aWxzL3Byb3h5LmMJMjAyNi0wNC0yOSAxNToyMToy Mi44NTk0MjYwNjkgKzAyMDAKK0BAIC01NDMsOCArNTQzLDkgQEAKKyAgICAgICBvY3QgPSBBU04x X09DVEVUX1NUUklOR19uZXcoKTsKKyAgICAgICBhc3NlcnQob2N0ICE9IE5VTEwgJiYgIkFTTjFf T0NURVRfU1RSSU5HX25ldyBmYWlsZWQiKTsKKyAKKy0gICAgICBvY3QtPmRhdGEgPSBkZXI7Cist ICAgICAgb2N0LT5sZW5ndGggPSBsZW47CisrICAgICAgQVNOMV9TVFJJTkdfc2V0MChvY3QsIGRl ciwgbGVuKTsKKysKKysKKyAgICAgICBleDcgPSBYNTA5X0VYVEVOU0lPTl9jcmVhdGVfYnlfTklE KE5VTEwsIHYzbmlkLCAxIC8qY3JpdGljYWwqLywgb2N0KTsKKyAKKyAgICAgICBBU04xX09DVEVU X1NUUklOR19mcmVlKG9jdCk7CitAQCAtNjgzLDggKzY4NCw3IEBACisgICAgIGdvdG8gZXJyOwor ICAgfQorICAgCistICBleF9vY3QtPmRhdGEgICA9ICh1bnNpZ25lZCBjaGFyKilkYXRhOworLSAg ZXhfb2N0LT5sZW5ndGggPSBkYXRhbGVuOworKyAgQVNOMV9TVFJJTkdfc2V0MChleF9vY3QsICh1 bnNpZ25lZCBjaGFyKilkYXRhLCBkYXRhbGVuKTsKKyAgIAorICAgaWYgKCEoZXggPSBYNTA5X0VY VEVOU0lPTl9jcmVhdGVfYnlfT0JKKE5VTEwsIGV4X29iaiwgY3JpdCwgZXhfb2N0KSkpIHsKKyAg ICAgUFJYWWVycihQUlhZRVJSX0ZfUFJPWFlfU0lHTixQUlhZRVJSX1JfQ0xBU1NfQUREX0VYVCk7 CitAQCAtNjk0LDggKzY5NCw3IEBACisgICAKKyAgIGlmIChleF9vY3QpIHsKKyAgICAgLyogYXZv aWQgc3B1cmlvdXMgZnJlZSBvZiB0aGUgY29udGVudHMuICovCistICAgIGV4X29jdC0+bGVuZ3Ro ID0gMDsKKy0gICAgZXhfb2N0LT5kYXRhID0gTlVMTDsKKysgICAgQVNOMV9TVFJJTkdfc2V0MChl eF9vY3QsIE5VTEwsIDApOworICAgICBBU04xX09DVEVUX1NUUklOR19mcmVlKGV4X29jdCk7Cisg ICB9CisgCitAQCAtODA2LDEwICs4MDUsMTAgQEAKKyAgIEFTTjFfQklUX1NUUklORyAqdXNhZ2Ug PSBYNTA5X2dldF9leHRfZDJpKGNlcnQsIE5JRF9rZXlfdXNhZ2UsIE5VTEwsIE5VTEwpOworICAg CisgICBpZiAodXNhZ2UpIHsKKy0gICAgaWYgKHVzYWdlLT5sZW5ndGggPiAwKQorLSAgICAgIGtl eXVzYWdlID0gdXNhZ2UtPmRhdGFbMF07CistICAgIGlmICh1c2FnZS0+bGVuZ3RoID4gMSkKKy0g ICAgICBrZXl1c2FnZSB8PSB1c2FnZS0+ZGF0YVsxXSA8PCA4OworKyAgICBpZiAoQVNOMV9TVFJJ TkdfbGVuZ3RoKHVzYWdlKSA+IDApCisrICAgICAga2V5dXNhZ2UgPSBBU04xX1NUUklOR19nZXQw X2RhdGEodXNhZ2UpWzBdOworKyAgICBpZiAoQVNOMV9TVFJJTkdfbGVuZ3RoKHVzYWdlKSA+IDEp CisrICAgICAga2V5dXNhZ2UgfD0gQVNOMV9TVFJJTkdfZ2V0MF9kYXRhKHVzYWdlKVsxXSA8PCA4 OworIAorICAgICBBU04xX0JJVF9TVFJJTkdfZnJlZSh1c2FnZSk7CisgICB9CitkaWZmIC1ydU4g YS9zcmMvc3NsdXRpbHMvcHJveHljZXJ0aW5mby5jIGIvc3JjL3NzbHV0aWxzL3Byb3h5Y2VydGlu Zm8uYworLS0tIGEvc3JjL3NzbHV0aWxzL3Byb3h5Y2VydGluZm8uYwkyMDI1LTEyLTE4IDEzOjM5 OjI3LjAwMDAwMDAwMCArMDEwMAorKysrIGIvc3JjL3NzbHV0aWxzL3Byb3h5Y2VydGluZm8uYwky MDI2LTA0LTI5IDE0OjQ0OjI3LjE1ODk2NjM5MSArMDIwMAorQEAgLTEwNyw5ICsxMDcsOSBAQAor ICAgICBCSU9fcHJpbnRmKG91dCwgIiUqc1BvbGljeSBMYW5ndWFnZTogIiwgaW5kZW50LCAiIik7 CisgICAgIGkyYV9BU04xX09CSkVDVChvdXQsIHBjaS0+cHJveHlQb2xpY3ktPnBvbGljeUxhbmd1 YWdlKTsKKyAgICAgQklPX3B1dHMob3V0LCAiXG4iKTsKKy0gICAgaWYgKHBjaS0+cHJveHlQb2xp Y3ktPnBvbGljeSAmJiBwY2ktPnByb3h5UG9saWN5LT5wb2xpY3ktPmRhdGEpCisrICAgIGlmIChw Y2ktPnByb3h5UG9saWN5LT5wb2xpY3kgJiYgQVNOMV9TVFJJTkdfZ2V0MF9kYXRhKHBjaS0+cHJv eHlQb2xpY3ktPnBvbGljeSkpCisgICAgICAgICBCSU9fcHJpbnRmKG91dCwgIiUqc1BvbGljeSBU ZXh0OiAlc1xuIiwgaW5kZW50LCAiIiwKKy0gICAgICAgICAgICAgICAgICAgcGNpLT5wcm94eVBv bGljeS0+cG9saWN5LT5kYXRhKTsKKysgICAgICAgICAgICAgICAgICAgQVNOMV9TVFJJTkdfZ2V0 MF9kYXRhKHBjaS0+cHJveHlQb2xpY3ktPnBvbGljeSkpOworICAgICByZXR1cm4gMTsKKyB9Cisg CitAQCAtMTQyLDExICsxNDIsMTEgQEAKKyB7CisgICAgIGlmKHBvbGljeS0+cG9saWN5KQorICAg ICB7IAorLSAgICAgICAgKCpsZW5ndGgpID0gcG9saWN5LT5wb2xpY3ktPmxlbmd0aDsKKy0gICAg ICAgIGlmKCpsZW5ndGggPiAwICYmIHBvbGljeS0+cG9saWN5LT5kYXRhKQorKyAgICAgICAgKCps ZW5ndGgpID0gQVNOMV9TVFJJTkdfbGVuZ3RoKHBvbGljeS0+cG9saWN5KTsKKysgICAgICAgIGlm KCpsZW5ndGggPiAwICYmIEFTTjFfU1RSSU5HX2dldDBfZGF0YShwb2xpY3ktPnBvbGljeSkpCisg ICAgICAgICB7CisgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqICAgICAgICAgICAgICAgICBj b3B5ID0gbWFsbG9jKCpsZW5ndGgpOworLSAgICAgICAgICAgIG1lbWNweShjb3B5LCBwb2xpY3kt PnBvbGljeS0+ZGF0YSwgKmxlbmd0aCk7CisrICAgICAgICAgICAgbWVtY3B5KGNvcHksIEFTTjFf U1RSSU5HX2dldDBfZGF0YShwb2xpY3ktPnBvbGljeSksICpsZW5ndGgpOworICAgICAgICAgICAg IHJldHVybiBjb3B5OworICAgICAgICAgfQorICAgICB9CitkaWZmIC1ydU4gYS9zcmMvc3NsdXRp bHMvc3NsdXRpbHMuYyBiL3NyYy9zc2x1dGlscy9zc2x1dGlscy5jCistLS0gYS9zcmMvc3NsdXRp bHMvc3NsdXRpbHMuYwkyMDI1LTEyLTE4IDEzOjM5OjI3LjAwMDAwMDAwMCArMDEwMAorKysrIGIv c3JjL3NzbHV0aWxzL3NzbHV0aWxzLmMJMjAyNi0wNC0yOSAxNDo0NTozMy4wMTQwMzE2NzAgKzAy MDAKK0BAIC00MDQsMTAgKzQwNCwxMiBAQAorIHZvaWQgUFJJVkFURQorIEVSUl9zZXRfY29udGlu dWVfbmVlZGVkKHZvaWQpCisgeworKyNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwgMHg0MDAw MDAwMEwKKyAgICAgRVJSX1NUQVRFICplczsKKyAgICAgZXMgPSBFUlJfZ2V0X3N0YXRlKCk7Cisg ICAgIGVzLT5lcnJfZGF0YV9mbGFnc1tlcy0+dG9wXSA9CisgICAgICAgICBlcy0+ZXJyX2RhdGFf ZmxhZ3NbZXMtPnRvcF0gfCBFUlJfRElTUExBWV9DT05USU5VRV9ORUVERUQ7CisrI2VuZGlmCisg fQorIAorIAorQEAgLTE2NjksOCArMTY3MSw4IEBACisgCisgaW50IFBSSVZBVEUKKyBwcm94eV9j aGVja19pc3N1ZWQoVU5VU0VEKFg1MDlfU1RPUkVfQ1RYICogIGN0eCksCistICAgICAgWDUwOSAq ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeCwKKy0gICAgICBYNTA5ICogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBpc3N1ZXIpCisrICAgICAgY29uc3QgWDUwOSAqICAgICAgICAg ICAgICAgICAgICAgICAgeCwKKysgICAgICBjb25zdCBYNTA5ICogICAgICAgICAgICAgICAgICAg ICAgICBpc3N1ZXIpCisgeworICAgaW50IHJldHVybl92YWx1ZTsKKyAgIGludCByZXR1cm5fY29k ZSA9IDE7CitAQCAtMzI2OCw3ICszMjcwLDcgQEAKKyAgIHN0cnVjdCB0bSB0bTsKKyAgIGludCAg ICAgICBzaXplID0gMDsKKyAKKy0gIHN3aXRjaCAoY3RtLT50eXBlKSB7CisrICBzd2l0Y2ggKEFT TjFfU1RSSU5HX3R5cGUoY3RtKSkgeworICAgY2FzZSBWX0FTTjFfVVRDVElNRToKKyAgICAgc2l6 ZT0xMDsKKyAgICAgYnJlYWs7CitAQCAtMzI3Nyw4ICszMjc5LDggQEAKKyAgICAgYnJlYWs7Cisg ICB9CisgICBwID0gYnVmZjE7CistICBpID0gY3RtLT5sZW5ndGg7CistICBzdHIgPSAoY2hhciAq KWN0bS0+ZGF0YTsKKysgIGkgPSBBU04xX1NUUklOR19sZW5ndGgoY3RtKTsKKysgIHN0ciA9IChj aGFyICopQVNOMV9TVFJJTkdfZ2V0MF9kYXRhKGN0bSk7CisgICBpZiAoKGkgPCAxMSkgfHwgKGkg PiAxNykpIHsKKyAgICAgcmV0dXJuIDA7CisgICB9CitAQCAtMzMxMSw3ICszMzEzLDcgQEAKKyAK KyAgIHRtLnRtX2lzZHN0ID0gMDsKKyAgIGludCBpbmRleCA9IDA7CistICBpZiAoY3RtLT50eXBl ID09IFZfQVNOMV9VVENUSU1FKSB7CisrICBpZiAoQVNOMV9TVFJJTkdfdHlwZShjdG0pID09IFZf QVNOMV9VVENUSU1FKSB7CisgICAgIHRtLnRtX3llYXIgID0gKGJ1ZmYxW2luZGV4KytdLScwJykq MTA7CisgICAgIHRtLnRtX3llYXIgKz0gKGJ1ZmYxW2luZGV4KytdLScwJyk7CisgICB9CitkaWZm IC1ydU4gYS9zcmMvc3NsdXRpbHMvdm9tc19jZXJ0X3R5cGUuYyBiL3NyYy9zc2x1dGlscy92b21z X2NlcnRfdHlwZS5jCistLS0gYS9zcmMvc3NsdXRpbHMvdm9tc19jZXJ0X3R5cGUuYwkyMDI1LTEy LTE4IDEzOjM5OjI3LjAwMDAwMDAwMCArMDEwMAorKysrIGIvc3JjL3NzbHV0aWxzL3ZvbXNfY2Vy dF90eXBlLmMJMjAyNi0wNC0yOSAxNTowNTo0Ni43MzczNjU5NTIgKzAyMDAKK0BAIC0yNTYsMTEg KzI1NiwxMSBAQAorIAorICAgICBuZV9kYXRhID0gWDUwOV9OQU1FX0VOVFJZX2dldF9kYXRhKG5l KTsKKyAKKy0gICAgaWYgKG5lX2RhdGEtPmxlbmd0aCA9PSA1ICYmICFtZW1jbXAobmVfZGF0YS0+ ZGF0YSwicHJveHkiLDUpKQorKyAgICBpZiAoQVNOMV9TVFJJTkdfbGVuZ3RoKG5lX2RhdGEpID09 IDUgJiYgIW1lbWNtcChBU04xX1NUUklOR19nZXQwX2RhdGEobmVfZGF0YSksInByb3h5Iiw1KSkK KyAgICAgeworICAgICAgICpjZXJ0X3R5cGUgPSBWT01TX0NFUlRfVFlQRV9HU0lfMl9QUk9YWTsK KyAgICAgfQorLSAgICBlbHNlIGlmIChuZV9kYXRhLT5sZW5ndGggPT0gMTMgJiYgIW1lbWNtcChu ZV9kYXRhLT5kYXRhLCJsaW1pdGVkIHByb3h5IiwxMykpCisrICAgIGVsc2UgaWYgKEFTTjFfU1RS SU5HX2xlbmd0aChuZV9kYXRhKSA9PSAxMyAmJiAhbWVtY21wKEFTTjFfU1RSSU5HX2dldDBfZGF0 YShuZV9kYXRhKSwibGltaXRlZCBwcm94eSIsMTMpKQorICAgICB7CisgICAgICAgKmNlcnRfdHlw ZSA9IFZPTVNfQ0VSVF9UWVBFX0dTSV8yX0xJTUlURURfUFJPWFk7CisgICAgIH0KK0BAIC0yOTMs NyArMjkzLDcgQEAKKyAgICAgbmVfZGF0YSA9IFg1MDlfTkFNRV9FTlRSWV9nZXRfZGF0YShuZSk7 CisgCisgICAgIGlmICgobmV3X25lID0gWDUwOV9OQU1FX0VOVFJZX2NyZWF0ZV9ieV9OSUQoIE5V TEwsIE5JRF9jb21tb25OYW1lLAorLQkgICAgbmVfZGF0YS0+dHlwZSwgbmVfZGF0YS0+ZGF0YSwg LTEpKSA9PSBOVUxMKXsKKysJICAgIEFTTjFfU1RSSU5HX3R5cGUobmVfZGF0YSksIEFTTjFfU1RS SU5HX2dldDBfZGF0YShuZV9kYXRhKSwgLTEpKSA9PSBOVUxMKXsKKyAKKyAgICAgICByZXN1bHQg PSB2b21zX3ZhbGlkYXRpb25fZXJyb3IoCisgCSAgUFJYWUVSUl9SX0VSUk9SX0JVSUxESU5HX1NV QkpFQ1QsCitkaWZmIC1ydU4gYS9zcmMvdXRpbHMvdm9tc19wcm94eV9pbmZvLmNjIGIvc3JjL3V0 aWxzL3ZvbXNfcHJveHlfaW5mby5jYworLS0tIGEvc3JjL3V0aWxzL3ZvbXNfcHJveHlfaW5mby5j YwkyMDI1LTEyLTE4IDEzOjM5OjI3LjAwMDAwMDAwMCArMDEwMAorKysrIGIvc3JjL3V0aWxzL3Zv bXNfcHJveHlfaW5mby5jYwkyMDI2LTA0LTI5IDE2OjA2OjIwLjAzNTMxOTAzMSArMDIwMAorQEAg LTQ2NiwxOCArNDY2LDEwIEBACisgc3RhdGljIEFTTjFfVElNRSAqCisgY29udnRpbWUoc3RkOjpz dHJpbmcgZGF0YSkKKyB7CistICBBU04xX1RJTUUgKnQ9IEFTTjFfVElNRV9uZXcoKTsKKy0KKy0g IHQtPmRhdGEgICA9ICh1bnNpZ25lZCBjaGFyKilzdHJkdXAoZGF0YS5kYXRhKCkpOworLSAgdC0+ bGVuZ3RoID0gZGF0YS5zaXplKCk7CistICBzd2l0Y2godC0+bGVuZ3RoKSB7CistICBjYXNlIDEw OgorLSAgICB0LT50eXBlID0gVl9BU04xX1VUQ1RJTUU7CistICAgIGJyZWFrOworLSAgY2FzZSAx NToKKy0gICAgdC0+dHlwZSA9IFZfQVNOMV9HRU5FUkFMSVpFRFRJTUU7CistICAgIGJyZWFrOwor LSAgZGVmYXVsdDoKKysgIEFTTjFfVElNRSAqdCA9IEFTTjFfVElNRV9uZXcoKTsKKysgIGlmICgh dCkKKysgICAgcmV0dXJuIE5VTEw7CisrICBpZiAoIUFTTjFfVElNRV9zZXRfc3RyaW5nKHQsIGRh dGEuY19zdHIoKSkpIHsKKyAgICAgQVNOMV9USU1FX2ZyZWUodCk7CisgICAgIHJldHVybiBOVUxM OworICAgfQoKZGlmZiAtLWdpdCBhL3ZvbXMuc3BlYyBiL3ZvbXMuc3BlYwppbmRleCBjMGNmMDcx Li5kZTYxNGQ2IDEwMDY0NAotLS0gYS92b21zLnNwZWMKKysrIGIvdm9tcy5zcGVjCkBAIC0yLDcg KzIsNyBAQAogCiBOYW1lOgkJdm9tcwogVmVyc2lvbjoJMi4xLjMKLVJlbGVhc2U6CTMlez9kaXN0 fQorUmVsZWFzZToJNCV7P2Rpc3R9CiBTdW1tYXJ5OglWaXJ0dWFsIE9yZ2FuaXphdGlvbiBNZW1i ZXJzaGlwIFNlcnZpY2UKIAogTGljZW5zZToJQXBhY2hlLTIuMApAQCAtMTMsNiArMTMsOCBAQCBT b3VyY2UxOgkle25hbWV9LklOU1RBTEwKICMJCVN5c3RlbSB1c2VyIGNyZWF0aW9uIGNvbmZpZwog U291cmNlMjoJJXtuYW1lfS1zeXN1c2Vycy5jb25mCiAKK1BhdGNoMDoJCXZvbXMtb3BlbnNzbDQu cGF0Y2gKKwogQnVpbGRSZXF1aXJlczoJbWFrZQogQnVpbGRSZXF1aXJlczoJZ2NjLWMrKwogQnVp bGRSZXF1aXJlczoJb3BlbnNzbC1kZXZlbApAQCAtMTA0LDYgKzEwNiw3IEBAIFRoaXMgcGFja2Fn ZSBwcm92aWRlcyB0aGUgVk9NUyBzZXJ2aWNlLgogCiAlcHJlcAogJXNldHVwIC1xCislcGF0Y2gg MCAtcDEgLWIgLm9wZW5zc2w0CiAKIC4vYXV0b2dlbi5zaAogCkBAIC0yOTYsNiArMjk5LDkgQEAg ZmkKICVkb2MgUkVBRE1FLkZlZG9yYQogCiAlY2hhbmdlbG9nCisqIFdlZCBBcHIgMjkgMjAyNiBE bWl0cnkgQmVseWF2c2tpeSA8YmVsZG1pdEBnbWFpbC5jb20+IC0gMi4xLjMtNAorLSBGaXggYnVp bGQgd2l0aCBPcGVuU1NMIDQuMCAob3BhcXVlIEFTTjFfU1RSSU5HLCBjb25zdCBYNTA5LCByZW1v dmVkIEVSUl9TVEFURSkKKwogKiBUdWUgSmFuIDIwIDIwMjYgTWF0dGlhcyBFbGxlcnQgPG1hdHRp YXMuZWxsZXJ0QHBoeXNpY3MudXUuc2U+IC0gMi4xLjMtMwogLSBSZWJ1aWxkIGZvciBnc29hcCAy LjguMTM5IChGZWRvcmEgNDQpCiAK