This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Define missing __inet6_scopeid_pton internal function used by getaddrinfo


On 08/03/2017 10:54 AM, Samuel Thibault wrote:
> Samuel Thibault, on jeu. 03 août 2017 02:36:26 +0200, wrote:
>> Samuel Thibault, on jeu. 03 août 2017 02:23:52 +0200, wrote:
>>> * posix/tst-rfc3484.c: Include <netinet/in.h> and <net/if.h>
>>> (__inet6_scopeid_pton): New function.
>>
>> And likewise for tst-rfc3484-2 and tst-rfc3484-3.
> 
> Err inet/tst-inet6_scopeid_pton.c also needs it, but how is this
> supposed to link when __inet6_scopeid_pton is marked attribute_hidden?

The attached patch should fix this.

Thanks,
Florian
__inet6_scopeid_pton: Remove attribute_hidden, internal_function

The hidden attribute was overridden by libc_hidden_proto on GNU/Linux.
It is incorrect because the function is used from nscd.

internal_function is not supposed to be used across DSO boundaries,
so this commit removes it (again, due to the use in nscd).

2017-08-03  Florian Weimer  <fweimer@redhat.com>

	* inet/net-internal.h (__inet6_scopeid_pton): Remove
	attribute_hidden, internal_function.
	* inet/inet6_scopeid_pton.c (__inet6_scopeid_pton): Remove
	internal_function.

diff --git a/inet/inet6_scopeid_pton.c b/inet/inet6_scopeid_pton.c
index e09b1cb..cc8803f 100644
--- a/inet/inet6_scopeid_pton.c
+++ b/inet/inet6_scopeid_pton.c
@@ -28,7 +28,7 @@
 
 /* Parse SOURCE as a scope ID for ADDRESS.  Return 0 on success and -1
    on error.  */
-internal_function int
+int
 __inet6_scopeid_pton (const struct in6_addr *address, const char *scope,
                       uint32_t *result)
 {
diff --git a/inet/net-internal.h b/inet/net-internal.h
index 2b2632c..b213589 100644
--- a/inet/net-internal.h
+++ b/inet/net-internal.h
@@ -25,8 +25,7 @@
 #include <sys/time.h>
 
 int __inet6_scopeid_pton (const struct in6_addr *address,
-                          const char *scope, uint32_t *result)
-  internal_function attribute_hidden;
+                          const char *scope, uint32_t *result);
 libc_hidden_proto (__inet6_scopeid_pton)
 
 

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]