[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r35247 - gnunet/src/transport
From: |
gnunet |
Subject: |
[GNUnet-SVN] r35247 - gnunet/src/transport |
Date: |
Thu, 12 Feb 2015 20:52:47 +0100 |
Author: grothoff
Date: 2015-02-12 20:52:47 +0100 (Thu, 12 Feb 2015)
New Revision: 35247
Modified:
gnunet/src/transport/plugin_transport_tcp.c
Log:
log TCP server suspends
Modified: gnunet/src/transport/plugin_transport_tcp.c
===================================================================
--- gnunet/src/transport/plugin_transport_tcp.c 2015-02-12 19:37:14 UTC (rev
35246)
+++ gnunet/src/transport/plugin_transport_tcp.c 2015-02-12 19:52:47 UTC (rev
35247)
@@ -1573,25 +1573,18 @@
{
session = si_ctx.result;
LOG (GNUNET_ERROR_TYPE_DEBUG,
- "Found existing session for `%s' address `%s' session %p\n",
+ "Found existing session for `%s' address `%s'\n",
GNUNET_i2s (&address->peer),
tcp_plugin_address_to_string (plugin,
address->address,
- address->address_length),
- session);
+ address->address_length));
return session;
}
- LOG (GNUNET_ERROR_TYPE_DEBUG,
- "Existing sessions did not match address `%s' or peer `%s'\n",
- tcp_plugin_address_to_string (plugin,
- address->address,
- address->address_length),
- GNUNET_i2s (&address->peer));
}
if (addrlen == sizeof(struct IPv6TcpAddress))
{
- GNUNET_assert(NULL != address->address); /* make static analysis happy */
+ GNUNET_assert (NULL != address->address); /* make static analysis happy */
t6 = address->address;
options = t6->options;
af = AF_INET6;
@@ -1627,12 +1620,16 @@
}
else
{
- GNUNET_STATISTICS_update (plugin->env->stats, gettext_noop
- ("# requests to create session with invalid address"), 1, GNUNET_NO);
+ GNUNET_STATISTICS_update (plugin->env->stats,
+ gettext_noop ("# requests to create session with
invalid address"),
+ 1,
+ GNUNET_NO);
return NULL;
}
- net_type = plugin->env->get_address_type (plugin->env->cls, sb, sbs);
+ net_type = plugin->env->get_address_type (plugin->env->cls,
+ sb,
+ sbs);
GNUNET_break (net_type != GNUNET_ATS_NET_UNSPECIFIED);
if ((is_natd == GNUNET_YES) && (addrlen == sizeof(struct IPv6TcpAddress)))
@@ -1656,10 +1653,11 @@
return NULL;
}
- if ((is_natd == GNUNET_YES) && (NULL != plugin->nat) &&
- (GNUNET_NO ==
- GNUNET_CONTAINER_multipeermap_contains (plugin->nat_wait_conns,
- &address->peer)))
+ if ( (is_natd == GNUNET_YES) &&
+ (NULL != plugin->nat) &&
+ (GNUNET_NO ==
+ GNUNET_CONTAINER_multipeermap_contains (plugin->nat_wait_conns,
+ &address->peer)))
{
LOG (GNUNET_ERROR_TYPE_DEBUG,
"Found valid IPv4 NAT address (creating session)!\n");
@@ -1753,8 +1751,13 @@
}
plugin->cur_connections++;
if (plugin->cur_connections == plugin->max_connections)
+ {
+ GNUNET_STATISTICS_update (session->plugin->env->stats,
+ gettext_noop ("# TCP service suspended"),
+ 1,
+ GNUNET_NO);
GNUNET_SERVER_suspend (plugin->server); /* Maximum number of connections
rechead */
-
+ }
LOG (GNUNET_ERROR_TYPE_DEBUG,
"Asked to transmit to `%4s', creating fresh session using address
`%s'.\n",
GNUNET_i2s (&address->peer),
@@ -2324,8 +2327,15 @@
if (NULL != plugin->service) /* Otherwise value is incremented in
tcp_access_check */
plugin->cur_connections++;
if (plugin->cur_connections == plugin->max_connections)
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+ _("TCP connection limit reached, suspending server\n"));
+ GNUNET_STATISTICS_update (session->plugin->env->stats,
+ gettext_noop ("# TCP service suspended"),
+ 1,
+ GNUNET_NO);
GNUNET_SERVER_suspend (plugin->server); /* Maximum number of connections
rechead */
-
+ }
if (GNUNET_OK ==
GNUNET_SERVER_client_get_address (client, &vaddr, &alen))
{
@@ -2371,7 +2381,7 @@
vaddr,
alen);
LOG (GNUNET_ERROR_TYPE_DEBUG,
- "Creating new%s session %p for peer `%s' client %p \n",
+ "Creating new%s session %p for peer `%s' client %p\n",
GNUNET_HELLO_address_check_option (session->address,
GNUNET_HELLO_ADDRESS_INFO_INBOUND)
? " inbound" : "",
@@ -2553,15 +2563,21 @@
session->address->address_length));
if (plugin->cur_connections == plugin->max_connections)
+ {
+ GNUNET_STATISTICS_update (session->plugin->env->stats,
+ gettext_noop ("# TCP service resumed"),
+ 1,
+ GNUNET_NO);
GNUNET_SERVER_resume (plugin->server); /* Resume server */
+ }
if (plugin->cur_connections < 1)
GNUNET_break(0);
else
plugin->cur_connections--;
- GNUNET_STATISTICS_update (session->plugin->env->stats, gettext_noop
- ("# network-level TCP disconnect events"),
+ GNUNET_STATISTICS_update (session->plugin->env->stats,
+ gettext_noop ("# network-level TCP disconnect
events"),
1,
GNUNET_NO);
tcp_plugin_disconnect_session (plugin, session);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r35247 - gnunet/src/transport,
gnunet <=