X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/0868c23f9325ad81241a6e1df80e804d7f4067b7..ab8d6bf77b9aa74785b486fd5704e7fc63f25d66:/examples/msg/bittorrent/tracker.c diff --git a/examples/msg/bittorrent/tracker.c b/examples/msg/bittorrent/tracker.c index 9da5f9ae46..72ff0d1f67 100644 --- a/examples/msg/bittorrent/tracker.c +++ b/examples/msg/bittorrent/tracker.c @@ -1,10 +1,11 @@ -/* Copyright (c) 2012. The SimGrid Team. +/* Copyright (c) 2012-2015. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ + #include "tracker.h" -#include +#include #include static void task_free(void *data); @@ -17,16 +18,13 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(msg_tracker, "Messages specific for the tracker"); */ int tracker(int argc, char *argv[]) { - int i, key_elm; - char *key; - void *data_p; - - RngStream stream = RngStream_CreateStream("tracker"); + int i; + RngStream stream = (RngStream) MSG_host_get_property_value(MSG_host_self(), "stream"); //Checking arguments xbt_assert(argc == 2, "Wrong number of arguments for the tracker."); //Retrieving end time - double deadline = atof(argv[1]); + double deadline = xbt_str_parse_double(argv[1],"Invalid deadline: %s"); xbt_assert(deadline > 0, "Wrong deadline supplied"); //Building peers array xbt_dynar_t peers_list = xbt_dynar_new(sizeof(int), NULL); @@ -50,7 +48,7 @@ int tracker(int argc, char *argv[]) xbt_dynar_push_as(peers_list, int, data->peer_id); } //Sending peers to the peer - int nb_peers = 0, next_peer; + int next_peer; int peers_length = xbt_dynar_length(peers_list); for (i = 0; i < MAXIMUM_PAIRS && i < peers_length; i++) { do { @@ -80,8 +78,6 @@ int tracker(int argc, char *argv[]) } //Free the peers list xbt_dynar_free(&peers_list); - //Free the RngStream object. - RngStream_DeleteStream(&stream); XBT_INFO("Tracker is leaving"); @@ -140,7 +136,8 @@ void tracker_task_data_free(tracker_task_data_t task) */ int is_in_list(xbt_dynar_t peers, int id) { - int i, elm; + unsigned i; + int elm; xbt_dynar_foreach(peers, i, elm) { if (elm == id) { return 1;