X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Ffilecount.c;h=74bc5fb3828bf3006235b47d77c2ea45c14d9a64;hb=a762b2b4a6d804139c9ab5f47afacc1a88d6c0c1;hp=9ea8af7abe2792ebc7235094cb67f37e75a668e8;hpb=6d13532642c934667697842e4ff021e070ddf34d;p=collectd.git diff --git a/src/filecount.c b/src/filecount.c index 9ea8af7a..74bc5fb3 100644 --- a/src/filecount.c +++ b/src/filecount.c @@ -22,8 +22,9 @@ **/ #include "collectd.h" + #include "common.h" -#include "plugin.h" +#include "plugin.h" #include #include @@ -60,21 +61,17 @@ static size_t directories_num = 0; static void fc_submit_dir (const fc_directory_conf_t *dir) { - value_t values[1]; value_list_t vl = VALUE_LIST_INIT; - values[0].gauge = (gauge_t) dir->files_num; - - vl.values = values; - vl.values_len = STATIC_ARRAY_SIZE (values); - sstrncpy (vl.host, hostname_g, sizeof (vl.host)); + vl.values = &(value_t) { .gauge = (gauge_t) dir->files_num }; + vl.values_len = 1; sstrncpy (vl.plugin, "filecount", sizeof (vl.plugin)); sstrncpy (vl.plugin_instance, dir->instance, sizeof (vl.plugin_instance)); sstrncpy (vl.type, "files", sizeof (vl.type)); plugin_dispatch_values (&vl); - values[0].gauge = (gauge_t) dir->files_size; + vl.values = &(value_t) { .gauge = (gauge_t) dir->files_size }; sstrncpy (vl.type, "bytes", sizeof (vl.type)); plugin_dispatch_values (&vl); @@ -334,7 +331,6 @@ static int fc_config_add_dir (oconfig_item_t *ci) { fc_directory_conf_t *dir; int status; - int i; if ((ci->values_num != 1) || (ci->values[0].type != OCONFIG_TYPE_STRING)) { @@ -344,13 +340,12 @@ static int fc_config_add_dir (oconfig_item_t *ci) } /* Initialize `dir' */ - dir = (fc_directory_conf_t *) malloc (sizeof (*dir)); + dir = calloc (1, sizeof (*dir)); if (dir == NULL) { - ERROR ("filecount plugin: malloc failed."); + ERROR ("filecount plugin: calloc failed."); return (-1); } - memset (dir, 0, sizeof (*dir)); dir->path = strdup (ci->values[0].value.string); if (dir->path == NULL) @@ -369,7 +364,7 @@ static int fc_config_add_dir (oconfig_item_t *ci) dir->size = 0; status = 0; - for (i = 0; i < ci->children_num; i++) + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *option = ci->children + i; @@ -400,7 +395,7 @@ static int fc_config_add_dir (oconfig_item_t *ci) { fc_directory_conf_t **temp; - temp = (fc_directory_conf_t **) realloc (directories, + temp = realloc (directories, sizeof (*directories) * (directories_num + 1)); if (temp == NULL) { @@ -429,9 +424,7 @@ static int fc_config_add_dir (oconfig_item_t *ci) static int fc_config (oconfig_item_t *ci) { - int i; - - for (i = 0; i < ci->children_num; i++) + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *child = ci->children + i; if (strcasecmp ("Directory", child->key) == 0) @@ -542,7 +535,7 @@ static int fc_read_dir (fc_directory_conf_t *dir) if (dir->mtime != 0) dir->now = time (NULL); - + status = walk_directory (dir->path, fc_read_dir_callback, dir, /* include hidden */ (dir->options & FC_HIDDEN) ? 1 : 0); if (status != 0) @@ -558,9 +551,7 @@ static int fc_read_dir (fc_directory_conf_t *dir) static int fc_read (void) { - size_t i; - - for (i = 0; i < directories_num; i++) + for (size_t i = 0; i < directories_num; i++) fc_read_dir (directories[i]); return (0);