Exemple #1
0
int main(int argc, char *argv[])
{
  struct nodeID *my_sock;
  pthread_t cycle_id, recv_id;

  cmdline_parse(argc, argv);

  my_sock = init();
  if (my_sock == NULL) {
    return -1;
  }

  if (srv_port != 0) {
    struct nodeID *knownHost;

    knownHost = create_node(srv_ip, srv_port);
    if (knownHost == NULL) {
      fprintf(stderr, "Error creating knownHost socket (%s:%d)!\n", srv_ip, srv_port);

      return -1;
    }
    psample_add_peer(context, knownHost, NULL, 0);
  }
  pthread_mutex_init(&neigh_lock, NULL);
  pthread_create(&recv_id, NULL, recv_loop, my_sock);
  pthread_create(&cycle_id, NULL, cycle_loop, my_sock);
  pthread_join(recv_id, NULL);
  pthread_join(cycle_id, NULL);

  return 0;
}
Exemple #2
0
int topoAddNeighbour(struct nodeID *neighbour, void *metadata, int metadata_size)
{
	// TODO: check this!! Just to use this function to bootstrap ncast...
	if (counter < TMAN_MAX_IDLE)
		return psample_add_peer(context,neighbour,metadata,metadata_size);
	else return tmanAddNeighbour(neighbour,metadata,metadata_size);
}
int main(int argc, char *argv[])
{
  struct nodeID *cloudHost;
  struct context *con;

  if (cmdline_parse(argc, argv) != 0){
    fprintf(stderr, "Error parsing parameters!\n");
    return 1;
  }

  if (!cloud_conf){
    fprintf(stderr, "No cloud configuration provided!\n");
    return 1;
  }

  con = init();
  if (!con){
    fprintf(stderr, "Error initializing!\n");
    return 1;
  }

  cloudHost = get_cloud_node(con->cloud_context, 0);
  psample_add_peer(con->ps_context, cloudHost, NULL, 0);
  nodeid_free(cloudHost);
  loop(con);
  fprintf(stderr, "Quitting!\n");
  return 0;
}