From: bufadu Date: Wed, 3 May 2017 15:42:11 +0000 (+0200) Subject: redis: removing sprintf() calls X-Git-Tag: collectd-5.8.0~190^2~2 X-Git-Url: https://git.octo.it/?p=collectd.git;a=commitdiff_plain;h=4477cc9c2e95711ce868bc8e849990cd1b539c6b redis: removing sprintf() calls --- diff --git a/src/redis.c b/src/redis.c index 4e04230b..26948355 100644 --- a/src/redis.c +++ b/src/redis.c @@ -365,24 +365,24 @@ static int redis_db_stats(char *node, char const *info_line) /* {{{ */ int i; for (db = 0; db < max_db; db++) { - sprintf(field_name, "db%d:keys", db); - - str = strstr(info_line, field_name); - if (str) { - str += strlen(field_name) + 1; /* also skip the '=' */ - for (i = 0; (*str && (isdigit((unsigned char)*str) || *str == '.')); i++, str++) - buf[i] = *str; - buf[i] = '\0'; - - if (parse_value(buf, &val, DS_TYPE_GAUGE) == -1) { - WARNING("redis plugin: Unable to parse field `%s'.", field_name); - return (-1); - } - - sprintf(db_id, "%d", db); - redis_submit (node, "records", db_id, val); + ssnprintf(field_name, sizeof(field_name), "db%d:keys", db); + + str = strstr(info_line, field_name); + if (str) { + str += strlen(field_name) + 1; /* also skip the '=' */ + for (i = 0; (*str && (isdigit((unsigned char)*str) || *str == '.')); i++, str++) + buf[i] = *str; + buf[i] = '\0'; + + if (parse_value(buf, &val, DS_TYPE_GAUGE) == -1) { + WARNING("redis plugin: Unable to parse field `%s'.", field_name); + return (-1); } - } + + ssnprintf(db_id, sizeof(db_id), "%d", db); + redis_submit (node, "records", db_id, val); + } + } return (0); } /* }}} int redis_db_stats */