mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
lavf: forward protocol_whitelist for the remaining cases
Also set a default_whitelist for mmsh and ffrtmphttp. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
04a8bbca92
commit
a16018461b
@ -246,6 +246,14 @@ static int mmsh_open_internal(URLContext *h, const char *uri, int flags, int tim
|
||||
host, port, mmsh->request_seq++);
|
||||
av_opt_set(mms->mms_hd->priv_data, "headers", headers, 0);
|
||||
|
||||
if (!mms->mms_hd->protocol_whitelist && h->protocol_whitelist) {
|
||||
mms->mms_hd->protocol_whitelist = av_strdup(h->protocol_whitelist);
|
||||
if (!mms->mms_hd->protocol_whitelist) {
|
||||
err = AVERROR(ENOMEM);
|
||||
goto fail;
|
||||
}
|
||||
}
|
||||
|
||||
err = ffurl_connect(mms->mms_hd, NULL);
|
||||
if (err) {
|
||||
goto fail;
|
||||
@ -410,4 +418,5 @@ const URLProtocol ff_mmsh_protocol = {
|
||||
.url_read_seek = mmsh_read_seek,
|
||||
.priv_data_size = sizeof(MMSHContext),
|
||||
.flags = URL_PROTOCOL_FLAG_NETWORK,
|
||||
.default_whitelist = "http,tcp",
|
||||
};
|
||||
|
@ -220,6 +220,14 @@ static int rtmp_http_open(URLContext *h, const char *uri, int flags)
|
||||
av_opt_set(rt->stream->priv_data, "multiple_requests", "1", 0);
|
||||
av_opt_set_bin(rt->stream->priv_data, "post_data", "", 1, 0);
|
||||
|
||||
if (!rt->stream->protocol_whitelist && h->protocol_whitelist) {
|
||||
rt->stream->protocol_whitelist = av_strdup(h->protocol_whitelist);
|
||||
if (!rt->stream->protocol_whitelist) {
|
||||
ret = AVERROR(ENOMEM);
|
||||
goto fail;
|
||||
}
|
||||
}
|
||||
|
||||
/* open the http context */
|
||||
if ((ret = ffurl_connect(rt->stream, NULL)) < 0)
|
||||
goto fail;
|
||||
@ -274,4 +282,5 @@ const URLProtocol ff_ffrtmphttp_protocol = {
|
||||
.priv_data_size = sizeof(RTMP_HTTPContext),
|
||||
.flags = URL_PROTOCOL_FLAG_NETWORK,
|
||||
.priv_data_class= &ffrtmphttp_class,
|
||||
.default_whitelist = "https,http,tcp,tls",
|
||||
};
|
||||
|
@ -1752,6 +1752,14 @@ redirect:
|
||||
sessioncookie);
|
||||
av_opt_set(rt->rtsp_hd->priv_data, "headers", headers, 0);
|
||||
|
||||
if (!rt->rtsp_hd->protocol_whitelist && s->protocol_whitelist) {
|
||||
rt->rtsp_hd->protocol_whitelist = av_strdup(s->protocol_whitelist);
|
||||
if (!rt->rtsp_hd->protocol_whitelist) {
|
||||
err = AVERROR(ENOMEM);
|
||||
goto fail;
|
||||
}
|
||||
}
|
||||
|
||||
/* complete the connection */
|
||||
if (ffurl_connect(rt->rtsp_hd, NULL)) {
|
||||
err = AVERROR(EIO);
|
||||
|
Loading…
Reference in New Issue
Block a user