X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=liblttng-kconsumer%2Flttng-kconsumer.c;h=488d6b859ada46d9e898337b5cd642e46de7d463;hp=242047ef0237a9af9f6914a6a2cbc969bde2f1ed;hb=e11d277bc11aafd396faebe83734971c814214e7;hpb=6df2e2c977b698cc6b8f15c90b649516674028f9 diff --git a/liblttng-kconsumer/lttng-kconsumer.c b/liblttng-kconsumer/lttng-kconsumer.c index 242047ef0..488d6b859 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 = run_as_open(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) {