- for (ap = arguments; *ap; ap++) {
-
- if (debug) {
- fprintf(stderr, "Trying to connect to \"%s\" ...\n", *ap);
- }
-
- rc = getaddrinfo(*ap, service, &hints, &res);
-
- if (rc) {
- if (debug) {
- fprintf(stderr, "Lookup of \"%s\" failed: %s\n", *ap,
- gai_strerror(rc));
- }
- continue;
- }
-
- for (ai = res; ai != NULL; ai = ai->ai_next) {
- if (debug) {
- char address[NI_MAXHOST];
- char port[NI_MAXSERV];
-
- rc = getnameinfo(ai->ai_addr, ai->ai_addrlen, address,
- sizeof(address), port, sizeof port,
- NI_NUMERICHOST | NI_NUMERICSERV);
-
- fprintf(stderr, "Connecting to %s:%s...\n",
- rc ? "unknown" : address,
- rc ? "--" : port);
- }
-
- sd = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol);
-
- if (sd < 0) {
- if (debug)
- fprintf(stderr, "socket() failed: %s\n", strerror(errno));
- continue;
- }
-
- if (connect(sd, ai->ai_addr, ai->ai_addrlen) == 0) {
- freeaddrinfo(res);
- client_freelist(arguments);
- return sd;
- }
-
- if (debug) {
- fprintf(stderr, "Connection failed: %s\n", strerror(errno));
- }