__inline void freeaddrinfo ( IN struct addrinfo *ai) { static WSPIAPI_PFREEADDRINFO pfFreeAddrInfo = NULL; if (!pfFreeAddrInfo) pfFreeAddrInfo = (WSPIAPI_PFREEADDRINFO) WspiapiLoad(2); (*pfFreeAddrInfo)(ai); }
int WINAPI WspiapiGetAddrInfo(const char *nodename, const char *servname, const struct addrinfo *hints, struct addrinfo **res) { static WSPIAPI_PGETADDRINFO pfGetAddrInfo = NULL; int err; if (!pfGetAddrInfo) pfGetAddrInfo = (WSPIAPI_PGETADDRINFO) WspiapiLoad (0); err = (*pfGetAddrInfo) (nodename, servname, hints, res); WSASetLastError (err); return err; }
__inline int getaddrinfo( IN const char *nodename, IN const char *servname, IN const struct addrinfo *hints, OUT struct addrinfo **res) { static WSPIAPI_PGETADDRINFO pfGetAddrInfo = NULL; if (!pfGetAddrInfo) pfGetAddrInfo = (WSPIAPI_PGETADDRINFO) WspiapiLoad(0); return ((*pfGetAddrInfo) (nodename, servname, hints, res)); }
__inline int getnameinfo ( IN const struct sockaddr *sa, IN socklen_t salen, OUT char *host, IN size_t hostlen, OUT char *serv, IN size_t servlen, IN int flags) { static WSPIAPI_PGETNAMEINFO pfGetNameInfo = NULL; if (!pfGetNameInfo) pfGetNameInfo = (WSPIAPI_PGETNAMEINFO) WspiapiLoad(1); return ((*pfGetNameInfo) (sa, salen, host, hostlen, serv, servlen, flags)); }