X-Git-Url: http://www.privoxy.org/gitweb/?a=blobdiff_plain;f=jbsockets.c;h=1133708738c1fe421aaaf24b0fb8202f09241a37;hb=dc90a129949f55c0975821f850b778eb87813259;hp=19303ee518c1db449761aa145d8c0ae6268a2850;hpb=38be442c986a8399271ae0a5101f734d1936e842;p=privoxy.git diff --git a/jbsockets.c b/jbsockets.c index 19303ee5..11337087 100644 --- a/jbsockets.c +++ b/jbsockets.c @@ -1,4 +1,4 @@ -const char jbsockets_rcs[] = "$Id: jbsockets.c,v 1.56 2009/05/16 13:27:20 fabiankeil Exp $"; +const char jbsockets_rcs[] = "$Id: jbsockets.c,v 1.59 2009/05/25 15:43:34 fabiankeil Exp $"; /********************************************************************* * * File : $Source: /cvsroot/ijbswa/current/jbsockets.c,v $ @@ -95,10 +95,8 @@ const char jbsockets_rcs[] = "$Id: jbsockets.c,v 1.56 2009/05/16 13:27:20 fabian #include "project.h" -#ifdef FEATURE_PTHREAD +/* For mutex semaphores only */ #include "jcc.h" -/* jcc.h is for mutex semaphores only */ -#endif /* def FEATURE_PTHREAD */ #include "jbsockets.h" #include "filters.h" @@ -222,7 +220,7 @@ jb_socket connect_to(const char *host, int portnum, struct client_state *csp) } #endif /* def TCP_NODELAY */ -#if !defined(_WIN32) && !defined(__BEOS__) && !defined(AMIGA) && !defined(__OS2__) +#if !defined(_WIN32) && !defined(__BEOS__) && !defined(AMIGA) && !defined(__OS2__) if ((flags = fcntl(fd, F_GETFL, 0)) != -1) { flags |= O_NDELAY; @@ -276,29 +274,30 @@ jb_socket connect_to(const char *host, int portnum, struct client_state *csp) tv->tv_usec = 0; /* MS Windows uses int, not SOCKET, for the 1st arg of select(). Wierd! */ - if (select((int)fd + 1, NULL, &wfds, NULL, tv) > 0 && - FD_ISSET(fd, &wfds)) + if ((select((int)fd + 1, NULL, &wfds, NULL, tv) > 0) + && FD_ISSET(fd, &wfds)) { - /* See Linux connect(2) man page for more info about connecting on - * non-blocking socket. */ + /* + * See Linux connect(2) man page for more info + * about connecting on non-blocking socket. + */ int socket_in_error; socklen_t optlen = sizeof(socket_in_error); if (!getsockopt(fd, SOL_SOCKET, SO_ERROR, &socket_in_error, &optlen)) { if (!socket_in_error) { - break; /* for; Connection established; don't try other addresses */ + /* Connection established, no need to try other addresses. */ + break; } - log_error(LOG_LEVEL_INFO, "Could not connect to TCP/[%s]:%s: %s", - csp->http->host_ip_addr_str, service, - strerror(socket_in_error)); + log_error(LOG_LEVEL_CONNECT, "Could not connect to [%s]:%s: %s.", + csp->http->host_ip_addr_str, service, strerror(socket_in_error)); } else { - log_error(LOG_LEVEL_ERROR, - "Could not get state of TCP connection to [%s]:%s: %s;" - " dropping connection", - csp->http->host_ip_addr_str, service, strerror(errno)); + log_error(LOG_LEVEL_ERROR, "Could not get the state of " + "the connection to [%s]:%s: %s; dropping connection.", + csp->http->host_ip_addr_str, service, strerror(errno)); } } @@ -309,12 +308,12 @@ jb_socket connect_to(const char *host, int portnum, struct client_state *csp) freeaddrinfo(result); if (!rp) { - log_error(LOG_LEVEL_INFO, - "Could not connect to TCP/[%s]:%s", host, service); + log_error(LOG_LEVEL_CONNECT, "Could not connect to [%s]:%s.", + host, service); return(JB_INVALID_SOCKET); } - log_error(LOG_LEVEL_INFO, "Connected to TCP/%s[%s]:%s", host, - csp->http->host_ip_addr_str, service); + log_error(LOG_LEVEL_CONNECT, "Connected to %s[%s]:%s.", + host, csp->http->host_ip_addr_str, service); return(fd); @@ -946,7 +945,7 @@ void get_host_information(jb_socket afd, char **ip_address, char **hostname) { host = NULL; } -#elif FEATURE_PTHREAD +#elif def MUTEX_LOCKS_AVAILABLE privoxy_mutex_lock(&resolver_mutex); host = gethostbyaddr((const char *)&server.sin_addr, sizeof(server.sin_addr), AF_INET); @@ -1112,7 +1111,7 @@ unsigned long resolve_hostname_to_ip(const char *host) { hostp = NULL; } -#elif FEATURE_PTHREAD +#elif def MUTEX_LOCKS_AVAILABLE privoxy_mutex_lock(&resolver_mutex); while (NULL == (hostp = gethostbyname(host)) && (h_errno == TRY_AGAIN) && (dns_retries++ < MAX_DNS_RETRIES))