Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH] avformat/avio: use av_match_name to match protocol lists
@ 2022-04-20 20:33 Leo Izen
  2022-04-21 10:54 ` Paul B Mahol
  2022-04-28 12:43 ` Leo Izen
  0 siblings, 2 replies; 6+ messages in thread
From: Leo Izen @ 2022-04-20 20:33 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Leo Izen

This swaps av_match_list to av_match_name inside ffurl_connect,
which allows ALL to be treated as a valid value on the whitelist
or blacklist in accordance with the behavior described in the
documentation.
---
 libavformat/avio.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavformat/avio.c b/libavformat/avio.c
index 4846bbd8c6..d252bec2f3 100644
--- a/libavformat/avio.c
+++ b/libavformat/avio.c
@@ -178,12 +178,12 @@ int ffurl_connect(URLContext *uc, AVDictionary **options)
     av_assert0(!(e=av_dict_get(*options, "protocol_blacklist", NULL, 0)) ||
                (uc->protocol_blacklist && !strcmp(uc->protocol_blacklist, e->value)));
 
-    if (uc->protocol_whitelist && av_match_list(uc->prot->name, uc->protocol_whitelist, ',') <= 0) {
+    if (uc->protocol_whitelist && av_match_name(uc->prot->name, uc->protocol_whitelist) <= 0) {
         av_log(uc, AV_LOG_ERROR, "Protocol '%s' not on whitelist '%s'!\n", uc->prot->name, uc->protocol_whitelist);
         return AVERROR(EINVAL);
     }
 
-    if (uc->protocol_blacklist && av_match_list(uc->prot->name, uc->protocol_blacklist, ',') > 0) {
+    if (uc->protocol_blacklist && av_match_name(uc->prot->name, uc->protocol_blacklist) > 0) {
         av_log(uc, AV_LOG_ERROR, "Protocol '%s' on blacklist '%s'!\n", uc->prot->name, uc->protocol_blacklist);
         return AVERROR(EINVAL);
     }
-- 
2.36.0

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [FFmpeg-devel] [PATCH] avformat/avio: use av_match_name to match protocol lists
  2022-04-20 20:33 [FFmpeg-devel] [PATCH] avformat/avio: use av_match_name to match protocol lists Leo Izen
@ 2022-04-21 10:54 ` Paul B Mahol
  2022-04-21 14:16   ` Leo Izen
  2022-04-28 12:43 ` Leo Izen
  1 sibling, 1 reply; 6+ messages in thread
From: Paul B Mahol @ 2022-04-21 10:54 UTC (permalink / raw)
  To: FFmpeg development discussions and patches; +Cc: Leo Izen

On Wed, Apr 20, 2022 at 10:34 PM Leo Izen <leo.izen@gmail.com> wrote:

> This swaps av_match_list to av_match_name inside ffurl_connect,
> which allows ALL to be treated as a valid value on the whitelist
> or blacklist in accordance with the behavior described in the
> documentation.
> ---
>  libavformat/avio.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/libavformat/avio.c b/libavformat/avio.c
> index 4846bbd8c6..d252bec2f3 100644
> --- a/libavformat/avio.c
> +++ b/libavformat/avio.c
> @@ -178,12 +178,12 @@ int ffurl_connect(URLContext *uc, AVDictionary
> **options)
>      av_assert0(!(e=av_dict_get(*options, "protocol_blacklist", NULL, 0))
> ||
>                 (uc->protocol_blacklist && !strcmp(uc->protocol_blacklist,
> e->value)));
>
> -    if (uc->protocol_whitelist && av_match_list(uc->prot->name,
> uc->protocol_whitelist, ',') <= 0) {
> +    if (uc->protocol_whitelist && av_match_name(uc->prot->name,
> uc->protocol_whitelist) <= 0) {
>          av_log(uc, AV_LOG_ERROR, "Protocol '%s' not on whitelist
> '%s'!\n", uc->prot->name, uc->protocol_whitelist);
>          return AVERROR(EINVAL);
>      }
>
> -    if (uc->protocol_blacklist && av_match_list(uc->prot->name,
> uc->protocol_blacklist, ',') > 0) {
> +    if (uc->protocol_blacklist && av_match_name(uc->prot->name,
> uc->protocol_blacklist) > 0) {
>          av_log(uc, AV_LOG_ERROR, "Protocol '%s' on blacklist '%s'!\n",
> uc->prot->name, uc->protocol_blacklist);
>          return AVERROR(EINVAL);
>      }
>

So this still works if multiple items are provided ?

-- 
> 2.36.0
>
> _______________________________________________
> 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".
>
_______________________________________________
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".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [FFmpeg-devel] [PATCH] avformat/avio: use av_match_name to match protocol lists
  2022-04-21 10:54 ` Paul B Mahol
@ 2022-04-21 14:16   ` Leo Izen
  0 siblings, 0 replies; 6+ messages in thread
From: Leo Izen @ 2022-04-21 14:16 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

On 4/21/22 06:54, Paul B Mahol wrote:
>
> So this still works if multiple items are provided ?
>
It does. Running something like this:

$ ./ffmpeg_g -protocol_whitelist http,file -i test.png

successfully reads the file.

- Leo Izen (thebombzen)


_______________________________________________
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".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [FFmpeg-devel] [PATCH] avformat/avio: use av_match_name to match protocol lists
  2022-04-20 20:33 [FFmpeg-devel] [PATCH] avformat/avio: use av_match_name to match protocol lists Leo Izen
  2022-04-21 10:54 ` Paul B Mahol
@ 2022-04-28 12:43 ` Leo Izen
  2022-04-28 20:28   ` Michael Niedermayer
  1 sibling, 1 reply; 6+ messages in thread
From: Leo Izen @ 2022-04-28 12:43 UTC (permalink / raw)
  To: FFmpeg Development

On 4/20/22 16:33, Leo Izen wrote:
> This swaps av_match_list to av_match_name inside ffurl_connect,
> which allows ALL to be treated as a valid value on the whitelist
> or blacklist in accordance with the behavior described in the
> documentation.
> ---
>   libavformat/avio.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
>
This has been on the ML for a week, can someone take a look at it? 
Thanks in advance.

Leo Izen (thebombzen)


_______________________________________________
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".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [FFmpeg-devel] [PATCH] avformat/avio: use av_match_name to match protocol lists
  2022-04-28 12:43 ` Leo Izen
@ 2022-04-28 20:28   ` Michael Niedermayer
  2022-04-29  1:23     ` Leo Izen
  0 siblings, 1 reply; 6+ messages in thread
From: Michael Niedermayer @ 2022-04-28 20:28 UTC (permalink / raw)
  To: FFmpeg development discussions and patches


[-- Attachment #1.1: Type: text/plain, Size: 1101 bytes --]

On Thu, Apr 28, 2022 at 08:43:21AM -0400, Leo Izen wrote:
> On 4/20/22 16:33, Leo Izen wrote:
> > This swaps av_match_list to av_match_name inside ffurl_connect,
> > which allows ALL to be treated as a valid value on the whitelist
> > or blacklist in accordance with the behavior described in the
> > documentation.
> > ---
> >   libavformat/avio.c | 4 ++--
> >   1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> This has been on the ML for a week, can someone take a look at it? Thanks in
> advance.

protocol whitelist documents ALL
protocol blacklist is undocumented
codec whitelist does not document ALL
format whitelist does not document ALL

There may be a very valid reason but i cannot remember it

also adding entries with - to the blacklist disables them. Iam not sure
if this is great. One could assume that adding an entry to the backlist
would increase but never decrease what is blocked

thx

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Never trust a computer, one day, it may think you are the virus. -- Compn

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

[-- Attachment #2: Type: text/plain, Size: 251 bytes --]

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [FFmpeg-devel] [PATCH] avformat/avio: use av_match_name to match protocol lists
  2022-04-28 20:28   ` Michael Niedermayer
@ 2022-04-29  1:23     ` Leo Izen
  0 siblings, 0 replies; 6+ messages in thread
From: Leo Izen @ 2022-04-29  1:23 UTC (permalink / raw)
  To: ffmpeg-devel


On 4/28/22 16:28, Michael Niedermayer wrote:
> On Thu, Apr 28, 2022 at 08:43:21AM -0400, Leo Izen wrote:
>> On 4/20/22 16:33, Leo Izen wrote:
>>> This swaps av_match_list to av_match_name inside ffurl_connect,
>>> which allows ALL to be treated as a valid value on the whitelist
>>> or blacklist in accordance with the behavior described in the
>>> documentation.
>>> ---
>>>    libavformat/avio.c | 4 ++--
>>>    1 file changed, 2 insertions(+), 2 deletions(-)
>>>
> protocol whitelist documents ALL
> protocol blacklist is undocumented
> codec whitelist does not document ALL
> format whitelist does not document ALL
>
This patch only affects the protocol list, and I could change it so it 
only affects the whitelist, not the blacklist. Thoughts?

-Leo Izen (thebombzen)


_______________________________________________
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".

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-04-29  1:24 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-20 20:33 [FFmpeg-devel] [PATCH] avformat/avio: use av_match_name to match protocol lists Leo Izen
2022-04-21 10:54 ` Paul B Mahol
2022-04-21 14:16   ` Leo Izen
2022-04-28 12:43 ` Leo Izen
2022-04-28 20:28   ` Michael Niedermayer
2022-04-29  1:23     ` Leo Izen

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git