X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fdaemon%2Ffilter_chain.c;h=cee479a832406988ecb8ccd155a7ff737a083e26;hb=474d70e02d04de92aa7503b3887989729bbbff02;hp=ecc7f165a5a1f73064aedcdaa9b41e086f24abf1;hpb=2bda2a5648c87a2c5b8304238cd80ff17984c5cd;p=collectd.git diff --git a/src/daemon/filter_chain.c b/src/daemon/filter_chain.c index ecc7f165..cee479a8 100644 --- a/src/daemon/filter_chain.c +++ b/src/daemon/filter_chain.c @@ -25,6 +25,7 @@ **/ #include "collectd.h" + #include "configfile.h" #include "plugin.h" #include "utils_complain.h" @@ -174,7 +175,7 @@ static char *fc_strdup (const char *orig) /* {{{ */ return (NULL); sz = strlen (orig) + 1; - dest = (char *) malloc (sz); + dest = malloc (sz); if (dest == NULL) return (NULL); @@ -235,13 +236,12 @@ static int fc_config_add_match (fc_match_t **matches_head, /* {{{ */ return (-1); } - m = (fc_match_t *) malloc (sizeof (*m)); + m = calloc (1, sizeof (*m)); if (m == NULL) { - ERROR ("fc_config_add_match: malloc failed."); + ERROR ("fc_config_add_match: calloc failed."); return (-1); } - memset (m, 0, sizeof (*m)); sstrncpy (m->name, ptr->name, sizeof (m->name)); memcpy (&m->proc, &ptr->proc, sizeof (m->proc)); @@ -307,13 +307,12 @@ static int fc_config_add_target (fc_target_t **targets_head, /* {{{ */ return (-1); } - t = (fc_target_t *) malloc (sizeof (*t)); + t = calloc (1, sizeof (*t)); if (t == NULL) { - ERROR ("fc_config_add_target: malloc failed."); + ERROR ("fc_config_add_target: calloc failed."); return (-1); } - memset (t, 0, sizeof (*t)); sstrncpy (t->name, ptr->name, sizeof (t->name)); memcpy (&t->proc, &ptr->proc, sizeof (t->proc)); @@ -335,7 +334,7 @@ static int fc_config_add_target (fc_target_t **targets_head, /* {{{ */ { t->user_data = NULL; } - + if (*targets_head != NULL) { ptr = *targets_head; @@ -358,7 +357,6 @@ static int fc_config_add_rule (fc_chain_t *chain, /* {{{ */ fc_rule_t *rule; char rule_name[2*DATA_MAX_NAME_LEN] = "Unnamed rule"; int status = 0; - int i; if (ci->values_num > 1) { @@ -373,14 +371,12 @@ static int fc_config_add_rule (fc_chain_t *chain, /* {{{ */ return (-1); } - rule = (fc_rule_t *) malloc (sizeof (*rule)); + rule = calloc (1, sizeof (*rule)); if (rule == NULL) { - ERROR ("fc_config_add_rule: malloc failed."); + ERROR ("fc_config_add_rule: calloc failed."); return (-1); } - memset (rule, 0, sizeof (*rule)); - rule->next = NULL; if (ci->values_num == 1) { @@ -389,7 +385,7 @@ static int fc_config_add_rule (fc_chain_t *chain, /* {{{ */ ci->values[0].value.string); } - for (i = 0; i < ci->children_num; i++) + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *option = ci->children + i; @@ -450,7 +446,6 @@ static int fc_config_add_chain (const oconfig_item_t *ci) /* {{{ */ { fc_chain_t *chain = NULL; int status = 0; - int i; int new_chain = 1; if ((ci->values_num != 1) @@ -469,20 +464,16 @@ static int fc_config_add_chain (const oconfig_item_t *ci) /* {{{ */ if (chain == NULL) { - chain = (fc_chain_t *) malloc (sizeof (*chain)); + chain = calloc (1, sizeof (*chain)); if (chain == NULL) { - ERROR ("fc_config_add_chain: malloc failed."); + ERROR ("fc_config_add_chain: calloc failed."); return (-1); } - memset (chain, 0, sizeof (*chain)); sstrncpy (chain->name, ci->values[0].value.string, sizeof (chain->name)); - chain->rules = NULL; - chain->targets = NULL; - chain->next = NULL; } - for (i = 0; i < ci->children_num; i++) + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *option = ci->children + i; @@ -632,16 +623,13 @@ static int fc_bit_return_invoke (const data_set_t __attribute__((unused)) *ds, / static int fc_bit_write_create (const oconfig_item_t *ci, /* {{{ */ void **user_data) { - int i; - fc_writer_t *plugin_list = NULL; size_t plugin_list_len = 0; - for (i = 0; i < ci->children_num; i++) + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *child = ci->children + i; fc_writer_t *temp; - int j; if (strcasecmp ("Plugin", child->key) != 0) { @@ -651,7 +639,7 @@ static int fc_bit_write_create (const oconfig_item_t *ci, /* {{{ */ continue; } - for (j = 0; j < child->values_num; j++) + for (int j = 0; j < child->values_num; j++) { char *plugin; @@ -663,7 +651,7 @@ static int fc_bit_write_create (const oconfig_item_t *ci, /* {{{ */ } plugin = child->values[j].value.string; - temp = (fc_writer_t *) realloc (plugin_list, (plugin_list_len + 2) + temp = realloc (plugin_list, (plugin_list_len + 2) * (sizeof (*plugin_list))); if (temp == NULL) { @@ -692,14 +680,13 @@ static int fc_bit_write_create (const oconfig_item_t *ci, /* {{{ */ static int fc_bit_write_destroy (void **user_data) /* {{{ */ { fc_writer_t *plugin_list; - size_t i; if ((user_data == NULL) || (*user_data == NULL)) return (0); plugin_list = *user_data; - for (i = 0; plugin_list[i].plugin != NULL; i++) + for (size_t i = 0; plugin_list[i].plugin != NULL; i++) free (plugin_list[i].plugin); free (plugin_list); @@ -752,9 +739,7 @@ static int fc_bit_write_invoke (const data_set_t *ds, /* {{{ */ } else { - size_t i; - - for (i = 0; plugin_list[i].plugin != NULL; i++) + for (size_t i = 0; plugin_list[i].plugin != NULL; i++) { status = plugin_write (plugin_list[i].plugin, ds, vl); if (status != 0) @@ -781,12 +766,11 @@ static int fc_bit_write_invoke (const data_set_t *ds, /* {{{ */ static int fc_init_once (void) /* {{{ */ { static int done = 0; - target_proc_t tproc; + target_proc_t tproc = { 0 }; if (done != 0) return (0); - memset (&tproc, 0, sizeof (tproc)); tproc.create = fc_bit_jump_create; tproc.destroy = fc_bit_jump_destroy; tproc.invoke = fc_bit_jump_invoke; @@ -824,14 +808,12 @@ int fc_register_match (const char *name, match_proc_t proc) /* {{{ */ DEBUG ("fc_register_match (%s);", name); - m = (fc_match_t *) malloc (sizeof (*m)); + m = calloc (1, sizeof (*m)); if (m == NULL) return (-ENOMEM); - memset (m, 0, sizeof (*m)); sstrncpy (m->name, name, sizeof (m->name)); memcpy (&m->proc, &proc, sizeof (m->proc)); - m->next = NULL; if (match_list_head == NULL) { @@ -858,14 +840,12 @@ int fc_register_target (const char *name, target_proc_t proc) /* {{{ */ DEBUG ("fc_register_target (%s);", name); - t = (fc_target_t *) malloc (sizeof (*t)); + t = calloc (1, sizeof (*t)); if (t == NULL) return (-ENOMEM); - memset (t, 0, sizeof (*t)); sstrncpy (t->name, name, sizeof (t->name)); memcpy (&t->proc, &proc, sizeof (t->proc)); - t->next = NULL; if (target_list_head == NULL) { @@ -887,12 +867,10 @@ int fc_register_target (const char *name, target_proc_t proc) /* {{{ */ fc_chain_t *fc_chain_get_by_name (const char *chain_name) /* {{{ */ { - fc_chain_t *chain; - if (chain_name == NULL) return (NULL); - for (chain = chain_list_head; chain != NULL; chain = chain->next) + for (fc_chain_t *chain = chain_list_head; chain != NULL; chain = chain->next) if (strcasecmp (chain_name, chain->name) == 0) return (chain); @@ -902,7 +880,6 @@ fc_chain_t *fc_chain_get_by_name (const char *chain_name) /* {{{ */ int fc_process_chain (const data_set_t *ds, value_list_t *vl, /* {{{ */ fc_chain_t *chain) { - fc_rule_t *rule; fc_target_t *target; int status = FC_TARGET_CONTINUE; @@ -911,7 +888,7 @@ int fc_process_chain (const data_set_t *ds, value_list_t *vl, /* {{{ */ DEBUG ("fc_process_chain (chain = %s);", chain->name); - for (rule = chain->rules; rule != NULL; rule = rule->next) + for (fc_rule_t *rule = chain->rules; rule != NULL; rule = rule->next) { fc_match_t *match; status = FC_TARGET_CONTINUE;