struct ClientList *cli = grp->clients_head;
GNUNET_log (GNUNET_ERROR_TYPE_INFO,
- "%p Sending message to all clients of the group.\n",
- grp);
+ "%p Sending message of type %u to all clients of the group.\n",
+ grp,
+ ntohs (env->mh->type));
while (NULL != cli)
{
GNUNET_MQ_send_copy (GNUNET_SERVICE_client_get_mq (cli->client),
if (-1 == ret)
{
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "client: error during sending message of type %u\n", ntohs(cstate->msg->type));
+ "client: error during sending message of type %u\n",
+ ntohs(cstate->msg->type));
if (EINTR == errno){
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"client: retrying message of type %u\n",
mq->current_envelope = ev;
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "mq: sending message of type %u, queue empty\n",
- ntohs(ev->mh->type));
+ "mq: sending message of type %u, queue empty (MQ: %p)\n",
+ ntohs(ev->mh->type),
+ mq);
mq->send_impl (mq,
ev->mh,
* are not queued! */
mq->current_envelope->parent_queue = NULL;
GNUNET_log (GNUNET_ERROR_TYPE_INFO,
- "MQ destroy drops message of type %u\n",
+ "MQ destroy drops current message of type %u\n",
ntohs (mq->current_envelope->mh->type));
GNUNET_MQ_discard (mq->current_envelope);
mq->current_envelope = NULL;
size_t left;
const char *buf;
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "service: sending message with type %u",
+ ntohs(client->msg->type));
+
+
client->send_task = NULL;
buf = (const char *) client->msg;
left = ntohs (client->msg->size) - client->msg_pos;
GNUNET_assert (ret <= (ssize_t) left);
if (0 == ret)
{
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "no data send");
GNUNET_MQ_inject_error (client->mq,
GNUNET_MQ_ERROR_WRITE);
return;
if (EPIPE != errno)
GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING,
"send");
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "socket send returned with error code %i",
+ errno);
GNUNET_MQ_inject_error (client->mq,
GNUNET_MQ_ERROR_WRITE);
return;
"Client dropped: %p (MQ: %p)\n",
c,
c->mq);
+
+#if EXECINFO
+ void *backtrace_array[MAX_TRACE_DEPTH];
+ int num_backtrace_strings = backtrace (backtrace_array, MAX_TRACE_DEPTH);
+ char **backtrace_strings =
+ backtrace_symbols (backtrace_array,
+ t->num_backtrace_strings);
+ for (unsigned int i = 0; i < num_backtrace_strings; i++)
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "client drop trace %u: %s\n",
+ i,
+ backtrace_strings[i]);
+#endif
+
if (NULL != c->drop_task)
{
/* asked to drop twice! */