From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 9CDA645E41 for ; Fri, 12 May 2023 21:47:18 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2D67868C08B; Sat, 13 May 2023 00:47:15 +0300 (EEST) Received: from mail-vs1-f41.google.com (mail-vs1-f41.google.com [209.85.217.41]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 50F8C68BECE for ; Sat, 13 May 2023 00:47:08 +0300 (EEST) Received: by mail-vs1-f41.google.com with SMTP id ada2fe7eead31-434839b4544so3055818137.1 for ; Fri, 12 May 2023 14:47:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1683928026; x=1686520026; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=4CKYMqBIYa+CvJ7klnjIbt6KjuyfXuJCX0MLLWEmo8c=; b=IOPTG11d60l1dH/fUXNDAYL2xqkTndf5jJU2HQsYvBAXvEjWpOHz+ty/5//EnbtmV/ oxb6KMN60pzInb0FaXt/6NWPNBlTjpkpNJO5NHRe9MKWmsaeyrhAXSkv6/z6wnePX8rI YwwRBguGO9/VnTRndZgWZO51f/9g7CBnhCF1RfOP+n++7wPK111+GYWViMCrEMXARz/O +zbSHAgSTItre6E0DXlRPcncqEMb00Z1QGDI+c4T8gKvC6lum7ynAAMegn/A8zeuvEfF 3pjvPA5ve0s07UlpJyS6VzORjkqjliWNcF3S8PDS5eJX6ac+S73Zew6EH6CPu5+J46RL mbcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1683928026; x=1686520026; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=4CKYMqBIYa+CvJ7klnjIbt6KjuyfXuJCX0MLLWEmo8c=; b=P3pB53TE0otpDJ1VPmq/ap3DG20AcyiKxoblnyyCbLFhvoQwLsFRAjOxzqhm/h235H /Mw7F30RiKuC0YpK14fZGc459nlAZcSji6MLCDelh3g2leZ4voNecBIK8HOcvJdPAJoX CIx4CZ04wYO/G8RlrTGxlQDAfwemNNVMTYSSW+B9w3QF4zLok7mtxZfH0elWr4bM6OZR 3wkrXFu9t+ELuIaWhEI+nKcCkH3cVEY/scPCDkmL7xB5VozvUepXLY3wTMtrcxNa6xXY gDIdwYWCucrtK2qgQBKYc8dWD8dLLpwqTbj+mDZHa0zygB4SULSLeVE2ETGKBqUVuT3z CXUA== X-Gm-Message-State: AC+VfDzTG8IApzKG6rz4QV94PR6DtJZxcOmPgjJuKxm1aPBh/VNQ9ynz gKO3BrIoazE/q8L+axPY1UIppRWYts5vM5J3tX2e0js5 X-Google-Smtp-Source: ACHHUZ6pm2oUhhza6vWHyDDrQ69cds5cS2DLEneIhyuFfZkqsvyje/spnlDITUqIBqPr3E5fkCrTNv4566nqvPlQYhA= X-Received: by 2002:a67:eb53:0:b0:434:6958:cdbf with SMTP id x19-20020a67eb53000000b004346958cdbfmr10126511vso.18.1683928026099; Fri, 12 May 2023 14:47:06 -0700 (PDT) MIME-Version: 1.0 From: Paul B Mahol Date: Fri, 12 May 2023 23:46:34 +0200 Message-ID: To: FFmpeg development discussions and patches Content-Type: multipart/mixed; boundary="000000000000d2cc8705fb860b90" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [FFmpeg-devel] [PATCH] avcodec/elbg: fix integer overflows X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: --000000000000d2cc8705fb860b90 Content-Type: text/plain; charset="UTF-8" Attached. --000000000000d2cc8705fb860b90 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-avcodec-elbg-fix-integer-overflows.patch" Content-Disposition: attachment; filename="0001-avcodec-elbg-fix-integer-overflows.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lhl38sjw0 RnJvbSBmMDI0MjVjYTcyMDdiZTEzMWEwYTlhZmU0YjkzMmZkYTA4NGI3MDY1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEIgTWFob2wgPG9uZW1kYUBnbWFpbC5jb20+CkRhdGU6 IEZyaSwgMTIgTWF5IDIwMjMgMjM6Mzc6NTkgKzAyMDAKU3ViamVjdDogW1BBVENIXSBhdmNvZGVj L2VsYmc6IGZpeCBpbnRlZ2VyIG92ZXJmbG93cwoKU2lnbmVkLW9mZi1ieTogUGF1bCBCIE1haG9s IDxvbmVtZGFAZ21haWwuY29tPgotLS0KIGxpYmF2Y29kZWMvZWxiZy5jIHwgNTEgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAz MyBpbnNlcnRpb25zKCspLCAxOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVj L2VsYmcuYyBiL2xpYmF2Y29kZWMvZWxiZy5jCmluZGV4IGQ5N2E3YmMzZjkuLjUwMTk3ZTIxYmMg MTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvZWxiZy5jCisrKyBiL2xpYmF2Y29kZWMvZWxiZy5jCkBA IC00NCwxMyArNDQsMTMgQEAgdHlwZWRlZiBzdHJ1Y3QgY2VsbF9zIHsKICAqIEVMQkcgaW50ZXJu YWwgZGF0YQogICovCiB0eXBlZGVmIHN0cnVjdCBFTEJHQ29udGV4dCB7Ci0gICAgaW50NjRfdCBl cnJvcjsKKyAgICBpbnQgZXJyb3I7CiAgICAgaW50IGRpbTsKICAgICBpbnQgbnVtX2NiOwogICAg IGludCAqY29kZWJvb2s7CiAgICAgY2VsbCAqKmNlbGxzOwotICAgIGludDY0X3QgKnV0aWxpdHk7 Ci0gICAgaW50NjRfdCAqdXRpbGl0eV9pbmM7CisgICAgaW50ICp1dGlsaXR5OworICAgIGludCAq dXRpbGl0eV9pbmM7CiAgICAgaW50ICpuZWFyZXN0X2NiOwogICAgIGludCAqcG9pbnRzOwogICAg IGludCAqdGVtcF9wb2ludHM7CkBAIC03NSw5ICs3NSwxMiBAQCBzdGF0aWMgaW5saW5lIGludCBk aXN0YW5jZV9saW1pdGVkKGludCAqYSwgaW50ICpiLCBpbnQgZGltLCBpbnQgbGltaXQpCiB7CiAg ICAgaW50IGksIGRpc3Q9MDsKICAgICBmb3IgKGk9MDsgaTxkaW07IGkrKykgewotICAgICAgICBk aXN0ICs9IChhW2ldIC0gYltpXSkqKGFbaV0gLSBiW2ldKTsKLSAgICAgICAgaWYgKGRpc3QgPiBs aW1pdCkKKyAgICAgICAgaW50NjRfdCBkaXN0YW5jZSA9IEZGQUJTKGFbaV0gLSBiW2ldKTsKKwor ICAgICAgICBkaXN0YW5jZSAqPSBkaXN0YW5jZTsKKyAgICAgICAgaWYgKGRpc3QgPj0gbGltaXQg LSBkaXN0YW5jZSkKICAgICAgICAgICAgIHJldHVybiBJTlRfTUFYOworICAgICAgICBkaXN0ICs9 IGRpc3RhbmNlOwogICAgIH0KIAogICAgIHJldHVybiBkaXN0OwpAQCAtOTcsOCArMTAwLDEyIEBA IHN0YXRpYyBpbmxpbmUgdm9pZCB2ZWN0X2RpdmlzaW9uKGludCAqcmVzLCBpbnQgKnZlY3QsIGlu dCBkaXYsIGludCBkaW0pCiBzdGF0aWMgaW50IGV2YWxfZXJyb3JfY2VsbChFTEJHQ29udGV4dCAq ZWxiZywgaW50ICpjZW50cm9pZCwgY2VsbCAqY2VsbHMpCiB7CiAgICAgaW50IGVycm9yPTA7Ci0g ICAgZm9yICg7IGNlbGxzOyBjZWxscz1jZWxscy0+bmV4dCkKLSAgICAgICAgZXJyb3IgKz0gZGlz dGFuY2VfbGltaXRlZChjZW50cm9pZCwgZWxiZy0+cG9pbnRzICsgY2VsbHMtPmluZGV4KmVsYmct PmRpbSwgZWxiZy0+ZGltLCBJTlRfTUFYKTsKKyAgICBmb3IgKDsgY2VsbHM7IGNlbGxzPWNlbGxz LT5uZXh0KSB7CisgICAgICAgIGludCBkaXN0YW5jZSA9IGRpc3RhbmNlX2xpbWl0ZWQoY2VudHJv aWQsIGVsYmctPnBvaW50cyArIGNlbGxzLT5pbmRleCplbGJnLT5kaW0sIGVsYmctPmRpbSwgSU5U X01BWCk7CisgICAgICAgIGlmIChlcnJvciA+PSBJTlRfTUFYIC0gZGlzdGFuY2UpCisgICAgICAg ICAgICByZXR1cm4gSU5UX01BWDsKKyAgICAgICAgZXJyb3IgKz0gZGlzdGFuY2U7CisgICAgfQog CiAgICAgcmV0dXJuIGVycm9yOwogfQpAQCAtMTc4LDEwICsxODUsMTMgQEAgc3RhdGljIGludCBz aW1wbGVfbGJnKEVMQkdDb250ZXh0ICplbGJnLAogICAgICAgICBpbnQgZGlzdFsyXSA9IHtkaXN0 YW5jZV9saW1pdGVkKGNlbnRyb2lkWzBdLCBwb2ludHMgKyB0ZW1wY2VsbC0+aW5kZXgqZGltLCBk aW0sIElOVF9NQVgpLAogICAgICAgICAgICAgICAgICAgICAgICBkaXN0YW5jZV9saW1pdGVkKGNl bnRyb2lkWzFdLCBwb2ludHMgKyB0ZW1wY2VsbC0+aW5kZXgqZGltLCBkaW0sIElOVF9NQVgpfTsK ICAgICAgICAgaW50IGlkeCA9IGRpc3RbMF0gPiBkaXN0WzFdOwotICAgICAgICBuZXd1dGlsaXR5 W2lkeF0gKz0gZGlzdFtpZHhdOworICAgICAgICBpZiAobmV3dXRpbGl0eVtpZHhdID49IElOVF9N QVggLSBkaXN0W2lkeF0pCisgICAgICAgICAgICBuZXd1dGlsaXR5W2lkeF0gPSBJTlRfTUFYOwor ICAgICAgICBlbHNlCisgICAgICAgICAgICBuZXd1dGlsaXR5W2lkeF0gKz0gZGlzdFtpZHhdOwog ICAgIH0KIAotICAgIHJldHVybiBuZXd1dGlsaXR5WzBdICsgbmV3dXRpbGl0eVsxXTsKKyAgICBy ZXR1cm4gKG5ld3V0aWxpdHlbMF0gPj0gSU5UX01BWCAtIG5ld3V0aWxpdHlbMV0pID8gSU5UX01B WCA6IG5ld3V0aWxpdHlbMF0gKyBuZXd1dGlsaXR5WzFdOwogfQogCiBzdGF0aWMgdm9pZCBnZXRf bmV3X2NlbnRyb2lkcyhFTEJHQ29udGV4dCAqZWxiZywgaW50IGh1YywgaW50ICpuZXdjZW50cm9p ZF9pLApAQCAtMjUzLDkgKzI2Myw5IEBAIHN0YXRpYyB2b2lkIGV2YWx1YXRlX3V0aWxpdHlfaW5j KEVMQkdDb250ZXh0ICplbGJnKQogICAgIGludDY0X3QgaW5jPTA7CiAKICAgICBmb3IgKGludCBp ID0gMDsgaSA8IGVsYmctPm51bV9jYjsgaSsrKSB7Ci0gICAgICAgIGlmIChlbGJnLT5udW1fY2Ig KiBlbGJnLT51dGlsaXR5W2ldID4gZWxiZy0+ZXJyb3IpCisgICAgICAgIGlmIChlbGJnLT5udW1f Y2IgKiAoaW50NjRfdCllbGJnLT51dGlsaXR5W2ldID4gZWxiZy0+ZXJyb3IpCiAgICAgICAgICAg ICBpbmMgKz0gZWxiZy0+dXRpbGl0eVtpXTsKLSAgICAgICAgZWxiZy0+dXRpbGl0eV9pbmNbaV0g PSBpbmM7CisgICAgICAgIGVsYmctPnV0aWxpdHlfaW5jW2ldID0gRkZNSU4oaW5jLCBJTlRfTUFY KTsKICAgICB9CiB9CiAKQEAgLTI3OCw3ICsyODgsNyBAQCBzdGF0aWMgdm9pZCB1cGRhdGVfdXRp bGl0eV9hbmRfbl9jYihFTEJHQ29udGV4dCAqZWxiZywgaW50IGlkeCwgaW50IG5ld3V0aWxpdHkp CiAgKi8KIHN0YXRpYyB2b2lkIHRyeV9zaGlmdF9jYW5kaWRhdGUoRUxCR0NvbnRleHQgKmVsYmcs IGludCBpZHhbM10pCiB7Ci0gICAgaW50IGosIGssIGNvbnQ9MDsKKyAgICBpbnQgaiwgaywgY29u dD0wLCB0bXA7CiAgICAgaW50NjRfdCBvbGRlcnJvcj0wLCBuZXdlcnJvcjsKICAgICBpbnQgbmV3 dXRpbGl0eVszXTsKICAgICBpbnQgKm5ld2NlbnRyb2lkWzNdID0gewpAQCAtMzA1LDEyICszMTUs MTcgQEAgc3RhdGljIHZvaWQgdHJ5X3NoaWZ0X2NhbmRpZGF0ZShFTEJHQ29udGV4dCAqZWxiZywg aW50IGlkeFszXSkKICAgICBnZXRfbmV3X2NlbnRyb2lkcyhlbGJnLCBpZHhbMV0sIG5ld2NlbnRy b2lkWzBdLCBuZXdjZW50cm9pZFsxXSk7CiAKICAgICBuZXd1dGlsaXR5WzJdICA9IGV2YWxfZXJy b3JfY2VsbChlbGJnLCBuZXdjZW50cm9pZFsyXSwgZWxiZy0+Y2VsbHNbaWR4WzBdXSk7Ci0gICAg bmV3dXRpbGl0eVsyXSArPSBldmFsX2Vycm9yX2NlbGwoZWxiZywgbmV3Y2VudHJvaWRbMl0sIGVs YmctPmNlbGxzW2lkeFsyXV0pOworICAgIHRtcCAgICAgICAgICAgID0gZXZhbF9lcnJvcl9jZWxs KGVsYmcsIG5ld2NlbnRyb2lkWzJdLCBlbGJnLT5jZWxsc1tpZHhbMl1dKTsKKyAgICBuZXd1dGls aXR5WzJdICA9ICh0bXAgPj0gSU5UX01BWCAtIG5ld3V0aWxpdHlbMl0pID8gSU5UX01BWCA6IG5l d3V0aWxpdHlbMl0gKyB0bXA7CiAKICAgICBuZXdlcnJvciA9IG5ld3V0aWxpdHlbMl07CiAKLSAg ICBuZXdlcnJvciArPSBzaW1wbGVfbGJnKGVsYmcsIGVsYmctPmRpbSwgbmV3Y2VudHJvaWQsIG5l d3V0aWxpdHksIGVsYmctPnBvaW50cywKKyAgICB0bXAgPSBzaW1wbGVfbGJnKGVsYmcsIGVsYmct PmRpbSwgbmV3Y2VudHJvaWQsIG5ld3V0aWxpdHksIGVsYmctPnBvaW50cywKICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGVsYmctPmNlbGxzW2lkeFsxXV0pOworICAgIGlmICh0bXAgPj0gSU5U X01BWCAtIG5ld2Vycm9yKQorICAgICAgICBuZXdlcnJvciA9IElOVF9NQVg7CisgICAgZWxzZQor ICAgICAgICBuZXdlcnJvciArPSB0bXA7CiAKICAgICBpZiAob2xkZXJyb3IgPiBuZXdlcnJvcikg ewogICAgICAgICBzaGlmdF9jb2RlYm9vayhlbGJnLCBpZHgsIG5ld2NlbnRyb2lkKTsKQEAgLTMz NCw3ICszNDksNyBAQCBzdGF0aWMgdm9pZCBkb19zaGlmdGluZ3MoRUxCR0NvbnRleHQgKmVsYmcp CiAgICAgZXZhbHVhdGVfdXRpbGl0eV9pbmMoZWxiZyk7CiAKICAgICBmb3IgKGlkeFswXT0wOyBp ZHhbMF0gPCBlbGJnLT5udW1fY2I7IGlkeFswXSsrKQotICAgICAgICBpZiAoZWxiZy0+bnVtX2Ni ICogZWxiZy0+dXRpbGl0eVtpZHhbMF1dIDwgZWxiZy0+ZXJyb3IpIHsKKyAgICAgICAgaWYgKGVs YmctPm51bV9jYiAqIChpbnQ2NF90KWVsYmctPnV0aWxpdHlbaWR4WzBdXSA8IGVsYmctPmVycm9y KSB7CiAgICAgICAgICAgICBpZiAoZWxiZy0+dXRpbGl0eV9pbmNbZWxiZy0+bnVtX2NiIC0gMV0g PT0gMCkKICAgICAgICAgICAgICAgICByZXR1cm47CiAKQEAgLTM1Miw5ICszNjcsOSBAQCBzdGF0 aWMgdm9pZCBkb19lbGJnKEVMQkdDb250ZXh0ICphdl9yZXN0cmljdCBlbGJnLCBpbnQgKnBvaW50 cywgaW50IG51bXBvaW50cywKICAgICBpbnQgKmNvbnN0IHNpemVfcGFydCA9IGVsYmctPnNpemVf cGFydDsKICAgICBpbnQgaSwgaiwgc3RlcHMgPSAwOwogICAgIGludCBiZXN0X2lkeCA9IDA7Ci0g ICAgaW50NjRfdCBsYXN0X2Vycm9yOworICAgIGludCBsYXN0X2Vycm9yOwogCi0gICAgZWxiZy0+ ZXJyb3IgPSBJTlQ2NF9NQVg7CisgICAgZWxiZy0+ZXJyb3IgPSBJTlRfTUFYOwogICAgIGVsYmct PnBvaW50cyA9IHBvaW50czsKIAogICAgIGRvIHsKQEAgLTM4Miw3ICszOTcsNyBAQCBzdGF0aWMg dm9pZCBkb19lbGJnKEVMQkdDb250ZXh0ICphdl9yZXN0cmljdCBlbGJnLCBpbnQgKnBvaW50cywg aW50IG51bXBvaW50cywKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAgICAgICAg ICAgICBlbGJnLT5uZWFyZXN0X2NiW2ldID0gYmVzdF9pZHg7Ci0gICAgICAgICAgICBlbGJnLT5l cnJvciArPSBiZXN0X2Rpc3Q7CisgICAgICAgICAgICBlbGJnLT5lcnJvciA9IGVsYmctPmVycm9y ID49IElOVF9NQVggLSBiZXN0X2Rpc3QgPyBJTlRfTUFYIDogZWxiZy0+ZXJyb3IgKyBiZXN0X2Rp c3Q7CiAgICAgICAgICAgICBlbGJnLT51dGlsaXR5W2VsYmctPm5lYXJlc3RfY2JbaV1dICs9IGJl c3RfZGlzdDsKICAgICAgICAgICAgIGZyZWVfY2VsbHMtPmluZGV4ID0gaTsKICAgICAgICAgICAg IGZyZWVfY2VsbHMtPm5leHQgPSBlbGJnLT5jZWxsc1tlbGJnLT5uZWFyZXN0X2NiW2ldXTsKLS0g CjIuMzkuMQoK --000000000000d2cc8705fb860b90 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". --000000000000d2cc8705fb860b90--