Lines Matching refs:ai
269 #define GET_AI(ai, afd, addr) \ argument
272 (ai) = get_ai(pai, (afd), (addr)); \
273 if ((ai) == NULL) { \
279 #define GET_PORT(ai, serv, svd) \ argument
282 error = get_port((ai), (serv), 0, (svd)); \
287 #define GET_CANONNAME(ai, str) \ argument
290 error = get_canonname(pai, (ai), (str)); \
318 freeaddrinfo(struct addrinfo *ai) in freeaddrinfo() argument
322 _DIAGASSERT(ai != NULL); in freeaddrinfo()
325 next = ai->ai_next; in freeaddrinfo()
326 if (ai->ai_canonname) in freeaddrinfo()
327 free(ai->ai_canonname); in freeaddrinfo()
329 free(ai); in freeaddrinfo()
330 ai = next; in freeaddrinfo()
331 } while (ai); in freeaddrinfo()
360 struct addrinfo ai; in getaddrinfo() local
374 memset(&ai, 0, sizeof(ai)); in getaddrinfo()
375 pai = &ai; in getaddrinfo()
850 get_canonname(const struct addrinfo *pai, struct addrinfo *ai, const char *str) in get_canonname() argument
854 _DIAGASSERT(ai != NULL); in get_canonname()
858 ai->ai_canonname = strdup(str); in get_canonname()
859 if (ai->ai_canonname == NULL) in get_canonname()
869 struct addrinfo *ai; in get_ai() local
875 ai = (struct addrinfo *)malloc(sizeof(struct addrinfo) in get_ai()
877 if (ai == NULL) in get_ai()
880 memcpy(ai, pai, sizeof(struct addrinfo)); in get_ai()
881 ai->ai_addr = (struct sockaddr *)(void *)(ai + 1); in get_ai()
882 memset(ai->ai_addr, 0, (size_t)afd->a_socklen); in get_ai()
883 ai->ai_addr->sa_len = (uint8_t)afd->a_socklen; in get_ai()
884 ai->ai_addrlen = afd->a_socklen; in get_ai()
885 ai->ai_family = afd->a_af; in get_ai()
886 ai->ai_addr->sa_family = (sa_family_t)ai->ai_family; in get_ai()
887 p = (char *)(void *)(ai->ai_addr); in get_ai()
889 return ai; in get_ai()
893 get_portmatch(const struct addrinfo *ai, const char *servname, in get_portmatch() argument
897 _DIAGASSERT(ai != NULL); in get_portmatch()
900 return get_port(ai, servname, 1, svd); in get_portmatch()
904 get_port(const struct addrinfo *ai, const char *servname, int matchonly, in get_port() argument
912 _DIAGASSERT(ai != NULL); in get_port()
917 switch (ai->ai_family) { in get_port()
927 switch (ai->ai_socktype) { in get_port()
955 if (ai->ai_flags & AI_NUMERICSERV) in get_port()
958 switch (ai->ai_socktype) { in get_port()
978 switch (ai->ai_family) { in get_port()
981 ai->ai_addr)->sin_port = (in_port_t)port; in get_port()
986 ai->ai_addr)->sin6_port = (in_port_t)port; in get_port()
1073 struct addrinfo ai; in getanswer() local
1233 ai = *pai; in getanswer()
1234 ai.ai_family = (type == T_A) ? AF_INET : AF_INET6; in getanswer()
1235 afd = find_afd(ai.ai_family); in getanswer()
1240 cur->ai_next = get_ai(&ai, afd, (const char *)cp); in getanswer()
1301 struct addrinfo *ai; in _dns_getaddrinfo() local
1377 ai = getanswer(buf, q.n, q.name, q.qtype, pai); in _dns_getaddrinfo()
1378 if (ai) { in _dns_getaddrinfo()
1379 cur->ai_next = ai; in _dns_getaddrinfo()
1384 ai = getanswer(buf2, q2.n, q2.name, q2.qtype, pai); in _dns_getaddrinfo()
1385 if (ai) in _dns_getaddrinfo()
1386 cur->ai_next = ai; in _dns_getaddrinfo()
1614 struct addrinfo *ai = NULL; in _yp_getaddrinfo() local
1639 ai = _yphostent(ypbuf, &ai4); in _yp_getaddrinfo()
1640 if (ai) { in _yp_getaddrinfo()
1641 cur->ai_next = ai; in _yp_getaddrinfo()
1653 ai = _yphostent(ypbuf, pai); in _yp_getaddrinfo()
1654 if (ai) in _yp_getaddrinfo()
1655 cur->ai_next = ai; in _yp_getaddrinfo()