-const char gateway_rcs[] = "$Id: gateway.c,v 1.87 2012/03/10 11:06:09 fabiankeil Exp $";
+const char gateway_rcs[] = "$Id: gateway.c,v 1.91 2012/10/21 12:56:38 fabiankeil Exp $";
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/gateway.c,v $
if (!free_slot_found)
{
log_error(LOG_LEVEL_CONNECT,
- "No free slots found to remembering socket for %s:%d. Last slot %d.",
+ "No free slots found to remember socket for %s:%d. Last slot %d.",
connection->host, connection->port, slot);
privoxy_mutex_unlock(&connection_reuse_mutex);
close_socket(connection->sfd);
}
assert(NULL != connection->host);
- reusable_connection[slot].host = strdup(connection->host);
- if (NULL == reusable_connection[slot].host)
- {
- log_error(LOG_LEVEL_FATAL, "Out of memory saving socket.");
- }
+ reusable_connection[slot].host = strdup_or_die(connection->host);
reusable_connection[slot].sfd = connection->sfd;
reusable_connection[slot].port = connection->port;
reusable_connection[slot].in_use = 0;
reusable_connection[slot].request_sent = connection->request_sent;
reusable_connection[slot].response_received = connection->response_received;
reusable_connection[slot].keep_alive_timeout = connection->keep_alive_timeout;
+ reusable_connection[slot].requests_sent_total = connection->requests_sent_total;
assert(reusable_connection[slot].gateway_host == NULL);
assert(reusable_connection[slot].gateway_port == 0);
reusable_connection[slot].forwarder_type = connection->forwarder_type;
if (NULL != connection->gateway_host)
{
- reusable_connection[slot].gateway_host = strdup(connection->gateway_host);
- if (NULL == reusable_connection[slot].gateway_host)
- {
- log_error(LOG_LEVEL_FATAL, "Out of memory saving gateway_host.");
- }
+ reusable_connection[slot].gateway_host = strdup_or_die(connection->gateway_host);
}
else
{
if (NULL != connection->forward_host)
{
- reusable_connection[slot].forward_host = strdup(connection->forward_host);
- if (NULL == reusable_connection[slot].forward_host)
- {
- log_error(LOG_LEVEL_FATAL, "Out of memory saving forward_host.");
- }
+ reusable_connection[slot].forward_host = strdup_or_die(connection->forward_host);
}
else
{
#endif /* def FEATURE_CONNECTION_SHARING */
-#ifdef FEATURE_CONNECTION_KEEP_ALIVE
/*********************************************************************
*
* Function : mark_connection_closed
closed_connection->request_sent = 0;
closed_connection->response_received = 0;
closed_connection->keep_alive_timeout = 0;
+ closed_connection->requests_sent_total = 0;
closed_connection->forwarder_type = SOCKS_NONE;
freez(closed_connection->gateway_host);
closed_connection->gateway_port = 0;
freez(closed_connection->forward_host);
closed_connection->forward_port = 0;
}
-#endif /* def FEATURE_CONNECTION_KEEP_ALIVE */
#ifdef FEATURE_CONNECTION_SHARING
reusable_connection[slot].in_use = TRUE;
sfd = reusable_connection[slot].sfd;
log_error(LOG_LEVEL_CONNECT,
- "Found reusable socket %d for %s:%d in slot %d. "
- "Timestamp made %d seconds ago. Timeout: %d. Latency: %d.",
+ "Found reusable socket %d for %s:%d in slot %d. Timestamp made %d "
+ "seconds ago. Timeout: %d. Latency: %d. Requests served: %d",
sfd, reusable_connection[slot].host, reusable_connection[slot].port,
slot, time(NULL) - reusable_connection[slot].timestamp,
reusable_connection[slot].keep_alive_timeout,
(int)(reusable_connection[slot].response_received -
- reusable_connection[slot].request_sent));
+ reusable_connection[slot].request_sent),
+ reusable_connection[slot].requests_sent_total);
break;
}
}