[FFmpeg-devel] [PATCH] avformat/avio: use av_match_name to match protocol lists

Paul B Mahol onemda at gmail.com
Thu Apr 21 13:54:45 EEST 2022


On Wed, Apr 20, 2022 at 10:34 PM Leo Izen <leo.izen at 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 at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>


More information about the ffmpeg-devel mailing list