aboutsummaryrefslogtreecommitdiff
path: root/src/iperf_server_api.c
diff options
context:
space:
mode:
authorJef Poskanzer <jef@mail.acme.com>2013-03-08 20:56:52 -0800
committerJef Poskanzer <jef@mail.acme.com>2013-03-08 20:56:52 -0800
commite96ab740935b0cb9701c09f8826d48ff99b02a91 (patch)
treecbd11a9005bf77bad17aeb8f6e14ff1502343a25 /src/iperf_server_api.c
parenta5621dd9086a3ca0fbde536f4c8600a34417d8a9 (diff)
downloadiperf3-e96ab740935b0cb9701c09f8826d48ff99b02a91.tar.gz
Move the JSON initialization/finalization insode the API.
Diffstat (limited to 'src/iperf_server_api.c')
-rw-r--r--src/iperf_server_api.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/iperf_server_api.c b/src/iperf_server_api.c
index a2efaed..8330e41 100644
--- a/src/iperf_server_api.c
+++ b/src/iperf_server_api.c
@@ -282,6 +282,18 @@ iperf_run_server(struct iperf_test *test)
struct iperf_stream *sp;
struct timeval now;
+ if (test->json_output)
+ if (iperf_json_start(test) < 0)
+ return -1;
+
+ if (test->json_output) {
+ cJSON_AddItemToObject(test->json_start, "version", cJSON_CreateString(version));
+ cJSON_AddItemToObject(test->json_start, "system_info", cJSON_CreateString(get_system_info()));
+ } else if (test->verbose) {
+ printf("%s\n", version);
+ system("uname -a");
+ }
+
// Open socket and listen
if (iperf_server_listen(test) < 0) {
return -1;
@@ -396,5 +408,10 @@ iperf_run_server(struct iperf_test *test)
close(test->ctrl_sck);
close(test->listener);
+ if (test->json_output) {
+ if (iperf_json_finish(test) < 0)
+ return -1;
+ }
+
return 0;
}