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: =?utf-8?b?UGF2b2wgxb3DocSNaWsgPHB6YWNpa0ByZWRoYXQuY29tPg==?= To: git-commits@fedoraproject.org Subject: [rpms/openssl] f44: Don't raise NOT_ENOUGH_DATA on a clean EOF at an object boundary Date: Fri, 17 Jul 2026 19:00:22 GMT Message-ID: <178431482252.1.10096950267027033349.rpms-openssl-ce056bdf34d8@fedoraproject.org> List-ID: X-Git-Repo: rpms/openssl X-Git-Branch: f44 X-Git-Rev: ce056bdf34d83a099edae3a972e9f5a45f92e709 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvb3BlbnNzbAogICAgICAgICAgICBCcmFuY2ggOiBmNDQKICAgICAgICAgICAg Q29tbWl0IDogY2UwNTZiZGYzNGQ4M2EwOTllZGFlM2E5NzJlOWY1YTQ1ZjkyZTcwOQogICAgICAg ICAgICBBdXRob3IgOiBQYXZvbCDFvcOhxI1payA8cHphY2lrQHJlZGhhdC5jb20+CiAgICAgICAg ICAgIERhdGUgICA6IDIwMjYtMDctMTdUMTg6MjE6MjkrMDI6MDAKICAgICAgICAgICAgU3RhdHMg IDogKzMxOS8tMSBpbiAyIGZpbGUocykKICAgICAgICAgICAgVVJMICAgIDogaHR0cHM6Ly9zcmMu ZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9vcGVuc3NsL2MvY2UwNTZiZGYzNGQ4M2EwOTllZGFlM2E5 NzJlOWY1YTQ1ZjkyZTcwOT9icmFuY2g9ZjQ0CgogICAgICAgICAgICBMb2c6CiAgICAgICAgICAg IERvbid0IHJhaXNlIE5PVF9FTk9VR0hfREFUQSBvbiBhIGNsZWFuIEVPRiBhdCBhbiBvYmplY3Qg Ym91bmRhcnkKCihCYWNrcG9ydCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuc3NsL29wZW5z c2wvY29tbWl0LzM2ODdmZjcpCgotLS0KZGlmZiAtLWdpdCBhLzAwNTgtRG9uLXQtcmFpc2UtTk9U X0VOT1VHSF9EQVRBLWF0LW9iamVjdC1ib3VuZGFyeS5wYXRjaCBiLzAwNTgtRG9uLXQtcmFpc2Ut Tk9UX0VOT1VHSF9EQVRBLWF0LW9iamVjdC1ib3VuZGFyeS5wYXRjaApuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwLi5iNDc1YzBjCi0tLSAvZGV2L251bGwKKysrIGIvMDA1OC1Eb24t dC1yYWlzZS1OT1RfRU5PVUdIX0RBVEEtYXQtb2JqZWN0LWJvdW5kYXJ5LnBhdGNoCkBAIC0wLDAg KzEsMzEzIEBACitGcm9tIDM2ODdmZjcxOTUwM2ZmYzZkMjljOTdkNzdlMDAxOTkyNTE4OTA3NzQg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBNYXJjIEd1dG1hbiA8bWFyY2dAYWN0aXZl c3RhdGUuY29tPgorRGF0ZTogVGh1LCA5IEp1bCAyMDI2IDE1OjIzOjI4IC0wNTAwCitTdWJqZWN0 OiBbUEFUQ0hdIERvbid0IHJhaXNlIE5PVF9FTk9VR0hfREFUQSBvbiBhIGNsZWFuIEVPRiBhdCBh biBvYmplY3QKKyBib3VuZGFyeQorCithc24xX2QyaV9yZWFkX2JpbygpIHJlYWRzIG9uZSBBU04u MSBvYmplY3QgYXQgYSB0aW1lIGZyb20gYSBCSU8uICBDYWxsZXJzCitjb21tb25seSBsb29wLCBk ZWNvZGluZyBjb25jYXRlbmF0ZWQgREVSIHZhbHVlcyB1bnRpbCB0aGUgY2FsbCBmYWlscywgYW5k CityZWx5IG9uIGEgZmFpbHVyZSB3aXRoIG5vIHF1ZXVlZCBlcnJvciB0byByZWNvZ25pc2UgYSBj bGVhbiBlbmQgb2YgaW5wdXQuCitDUHl0aG9uJ3Mgc3NsIG1vZHVsZSBkb2VzIHRoaXMgaW4gX2Fk ZF9jYV9jZXJ0cygpIHdoZW4gbG9hZGluZyB0aGUgV2luZG93cworY2VydGlmaWNhdGUgc3RvcmUg dmlhIFNTTENvbnRleHQubG9hZF92ZXJpZnlfbG9jYXRpb25zKGNhZGF0YT0uLi4pOyBpdAorcmUt cmFpc2VzIGFueSBsZWZ0b3ZlciBBU04uMSBlcnJvciBvdGhlciB0aGFuIEFTTjFfUl9IRUFERVJf VE9PX0xPTkcgYXMKK2ZhdGFsLgorCitDb21taXQgOWViNjkyMmM1OSAoImFzbjE6IHJhaXNlIE5P VF9FTk9VR0hfREFUQSBvbiBoZWFkZXIgRU9GIikgY2hhbmdlZCB0aGUKK0JJT19yZWFkKCkgY2hl Y2sgZnJvbSAiaSA8IDAiIHRvICJpIDw9IDAiLCBzbyBhIGNsZWFuIEVPRiAoQklPX3JlYWQoKQor cmV0dXJuaW5nIDAsIGFzIGFuIGV4aGF1c3RlZCBCSU9fbmV3X21lbV9idWYgZG9lcykgb24gYW4g b2JqZWN0IGJvdW5kYXJ5IG5vdworcmFpc2VzIEFTTjFfUl9OT1RfRU5PVUdIX0RBVEEgaW5zdGVh ZCBvZiBmYWlsaW5nIHdpdGggYW4gZW1wdHkgZXJyb3IgcXVldWUuCitUaGUgcmV3cml0ZSBpbiBj b21taXQgMzU4NTJkYTFkOSBjYXJyaWVkIHRoaXMgYmVoYXZpb3VyIGZvcndhcmQuICBBcyBhCity ZXN1bHQgUHl0aG9uIDMgb24gV2luZG93cyBmYWlscyB0byBpbml0aWFsaXNlIGFuIFNTTENvbnRl eHQgd2l0aDoKKworICAgIHNzbC5TU0xFcnJvcjogW0FTTjE6IE5PVF9FTk9VR0hfREFUQV0gbm90 IGVub3VnaCBkYXRhCisKK1JhaXNlIEFTTjFfUl9OT1RfRU5PVUdIX0RBVEEgb25seSBvbiBhbiBh Y3R1YWwgcmVhZCBlcnJvciwgb24gYW4gRU9GIGluIHRoZQorbWlkZGxlIG9mIGFuIG9iamVjdCAo c29tZSBieXRlcyBhbHJlYWR5IGJ1ZmZlcmVkKSwgb3Igb24gYW4gRU9GIHdoaWxlIHN0aWxsCitp bnNpZGUgYW4gaW5kZWZpbml0ZS1sZW5ndGggdmFsdWUgYXdhaXRpbmcgaXRzIGVuZC1vZi1jb250 ZW50cyBvY3RldHMgLSBhbGwKK29mIHdoaWNoIGFyZSBnZW51aW5lIHRydW5jYXRpb24uICBBIGNs ZWFuIEVPRiBhdCBhIHRvcC1sZXZlbCBvYmplY3QgYm91bmRhcnkKK2FnYWluIGZhaWxzIHdpdGhv dXQgcXVldWluZyBhbiBlcnJvciwgcmVzdG9yaW5nIHRoZSBsb25nLXN0YW5kaW5nIGJlaGF2aW91 cgordGhhdCBsb29waW5nIGNhbGxlcnMgZGVwZW5kIG9uLgorCitBZGQgcmVncmVzc2lvbiB0ZXN0 cyBjb3ZlcmluZyB0aGUgY2xlYW4tRU9GLCB0cnVuY2F0ZWQsIGluZGVmaW5pdGUtbGVuZ3RoCit0 cnVuY2F0aW9uIGFuZCBwYXJ0aWFsLWhlYWRlciBjYXNlcywgYW5kIGRvY3VtZW50IHRoZSByZWFk IGJlaGF2aW91ciBpbgorQVNOMV9pdGVtX2QyaV9iaW8oMykuCisKK0ZpeGVzICMzMTgwNworCitB c3Npc3RlZC1ieTogQ2xhdWRlOmNsYXVkZS1vcHVzLTQtOAorCitSZXZpZXdlZC1ieTogRG1pdHJ5 IEJlbHlhdnNraXkgPGJlbGRtaXRAZ21haWwuY29tPgorUmV2aWV3ZWQtYnk6IElnb3IgVXN0aW5v diA8aWd1c0BvcGVuc3NsLmZvdW5kYXRpb24+CitSZXZpZXdlZC1ieTogVG9tYXMgTXJheiA8dG9t YXNAb3BlbnNzbC5mb3VuZGF0aW9uPgorTWVyZ2VEYXRlOiBNb24gSnVsIDEzIDA4OjA1OjAzIDIw MjYKKyhNZXJnZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vb3BlbnNzbC9vcGVuc3NsL3B1bGwv MzE4MTgpCisKKyhjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IGQ3ZTc3YjY2Y2FiYjc3MDkzMjA5 MWVkNTk4NjIyMWUwZDFlNTcxNDQpCistLS0KKyBjcnlwdG8vYXNuMS9hX2QyaV9mcC5jICAgICAg ICAgfCAgMTUgKystCisgZG9jL21hbjMvQVNOMV9pdGVtX2QyaV9iaW8ucG9kIHwgIDE4ICsrKy0K KyB0ZXN0L2FzbjFfZGVjb2RlX3Rlc3QuYyAgICAgICAgfCAxNjUgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrCisgMyBmaWxlcyBjaGFuZ2VkLCAxOTYgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2NyeXB0by9hc24xL2FfZDJpX2ZwLmMgYi9jcnlw dG8vYXNuMS9hX2QyaV9mcC5jCitpbmRleCBhMjNkZWE4ZWJkLi4xOTU5NTY4M2VmIDEwMDY0NAor LS0tIGEvY3J5cHRvL2FzbjEvYV9kMmlfZnAuYworKysrIGIvY3J5cHRvL2FzbjEvYV9kMmlfZnAu YworQEAgLTEzOSw3ICsxMzksMjAgQEAgaW50IGFzbjFfZDJpX3JlYWRfYmlvKEJJTyAqaW4sIEJV Rl9NRU0gKipwYikKKyAgICAgICAgICAgICB9CisgICAgICAgICAgICAgaSA9IEJJT19yZWFkKGlu LCAmKGItPmRhdGFbbGVuXSksIHdhbnQpOworICAgICAgICAgICAgIGlmIChpIDw9IDApIHsKKy0g ICAgICAgICAgICAgICAgRVJSX3JhaXNlKEVSUl9MSUJfQVNOMSwgQVNOMV9SX05PVF9FTk9VR0hf REFUQSk7CisrICAgICAgICAgICAgICAgIC8qCisrICAgICAgICAgICAgICAgICAqIEEgcmVhZCBl cnJvciAoaSA8IDApLCBhbiBFT0YgaW4gdGhlIG1pZGRsZSBvZiBhbiBvYmplY3QKKysgICAgICAg ICAgICAgICAgICogKGRpZmYgIT0gMCwgc29tZSBieXRlcyBhbHJlYWR5IGJ1ZmZlcmVkKSwgb3Ig YW4gRU9GIHdoaWxlCisrICAgICAgICAgICAgICAgICAqIHN0aWxsIGluc2lkZSBhbiBpbmRlZmlu aXRlLWxlbmd0aCBjb25zdHJ1Y3RlZCB2YWx1ZSBhd2FpdGluZworKyAgICAgICAgICAgICAgICAg KiBpdHMgZW5kLW9mLWNvbnRlbnRzIG9jdGV0cyAoZW9zICE9IDApIGFsbCBtZWFuIHRoZSBpbnB1 dCBpcworKyAgICAgICAgICAgICAgICAgKiB0cnVuY2F0ZWQuICBPbmx5IGEgY2xlYW4gRU9GIGF0 IGEgdG9wLWxldmVsIG9iamVjdCBib3VuZGFyeQorKyAgICAgICAgICAgICAgICAgKiAoaSA9PSAw LCBkaWZmID09IDAsIGVvcyA9PSAwKSBpcyB0aGUgbm9ybWFsIGVuZCBvZiBpbnB1dDoKKysgICAg ICAgICAgICAgICAgICogZmFpbCB3aXRob3V0IHF1ZXVpbmcgYW4gZXJyb3Igc28gdGhhdCBjYWxs ZXJzIGxvb3Bpbmcgb3ZlcgorKyAgICAgICAgICAgICAgICAgKiBjb25jYXRlbmF0ZWQgREVSIHZh bHVlcyAoZS5nLiB0aGUgbGliY3J5cHRvIGQyaV8qX2JpbygpCisrICAgICAgICAgICAgICAgICAq IGNvbnN1bWVycyBpbiBDUHl0aG9uJ3Mgc3NsIG1vZHVsZSkgdGVybWluYXRlIGNsZWFubHkgaW5z dGVhZAorKyAgICAgICAgICAgICAgICAgKiBvZiBzZWVpbmcgYSBzcHVyaW91cyBBU04xX1JfTk9U X0VOT1VHSF9EQVRBLgorKyAgICAgICAgICAgICAgICAgKi8KKysgICAgICAgICAgICAgICAgaWYg KGkgPCAwIHx8IGRpZmYgIT0gMCB8fCBlb3MgIT0gMCkKKysgICAgICAgICAgICAgICAgICAgIEVS Ul9yYWlzZShFUlJfTElCX0FTTjEsIEFTTjFfUl9OT1RfRU5PVUdIX0RBVEEpOworICAgICAgICAg ICAgICAgICBnb3RvIGVycjsKKyAgICAgICAgICAgICB9CisgICAgICAgICAgICAgaWYgKGkgPiAw KSB7CitkaWZmIC0tZ2l0IGEvZG9jL21hbjMvQVNOMV9pdGVtX2QyaV9iaW8ucG9kIGIvZG9jL21h bjMvQVNOMV9pdGVtX2QyaV9iaW8ucG9kCitpbmRleCBmOGU0Njc4MzY3Li45YjNmMzg5YTIzIDEw MDY0NAorLS0tIGEvZG9jL21hbjMvQVNOMV9pdGVtX2QyaV9iaW8ucG9kCisrKysgYi9kb2MvbWFu My9BU04xX2l0ZW1fZDJpX2Jpby5wb2QKK0BAIC01OSw2ICs1OSwxNiBAQCBCPE9TU0xfTElCX0NU WD4gcHJvdmlkZWQgaW4gdGhlIEk8bGliY3R4PiBwYXJhbWV0ZXIgYW5kIHRoZSBwcm9wZXJ0eSBx dWVyeQorIHN0cmluZyBpbiBJPHByb3BxPi4gU2VlIEw8Y3J5cHRvKDcpL0FMR09SSVRITSBGRVRD SElORz4gZm9yIG1vcmUgaW5mb3JtYXRpb24KKyBhYm91dCBhbGdvcml0aG0gZmV0Y2hpbmcuCisg CisrV2hlbiByZWFkaW5nIGZyb20gSTxpbj4sIGRlY29kaW5nIGNvbnN1bWVzIG9uZSBjb21wbGV0 ZSBERVItZW5jb2RlZCBzdHJ1Y3R1cmUKKythbmQgbGVhdmVzIGFueSBmb2xsb3dpbmcgYnl0ZXMg aW4gdGhlIEJJTywgc28gY29uY2F0ZW5hdGVkIHN0cnVjdHVyZXMgY2FuIGJlCisrcmVhZCB3aXRo IHN1Y2Nlc3NpdmUgY2FsbHMuIFJlYWNoaW5nIHRoZSBlbmQgb2YgdGhlIGlucHV0IGNsZWFubHks IGF0IGEKKytzdHJ1Y3R1cmUgYm91bmRhcnksIGlzIG5vdCB0cmVhdGVkIGFzIGFuIGVycm9yOiB0 aGUgZnVuY3Rpb24gcmV0dXJucyBOVUxMCisrd2l0aG91dCBhZGRpbmcgdG8gdGhlIGVycm9yIHF1 ZXVlLiBJZiB0aGUgZW5kIG9mIHRoZSBpbnB1dCBpcyByZWFjaGVkIGluIHRoZQorK21pZGRsZSBv ZiBhIHN0cnVjdHVyZSwgb3IgYW4gaW5kZWZpbml0ZS1sZW5ndGggdmFsdWUgaXMgbWlzc2luZyBp dHMKKytlbmQtb2YtY29udGVudHMgb2N0ZXRzICh0aGF0IGlzLCB0aGUgaW5wdXQgaXMgdHJ1bmNh dGVkKSwgYW4gZXJyb3IgaXMgcXVldWVkCisrd2l0aCByZWFzb24gY29kZSBCPEFTTjFfUl9OT1Rf RU5PVUdIX0RBVEE+LiBUaGUgc2FtZSBhcHBsaWVzIHRvCisrQVNOMV9pdGVtX2QyaV9mcF9leCgp LgorKworIEFTTjFfaXRlbV9kMmlfYmlvKCkgaXMgdGhlIHNhbWUgYXMgQVNOMV9pdGVtX2QyaV9i aW9fZXgoKSBleGNlcHQgdGhhdCB0aGUKKyBkZWZhdWx0IEI8T1NTTF9MSUJfQ1RYPiBpcyB1c2Vk IChpLmUuIE5VTEwpIGFuZCB3aXRoIGEgTlVMTCBwcm9wZXJ0eSBxdWVyeQorIHN0cmluZy4KK0BA IC05Miw2ICsxMDIsMTIgQEAgdGhhdCB0aGUgSTxsaWJjdHg+IGFuZCBJPHByb3BxPiBjYW4gYmUg dXNlZCB3aGVuIGRvaW5nIGFsZ29yaXRobSBmZXRjaGluZy4KKyBBU04xX2l0ZW1fZDJpX2Jpbygp LCBBU04xX2l0ZW1fdW5wYWNrX2V4KCkgYW5kIEFTTjFfaXRlbV91bnBhY2soKSByZXR1cm4gYSBw b2ludGVyIHRvCisgYW4gQjxBU04xX1ZBTFVFPiBvciBOVUxMIG9uIGVycm9yLgorIAorK1RoZSBB U04xX2l0ZW1fZDJpX2JpbygpIGFuZCBBU04xX2l0ZW1fZDJpX2ZwKCkgZnVuY3Rpb25zLCBpbmNs dWRpbmcgdGhlaXIKKytCPF9leD4gdmFyaWFudHMsIGFsc28gcmV0dXJuIE5VTEwgYXQgYSBjbGVh biBlbmQgb2YgaW5wdXQuIEluIHRoYXQgY2FzZSB0aGUKKytlcnJvciBxdWV1ZSBpcyBsZWZ0IHVu Y2hhbmdlZCwgc28gYSBjYWxsZXIgcmVhZGluZyBjb25jYXRlbmF0ZWQgc3RydWN0dXJlcyBpbgor K2EgbG9vcCBjYW4gZGlzdGluZ3Vpc2ggYSBjbGVhbiBlbmQgb2YgaW5wdXQgZnJvbSBhIGRlY29k aW5nIGVycm9yIGJ5CisraW5zcGVjdGluZyB0aGUgZXJyb3IgcXVldWUsIGZvciBleGFtcGxlIHdp dGggTDxFUlJfcGVla19lcnJvcigzKT4uCisrCisgQVNOMV9pdGVtX2kyZF9tZW1fYmlvKCkgcmV0 dXJucyBhIHBvaW50ZXIgdG8gYSBtZW1vcnkgQklPIG9yIE5VTEwgb24gZXJyb3IuCisgCisgQVNO MV9pdGVtX3BhY2soKSByZXR1cm5zIGEgcG9pbnRlciB0byBhbiBCPEFTTjFfU1RSSU5HPiBvciBO VUxMIG9uIGVycm9yLgorQEAgLTEwNSw3ICsxMjEsNyBAQCBUaGUgZnVuY3Rpb24gQVNOMV9pdGVt X3VucGFja19leCgpIHdhcyBhZGRlZCBpbiBPcGVuU1NMIDMuMi4KKyAKKyA9aGVhZDEgQ09QWVJJ R0hUCisgCistQ29weXJpZ2h0IDIwMjEtMjAyMyBUaGUgT3BlblNTTCBQcm9qZWN0IEF1dGhvcnMu IEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisrQ29weXJpZ2h0IDIwMjEtMjAyNiBUaGUgT3BlblNTTCBQ cm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgCisgTGljZW5zZWQgdW5kZXIg dGhlIEFwYWNoZSBMaWNlbnNlIDIuMCAodGhlICJMaWNlbnNlIikuICBZb3UgbWF5IG5vdCB1c2UK KyB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gIFlvdSBj YW4gb2J0YWluIGEgY29weQorZGlmZiAtLWdpdCBhL3Rlc3QvYXNuMV9kZWNvZGVfdGVzdC5jIGIv dGVzdC9hc24xX2RlY29kZV90ZXN0LmMKK2luZGV4IDZlMDBkNDA4OTYuLjhhOTYyOWMyMWQgMTAw NjQ0CistLS0gYS90ZXN0L2FzbjFfZGVjb2RlX3Rlc3QuYworKysrIGIvdGVzdC9hc24xX2RlY29k ZV90ZXN0LmMKK0BAIC0xNCw3ICsxNCwxMSBAQAorICNpbmNsdWRlIDxvcGVuc3NsL2FzbjEuaD4K KyAjaW5jbHVkZSA8b3BlbnNzbC9hc24xdC5oPgorICNpbmNsdWRlIDxvcGVuc3NsL29ial9tYWMu aD4KKysjaW5jbHVkZSA8b3BlbnNzbC9iaW8uaD4KKysjaW5jbHVkZSA8b3BlbnNzbC9idWZmZXIu aD4KKysjaW5jbHVkZSA8b3BlbnNzbC9lcnIuaD4KKyAjaW5jbHVkZSAiaW50ZXJuYWwvbnVtYmVy cy5oIgorKyNpbmNsdWRlICJpbnRlcm5hbC9hc24xLmgiCisgI2luY2x1ZGUgInRlc3R1dGlsLmgi CisgCisgI2lmZGVmIF9fR05VQ19fCitAQCAtMjY2LDYgKzI3MCwxNjMgQEAgZXJyOgorICAgICBy ZXR1cm4gcmV0OworIH0KKyAKKysvKgorKyAqIEEgbWluaW1hbCwgY29tcGxldGUgREVSIG9iamVj dDogU0VRVUVOQ0UgeyBJTlRFR0VSIDAgfS4KKysgKiBhc24xX2QyaV9yZWFkX2JpbygpIHNob3Vs ZCBjb25zdW1lIGV4YWN0bHkgdGhlc2UgYnl0ZXMuCisrICovCisrc3RhdGljIGNvbnN0IHVuc2ln bmVkIGNoYXIgb25lX29ialtdID0geworKyAgICAweDMwLCAweDAzLCAvKiBTRVFVRU5DRSwgbGVu Z3RoIDMgKi8KKysgICAgMHgwMiwgMHgwMSwgMHgwMCAvKiAgIElOVEVHRVIgMCAgICAgICAgKi8K Kyt9OworKworKy8qCisrICogUmVhZGluZyBjb25jYXRlbmF0ZWQgREVSIG9iamVjdHMgZnJvbSBh IEJJTyBtdXN0IHN0b3AgY2xlYW5seSBhdCBFT0Y6CisrICogb25jZSB0aGUgaW5wdXQgaXMgZXho YXVzdGVkIG9uIGFuIG9iamVjdCBib3VuZGFyeSwgYXNuMV9kMmlfcmVhZF9iaW8oKQorKyAqIHJl dHVybnMgPCAwIGFuZCBtdXN0IE5PVCBsZWF2ZSBhbiBlcnJvciBvbiB0aGUgcXVldWUuICBDYWxs ZXJzIHRoYXQgbG9vcAorKyAqIG92ZXIgY29uY2F0ZW5hdGVkIHZhbHVlcyAoZS5nLiBDUHl0aG9u J3Mgc3NsIG1vZHVsZSBsb2FkaW5nIHRoZSBXaW5kb3dzCisrICogY2VydGlmaWNhdGUgc3RvcmUg dmlhIGQyaV9YNTA5X2JpbygpKSByZWx5IG9uIHRoaXMgdG8gZGV0ZWN0IGVuZC1vZi1pbnB1dDsK KysgKiBhIHNwdXJpb3VzIEFTTjFfUl9OT1RfRU5PVUdIX0RBVEEgdGhlcmUgaXMgcmVwb3J0ZWQg YXMgYSBmYXRhbCBlcnJvci4KKysgKi8KKytzdGF0aWMgaW50IHRlc3RfZDJpX3JlYWRfYmlvX2Ns ZWFuX2VvZih2b2lkKQorK3sKKysgICAgdW5zaWduZWQgY2hhciB0d29fb2Jqc1tzaXplb2Yob25l X29iaikgKiAyXTsKKysgICAgQklPICpiaW8gPSBOVUxMOworKyAgICBCVUZfTUVNICpidWYgPSBO VUxMOworKyAgICBpbnQgcmV0ID0gMDsKKysKKysgICAgbWVtY3B5KHR3b19vYmpzLCBvbmVfb2Jq LCBzaXplb2Yob25lX29iaikpOworKyAgICBtZW1jcHkodHdvX29ianMgKyBzaXplb2Yob25lX29i aiksIG9uZV9vYmosIHNpemVvZihvbmVfb2JqKSk7CisrCisrICAgIGlmICghVEVTVF9wdHIoYmlv ID0gQklPX25ld19tZW1fYnVmKHR3b19vYmpzLCBzaXplb2YodHdvX29ianMpKSkpCisrICAgICAg ICBnb3RvIGVycjsKKysgICAgRVJSX2NsZWFyX2Vycm9yKCk7CisrCisrICAgIC8qIEJvdGggY29t cGxldGUgb2JqZWN0cyBhcmUgcmVhZCwgb25lIHBlciBjYWxsLiAqLworKyAgICBpZiAoIVRFU1Rf aW50X2VxKGFzbjFfZDJpX3JlYWRfYmlvKGJpbywgJmJ1ZiksIChpbnQpc2l6ZW9mKG9uZV9vYmop KSkKKysgICAgICAgIGdvdG8gZXJyOworKyAgICBCVUZfTUVNX2ZyZWUoYnVmKTsKKysgICAgYnVm ID0gTlVMTDsKKysgICAgaWYgKCFURVNUX2ludF9lcShhc24xX2QyaV9yZWFkX2JpbyhiaW8sICZi dWYpLCAoaW50KXNpemVvZihvbmVfb2JqKSkpCisrICAgICAgICBnb3RvIGVycjsKKysgICAgQlVG X01FTV9mcmVlKGJ1Zik7CisrICAgIGJ1ZiA9IE5VTEw7CisrCisrICAgIC8qIENsZWFuIEVPRjog ZmFpbHVyZSByZXR1cm4sIGJ1dCBubyBlcnJvciBtdXN0IGJlIHF1ZXVlZC4gKi8KKysgICAgaWYg KCFURVNUX2ludF9sdChhc24xX2QyaV9yZWFkX2JpbyhiaW8sICZidWYpLCAwKSkKKysgICAgICAg IGdvdG8gZXJyOworKyAgICBpZiAoIVRFU1RfdWxvbmdfZXEoRVJSX3BlZWtfZXJyb3IoKSwgMCkp CisrICAgICAgICBnb3RvIGVycjsKKysKKysgICAgcmV0ID0gMTsKKytlcnI6CisrICAgIEJVRl9N RU1fZnJlZShidWYpOworKyAgICBCSU9fZnJlZShiaW8pOworKyAgICByZXR1cm4gcmV0OworK30K KysKKysvKgorKyAqIEluIGNvbnRyYXN0LCBoaXR0aW5nIEVPRiBpbiB0aGUgbWlkZGxlIG9mIGFu IG9iamVjdCBpcyBnZW51aW5lIHRydW5jYXRpb24KKysgKiBhbmQgbXVzdCBzdGlsbCBiZSByZXBv cnRlZCBhcyBBU04xX1JfTk9UX0VOT1VHSF9EQVRBLgorKyAqLworK3N0YXRpYyBpbnQgdGVzdF9k MmlfcmVhZF9iaW9fdHJ1bmNhdGVkKHZvaWQpCisreworKyAgICBzdGF0aWMgY29uc3QgdW5zaWdu ZWQgY2hhciB0cnVuY2F0ZWRbXSA9IHsKKysgICAgICAgIDB4MzAsIDB4MDUsIC8qIFNFUVVFTkNF IGNsYWltcyA1IGNvbnRlbnQgYnl0ZXMgLi4uICovCisrICAgICAgICAweDAyLCAweDAxIC8qIC4u LiBidXQgb25seSAyIGFyZSBwcmVzZW50ICAgICAgICAgKi8KKysgICAgfTsKKysgICAgQklPICpi aW8gPSBOVUxMOworKyAgICBCVUZfTUVNICpidWYgPSBOVUxMOworKyAgICB1bnNpZ25lZCBsb25n IGU7CisrICAgIGludCByZXQgPSAwOworKworKyAgICBpZiAoIVRFU1RfcHRyKGJpbyA9IEJJT19u ZXdfbWVtX2J1Zih0cnVuY2F0ZWQsIHNpemVvZih0cnVuY2F0ZWQpKSkpCisrICAgICAgICBnb3Rv IGVycjsKKysgICAgRVJSX2NsZWFyX2Vycm9yKCk7CisrCisrICAgIGlmICghVEVTVF9pbnRfbHQo YXNuMV9kMmlfcmVhZF9iaW8oYmlvLCAmYnVmKSwgMCkpCisrICAgICAgICBnb3RvIGVycjsKKysg ICAgZSA9IEVSUl9wZWVrX2xhc3RfZXJyb3IoKTsKKysgICAgaWYgKCFURVNUX2ludF9lcShFUlJf R0VUX0xJQihlKSwgRVJSX0xJQl9BU04xKQorKyAgICAgICAgfHwgIVRFU1RfaW50X2VxKEVSUl9H RVRfUkVBU09OKGUpLCBBU04xX1JfTk9UX0VOT1VHSF9EQVRBKSkKKysgICAgICAgIGdvdG8gZXJy OworKworKyAgICByZXQgPSAxOworK2VycjoKKysgICAgQlVGX01FTV9mcmVlKGJ1Zik7CisrICAg IEJJT19mcmVlKGJpbyk7CisrICAgIHJldHVybiByZXQ7CisrfQorKworKy8qCisrICogQW4gRU9G IHJlYWNoZWQgd2hpbGUgc3RpbGwgaW5zaWRlIGFuIGluZGVmaW5pdGUtbGVuZ3RoIGNvbnN0cnVj dGVkIHZhbHVlLAorKyAqIGJlZm9yZSBpdHMgZW5kLW9mLWNvbnRlbnRzIG9jdGV0cywgaXMgdHJ1 bmNhdGlvbiB0b28gKG5vdCBhIGNsZWFuIGJvdW5kYXJ5KSwKKysgKiBzbyBpdCBtdXN0IGFsc28g cmVwb3J0IEFTTjFfUl9OT1RfRU5PVUdIX0RBVEEgcmF0aGVyIHRoYW4gYW4gZW1wdHkgcXVldWUu CisrICovCisrc3RhdGljIGludCB0ZXN0X2QyaV9yZWFkX2Jpb19pbmRlZmluaXRlX3RydW5jYXRl ZCh2b2lkKQorK3sKKysgICAgLyogU0VRVUVOQ0UgKGluZGVmaW5pdGUpIHsgSU5URUdFUiAwIH0g d2l0aCB0aGUgMDAgMDAgRU9DIG1pc3NpbmcgKi8KKysgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgdHJ1bmNhdGVkX2luZGVmaW5pdGVbXSA9IHsKKysgICAgICAgIDB4MzAsIDB4ODAsIC8q IFNFUVVFTkNFLCBpbmRlZmluaXRlIGxlbmd0aCAqLworKyAgICAgICAgMHgwMiwgMHgwMSwgMHgw MCAvKiBJTlRFR0VSIDA7IG5vIGVuZC1vZi1jb250ZW50cyBvY3RldHMgZm9sbG93ICovCisrICAg IH07CisrICAgIEJJTyAqYmlvID0gTlVMTDsKKysgICAgQlVGX01FTSAqYnVmID0gTlVMTDsKKysg ICAgdW5zaWduZWQgbG9uZyBlOworKyAgICBpbnQgcmV0ID0gMDsKKysKKysgICAgYmlvID0gQklP X25ld19tZW1fYnVmKHRydW5jYXRlZF9pbmRlZmluaXRlLCBzaXplb2YodHJ1bmNhdGVkX2luZGVm aW5pdGUpKTsKKysgICAgaWYgKCFURVNUX3B0cihiaW8pKQorKyAgICAgICAgZ290byBlcnI7Cisr ICAgIEVSUl9jbGVhcl9lcnJvcigpOworKworKyAgICBpZiAoIVRFU1RfaW50X2x0KGFzbjFfZDJp X3JlYWRfYmlvKGJpbywgJmJ1ZiksIDApKQorKyAgICAgICAgZ290byBlcnI7CisrICAgIGUgPSBF UlJfcGVla19sYXN0X2Vycm9yKCk7CisrICAgIGlmICghVEVTVF9pbnRfZXEoRVJSX0dFVF9MSUIo ZSksIEVSUl9MSUJfQVNOMSkKKysgICAgICAgIHx8ICFURVNUX2ludF9lcShFUlJfR0VUX1JFQVNP TihlKSwgQVNOMV9SX05PVF9FTk9VR0hfREFUQSkpCisrICAgICAgICBnb3RvIGVycjsKKysKKysg ICAgcmV0ID0gMTsKKytlcnI6CisrICAgIEJVRl9NRU1fZnJlZShidWYpOworKyAgICBCSU9fZnJl ZShiaW8pOworKyAgICByZXR1cm4gcmV0OworK30KKysKKysvKgorKyAqIEFuIEVPRiByZWFjaGVk IHBhcnQtd2F5IHRocm91Z2ggYW4gb2JqZWN0J3MgaGVhZGVyLCB3aXRoIHNvbWUgaGVhZGVyIGJ5 dGVzCisrICogYWxyZWFkeSBidWZmZXJlZCwgaXMgdHJ1bmNhdGlvbiBhcyB3ZWxsLiAgVGhpcyBl eGVyY2lzZXMgdGhlICJkaWZmICE9IDAiIGFybQorKyAqIG9mIHRoZSBoZWFkZXItcmVhZCBjaGVj ayAoZGlzdGluY3QgZnJvbSB0aGUgYm9keSByZWFkIGhhbmRsZWQgZWxzZXdoZXJlKS4KKysgKi8K KytzdGF0aWMgaW50IHRlc3RfZDJpX3JlYWRfYmlvX3BhcnRpYWxfaGVhZGVyKHZvaWQpCisrewor KyAgICAvKiBTRVFVRU5DRSB3aXRoIGEgMi1ieXRlIGxvbmctZm9ybSBsZW5ndGgsIGJ1dCBvbmx5 IG9uZSBsZW5ndGggYnl0ZSBnaXZlbiAqLworKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hh ciBwYXJ0aWFsX2hlYWRlcltdID0geworKyAgICAgICAgMHgzMCwgMHg4MiwgMHgwMSAvKiBTRVFV RU5DRSwgbGVuZ3RoIGRlY2xhcmVkIGFzIDIgYnl0ZXMsIDEgcHJlc2VudCAqLworKyAgICB9Owor KyAgICBCSU8gKmJpbyA9IE5VTEw7CisrICAgIEJVRl9NRU0gKmJ1ZiA9IE5VTEw7CisrICAgIHVu c2lnbmVkIGxvbmcgZTsKKysgICAgaW50IHJldCA9IDA7CisrCisrICAgIGlmICghVEVTVF9wdHIo YmlvID0gQklPX25ld19tZW1fYnVmKHBhcnRpYWxfaGVhZGVyLCBzaXplb2YocGFydGlhbF9oZWFk ZXIpKSkpCisrICAgICAgICBnb3RvIGVycjsKKysgICAgRVJSX2NsZWFyX2Vycm9yKCk7CisrCisr ICAgIGlmICghVEVTVF9pbnRfbHQoYXNuMV9kMmlfcmVhZF9iaW8oYmlvLCAmYnVmKSwgMCkpCisr ICAgICAgICBnb3RvIGVycjsKKysgICAgZSA9IEVSUl9wZWVrX2xhc3RfZXJyb3IoKTsKKysgICAg aWYgKCFURVNUX2ludF9lcShFUlJfR0VUX0xJQihlKSwgRVJSX0xJQl9BU04xKQorKyAgICAgICAg fHwgIVRFU1RfaW50X2VxKEVSUl9HRVRfUkVBU09OKGUpLCBBU04xX1JfTk9UX0VOT1VHSF9EQVRB KSkKKysgICAgICAgIGdvdG8gZXJyOworKworKyAgICByZXQgPSAxOworK2VycjoKKysgICAgQlVG X01FTV9mcmVlKGJ1Zik7CisrICAgIEJJT19mcmVlKGJpbyk7CisrICAgIHJldHVybiByZXQ7Cisr fQorKworIGludCBzZXR1cF90ZXN0cyh2b2lkKQorIHsKKyAjaWZuZGVmIE9QRU5TU0xfTk9fREVQ UkVDQVRFRF8zXzAKK0BAIC0yNzksNSArNDQwLDkgQEAgaW50IHNldHVwX3Rlc3RzKHZvaWQpCisg ICAgIEFERF9URVNUKHRlc3RfdXRjdGltZSk7CisgICAgIEFERF9URVNUKHRlc3RfaW52YWxpZF90 ZW1wbGF0ZSk7CisgICAgIEFERF9URVNUKHRlc3RfcmV1c2VfYXNuMV9vYmplY3QpOworKyAgICBB RERfVEVTVCh0ZXN0X2QyaV9yZWFkX2Jpb19jbGVhbl9lb2YpOworKyAgICBBRERfVEVTVCh0ZXN0 X2QyaV9yZWFkX2Jpb190cnVuY2F0ZWQpOworKyAgICBBRERfVEVTVCh0ZXN0X2QyaV9yZWFkX2Jp b19pbmRlZmluaXRlX3RydW5jYXRlZCk7CisrICAgIEFERF9URVNUKHRlc3RfZDJpX3JlYWRfYmlv X3BhcnRpYWxfaGVhZGVyKTsKKyAgICAgcmV0dXJuIDE7CisgfQorLS0gCisyLjU0LjAKKwoKZGlm ZiAtLWdpdCBhL29wZW5zc2wuc3BlYyBiL29wZW5zc2wuc3BlYwppbmRleCA2MjkzODQxLi44M2Fj MGM4IDEwMDY0NAotLS0gYS9vcGVuc3NsLnNwZWMKKysrIGIvb3BlbnNzbC5zcGVjCkBAIC0zNCw3 ICszNCw3IEBAIHByaW50KHN0cmluZy5zdWIoaGFzaCwgMCwgMTYpKQogU3VtbWFyeTogVXRpbGl0 aWVzIGZyb20gdGhlIGdlbmVyYWwgcHVycG9zZSBjcnlwdG9ncmFwaHkgbGlicmFyeSB3aXRoIFRM UyBpbXBsZW1lbnRhdGlvbgogTmFtZTogb3BlbnNzbAogVmVyc2lvbjogMy41LjcKLVJlbGVhc2U6 IDElez9kaXN0fQorUmVsZWFzZTogMiV7P2Rpc3R9CiBFcG9jaDogMQogU291cmNlMDogb3BlbnNz bC0le3ZlcnNpb259LnRhci5negogU291cmNlMTogZmlwcy1obWFjaWZ5LnNoCkBAIC0xMDIsNiAr MTAyLDcgQEAgUGF0Y2gwMDU0OiAwMDU0LVRlbXBvcmFyaWx5LWRpc2FibGUtU0xILURTQS1GSVBT LXNlbGYtdGVzdHMucGF0Y2gKIFBhdGNoMDA1NTogMDA1NS1BZGQtYS1kZWZpbmUtdG8tZGlzYWJs ZS1zeW12ZXItYXR0cmlidXRlcy5wYXRjaAogUGF0Y2gwMDU2OiAwMDU2LUFkZC10YXJnZXRzLXRv LXNraXAtYnVpbGQtb2Ytbm9uLWluc3RhbGxhYmxlLXByb2dyYW0ucGF0Y2gKIFBhdGNoMDA1Nzog MDA1Ny1EaXNhYmxlLVJTQS1QS0NTMS41LUZJUFMtUE9TVC1ub3QtcmVsZXZhbnQtZm9yLVJIRUwu cGF0Y2gKK1BhdGNoMDA1ODogMDA1OC1Eb24tdC1yYWlzZS1OT1RfRU5PVUdIX0RBVEEtYXQtb2Jq ZWN0LWJvdW5kYXJ5LnBhdGNoCiAKIExpY2Vuc2U6IEFwYWNoZS0yLjAKIFVSTDogaHR0cDovL3d3 dy5vcGVuc3NsLm9yZy8KQEAgLTQ3NCw2ICs0NzUsMTAgQEAgbG4gLXMgL2V0Yy9jcnlwdG8tcG9s aWNpZXMvYmFjay1lbmRzL29wZW5zc2xfZmlwcy5jb25maWcgJFJQTV9CVUlMRF9ST09UJXtfc3lz Y28KICVsZGNvbmZpZ19zY3JpcHRsZXRzIGxpYnMKIAogJWNoYW5nZWxvZworKiBGcmkgSnVsIDE3 IDIwMjYgUGF2b2wgxb3DocSNaWsgPHB6YWNpa0ByZWRoYXQuY29tPiAtIDE6My41LjctMgorLSBE b24ndCByYWlzZSBOT1RfRU5PVUdIX0RBVEEgb24gYSBjbGVhbiBFT0YgYXQgYW4gb2JqZWN0IGJv dW5kYXJ5CisgIChCYWNrcG9ydCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuc3NsL29wZW5z c2wvY29tbWl0LzM2ODdmZjcpCisKICogV2VkIEp1biAxMCAyMDI2IERtaXRyeSBCZWx5YXZza2l5 IDxkYmVseWF2c0ByZWRoYXQuY29tPiAtIDE6My41LjctMQogLSBSZWJhc2UgdG8gT3BlblNTTCAz LjUuNwogCg==