change getaddrinfo() implementation to match GLibc.
the issue is that the BSD implementation doesn't accept a call like: getaddrinfo(SERVER_NAME, "9999", NULL, &res); because if will reject a numerical string in the second parameter if no hints are explicitely provided. This technically doesn't violate POSIX but might make porting Linux software a bit difficult. For more details see: http://groups.google.com/group/android-ndk/browse_thread/thread/818ab9c53f24c87 also comment debugging printf() calls which shouldn't be there.
This commit is contained in:
parent
85a01ffba3
commit
5e56370038
|
@ -912,7 +912,11 @@ get_port(const struct addrinfo *ai, const char *servname, int matchonly)
|
||||||
allownumeric = 1;
|
allownumeric = 1;
|
||||||
break;
|
break;
|
||||||
case ANY:
|
case ANY:
|
||||||
|
#if 1 /* ANDROID-SPECIFIC CHANGE TO MATCH GLIBC */
|
||||||
|
allownumeric = 1;
|
||||||
|
#else
|
||||||
allownumeric = 0;
|
allownumeric = 0;
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return EAI_SOCKTYPE;
|
return EAI_SOCKTYPE;
|
||||||
|
@ -1271,7 +1275,7 @@ _dns_getaddrinfo(void *rv, void *cb_data, va_list ap)
|
||||||
name = va_arg(ap, char *);
|
name = va_arg(ap, char *);
|
||||||
pai = va_arg(ap, const struct addrinfo *);
|
pai = va_arg(ap, const struct addrinfo *);
|
||||||
|
|
||||||
fprintf(stderr, "_dns_getaddrinfo() name = '%s'\n", name);
|
//fprintf(stderr, "_dns_getaddrinfo() name = '%s'\n", name);
|
||||||
|
|
||||||
memset(&q, 0, sizeof(q));
|
memset(&q, 0, sizeof(q));
|
||||||
memset(&q2, 0, sizeof(q2));
|
memset(&q2, 0, sizeof(q2));
|
||||||
|
@ -1630,7 +1634,7 @@ res_searchN(const char *name, struct res_target *target, res_state res)
|
||||||
trailing_dot++;
|
trailing_dot++;
|
||||||
|
|
||||||
|
|
||||||
fprintf(stderr, "res_searchN() name = '%s'\n", name);
|
//fprintf(stderr, "res_searchN() name = '%s'\n", name);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* if there aren't any dots, it could be a user-level alias
|
* if there aren't any dots, it could be a user-level alias
|
||||||
|
|
Loading…
Reference in New Issue