-/* Copyright (c) 2012-2020. The SimGrid Team.
+/* Copyright (c) 2012-2022. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
return xbt_dynar_member(peers, &id);
}
-/**
- * Tracker main function
- * @param argc number of arguments
- * @param argv arguments
- */
void tracker(int argc, char* argv[])
{
// Checking arguments
xbt_assert(argc == 2, "Wrong number of arguments for the tracker.");
// Retrieving end time
- double deadline = xbt_str_parse_double(argv[1], "Invalid deadline: %s");
+ double deadline = xbt_str_parse_double(argv[1], "Invalid deadline");
xbt_assert(deadline > 0, "Wrong deadline supplied");
// Building peers array
// Sending peers to the requesting peer
tracker_answer_t ta = tracker_answer_new(TRACKER_QUERY_INTERVAL);
int next_peer;
- int peers_length = xbt_dynar_length(peers_list);
+ int peers_length = (int)xbt_dynar_length(peers_list);
for (int i = 0; i < MAXIMUM_PEERS && i < peers_length; i++) {
do {
next_peer = xbt_dynar_get_as(peers_list, rand() % peers_length, int);
tracker_answer_t ta = xbt_new(s_tracker_answer_t, 1);
ta->interval = interval;
ta->peers = xbt_dynar_new(sizeof(int), NULL);
- ;
+
return ta;
}
-
-/**
- * Build a new task for the tracker.
- * @param issuer_host_name Hostname of the issuer. For debugging purposes
- */
-// tracker_task_data_t tracker_task_data_new(const char* issuer_host_name, sg_mailbox_t mailbox, int peer_id, int
-// uploaded,
-// int downloaded, int left)
-//{
-// tracker_task_data_t task = xbt_new(s_tracker_task_data_t, 1);
-//
-// task->type = TRACKER_TASK_QUERY;
-// task->issuer_host_name = issuer_host_name;
-// task->mailbox = mailbox;
-// task->peer_id = peer_id;
-// task->uploaded = uploaded;
-// task->downloaded = downloaded;
-// task->left = left;
-//
-// task->peers = xbt_dynar_new(sizeof(int), NULL);
-//
-// return task;
-//}
-//
-///**
-// * Free the data structure of a tracker task.
-// * @param task data to free
-// */
-// void tracker_task_data_free(tracker_task_data_t task)
-//{
-// xbt_dynar_free(&task->peers);
-// xbt_free(task);
-//}
-//