[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r24972 - gnunet/src/transport
From: |
gnunet |
Subject: |
[GNUnet-SVN] r24972 - gnunet/src/transport |
Date: |
Thu, 15 Nov 2012 10:38:33 +0100 |
Author: wachs
Date: 2012-11-15 10:38:33 +0100 (Thu, 15 Nov 2012)
New Revision: 24972
Modified:
gnunet/src/transport/plugin_transport_udp.c
gnunet/src/transport/plugin_transport_udp.h
Log:
- bug hunting
Modified: gnunet/src/transport/plugin_transport_udp.c
===================================================================
--- gnunet/src/transport/plugin_transport_udp.c 2012-11-14 22:00:09 UTC (rev
24971)
+++ gnunet/src/transport/plugin_transport_udp.c 2012-11-15 09:38:33 UTC (rev
24972)
@@ -979,6 +979,16 @@
static void
dequeue (struct Plugin *plugin, struct UDP_MessageWrapper * udpw)
{
+ if (plugin->bytes_in_buffer - udpw->msg_size < 0)
+ GNUNET_break (0);
+ else
+ {
+ GNUNET_STATISTICS_update (plugin->env->stats,
+ "# UDP, total, bytes in buffers",
+ udpw->msg_size, GNUNET_NO);
+ plugin->bytes_in_buffer -= udpw->msg_size;
+ }
+
GNUNET_STATISTICS_update (plugin->env->stats,
"# UDP, total, bytes in buffers",
-udpw->msg_size, GNUNET_NO);
@@ -1015,7 +1025,6 @@
call_continuation (&dummy, result);
- /* Remove left-over fragments from queue */
/* Remove leftover fragments from queue */
if (s->addrlen == sizeof (struct sockaddr_in6))
{
@@ -1440,14 +1449,19 @@
return s;
}
-
static void
enqueue (struct Plugin *plugin, struct UDP_MessageWrapper * udpw)
{
+ if (plugin->bytes_in_buffer + udpw->msg_size > INT64_MAX)
+ GNUNET_break (0);
+ else
+ {
+ GNUNET_STATISTICS_update (plugin->env->stats,
+ "# UDP, total, bytes in buffers",
+ udpw->msg_size, GNUNET_NO);
+ plugin->bytes_in_buffer += udpw->msg_size;
+ }
GNUNET_STATISTICS_update (plugin->env->stats,
- "# UDP, total, bytes in buffers",
- udpw->msg_size, GNUNET_NO);
- GNUNET_STATISTICS_update (plugin->env->stats,
"# UDP, total, msgs in buffers",
1, GNUNET_NO);
if (udpw->session->addrlen == sizeof (struct sockaddr_in))
Modified: gnunet/src/transport/plugin_transport_udp.h
===================================================================
--- gnunet/src/transport/plugin_transport_udp.h 2012-11-14 22:00:09 UTC (rev
24971)
+++ gnunet/src/transport/plugin_transport_udp.h 2012-11-15 09:38:33 UTC (rev
24972)
@@ -159,7 +159,13 @@
*/
char *bind6_address;
+
/**
+ * Bytes currently in buffer
+ */
+ int64_t bytes_in_buffer;
+
+ /**
* Handle to NAT traversal support.
*/
struct GNUNET_NAT_Handle *nat;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r24972 - gnunet/src/transport,
gnunet <=