Lines Matching refs:ai

225 #define GET_AI(ai, afd, addr) \  argument
228 (ai) = get_ai(pai, (afd), (addr)); \
229 if ((ai) == NULL) { \
235 #define GET_PORT(ai, serv) \ argument
238 error = get_port((ai), (serv), 0); \
243 #define GET_CANONNAME(ai, str) \ argument
246 error = get_canonname(pai, (ai), (str)); \
287 freeaddrinfo(ai) in freeaddrinfo() argument
288 struct addrinfo *ai; in freeaddrinfo()
293 next = ai->ai_next;
294 if (ai->ai_canonname)
295 free(ai->ai_canonname);
297 free(ai);
298 ai = next;
299 } while (ai);
328 struct addrinfo ai, ai0, *afai = NULL; local
334 pai = &ai;
904 get_canonname(pai, ai, str) in get_canonname() argument
906 struct addrinfo *ai;
910 ai->ai_canonname = (char *)malloc(strlen(str) + 1);
911 if (ai->ai_canonname == NULL)
913 strcpy(ai->ai_canonname, str);
925 struct addrinfo *ai; local
927 ai = (struct addrinfo *)malloc(sizeof(struct addrinfo)
929 if (ai == NULL)
932 memcpy(ai, pai, sizeof(struct addrinfo));
933 ai->ai_addr = (struct sockaddr *)(void *)(ai + 1);
934 memset(ai->ai_addr, 0, (size_t)afd->a_socklen);
936 ai->ai_addr->sa_len = afd->a_socklen;
938 ai->ai_addrlen = afd->a_socklen;
939 ai->ai_addr->sa_family = ai->ai_family = afd->a_af;
940 p = (char *)(void *)(ai->ai_addr);
942 return ai;
950 struct addrinfo *ai; local
953 l = sizeof(*ai) + pai->ai_addrlen;
954 if ((ai = (struct addrinfo *)malloc(l)) == NULL)
956 memset(ai, 0, l);
957 memcpy(ai, pai, sizeof(*ai));
958 ai->ai_addr = (struct sockaddr *)(void *)(ai + 1);
959 memcpy(ai->ai_addr, pai->ai_addr, pai->ai_addrlen);
963 if ((ai->ai_canonname = malloc(l)) == NULL) {
964 free(ai);
967 strcpy(ai->ai_canonname, pai->ai_canonname); /* (checked) */
970 ai->ai_canonname = NULL;
973 ai->ai_next = NULL;
975 return ai;
979 get_portmatch(const struct addrinfo *ai, const char *servname) { in get_portmatch() argument
983 return get_port((const struct addrinfo *)ai, servname, 1); in get_portmatch()
987 get_port(const struct addrinfo *ai, const char *servname, int matchonly) { in get_port() argument
995 switch (ai->ai_family) { in get_port()
1005 switch (ai->ai_socktype) { in get_port()
1013 switch (ai->ai_family) { in get_port()
1037 switch (ai->ai_socktype) { in get_port()
1055 switch (ai->ai_family) { in get_port()
1058 ai->ai_addr)->sin_port = port; in get_port()
1062 ai->ai_addr)->sin6_port = port; in get_port()