refactoring of state machine now complete! works for single stream TCP only at the moment
This commit is contained in:
parent
8f4e66c9d0
commit
150a09e9e2
@ -161,7 +161,7 @@ add_interval_list(struct iperf_stream_result *rp, struct iperf_interval_results
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
n = rp->interval_results;
|
n = rp->interval_results;
|
||||||
while (n->next)
|
while (n->next) /* find the end of the list */
|
||||||
n = n->next;
|
n = n->next;
|
||||||
|
|
||||||
n->next = ip;
|
n->next = ip;
|
||||||
@ -449,7 +449,7 @@ iperf_stats_callback(struct iperf_test *test)
|
|||||||
struct iperf_stream_result *rp = test->streams->result;
|
struct iperf_stream_result *rp = test->streams->result;
|
||||||
struct iperf_interval_results *ip, temp;
|
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++) {
|
for (i = 0; i < test->num_streams; i++) {
|
||||||
rp = sp->result;
|
rp = sp->result;
|
||||||
|
|
||||||
|
@ -120,10 +120,11 @@ iperf_run_server(struct iperf_test * test)
|
|||||||
{
|
{
|
||||||
struct timeval tv;
|
struct timeval tv;
|
||||||
struct iperf_stream *np, *sp;
|
struct iperf_stream *np, *sp;
|
||||||
int j, result, message;
|
int j, result=0, message, cnt=0;
|
||||||
char *results_string = NULL;
|
char *results_string = NULL;
|
||||||
|
|
||||||
printf("in iperf_run_server \n");
|
printf("in iperf_run_server \n");
|
||||||
|
|
||||||
FD_ZERO(&test->read_set);
|
FD_ZERO(&test->read_set);
|
||||||
FD_SET(test->listener_sock_tcp, &test->read_set);
|
FD_SET(test->listener_sock_tcp, &test->read_set);
|
||||||
FD_SET(test->listener_sock_udp, &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;
|
test->default_settings->state = TEST_RUNNING;
|
||||||
|
|
||||||
printf("iperf_run_server: Waiting for client connect.... \n");
|
printf("iperf_run_server: Waiting for client connect.... \n");
|
||||||
|
|
||||||
while (test->default_settings->state != TEST_END)
|
while (test->default_settings->state != TEST_END)
|
||||||
{
|
{
|
||||||
memcpy(&test->temp_set, &test->read_set, sizeof(test->read_set));
|
memcpy(&test->temp_set, &test->read_set, sizeof(test->read_set));
|
||||||
|
@ -248,7 +248,7 @@ iperf_new_tcp_stream(struct iperf_test * testp)
|
|||||||
sp->rcv = iperf_tcp_recv; /* pointer to receive function */
|
sp->rcv = iperf_tcp_recv; /* pointer to receive function */
|
||||||
sp->snd = iperf_tcp_send; /* pointer to send 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;
|
//sp->update_stats = iperf_tcp_update_stats;
|
||||||
|
|
||||||
return sp;
|
return sp;
|
||||||
|
@ -84,7 +84,8 @@ main(int argc, char **argv)
|
|||||||
|
|
||||||
char ch, role;
|
char ch, role;
|
||||||
struct iperf_test *test;
|
struct iperf_test *test;
|
||||||
int port = PORT;
|
int port = PORT, cnt = 0;
|
||||||
|
struct iperf_stream *np;
|
||||||
|
|
||||||
#ifdef TEST_PROC_AFFINITY
|
#ifdef TEST_PROC_AFFINITY
|
||||||
/* didnt seem to work.... */
|
/* didnt seem to work.... */
|
||||||
@ -207,6 +208,7 @@ main(int argc, char **argv)
|
|||||||
exchange_parameters(test);
|
exchange_parameters(test);
|
||||||
test->streams->settings->state = STREAM_BEGIN;
|
test->streams->settings->state = STREAM_BEGIN;
|
||||||
}
|
}
|
||||||
|
|
||||||
//printf("in main: calling iperf_run \n");
|
//printf("in main: calling iperf_run \n");
|
||||||
iperf_run(test);
|
iperf_run(test);
|
||||||
iperf_free_test(test);
|
iperf_free_test(test);
|
||||||
@ -219,6 +221,7 @@ main(int argc, char **argv)
|
|||||||
int
|
int
|
||||||
iperf_run(struct iperf_test * test)
|
iperf_run(struct iperf_test * test)
|
||||||
{
|
{
|
||||||
|
|
||||||
test->default_settings->state = TEST_RUNNING;
|
test->default_settings->state = TEST_RUNNING;
|
||||||
|
|
||||||
switch (test->role)
|
switch (test->role)
|
||||||
@ -227,8 +230,8 @@ iperf_run(struct iperf_test * test)
|
|||||||
while (1)
|
while (1)
|
||||||
{
|
{
|
||||||
iperf_run_server(test);
|
iperf_run_server(test);
|
||||||
|
test->streams = NULL;
|
||||||
sleep(1);
|
sleep(1);
|
||||||
//iperf_init_test(test); /* re-initialize everything */
|
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
case 'c':
|
case 'c':
|
||||||
|
Loading…
Reference in New Issue
Block a user