diff options
Diffstat (limited to 'nserver/src/ncmd.c')
-rw-r--r-- | nserver/src/ncmd.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/nserver/src/ncmd.c b/nserver/src/ncmd.c index 59b2d70..02ec1eb 100644 --- a/nserver/src/ncmd.c +++ b/nserver/src/ncmd.c @@ -167,6 +167,7 @@ int call_function(int func, struct bstrList *cmd_parts, char *out) return -1; } + double mean = 0.0; switch (func) { case NS_CREATE: if(check_args(cmd_parts, 2) != 0) { @@ -190,13 +191,17 @@ int call_function(int func, struct bstrList *cmd_parts, char *out) } double sample = strtod(bdata(cmd_parts->entry[2]), NULL); - if (sssample(bdata(cmd_parts->entry[1]), sample) != 0) { + mean = sssample(bdata(cmd_parts->entry[1]), sample); + if (mean < 0) { strncpy(out, "error: sample failed\n", RSP_SIZE); return -1; } - strncpy(out, "OK\n", RSP_SIZE); + if (sprintf(out, "Mean: %.2f\n", mean) < 0) { + strncpy(out, "error: sample failed\n", RSP_SIZE); + return -1; + } break; case NS_MEAN: if(check_args(cmd_parts, 2) != 0) { @@ -205,7 +210,7 @@ int call_function(int func, struct bstrList *cmd_parts, char *out) return -1; } - double mean = ssmean(bdata(cmd_parts->entry[1])); + mean = ssmean(bdata(cmd_parts->entry[1])); if (mean < 0) { strncpy(out, "error: mean failed\n", RSP_SIZE); |