From patchwork Sun Aug 15 12:49:49 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maryam Ebrahimzadeh X-Patchwork-Id: 29536 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6602:2a4a:0:0:0:0 with SMTP id k10csp1200258iov; Sun, 15 Aug 2021 05:50:13 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxYOQmObHWq1h/9SfHKn9XlPyzur5h2AjXFG294rKHRXm8e7Lm5Dt+2KFt+kXRC4L0fkaYA X-Received: by 2002:a05:6402:141:: with SMTP id s1mr14081360edu.377.1629031813305; Sun, 15 Aug 2021 05:50:13 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id kq12si4941814ejb.187.2021.08.15.05.50.12; Sun, 15 Aug 2021 05:50:13 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@outlook.com header.s=selector1 header.b=dThMdSeb; arc=fail (body hash mismatch); spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 19D8668A4DB; Sun, 15 Aug 2021 15:50:10 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR06-VI1-obe.outbound.protection.outlook.com (mail-vi1eur06olkn2068.outbound.protection.outlook.com [40.92.17.68]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 73CE168A0F1 for ; Sun, 15 Aug 2021 15:50:03 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ozia6Ip/COSJa+eNL90BmkXSs0kkGe1Z2J/vd5fnZZUTpcK2ys6G0+BSrNtgrUvPP9mgoPh6FO4XG3WsW7VWTM200giBzXA0RLsv0yPR7hxFDGSI1606LdOyEEjCn52XEdYUY7ojiR445/jCESbttPT1v7taN/vAd3dWozcTnCCTYv3Seayw7zi+LH1fK47LEvYFXd7deumDLXDknwlM+EsT3Q03fq7gKN+6JDNEiscKLf4QVxpANdbW7JOVRndAL3Fg8apa4SjBKBxxv4ii+hTKkoWw+sjQN/RZRhr6h64fWw5LJ3J4ymxajye0wdJjLNhByCvAM5FwaIxW8+KD1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PCQ0gPRInjiutIwoHEQSI5VdU963Hg30VRhzb9vahpA=; b=NI1T4zHt3h0Y/FyLjNNYQYxuaN3WL7R82PUExd9UEEG3qfVMezV7KESs3YdtVdAg8sPfINtV1+RQqrUxafeYNa9XP9Iwj/wXbc3zqqAl8j1Nn6gdHjDIvB/xQfOKH4WNmKgA2M64BvLaVIu94fBbkcWXjlVF+rIA1wVmfe4ZDEDWJFz8oQQhSV18HxNEc7dOR/gSk+K7FnzmbZVutLzBdQ1pzeMZdnPJwweFk8y6SLt3KcR6mzdNBrBXjWEIGvDAgTWNot0yteX/W5P7lxC8FDHX7O3691FYF8LYj+nENA6d05oBZL9Q+z/xSmWikqBHofHjoKtoVirRJeLNhrwH2w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PCQ0gPRInjiutIwoHEQSI5VdU963Hg30VRhzb9vahpA=; b=dThMdSebaKMqBhqX77RjSCd5RaRjfn4z+ka5U1J7StH9Kp+XsJ7yblD//ftvDTwjYOHcnbJUsFas5PE/ZU+4eW29Rj0EIq1awD9ydOsOoE6pqO25kaA57HOXr+eUTTAId2nuH9dvkLWFqcUrFLkzmssspnrFXGq5FBT0xz4hGXRZyDpM43oBieK4i9ZLNIQ7r46+JwZsNqocL6i374yyIIP/q4FGeFV6C0S+EqhImEOWuAKhVqX/q6BOgcZHrJrfvRSU+pjcTT7NO79CdZmje8000Zu/ia984bsx2K2/QoG0ZQ7ryF3x6UxP6kJMEfvv7WMMstHpPyjYmgNFYxFAXA== Received: from VI1EUR06FT059.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc37::49) by VI1EUR06HT246.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc37::358) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4415.16; Sun, 15 Aug 2021 12:50:02 +0000 Received: from PAXP193MB1262.EURP193.PROD.OUTLOOK.COM (2a01:111:e400:fc37::47) by VI1EUR06FT059.mail.protection.outlook.com (2a01:111:e400:fc37::222) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4415.16 via Frontend Transport; Sun, 15 Aug 2021 12:50:02 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:4A4F64AAE87FE72CDA942F0A03352A40982D33E027FD52541BC70B8FB27E3998; UpperCasedChecksum:091D3C9C3DD930E0BA5585B89F96B090C0A522959F7CD75C68F56D3CF4074069; SizeAsReceived:7181; Count:43 Received: from PAXP193MB1262.EURP193.PROD.OUTLOOK.COM ([fe80::b1f9:e0a6:6946:9c81]) by PAXP193MB1262.EURP193.PROD.OUTLOOK.COM ([fe80::b1f9:e0a6:6946:9c81%2]) with mapi id 15.20.4415.022; Sun, 15 Aug 2021 12:50:02 +0000 From: maryam ebrahimzadeh To: ffmpeg-devel@ffmpeg.org Date: Sun, 15 Aug 2021 08:49:49 -0400 Message-ID: X-Mailer: git-send-email 2.17.1 X-TMN: [Y3lKJaibpj7+1eRgC4ZZ8KTo5W6OWCW6] X-ClientProxiedBy: FR3P281CA0026.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::17) To PAXP193MB1262.EURP193.PROD.OUTLOOK.COM (2603:10a6:102:dc::5) X-Microsoft-Original-Message-ID: <20210815124949.2981-1-me22bee@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost.localdomain (5.239.115.203) by FR3P281CA0026.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4436.9 via Frontend Transport; Sun, 15 Aug 2021 12:50:01 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 43 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: a851dbbc-d07a-4637-8296-08d95feb3275 X-MS-TrafficTypeDiagnostic: VI1EUR06HT246: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aoecsffAz0z5Jpj8kgzcJbsMu9HC390AAqk2zmaTa517MzP/c/QP6pEEUDRDAOIxHpNY8rmH8TEq27bRIWqQygHwsfSNa+P4fnjhGvEsZxPtBw5fwWaVFxGSJpHLH291qsNM3E6JvY2uWkBUAIbaD9hbIOAVyftqS+gP3g6C/CDkatZYkxljfTIvi1woamGYwhXR0BoRlc7IxZC/K1XxwTQ8SlFbDJ/Wfg8vMGCSIcIxtyI4P4Ygtd+W7PiP21483gwc/f2KQlJH6NA5o6xDgbVSrRCVfsL75xWSXclLPxjgUt1Jc+wWz39Sluq3wtwzVYgJnfPofc3kfK5O66f25nZkBpCY3rYynWwjXyBjiUN4mLtcy1JssYblmhGLbl/WXlHwfK8BPJZP61078cWP8hPf8/UL6TD60wXbEx6DUGwQ+Smw0GTI2vMilfhR5WW1 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: jkP6PTpAsEnAmtAOmOx1kNGQWhACQVBLLqDONvHNhaYGS8Q2rHvF7OYof3fc4Q/pH/Ft7A8oey+HyhIod+1vO+eeKOl4yk0i30vMikOYhMCEnUYkgpgTEkyVYOlS7yJgtInO/NrH6shZmsuHlyfUFQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a851dbbc-d07a-4637-8296-08d95feb3275 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Aug 2021 12:50:02.1137 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: VI1EUR06FT059.eop-eur06.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1EUR06HT246 Subject: [FFmpeg-devel] [PATCH v4 1/1] avcodec/vc1dec: return value check for init_get_bits 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" X-TUID: 1D11AIWq6Aes avcodec/vc1dec: return value check for init_get_bits As the second argument for init_get_bits(avctx and buf) can be crafted, a return value check for this function call is necessary so replace init_get_bits with init_get_bits8. --- libavcodec/vc1dec.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c index 1fb1950ade..0f7c07f2e8 100644 --- a/libavcodec/vc1dec.c +++ b/libavcodec/vc1dec.c @@ -444,7 +444,9 @@ static av_cold int vc1_decode_init(AVCodecContext *avctx) // the last byte of the extradata is a version number, 1 for the // samples we can decode - init_get_bits(&gb, avctx->extradata, avctx->extradata_size*8); + ret = init_get_bits8(&gb, avctx->extradata, avctx->extradata_size); + if (ret < 0) + return ret; if ((ret = ff_vc1_decode_sequence_header(avctx, v, &gb)) < 0) return ret; @@ -770,8 +772,11 @@ static int vc1_decode_frame(AVCodecContext *avctx, void *data, buf_size2 = vc1_unescape_buffer(buf, buf_size, buf2); } init_get_bits(&s->gb, buf2, buf_size2*8); - } else - init_get_bits(&s->gb, buf, buf_size*8); + } else { + ret = init_get_bits8(&s->gb, buf, buf_size); + if (ret < 0) + return ret; + } if (v->res_sprite) { v->new_sprite = !get_bits1(&s->gb);