summaryrefslogtreecommitdiff
path: root/libavformat/protocols.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/protocols.c')
-rw-r--r--libavformat/protocols.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/libavformat/protocols.c b/libavformat/protocols.c
index a97aa1008d..c1e9989a0a 100644
--- a/libavformat/protocols.c
+++ b/libavformat/protocols.c
@@ -162,3 +162,18 @@ const URLProtocol *ff_url_protocols[] = {
#endif
NULL,
};
+
+const char *avio_enum_protocols(void **opaque, int output)
+{
+ const URLProtocol **p = *opaque;
+
+ p = p ? p + 1 : ff_url_protocols;
+ *opaque = p;
+ if (!*p) {
+ *opaque = NULL;
+ return NULL;
+ }
+ if ((output && (*p)->url_write) || (!output && (*p)->url_read))
+ return (*p)->name;
+ return avio_enum_protocols(opaque, output);
+}