From: Florian Forster Date: Wed, 1 Jul 2009 12:54:13 +0000 (+0200) Subject: src/utils_cmd_putval.c: Use `parse_values'. X-Git-Tag: collectd-4.8.0~95 X-Git-Url: https://git.verplant.org/?a=commitdiff_plain;h=bc474f0cfabc6f17ad5fc7ad6fc1e8393a0f222a;p=collectd.git src/utils_cmd_putval.c: Use `parse_values'. --- diff --git a/src/utils_cmd_putval.c b/src/utils_cmd_putval.c index 826e1b03..ec2b5f87 100644 --- a/src/utils_cmd_putval.c +++ b/src/utils_cmd_putval.c @@ -36,57 +36,12 @@ static int dispatch_values (const data_set_t *ds, value_list_t *vl, FILE *fh, char *buffer) { - char *dummy; - char *ptr; - char *saveptr; - int i; - - char *time_str = buffer; - char *value_str = strchr (time_str, ':'); - if (value_str == NULL) - { - print_to_socket (fh, "-1 No time found.\n"); - return (-1); - } - *value_str = '\0'; value_str++; - - vl->time = (time_t) atoi (time_str); + int status; - i = 0; - dummy = value_str; - saveptr = NULL; - while ((ptr = strtok_r (dummy, ":", &saveptr)) != NULL) - { - dummy = NULL; - - if (i >= vl->values_len) - { - i = vl->values_len + 1; - break; - } - - if ((strcmp (ptr, "U") == 0) && (ds->ds[i].type == DS_TYPE_GAUGE)) - vl->values[i].gauge = NAN; - else if (0 != parse_value (ptr, &vl->values[i], ds->ds[i])) - { - print_to_socket (fh, "-1 Failed to parse value `%s'.\n", ptr); - return (-1); - } - - i++; - } /* while (strtok_r) */ - - if (i != vl->values_len) + status = parse_values (buffer, vl, ds); + if (status != 0) { - char identifier[128]; - FORMAT_VL (identifier, sizeof (identifier), vl, ds); - ERROR ("cmd putval: dispatch_values: " - "Number of values incorrect: " - "Got %i, expected %i. Identifier is `%s'.", - i, vl->values_len, identifier); - print_to_socket (fh, "-1 Number of values incorrect: " - "Got %i, expected %i.\n", - i, vl->values_len); + print_to_socket (fh, "-1 Parsing the values string failed.\n"); return (-1); }