diff --git a/src/iperf_api.c b/src/iperf_api.c index 9037b2f..c58231b 100644 --- a/src/iperf_api.c +++ b/src/iperf_api.c @@ -161,7 +161,7 @@ add_interval_list(struct iperf_stream_result *rp, struct iperf_interval_results } else { n = rp->interval_results; - while (n->next) + while (n->next) /* find the end of the list */ n = n->next; n->next = ip; @@ -449,7 +449,7 @@ iperf_stats_callback(struct iperf_test *test) struct iperf_stream_result *rp = test->streams->result; struct iperf_interval_results *ip, temp; - //printf("in stats_callback: num_streams = %d \n", test->num_streams); + printf("in stats_callback: num_streams = %d \n", test->num_streams); for (i = 0; i < test->num_streams; i++) { rp = sp->result; diff --git a/src/iperf_server_api.c b/src/iperf_server_api.c index aaf990d..29848f6 100644 --- a/src/iperf_server_api.c +++ b/src/iperf_server_api.c @@ -120,10 +120,11 @@ iperf_run_server(struct iperf_test * test) { struct timeval tv; struct iperf_stream *np, *sp; - int j, result, message; + int j, result=0, message, cnt=0; char *results_string = NULL; printf("in iperf_run_server \n"); + FD_ZERO(&test->read_set); FD_SET(test->listener_sock_tcp, &test->read_set); FD_SET(test->listener_sock_udp, &test->read_set); @@ -135,6 +136,7 @@ iperf_run_server(struct iperf_test * test) test->default_settings->state = TEST_RUNNING; printf("iperf_run_server: Waiting for client connect.... \n"); + while (test->default_settings->state != TEST_END) { memcpy(&test->temp_set, &test->read_set, sizeof(test->read_set)); diff --git a/src/iperf_tcp.c b/src/iperf_tcp.c index b081cbd..49fbd15 100644 --- a/src/iperf_tcp.c +++ b/src/iperf_tcp.c @@ -248,7 +248,7 @@ iperf_new_tcp_stream(struct iperf_test * testp) sp->rcv = iperf_tcp_recv; /* pointer to receive function */ sp->snd = iperf_tcp_send; /* pointer to send function */ - /* XXX: not yet written... */ + /* XXX: not yet written... (what is this supposed to do? ) */ //sp->update_stats = iperf_tcp_update_stats; return sp; diff --git a/src/main.c b/src/main.c index d5faf39..2dc4d22 100644 --- a/src/main.c +++ b/src/main.c @@ -84,7 +84,8 @@ main(int argc, char **argv) char ch, role; struct iperf_test *test; - int port = PORT; + int port = PORT, cnt = 0; + struct iperf_stream *np; #ifdef TEST_PROC_AFFINITY /* didnt seem to work.... */ @@ -207,6 +208,7 @@ main(int argc, char **argv) exchange_parameters(test); test->streams->settings->state = STREAM_BEGIN; } + //printf("in main: calling iperf_run \n"); iperf_run(test); iperf_free_test(test); @@ -219,6 +221,7 @@ main(int argc, char **argv) int iperf_run(struct iperf_test * test) { + test->default_settings->state = TEST_RUNNING; switch (test->role) @@ -227,8 +230,8 @@ iperf_run(struct iperf_test * test) while (1) { iperf_run_server(test); + test->streams = NULL; sleep(1); - //iperf_init_test(test); /* re-initialize everything */ } return 0; case 'c':