unsigned int l;
unsigned int l2;
+#if MESH_DEBUG
+ struct GNUNET_PeerIdentity id;
+
+ GNUNET_PEER_resolve (peer_info->id, &id);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "MESH: adding path [%u] to peer %s\n",
+ path->length,
+ GNUNET_i2s (&id));
+#endif
if (NULL == peer_info || NULL == path)
{
GNUNET_break (0);
+ path_destroy (path);
return;
}
if (l2 > l)
{
GNUNET_CONTAINER_DLL_insert_before (peer_info->path_head,
- peer_info->path_tail, aux, path);
+ peer_info->path_tail,
+ aux,
+ path);
+ return;
}
else
{
*/
static struct MeshPeerPath *
path_build_from_dht (const struct GNUNET_PeerIdentity *get_path,
- unsigned int get_path_length,
+ unsigned int get_path_length,
const struct GNUNET_PeerIdentity *put_path,
- unsigned int put_path_length)
+ unsigned int put_path_length)
{
struct MeshPeerPath *p;
GNUNET_PEER_Id id;
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MESH: (SERVER DOWN)\n");
return;
}
- GNUNET_SERVER_client_drop (client);
c = clients;
while (NULL != c)
{
continue;
}
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MESH: matching client found\n");
+ GNUNET_SERVER_client_drop (c->handle);
if (NULL != c->tunnels)
{
GNUNET_CONTAINER_multihashmap_iterate (c->tunnels,
uint16_t i;
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MESH: new client connected\n");
- GNUNET_SERVER_client_keep (client);
/* Check data sanity */
size = ntohs (message->size) - sizeof (struct GNUNET_MESH_ClientConnect);
cc_msg = (struct GNUNET_MESH_ClientConnect *) message;
#endif
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MESH: CLIENT NEW %u at %p\n", c->id, c);
c->handle = client;
+ GNUNET_SERVER_client_keep (client);
a = (GNUNET_MESH_ApplicationType *) &cc_msg[1];
if (napps > 0)
{