[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r24310 - gnunet/src/testbed
From: |
gnunet |
Subject: |
[GNUnet-SVN] r24310 - gnunet/src/testbed |
Date: |
Sun, 14 Oct 2012 15:23:17 +0200 |
Author: harsha
Date: 2012-10-14 15:23:17 +0200 (Sun, 14 Oct 2012)
New Revision: 24310
Modified:
gnunet/src/testbed/test_testbed_api_topology.c
gnunet/src/testbed/testbed_api_topology.c
Log:
Random graph topology
Modified: gnunet/src/testbed/test_testbed_api_topology.c
===================================================================
--- gnunet/src/testbed/test_testbed_api_topology.c 2012-10-14 13:14:51 UTC
(rev 24309)
+++ gnunet/src/testbed/test_testbed_api_topology.c 2012-10-14 13:23:17 UTC
(rev 24310)
@@ -31,7 +31,7 @@
/**
* Number of peers we want to start
*/
-#define NUM_PEERS 5
+#define NUM_PEERS 100
/**
* Array of peers
@@ -85,7 +85,7 @@
{
case GNUNET_TESTBED_ET_CONNECT:
overlay_connects++;
- if ((NUM_PEERS - 1) == overlay_connects)
+ if ((NUM_PEERS) == overlay_connects)
{
result = GNUNET_OK;
GNUNET_SCHEDULER_add_now (&do_shutdown, NULL);
@@ -125,7 +125,8 @@
peers = peers_;
overlay_connects = 0;
op = GNUNET_TESTBED_overlay_configure_topology (NULL, NUM_PEERS, peers,
- GNUNET_TESTBED_TOPOLOGY_LINE);
+
GNUNET_TESTBED_TOPOLOGY_ERDOS_RENYI,
+ NUM_PEERS);
GNUNET_assert (NULL != op);
}
Modified: gnunet/src/testbed/testbed_api_topology.c
===================================================================
--- gnunet/src/testbed/testbed_api_topology.c 2012-10-14 13:14:51 UTC (rev
24309)
+++ gnunet/src/testbed/testbed_api_topology.c 2012-10-14 13:23:17 UTC (rev
24310)
@@ -225,7 +225,7 @@
struct TopologyContext *tc;
struct GNUNET_TESTBED_Operation *op;
struct GNUNET_TESTBED_Controller *c;
- unsigned int p;
+ unsigned int cnt;
if (num_peers < 2)
return NULL;
@@ -238,12 +238,31 @@
tc->link_array_size = num_peers - 1;
tc->link_array = GNUNET_malloc (sizeof (struct OverlayLink) *
tc->link_array_size);
- for (p=1; p < num_peers; p++)
+ for (cnt=1; cnt < num_peers; cnt++)
{
- tc->link_array[p-1].A = p-1;
- tc->link_array[p-1].B = p;
+ tc->link_array[cnt-1].A = cnt-1;
+ tc->link_array[cnt-1].B = cnt;
}
break;
+ case GNUNET_TESTBED_TOPOLOGY_ERDOS_RENYI:
+ tc->link_array_size = va_arg (va, unsigned int);
+ tc->link_array = GNUNET_malloc (sizeof (struct OverlayLink) *
+ tc->link_array_size);
+ for (cnt = 0; cnt < tc->link_array_size; cnt++)
+ {
+ uint32_t A_rand;
+ uint32_t B_rand;
+
+ do {
+ A_rand = GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_WEAK,
+ num_peers);
+ B_rand = GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_WEAK,
+ num_peers);
+ } while (A_rand == B_rand);
+ tc->link_array[cnt].A = A_rand;
+ tc->link_array[cnt].B = B_rand;
+ }
+ break;
default:
GNUNET_break (0);
return NULL;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r24310 - gnunet/src/testbed,
gnunet <=