X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=liblttng-kconsumer%2Flttng-kconsumer.c;h=2b69438cadb2b1e7d469ecd5c9f671b5aa36e670;hp=242047ef0237a9af9f6914a6a2cbc969bde2f1ed;hb=0857097f7cd49f503c966eb42716415dd5540352;hpb=6df2e2c977b698cc6b8f15c90b649516674028f9 diff --git a/liblttng-kconsumer/lttng-kconsumer.c b/liblttng-kconsumer/lttng-kconsumer.c index 242047ef0..2b69438ca 100644 --- a/liblttng-kconsumer/lttng-kconsumer.c +++ b/liblttng-kconsumer/lttng-kconsumer.c @@ -34,6 +34,8 @@ #include #include +#include "common/runas.h" + extern struct lttng_consumer_global_data consumer_data; extern int consumer_poll_timeout; extern volatile int consumer_quit; @@ -395,19 +397,16 @@ int lttng_kconsumer_on_recv_stream(struct lttng_consumer_stream *stream) /* Opening the tracefile in write mode */ if (stream->path_name != NULL) { - ret = open(stream->path_name, - O_WRONLY|O_CREAT|O_TRUNC, S_IRWXU|S_IRWXG|S_IRWXO); + ret = open_run_as(stream->path_name, + O_WRONLY|O_CREAT|O_TRUNC, + S_IRWXU|S_IRWXG|S_IRWXO, + stream->uid, stream->gid); if (ret < 0) { ERR("Opening %s", stream->path_name); perror("open"); goto error; } stream->out_fd = ret; - ret = chown(stream->path_name, stream->uid, stream->gid); - if (ret < 0) { - ERR("Changing ownership of %s", stream->path_name); - perror("chown"); - } } if (stream->output == LTTNG_EVENT_MMAP) {