X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=src%2Flib%2Flttng-ctl%2Flttng-ctl.c;h=20dca8132186e46531589d9294b31a44dc52e9b3;hb=4e328cceb6ff5fd6240c866b52b29234946c5c66;hp=bbd9e85753e4d30ca708f437b3637143d1296836;hpb=b178f53e90c376dd44b020535c32649edef8f80e;p=lttng-tools.git diff --git a/src/lib/lttng-ctl/lttng-ctl.c b/src/lib/lttng-ctl/lttng-ctl.c index bbd9e8575..20dca8132 100644 --- a/src/lib/lttng-ctl/lttng-ctl.c +++ b/src/lib/lttng-ctl/lttng-ctl.c @@ -243,15 +243,13 @@ end: LTTNG_HIDDEN int lttng_check_tracing_group(void) { - struct group *grp_tracing; /* no free(). See getgrnam(3) */ - gid_t *grp_list; + gid_t *grp_list, tracing_gid; int grp_list_size, grp_id, i; int ret = -1; const char *grp_name = tracing_group; /* Get GID of group 'tracing' */ - grp_tracing = getgrnam(grp_name); - if (!grp_tracing) { + if (utils_get_group_id(grp_name, false, &tracing_gid)) { /* If grp_tracing is NULL, the group does not exist. */ goto end; } @@ -276,7 +274,7 @@ int lttng_check_tracing_group(void) } for (i = 0; i < grp_list_size; i++) { - if (grp_list[i] == grp_tracing->gr_gid) { + if (grp_list[i] == tracing_gid) { ret = 1; break; } @@ -1080,7 +1078,11 @@ int lttng_enable_event_with_exclusions(struct lttng_handle *handle, unsigned int free_filter_expression = 0; struct filter_parser_ctx *ctx = NULL; - memset(&send_buffer, 0, sizeof(send_buffer)); + /* + * We have either a filter or some exclusions, so we need to set up + * a variable-length memory block from where to send the data. + */ + lttng_dynamic_buffer_init(&send_buffer); /* * Cast as non-const since we may replace the filter expression @@ -1130,12 +1132,6 @@ int lttng_enable_event_with_exclusions(struct lttng_handle *handle, lsm.u.enable.exclusion_count = exclusion_count; lsm.u.enable.bytecode_len = 0; - /* - * We have either a filter or some exclusions, so we need to set up - * a variable-length memory block from where to send the data. - */ - lttng_dynamic_buffer_init(&send_buffer); - /* Parse filter expression. */ if (filter_expression != NULL || handle->domain.type == LTTNG_DOMAIN_JUL || handle->domain.type == LTTNG_DOMAIN_LOG4J @@ -2081,7 +2077,6 @@ int lttng_list_sessions(struct lttng_session **out_sessions) lsm.cmd_type = LTTNG_LIST_SESSIONS; ret = lttng_ctl_ask_sessiond(&lsm, (void**) &sessions); if (ret <= 0) { - ret = ret == 0 ? -LTTNG_ERR_FATAL : ret; goto end; } if (!sessions) {