nodename
Points to a network node name, alias, or numeric host address
(for example, an IPv4 dotted-decimal address or an IPv6
hexadecimal address). An IPv6 nonglobal address with an intended
scope zone may also be specified. This is a null-terminated
string or NULL. NULL means the service location is local to the
caller. The nodename and servname arguments must not both be
NULL.
servname
Points to a network service name or port number. This is a null-
terminated string or NULL; NULL returns network-level addresses
for the specified nodename. The nodename and servname arguments
must not both be NULL.
hints
Points to an addrinfo structure that contains information about
the type of socket, address family, or protocol the caller
supports. The NETDB.H header file defines the addrinfo structure.
If hints is a null pointer, the behavior is the same as if
addrinfo contained the value 0 for the ai_flags, ai_socktype
and ai_protocol members and AF_UNSPEC for the ai_family member.
res
Points to a linked list of one or more addrinfo structures.