mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-26 19:01:44 +02:00
tls: Support passing old-style tcp options
Make tcp and tls urls near-interchangeable.
This commit is contained in:
parent
3df8d52fcd
commit
cd9d6399fd
@ -142,6 +142,7 @@ static int tls_open(URLContext *h, const char *uri, int flags)
|
||||
TLSContext *c = h->priv_data;
|
||||
int ret;
|
||||
int port;
|
||||
const char *p;
|
||||
char buf[200], host[200], opts[50] = "";
|
||||
int numerichost = 0;
|
||||
struct addrinfo hints = { 0 }, *ai = NULL;
|
||||
@ -154,7 +155,17 @@ static int tls_open(URLContext *h, const char *uri, int flags)
|
||||
snprintf(opts, sizeof(opts), "?listen=1");
|
||||
|
||||
av_url_split(NULL, 0, NULL, 0, host, sizeof(host), &port, NULL, 0, uri);
|
||||
ff_url_join(buf, sizeof(buf), "tcp", NULL, host, port, "%s", opts);
|
||||
|
||||
p = strchr(uri, '?');
|
||||
|
||||
if (!p) {
|
||||
p = opts;
|
||||
} else {
|
||||
if (av_find_info_tag(opts, sizeof(opts), "listen", p))
|
||||
c->listen = 1;
|
||||
}
|
||||
|
||||
ff_url_join(buf, sizeof(buf), "tcp", NULL, host, port, "%s", p);
|
||||
|
||||
hints.ai_flags = AI_NUMERICHOST;
|
||||
if (!getaddrinfo(host, NULL, &hints, &ai)) {
|
||||
|
Loading…
Reference in New Issue
Block a user