diff options
author | sethdelliott <devnull@localhost> | 2010-07-27 22:11:09 +0000 |
---|---|---|
committer | sethdelliott <devnull@localhost> | 2010-07-27 22:11:09 +0000 |
commit | ffdcc7d45737a2e8179f64b95fd59a66f33db42c (patch) | |
tree | 1f0d3bab507c9414cf19ceeb6dbeff4d5aa59dcd /src/main.c | |
parent | f99bd3b2c64448529ed794dfb79d99f39e3ad3d4 (diff) | |
download | iperf3-ffdcc7d45737a2e8179f64b95fd59a66f33db42c.tar.gz |
Updated iperf_error and moved the SIGINT handler out of the library
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -82,6 +82,19 @@ main(int argc, char **argv) } iperf_defaults(test); /* sets defaults */ + // XXX: Check signal for errors? + signal(SIGINT, sig_handler); + if (setjmp(env)) { + if (test->ctrl_sck >= 0) { + test->state = (test->role == 'c') ? CLIENT_TERMINATE : SERVER_TERMINATE; + if (Nwrite(test->ctrl_sck, &test->state, sizeof(char), Ptcp) < 0) { + i_errno = IESENDMESSAGE; + return (-1); + } + } + exit(1); + } + if (iperf_parse_arguments(test, argc, argv) < 0) { iperf_error("parameter error"); fprintf(stderr, "\n"); |