diff options
Diffstat (limited to 'libc/inet/resolv.c')
| -rw-r--r-- | libc/inet/resolv.c | 45 |
1 files changed, 21 insertions, 24 deletions
diff --git a/libc/inet/resolv.c b/libc/inet/resolv.c index bcc4e78f8..31f5456e7 100644 --- a/libc/inet/resolv.c +++ b/libc/inet/resolv.c @@ -137,6 +137,7 @@ #define strncat __strncat #define strstr __strstr #define random __random +#define getservbyport __getservbyport #define __FORCE_GLIBC #include <features.h> @@ -185,15 +186,13 @@ extern char * __nameserver[MAX_SERVERS]; extern int __searchdomains; extern char * __searchdomain[MAX_SEARCH]; + #ifdef __UCLIBC_HAS_THREADS__ -#include <pthread.h> +# include <pthread.h> extern pthread_mutex_t __resolv_lock; -# define BIGLOCK __pthread_mutex_lock(&__resolv_lock) -# define BIGUNLOCK __pthread_mutex_unlock(&__resolv_lock); -#else -# define BIGLOCK -# define BIGUNLOCK #endif +#define BIGLOCK __pthread_mutex_lock(&__resolv_lock) +#define BIGUNLOCK __pthread_mutex_unlock(&__resolv_lock) @@ -272,10 +271,10 @@ extern int __open_nameservers(void) attribute_hidden; extern void __close_nameservers(void) attribute_hidden; extern int __dn_expand(const u_char *, const u_char *, const u_char *, char *, int); -extern int __libc_ns_name_uncompress(const u_char *, const u_char *, +extern int __ns_name_uncompress_internal(const u_char *, const u_char *, const u_char *, char *, size_t) attribute_hidden; -extern int __libc_ns_name_ntop(const u_char *, char *, size_t) attribute_hidden; -extern int __libc_ns_name_unpack(const u_char *, const u_char *, const u_char *, +extern int __ns_name_ntop_internal(const u_char *, char *, size_t) attribute_hidden; +extern int __ns_name_unpack_internal(const u_char *, const u_char *, const u_char *, u_char *, size_t) attribute_hidden; @@ -658,15 +657,12 @@ int __form_query(int id, const char *name, int type, unsigned char *packet, #endif #if defined(L_dnslookup) || defined(L_gethostent) - #ifdef __UCLIBC_HAS_THREADS__ +# include <pthread.h> static pthread_mutex_t mylock = PTHREAD_MUTEX_INITIALIZER; -# define LOCK __pthread_mutex_lock(&mylock) -# define UNLOCK __pthread_mutex_unlock(&mylock); -#else -# define LOCK -# define UNLOCK #endif +#define LOCK __pthread_mutex_lock(&mylock) +#define UNLOCK __pthread_mutex_unlock(&mylock) #endif #ifdef L_dnslookup @@ -980,6 +976,7 @@ char * __nameserver[MAX_SERVERS]; int __searchdomains; char * __searchdomain[MAX_SEARCH]; #ifdef __UCLIBC_HAS_THREADS__ +# include <pthread.h> pthread_mutex_t __resolv_lock = PTHREAD_MUTEX_INITIALIZER; #endif @@ -2399,7 +2396,7 @@ int gethostbyaddr_r (const void *addr, socklen_t len, int type, int __dn_expand(const u_char *msg, const u_char *eom, const u_char *src, char *dst, int dstsiz) { - int n = __libc_ns_name_uncompress(msg, eom, src, dst, (size_t)dstsiz); + int n = __ns_name_uncompress_internal(msg, eom, src, dst, (size_t)dstsiz); if (n > 0 && dst[0] == '.') dst[0] = '\0'; @@ -2451,19 +2448,19 @@ static int special(int ch) * note: * Root domain returns as "." not "". */ -int attribute_hidden __libc_ns_name_uncompress(const u_char *msg, const u_char *eom, +int attribute_hidden __ns_name_uncompress_internal(const u_char *msg, const u_char *eom, const u_char *src, char *dst, size_t dstsiz) { u_char tmp[NS_MAXCDNAME]; int n; - if ((n = __libc_ns_name_unpack(msg, eom, src, tmp, sizeof tmp)) == -1) + if ((n = __ns_name_unpack_internal(msg, eom, src, tmp, sizeof tmp)) == -1) return (-1); - if (__libc_ns_name_ntop(tmp, dst, dstsiz) == -1) + if (__ns_name_ntop_internal(tmp, dst, dstsiz) == -1) return (-1); return (n); } -strong_alias(__libc_ns_name_uncompress,__ns_name_uncompress) +strong_alias(__ns_name_uncompress_internal,__ns_name_uncompress) /* @@ -2475,7 +2472,7 @@ strong_alias(__libc_ns_name_uncompress,__ns_name_uncompress) * The root is returned as "." * All other domains are returned in non absolute form */ -int attribute_hidden __libc_ns_name_ntop(const u_char *src, char *dst, size_t dstsiz) { +int attribute_hidden __ns_name_ntop_internal(const u_char *src, char *dst, size_t dstsiz) { const u_char *cp; char *dn, *eom; u_char c; @@ -2544,7 +2541,7 @@ int attribute_hidden __libc_ns_name_ntop(const u_char *src, char *dst, size_t ds *dn++ = '\0'; return (dn - dst); } -strong_alias(__libc_ns_name_ntop,__ns_name_ntop) +strong_alias(__ns_name_ntop_internal,__ns_name_ntop) /* * ns_name_unpack(msg, eom, src, dst, dstsiz) @@ -2552,7 +2549,7 @@ strong_alias(__libc_ns_name_ntop,__ns_name_ntop) * return: * -1 if it fails, or consumed octets if it succeeds. */ -int attribute_hidden __libc_ns_name_unpack(const u_char *msg, const u_char *eom, const u_char *src, +int attribute_hidden __ns_name_unpack_internal(const u_char *msg, const u_char *eom, const u_char *src, u_char *dst, size_t dstsiz) { const u_char *srcp, *dstlim; @@ -2619,5 +2616,5 @@ int attribute_hidden __libc_ns_name_unpack(const u_char *msg, const u_char *eom, len = srcp - src; return (len); } -strong_alias(__libc_ns_name_unpack,__ns_name_unpack) +strong_alias(__ns_name_unpack_internal,__ns_name_unpack) #endif /* L_ns_name */ |
