summaryrefslogtreecommitdiff
path: root/libavformat/url.h
diff options
context:
space:
mode:
authorMartin Storsjö <martin@martin.st>2015-02-28 02:00:50 +0200
committerMartin Storsjö <martin@martin.st>2016-03-24 10:34:19 +0200
commitfab8156b2f30666adabe227b3d7712fd193873b1 (patch)
tree025734e80fdf8862c1769bb039d1d895e1bf82c8 /libavformat/url.h
parent564b4591bbe223bdc5f36a1131eaef103f23f5d0 (diff)
avio: Copy URLContext generic options into child URLContexts
Since all URLContexts have the same AVOptions, such AVOptions will be applied on the outermost context only and removed from the dict, while they probably make sense on all contexts. This makes sure that rw_timeout gets propagated to the innermost URLContext (to make sure it gets passed to the tcp protocol, when opening a http connection for instance). Alternatively, such matching options would be kept in the dict and only removed after the ffurl_connect call. Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavformat/url.h')
-rw-r--r--libavformat/url.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavformat/url.h b/libavformat/url.h
index 408c674ddf..5cbfd1a942 100644
--- a/libavformat/url.h
+++ b/libavformat/url.h
@@ -137,12 +137,14 @@ int ffurl_connect(URLContext *uc, AVDictionary **options);
* @param protocols a NULL-terminate list of protocols available for use by
* this context and its children. The caller must ensure this
* list remains valid until the context is closed.
+ * @param parent An enclosing URLContext, whose generic options should
+ * be applied to this URLContext as well.
* @return 0 in case of success, a negative value corresponding to an
* AVERROR code in case of failure
*/
int ffurl_open(URLContext **puc, const char *filename, int flags,
const AVIOInterruptCB *int_cb, AVDictionary **options,
- const URLProtocol **protocols);
+ const URLProtocol **protocols, URLContext *parent);
/**
* Read up to size bytes from the resource accessed by h, and store