[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r27907 - gnunet/src/mesh
From: |
gnunet |
Subject: |
[GNUnet-SVN] r27907 - gnunet/src/mesh |
Date: |
Thu, 11 Jul 2013 13:39:18 +0200 |
Author: bartpolot
Date: 2013-07-11 13:39:18 +0200 (Thu, 11 Jul 2013)
New Revision: 27907
Modified:
gnunet/src/mesh/gnunet-service-mesh.c
Log:
- avoid POLL messing with reliability counter
Modified: gnunet/src/mesh/gnunet-service-mesh.c
===================================================================
--- gnunet/src/mesh/gnunet-service-mesh.c 2013-07-11 11:35:57 UTC (rev
27906)
+++ gnunet/src/mesh/gnunet-service-mesh.c 2013-07-11 11:39:18 UTC (rev
27907)
@@ -4013,8 +4013,10 @@
{
struct GNUNET_MESH_Poll *msg;
struct MeshTunnel *t;
+ struct MeshFlowControl *fc;
GNUNET_PEER_Id id;
uint32_t pid;
+ uint32_t old;
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Got an POLL packet from %s!\n",
GNUNET_i2s (peer));
@@ -4039,18 +4041,25 @@
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, " from FWD\n");
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, " was %u\n",
t->next_fc.last_pid_recv);
- t->next_fc.last_pid_recv = pid;
+ fc = &t->next_fc;
+ old = fc->last_pid_recv;
+ fc->last_pid_recv = pid;
tunnel_send_bck_ack (t, GNUNET_MESSAGE_TYPE_MESH_POLL);
}
else if (t->prev_hop == id)
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, " from BCK\n");
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, " was %u\n",
t->prev_fc.last_pid_recv);
- t->prev_fc.last_pid_recv = pid;
+ fc = &t->prev_fc;
+ old = fc->last_pid_recv;
+ fc->last_pid_recv = pid;
tunnel_send_fwd_ack (t, GNUNET_MESSAGE_TYPE_MESH_POLL);
}
else
GNUNET_break (0);
+
+ if (GNUNET_YES == t->reliable)
+ fc->last_pid_recv = old;
return GNUNET_OK;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r27907 - gnunet/src/mesh,
gnunet <=