X-Git-Url: https://git.octo.it/?p=collectd.git;a=blobdiff_plain;f=src%2Ftarget_replace.c;h=62928c0924278905872ff336c29d4d206de3545a;hp=b43a025b827c402e43c21521d443ad9ee010576f;hb=54619dc85fd308b21ed09a0271e5c7383c7921b9;hpb=edcf39cc377d2de0744412209de4eeb50ca7ed5f diff --git a/src/target_replace.c b/src/target_replace.c index b43a025b..62928c09 100644 --- a/src/target_replace.c +++ b/src/target_replace.c @@ -26,8 +26,8 @@ #include "collectd.h" -#include "common.h" #include "filter_chain.h" +#include "utils/common/common.h" #include "utils_subst.h" #include @@ -37,7 +37,7 @@ typedef struct tr_action_s tr_action_t; struct tr_action_s { regex_t re; char *replacement; - _Bool may_be_empty; + bool may_be_empty; tr_action_t *next; }; @@ -68,16 +68,16 @@ static char *tr_strdup(const char *orig) /* {{{ */ char *dest; if (orig == NULL) - return (NULL); + return NULL; sz = strlen(orig) + 1; dest = malloc(sz); if (dest == NULL) - return (NULL); + return NULL; memcpy(dest, orig, sz); - return (dest); + return dest; } /* }}} char *tr_strdup */ static void tr_action_destroy(tr_action_t *act) /* {{{ */ @@ -110,25 +110,25 @@ static void tr_meta_data_action_destroy(tr_meta_data_action_t *act) /* {{{ */ } /* }}} void tr_meta_data_action_destroy */ static int tr_config_add_action(tr_action_t **dest, /* {{{ */ - const oconfig_item_t *ci, _Bool may_be_empty) { + const oconfig_item_t *ci, bool may_be_empty) { tr_action_t *act; int status; if (dest == NULL) - return (-EINVAL); + return -EINVAL; if ((ci->values_num != 2) || (ci->values[0].type != OCONFIG_TYPE_STRING) || (ci->values[1].type != OCONFIG_TYPE_STRING)) { ERROR("Target `replace': The `%s' option requires exactly two string " "arguments.", ci->key); - return (-1); + return -1; } act = calloc(1, sizeof(*act)); if (act == NULL) { ERROR("tr_config_add_action: calloc failed."); - return (-ENOMEM); + return -ENOMEM; } act->replacement = NULL; @@ -144,14 +144,14 @@ static int tr_config_add_action(tr_action_t **dest, /* {{{ */ "failed: %s.", ci->values[0].value.string, errbuf); sfree(act); - return (-EINVAL); + return -EINVAL; } act->replacement = tr_strdup(ci->values[1].value.string); if (act->replacement == NULL) { ERROR("tr_config_add_action: tr_strdup failed."); tr_action_destroy(act); - return (-ENOMEM); + return -ENOMEM; } /* Insert action at end of list. */ @@ -167,17 +167,17 @@ static int tr_config_add_action(tr_action_t **dest, /* {{{ */ prev->next = act; } - return (0); + return 0; } /* }}} int tr_config_add_action */ static int tr_config_add_meta_action(tr_meta_data_action_t **dest, /* {{{ */ const oconfig_item_t *ci, - _Bool should_delete) { + bool should_delete) { tr_meta_data_action_t *act; int status; if (dest == NULL) - return (-EINVAL); + return -EINVAL; if (should_delete) { if ((ci->values_num != 2) || (ci->values[0].type != OCONFIG_TYPE_STRING) || @@ -185,7 +185,7 @@ static int tr_config_add_meta_action(tr_meta_data_action_t **dest, /* {{{ */ ERROR("Target `replace': The `%s' option requires exactly two string " "arguments.", ci->key); - return (-1); + return -1; } } else { if ((ci->values_num != 3) || (ci->values[0].type != OCONFIG_TYPE_STRING) || @@ -194,7 +194,7 @@ static int tr_config_add_meta_action(tr_meta_data_action_t **dest, /* {{{ */ ERROR("Target `replace': The `%s' option requires exactly three string " "arguments.", ci->key); - return (-1); + return -1; } } @@ -202,13 +202,13 @@ static int tr_config_add_meta_action(tr_meta_data_action_t **dest, /* {{{ */ ERROR("Target `replace': The `%s' option does not accept empty string as " "first argument.", ci->key); - return (-1); + return -1; } act = calloc(1, sizeof(*act)); if (act == NULL) { ERROR("tr_config_add_meta_action: calloc failed."); - return (-ENOMEM); + return -ENOMEM; } act->key = NULL; @@ -225,14 +225,14 @@ static int tr_config_add_meta_action(tr_meta_data_action_t **dest, /* {{{ */ ci->values[1].value.string, errbuf); sfree(act->key); sfree(act); - return (-EINVAL); + return -EINVAL; } act->key = tr_strdup(ci->values[0].value.string); if (act->key == NULL) { ERROR("tr_config_add_meta_action: tr_strdup failed."); tr_meta_data_action_destroy(act); - return (-ENOMEM); + return -ENOMEM; } if (!should_delete) { @@ -240,7 +240,7 @@ static int tr_config_add_meta_action(tr_meta_data_action_t **dest, /* {{{ */ if (act->replacement == NULL) { ERROR("tr_config_add_meta_action: tr_strdup failed."); tr_meta_data_action_destroy(act); - return (-ENOMEM); + return -ENOMEM; } } @@ -257,18 +257,18 @@ static int tr_config_add_meta_action(tr_meta_data_action_t **dest, /* {{{ */ prev->next = act; } - return (0); + return 0; } /* }}} int tr_config_add_meta_action */ static int tr_action_invoke(tr_action_t *act_head, /* {{{ */ char *buffer_in, size_t buffer_in_size, - _Bool may_be_empty) { + bool may_be_empty) { int status; char buffer[DATA_MAX_NAME_LEN]; regmatch_t matches[8] = {[0] = {0}}; if (act_head == NULL) - return (-EINVAL); + return -EINVAL; sstrncpy(buffer, buffer_in, sizeof(buffer)); @@ -294,7 +294,8 @@ static int tr_action_invoke(tr_action_t *act_head, /* {{{ */ subst_status = subst(temp, sizeof(temp), buffer, (size_t)matches[0].rm_so, (size_t)matches[0].rm_eo, act->replacement); if (subst_status == NULL) { - ERROR("Target `replace': subst (buffer = %s, start = %zu, end = %zu, " + ERROR("Target `replace': subst (buffer = %s, start = %" PRIsz + ", end = %" PRIsz ", " "replacement = %s) failed.", buffer, (size_t)matches[0].rm_so, (size_t)matches[0].rm_eo, act->replacement); @@ -305,16 +306,16 @@ static int tr_action_invoke(tr_action_t *act_head, /* {{{ */ DEBUG("target_replace plugin: tr_action_invoke: -- buffer = %s;", buffer); } /* for (act = act_head; act != NULL; act = act->next) */ - if ((may_be_empty == 0) && (buffer[0] == 0)) { + if ((may_be_empty == false) && (buffer[0] == 0)) { WARNING("Target `replace': Replacement resulted in an empty string, " "which is not allowed for this buffer (`host' or `plugin')."); - return (0); + return 0; } DEBUG("target_replace plugin: tr_action_invoke: -> buffer = %s;", buffer); sstrncpy(buffer_in, buffer, buffer_in_size); - return (0); + return 0; } /* }}} int tr_action_invoke */ static int tr_meta_data_action_invoke(/* {{{ */ @@ -324,10 +325,10 @@ static int tr_meta_data_action_invoke(/* {{{ */ regmatch_t matches[8] = {[0] = {0}}; if (act_head == NULL) - return (-EINVAL); + return -EINVAL; if ((*dest) == NULL) /* nothing to do */ - return (0); + return 0; for (tr_meta_data_action_t *act = act_head; act != NULL; act = act->next) { char temp[DATA_MAX_NAME_LEN]; @@ -351,7 +352,7 @@ static int tr_meta_data_action_invoke(/* {{{ */ if (meta_data_status != 0) { ERROR("Target `replace': Unable to retrieve metadata value for `%s'.", act->key); - return (meta_data_status); + return meta_data_status; } DEBUG("target_replace plugin: tr_meta_data_action_invoke: `%s' " @@ -386,7 +387,8 @@ static int tr_meta_data_action_invoke(/* {{{ */ subst_status = subst(temp, sizeof(temp), value, (size_t)matches[0].rm_so, (size_t)matches[0].rm_eo, act->replacement); if (subst_status == NULL) { - ERROR("Target `replace': subst (value = %s, start = %zu, end = %zu, " + ERROR("Target `replace': subst (value = %s, start = %" PRIsz + ", end = %" PRIsz ", " "replacement = %s) failed.", value, (size_t)matches[0].rm_so, (size_t)matches[0].rm_eo, act->replacement); @@ -401,7 +403,7 @@ static int tr_meta_data_action_invoke(/* {{{ */ if ((result = meta_data_create()) == NULL) { ERROR("Target `replace': failed to create metadata for `%s'.", act->key); sfree(value); - return (-ENOMEM); + return -ENOMEM; } meta_data_status = meta_data_add_string(result, act->key, temp); @@ -410,7 +412,7 @@ static int tr_meta_data_action_invoke(/* {{{ */ act->key); meta_data_destroy(result); sfree(value); - return (meta_data_status); + return meta_data_status; } meta_data_clone_merge(dest, result); @@ -418,7 +420,7 @@ static int tr_meta_data_action_invoke(/* {{{ */ sfree(value); } /* for (act = act_head; act != NULL; act = act->next) */ - return (0); + return 0; } /* }}} int tr_meta_data_action_invoke */ static int tr_destroy(void **user_data) /* {{{ */ @@ -426,11 +428,11 @@ static int tr_destroy(void **user_data) /* {{{ */ tr_data_t *data; if (user_data == NULL) - return (-EINVAL); + return -EINVAL; data = *user_data; if (data == NULL) - return (0); + return 0; tr_action_destroy(data->host); tr_action_destroy(data->plugin); @@ -440,7 +442,7 @@ static int tr_destroy(void **user_data) /* {{{ */ tr_meta_data_action_destroy(data->meta); sfree(data); - return (0); + return 0; } /* }}} int tr_destroy */ static int tr_create(const oconfig_item_t *ci, void **user_data) /* {{{ */ @@ -451,7 +453,7 @@ static int tr_create(const oconfig_item_t *ci, void **user_data) /* {{{ */ data = calloc(1, sizeof(*data)); if (data == NULL) { ERROR("tr_create: calloc failed."); - return (-ENOMEM); + return -ENOMEM; } data->host = NULL; @@ -468,13 +470,13 @@ static int tr_create(const oconfig_item_t *ci, void **user_data) /* {{{ */ if ((strcasecmp("Host", child->key) == 0) || (strcasecmp("Hostname", child->key) == 0)) status = tr_config_add_action(&data->host, child, - /* may be empty = */ 0); + /* may be empty = */ false); else if (strcasecmp("Plugin", child->key) == 0) status = tr_config_add_action(&data->plugin, child, - /* may be empty = */ 0); + /* may be empty = */ false); else if (strcasecmp("PluginInstance", child->key) == 0) status = tr_config_add_action(&data->plugin_instance, child, - /* may be empty = */ 1); + /* may be empty = */ true); #if 0 else if (strcasecmp ("Type", child->key) == 0) status = tr_config_add_action (&data->type, child, @@ -482,13 +484,13 @@ static int tr_create(const oconfig_item_t *ci, void **user_data) /* {{{ */ #endif else if (strcasecmp("TypeInstance", child->key) == 0) status = tr_config_add_action(&data->type_instance, child, - /* may be empty = */ 1); + /* may be empty = */ true); else if (strcasecmp("MetaData", child->key) == 0) status = tr_config_add_meta_action(&data->meta, child, - /* should delete = */ 0); + /* should delete = */ false); else if (strcasecmp("DeleteMetaData", child->key) == 0) status = tr_config_add_meta_action(&data->meta, child, - /* should delete = */ 1); + /* should delete = */ true); else { ERROR("Target `replace': The `%s' configuration option is not understood " "and will be ignored.", @@ -516,11 +518,11 @@ static int tr_create(const oconfig_item_t *ci, void **user_data) /* {{{ */ if (status != 0) { tr_destroy((void *)&data); - return (status); + return status; } *user_data = data; - return (0); + return 0; } /* }}} int tr_create */ static int tr_invoke(const data_set_t *ds, value_list_t *vl, /* {{{ */ @@ -529,12 +531,12 @@ static int tr_invoke(const data_set_t *ds, value_list_t *vl, /* {{{ */ tr_data_t *data; if ((ds == NULL) || (vl == NULL) || (user_data == NULL)) - return (-EINVAL); + return -EINVAL; data = *user_data; if (data == NULL) { ERROR("Target `replace': Invoke: `data' is NULL."); - return (-EINVAL); + return -EINVAL; } if (data->meta != NULL) { @@ -544,13 +546,13 @@ static int tr_invoke(const data_set_t *ds, value_list_t *vl, /* {{{ */ #define HANDLE_FIELD(f, e) \ if (data->f != NULL) \ tr_action_invoke(data->f, vl->f, sizeof(vl->f), e) - HANDLE_FIELD(host, 0); - HANDLE_FIELD(plugin, 0); - HANDLE_FIELD(plugin_instance, 1); - /* HANDLE_FIELD (type, 0); */ - HANDLE_FIELD(type_instance, 1); + HANDLE_FIELD(host, false); + HANDLE_FIELD(plugin, false); + HANDLE_FIELD(plugin_instance, true); + /* HANDLE_FIELD (type, false); */ + HANDLE_FIELD(type_instance, true); - return (FC_TARGET_CONTINUE); + return FC_TARGET_CONTINUE; } /* }}} int tr_invoke */ void module_register(void) { @@ -561,5 +563,3 @@ void module_register(void) { tproc.invoke = tr_invoke; fc_register_target("replace", tproc); } /* module_register */ - -/* vim: set sw=2 sts=2 tw=78 et fdm=marker : */