struct concat_data *data = h->priv_data;
struct concat_nodes *nodes;
- av_strstart(uri, "concat:", &uri);
+ if (!av_strstart(uri, "concat:", &uri)) {
+ av_log(h, AV_LOG_ERROR, "URL %s lacks prefix\n", uri);
+ return AVERROR(EINVAL);
+ }
for (i = 0, len = 1; uri[i]; i++) {
if (uri[i] == *AV_CAT_SEPARATOR) {
uri += len + strspn(uri + len, AV_CAT_SEPARATOR);
/* creating URLContext */
- if ((err = ffurl_open(&uc, node_uri, flags,
- &h->interrupt_callback, NULL)) < 0)
+ err = ffurl_open_whitelist(&uc, node_uri, flags,
+ &h->interrupt_callback, NULL, h->protocol_whitelist);
+ if (err < 0)
break;
/* creating size */
.url_seek = concat_seek,
.url_close = concat_close,
.priv_data_size = sizeof(struct concat_data),
+ .default_whitelist = "concat,file,subfile",
};