-const char jcc_rcs[] = "$Id: jcc.c,v 1.368 2011/10/23 11:18:53 fabiankeil Exp $";
+const char jcc_rcs[] = "$Id: jcc.c,v 1.371 2011/10/23 11:24:33 fabiankeil Exp $";
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/jcc.c,v $
privoxy_mutex_t rand_mutex;
#endif /* ndef HAVE_RANDOM */
+#ifdef HAVE_STRTOK
+privoxy_mutex_t strtok_mutex;
+#endif /* def HAVE_STRTOK */
+
#endif /* def MUTEX_LOCKS_AVAILABLE */
#if defined(unix)
&& ((csp->flags & CSP_FLAG_SERVER_CONNECTION_KEEP_ALIVE)
|| (csp->flags & CSP_FLAG_CRUNCHED))
&& (csp->cfd != JB_INVALID_SOCKET)
- && (csp->flags & CSP_FLAG_CLIENT_CONNECTION_KEEP_ALIVE);
+ && ((csp->flags & CSP_FLAG_CLIENT_CONNECTION_KEEP_ALIVE)
+ || (csp->config->feature_flags &
+ RUNTIME_FEATURE_CONNECTION_SHARING));
if (continue_chatting && !(csp->flags & CSP_FLAG_CRUNCHED))
{
if (continue_chatting)
{
- unsigned int client_timeout;
+ unsigned int client_timeout = 1; /* XXX: Use something else here? */
- if (csp->server_connection.sfd != JB_INVALID_SOCKET)
- {
- client_timeout = (unsigned)csp->server_connection.keep_alive_timeout - latency;
- log_error(LOG_LEVEL_CONNECT,
- "Waiting for the next client request on socket %d. "
- "Keeping the server socket %d to %s open.",
- csp->cfd, csp->server_connection.sfd, csp->server_connection.host);
- }
- else
+ if (0 != (csp->flags & CSP_FLAG_CLIENT_CONNECTION_KEEP_ALIVE))
{
- client_timeout = 1; /* XXX: Use something else here? */
- log_error(LOG_LEVEL_CONNECT,
- "Waiting for the next client request on socket %d. "
- "No server socket to keep open.", csp->cfd);
+ if (csp->server_connection.sfd != JB_INVALID_SOCKET)
+ {
+ client_timeout = (unsigned)csp->server_connection.keep_alive_timeout - latency;
+ log_error(LOG_LEVEL_CONNECT,
+ "Waiting for the next client request on socket %d. "
+ "Keeping the server socket %d to %s open.",
+ csp->cfd, csp->server_connection.sfd, csp->server_connection.host);
+ }
+ else
+ {
+ log_error(LOG_LEVEL_CONNECT,
+ "Waiting for the next client request on socket %d. "
+ "No server socket to keep open.", csp->cfd);
+ }
}
if ((csp->flags & CSP_FLAG_CLIENT_CONNECTION_KEEP_ALIVE)
&& data_is_available(csp->cfd, (int)client_timeout)
}
else
{
- log_error(LOG_LEVEL_CONNECT,
- "No additional client request received in time on socket %d.",
- csp->cfd);
+ if (0 != (csp->flags & CSP_FLAG_CLIENT_CONNECTION_KEEP_ALIVE))
+ {
+ log_error(LOG_LEVEL_CONNECT,
+ "No additional client request received in time on socket %d.",
+ csp->cfd);
+ }
#ifdef FEATURE_CONNECTION_SHARING
if ((csp->config->feature_flags & RUNTIME_FEATURE_CONNECTION_SHARING)
&& (socket_is_still_alive(csp->server_connection.sfd)))
#ifndef HAVE_RANDOM
privoxy_mutex_init(&rand_mutex);
#endif /* ndef HAVE_RANDOM */
+
+#ifdef HAVE_STRTOK
+ privoxy_mutex_init(&strtok_mutex);
+#endif /* def HAVE_STRTOK */
#endif /* def MUTEX_LOCKS_AVAILABLE */
}