master
 1#ifndef WIN32_LEAN_AND_MEAN
 2#define WIN32_LEAN_AND_MEAN
 3#endif
 4#undef  __CRT__NO_INLINE
 5#define __CRT__NO_INLINE
 6#include <winsock2.h>
 7#include <wspiapi.h>
 8
 9struct addrinfo * WINAPI
10WspiapiNewAddrInfo (int iSocketType, int iProtocol, WORD wPort, DWORD dwAddress)
11{
12  struct addrinfo *n;
13  struct sockaddr_in *pa;
14
15  if ((n = (struct addrinfo *) WspiapiMalloc (sizeof (struct addrinfo))) == NULL)
16    return NULL;
17  if ((pa = (struct sockaddr_in *) WspiapiMalloc (sizeof(struct sockaddr_in))) == NULL)
18    {
19	WspiapiFree(n);
20	return NULL;
21    }
22  pa->sin_family = AF_INET;
23  pa->sin_port = wPort;
24  pa->sin_addr.s_addr = dwAddress;
25  n->ai_family = PF_INET;
26  n->ai_socktype = iSocketType;
27  n->ai_protocol = iProtocol;
28  n->ai_addrlen = sizeof (struct sockaddr_in);
29  n->ai_addr = (struct sockaddr *) pa;
30  return n;
31}