- struct StatsContext *stats_context = cls;
- char *buf;
- int buf_len;
-
- if ((GNUNET_OK == success) && (data_file != NULL))
- {
- /* Stats lookup successful, write out data */
- buf = NULL;
- buf_len =
- GNUNET_asprintf (&buf, "TOTAL_NSE_RECEIVED_MESSAGES_%d: %u \n",
- stats_context->shutdown,
- stats_context->total_nse_received_messages);
- if (buf_len > 0)
- {
- GNUNET_DISK_file_write (data_file, buf, buf_len);
- }
- GNUNET_free_non_null (buf);
-
- buf = NULL;
- buf_len =
- GNUNET_asprintf (&buf, "TOTAL_NSE_TRANSMITTED_MESSAGES_%d: %u\n",
- stats_context->shutdown,
- stats_context->total_nse_transmitted_messages);
- if (buf_len > 0)
- {
- GNUNET_DISK_file_write (data_file, buf, buf_len);
- }
- GNUNET_free_non_null (buf);
-
- buf = NULL;
- buf_len =
- GNUNET_asprintf (&buf, "TOTAL_NSE_CROSS_%d: %u \n",
- stats_context->shutdown,
- stats_context->total_nse_cross);
- if (buf_len > 0)
- {
- GNUNET_DISK_file_write (data_file, buf, buf_len);
- }
- GNUNET_free_non_null (buf);
-
- buf = NULL;
- buf_len =
- GNUNET_asprintf (&buf, "TOTAL_NSE_EXTRA_%d: %u \n",
- stats_context->shutdown,
- stats_context->total_nse_extra);
- if (buf_len > 0)
- {
- GNUNET_DISK_file_write (data_file, buf, buf_len);
- }
- GNUNET_free_non_null (buf);
-
- buf = NULL;
- buf_len =
- GNUNET_asprintf (&buf, "TOTAL_NSE_DISCARDED_%d: %u \n",
- stats_context->shutdown,
- stats_context->total_discarded);
- if (buf_len > 0)
- {
- GNUNET_DISK_file_write (data_file, buf, buf_len);
- }
- GNUNET_free_non_null (buf);
-
- }
-
- if (GNUNET_YES == stats_context->shutdown)
- {
- GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == shutdown_handle);
- shutdown_handle = GNUNET_SCHEDULER_add_now (&shutdown_task, NULL);
- }
- else
- {
- GNUNET_assert (churn_task == GNUNET_SCHEDULER_NO_TASK);
- churn_task = GNUNET_SCHEDULER_add_now (&churn_peers, NULL);
- }
- GNUNET_free (stats_context);