From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id A78F44DF8F for ; Fri, 6 Jun 2025 00:30:14 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id B681868C3BE; Fri, 6 Jun 2025 03:30:10 +0300 (EEST) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05olkn2074.outbound.protection.outlook.com [40.92.89.74]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id B354C68C15E for ; Fri, 6 Jun 2025 03:30:03 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=CU/qe+p1azFCSkJbdHmPjdrzopcMHPQSD2qXQjEmy+mFhNV0BL+GZLLOvPOfByie5uwcD/rMTcjIfPyD2Zs5ZhAbxC87OGwPxP8+vnPUinpNJ01kKcuQluErAh/3Jd2QPYeYVMabvSxUVUSqoFL9lp8PXquzRrjul/stOf1Xfc7yY+KleH3Mm2w7Wzo8bnyvfNIa+Pw+PHYVy6+tonTvsUL9p+5BvHHaAXO+HHHW2xB2JTdHAOghxXLbv5QTe/H2FzaUiKjzPlLIHXFUoYxRKNIhU7+dDXHM0LQiBbssFqCmHCYb77jnyjCxhQH9ZES8ij1usBF5kHZp+1dtppiIvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=tAfu1+H19FTcDBTTq8hdTItKWQIpTjM/qvCwZlejANY=; b=VY+2N8u1jykxypT1YvmfNKDMfZZ0fyHRCWmsvvgKncr8vf0UMKZTyxkx8oHMqCCTvgXcDfe3Z4JD7lWFB3aIFieLGTe9D97/UY1ip0By3EgwRHG2Wug1dTUlFb2P0XDcH+QIflcBrRis9yNQ5HidoAnj9VwCY5inqfwZ8PRLY3/aSe55MgpxV+Ou/eun0aVt6L7WLfYDV3eA08OH4dJGLsXDlDA8xPYdST5PaOfYJoTJPyDGMIvdetg9du94Vcw4BqvtOEk3rseVVrnK/k4pET/7skE8bhmbq3C8WJ3RPPEYXMP0I69S6R4IRL58caWkRcdYPWuSVkbYmGmzakyzlw== 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=tAfu1+H19FTcDBTTq8hdTItKWQIpTjM/qvCwZlejANY=; b=DYw6BFjHhBKFPsgebasR/nkY14NY8ZAFkC3V92kUtGS0+/rtDTa9WjOlw/jl0VPMxp130MppgRiLg/k4rIzGMyKwExngSKw2C7CWeP+qs57A9e6w2lqaZvpIfdL7vT49Jp3EHsDXcDlHoqhWqDVavqKX4Cyd6ZuwuPOuEnpa7O+6oFnPJ4mNxJW94jTV2NZsaGzO7ew2vu+ySaxt8FhGS1tg4wbF5DjuyrNorsKH98eiQAIjq26Q4dfrzzgSjxKLYP1Q11eNRaYxMOKYDFbVYfKhp6kRYNRGhagJwdgcJpik3VtUwrdHJ+a1eOOhTRkGkdKGTP9fGMCku/VZZnz+pA== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by PAXP250MB0568.EURP250.PROD.OUTLOOK.COM (2603:10a6:102:282::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.37; Fri, 6 Jun 2025 00:30:02 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614%5]) with mapi id 15.20.8792.034; Fri, 6 Jun 2025 00:30:01 +0000 Message-ID: Date: Fri, 6 Jun 2025 02:29:57 +0200 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20250606001417.143552-1-jamrial@gmail.com> Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: <20250606001417.143552-1-jamrial@gmail.com> X-ClientProxiedBy: FR4P281CA0016.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:c9::6) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|PAXP250MB0568:EE_ X-MS-Office365-Filtering-Correlation-Id: d2626845-1df4-4612-9a86-08dda49144e8 X-Microsoft-Antispam: BCL:0; ARA:14566002|6090799003|19110799006|461199028|5072599009|8060799009|8022599003|41001999006|15080799009|7092599006|3412199025|440099028|12091999003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?K29aQlN0K1VkNG1kRnZjclBSYUl0eUJQcnR6RThFSzlNOHJoVzA0ay90WVRC?= =?utf-8?B?d0lYK0FqVGJ6NkVTTVY1dW5XOWNHU0MzelhVSGltSjVlUjgxZUJGMWZObWlV?= =?utf-8?B?M0F6LzhxVFh0THFBQ3VOeWRqLzV6enZPYWZGWlNWMFJ3aEswR0d6ZUpVeUFz?= =?utf-8?B?bW5kWHN3VU54dWlWSTZZVFRWcGZpL2dPTnMvYlFQejc2ZFFQZ1RUNERJSXcy?= =?utf-8?B?clRqZ0E5QTQ5ZnlhRGxZclowV2JKV1gva2NqdTEvUmpZbXNScVBVeWF2K0xH?= =?utf-8?B?ZEpqWjNDNERiRDYxTXdTOGo4OWVMdXpvVVlOQkRDNGJMMU9HaHlYU2hpTHRN?= =?utf-8?B?Vmx5WHJjYk01ckdoM3VEYi93Mnd5Nys1UUhhYXBYcEsvcFRPRG54ZXhkL3VL?= =?utf-8?B?S0xLR1ZpclkxM24zYUtwUzVyQjlyR0Q3WE43RUJuUlhCczRsWURPc0ZYVjdw?= =?utf-8?B?U2J4VFVta0ZSazh6MHlkV3IzOG5BSHk2Umo0UW1JWEJVaGxLdis4SnFnNlJ0?= =?utf-8?B?WWRFNWRVUlVGSHdaZ1g2MEZpNUZWZGRpWUd2enVUL0ppR0dSMG9BL0tFcUds?= =?utf-8?B?U1VOOXZnVmd4OTdaanZSMnZSbHZEYUcvMlBRTEhXZng0aW1HZzRKakk4QWhK?= =?utf-8?B?SkswRStRd0hTbkVEY012UU9BWVdjWitJeThSUmRzaHk4SE5nditDbjRHNmNW?= =?utf-8?B?TUFuY3FyR2xmT2k3QnJqV3NOQjNITEtXajBEZDVKbm9GL2pKMmJ6N3JpNXVR?= =?utf-8?B?bXBicUtDWHdrRHcvQkhwdjNLWmQ2N2ZFK0NGN1JySjJrNlpVcVZkV21Uc3kz?= =?utf-8?B?WG0xeVBDODY3WklEcjJKSWRGWkRQaDJLcXBxM2YwS2p6V1lQc3NXL1BaTzNV?= =?utf-8?B?NW04M2hiNnB4T3NieGpsUE9EbDBGUWx1RTBSU3BxQkJGL1ZrV1JxUXFsKzV2?= =?utf-8?B?eWRnNm51dVZSSEErWnhJRm9qZXJwTmxpZ2h4aDh4bUtWM0xZQ3B3aFEzSXd6?= =?utf-8?B?elRoM3ZORnVzVWhnMUZuYXFIUzFIb1hMTVB4TFh6Wkx3bW5Ddm0rR1BWdG1Y?= =?utf-8?B?dG1qRHJibU1zaDU3Wkc3NGtVZW4waC9obndndEVoRE1aQ25wMk9QUVJGSjBq?= =?utf-8?B?MVFSTExCOUxLaTBwUzFxZE9xb01jdExsRUdaNEFrNDdHeEw2TGNCajdoSjI4?= =?utf-8?B?VFFYYnhWR1VwR01mNlBOTFBhYXRoaHhSTWVOVUYzK1BtNVgzRHFjSzByN2Rl?= =?utf-8?B?ZUlrVTF0U1dnQjZSamxiVFRoSGJoUm9sSmNuQmtUK3hGRmxCb3IwV2xkQ1dj?= =?utf-8?B?R3BXUlFFL0RpRUdqa0Fnd3lXSWpMZE43aThNUGZ6ZkVZZFFnbFZ1akc3MzNs?= =?utf-8?B?QTZmUUZORnZnL0NlYVo4bXdZSlpjTXJYemZOQW5Oc25CYWVDWHRBdlA0cGF5?= =?utf-8?B?OVhaaittUUtPTTNJWG94STlqRGxwUFhTdDNQMEROSTV5TTNjN29MUlh1ZjZB?= =?utf-8?B?SFZJdDkvdElCdnJzOHJ5Y3YwcHp5c0ZPNThweUJuek5wWmdNY1ZaMzZVQlV2?= =?utf-8?B?b0lsbkNoNWUrNXp1VjJsSXNvTFgvalJLaHRiNlBLQkp1ZFRGZHJNYllPM1pN?= =?utf-8?Q?2oTKWeu32raYk4fA5KhxdtcvYy2IZFThW7qlmhaAfpco=3D?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?S0lCUkRTUXBhU3JsbjhyTFREQytyTVFtZktMZkdGbytTWis1UDh2b3JRb0Vs?= =?utf-8?B?MjNnc2pkRmRmZ0NYcnRtWnQ5ZDFubUFIL0lPVTVOTkZ4UUp1ZDF1Wlk5UlFN?= =?utf-8?B?Y0hjRU8zaFMwUmdGemY1elJUeWFXak1vZnNKVUdwREpCNnJXbnVPMXV4N29S?= =?utf-8?B?SDZEYUxDMHprVFBCdDBRUm9aY2ZMSTFVaHZBdnBMVkMvdmw4ZVloRkZlKzY1?= =?utf-8?B?WnBtUFhMTyszdzVEZ1huNkNWZWxPc0lnbGdLSWNNZ2VacnIzcWV0TGRvckJn?= =?utf-8?B?Q3VYeGw5WUhrbExLMGJvNTVlbkt5TWNrN1JMVnBQbkEvSFRJOTlCOVhLeDRi?= =?utf-8?B?Ump6RWxCQmFNcHg5dEJtYjZUdm9sa1l0MkE4UHcxQ3RpNFpIblFDa3c3QklJ?= =?utf-8?B?bmhFb2NXU09zRDhtU1pxMFV4V1l6dDlnem9wdmJFeVlnbkR6TlhZbzhYNnFV?= =?utf-8?B?K0w1RmRmcUZSaWxqNU1kOTk3TElVUjRmcWNnQ0psOElVbko1ZXlyRWtiem5r?= =?utf-8?B?ZExvRmt5a1g4WWZ5N2tFbnJQVlN2ME1MWHNJU0FDMitCM2JhN0FjRGtjaHhq?= =?utf-8?B?Q0F1NGNXWkpKVHdIQ0dCT0F0MEVjNWoyeW05SWttZXNGSFRSTFdpSElYcVhV?= =?utf-8?B?VWMxWjZvTENXSkdaamhOcVJjeUJWQ00xeTZMcVlHREthd0oyV295cnlvQ0I2?= =?utf-8?B?REt3RVZIcU1nTEdhQVZDUCtNVTBySW40Z1VlSnhnMVdkY0hoektES3RoOXZn?= =?utf-8?B?MlBwSS81RWhFL2xkNmc3VTNnN1dKZ2kraCs0SnIyRElXVDBod2laVHFUZW42?= =?utf-8?B?bmZBNDhvdWtNQ2ErWUlKejFUWnN6WHhkdUNadnFBRThTRkpkd1BGbnRxYktU?= =?utf-8?B?dTkzOEROQXJ0Y1NvZ1cyaEVZYVZzQ01rUkFHYitnK256RXFCTm1KYTh6RXNs?= =?utf-8?B?Y1ZacTc2Sk1rRS9EQXZpV1E0RktuYm5lUnNKbVhSWkpNc2Ria1YybWRLakVz?= =?utf-8?B?RmVLSEVIMEdZZ3FsMHl3RVR3cURoRUlYL0VaUkRncDVhZ1pENVVaOG5UM2FE?= =?utf-8?B?TFhmVEZpM1J6UFhPS0xFckJVQklvc1NxY0RvTUZEMlMvc3k5MGJiQzU1YS8y?= =?utf-8?B?QUhwb2pubTNGZVBqRDk4T0g5TTdua0FsaDRpY0lSZVBrVzRLTFEvdWUzSjZV?= =?utf-8?B?M2xITnFvckt2YnBlQTFVSlg0bXJxRDVySmZYVkxhbWczWUVaL1IxZ1BRM2kz?= =?utf-8?B?Z2RGdDdCbTZMYW5hM3BnM2Znc0VQaGQzOFRvMEl4eWpQZmF0VmJPNGpTUXll?= =?utf-8?B?M21YTWM1eDFldTdRcTl2ejhyM2VNM0hCTW05c3BBdWNtVitOZE1tb2pXNW5s?= =?utf-8?B?OXVhdjdtVjJXZGIwbXgzR0lBUjFtQ2swOWxCdVE2UERHN0M2aDVCMXZpak1w?= =?utf-8?B?dTd1MkNRS0VyUHNtLy9jR3EvQXc1R1h6VlZGcHBzMnlLNHR1SStJbnVBUExk?= =?utf-8?B?RGNrMVZkaE5TTzdieXlkb1hPUTdRcEV6VWFTQ3loSm5LaHVwRW1kWnZ2SlZT?= =?utf-8?B?Wk05RWxqTWhYcXJZTjZkaWpuVWt2eEU5cWxwOXh6blc3QmJxVjBoUTRwSEpj?= =?utf-8?B?VC9YK2VQMTVOVDNHWWtoZHFsOWh1OEczM3o0dWJxejFzWjN2SVFxS3l6UjEz?= =?utf-8?B?ZklZdmtNN1N6cUpZcDVXRXNXS21FNkU1L0JSTlB4RUxaNEJDdFQwejhFMmVU?= =?utf-8?B?dE05QkRVMHZrbWh3SHIwTi95WGdnVHVYdEZmcHpCZ21XaFgxZFU0anpmMlk4?= =?utf-8?B?YjhueGNIVzlMdktwcG9lUT09?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d2626845-1df4-4612-9a86-08dda49144e8 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2025 00:30:01.6955 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXP250MB0568 Subject: Re: [FFmpeg-devel] [PATCH 1/4] avcodec/ac3_parser: use a padded buffer in av_ac3_parse_header() 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: James Almer: > The GetBitContext API requires the buffer to be padded, and the documentation for > av_ac3_parse_header() does not specify it, so use a temporary local buffer. > > Signed-off-by: James Almer > --- > libavcodec/ac3_parser.c | 16 +++++++++++++--- > 1 file changed, 13 insertions(+), 3 deletions(-) > > diff --git a/libavcodec/ac3_parser.c b/libavcodec/ac3_parser.c > index 69989690dd..9065d700e2 100644 > --- a/libavcodec/ac3_parser.c > +++ b/libavcodec/ac3_parser.c > @@ -202,14 +202,24 @@ int av_ac3_parse_header(const uint8_t *buf, size_t size, > { > GetBitContext gb; > AC3HeaderInfo hdr; > + uint8_t *tmp = av_malloc(size + AV_INPUT_BUFFER_PADDING_SIZE); > int err; > > - err = init_get_bits8(&gb, buf, size); > - if (err < 0) > + if (!tmp) > + return AVERROR(ENOMEM); > + > + memcpy(tmp, buf, size); > + memset(tmp + size, 0, AV_INPUT_BUFFER_PADDING_SIZE); > + err = init_get_bits8(&gb, tmp, size); > + if (err < 0) { > + av_free(tmp); > return AVERROR_INVALIDDATA; > + } > err = ff_ac3_parse_header(&gb, &hdr); > - if (err < 0) > + if (err < 0) { > + av_free(tmp); > return AVERROR_INVALIDDATA; > + } > > *bitstream_id = hdr.bitstream_id; > *frame_size = hdr.frame_size; There is no need for an allocation here; (E)AC-3 frames have a bounded size and the number of bytes read by ff_ac3_parse_header() is even smaller. Anyway: The buffer leaks on success. - Andreas _______________________________________________ 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".