例題: TCP接続するクライアント struct addrinfo hints, *res, *res0; int error, s; memset(&hints, 0, sizeof(hints)); hints.ai_family = PF_UNSPEC; hints.ai_socktype = SOCK_STREAM; error = getaddrinfo("www.kame.net", "http", &hints, &res0); if (error) errx(1, "%s", gai_strerror(error)); /* res0 holds addrinfo chain */ s = -1; for (res = res0; res; res = res->ai_next) { s = socket(res->ai_family, res->ai_socktype, res->ai_protocol); if (s < 0) continue; error = connect(s, res->ai_addr, res->ai_addrlen); if (error) { close(s); s = -1; continue; } break; } freeaddrinfo(res0); if (s < 0) die();