Enable AI_ADDRCONFIG as a valid flag of getaddrinfo(3). Some
applications specify AI_ADDRCONFIG and fail to run under FreeBSD. Latest mews is known. Now, getaddrinfo(3) behaves according to AI_ADDRCONFIG.
This commit is contained in:
parent
54ecfa0813
commit
928268064f
@ -167,7 +167,8 @@ struct addrinfo {
|
||||
#define AI_CANONNAME 0x00000002 /* fill ai_canonname */
|
||||
#define AI_NUMERICHOST 0x00000004 /* prevent name resolution */
|
||||
/* valid flags for addrinfo */
|
||||
#define AI_MASK (AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST)
|
||||
#define AI_MASK \
|
||||
(AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST | AI_ADDRCONFIG)
|
||||
|
||||
#define AI_ALL 0x00000100 /* IPv6 and IPv4-mapped (with AI_V4MAPPED) */
|
||||
#define AI_V4MAPPED_CFG 0x00000200 /* accept IPv4-mapped if kernel supports */
|
||||
|
@ -82,7 +82,6 @@
|
||||
* - AI_ADDRCONFIG support is supplied
|
||||
* - EDNS0 support is not available due to resolver differences
|
||||
* - some of FreeBSD style (#define tabify and others)
|
||||
* - AI_ADDRCONFIG is turned on by default.
|
||||
* - classful IPv4 numeric (127.1) is allowed.
|
||||
*/
|
||||
|
||||
@ -522,10 +521,6 @@ getaddrinfo(hostname, servname, hints, res)
|
||||
if (hostname == NULL)
|
||||
ERR(EAI_NODATA);
|
||||
|
||||
#if 1
|
||||
/* XXX: temporarily, behave as if AI_ADDRCONFIG is specified */
|
||||
pai->ai_flags |= AI_ADDRCONFIG;
|
||||
#endif
|
||||
if ((pai->ai_flags & AI_ADDRCONFIG) != 0 && !addrconfig(&ai0))
|
||||
ERR(EAI_FAIL);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user