global_init: move the IPv6 works status bool to multi handle

Previously it was stored in a global state which contributed to
curl_global_init's thread unsafety. This boolean is now instead figured
out in curl_multi_init() and stored in the multi handle. Less effective,
but thread safe.

Closes #4851
This commit is contained in:
Daniel Stenberg 2020-01-26 17:51:01 +01:00
parent 872ea75acf
commit 0b030a5b23
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
8 changed files with 27 additions and 25 deletions

View file

@ -743,7 +743,7 @@ Curl_addrinfo *Curl_resolver_getaddrinfo(struct connectdata *conn,
break;
}
if((pf != PF_INET) && !Curl_ipv6works())
if((pf != PF_INET) && !Curl_ipv6works(conn))
/* The stack seems to be a non-IPv6 one */
pf = PF_INET;
#endif /* CURLRES_IPV6 */