+ if (connect_timeout > 0) {
+ SIGACTION(SIGALRM, contimeout_handler);
+ alarm(connect_timeout);
+ }
+
+ set_socket_options(s, sockopts);
+ while (connect(s, res->ai_addr, res->ai_addrlen) < 0) {
+ if (connect_timeout < 0)
+ exit_cleanup(RERR_CONTIMEOUT);
+ if (errno == EINTR)
+ continue;