diff options
author | Martin Storsjö <martin@martin.st> | 2010-03-05 22:35:21 +0000 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2010-03-05 22:35:21 +0000 |
commit | 57b5555c91a9792e3ac99102b3d1a5c44b45fdd9 (patch) | |
tree | e9b6fa60b663ea3dbbf3bebc1c0c2943246293c4 /libavformat/http.c | |
parent | 780d7897a9c9295b43f1f0e9b49a11f99cd402c3 (diff) | |
download | ffmpeg-57b5555c91a9792e3ac99102b3d1a5c44b45fdd9.tar.gz |
Use ff_url_join for assembling URLs, instead of snprintf
This ensures proper escaping of numerical IPv6 addresses.
The RTSP (de)muxer needs its own network initialization, since it isn't
a protocol and url_open hasn't been called yet.
Originally committed as revision 22226 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/http.c')
-rw-r--r-- | libavformat/http.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/libavformat/http.c b/libavformat/http.c index 0c07592039..da200213ce 100644 --- a/libavformat/http.c +++ b/libavformat/http.c @@ -71,11 +71,7 @@ static int http_open_cnx(URLContext *h) /* needed in any case to build the host string */ url_split(NULL, 0, auth, sizeof(auth), hostname, sizeof(hostname), &port, path1, sizeof(path1), s->location); - if (port > 0) { - snprintf(hoststr, sizeof(hoststr), "%s:%d", hostname, port); - } else { - av_strlcpy(hoststr, hostname, sizeof(hoststr)); - } + ff_url_join(hoststr, sizeof(hoststr), NULL, NULL, hostname, port, NULL); if (use_proxy) { url_split(NULL, 0, auth, sizeof(auth), hostname, sizeof(hostname), &port, @@ -90,7 +86,7 @@ static int http_open_cnx(URLContext *h) if (port < 0) port = 80; - snprintf(buf, sizeof(buf), "tcp://%s:%d", hostname, port); + ff_url_join(buf, sizeof(buf), "tcp", NULL, hostname, port, NULL); err = url_open(&hd, buf, URL_RDWR); if (err < 0) goto fail; |