From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <ffmpeg-devel-bounces@ffmpeg.org> Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id B29C74D0E5 for <ffmpegdev@gitmailbox.com>; Wed, 16 Apr 2025 02:52:35 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 58CCF687DB6; Wed, 16 Apr 2025 05:52:30 +0300 (EEST) Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10olkn2048.outbound.protection.outlook.com [40.92.40.48]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C8319687CAF for <ffmpeg-devel@ffmpeg.org>; Wed, 16 Apr 2025 05:52:23 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=tbIHab29MdAgtX/KzMUuR1e8f4esOGu6KAuZJnb45FQ4A1viczx/KoEj+n9g4JWcfefKkQJuAzOLPSH3EwU9iXo78f89cWDkBuw35xBv6GrmzRBE1RjXfjwuDgRIQkevO3mtXHor/ST6/q+Gjpg8bedbsjja+NJwuOMEjlDMnPHJB7GGo4EhuFGmwcaQkNx2K99I6vk6ySOgDTecfA5OD9uv+tsXfSx4Qy+fIkQHtY3ioUfroP6RQO9DOyRZLUCVTH2Ei4ZiJFD0kgU1RPq1M/YOJgRcsYPx7M5WXv7JsoYOhaajvP6IWmkm8kkFTu2m1au6H0f7JTBqhHXUfrGQkw== 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=bd9KNeI8f2D1w6hWoo3m+BMjauXzeBugW9+VTbDhxrs=; b=hYM/o1V9t9x0Ih/JpFa/G9JvwNZbtk8DCiIi3jWXQgk+B2UjiEUKeub7R/7qY+4FASLKO8B+T8Pozxej/3RTSxv6oOM9NJZsWQZGKiVWj8VvMzLl8GYlLFHxFnbJJpoHnexluBKBmvOOW/coSmtXfMYVAP5ql2bdFagslIdXZQ86QDlqOqynm94QVV8lZh9mRckZgmDvfyNsrvNPVSb0sc5vnI54TUM00pC7oOPYGouGfooSChIb3sSL1lw2vrV6ojFoVyXJ/AgNHwzABC1KUfdFOKNYaPMNJ6wMMZMLKzf+zqyTftJXxk6/5gNon2zgK8609QzDT1xDBEqcuh+TVw== 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=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bd9KNeI8f2D1w6hWoo3m+BMjauXzeBugW9+VTbDhxrs=; b=c970NQjbrJv999XKu9YcgJib/wGuvkSrBtv31vw53DY5u0H6L+6i8l9yDqMAVBB0vL6Axrf0e4JXYFpNytcRDP38QR/tM9gA3u9a4ithLjyipUbAEG2pHZVllGwX7IVIrXQqbtPPRSkcRkTsVLQ6tiidub5lei1n1O7MK67hylksKBVoGBdC1IvgR8857o8zzHtjh4OLm9BqZqIRY7CgbTp/oduRJuBQ1B+v9kVwWt9DXddoKPMsegSHK3RofXQoGxjSLkk1GGR/VVgMv/u3cf9rD6ZqlnZ17V07eQktNOQEkg4rdQv0OLkOeVIjnUPg9T+nZ4PjU6/XovtsKQs0jw== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by CH0P223MB0186.NAMP223.PROD.OUTLOOK.COM (2603:10b6:610:f7::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8655.21; Wed, 16 Apr 2025 02:52:21 +0000 Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::bf09:8e9:b07f:98a7]) by DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::bf09:8e9:b07f:98a7%4]) with mapi id 15.20.8632.030; Wed, 16 Apr 2025 02:52:21 +0000 From: "softworkz ." <softworkz-at-hotmail.com@ffmpeg.org> To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Thread-Topic: [FFmpeg-devel] [PATCH 2/2] avformat/id3v2: Check that decode_str() did advance Thread-Index: AQHbqzD6b8QhS9IB3U2xSLilkCUpvrOfQsxwgASOQgCAAAZwAIABQhQAgAAFo+CAADvZgIAAAb7QgAAop4CAAACN0IAAAsaAgAAU7BA= Date: Wed, 16 Apr 2025 02:52:21 +0000 Message-ID: <DM8P223MB03658C2F1D76A2E9901E6F77BABD2@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> References: <20250411222719.2779176-2-michael@niedermayer.cc> <DM8P223MB0365A90C10FBC9EF6512F9E1BAB12@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> <20250414231950.GN4991@pb2> <DM8P223MB0365928500AB53069869DC99BAB32@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> <20250415185538.GR4991@pb2> <DM8P223MB0365E10D38EF9174A32557DFBAB22@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> <20250415225001.GW4991@pb2> <DM8P223MB0365EFE83DE448577271D852BAB22@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> <20250416012145.GE4991@pb2> <DM8P223MB0365836071D915E428907879BABD2@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> <20250416013339.GF4991@pb2> In-Reply-To: <20250416013339.GF4991@pb2> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM8P223MB0365:EE_|CH0P223MB0186:EE_ x-ms-office365-filtering-correlation-id: be23aa63-eb3e-4831-4c22-08dd7c91b561 x-microsoft-antispam: BCL:0; ARA:14566002|461199028|8060799006|19110799003|7092599003|15080799006|8062599003|3412199025|440099028|102099032|41001999003; x-microsoft-antispam-message-info: =?us-ascii?Q?4dP5fZOag6vFcUfZFuWl8S85r36nF+AolfheyaUz6HXaI4r1xKOFAvPPNFi9?= =?us-ascii?Q?zZ6opEB4URIzeLrxBV32cpUtMIEag4YDd5Y7p1y/NZRgtwXDojTQo4vgDMTn?= =?us-ascii?Q?4VjeogxLQeD5z65TjZDWbxsb+EG1lKZcom0HM1Rsze2S+BYazjV/eFKYisIr?= =?us-ascii?Q?zzxOxt10w3c/Cya0DVlsI4TA/CrSssHKagFpARCMPI5T+pnrGPe6Yzo71R4B?= =?us-ascii?Q?ZEJedA3Uy4BC8qTGC+xXv5oiouHzRjVfuk4pZtM/xHVw3wjPNDavTdeBK9Wx?= =?us-ascii?Q?45WWs4NMNMlNOKlsHV2LDDIEwT2OfuDGa6cdoV8C4EiUzOXALQ5ZF+YYW2QM?= =?us-ascii?Q?DM0UG6ir1t/QMxfFxlnUA5EwcqnT8/iAyLVE5ZxsC+0HOfbe4A04ZHj2NDxA?= =?us-ascii?Q?PkN8v7yykVcUROiwM6APTlto3CKrd05l+xBkwbCZ0Ah9k6cJC+yE4Sfq3im+?= =?us-ascii?Q?5oefzw9//GxcDoG4K8lTLQV0XIFeT0rus30GAqKrBYcbcLH2yxhQ0rzH7NOq?= =?us-ascii?Q?WVqlyyPfk4vhq0iZfrygBR88MVG5q0VcMaqP9iByXgTJmCskU2S7CPPYjpy5?= =?us-ascii?Q?L/V/UcOB9GKnHOlw9ql4SMnk5KOEGuqrkAcTeQ/cFpYf4lfK1cp6y0R0sIqS?= =?us-ascii?Q?MYSLh8XTUb5XLrkJ8J350lvNnwBmD2SvO0FpSD6yFHW6hMxlbfV2+2aJsQO7?= =?us-ascii?Q?EDE9DShZ8/91nnmNyqmnQsCxMy0Qi3IWNvrY9HHseCIzV1pf8GBpoA365x48?= =?us-ascii?Q?jYQj3LH3SY+pEFfYLb7FkndmYlnItGs9wyCxs/zZTihJhBWSULDVsvVyZX8W?= =?us-ascii?Q?1cxTuuZrOKoHOKsL64yyXPtc6O8pLYosfwx8DGjx0Hf8NOQ5fzey5l3KnZU7?= =?us-ascii?Q?m2joZPhpmvg3vEFPrO/VzAq0i1P+rKDSOHuOYNCU0w5thh/FBCuGVL+oGybZ?= =?us-ascii?Q?KQx3zomF/1dHlxohsZfDU/fT0+SrqEhHfxaVKqZ5HRL+0PtrtjlUxLYfjKeo?= =?us-ascii?Q?D/L2iyG3Srx5gTtRDeXtG0gS1i8EXzAjEtli6YiqegQZgNkDkOC04aNezv5q?= =?us-ascii?Q?tNKu1kJyvGy2SupKQNbS2dckEFtGkFGc6ZOLKM8P3Rw3RlUs8JPJquei4eCo?= =?us-ascii?Q?KkUQ+DUvTOnhKrV4CYD0VmQEoXLi3PCU6A=3D=3D?= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?ur0bpL3FqDOkKk1UuGPE/gEkiz60sgkSG3MYKp8PdY5g3vSjPds5a9bKZ0+i?= =?us-ascii?Q?kt3spXj1KoG61UBnF42k+pOe4S6F4B8uK61CEp1qAATRsYYXvd/fkE6AiXLJ?= =?us-ascii?Q?VNvnr+HxwXbkc/Icj4s+eZRzaWF/WwbjIZpAjcpzpyyGuyYrmGkdeF00O+3b?= =?us-ascii?Q?R3/AW7G2yGQW4mfJ/tySzcWhyYdTSPCHOGct+E+CEq5EJrI4U0T/3sbehUXp?= =?us-ascii?Q?i2FWVB7q1EfUA6f30eT2pvBrbJLnShY9HuqQtxYu8qYvENnh+Ausmzxwb1Mj?= =?us-ascii?Q?+jZeXU1LXnGtKkNt7jYEP33MeFQ60aJz2UgHRfT5Fkc4Cg908heVR57tR/d3?= =?us-ascii?Q?QXzWL3nn/vIy+KzQ0eGz9BCR14YUksBkNeuPqY63xaxtuSezxkn2TWo9KXCU?= =?us-ascii?Q?Oo/sacWJC0GP26X25WFINph+rDbwla3VxDnmbCyrz9bNDkiHvg7a8qh+e9R0?= =?us-ascii?Q?2zQBooV7CxpCfJQo7xaQMOcC50jytRq845UOLhRI8+SOd0guG2TqLyxYimMl?= =?us-ascii?Q?j0++UydapUKpA7FNpDwruu+9E+QSn6JWd5jCVzoednaWnlGdU3YXQXl/cEDi?= =?us-ascii?Q?p+SdxNMLLzcsQO7zOVRWqvgRPwhlvKNwKU8k/RzVhX0nHxppTaDguN4uCEaY?= =?us-ascii?Q?qH8PzB70LfoLsaBxLFgbQAVKLm3xt/LklUbf6E5QmmWCqNmcaZXJ98L7ehJa?= =?us-ascii?Q?nRe1Tl83OtThWSc3y26NymY/neCQyvDNLhpUwKA3/ERQyJKsBbSreBMZRS7V?= =?us-ascii?Q?/MYzevLLe2Uh7YPdMhRkfIWp4vtwfvZkKQGFhj2gG/OaWY0w5n/8DxnvvYKf?= =?us-ascii?Q?MBd4/j8kE33qmXiWUpQ2ui8uXQ2DvehEqb9rY2nf/+QzrsTSQZn9YE/nY5dX?= =?us-ascii?Q?tRKY3YmsfiDEXEqRFgtQdfVHEf5aP7z3HcVSEy8H2SyhSQOMLF1zgUrIovNU?= =?us-ascii?Q?jiKViGPE1uB5oERGjckwCREx4AZhPG23vB6zC3E4OvDrK7pmxvcTKzJFA24m?= =?us-ascii?Q?kMxSm/CaUeXlhGeb5rkqIpSN8Npv8a/45zq9OEt6NEqLD2x9apy/zpgI/yZ6?= =?us-ascii?Q?TSgixt6SCIXytxNSM4TRfHzoAJJfOqcSy6rIoesNcKea57JJ7nIRdFb/hapu?= =?us-ascii?Q?9wURXixKhjlZDZ5xkYH0mrL18enQib3aaflUvLFepgRBYNZWUMLnlNnG17mj?= =?us-ascii?Q?6D5N8kqSV3jtw8pvvzQynC6nmy30l2dDEO9X89ouwn/J+ZX4wx2YxVSFBjc?= =?us-ascii?Q?=3D?= MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-7719-20-msonline-outlook-92255.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: be23aa63-eb3e-4831-4c22-08dd7c91b561 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Apr 2025 02:52:21.1288 (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: CH0P223MB0186 Subject: Re: [FFmpeg-devel] [PATCH 2/2] avformat/id3v2: Check that decode_str() did advance X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org> List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe> List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel> List-Post: <mailto:ffmpeg-devel@ffmpeg.org> List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help> List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe> Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org> Archived-At: <https://master.gitmailbox.com/ffmpegdev/DM8P223MB03658C2F1D76A2E9901E6F77BABD2@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM/> List-Archive: <https://master.gitmailbox.com/ffmpegdev/> List-Post: <mailto:ffmpegdev@gitmailbox.com> > -----Original Message----- > From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of > Michael Niedermayer > Sent: Mittwoch, 16. April 2025 03:34 > To: FFmpeg development discussions and patches <ffmpeg- > devel@ffmpeg.org> > Subject: Re: [FFmpeg-devel] [PATCH 2/2] avformat/id3v2: Check that > decode_str() did advance > > On Wed, Apr 16, 2025 at 01:29:02AM +0000, softworkz . wrote: > [...] > > > > This will cause deserialization errors for many people in the > world > > > > who are processing FFprobe data. > > > > > > As said, ffprobe should not produce troublesome output First of all, any patch MUST NOT introduce behavior that goes against our own specifications. >From avformat.h: /** * @defgroup metadata_api Public Metadata API * @{ * @ingroup libavf * The metadata API allows libavformat to export metadata tags to a client * application when demuxing. Conversely it allows a client application to * set metadata when muxing. * * Metadata is exported or set as pairs of key/value strings in the 'metadata' * fields of the AVFormatContext, AVStream, AVChapter and AVProgram structs * using the @ref lavu_dict "AVDictionary" API. Like all strings in FFmpeg, * metadata is assumed to be UTF-8 encoded Unicode. Note that metadata * exported by demuxers isn't checked to be valid UTF-8 in most cases. * * Important concepts to keep in mind: * - Keys are unique; there can never be 2 tags with the same key. This is * also meant semantically, i.e., a demuxer should not knowingly produce * several keys that are literally different but semantically identical. * E.g., key=Author5, key=Author6. In this example, all authors must be * placed in the same tag. * - Metadata is flat, not hierarchical; there are no subtags. If you * want to store, e.g., the email address of the child of producer Alice * and actor Bob, that could have key=alice_and_bobs_childs_email_address. * - Several modifiers can be applied to the tag name. This is done by * appending a dash character ('-') and the modifier name in the order * they appear in the list below -- e.g. foo-eng-sort, not foo-sort-eng. * - language -- a tag whose value is localized for a particular language * is appended with the ISO 639-2/B 3-letter language code. * For example: Author-ger=Michael, Author-eng=Mike * The original/default language is in the unqualified "Author" tag. * A demuxer should set a default if it sets any translated tag. * - sorting -- a modified version of a tag that should be used for * sorting will have '-sort' appended. E.g. artist="The Beatles", * artist-sort="Beatles, The". Especially: * E.g., key=Author5, key=Author6. In this example, all authors must be * placed in the same tag. I think, this tells very clearly how it's gotta be and how not. Best, sw _______________________________________________ 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".