#include <errno.h>
#include <stdlib.h>
#include <string.h>
-#include <assert.h>
+#include <babeltrace/assert-internal.h>
#include <stdio.h>
#include <stdbool.h>
#include <inttypes.h>
goto error;
}
- if (bt_value_map_has_key(state->params, state->last_map_key)) {
+ if (bt_value_map_has_entry(state->params, state->last_map_key)) {
g_string_append_printf(state->ini_error,
"Duplicate parameter key: `%s`\n",
state->last_map_key);
}
case G_TOKEN_FLOAT:
/* Positive floating point number */
- value = bt_value_float_create_init(
+ value = bt_value_real_create_init(
state->scanner->value.v_float);
break;
case G_TOKEN_STRING:
}
case G_TOKEN_FLOAT:
/* Negative floating point number */
- value = bt_value_float_create_init(
+ value = bt_value_real_create_init(
-state->scanner->value.v_float);
break;
default:
success:
if (value) {
- if (bt_value_map_insert(state->params,
+ if (bt_value_map_insert_entry(state->params,
state->last_map_key, value)) {
/* Only override return value on error */
ret = -1;
GString *gs_comp_cls = NULL;
size_t end_pos;
- assert(arg);
- assert(plugin);
- assert(comp_cls);
- assert(comp_cls_type);
+ BT_ASSERT(arg);
+ BT_ASSERT(plugin);
+ BT_ASSERT(comp_cls);
+ BT_ASSERT(comp_cls_type);
if (!bt_common_string_is_printable(arg)) {
printf_err("Argument contains a non-printable character\n");
goto error;
}
- bt_object_init(cfg_component, bt_config_component_destroy);
+ bt_object_init_shared(&cfg_component->base,
+ bt_config_component_destroy);
cfg_component->type = type;
cfg_component->plugin_name = g_string_new(plugin_name);
if (!cfg_component->plugin_name) {
!strcmp(identifier, "args") ||
!strcmp(identifier, "arg")) {
found_item = true;
- if (bt_value_array_append_string(names,
+ if (bt_value_array_append_string_element(names,
"payload")) {
goto error;
}
} else if (!strcmp(identifier, "context") ||
!strcmp(identifier, "ctx")) {
found_item = true;
- if (bt_value_array_append_string(names,
+ if (bt_value_array_append_string_element(names,
"context")) {
goto error;
}
} else if (!strcmp(identifier, "scope") ||
!strcmp(identifier, "header")) {
found_item = true;
- if (bt_value_array_append_string(names,
+ if (bt_value_array_append_string_element(names,
identifier)) {
goto error;
}
} else if (!strcmp(identifier, "all")) {
found_all = true;
- if (bt_value_array_append_string(names,
+ if (bt_value_array_append_string_element(names,
identifier)) {
goto error;
}
} else if (!strcmp(identifier, "none")) {
found_none = true;
- if (bt_value_array_append_string(names,
+ if (bt_value_array_append_string_element(names,
identifier)) {
goto error;
}
* least one item is specified.
*/
if (found_item && !found_none && !found_all) {
- if (bt_value_array_append_string(names, "none")) {
+ if (bt_value_array_append_string_element(names, "none")) {
goto error;
}
}
!strcmp(identifier, "emf") ||
!strcmp(identifier, "callsite") ||
!strcmp(identifier, "all")) {
- if (bt_value_array_append_string(fields,
+ if (bt_value_array_append_string_element(fields,
identifier)) {
goto error;
}
static
void append_param_arg(GString *params_arg, const char *key, const char *value)
{
- assert(params_arg);
- assert(key);
- assert(value);
+ BT_ASSERT(params_arg);
+ BT_ASSERT(key);
+ BT_ASSERT(value);
if (params_arg->len != 0) {
g_string_append_c(params_arg, ',');
goto end;
}
- for (i = 0; i < bt_value_array_size(names_array); i++) {
- struct bt_value *str_obj = bt_value_array_get(names_array, i);
+ for (i = 0; i < bt_value_array_get_size(names_array); i++) {
+ struct bt_value *str_obj =
+ bt_value_array_borrow_element_by_index(names_array, i);
const char *suffix;
bool is_default = false;
}
ret = bt_value_string_get(str_obj, &suffix);
- BT_PUT(str_obj);
if (ret) {
printf_err("Unexpected error\n");
goto end;
goto end;
}
- if (bt_value_map_has_key(instance_names, cfg_comp->instance_name->str)) {
+ if (bt_value_map_has_entry(instance_names, cfg_comp->instance_name->str)) {
printf_err("Duplicate component instance name:\n %s\n",
cfg_comp->instance_name->str);
ret = -1;
goto end;
}
- if (bt_value_map_insert(instance_names,
+ if (bt_value_map_insert_entry(instance_names,
cfg_comp->instance_name->str, bt_value_null)) {
print_err_oom();
ret = -1;
goto error;
}
- bt_object_init(cfg, bt_config_destroy);
+ bt_object_init_shared(&cfg->base, bt_config_destroy);
cfg->command = command;
cfg->command_needs_plugins = needs_plugins;
goto error;
}
- assert(params);
+ BT_ASSERT(params);
BT_MOVE(cfg->cmd_data.query.cfg_component->params, params);
} else {
print_query_usage(stdout);
abort();
}
- assert(cur_base_params);
+ BT_ASSERT(cur_base_params);
bt_put(cur_cfg_comp->params);
cur_cfg_comp->params = bt_value_copy(cur_base_params);
if (!cur_cfg_comp->params) {
goto error;
}
- if (bt_value_map_insert_string(cur_cfg_comp->params,
+ if (bt_value_map_insert_string_entry(cur_cfg_comp->params,
cur_param_key->str, arg)) {
print_err_oom();
goto error;
}
break;
case OPT_CONNECT:
- if (bt_value_array_append_string(connection_args,
- arg)) {
+ if (bt_value_array_append_string_element(
+ connection_args, arg)) {
print_err_oom();
goto error;
}
struct bt_config *cfg = NULL;
const char **argv;
int64_t i, len;
- const size_t argc = bt_value_array_size(run_args) + 1;
+ const size_t argc = bt_value_array_get_size(run_args) + 1;
argv = calloc(argc, sizeof(*argv));
if (!argv) {
argv[0] = "run";
- len = bt_value_array_size(run_args);
+ len = bt_value_array_get_size(run_args);
if (len < 0) {
printf_err("Invalid executable arguments\n");
goto end;
}
for (i = 0; i < len; i++) {
int ret;
- struct bt_value *arg_value = bt_value_array_get(run_args, i);
+ struct bt_value *arg_value =
+ bt_value_array_borrow_element_by_index(run_args, i);
const char *arg;
- assert(arg_value);
+ BT_ASSERT(arg_value);
ret = bt_value_string_get(arg_value, &arg);
- assert(ret == 0);
- assert(arg);
+ BT_ASSERT(ret == 0);
+ BT_ASSERT(arg);
argv[i + 1] = arg;
- bt_put(arg_value);
}
cfg = bt_config_run_from_args(argc, argv, retcode,
goto end;
}
- if (!bt_value_map_has_key(existing_names, prefix)) {
+ if (!bt_value_map_has_entry(existing_names, prefix)) {
g_string_assign(auto_name, prefix);
goto end;
}
do {
g_string_printf(auto_name, "%s-%d", prefix, i);
i++;
- } while (bt_value_map_has_key(existing_names, auto_name->str));
+ } while (bt_value_map_has_entry(existing_names, auto_name->str));
end:
return auto_name;
g_string_assign(args->name_arg, name->str);
- if (bt_value_map_insert(existing_names, name->str,
+ if (bt_value_map_insert_entry(existing_names, name->str,
bt_value_null)) {
print_err_oom();
ret = -1;
goto end;
}
- if (bt_value_array_append_string(run_args, "--component")) {
+ if (bt_value_array_append_string_element(run_args, "--component")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, impl_args->comp_arg->str)) {
+ if (bt_value_array_append_string_element(run_args, impl_args->comp_arg->str)) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, "--name")) {
+ if (bt_value_array_append_string_element(run_args, "--name")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, impl_args->name_arg->str)) {
+ if (bt_value_array_append_string_element(run_args, impl_args->name_arg->str)) {
print_err_oom();
goto error;
}
if (impl_args->params_arg->len > 0) {
- if (bt_value_array_append_string(run_args, "--params")) {
+ if (bt_value_array_append_string_element(run_args, "--params")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args,
+ if (bt_value_array_append_string_element(run_args,
impl_args->params_arg->str)) {
print_err_oom();
goto error;
}
}
- for (i = 0; i < bt_value_array_size(impl_args->extra_params); i++) {
+ for (i = 0; i < bt_value_array_get_size(impl_args->extra_params); i++) {
struct bt_value *elem;
const char *arg;
- elem = bt_value_array_get(impl_args->extra_params, i);
+ elem = bt_value_array_borrow_element_by_index(
+ impl_args->extra_params, i);
if (!elem) {
goto error;
}
- assert(bt_value_is_string(elem));
+ BT_ASSERT(bt_value_is_string(elem));
if (bt_value_string_get(elem, &arg)) {
goto error;
}
- ret = bt_value_array_append_string(run_args, arg);
- bt_put(elem);
+ ret = bt_value_array_append_string_element(run_args, arg);
if (ret) {
print_err_oom();
goto error;
static
void finalize_implicit_component_args(struct implicit_component_args *args)
{
- assert(args);
+ BT_ASSERT(args);
if (args->comp_arg) {
g_string_free(args->comp_arg, TRUE);
void append_implicit_component_param(struct implicit_component_args *args,
const char *key, const char *value)
{
- assert(args);
- assert(key);
- assert(value);
+ BT_ASSERT(args);
+ BT_ASSERT(key);
+ BT_ASSERT(value);
append_param_arg(args->params_arg, key, value);
}
{
int ret = 0;
- assert(args);
- assert(key);
- assert(value);
+ BT_ASSERT(args);
+ BT_ASSERT(key);
+ BT_ASSERT(value);
- if (bt_value_array_append_string(args->extra_params, "--key")) {
+ if (bt_value_array_append_string_element(args->extra_params, "--key")) {
print_err_oom();
ret = -1;
goto end;
}
- if (bt_value_array_append_string(args->extra_params, key)) {
+ if (bt_value_array_append_string_element(args->extra_params, key)) {
print_err_oom();
ret = -1;
goto end;
}
- if (bt_value_array_append_string(args->extra_params, "--value")) {
+ if (bt_value_array_append_string_element(args->extra_params, "--value")) {
print_err_oom();
ret = -1;
goto end;
}
- if (bt_value_array_append_string(args->extra_params, value)) {
+ if (bt_value_array_append_string_element(args->extra_params, value)) {
print_err_oom();
ret = -1;
goto end;
* An explicit name was provided for the user
* component.
*/
- if (bt_value_map_has_key(all_names,
+ if (bt_value_map_has_entry(all_names,
cur_name->str)) {
printf_err("Duplicate component instance name:\n %s\n",
cur_name->str);
* Remember this name globally, for the uniqueness of
* all component names.
*/
- if (bt_value_map_insert(all_names, name->str, bt_value_null)) {
+ if (bt_value_map_insert_entry(all_names, name->str, bt_value_null)) {
print_err_oom();
goto error;
}
* Append the --name option if necessary.
*/
if (append_name_opt) {
- if (bt_value_array_append_string(run_args, "--name")) {
+ if (bt_value_array_append_string_element(run_args, "--name")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, name->str)) {
+ if (bt_value_array_append_string_element(run_args, name->str)) {
print_err_oom();
goto error;
}
goto end;
}
- ret = bt_value_array_append_string(run_args, "--connect");
+ ret = bt_value_array_append_string_element(run_args, "--connect");
if (ret) {
print_err_oom();
ret = -1;
g_string_append(arg, e_upstream_name->str);
g_string_append_c(arg, ':');
g_string_append(arg, e_downstream_name->str);
- ret = bt_value_array_append_string(run_args, arg->str);
+ ret = bt_value_array_append_string_element(run_args, arg->str);
if (ret) {
print_err_oom();
ret = -1;
GList *filter_prev;
GList *sink_at = sink_names;
- assert(source_names);
- assert(filter_names);
- assert(sink_names);
+ BT_ASSERT(source_names);
+ BT_ASSERT(filter_names);
+ BT_ASSERT(sink_names);
/* Connect all sources to the first filter */
for (source_at = source_names; source_at != NULL; source_at = g_list_next(source_at)) {
GString *g_begin = NULL;
GString *g_end = NULL;
- assert(arg);
+ BT_ASSERT(arg);
if (*ch == '[') {
ch++;
goto error;
}
- assert(begin);
- assert(end);
+ BT_ASSERT(begin);
+ BT_ASSERT(end);
*begin = g_begin->str;
*end = g_end->str;
g_string_free(g_begin, FALSE);
int ret = 0;
GString *gs = g_string_new(string);
- assert(list);
+ BT_ASSERT(list);
if (!gs) {
print_err_oom();
abort();
}
- if (bt_value_array_append_string(run_args,
+ if (bt_value_array_append_string_element(run_args,
"--component")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, arg)) {
+ if (bt_value_array_append_string_element(run_args, arg)) {
print_err_oom();
goto error;
}
goto error;
}
- if (bt_value_array_append_string(run_args,
+ if (bt_value_array_append_string_element(run_args,
"--params")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, arg)) {
+ if (bt_value_array_append_string_element(run_args, arg)) {
print_err_oom();
goto error;
}
goto error;
}
- if (bt_value_array_append_string(run_args, "--key")) {
+ if (bt_value_array_append_string_element(run_args, "--key")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, "path")) {
+ if (bt_value_array_append_string_element(run_args, "path")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, "--value")) {
+ if (bt_value_array_append_string_element(run_args, "--value")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, arg)) {
+ if (bt_value_array_append_string_element(run_args, arg)) {
print_err_oom();
goto error;
}
goto error;
}
- if (bt_value_array_append_string(run_args, "--key")) {
+ if (bt_value_array_append_string_element(run_args, "--key")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, "url")) {
+ if (bt_value_array_append_string_element(run_args, "url")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, "--value")) {
+ if (bt_value_array_append_string_element(run_args, "--value")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, arg)) {
+ if (bt_value_array_append_string_element(run_args, arg)) {
print_err_oom();
goto error;
}
goto error;
}
- if (bt_value_array_append_string(run_args, "--name")) {
+ if (bt_value_array_append_string_element(run_args, "--name")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, arg)) {
+ if (bt_value_array_append_string_element(run_args, arg)) {
print_err_oom();
goto error;
}
case OPT_OMIT_HOME_PLUGIN_PATH:
force_omit_home_plugin_path = true;
- if (bt_value_array_append_string(run_args,
+ if (bt_value_array_append_string_element(run_args,
"--omit-home-plugin-path")) {
print_err_oom();
goto error;
}
break;
case OPT_RETRY_DURATION:
- if (bt_value_array_append_string(run_args,
+ if (bt_value_array_append_string_element(run_args,
"--retry-duration")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, arg)) {
+ if (bt_value_array_append_string_element(run_args, arg)) {
print_err_oom();
goto error;
}
case OPT_OMIT_SYSTEM_PLUGIN_PATH:
force_omit_system_plugin_path = true;
- if (bt_value_array_append_string(run_args,
+ if (bt_value_array_append_string_element(run_args,
"--omit-system-plugin-path")) {
print_err_oom();
goto error;
goto error;
}
- if (bt_value_array_append_string(run_args,
+ if (bt_value_array_append_string_element(run_args,
"--plugin-path")) {
print_err_oom();
goto error;
}
- if (bt_value_array_append_string(run_args, arg)) {
+ if (bt_value_array_append_string_element(run_args, arg)) {
print_err_oom();
goto error;
}
goto error;
}
- for (i = 0; i < bt_value_array_size(run_args); i++) {
+ for (i = 0; i < bt_value_array_get_size(run_args); i++) {
struct bt_value *arg_value =
- bt_value_array_get(run_args, i);
+ bt_value_array_borrow_element_by_index(
+ run_args, i);
const char *arg;
GString *quoted = NULL;
const char *arg_to_print;
- assert(arg_value);
+ BT_ASSERT(arg_value);
ret = bt_value_string_get(arg_value, &arg);
- assert(ret == 0);
- BT_PUT(arg_value);
+ BT_ASSERT(ret == 0);
if (print_run_args) {
quoted = bt_common_shell_quote(arg, true);
g_string_free(quoted, TRUE);
}
- if (i < bt_value_array_size(run_args) - 1) {
+ if (i < bt_value_array_get_size(run_args) - 1) {
if (print_run_args) {
putchar(' ');
} else {
fprintf(fp, "\n");
fprintf(fp, " -d, --debug Enable debug mode (same as --log-level=V)\n");
fprintf(fp, " -h, --help Show this help and quit\n");
- fprintf(fp, " --log-level=LVL Set all log levels to LVL (`N`, `V`, `D`,\n");
+ fprintf(fp, " -l, --log-level=LVL Set all log levels to LVL (`N`, `V`, `D`,\n");
fprintf(fp, " `I`, `W` (default), `E`, or `F`)\n");
fprintf(fp, " -v, --verbose Enable verbose mode (same as --log-level=I)\n");
fprintf(fp, " -V, --version Show version and quit\n");
*/
log_level = 'I';
}
- } else if (strcmp(cur_arg, "--log-level") == 0) {
+ } else if (strcmp(cur_arg, "--log-level") == 0 ||
+ strcmp(cur_arg, "-l") == 0) {
if (!next_arg) {
printf_err("Missing log level value for --log-level option\n");
*retcode = 1;
} else if (strncmp(cur_arg, "--log-level=", 12) == 0) {
const char *arg = &cur_arg[12];
+ log_level = log_level_from_arg(arg);
+ if (log_level == 'U') {
+ printf_err("Invalid argument for --log-level option:\n %s\n",
+ arg);
+ *retcode = 1;
+ goto end;
+ }
+ } else if (strncmp(cur_arg, "-l", 2) == 0) {
+ const char *arg = &cur_arg[2];
+
log_level = log_level_from_arg(arg);
if (log_level == 'U') {
printf_err("Invalid argument for --log-level option:\n %s\n",
goto end;
}
- assert(command_argv);
- assert(command_argc >= 0);
+ BT_ASSERT(command_argv);
+ BT_ASSERT(command_argc >= 0);
switch (command_type) {
case COMMAND_TYPE_RUN: