#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
int getaddrinfo(char *name,char *service,
struct addrinfo *hints,
struct addrinfo **res);
void freeaddrinfo(struct addrinfo *res);
struct addrinfo {
int ai_flags;
int ai_family;
int ai_socktype;
int ai_protocol;
size_t ai_addrlen;
struct sockaddr *ai_addr;
char *ai_canonname;
struct addrinfo *ai_next;
};
#include <sys/socket.h>
#include <netdb.h>
int getnameinfo(struct sockaddr *address,socklen_t length,
char *name,size_t maxname,char *service,size_t maxservice,
int flags);