{
char buffer[sizeof(WSAQUERYSET) + 2048];
WSAQUERYSET query;
- hostent_t *addr = NULL;
+ struct hostent *addr = NULL;
char *bufaddr = NULL;
char ** addrlist = &bufaddr;
int addrcnt = 0;
*/
retcode = EAI_NONAME;
dwLength = sizeof(buffer);
- *addrlist = NULL;
while(err == 0) /* Drop out when error */
{
memset(addr, 0, sizeof(struct hostent));
addr->h_addrtype = (short) results->lpcsaBuffer->iSocketType;
addr->h_length = sizeof(struct in_addr); /* Only passing back the address */
+ addrlist = malloc(sizeof(char *));
+ *addrlist = NULL;
}
for (i = 0; i < results->dwNumberOfCsAddrs; i++)
{
addr->h_name = (char *) name;
addr->h_addr_list = addrlist;
retcode = 0;
+ *Addresses = addr;
}
else
{
#endif
retcode = ReturnCode(errcode);
}
- *Addresses = addr;
WSALookupServiceEnd(handle);
return (retcode);
}