diff --git a/src/iperf.h b/src/iperf.h index 460fd84..c190cd1 100644 --- a/src/iperf.h +++ b/src/iperf.h @@ -103,7 +103,7 @@ struct iperf_test { char role; /* c' lient or 's' erver */ int protocol; - int state; + char state; char *server_hostname; /* -c option */ int server_port; int duration; /* total duration of test (-t flag) */ diff --git a/src/iperf_api.c b/src/iperf_api.c index 18d6ae7..e2f0d27 100644 --- a/src/iperf_api.c +++ b/src/iperf_api.c @@ -128,7 +128,7 @@ iperf_send(struct iperf_test *test) reporter_interval = new_timer(test->reporter_interval, 0); test->state = TEST_RUNNING; - if (write(test->ctrl_sck, &test->state, sizeof(int)) < 0) { + if (write(test->ctrl_sck, &test->state, sizeof(char)) < 0) { perror("write TEST_RUNNING"); exit(1); } @@ -171,7 +171,7 @@ iperf_send(struct iperf_test *test) // Send TEST_DONE (ALL_STREAMS_END) message test->state = TEST_END; - if (write(test->ctrl_sck, &test->state, sizeof(int)) < 0) { + if (write(test->ctrl_sck, &test->state, sizeof(char)) < 0) { perror("write TEST_END"); return -1; } @@ -360,7 +360,7 @@ iperf_exchange_parameters(struct iperf_test * test) // Send the control message to create streams and start the test test->state = CREATE_STREAMS; - if (write(test->ctrl_sck, &test->state, sizeof(int)) < 0) { + if (write(test->ctrl_sck, &test->state, sizeof(char)) < 0) { perror("write CREATE_STREAMS"); return -1; } @@ -593,7 +593,7 @@ iperf_create_streams(struct iperf_test *test) int iperf_handle_message_client(struct iperf_test *test) { - if (read(test->ctrl_sck, &test->state, sizeof(int)) < 0) { + if (read(test->ctrl_sck, &test->state, sizeof(char)) < 0) { // indicate error on read return -1; } @@ -649,7 +649,7 @@ iperf_connect(struct iperf_test *test) /* Exchange parameters */ test->state = PARAM_EXCHANGE; - if (write(test->ctrl_sck, &test->state, sizeof(int)) < 0) { + if (write(test->ctrl_sck, &test->state, sizeof(char)) < 0) { perror("write PARAM_EXCHANGE"); return -1; } @@ -1032,7 +1032,7 @@ iperf_client_end(struct iperf_test *test) } test->state = IPERF_DONE; - if (write(test->ctrl_sck, &test->state, sizeof(int)) < 0) { + if (write(test->ctrl_sck, &test->state, sizeof(char)) < 0) { perror("write IPERF_DONE"); return -1; } @@ -1063,7 +1063,7 @@ iperf_run_client(struct iperf_test * test) if (setjmp(env)) { fprintf(stderr, "Interrupt received. Exiting...\n"); test->state = CLIENT_TERMINATE; - if (write(test->ctrl_sck, &test->state, sizeof(int)) < 0) { + if (write(test->ctrl_sck, &test->state, sizeof(char)) < 0) { fprintf(stderr, "Unable to send CLIENT_TERMINATE message to serer\n"); } exit(1); diff --git a/src/iperf_server_api.c b/src/iperf_server_api.c index 64ab0cd..0ee470a 100644 --- a/src/iperf_server_api.c +++ b/src/iperf_server_api.c @@ -166,7 +166,7 @@ iperf_accept(struct iperf_test *test) int iperf_handle_message_server(struct iperf_test *test) { - if (read(test->ctrl_sck, &test->state, sizeof(int)) < 0) { + if (read(test->ctrl_sck, &test->state, sizeof(char)) < 0) { // XXX: Needs to indicate read error return -1; } @@ -181,7 +181,7 @@ iperf_handle_message_server(struct iperf_test *test) break; case TEST_END: test->state = DISPLAY_RESULTS; - if (write(test->ctrl_sck, &test->state, sizeof(int)) < 0) { + if (write(test->ctrl_sck, &test->state, sizeof(char)) < 0) { perror("write DISPLAY_RESULTS"); exit(1); } @@ -219,7 +219,7 @@ iperf_run_server(struct iperf_test *test) fprintf(stderr, "Interrupt received. Exiting...\n"); test->state = SERVER_TERMINATE; if (test->ctrl_sck >= 0) { - if (write(test->ctrl_sck, &test->state, sizeof(int)) < 0) { + if (write(test->ctrl_sck, &test->state, sizeof(char)) < 0) { fprintf(stderr, "Unable to send SERVER_TERMINATE message to client\n"); } } @@ -270,7 +270,7 @@ iperf_run_server(struct iperf_test *test) FD_CLR(test->prot_listener, &test->read_set); close(test->prot_listener); test->state = TEST_START; - if (write(test->ctrl_sck, &test->state, sizeof(int)) < 0) { + if (write(test->ctrl_sck, &test->state, sizeof(char)) < 0) { perror("write TEST_START"); return -1; }