Browse Source

Revert revision 19343 and also remove libc_hidden_proto for __uc_malloc.
For now, a straight revert; we can decide later wheter we want to do something
more.

Bernd Schmidt 17 years ago
parent
commit
c27fb5f6a1
1 changed files with 16 additions and 34 deletions
  1. 16 34
      libc/inet/resolv.c

+ 16 - 34
libc/inet/resolv.c

@@ -146,7 +146,6 @@
 #include <netinet/in.h>
 #include <arpa/inet.h>
 #include <stdlib.h>
-#include <malloc.h>
 #include <unistd.h>
 #include <resolv.h>
 #include <netdb.h>
@@ -219,7 +218,6 @@ libc_hidden_proto(__ctype_b_loc)
 #elif defined __UCLIBC_HAS_CTYPE_TABLES__
 libc_hidden_proto(__ctype_b)
 #endif
-libc_hidden_proto(__uc_malloc)
 int __libc_getdomainname(char *name, size_t len);
 libc_hidden_proto(__libc_getdomainname)
 
@@ -1150,17 +1148,13 @@ void attribute_hidden __close_nameservers(void)
 
 struct hostent *gethostbyname(const char *name)
 {
-	static struct {
-		struct hostent h;
-		char buf[sizeof(struct in_addr) +
-					sizeof(struct in_addr *)*2 +
-					sizeof(char *)*ALIAS_DIM + 384/*namebuffer*/ + 32/* margin */];
-	} *sp;
+	static struct hostent h;
+	static char buf[sizeof(struct in_addr) +
+			sizeof(struct in_addr *)*2 +
+			sizeof(char *)*ALIAS_DIM + 384/*namebuffer*/ + 32/* margin */];
 	struct hostent *hp;
 
-	free(sp);
-	sp = __uc_malloc(sizeof(*sp));
-	gethostbyname_r(name, &sp->h, sp->buf, sizeof(sp->buf), &hp, &h_errno);
+	gethostbyname_r(name, &h, buf, sizeof(buf), &hp, &h_errno);
 
 	return hp;
 }
@@ -1174,17 +1168,13 @@ struct hostent *gethostbyname2(const char *name, int family)
 #ifndef __UCLIBC_HAS_IPV6__
 	return family == AF_INET ? gethostbyname(name) : (struct hostent*)0;
 #else /* __UCLIBC_HAS_IPV6__ */
-	static struct {
-		struct hostent h;
-		char buf[sizeof(struct in6_addr) +
-					sizeof(struct in6_addr *)*2 +
-					sizeof(char *)*ALIAS_DIM + 384/*namebuffer*/ + 32/* margin */];
-	} *sp;
+	static struct hostent h;
+	static char buf[sizeof(struct in6_addr) +
+			sizeof(struct in6_addr *)*2 +
+			sizeof(char *)*ALIAS_DIM + 384/*namebuffer*/ + 32/* margin */];
 	struct hostent *hp;
 
-	free(sp);
-	sp = __uc_malloc(sizeof(*sp));
-	gethostbyname2_r(name, family, &sp->h, sp->buf, sizeof(sp->buf), &hp, &h_errno);
+	gethostbyname2_r(name, family, &h, buf, sizeof(buf), &hp, &h_errno);
 
 	return hp;
 #endif /* __UCLIBC_HAS_IPV6__ */
@@ -1521,21 +1511,17 @@ libc_hidden_def(res_querydomain)
 #ifdef L_gethostbyaddr
 struct hostent *gethostbyaddr (const void *addr, socklen_t len, int type)
 {
-	static struct {
-		struct hostent h;
-		char buf[
+	static struct hostent h;
+	static char buf[
 #ifndef __UCLIBC_HAS_IPV6__
 			sizeof(struct in_addr) + sizeof(struct in_addr *)*2 +
 #else
 			sizeof(struct in6_addr) + sizeof(struct in6_addr *)*2 +
 #endif /* __UCLIBC_HAS_IPV6__ */
 			sizeof(char *)*ALIAS_DIM + 384 /*namebuffer*/ + 32 /* margin */];
-	} *sp;
 	struct hostent *hp;
 
-	free(sp);
-	sp = __uc_malloc(sizeof(*sp));
-	gethostbyaddr_r(addr, len, type, &sp->h, sp->buf, sizeof(sp->buf), &hp, &h_errno);
+	gethostbyaddr_r(addr, len, type, &h, buf, sizeof(buf), &hp, &h_errno);
 
 	return hp;
 }
@@ -1770,9 +1756,8 @@ libc_hidden_def(gethostent_r)
 
 struct hostent *gethostent(void)
 {
-	static struct {
-		struct hostent h;
-		char buf[
+	static struct hostent h;
+	static char buf[
 #ifndef __UCLIBC_HAS_IPV6__
 			sizeof(struct in_addr) + sizeof(struct in_addr *)*2 +
 #else
@@ -1780,13 +1765,10 @@ struct hostent *gethostent(void)
 #endif /* __UCLIBC_HAS_IPV6__ */
 			sizeof(char *)*ALIAS_DIM +
 			80 /*namebuffer*/ + 2 /* margin */];
-	} *sp;
 	struct hostent *host;
 
-	free(sp);
-	sp = __uc_malloc(sizeof(*sp));
 	__UCLIBC_MUTEX_LOCK(mylock);
-	gethostent_r(&sp->h, sp->buf, sizeof(sp->buf), &host, &h_errno);
+	gethostent_r(&h, buf, sizeof(buf), &host, &h_errno);
 	__UCLIBC_MUTEX_UNLOCK(mylock);
 	return host;
 }