Joseph Myers 8ac5a76a99 Fix resolver inet_* namespace (bug 17722).
Parts of the resolver brought in by pthreads (at least) use inet_*
functions that aren't in the 1995/6 edition of POSIX that introduced
pthreads (or in one case, use __inet_aton which is then defined in the
same file as non-weak inet_addr).  This patch fixes this by making the
affected functions into weak alias for __inet_* and using those names
in the problematic resolver code.

Tested for x86_64 (testsuite, and that disassembly of installed shared
libraries is unchanged by the patch).

	[BZ #17722]
	* inet/inet_mkadr.c (inet_makeaddr): Rename to __inet_makeaddr and
	define as weak alias of __inet_makeaddr.
	* resolv/inet_addr.c (inet_addr): Rename to __inet_addr and define
	as weak alias of __inet_addr.
	* resolv/inet_pton.c (inet_pton): Rename to __inet_pton and define
	as weak alias of __inet_pton.  Use libc_hidden_weak.
	* include/arpa/inet.h (__inet_pton): Declare.  Use
	libc_hidden_proto.
	(inet_makeaddr): Don't use libc_hidden_proto.
	(__inet_makeaddr): Declare.  Use libc_hidden_proto.
	* resolv/res_init.c (__res_vinit): Use __inet_pton instead of
	inet_pton.  Use __inet_makeaddr instead of inet_makeaddr.
	* conform/Makefile (test-xfail-POSIX/pthread.h/linknamespace):
	Remove variable.
	(test-xfail-POSIX/sched.h/linknamespace): Likewise.
	(test-xfail-POSIX/time.h/linknamespace): Likewise.
2014-12-17 18:09:11 +00:00
..
2014-11-24 15:24:34 +05:30
2014-12-11 14:55:44 -05:00
2012-01-07 23:57:22 -05:00
2012-05-24 23:08:18 +02:00
2014-11-24 15:03:45 +05:30
2013-09-04 20:47:21 +00:00
2014-11-24 15:03:45 +05:30
2012-11-21 06:33:19 -08:00
2014-11-24 15:03:45 +05:30
2012-01-07 23:57:22 -05:00
2014-10-30 19:44:31 +00:00
2004-03-09 10:36:53 +00:00
2004-03-09 10:36:53 +00:00
2009-04-23 18:29:30 +00:00
2014-11-24 11:41:44 +05:30
2014-11-24 15:03:45 +05:30
2012-05-24 23:08:18 +02:00
2012-05-24 23:06:20 +02:00
2014-11-24 15:03:45 +05:30
2012-05-31 13:10:02 +02:00
2014-11-24 15:24:34 +05:30
2014-11-24 15:03:45 +05:30
2004-10-24 21:29:41 +00:00
2014-11-24 15:03:45 +05:30
2012-01-07 23:57:22 -05:00
2014-11-24 11:41:43 +05:30
2014-11-14 11:06:08 -08:00
2014-03-14 11:32:51 -07:00
2014-11-24 11:41:42 +05:30
2014-11-24 15:03:45 +05:30
2014-11-24 15:03:45 +05:30
2014-11-24 15:03:45 +05:30
2012-01-07 23:57:22 -05:00
2014-11-24 15:03:45 +05:30