[FFmpeg-devel] [PATCH 1/3] lavf/http: support HTTPS when listening

Rodger Combs rodger.combs at gmail.com
Sat May 2 09:07:29 CEST 2015


---
 libavformat/http.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/libavformat/http.c b/libavformat/http.c
index acf0318..3a31a86 100644
--- a/libavformat/http.c
+++ b/libavformat/http.c
@@ -304,12 +304,15 @@ static int http_listen(URLContext *h, const char *uri, int flags,
     HTTPContext *s = h->priv_data;
     int ret;
     static const char header[] = "HTTP/1.1 200 OK\r\nContent-Type: application/octet-stream\r\nTransfer-Encoding: chunked\r\n\r\n";
-    char hostname[1024];
+    char hostname[1024], proto[10];
     char lower_url[100];
+    char *lower_proto = "tcp";
     int port, new_location;
-    av_url_split(NULL, 0, NULL, 0, hostname, sizeof(hostname), &port,
+    av_url_split(proto, sizeof(proto), NULL, 0, hostname, sizeof(hostname), &port,
                  NULL, 0, uri);
-    ff_url_join(lower_url, sizeof(lower_url), "tcp", NULL, hostname, port,
+    if (!strcmp(proto, "https"))
+        lower_proto = "tls";
+    ff_url_join(lower_url, sizeof(lower_url), lower_proto, NULL, hostname, port,
                 NULL);
     av_dict_set(options, "listen", "1", 0);
     if ((ret = ffurl_open(&s->hd, lower_url, AVIO_FLAG_READ_WRITE,
-- 
2.3.5



More information about the ffmpeg-devel mailing list