From 98aa0c158ee5cf82097432eff4cd15da2993198d Mon Sep 17 00:00:00 2001 From: Matthias Wachs Date: Mon, 10 Oct 2011 10:50:08 +0000 Subject: [PATCH] fixes --- .../test_transport_api_reliability.c | 16 +++++++++++- .../test_transport_api_unreliability.c | 26 ++++++++++++------- ...est_transport_api_unreliability_constant.c | 15 +++++++++-- 3 files changed, 44 insertions(+), 13 deletions(-) diff --git a/src/transport/test_transport_api_reliability.c b/src/transport/test_transport_api_reliability.c index 21912e848..5d17b8d7e 100644 --- a/src/transport/test_transport_api_reliability.c +++ b/src/transport/test_transport_api_reliability.c @@ -81,6 +81,9 @@ char *cfg_file_p2; struct GNUNET_TRANSPORT_TESTING_handle * tth; +static GNUNET_TRANSPORT_TESTING_ConnectRequest cc; + + /* * Testcase specific declarations */ @@ -147,8 +150,13 @@ end () GNUNET_TRANSPORT_notify_transmit_ready_cancel (th); th = NULL; + if (cc != NULL) + GNUNET_TRANSPORT_TESTING_connect_peers_cancel(tth, cc); + GNUNET_TRANSPORT_TESTING_stop_peer (tth, p1); GNUNET_TRANSPORT_TESTING_stop_peer (tth, p2); + + GNUNET_TRANSPORT_TESTING_done (tth); } static void @@ -166,6 +174,9 @@ end_badly () GNUNET_TRANSPORT_notify_transmit_ready_cancel (th); th = NULL; + if (cc != NULL) + GNUNET_TRANSPORT_TESTING_connect_peers_cancel(tth, cc); + if (p1 != NULL) GNUNET_TRANSPORT_TESTING_stop_peer (tth, p1); if (p2 != NULL) @@ -402,7 +413,10 @@ testing_connect_cb (struct PeerContext *p1, struct PeerContext *p2, void *cls) p2->no, GNUNET_i2s (&p2->id)); GNUNET_free (p1_c); + cc = NULL; + GNUNET_SCHEDULER_add_now (&sendtask, NULL); + } void start_cb (struct PeerContext * p, @@ -435,7 +449,7 @@ void start_cb (struct PeerContext * p, sender->no, sender_c, receiver->no, GNUNET_i2s (&receiver->id)); - GNUNET_TRANSPORT_TESTING_connect_peers (tth, p1, p2, &testing_connect_cb, NULL); + cc = GNUNET_TRANSPORT_TESTING_connect_peers (tth, p1, p2, &testing_connect_cb, NULL); } diff --git a/src/transport/test_transport_api_unreliability.c b/src/transport/test_transport_api_unreliability.c index 20b05a50f..a18a809c9 100644 --- a/src/transport/test_transport_api_unreliability.c +++ b/src/transport/test_transport_api_unreliability.c @@ -39,7 +39,7 @@ #include "transport.h" #include "transport-testing.h" -#define VERBOSE GNUNET_EXTRA_LOGGING +#define VERBOSE GNUNET_NO #define VERBOSE_ARM GNUNET_EXTRA_LOGGING @@ -78,7 +78,7 @@ char *cfg_file_p2; uint32_t max_bps_p1; uint32_t max_bps_p2; -struct TransportTestingHandle * tth; +struct GNUNET_TRANSPORT_TESTING_handle * tth; /* * Testcase specific declarations @@ -115,6 +115,8 @@ static struct GNUNET_TIME_Absolute start_time; static char bitmap[TOTAL_MSGS / 8]; +static GNUNET_TRANSPORT_TESTING_ConnectRequest cc; + /* * END Testcase specific declarations */ @@ -152,6 +154,10 @@ end () GNUNET_TRANSPORT_notify_transmit_ready_cancel (th); th = NULL; + if (cc != NULL) + GNUNET_TRANSPORT_TESTING_connect_peers_cancel(tth, cc); + cc = NULL; + GNUNET_TRANSPORT_TESTING_stop_peer (tth, p1); GNUNET_TRANSPORT_TESTING_stop_peer (tth, p2); @@ -193,6 +199,10 @@ end_badly () GNUNET_TRANSPORT_notify_transmit_ready_cancel (th); th = NULL; + if (cc != NULL) + GNUNET_TRANSPORT_TESTING_connect_peers_cancel(tth, cc); + cc = NULL; + if (p1 != NULL) GNUNET_TRANSPORT_TESTING_stop_peer (tth, p1); if (p2 != NULL) @@ -319,7 +329,6 @@ notify_receive (void *cls, const struct GNUNET_PeerIdentity *peer, } if (n == TOTAL_MSGS) { - fprintf (stderr, "\n"); end (); } } @@ -387,7 +396,7 @@ notify_ready (void *cls, size_t size, void *buf) { fprintf (stderr, "\n"); GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, - "All messages scheduled to be sent!!\n"); + "All messages scheduled to be sent\n"); if (GNUNET_SCHEDULER_NO_TASK != die_task) GNUNET_SCHEDULER_cancel (die_task); die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL); @@ -451,15 +460,14 @@ static void testing_connect_cb (struct PeerContext *p1, struct PeerContext *p2, void *cls) { char *p1_c = strdup (GNUNET_i2s (&p1->id)); - GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Peers connected: %s <-> %s\n", p1_c, GNUNET_i2s (&p2->id)); GNUNET_free (p1_c); test_connected = GNUNET_YES; + cc = NULL; - // FIXME: THIS IS REQUIRED! SEEMS TO BE A BUG! - GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS, &sendtask, NULL); + GNUNET_SCHEDULER_add_now (&sendtask, NULL); } void start_cb (struct PeerContext * p, @@ -476,9 +484,7 @@ void start_cb (struct PeerContext * p, return; test_connected = GNUNET_NO; - - test_connected = GNUNET_NO; - GNUNET_TRANSPORT_TESTING_connect_peers (tth, p1, p2, &testing_connect_cb, NULL); + cc = GNUNET_TRANSPORT_TESTING_connect_peers (tth, p1, p2, &testing_connect_cb, NULL); } diff --git a/src/transport/test_transport_api_unreliability_constant.c b/src/transport/test_transport_api_unreliability_constant.c index f5adeb25c..a74e6d2eb 100644 --- a/src/transport/test_transport_api_unreliability_constant.c +++ b/src/transport/test_transport_api_unreliability_constant.c @@ -80,6 +80,8 @@ char *cfg_file_p2; uint32_t max_bps_p1; uint32_t max_bps_p2; +static GNUNET_TRANSPORT_TESTING_ConnectRequest cc; + /* * Testcase specific declarations */ @@ -151,6 +153,10 @@ end () GNUNET_TRANSPORT_notify_transmit_ready_cancel (th); th = NULL; + if (cc != NULL) + GNUNET_TRANSPORT_TESTING_connect_peers_cancel(tth, cc); + cc = NULL; + GNUNET_TRANSPORT_TESTING_stop_peer (tth, p1); GNUNET_TRANSPORT_TESTING_stop_peer (tth, p2); @@ -179,6 +185,10 @@ end_badly () GNUNET_TRANSPORT_notify_transmit_ready_cancel (th); th = NULL; + if (cc != NULL) + GNUNET_TRANSPORT_TESTING_connect_peers_cancel(tth, cc); + cc = NULL; + if (p1 != NULL) GNUNET_TRANSPORT_TESTING_stop_peer (tth, p1); if (p2 != NULL) @@ -415,6 +425,8 @@ testing_connect_cb (struct PeerContext *p1, struct PeerContext *p2, void *cls) GNUNET_i2s (&p2->id)); GNUNET_free (p1_c); + cc = NULL; + GNUNET_SCHEDULER_add_now (&sendtask, NULL); } @@ -431,8 +443,7 @@ void start_cb (struct PeerContext * p, if (started != 2) return; - GNUNET_TRANSPORT_TESTING_connect_peers (tth, p1, p2, &testing_connect_cb, NULL); - + cc = GNUNET_TRANSPORT_TESTING_connect_peers (tth, p1, p2, &testing_connect_cb, NULL); } static void -- 2.25.1