[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r5634 - in GNUnet/src: server transports
From: |
gnunet |
Subject: |
[GNUnet-SVN] r5634 - in GNUnet/src: server transports |
Date: |
Mon, 10 Sep 2007 20:39:52 -0600 (MDT) |
Author: grothoff
Date: 2007-09-10 20:39:52 -0600 (Mon, 10 Sep 2007)
New Revision: 5634
Modified:
GNUnet/src/server/connection.c
GNUnet/src/transports/udp.c
GNUnet/src/transports/udp6.c
GNUnet/src/transports/udp_helper.c
Log:
fix
Modified: GNUnet/src/server/connection.c
===================================================================
--- GNUnet/src/server/connection.c 2007-09-10 16:05:25 UTC (rev 5633)
+++ GNUnet/src/server/connection.c 2007-09-11 02:39:52 UTC (rev 5634)
@@ -1643,7 +1643,8 @@
/* transport session is gone! re-establish! */
tsession = be->session.tsession;
be->session.tsession = NULL;
- transport->disconnect (tsession, __FILE__);
+ if (tsession != NULL)
+ transport->disconnect (tsession, __FILE__);
ensureTransportConnected (be);
if (be->session.tsession == NULL)
{
@@ -2693,6 +2694,7 @@
unsigned long long total_send_buffer_size;
int load_nup;
int load_cpu;
+ TSession * tsession;
ENTRY ();
load_cpu = os_cpu_get_load (ectx, cfg);
@@ -2762,19 +2764,19 @@
if ((alternative != NULL)
&& (transport->getMTU (alternative->ttype) == 0))
{
- transport->disconnect (root->session.tsession,
- __FILE__);
+ tsession = root->session.tsession;
root->session.mtu = 0;
root->session.tsession = alternative;
alternative = NULL;
root->consider_transport_switch = NO;
+ if (tsession != NULL)
+ transport->disconnect (tsession,
+ __FILE__);
if (stats != NULL)
stats->change (stat_transport_switches, 1);
}
- if (alternative != NULL)
- {
- transport->disconnect (alternative, __FILE__);
- }
+ if (alternative != NULL)
+ transport->disconnect (alternative, __FILE__);
}
if ((root->available_send_window > 35 * 1024) &&
(root->sendBufferSize < 4) &&
Modified: GNUnet/src/transports/udp.c
===================================================================
--- GNUnet/src/transports/udp.c 2007-09-10 16:05:25 UTC (rev 5633)
+++ GNUnet/src/transports/udp.c 2007-09-11 02:39:52 UTC (rev 5634)
@@ -536,6 +536,8 @@
stat_bytesSent = stats->create (gettext_noop ("# bytes sent via UDP"));
stat_bytesDropped
= stats->create (gettext_noop ("# bytes dropped by UDP (outgoing)"));
+ stat_udpConnected
+ = stats->create (gettext_noop ("# UDP connections (right now)"));
}
configLock = MUTEX_CREATE (NO);
reloadConfiguration ();
Modified: GNUnet/src/transports/udp6.c
===================================================================
--- GNUnet/src/transports/udp6.c 2007-09-10 16:05:25 UTC (rev 5633)
+++ GNUnet/src/transports/udp6.c 2007-09-11 02:39:52 UTC (rev 5634)
@@ -469,7 +469,17 @@
GE_LOG (ectx,
GE_ERROR | GE_USER | GE_IMMEDIATE,
_("MTU %llu for `%s' is probably too low!\n"), mtu, "UDP6");
-
+ stats = coreAPI->requestService ("stats");
+ if (stats != NULL)
+ {
+ stat_bytesReceived
+ = stats->create (gettext_noop ("# bytes received via UDP6"));
+ stat_bytesSent = stats->create (gettext_noop ("# bytes sent via UDP6"));
+ stat_bytesDropped
+ = stats->create (gettext_noop ("# bytes dropped by UDP6 (outgoing)"));
+ stat_udpConnected
+ = stats->create (gettext_noop ("# UDP6 connections (right now)"));
+ }
udpAPI.protocolNumber = UDP6_PROTOCOL_NUMBER;
udpAPI.mtu = mtu - sizeof (UDPMessage);
udpAPI.cost = 19950;
@@ -490,6 +500,11 @@
void
donetransport_udp6 ()
{
+ if (stats != NULL)
+ {
+ coreAPI->releaseService (stats);
+ stats = NULL;
+ }
MUTEX_DESTROY (configLock);
FREENONNULL (filteredNetworks_);
}
Modified: GNUnet/src/transports/udp_helper.c
===================================================================
--- GNUnet/src/transports/udp_helper.c 2007-09-10 16:05:25 UTC (rev 5633)
+++ GNUnet/src/transports/udp_helper.c 2007-09-11 02:39:52 UTC (rev 5634)
@@ -57,6 +57,8 @@
static int stat_bytesDropped;
+static int stat_udpConnected;
+
static struct GE_Context *ectx;
/**
@@ -156,6 +158,8 @@
tsession->ttype = udpAPI.protocolNumber;
tsession->peer = hello->senderIdentity;
*tsessionPtr = tsession;
+ if (stats != NULL)
+ stats->change (stat_udpConnected, 1);
return OK;
}
@@ -190,6 +194,8 @@
if (tsession->internal != NULL)
FREE (tsession->internal);
FREE (tsession);
+ if (stats != NULL)
+ stats->change (stat_udpConnected, -1);
}
return OK;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r5634 - in GNUnet/src: server transports,
gnunet <=