-const char gateway_rcs[] = "$Id: gateway.c,v 1.84 2012/02/29 19:35:11 fabiankeil Exp $";
+const char gateway_rcs[] = "$Id: gateway.c,v 1.88 2012/10/17 18:11:19 fabiankeil Exp $";
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/gateway.c,v $
}
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].timestamp = connection->timestamp;
- reusable_connection->request_sent = connection->request_sent;
- reusable_connection->response_received = connection->response_received;
+ 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;
assert(reusable_connection[slot].gateway_host == NULL);
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
{
return FALSE;
}
- if (( (NULL != connection->gateway_host)
+ if (( (NULL != connection->gateway_host)
&& (NULL != fwd->gateway_host)
&& strcmpic(connection->gateway_host, fwd->gateway_host))
&& (connection->gateway_host != fwd->gateway_host))
return FALSE;
}
- if (( (NULL != connection->forward_host)
+ if (( (NULL != connection->forward_host)
&& (NULL != fwd->forward_host)
&& strcmpic(connection->forward_host, fwd->forward_host))
&& (connection->forward_host != fwd->forward_host))
strncpy(cbuf + client_pos, target_host, sizeof(cbuf) - client_pos);
client_pos += (hostlen & 0xffu);
cbuf[client_pos++] = (char)((target_port >> 8) & 0xff);
- cbuf[client_pos++] = (char)((target_port ) & 0xff);
+ cbuf[client_pos++] = (char)((target_port ) & 0xff);
if (write_socket(sfd, cbuf, client_pos))
{
assert(errstr != NULL);
csp->error_message = strdup(errstr);
- if (server_size == -1)
- {
- /*
- * We didn't read() anything from the server at all.
- * Don't try to log a negative number of characters
- * which could trigger an assert().
- */
- server_size = 0;
- }
- log_error(LOG_LEVEL_CONNECT, "socks5_connect: %s: %N", errstr, server_size, sbuf);
+ log_error(LOG_LEVEL_CONNECT, "socks5_connect: %s", errstr);
close_socket(sfd);
errno = EINVAL;