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 3C0804A086 for ; Fri, 23 May 2025 21:06:13 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 721FB68DF95; Sat, 24 May 2025 00:06:09 +0300 (EEST) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12olkn2025.outbound.protection.outlook.com [40.92.22.25]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 41DC568DA81 for ; Sat, 24 May 2025 00:06:02 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=djJkfaq7XFik3ksiIuH7zxX4eLdUO3F9UVJ4V7eAcYot69IYmZN8cr/VPOL02XIVU0TpTEox5T4/eXqZ/44APJj2TA0JhNtmznQXxZYFPteJy9PoR9ZEQDD7HgeLiNnMNkzOPlyacW4OiYrJDyGiZMwAKg87b9Q6xrcXwOoofYN42KucElXH78007kj1KF2ZBJQORyBEaFcmBvzgt2t426KIuaxpPfehzxWwRSt+uxKO7N7mWXkM/7RylU/bZs4qePq49QTmw8j+wI7sYQCVL6a090jItSie35FGG0a492pXMe2mTnLF8VabhLr/wqfoophLX4WVc/xcC1w7yYf/QA== 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=788lM/G7MQN5H0orsQlQgVjXjyKOmpOch1Uj0M3QQKU=; b=m7qegSzBiZp3ofzRDwsiNLHrkwH2OFdTtaT+pXlnx56q48Ep9V4xus1fLAweHfbiSeYo+9YbPn3PdtKMJ5EJt9NUh5QSQWWcAy0Ni2Vt4RmiGPOp1KtpEUGvAFKRG9RFjJt5hs4lj/jnl0xx/B5XqbZffUNY0SRIhXQE/DrA57tqdqjIZTkx0I4gwd44VVRr3xntZcy0hXqP0pzvD/BizO+hB02VVcivJwOUhmlv4WnSz6cjc6+22NtXydIe6cwkCHzWy+4RQiQzdTqoNEUDLdingPMeyNiYdiloPBTlOKkU/xS565pq2CSfUkCxl+zI+zZvWYuYuRb3Wt+Es/Nbhw== 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=788lM/G7MQN5H0orsQlQgVjXjyKOmpOch1Uj0M3QQKU=; b=SDCoMG7NrmDhx78z6Rpfryf7YL+GoKcszrbyRxuc+GCH100yyDJMDGwLHU2tfzoW/1VDyADR/7PhPJb32xgiFMDZjch2SliuBU38Dk+dIMh8JVS+ICykDDdHQqrkPHQ7Zu3Npl/Vvzb8t0X2hAVEF0vikfEtnYVsJEwCTqqNs7kIAn5dpzUEk4IR/41WekEpqrdvNpcoxbHfJRKTpOirifP49jbg5q+IwijjYRTz/L88KWDWHvsuTmjxPusO3cArAgGRFXvLsAgGEx1ZGIXnKkZGKv1j9SUWenvAITY0lM3UAuOFCWzKzNZNcTZMflCe2Z+l9YTeor1T2Tp11RhZEQ== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by SA1P223MB0702.NAMP223.PROD.OUTLOOK.COM (2603:10b6:806:25e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.21; Fri, 23 May 2025 21:05:59 +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.8769.019; Fri, 23 May 2025 21:05:58 +0000 From: "softworkz ." To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH] Percent-encode URL paths in HLS playlists Thread-Index: AQHby/Jt+j0aMVzwlkW02b59s3rNGbPgq2yAgAAHDDA= Date: Fri, 23 May 2025 21:05:58 +0000 Message-ID: References: <04d464cf3931b2ebda4915b341317bc8ff1cc7e2.camel@treehouse.org.za> <5018f03c-8673-17c3-23d2-50e53dd5effc@passwd.hu> In-Reply-To: <5018f03c-8673-17c3-23d2-50e53dd5effc@passwd.hu> 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_|SA1P223MB0702:EE_ x-ms-office365-filtering-correlation-id: 07e13ca7-ebc6-45ce-5b86-08dd9a3d9dcb x-microsoft-antispam: BCL:0; ARA:14566002|8062599006|7092599006|19110799006|15080799009|8060799009|461199028|3412199025|440099028|102099032; x-microsoft-antispam-message-info: =?us-ascii?Q?eLA2PFJZC6vRPJhz7l3F0z236cmZZBvKGnKY0R1viFddVWZ0eAcjZ6h7fRpV?= =?us-ascii?Q?iOA3AWWj391/1hYrTW85ihHFZuOPtsi10tFeb7Hu+YVC8C2MsRJGYqwW3kk+?= =?us-ascii?Q?gODQtZY++GMNFbFdzeey5xn5RArrmEyWhcE+K7HDk+PZgD7cv9EwMPvbIWgG?= =?us-ascii?Q?XSvnP1BCFjBOyYot/3SaK1b14oE4eu9TsPymck7QCs9iaBaXoYadtZFZMcvT?= =?us-ascii?Q?B338C2lkGVQtEcCr7axpkMZuC6KUgbo4uIymQj9CQPZORJ7N0oWRet8YGkFR?= =?us-ascii?Q?P8AciYtbqEJsxGlKCwIHeJxqjqXovQfsxuX1oDBZ0ND6+QqCu/POcPwe+YVU?= =?us-ascii?Q?1eAq4Rg65R9W0H9Awugrs/GEv16i7s6s20lY6OrfDLGEIOXNzRdfLUgGcGpC?= =?us-ascii?Q?GvHi6h2cXHzy26J3vxvi3CDX27sOkC5hE9KfCw1WV2zoZMZ0fM7lqojR9/kQ?= =?us-ascii?Q?bHuCQ+w9RyDbaG9c9p+gTmYUyz2gN4L4TV745arqHGtwa/3p+OmIBexm/mwn?= =?us-ascii?Q?JJ3KPn9NmpAkoBRcbzZTT7ByuhYUgeSkmbsMr3j5AM3UfXulfUvBXRFV/No0?= =?us-ascii?Q?XUQ/R9h+rmNsTRMNg7K70EDK4TZ1k2iscXmymAAk+Ya4G/atSMMKJXnrGQlu?= =?us-ascii?Q?DMYw8Tq790ILoqL9IRm1k4/W1tHFKxR3isVcXT8tQ+mhIm2h0pkzru6tMnyk?= =?us-ascii?Q?a9ZFVlhrCEmCsMqSIfdFRNWD15C0YGHRlseIbfsaN5EXs20oJGUtkUoB4cyU?= =?us-ascii?Q?6y+pPZLetDlQk/O1XKxI/KsvGrm+GkcJPCsjwRbILtYYIYaBZzq6BueYi25/?= =?us-ascii?Q?ryppBSlIeWluTUFeyJJ0qQAN/9eKXhc6Fr8igbystS79wgdfv4GB0h4bCsau?= =?us-ascii?Q?k2OGO6OFAAfhNFbhmywwexxuGgRWjgriRX0rxrepI6r9jmJNBln5WMc0mKRV?= =?us-ascii?Q?APoVjTGHuFwHewFaw2rOEG+rROojRWIuIkhyS93RAVF5R6Na8K8tQZLQ2DwQ?= =?us-ascii?Q?rcCPAkAuP3CgXD5ioKVOjlFqR5oZrPW2pBn2NQDE01fZ1zH5rupSKHv5o3Hu?= =?us-ascii?Q?vvpW3rn9sfxf508XRY52ZbcMwQGM+7f8N6dcJbM9NMJm6faqvt0=3D?= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?EOQHZZSHNRiwHL4RO4y3MkMmWA14wj4Q+w+OY4jSiQMkLHou541odZ6o3DGI?= =?us-ascii?Q?nN0OpTRpjz5qQrQ48yr9iBE4Xb4M3h7Y//BiK2t4YxGYx3w71TcV05dZRu5v?= =?us-ascii?Q?Tl+MHWjOyCIJVujKTqe6pbBHV7x9RpN9QRJHd4oJtuiK1wXbPAM9SV8VwpNL?= =?us-ascii?Q?zVnC5fRj86TzblkC+aNZLo9jXmc3Gu+NwZlkdAE4vMWUiq4IXVRYx+OzDcsu?= =?us-ascii?Q?m1MNIhTt2b9xWugh5oJ4lLX4Z1tEszbuS27AOQ4xPxWnScyJkPSzxkNShysR?= =?us-ascii?Q?3eNZdS774TltJcjpDaxq4xtnk98YLkJCVkuOQItFO2tyySuD3eiwgXZXK/a0?= =?us-ascii?Q?9tKHlsd+JQ7icWoOkzCofuDP0IUBlrami7FmMj49kbwH/iLiXE85te7D9Ggn?= =?us-ascii?Q?PLg0qC0JhcNojbXxHJ4zME9yLqp3qS2a2z6ZY8gcYn5RdjJiRF6dGI/J5zB0?= =?us-ascii?Q?tPwKuvpdsDF0UgKmBOSRjDp3wU5YeE1rOKeo9M4MfrGEgNjvj3mF5zLq5Kj0?= =?us-ascii?Q?tzb5a1dNKdQz+uZkI479tUYtA/7bPQ49NJl5sCScXI21ifbdoAI1KUA3nRpL?= =?us-ascii?Q?dDRWtHxGzoy4cD7O2xhSvpy8kEW2CjEc0hqIYNJR4jH+vT/Vs0pNAIo0hR00?= =?us-ascii?Q?/nGii+D1sTguoCKwmgWghQSROshc156eoPqm30dbseZ9QNfHkfyQkTEA4imw?= =?us-ascii?Q?N/w+4b8LU2688BJjnc9RlfTajwtlvSzsNT1eLqydSYGwF+nTXaYDSwKbu83s?= =?us-ascii?Q?UAMkSaoRbgjrv96xbWtx3svJwtxm4qeovKq+IXmA22PHKgiroRcz045KnqC1?= =?us-ascii?Q?uofsbzeE05A9jWu9Kwc84XCK2ENJCr/vXLdyy2KwJU5WPRzCBvdoSnU+9JKf?= =?us-ascii?Q?o2UubCR/AULf6ycA08iFnjbfD4ryGdxZDpRnewodA34NJER/yCEud1jEtQCT?= =?us-ascii?Q?0EgSOPBi+DV9kTW84cqiOlJA+rKzm6jLOIdna+eG4WNEhhI2v63qXbm7BDBK?= =?us-ascii?Q?T/FCBzjOBsjjmx1FyOqBQGbMGhAKbyvjlOwxpyBLKLeUEEjb0lm4K/OdQq8Y?= =?us-ascii?Q?xZn0+s/Dm3CA3QduLvEMIQdOdln517csbflhxcmWkMN+kWK877MHWYQcA27k?= =?us-ascii?Q?RD2e0YyaK2xqP13nD9VX/ykkSABoGQeCOoW4J3eU0WT///nEjDPMIFM5AU4S?= =?us-ascii?Q?P6P/zktmU0LUeu5ba4Emjzwby0b/2ZDEgKaG3dbSf+iVJsD8xa3cVFJUj6o?= =?us-ascii?Q?=3D?= MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-8534-20-msonline-outlook-c7cf3.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: 07e13ca7-ebc6-45ce-5b86-08dd9a3d9dcb X-MS-Exchange-CrossTenant-originalarrivaltime: 23 May 2025 21:05:58.7421 (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: SA1P223MB0702 Subject: Re: [FFmpeg-devel] [PATCH] Percent-encode URL paths in HLS playlists 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: > -----Original Message----- > From: ffmpeg-devel On Behalf Of Marton > Balint > Sent: Freitag, 23. Mai 2025 22:31 > To: Timothy Allen via ffmpeg-devel > Subject: Re: [FFmpeg-devel] [PATCH] Percent-encode URL paths in HLS playlists > > > > On Fri, 23 May 2025, Timothy Allen via ffmpeg-devel wrote: > > > This commit closes trac ticket 10679. > > And what if the M3U8 is referencing absolute URLs with scheme? Or is using > a data URI? Or if it is a local DOS path? What if the URL is already > percent encoded? > > This issue is not trivial to fix, so I really meant it when I wrote that > its worth checking what heuristics other software is using for this issue. > > Thanks, > Marton I agree with Marton, it cannot be done that way. What I had actually in mind was a more targeted approach: 1. If the playlist has absolute URLs => leave them alone - we can assume they must be valid 2. If the playlist has relative URLs => don't touch the base URL. It is already working+ (otherwise we couldn't have loaded the playlist) => only percent-encode the url fragment from the playlist For Marton's additional point about the relative URL being URL-encoded already, you could check for a list of chars that are disallowed in URLs (excepting percent sign). Then URL-encode only when such char is present, as that means it's not URL-encoded yet. The edge case of a percent-sign needing to be escaped is probably negligible. 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".