[PR] release/8.1: backport six CVE fixes (CVE-2026-64830..64835) (PR #23997)

akshaver via ffmpeg-devel <[email protected]> Mon, 03 Aug 2026 19:02:02 -0000
Newsgroups gmane.comp.video.ffmpeg.devel
Message-ID <178578372359.59.13765548238946894262@29965ddac10e>
UFIgIzIzOTk3IG9wZW5lZCBieSBha3NoYXZlcgpVUkw6IGh0dHBzOi8vY29kZS5mZm1wZWcub3Jn
L0ZGbXBlZy9GRm1wZWcvcHVsbHMvMjM5OTcKUGF0Y2ggVVJMOiBodHRwczovL2NvZGUuZmZtcGVn
Lm9yZy9GRm1wZWcvRkZtcGVnL3B1bGxzLzIzOTk3LnBhdGNoCgpCYWNrcG9ydCBzaXggQ1ZFIGZp
eGVzIGZyb20gbWFzdGVyIHRvIHJlbGVhc2UvOC4xLiBFdmVyeSBjb21taXQgaXMgYSBwbGFpbg0K
YGdpdCBjaGVycnktcGljayAteGAgb2YgYSBjb21taXQgYWxyZWFkeSBpbiB0aGUgdHJlZSDigJQg
bm8gY29kZSB3YXMgYWRhcHRlZCwgYW5kDQphbGwgc2l4IGFwcGx5IHRvIGByZWxlYXNlLzguMWAg
d2l0aCB6ZXJvIGNvbmZsaWN0cyBhbmQgemVybyBmdXp6DQooYHBhdGNoIC0tZnV6ej0wYCwgZXhh
Y3QgY29udGV4dCBtYXRjaCkuDQoNCnwgQ1ZFIHwgQ29tcG9uZW50IHwgbWFzdGVyIHwgcmVsZWFz
ZS85LjAgfA0KfCAtLS0gfCAtLS0gfCAtLS0gfCAtLS0gfA0KfCBDVkUtMjAyNi02NDgzMCB8IHZv
YnN1YiBkZW11eGVyIChgbGliYXZmb3JtYXQvbXBlZy5jYCkgfCBgZGJkNDk1ZjA2NmAgfCBgZGNm
OGNlMjgwMmAgfA0KfCBDVkUtMjAyNi02NDgzMSB8IFZ1bGthbiBIRVZDIGh3YWNjZWwgfCBgOTI3
MzczOTBkY2AgfCBgM2QxMjlhNGE4NWAgfA0KfCBDVkUtMjAyNi02NDgzMiB8IE5WREVDIGRvdWJs
ZS1mcmVlIChgbGliYXZjb2RlYy9udmRlYy5jYCkgfCBgNGM2MjE3NDc3ZmAgfCBgM2Q1YWQ0N2M0
MGAgfA0KfCBDVkUtMjAyNi02NDgzMyB8IFMvUERJRiBtdXhlciAoYGxpYmF2Zm9ybWF0L3NwZGlm
ZW5jLmNgKSB8IGA2ZjgwZTI3NjU0YCB8IGAzODVhYzJmYWRjYCB8DQp8IENWRS0yMDI2LTY0ODM0
IHwgUlRQL0FTRiBkZW11eGVyIChgbGliYXZmb3JtYXQvcnRwZGVjX2FzZi5jYCkgfCBgMTFkNWY0
NzViZWAgfCBgM2M0NDE3MTFhM2AgfA0KfCBDVkUtMjAyNi02NDgzNSB8IEFEWCBkZWNvZGVyIChg
bGliYXZjb2RlYy9hZHhkZWMuY2ApIHwgYDE4MzZlZjk2ODRgIHwgYGMxMGU3ZjVkYzFgIHwNCg0K
VGhlIGByZWxlYXNlLzkuMGAgY29tbWl0IGlzIHRoZSBvbmUgY2hlcnJ5LXBpY2tlZCBoZXJlOyBl
YWNoIGNhcnJpZXMgYm90aA0KYChjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IC4uLilgIHRyYWls
ZXJzLCBzbyB0aGUgZnVsbCBwcm92ZW5hbmNlIGNoYWluIGJhY2sgdG8NCm1hc3RlciBpcyBpbiB0
aGUgY29tbWl0IG1lc3NhZ2VzLg0KDQojIyMgV2h5IHJlbGVhc2UvOC4xDQoNCkFsbCBzaXggYWR2
aXNvcmllcyBhcmUgc2NvcGVkICJ0aHJvdWdoIDguMS4yIiwgYW5kIDguMS4yIGlzIHRoZSBjdXJy
ZW50IDguMQ0KcG9pbnQgcmVsZWFzZSwgc28gdGhlIHdob2xlIDguMSBsaW5lIGlzIGFmZmVjdGVk
LiBUaGUgZml4ZXMgcmVhY2hlZCBtYXN0ZXINCmJldHdlZW4gMjAyNi0wNy0wMiBhbmQgMjAyNi0w
Ny0wNSBhbmQgd2VyZSBiYWNrcG9ydGVkIHRvIGByZWxlYXNlLzkuMGAsIGJ1dA0KYHJlbGVhc2Uv
OC4xYCBoYXMgbm90IHBpY2tlZCB0aGVtIHVwLg0KDQpBZ2FpbnN0IGBkb2MvZGV2ZWxvcGVyLnRl
eGlgICJDcml0ZXJpYSBmb3IgUG9pbnQgUmVsZWFzZXMiLCB0aGUgcnVsZSBiZWluZw0KKDEgT1Ig
MiBPUiAzKSBBTkQgNDoNCg0KKiAqKigxKSoqIGVhY2ggZml4ZXMgYSBzZWN1cml0eSBpc3N1ZSBp
ZGVudGlmaWVkIGJ5IGEgQ1ZFIG51bWJlcjsNCiogKiooNCkqKiBzb3VyY2UgYW5kIGJpbmFyeSBj
b21wYXRpYmlsaXR5IGFyZSByZXRhaW5lZCDigJQgdGhlc2UgYXJlIGJvdW5kcyBhbmQNCiAgc3Rh
dGUgY2hlY2tzIGluIGV4aXN0aW5nIGZ1bmN0aW9ucywgbm8gcHVibGljIGludGVyZmFjZSBjaGFu
Z2VzLCBhbmQgdGhlDQogIGBMSUJBVipfVkVSU0lPTl8qYCBtYWNyb3MgYXJlIHVudG91Y2hlZCwg
c28gU09OQU1FcyBkbyBub3QgbW92ZS4NCg0KIyMjIFNpemUNCg0KU21hbGwgYW5kIGRlZmVuc2l2
ZSByYXRoZXIgdGhhbiBzdHJ1Y3R1cmFsIOKAlCBmb3VyIGFyZSBmaXZlIGFkZGVkIGxpbmVzIG9y
DQpmZXdlciwgYW5kIDAwMDMgaXMgYSBuZXQgZGVsZXRpb246DQoNCnwgUGF0Y2ggfCDOlCB8DQp8
IC0tLSB8IC0tLSB8DQp8IDAwMDEgdm9ic3ViIHwgKzE2IOKIkjIgfA0KfCAwMDAyIHZ1bGthbl9o
ZXZjIHwgKzMg4oiSMCB8DQp8IDAwMDMgbnZkZWMgfCArMSDiiJI1IHwNCnwgMDAwNCBzcGRpZmVu
YyB8ICsxIOKIkjEgfA0KfCAwMDA1IHJ0cGRlY19hc2YgfCArMiDiiJIwIHwNCnwgMDAwNiBhZHhk
ZWMgfCArNSDiiJIwIHwNCg0KIyMjIFRlc3RpbmcNCg0KYHJlbGVhc2UvOC4xYCArIHRoZXNlIHNp
eCBjb25maWd1cmVzIGFuZCBidWlsZHMgY2xlYW5seSAoRGViaWFuIGJvb2t3b3JtLCBnY2MNCjEy
LCBgLS1kaXNhYmxlLXg4NmFzbSAtLWVuYWJsZS1kZW11eGVycyAtLWVuYWJsZS1tdXhlcnMgLS1l
bmFibGUtZGVjb2RlcnMNCi0tZW5hYmxlLXBhcnNlcnNgKS4NCg0KSSBoYXZlIGFsc28gYmVlbiBy
dW5uaW5nIHRoZSBlcXVpdmFsZW50IHBhdGNoIHNldCBvbiB0b3Agb2YgdGhlIDguMS4yIHJlbGVh
c2UNCnRhcmJhbGwgaW4gYSBkb3duc3RyZWFtIHByb2R1Y3QgYnVpbGQsIG9uIGJvdGggeDg2XzY0
IGFuZCBhYXJjaDY0LCB3aXRoIHRoZQ0KY29tcG9uZW50IHNldCB1bmNoYW5nZWQgYW5kIGF1ZGlv
IGRlY29kZSB2ZXJpZmllZCBlbmQgdG8gZW5kLg0KCgoKRnJvbSA0ZmU3MTAwNDdkNjMzZGRkN2Ex
MjYzNTJjZTBmNWY1MDVhMGZlODQzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXZl
bCBLb2hvdXQgPGRpc2Nsb3N1cmVAYWlzbGUuY29tPgpEYXRlOiBNb24sIDI5IEp1biAyMDI2IDIz
OjMwOjQxICswMjAwClN1YmplY3Q6IFtQQVRDSCAxLzZdIGF2Zm9ybWF0L3ZvYnN1YjogcmV1c2Ug
c3VidGl0bGUgc3RyZWFtcyBhbmQgYm91bmQgdGhlCiBzdHJlYW0gY291bnQKCkZpeGVzOiBoZWFw
IGJ1ZmZlciBvdmVyZmxvdwpGaXhlczogbHFhTzVSMUJhWkdPCkZpeGVzOiBkYmZlNjExMDBiIChh
dmZvcm1hdC92b2JzdWI6IGZpeCBzZXZlcmFsIGlzc3Vlcy4pCkZvdW5kLWJ5OiBQYXZlbCBLb2hv
dXQgKEFpc2xlIFJlc2VhcmNoKQpTaWduZWQtb2ZmLWJ5OiBNaWNoYWVsIE5pZWRlcm1heWVyIDxt
aWNoYWVsQG5pZWRlcm1heWVyLmNjPgooY2hlcnJ5IHBpY2tlZCBmcm9tIGNvbW1pdCBkYmQ0OTVm
MDY2YTg1YmE5NmIxNzQzM2Y0MzA2NTgyYWEzN2MzOTUxKQpTaWduZWQtb2ZmLWJ5OiBNaWNoYWVs
IE5pZWRlcm1heWVyIDxtaWNoYWVsQG5pZWRlcm1heWVyLmNjPgooY2hlcnJ5IHBpY2tlZCBmcm9t
IGNvbW1pdCBkY2Y4Y2UyODAyYmYyYmUxYjBjNmI4ZDQ5OTZhYmNhN2I2Njk5NzhkKQpTaWduZWQt
b2ZmLWJ5OiBBZGFtIFNoYXZlciA8YXNoYXZlckBudmlkaWEuY29tPgotLS0KIGxpYmF2Zm9ybWF0
L21wZWcuYyB8IDE4ICsrKysrKysrKysrKysrKystLQogMSBmaWxlIGNoYW5nZWQsIDE2IGluc2Vy
dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZmb3JtYXQvbXBlZy5j
IGIvbGliYXZmb3JtYXQvbXBlZy5jCmluZGV4IGE3YTJlZjc4ZTYuLjFjZTRiZjlkNDYgMTAwNjQ0
Ci0tLSBhL2xpYmF2Zm9ybWF0L21wZWcuYworKysgYi9saWJhdmZvcm1hdC9tcGVnLmMKQEAgLTg0
MSw2ICs4NDEsMjAgQEAgc3RhdGljIGludCB2b2JzdWJfcmVhZF9oZWFkZXIoQVZGb3JtYXRDb250
ZXh0ICpzKQogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBpZiAoIXN0IHx8IHN0LT5pZCAh
PSBzdHJlYW1faWQpIHsKKyAgICAgICAgICAgICAgICBzdCA9IE5VTEw7CisgICAgICAgICAgICAg
ICAgZm9yIChpID0gMDsgaSA8IHMtPm5iX3N0cmVhbXM7IGkrKykgeworICAgICAgICAgICAgICAg
ICAgICBpZiAocy0+c3RyZWFtc1tpXS0+aWQgPT0gc3RyZWFtX2lkKSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBzdCA9IHMtPnN0cmVhbXNbaV07CisgICAgICAgICAgICAgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIGlmICghc3QpIHsKKyAgICAgICAgICAgICAgICBpZiAocy0+bmJf
c3RyZWFtcyA+PSBGRl9BUlJBWV9FTEVNUyh2b2JzdWItPnEpKSB7CisgICAgICAgICAgICAgICAg
ICAgIGF2X2xvZyhzLCBBVl9MT0dfRVJST1IsICJNYXhpbXVtIG51bWJlciBvZiBzdWJ0aXRsZSBz
dHJlYW1zIHJlYWNoZWRcbiIpOworICAgICAgICAgICAgICAgICAgICByZXQgPSBBVkVSUk9SX0lO
VkFMSUREQVRBOworICAgICAgICAgICAgICAgICAgICBnb3RvIGVuZDsKKyAgICAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICAgICAgc3QgPSBhdmZvcm1hdF9uZXdfc3RyZWFtKHMsIE5VTEwpOwog
ICAgICAgICAgICAgICAgIGlmICghc3QpIHsKICAgICAgICAgICAgICAgICAgICAgcmV0ID0gQVZF
UlJPUihFTk9NRU0pOwpAQCAtODY1LDE0ICs4NzksMTQgQEAgc3RhdGljIGludCB2b2JzdWJfcmVh
ZF9oZWFkZXIoQVZGb3JtYXRDb250ZXh0ICpzKQogICAgICAgICAgICAgdGltZXN0YW1wID0gKGho
KjM2MDBMTCArIG1tKjYwTEwgKyBzcykgKiAxMDAwTEwgKyBtcyArIGRlbGF5OwogICAgICAgICAg
ICAgdGltZXN0YW1wID0gYXZfcmVzY2FsZV9xKHRpbWVzdGFtcCwgYXZfbWFrZV9xKDEsIDEwMDAp
LCBzdC0+dGltZV9iYXNlKTsKIAotICAgICAgICAgICAgc3ViID0gZmZfc3VidGl0bGVzX3F1ZXVl
X2luc2VydCgmdm9ic3ViLT5xW3MtPm5iX3N0cmVhbXMgLSAxXSwgIiIsIDAsIDApOworICAgICAg
ICAgICAgc3ViID0gZmZfc3VidGl0bGVzX3F1ZXVlX2luc2VydCgmdm9ic3ViLT5xW3N0LT5pbmRl
eF0sICIiLCAwLCAwKTsKICAgICAgICAgICAgIGlmICghc3ViKSB7CiAgICAgICAgICAgICAgICAg
cmV0ID0gQVZFUlJPUihFTk9NRU0pOwogICAgICAgICAgICAgICAgIGdvdG8gZW5kOwogICAgICAg
ICAgICAgfQogICAgICAgICAgICAgc3ViLT5wb3MgPSBwb3M7CiAgICAgICAgICAgICBzdWItPnB0
cyA9IHRpbWVzdGFtcDsKLSAgICAgICAgICAgIHN1Yi0+c3RyZWFtX2luZGV4ID0gcy0+bmJfc3Ry
ZWFtcyAtIDE7CisgICAgICAgICAgICBzdWItPnN0cmVhbV9pbmRleCA9IHN0LT5pbmRleDsKIAog
ICAgICAgICB9IGVsc2UgaWYgKCFzdHJuY21wKGxpbmUsICJhbHQ6IiwgNCkpIHsKICAgICAgICAg
ICAgIGNvbnN0IGNoYXIgKnAgPSBsaW5lICsgNDsKLS0gCjIuNTIuMAoKCkZyb20gNmIzMDE1Y2Q5
MmQ0YTBmOTZiMDUxMWU4MTEwYzUwYWMwZGNjOWQzYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK
RnJvbTogUGF2ZWwgS29ob3V0IDxkaXNjbG9zdXJlQGFpc2xlLmNvbT4KRGF0ZTogVHVlLCAzMCBK
dW4gMjAyNiAyMTo1NTo0OSArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMi82XSBhdmNvZGVjL3Z1bGth
bl9oZXZjOiByZWplY3QgdG9vIG1hbnkgVlBTIEhSRCBwYXJhbWV0ZXIKIHNldHMKCkZpeGVzOiBz
dGFjayBidWZmZXIgb3ZlcmZsb3cKRml4ZXM6IHREN01qMFNUN05EMwpGaXhlczogODI4NjRjMjEx
MTIxNTc5NTFjZTkxYjQ0MzBhOTAxOGVkZDAyZjVhYiAodnVsa2FuX2hldmM6IHVzZSBWS19LSFJf
dmlkZW9fbWFpbnRlbmFuY2UyIGlmIGF2YWlsYWJsZSkKRm91bmQtYnk6IFBhdmVsIEtvaG91dCAo
QWlzbGUgUmVzZWFyY2gpClNpZ25lZC1vZmYtYnk6IE1pY2hhZWwgTmllZGVybWF5ZXIgPG1pY2hh
ZWxAbmllZGVybWF5ZXIuY2M+CihjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IDkyNzM3MzkwZGMx
MzNkYWFkY2U0N2RkN2QyZWM4ZWYzZDllYmNiZWQpCihjaGVycnkgcGlja2VkIGZyb20gY29tbWl0
IDNkMTI5YTRhODUzMWU5ZjdiYWE4NTU4YzdjOTk0YjRkZDM2YmNmMDQpClNpZ25lZC1vZmYtYnk6
IEFkYW0gU2hhdmVyIDxhc2hhdmVyQG52aWRpYS5jb20+Ci0tLQogbGliYXZjb2RlYy92dWxrYW5f
aGV2Yy5jIHwgMyArKysKIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKykKCmRpZmYgLS1n
aXQgYS9saWJhdmNvZGVjL3Z1bGthbl9oZXZjLmMgYi9saWJhdmNvZGVjL3Z1bGthbl9oZXZjLmMK
aW5kZXggOGYwZDFmNjYzNi4uOWI5MjY0ZjFjZCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy92dWxr
YW5faGV2Yy5jCisrKyBiL2xpYmF2Y29kZWMvdnVsa2FuX2hldmMuYwpAQCAtODc1LDYgKzg3NSw5
IEBAIHN0YXRpYyBpbnQgdmtfaGV2Y19lbmRfZnJhbWUoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQog
ICAgICAgICAgICAgICAgIHZrc3BzX3AudmNsX2hkciwgJnZrc3BzX3AucHRsLCAmdmtzcHNfcC5k
cGJtLAogICAgICAgICAgICAgICAgICZ2a3Nwc19wLnBhbCwgdmtzcHNfcC5zdHIsICZ2a3Nwc19w
Lmx0cik7CiAKKyAgICAgICAgaWYgKHNwcy0+dnBzLT52cHNfbnVtX2hyZF9wYXJhbWV0ZXJzID4g
SEVWQ19NQVhfU1VCX0xBWUVSUykKKyAgICAgICAgICAgIHJldHVybiBBVkVSUk9SX0lOVkFMSURE
QVRBOworCiAgICAgICAgIHZrdnBzX3Auc2xzID0gdmt2cHNfcHM7CiAgICAgICAgIHNldF92cHMo
c3BzLT52cHMsICZ2a3ZwcywgJnZrdnBzX3AucHRsLCAmdmt2cHNfcC5kcGJtLAogICAgICAgICAg
ICAgICAgIHZrdnBzX3AuaGRyLCB2a3Zwc19wLnNscyk7Ci0tIAoyLjUyLjAKCgpGcm9tIDljYmNm
OTc5YTU4N2E2NmIyODA0OTY2NTdkMDBmYWJlMzAxYmYyMGYgTW9uIFNlcCAxNyAwMDowMDowMCAy
MDAxCkZyb206IE1pY2hhZWwgTmllZGVybWF5ZXIgPG1pY2hhZWxAbmllZGVybWF5ZXIuY2M+CkRh
dGU6IFR1ZSwgMzAgSnVuIDIwMjYgMDA6MjQ6MDcgKzAyMDAKU3ViamVjdDogW1BBVENIIDMvNl0g
YXZjb2RlYy9udmRlYzogZG9uJ3QgZG91YmxlIGZyZWUgdGhlIGZkZC1vd25lZCBjb250ZXh0IG9u
CiB0aGUgc2VwX3JlZiBlcnJvciBwYXRoCgpGaXhlczogZG91YmxlIGZyZWUKRml4ZXM6IHJwU3o3
djN5cTJ1OApGaXhlczogNzI5ODJmOGNiNWRhZDYyNTJhMTQyMjZkMjgxMjgzMTNlZWQ0YTVmZiAo
YXZjb2RlYy9udmRlYzogYWRkIHN1cHBvcnQgZm9yIHNlcGFyYXRlIHJlZmVyZW5jZSBmcmFtZSkK
Rm91bmQtYnk6IFBhdmVsIEtvaG91dCAoQWlzbGUgUmVzZWFyY2gpClNpZ25lZC1vZmYtYnk6IE1p
Y2hhZWwgTmllZGVybWF5ZXIgPG1pY2hhZWxAbmllZGVybWF5ZXIuY2M+CihjaGVycnkgcGlja2Vk
IGZyb20gY29tbWl0IDRjNjIxNzQ3N2ZjNjQzMDUwNTViMzdkOWQxZDBkNzZkMzBlMzdmOTcpClNp
Z25lZC1vZmYtYnk6IE1pY2hhZWwgTmllZGVybWF5ZXIgPG1pY2hhZWxAbmllZGVybWF5ZXIuY2M+
CihjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IDNkNWFkNDdjNDA0MzZkYmRlYWFhNjYwMWFmMGJi
NDU3NWQ1YWEzYzUpClNpZ25lZC1vZmYtYnk6IEFkYW0gU2hhdmVyIDxhc2hhdmVyQG52aWRpYS5j
b20+Ci0tLQogbGliYXZjb2RlYy9udmRlYy5jIHwgNiArLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAx
IGluc2VydGlvbigrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL252
ZGVjLmMgYi9saWJhdmNvZGVjL252ZGVjLmMKaW5kZXggN2MyOWYyNTcxOC4uNzg3YTlkN2MyOCAx
MDA2NDQKLS0tIGEvbGliYXZjb2RlYy9udmRlYy5jCisrKyBiL2xpYmF2Y29kZWMvbnZkZWMuYwpA
QCAtNjI4LDggKzYyOCw3IEBAIGludCBmZl9udmRlY19zdGFydF9mcmFtZV9zZXBfcmVmKEFWQ29k
ZWNDb250ZXh0ICphdmN0eCwgQVZGcmFtZSAqZnJhbWUsIGludCBoYXNfCiAgICAgICAgICAgICBj
Zi0+cmVmX2lkeF9yZWYgPSBhdl9yZWZzdHJ1Y3RfcG9vbF9nZXQoY3R4LT5kZWNvZGVyX3Bvb2wp
OwogICAgICAgICAgICAgaWYgKCFjZi0+cmVmX2lkeF9yZWYpIHsKICAgICAgICAgICAgICAgICBh
dl9sb2coYXZjdHgsIEFWX0xPR19FUlJPUiwgIk5vIGRlY29kZXIgc3VyZmFjZXMgbGVmdFxuIik7
Ci0gICAgICAgICAgICAgICAgcmV0ID0gQVZFUlJPUihFTk9NRU0pOwotICAgICAgICAgICAgICAg
IGdvdG8gZmFpbDsKKyAgICAgICAgICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwogICAg
ICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIGNmLT5yZWZfaWR4ID0gKmNmLT5yZWZfaWR4
X3JlZjsKQEAgLTYzOSw5ICs2MzgsNiBAQCBpbnQgZmZfbnZkZWNfc3RhcnRfZnJhbWVfc2VwX3Jl
ZihBVkNvZGVjQ29udGV4dCAqYXZjdHgsIEFWRnJhbWUgKmZyYW1lLCBpbnQgaGFzXwogICAgIH0K
IAogICAgIHJldHVybiAwOwotZmFpbDoKLSAgICBudmRlY19mZGRfcHJpdl9mcmVlKGNmKTsKLSAg
ICByZXR1cm4gcmV0OwogfQogCiBpbnQgZmZfbnZkZWNfZW5kX2ZyYW1lKEFWQ29kZWNDb250ZXh0
ICphdmN0eCkKLS0gCjIuNTIuMAoKCkZyb20gOWE5MmZiMDAzNGJjNTYwNDVlMzIxMWEwNGIwOGMx
NDVhNDU5NGVkYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTWljaGFlbCBOaWVkZXJt
YXllciA8bWljaGFlbEBuaWVkZXJtYXllci5jYz4KRGF0ZTogVHVlLCAzMCBKdW4gMjAyNiAwMDox
MTo1MCArMDIwMApTdWJqZWN0OiBbUEFUQ0ggNC82XSBhdmZvcm1hdC9zcGRpZmVuYzogYm91bmQg
RFRTIGNvcmVfc2l6ZSBhZ2FpbnN0IHRoZSBwYWNrZXQKIHNpemUgaW4gdGhlIEhEIHBhdGgKCkZp
eGVzOiBvdXQgb2YgYXJyYXkgcmVhZApGaXhlczogeUJTYXg0OTJVSUI5CkZpeGVzOiA0ODJkOThm
NjliMiAoc3BkaWZlbmM6IElFQyA2MTkzNyBlbmNhcHN1bGF0aW9uIG9mIERUUy1IRCBmb3IgSERN
SSkKRm91bmQtYnk6IFBhdmVsIEtvaG91dCAoQWlzbGUgUmVzZWFyY2gpClNpZ25lZC1vZmYtYnk6
IE1pY2hhZWwgTmllZGVybWF5ZXIgPG1pY2hhZWxAbmllZGVybWF5ZXIuY2M+CihjaGVycnkgcGlj
a2VkIGZyb20gY29tbWl0IDZmODBlMjc2NTQ5MjcwMDYyMjU5NmFmNzIwNTM0Y2VmMzNkZDMxYjQp
ClNpZ25lZC1vZmYtYnk6IE1pY2hhZWwgTmllZGVybWF5ZXIgPG1pY2hhZWxAbmllZGVybWF5ZXIu
Y2M+CihjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IDM4NWFjMmZhZGNiNDM5NGVjNGY2NWU1YzRk
M2QyNDAwM2UwOTBmMzYpClNpZ25lZC1vZmYtYnk6IEFkYW0gU2hhdmVyIDxhc2hhdmVyQG52aWRp
YS5jb20+Ci0tLQogbGliYXZmb3JtYXQvc3BkaWZlbmMuYyB8IDIgKy0KIDEgZmlsZSBjaGFuZ2Vk
LCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0
L3NwZGlmZW5jLmMgYi9saWJhdmZvcm1hdC9zcGRpZmVuYy5jCmluZGV4IGFiM2Y3M2RhMGQuLjE2
ZWViZGEwMWMgMTAwNjQ0Ci0tLSBhL2xpYmF2Zm9ybWF0L3NwZGlmZW5jLmMKKysrIGIvbGliYXZm
b3JtYXQvc3BkaWZlbmMuYwpAQCAtMjI1LDcgKzIyNSw3IEBAIHN0YXRpYyBpbnQgc3BkaWZfaGVh
ZGVyX2R0czQoQVZGb3JtYXRDb250ZXh0ICpzLCBBVlBhY2tldCAqcGt0LCBpbnQgY29yZV9zaXpl
LAogICAgICAgICAgICAgICogKGR0c2hkX2ZhbGxiYWNrID09IDApICovCiAgICAgICAgICAgICBj
dHgtPmR0c2hkX3NraXAgPSAxOwogICAgIH0KLSAgICBpZiAoY3R4LT5kdHNoZF9za2lwICYmIGNv
cmVfc2l6ZSkgeworICAgIGlmIChjdHgtPmR0c2hkX3NraXAgJiYgY29yZV9zaXplICYmIGNvcmVf
c2l6ZSA8PSBwa3QtPnNpemUpIHsKICAgICAgICAgcGt0X3NpemUgPSBjb3JlX3NpemU7CiAgICAg
ICAgIGlmIChjdHgtPmR0c2hkX2ZhbGxiYWNrID49IDApCiAgICAgICAgICAgICAtLWN0eC0+ZHRz
aGRfc2tpcDsKLS0gCjIuNTIuMAoKCkZyb20gYzI2ZTNjZDJmODc5ZGM3YmVhM2QwZWUwMGRjNTM1
M2Y3YmM5ODQyZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogUGF2ZWwgS29ob3V0IDxk
aXNjbG9zdXJlQGFpc2xlLmNvbT4KRGF0ZTogVHVlLCAzMCBKdW4gMjAyNiAyMTo1NToxNiArMDIw
MApTdWJqZWN0OiBbUEFUQ0ggNS82XSBhdmZvcm1hdC9ydHBkZWNfYXNmOiByZWplY3QgQVNGIG9i
amVjdHMgc21hbGxlciB0aGFuCiB0aGVpciBoZWFkZXIKCkZpeGVzOiBpbmZpbml0ZSBsb29wCkZp
eGVzOiBNeld3SmRwWkYyTHMKRml4ZXM6IGMyZjNlZWM0NDUzODlkNjdhZmM4YzY5OWJhMjM5MTVh
MjBjYWU1MWMgKEltcGxlbWVudCBSVFNQLU1TL0FTRiBwYWNrZXQgcGFyc2luZy4pCkZvdW5kLWJ5
OiBQYXZlbCBLb2hvdXQgKEFpc2xlIFJlc2VhcmNoKQpTaWduZWQtb2ZmLWJ5OiBNaWNoYWVsIE5p
ZWRlcm1heWVyIDxtaWNoYWVsQG5pZWRlcm1heWVyLmNjPgooY2hlcnJ5IHBpY2tlZCBmcm9tIGNv
bW1pdCAxMWQ1ZjQ3NWJlOTVkMjJkNWYwNjkyMjIwY2M3NzJiMTE2YWJjNjMyKQpTaWduZWQtb2Zm
LWJ5OiBNaWNoYWVsIE5pZWRlcm1heWVyIDxtaWNoYWVsQG5pZWRlcm1heWVyLmNjPgooY2hlcnJ5
IHBpY2tlZCBmcm9tIGNvbW1pdCAzYzQ0MTcxMWEzNDNjY2Y1MDE5NmM3MGEzZjBiNTU0YjUyZjhk
OWRlKQpTaWduZWQtb2ZmLWJ5OiBBZGFtIFNoYXZlciA8YXNoYXZlckBudmlkaWEuY29tPgotLS0K
IGxpYmF2Zm9ybWF0L3J0cGRlY19hc2YuYyB8IDIgKysKIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy
dGlvbnMoKykKCmRpZmYgLS1naXQgYS9saWJhdmZvcm1hdC9ydHBkZWNfYXNmLmMgYi9saWJhdmZv
cm1hdC9ydHBkZWNfYXNmLmMKaW5kZXggYjNiMzQ2ZjNjYy4uZjdmYTY5ZTI3ZiAxMDA2NDQKLS0t
IGEvbGliYXZmb3JtYXQvcnRwZGVjX2FzZi5jCisrKyBiL2xpYmF2Zm9ybWF0L3J0cGRlY19hc2Yu
YwpAQCAtNTYsNiArNTYsOCBAQCBzdGF0aWMgaW50IHJ0cF9hc2ZfZml4X2hlYWRlcih1aW50OF90
ICpidWYsIGludCBsZW4pCiAgICAgICAgIHVpbnQ2NF90IGNodW5rc2l6ZSA9IEFWX1JMNjQocCAr
IHNpemVvZihmZl9hc2ZfZ3VpZCkpOwogICAgICAgICBpbnQgc2tpcCA9IDYgKiA4ICsgMyAqIDQg
KyBzaXplb2YoZmZfYXNmX2d1aWQpICogMjsKICAgICAgICAgaWYgKG1lbWNtcChwLCBmZl9hc2Zf
ZmlsZV9oZWFkZXIsIHNpemVvZihmZl9hc2ZfZ3VpZCkpKSB7CisgICAgICAgICAgICBpZiAoY2h1
bmtzaXplIDwgc2l6ZW9mKGZmX2FzZl9ndWlkKSArIDgpCisgICAgICAgICAgICAgICAgcmV0dXJu
IC0xOwogICAgICAgICAgICAgaWYgKGNodW5rc2l6ZSA+IGVuZCAtIHApCiAgICAgICAgICAgICAg
ICAgcmV0dXJuIC0xOwogICAgICAgICAgICAgcCArPSBjaHVua3NpemU7Ci0tIAoyLjUyLjAKCgpG
cm9tIDg1MmIwNTUyZjA3MjgyNjcyMzc0OWRiNjg5MTkyOGQ4MzlmNTM2ZDggTW9uIFNlcCAxNyAw
MDowMDowMCAyMDAxCkZyb206IFBhdmVsIEtvaG91dCA8ZGlzY2xvc3VyZUBhaXNsZS5jb20+CkRh
dGU6IE1vbiwgMjkgSnVuIDIwMjYgMjM6NDY6MTYgKzAyMDAKU3ViamVjdDogW1BBVENIIDYvNl0g
YXZjb2RlYy9hZHg6IHN5bmMgZGVjb2RlciBjaGFubmVsIHN0YXRlIG9uIE5FV19FWFRSQURBVEEK
CkZpeGVzOiBvdXQgb2YgYXJyYXkgYWNjZXNzCkZpeGVzOiBoZWFOdG1IdmtscGUKRml4ZXM6IDky
Mzk2Y2VlNjAyMzIwYzcxNDcxM2NhMmQ5M2I1MzY4NGFkNTcwMDAgKGF2Zm9ybWF0OiBhZGQgQ1JJ
IEFBWCBkZW11eGVyKQpGb3VuZC1ieTogUGF2ZWwgS29ob3V0IChBaXNsZSBSZXNlYXJjaCkKU2ln
bmVkLW9mZi1ieTogTWljaGFlbCBOaWVkZXJtYXllciA8bWljaGFlbEBuaWVkZXJtYXllci5jYz4K
KGNoZXJyeSBwaWNrZWQgZnJvbSBjb21taXQgMTgzNmVmOTY4NDY5MzdhNmNjMjQ0MzY5OGE2OTMx
MDRmNWMwYjIxZSkKU2lnbmVkLW9mZi1ieTogTWljaGFlbCBOaWVkZXJtYXllciA8bWljaGFlbEBu
aWVkZXJtYXllci5jYz4KKGNoZXJyeSBwaWNrZWQgZnJvbSBjb21taXQgYzEwZTdmNWRjMTIzNjdk
MGRmY2M1Mjk4M2Q0MjdjNjc2NjQyNWZhOCkKU2lnbmVkLW9mZi1ieTogQWRhbSBTaGF2ZXIgPGFz
aGF2ZXJAbnZpZGlhLmNvbT4KLS0tCiBsaWJhdmNvZGVjL2FkeGRlYy5jIHwgNSArKysrKwogMSBm
aWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvYWR4
ZGVjLmMgYi9saWJhdmNvZGVjL2FkeGRlYy5jCmluZGV4IDAxOWZjMWE5MGQuLmE3OWFlNDMwYWEg
MTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvYWR4ZGVjLmMKKysrIGIvbGliYXZjb2RlYy9hZHhkZWMu
YwpAQCAtMTczLDYgKzE3Myw3IEBAIHN0YXRpYyBpbnQgYWR4X2RlY29kZV9mcmFtZShBVkNvZGVj
Q29udGV4dCAqYXZjdHgsIEFWRnJhbWUgKmZyYW1lLAogICAgIG5ld19leHRyYWRhdGEgPSBhdl9w
YWNrZXRfZ2V0X3NpZGVfZGF0YShhdnBrdCwgQVZfUEtUX0RBVEFfTkVXX0VYVFJBREFUQSwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm5ld19leHRyYWRhdGFf
c2l6ZSk7CiAgICAgaWYgKG5ld19leHRyYWRhdGEgJiYgbmV3X2V4dHJhZGF0YV9zaXplID4gMCkg
eworICAgICAgICBpbnQgb2xkX2NoYW5uZWxzID0gYy0+Y2hhbm5lbHM7CiAgICAgICAgIGludCBo
ZWFkZXJfc2l6ZTsKICAgICAgICAgaWYgKChyZXQgPSBhZHhfZGVjb2RlX2hlYWRlcihhdmN0eCwg
bmV3X2V4dHJhZGF0YSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdf
ZXh0cmFkYXRhX3NpemUsICZoZWFkZXJfc2l6ZSwKQEAgLTE4MSw2ICsxODIsMTAgQEAgc3RhdGlj
IGludCBhZHhfZGVjb2RlX2ZyYW1lKEFWQ29kZWNDb250ZXh0ICphdmN0eCwgQVZGcmFtZSAqZnJh
bWUsCiAgICAgICAgICAgICByZXR1cm4gQVZFUlJPUl9JTlZBTElEREFUQTsKICAgICAgICAgfQog
CisgICAgICAgIGMtPmNoYW5uZWxzICAgICAgPSBhdmN0eC0+Y2hfbGF5b3V0Lm5iX2NoYW5uZWxz
OworICAgICAgICBjLT5oZWFkZXJfcGFyc2VkID0gMTsKKyAgICAgICAgaWYgKG9sZF9jaGFubmVs
cyAhPSBjLT5jaGFubmVscykKKyAgICAgICAgICAgIG1lbXNldChjLT5wcmV2LCAwLCBzaXplb2Yo
Yy0+cHJldikpOwogICAgICAgICBjLT5lb2YgPSAwOwogICAgIH0KIAotLSAKMi41Mi4wCgpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpmZm1wZWctZGV2ZWwg
bWFpbGluZyBsaXN0IC0tIGZmbXBlZy1kZXZlbEBmZm1wZWcub3JnClRvIHVuc3Vic2NyaWJlIHNl
bmQgYW4gZW1haWwgdG8gZmZtcGVnLWRldmVsLWxlYXZlQGZmbXBlZy5vcmcK