aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/include/gnunet_mesh2_service.h2
-rw-r--r--src/mesh/mesh2_api.c19
2 files changed, 8 insertions, 13 deletions
diff --git a/src/include/gnunet_mesh2_service.h b/src/include/gnunet_mesh2_service.h
index cf5cb8e4d7..f12e377bca 100644
--- a/src/include/gnunet_mesh2_service.h
+++ b/src/include/gnunet_mesh2_service.h
@@ -73,7 +73,7 @@ struct GNUNET_MESH_Tunnel;
* @param sender Peer who sent the message.
* @param message The actual message.
*
- * @return GNUNET_OK to keep the connection open,
+ * @return GNUNET_OK to keep the tunnel open,
* GNUNET_SYSERR to close it (signal serious error).
*/
typedef int (*GNUNET_MESH_MessageCallback) (void *cls,
diff --git a/src/mesh/mesh2_api.c b/src/mesh/mesh2_api.c
index 810d9c8c1d..e1f781e23c 100644
--- a/src/mesh/mesh2_api.c
+++ b/src/mesh/mesh2_api.c
@@ -864,11 +864,8 @@ process_tunnel_destroy (struct GNUNET_MESH_Handle *h,
*
* @param h The mesh handle
* @param message A message encapsulating the data
- *
- * @return GNUNET_YES if everything went fine
- * GNUNET_NO if client closed connection (h no longer valid)
*/
-static int
+static void
process_incoming_data (struct GNUNET_MESH_Handle *h,
const struct GNUNET_MessageHeader *message)
{
@@ -909,14 +906,14 @@ process_incoming_data (struct GNUNET_MESH_Handle *h,
break;
default:
GNUNET_break (0);
- return GNUNET_YES;
+ return;
}
LOG (GNUNET_ERROR_TYPE_DEBUG, " pid %u\n", pid);
if (NULL == t)
{
/* Tunnel was ignored/destroyed, probably service didn't get it yet */
LOG (GNUNET_ERROR_TYPE_DEBUG, " ignored!\n");
- return GNUNET_YES;
+ return;
}
if (GNUNET_YES ==
GMC_is_pid_bigger(pid, t->last_ack_sent))
@@ -926,7 +923,7 @@ process_incoming_data (struct GNUNET_MESH_Handle *h,
" unauthorized message! (%u, ACK %u)\n",
pid, t->last_ack_sent);
// FIXME fc what now? accept? reject?
- return GNUNET_YES;
+ return;
}
t->last_pid_recv = pid;
type = ntohs (payload->type);
@@ -939,8 +936,8 @@ process_incoming_data (struct GNUNET_MESH_Handle *h,
handler->callback (h->cls, t, &t->ctx, peer, payload))
{
LOG (GNUNET_ERROR_TYPE_DEBUG, "callback caused disconnection\n");
- GNUNET_MESH_disconnect (h);
- return GNUNET_NO;
+ GNUNET_MESH_tunnel_destroy (t);
+ return;
}
else
{
@@ -949,7 +946,6 @@ process_incoming_data (struct GNUNET_MESH_Handle *h,
}
}
}
- return GNUNET_YES;
}
@@ -1119,8 +1115,7 @@ msg_received (void *cls, const struct GNUNET_MessageHeader *msg)
case GNUNET_MESSAGE_TYPE_MESH_UNICAST:
case GNUNET_MESSAGE_TYPE_MESH_MULTICAST:
case GNUNET_MESSAGE_TYPE_MESH_TO_ORIGIN:
- if (GNUNET_NO == process_incoming_data (h, msg))
- return;
+ process_incoming_data (h, msg);
break;
case GNUNET_MESSAGE_TYPE_MESH_LOCAL_ACK:
process_ack (h, msg);