Lines Matching refs:ai
95 struct addrinfo *ai;
97 ai = (struct addrinfo *)malloc(sizeof(struct addrinfo) +
99 if (ai) {
100 memset(ai, 0, sizeof(struct addrinfo) + sizeof(struct sockaddr_in));
101 ai->ai_addr = (struct sockaddr *)(ai + 1);
103 ai->ai_addrlen = sizeof(struct sockaddr_in);
105 ai->ai_addr->sa_len = sizeof(struct sockaddr_in);
107 ai->ai_addr->sa_family = ai->ai_family = AF_INET;
108 ((struct sockaddr_in *)(ai)->ai_addr)->sin_port = port;
109 ((struct sockaddr_in *)(ai)->ai_addr)->sin_addr.s_addr = addr;
110 ai->ai_socktype = socktype;
111 ai->ai_protocol = proto;
112 return ai;
136 freeaddrinfo(struct addrinfo *ai)
140 if (ai->ai_canonname)
141 free(ai->ai_canonname);
143 next = ai->ai_next;
144 free(ai);
145 } while ((ai = next) != NULL);