mirror of
https://github.com/obsproject/obs-studio.git
synced 2024-09-20 13:08:50 +02:00
obs-outputs: Prefer IPv4 addresses for RTMP connections
This commit is contained in:
parent
34590b4b6a
commit
eca0ca8424
@ -695,10 +695,10 @@ add_addr_info(struct sockaddr_storage *service, socklen_t *addrlen, AVal *host,
|
||||
goto finish;
|
||||
}
|
||||
|
||||
// they should come back in OS preferred order
|
||||
// prefer ipv4 results, since lots of ISPs have broken ipv6 connectivity
|
||||
for (ptr = result; ptr != NULL; ptr = ptr->ai_next)
|
||||
{
|
||||
if (ptr->ai_family == AF_INET || ptr->ai_family == AF_INET6)
|
||||
if (ptr->ai_family == AF_INET)
|
||||
{
|
||||
memcpy(service, ptr->ai_addr, ptr->ai_addrlen);
|
||||
*addrlen = (socklen_t)ptr->ai_addrlen;
|
||||
@ -706,6 +706,19 @@ add_addr_info(struct sockaddr_storage *service, socklen_t *addrlen, AVal *host,
|
||||
}
|
||||
}
|
||||
|
||||
if (!*addrlen)
|
||||
{
|
||||
for (ptr = result; ptr != NULL; ptr = ptr->ai_next)
|
||||
{
|
||||
if (ptr->ai_family == AF_INET6)
|
||||
{
|
||||
memcpy(service, ptr->ai_addr, ptr->ai_addrlen);
|
||||
*addrlen = (socklen_t)ptr->ai_addrlen;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
freeaddrinfo(result);
|
||||
|
||||
if (service->ss_family == AF_UNSPEC || *addrlen == 0)
|
||||
|
Loading…
Reference in New Issue
Block a user