gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r23458 - gnunet/src/mesh


From: gnunet
Subject: [GNUnet-SVN] r23458 - gnunet/src/mesh
Date: Mon, 27 Aug 2012 21:02:34 +0200

Author: bartpolot
Date: 2012-08-27 21:02:34 +0200 (Mon, 27 Aug 2012)
New Revision: 23458

Modified:
   gnunet/src/mesh/gnunet-service-mesh.c
Log:
- only manage buffer on payload

Modified: gnunet/src/mesh/gnunet-service-mesh.c
===================================================================
--- gnunet/src/mesh/gnunet-service-mesh.c       2012-08-27 18:53:46 UTC (rev 
23457)
+++ gnunet/src/mesh/gnunet-service-mesh.c       2012-08-27 19:02:34 UTC (rev 
23458)
@@ -4726,22 +4726,30 @@
                     queue->type);
         data_size = 0;
     }
-
-    cinfo = tunnel_get_neighbor_fc(t, &dst_id);
-    if (cinfo->send_buffer[cinfo->send_buffer_start] != queue)
+    switch (queue->type)
     {
-      GNUNET_break(0);
-      GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
-                  "at pos %u (%p) != %p\n",
-                  cinfo->send_buffer_start,
-                  cinfo->send_buffer[cinfo->send_buffer_start],
-                  queue);
+      case GNUNET_MESSAGE_TYPE_MESH_UNICAST:
+      case GNUNET_MESSAGE_TYPE_MESH_TO_ORIGIN:
+      case GNUNET_MESSAGE_TYPE_MESH_MULTICAST:
+        cinfo = tunnel_get_neighbor_fc(t, &dst_id);
+        if (cinfo->send_buffer[cinfo->send_buffer_start] != queue)
+        {
+          GNUNET_break(0);
+          GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+                      "at pos %u (%p) != %p\n",
+                      cinfo->send_buffer_start,
+                      cinfo->send_buffer[cinfo->send_buffer_start],
+                      queue);
+        }
+        GNUNET_break(cinfo->send_buffer_n > 0);
+        cinfo->send_buffer[cinfo->send_buffer_start] = NULL;
+        cinfo->send_buffer_n--;
+        cinfo->send_buffer_start++;
+        cinfo->send_buffer_start %= t->fwd_queue_max;
+        break;
+      default:
+        break;
     }
-    GNUNET_break(cinfo->send_buffer_n > 0);
-    cinfo->send_buffer[cinfo->send_buffer_start] = NULL;
-    cinfo->send_buffer_n--;
-    cinfo->send_buffer_start++;
-    cinfo->send_buffer_start %= t->fwd_queue_max;
 
     /* Free queue, but cls was freed by send_core_* */
     queue_destroy (queue, GNUNET_NO);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]