X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Flib%2Flttng-ctl%2Flttng-ctl.c;h=f50ca306145f9b30e28b24f3bfea500f9181f1f4;hp=bbd9e85753e4d30ca708f437b3637143d1296836;hb=6a0838b7bdcc04613f703dc6580f81beb849fa64;hpb=b178f53e90c376dd44b020535c32649edef8f80e diff --git a/src/lib/lttng-ctl/lttng-ctl.c b/src/lib/lttng-ctl/lttng-ctl.c index bbd9e8575..f50ca3061 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