| Index: fusl/src/network/gethostbyaddr.c
|
| diff --git a/fusl/src/network/gethostbyaddr.c b/fusl/src/network/gethostbyaddr.c
|
| index 598e2241a9f808e8ecafb72e24d7d6959cb49a28..4836fbf9064e52ea36fb3139440f0298e5e3f34e 100644
|
| --- a/fusl/src/network/gethostbyaddr.c
|
| +++ b/fusl/src/network/gethostbyaddr.c
|
| @@ -4,21 +4,20 @@
|
| #include <errno.h>
|
| #include <stdlib.h>
|
|
|
| -struct hostent *gethostbyaddr(const void *a, socklen_t l, int af)
|
| -{
|
| - static struct hostent *h;
|
| - size_t size = 63;
|
| - struct hostent *res;
|
| - int err;
|
| - do {
|
| - free(h);
|
| - h = malloc(size+=size+1);
|
| - if (!h) {
|
| - h_errno = NO_RECOVERY;
|
| - return 0;
|
| - }
|
| - err = gethostbyaddr_r(a, l, af, h,
|
| - (void *)(h+1), size-sizeof *h, &res, &h_errno);
|
| - } while (err == ERANGE);
|
| - return err ? 0 : h;
|
| +struct hostent* gethostbyaddr(const void* a, socklen_t l, int af) {
|
| + static struct hostent* h;
|
| + size_t size = 63;
|
| + struct hostent* res;
|
| + int err;
|
| + do {
|
| + free(h);
|
| + h = malloc(size += size + 1);
|
| + if (!h) {
|
| + h_errno = NO_RECOVERY;
|
| + return 0;
|
| + }
|
| + err = gethostbyaddr_r(a, l, af, h, (void*)(h + 1), size - sizeof *h, &res,
|
| + &h_errno);
|
| + } while (err == ERANGE);
|
| + return err ? 0 : h;
|
| }
|
|
|