{
struct PeerContext *peer_ctx;
struct GNUNET_HashCode port;
+ struct GNUNET_PeerIdentity *ctx_peer;
/* There exists a copy-paste-clone in run() */
struct GNUNET_MQ_MessageHandler cadet_handlers[] = {
GNUNET_MQ_hd_fixed_size (peer_check,
GNUNET_CRYPTO_hash (GNUNET_APPLICATION_PORT_RPS,
strlen (GNUNET_APPLICATION_PORT_RPS),
&port);
+ ctx_peer = GNUNET_new (struct GNUNET_PeerIdentity);
+ *ctx_peer = *peer;
peer_ctx->send_channel =
GNUNET_CADET_channel_create (cadet_handle,
- (struct GNUNET_PeerIdentity *) peer, /* context */
+ (struct GNUNET_PeerIdentity *) ctx_peer, /* context */
peer,
&port,
GNUNET_CADET_OPTION_RELIABLE,
LOG (GNUNET_ERROR_TYPE_WARNING,
"channel (%s) without associated context was destroyed\n",
GNUNET_i2s (peer));
+ GNUNET_free (peer);
return;
}
to_file (file_name_view_log,
"-%s\t(cleanup channel, ourself)",
GNUNET_i2s_full (peer));
- //GNUNET_free (peer);
+ GNUNET_free (peer);
return;
}
{ /* We are about to clean the sending channel. Clean the respective
* context */
Peers_cleanup_destroyed_channel (cls, channel);
- //GNUNET_free (peer);
+ GNUNET_free (peer);
return;
}
else
* open. It probably went down. Remove it from our knowledge. */
Peers_cleanup_destroyed_channel (cls, channel);
remove_peer (peer);
- //GNUNET_free (peer);
+ GNUNET_free (peer);
return;
}
}
{ /* Other peer tried to establish a channel to us twice. We do not accept
* that. Clean the context. */
Peers_cleanup_destroyed_channel (cls, channel);
- //GNUNET_free (peer);
+ GNUNET_free (peer);
return;
}
else
* it. */
Peers_cleanup_destroyed_channel (cls, channel);
clean_peer (peer);
- //GNUNET_free (peer);
+ GNUNET_free (peer);
return;
}
}
LOG (GNUNET_ERROR_TYPE_WARNING,
"Destroyed channel is neither sending nor receiving channel\n");
}
- //GNUNET_free (peer);
+ GNUNET_free (peer);
}
/***********************************************************************